Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4b43b617f0 | |||
| 1e8abe442b | |||
| fed62adb69 | |||
| 5889d20930 | |||
| dcc257ff7a | |||
| 2ba6cf7c0b | |||
| aa5eb4c43c |
@@ -1,2 +0,0 @@
|
|||||||
# Mark generated files as linguist-generated to exclude from language statistics
|
|
||||||
entry.js linguist-detectable=false
|
|
||||||
+1
-1
@@ -8,5 +8,5 @@ if git diff --cached --name-only | grep -q "^package.json$"; then
|
|||||||
pnpm build
|
pnpm build
|
||||||
|
|
||||||
# Add the built files and lockfile to the commit
|
# Add the built files and lockfile to the commit
|
||||||
git add entry.js mcp-server.js pnpm-lock.yaml
|
git add entry mcp-server pnpm-lock.yaml
|
||||||
fi
|
fi
|
||||||
|
|||||||
+1
-1
@@ -25,7 +25,7 @@ inputs:
|
|||||||
|
|
||||||
runs:
|
runs:
|
||||||
using: "node20"
|
using: "node20"
|
||||||
main: "entry.js"
|
main: "entry"
|
||||||
|
|
||||||
branding:
|
branding:
|
||||||
icon: "code"
|
icon: "code"
|
||||||
|
|||||||
+1
-2
@@ -1,4 +1,3 @@
|
|||||||
#!/usr/bin/env node
|
|
||||||
import { createRequire as __createRequire } from 'module'; import { fileURLToPath as __fileURLToPath } from 'url'; import { dirname as __dirnameFn } from 'path'; const require = __createRequire(import.meta.url); const __filename = __fileURLToPath(import.meta.url); const __dirname = __dirnameFn(__filename);
|
import { createRequire as __createRequire } from 'module'; import { fileURLToPath as __fileURLToPath } from 'url'; import { dirname as __dirnameFn } from 'path'; const require = __createRequire(import.meta.url); const __filename = __fileURLToPath(import.meta.url); const __dirname = __dirnameFn(__filename);
|
||||||
var __create = Object.create;
|
var __create = Object.create;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -32889,7 +32888,7 @@ function query({
|
|||||||
// package.json
|
// package.json
|
||||||
var package_default = {
|
var package_default = {
|
||||||
name: "@pullfrog/action",
|
name: "@pullfrog/action",
|
||||||
version: "0.0.106",
|
version: "0.0.107",
|
||||||
type: "module",
|
type: "module",
|
||||||
files: [
|
files: [
|
||||||
"index.js",
|
"index.js",
|
||||||
+39
-4
@@ -1,5 +1,39 @@
|
|||||||
import { build } from "esbuild";
|
// @ts-check
|
||||||
|
|
||||||
|
import { build } from "esbuild";
|
||||||
|
import { readFileSync, writeFileSync } from "fs";
|
||||||
|
|
||||||
|
// Plugin to strip shebangs from output files
|
||||||
|
/**
|
||||||
|
* @type {import("esbuild").Plugin}
|
||||||
|
*/
|
||||||
|
const stripShebangPlugin = {
|
||||||
|
name: "strip-shebang",
|
||||||
|
setup(build) {
|
||||||
|
build.onEnd((result) => {
|
||||||
|
if (result.errors.length > 0) return;
|
||||||
|
|
||||||
|
// Strip shebang from the output file
|
||||||
|
const outputFile = build.initialOptions.outfile;
|
||||||
|
if (outputFile) {
|
||||||
|
try {
|
||||||
|
const content = readFileSync(outputFile, "utf8");
|
||||||
|
// Remove shebang line from the beginning if present
|
||||||
|
const withoutShebang = content.startsWith("#!")
|
||||||
|
? content.slice(content.indexOf("\n") + 1)
|
||||||
|
: content;
|
||||||
|
writeFileSync(outputFile, withoutShebang);
|
||||||
|
} catch (error) {
|
||||||
|
// File might not exist, ignore
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {import("esbuild").BuildOptions}
|
||||||
|
*/
|
||||||
const sharedConfig = {
|
const sharedConfig = {
|
||||||
bundle: true,
|
bundle: true,
|
||||||
format: "esm",
|
format: "esm",
|
||||||
@@ -29,15 +63,16 @@ const sharedConfig = {
|
|||||||
await build({
|
await build({
|
||||||
...sharedConfig,
|
...sharedConfig,
|
||||||
entryPoints: ["./entry.ts"],
|
entryPoints: ["./entry.ts"],
|
||||||
outfile: "./entry.js",
|
outfile: "./entry",
|
||||||
|
plugins: [stripShebangPlugin],
|
||||||
});
|
});
|
||||||
|
|
||||||
// Build the MCP server bundle
|
// Build the MCP server bundle
|
||||||
await build({
|
await build({
|
||||||
...sharedConfig,
|
...sharedConfig,
|
||||||
entryPoints: ["./mcp/server.ts"],
|
entryPoints: ["./mcp/server.ts"],
|
||||||
outfile: "./mcp-server.js",
|
outfile: "./mcp-server",
|
||||||
|
plugins: [stripShebangPlugin],
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log("✅ Build completed successfully!");
|
console.log("✅ Build completed successfully!");
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,6 @@
|
|||||||
/** May be a `github.event` payload that has been stringified. This case needs to be detected and handled appropriately. */
|
|
||||||
|
|
||||||
import type { AgentName } from "./main.ts";
|
import type { AgentName } from "./main.ts";
|
||||||
import type { Mode } from "./modes.ts";
|
import type { Mode } from "./modes.ts";
|
||||||
|
|
||||||
// type Payload = GithubEventPayload | WorkflowDispatchPayload;
|
|
||||||
// type GithubEventPayload = Record<string, any>;
|
|
||||||
|
|
||||||
export type Payload = {
|
export type Payload = {
|
||||||
"~pullfrog": true;
|
"~pullfrog": true;
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
#!/usr/bin/env node
|
|
||||||
import { createRequire as __createRequire } from 'module'; import { fileURLToPath as __fileURLToPath } from 'url'; import { dirname as __dirnameFn } from 'path'; const require = __createRequire(import.meta.url); const __filename = __fileURLToPath(import.meta.url); const __dirname = __dirnameFn(__filename);
|
import { createRequire as __createRequire } from 'module'; import { fileURLToPath as __fileURLToPath } from 'url'; import { dirname as __dirnameFn } from 'path'; const require = __createRequire(import.meta.url); const __filename = __fileURLToPath(import.meta.url); const __dirname = __dirnameFn(__filename);
|
||||||
var __create = Object.create;
|
var __create = Object.create;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@pullfrog/action",
|
"name": "@pullfrog/action",
|
||||||
"version": "0.0.106",
|
"version": "0.0.107",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"files": [
|
"files": [
|
||||||
"index.js",
|
"index.js",
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
## CURRENT
|
## CURRENT
|
||||||
|
|
||||||
[] gemini installation speed (bundle/esm.sh?)
|
[] gemini installation speed (bundle/esm.sh?) (TODO: SHAWN)
|
||||||
|
[] handle defaulting agent name value (TODO: SHAWN)
|
||||||
|
|
||||||
|
[] split up prompts, load dynamically based on mode
|
||||||
|
[] log.txt to stdout
|
||||||
|
|
||||||
[] entry.js
|
[] entry.js
|
||||||
[] handle defaulting agent name value
|
|
||||||
[] test agent/mode combinations
|
[] test agent/mode combinations
|
||||||
[] test if home directory mcp.json works if mcp.json is specified in repo
|
[] test if home directory mcp.json works if mcp.json is specified in repo
|
||||||
[] add footer to the working comment ("executed by {agent}", link to pullfrog (homepage) w/ small logo?, feedback (create github issue), link to workflow run)- see https://github.com/colinhacks/zod/issues/5459#issuecomment-3548382991
|
[] add footer to the working comment ("executed by {agent}", link to pullfrog (homepage) w/ small logo?, feedback (create github issue), link to workflow run)- see https://github.com/colinhacks/zod/issues/5459#issuecomment-3548382991
|
||||||
[] log.txt to stdout
|
|
||||||
|
|
||||||
## MAYBE
|
## MAYBE
|
||||||
|
|
||||||
@@ -14,7 +17,6 @@
|
|||||||
[] try to find heavy claude code user
|
[] try to find heavy claude code user
|
||||||
[] investigate including terminal output from bash commands as collapsed groups from claude
|
[] investigate including terminal output from bash commands as collapsed groups from claude
|
||||||
[] test initialization trade offs for pullfrog.yml
|
[] test initialization trade offs for pullfrog.yml
|
||||||
[] split up prompts, load dynamically based on mode
|
|
||||||
|
|
||||||
## DONE
|
## DONE
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user