From 5b2eddb7633f401e7b7405776aca7cc723159aad Mon Sep 17 00:00:00 2001 From: A <258483684+la14-1@users.noreply.github.com> Date: Mon, 16 Mar 2026 20:04:49 -0700 Subject: [PATCH] fix(sprite): replace personal VM URL with official CDN for keep-alive script (#2701) The sprite-keep-running.sh script was downloaded from a hardcoded personal VM URL (kurt-claw-f.sprites.app) which would break all Sprite deployments if that VM goes offline. Use the official CDN proxy at openrouter.ai/labs/spawn/. Fixes #2699 -- refactor/code-health Co-authored-by: B <6723574+louisgv@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 --- packages/cli/package.json | 2 +- packages/cli/src/__tests__/sprite-keep-alive.test.ts | 4 +++- packages/cli/src/sprite/sprite.ts | 3 +-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index ef5a3899..ca6f296f 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@openrouter/spawn", - "version": "0.20.6", + "version": "0.20.7", "type": "module", "bin": { "spawn": "cli.js" diff --git a/packages/cli/src/__tests__/sprite-keep-alive.test.ts b/packages/cli/src/__tests__/sprite-keep-alive.test.ts index 80d99899..b8a87b4e 100644 --- a/packages/cli/src/__tests__/sprite-keep-alive.test.ts +++ b/packages/cli/src/__tests__/sprite-keep-alive.test.ts @@ -83,7 +83,9 @@ describe("installSpriteKeepAlive", () => { await installSpriteKeepAlive(); - expect(capturedCmds.some((cmd) => cmd.includes("kurt-claw-f.sprites.app/sprite-keep-running.sh"))).toBe(true); + expect(capturedCmds.some((cmd) => cmd.includes("openrouter.ai/labs/spawn/shared/sprite-keep-running.sh"))).toBe( + true, + ); expect(capturedCmds.some((cmd) => cmd.includes("sprite-keep-running"))).toBe(true); expect(capturedCmds.some((cmd) => cmd.includes(".local/bin/sprite-keep-running"))).toBe(true); expect(capturedCmds.some((cmd) => cmd.includes("chmod +x"))).toBe(true); diff --git a/packages/cli/src/sprite/sprite.ts b/packages/cli/src/sprite/sprite.ts index 810bd7f9..0ea2ae45 100644 --- a/packages/cli/src/sprite/sprite.ts +++ b/packages/cli/src/sprite/sprite.ts @@ -610,11 +610,10 @@ export async function downloadFileSprite(remotePath: string, localPath: string): * as long as the agent is running — preventing inactivity shutdown. * * Non-fatal: logs a warning if download fails so deployment still proceeds. - * Reference: https://kurt-claw-f.sprites.app/sprite-keep-running.sh */ export async function installSpriteKeepAlive(): Promise { logStep("Installing Sprite keep-alive..."); - const scriptUrl = "https://kurt-claw-f.sprites.app/sprite-keep-running.sh"; + const scriptUrl = "https://openrouter.ai/labs/spawn/shared/sprite-keep-running.sh"; const keepAliveResult = await asyncTryCatch(() => runSprite( "mkdir -p ~/.local/bin && " +