From c766daefa47c5863cbe10a0f14dcf24c01d38ce5 Mon Sep 17 00:00:00 2001 From: David Blass Date: Fri, 14 Nov 2025 17:00:58 -0500 Subject: [PATCH] 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()]]) ),