From c766daefa47c5863cbe10a0f14dcf24c01d38ce5 Mon Sep 17 00:00:00 2001 From: David Blass Date: Fri, 14 Nov 2025 17:00:58 -0500 Subject: [PATCH 1/3] broken jules --- agents/jules.ts | 1 + agents/shared.ts | 18 ++++++++++++++++++ play.ts | 2 +- 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/agents/jules.ts b/agents/jules.ts index 9cf68dd..a61379f 100644 --- a/agents/jules.ts +++ b/agents/jules.ts @@ -12,6 +12,7 @@ export const jules = agent({ packageName: "@google/jules", version: "latest", executablePath: "run.cjs", + installDependencies: true, }); }, run: async ({ diff --git a/agents/shared.ts b/agents/shared.ts index 22cb0e5..c474abc 100644 --- a/agents/shared.ts +++ b/agents/shared.ts @@ -37,10 +37,12 @@ export async function installFromNpmTarball({ packageName, version, executablePath, + installDependencies, }: { packageName: string; version: string; executablePath: string; + installDependencies?: boolean; }): Promise { // Resolve version if it's a range or "latest" let resolvedVersion = version; @@ -119,6 +121,22 @@ export async function installFromNpmTarball({ throw new Error(`Executable not found in extracted package at ${cliPath}`); } + // Install dependencies if requested + if (installDependencies) { + log.info(`Installing dependencies for ${packageName}...`); + const installResult = spawnSync("npm", ["install", "--production"], { + cwd: extractedDir, + stdio: "pipe", + encoding: "utf-8", + }); + if (installResult.status !== 0) { + throw new Error( + `Failed to install dependencies: ${installResult.stderr || installResult.stdout || "Unknown error"}` + ); + } + log.info(`✓ Dependencies installed`); + } + // Make the file executable chmodSync(cliPath, 0o755); diff --git a/play.ts b/play.ts index 276111c..5db6aea 100644 --- a/play.ts +++ b/play.ts @@ -24,7 +24,7 @@ export async function run( const inputs: Required = { prompt, - agent: "claude", + agent: "jules", ...flatMorph(agents, (_, agent) => agent.inputKeys.map((inputKey) => [inputKey, process.env[inputKey.toUpperCase()]]) ), From f45b6dca6291d42888073607020fc36c972b08eb Mon Sep 17 00:00:00 2001 From: Colin McDonnell Date: Fri, 14 Nov 2025 16:53:45 -0800 Subject: [PATCH 2/3] gitattr --- .gitattributes | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..c0e3d9c --- /dev/null +++ b/.gitattributes @@ -0,0 +1,3 @@ +# Mark generated files as linguist-generated to exclude from language statistics +entry.js linguist-generated + From ccf740bfdf430b5ce23bd2386c05f28a4929058c Mon Sep 17 00:00:00 2001 From: Colin McDonnell Date: Fri, 14 Nov 2025 17:25:10 -0800 Subject: [PATCH 3/3] Tweak --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f31a773..d215ea3 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ GitHub Action for running Claude Code and other agents via Pullfrog. pnpm install ``` -## Testing with play.ts +## Testing with `play.ts` ```bash pnpm play # Uses fixtures/play.txt