From f7458952b0e3c7e70bd6dff7a31be3fcacea9cd3 Mon Sep 17 00:00:00 2001 From: L <6723574+louisgv@users.noreply.github.com> Date: Thu, 19 Feb 2026 14:12:46 -0500 Subject: [PATCH] feat: remove Cline, gptme, Plandex, and Continue agents (#1475) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Delete 32 agent scripts ({cloud}/{cline,gptme,plandex,continue}.sh across 8 clouds), remove the 4 agents from manifest.json with all their matrix entries, update README matrix rows, remove stale mock agent binaries and plandex.ai URL patterns from test harness, update CLI help examples to use remaining agents, and bump version 0.5.7 → 0.5.8. Co-authored-by: Claude Sonnet 4.6 (1M context) --- README.md | 4 -- aws/cline.sh | 27 ---------- aws/continue.sh | 21 -------- aws/gptme.sh | 25 ---------- aws/plandex.sh | 23 --------- cli/package.json | 2 +- cli/src/commands.ts | 4 +- daytona/cline.sh | 33 ------------- daytona/continue.sh | 32 ------------ daytona/gptme.sh | 32 ------------ daytona/plandex.sh | 29 ----------- digitalocean/cline.sh | 27 ---------- digitalocean/continue.sh | 21 -------- digitalocean/gptme.sh | 25 ---------- digitalocean/plandex.sh | 23 --------- fly/cline.sh | 33 ------------- fly/continue.sh | 32 ------------ fly/gptme.sh | 32 ------------ fly/plandex.sh | 29 ----------- gcp/cline.sh | 27 ---------- gcp/continue.sh | 21 -------- gcp/gptme.sh | 25 ---------- gcp/plandex.sh | 23 --------- hetzner/cline.sh | 27 ---------- hetzner/continue.sh | 21 -------- hetzner/gptme.sh | 25 ---------- hetzner/plandex.sh | 23 --------- local/cline.sh | 33 ------------- local/continue.sh | 32 ------------ local/gptme.sh | 32 ------------ local/plandex.sh | 29 ----------- manifest.json | 103 +-------------------------------------- sprite/cline.sh | 33 ------------- sprite/continue.sh | 32 ------------ sprite/gptme.sh | 32 ------------ sprite/plandex.sh | 29 ----------- test/mock-curl-script.sh | 4 +- test/mock.sh | 2 +- 38 files changed, 7 insertions(+), 1000 deletions(-) delete mode 100755 aws/cline.sh delete mode 100755 aws/continue.sh delete mode 100755 aws/gptme.sh delete mode 100755 aws/plandex.sh delete mode 100644 daytona/cline.sh delete mode 100644 daytona/continue.sh delete mode 100644 daytona/gptme.sh delete mode 100644 daytona/plandex.sh delete mode 100755 digitalocean/cline.sh delete mode 100755 digitalocean/continue.sh delete mode 100755 digitalocean/gptme.sh delete mode 100755 digitalocean/plandex.sh delete mode 100644 fly/cline.sh delete mode 100644 fly/continue.sh delete mode 100644 fly/gptme.sh delete mode 100644 fly/plandex.sh delete mode 100755 gcp/cline.sh delete mode 100755 gcp/continue.sh delete mode 100755 gcp/gptme.sh delete mode 100755 gcp/plandex.sh delete mode 100755 hetzner/cline.sh delete mode 100644 hetzner/continue.sh delete mode 100644 hetzner/gptme.sh delete mode 100644 hetzner/plandex.sh delete mode 100755 local/cline.sh delete mode 100644 local/continue.sh delete mode 100644 local/gptme.sh delete mode 100644 local/plandex.sh delete mode 100755 sprite/cline.sh delete mode 100644 sprite/continue.sh delete mode 100644 sprite/gptme.sh delete mode 100644 sprite/plandex.sh diff --git a/README.md b/README.md index 0b0a48c5..79f48b6c 100644 --- a/README.md +++ b/README.md @@ -166,12 +166,8 @@ If an agent fails to install or launch on a cloud: | [**OpenClaw**](https://github.com/OpenRouterTeam/openclaw) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [**NanoClaw**](https://github.com/gavrielc/nanoclaw) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [**Codex CLI**](https://github.com/openai/codex) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | -| [**Cline**](https://github.com/cline/cline) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | -| [**gptme**](https://github.com/gptme/gptme) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [**OpenCode**](https://github.com/opencode-ai/opencode) | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | -| [**Plandex**](https://github.com/plandex-ai/plandex) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [**Kilo Code**](https://github.com/Kilo-Org/kilocode) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | -| [**Continue**](https://github.com/continuedev/continue) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ### How it works diff --git a/aws/cline.sh b/aws/cline.sh deleted file mode 100755 index 7d1c2002..00000000 --- a/aws/cline.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=aws/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/aws/lib/common.sh)" -fi - -log_info "Cline on AWS Lightsail" -echo "" - -agent_install() { install_agent "Cline" "npm install -g cline" cloud_run; } -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} -agent_launch_cmd() { echo 'source ~/.zshrc && cline'; } - -spawn_agent "Cline" diff --git a/aws/continue.sh b/aws/continue.sh deleted file mode 100755 index 717f6cb9..00000000 --- a/aws/continue.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=aws/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/aws/lib/common.sh)" -fi - -log_info "Continue on AWS Lightsail" -echo "" - -agent_install() { install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run; } -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_configure() { setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run; } -agent_launch_cmd() { echo 'source ~/.zshrc && cn'; } - -spawn_agent "Continue" diff --git a/aws/gptme.sh b/aws/gptme.sh deleted file mode 100755 index 2dd1fcc6..00000000 --- a/aws/gptme.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/aws/lib/common.sh)" -fi - -log_info "gptme on AWS Lightsail" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=$OPENROUTER_API_KEY"; } -agent_launch_cmd() { printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}"; } - -spawn_agent "gptme" diff --git a/aws/plandex.sh b/aws/plandex.sh deleted file mode 100755 index 667be8ec..00000000 --- a/aws/plandex.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=aws/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/aws/lib/common.sh)" -fi - -log_info "Plandex on AWS Lightsail" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_launch_cmd() { echo 'source ~/.zshrc && plandex'; } - -spawn_agent "Plandex" diff --git a/cli/package.json b/cli/package.json index e47aa51d..008df248 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@openrouter/spawn", - "version": "0.5.7", + "version": "0.5.8", "type": "module", "bin": { "spawn": "cli.js" diff --git a/cli/src/commands.ts b/cli/src/commands.ts index 864b4c5a..356cf00e 100644 --- a/cli/src/commands.ts +++ b/cli/src/commands.ts @@ -2562,13 +2562,13 @@ function getHelpExamplesSection(): string { spawn ${pc.dim("# Pick interactively")} spawn openclaw sprite ${pc.dim("# Launch OpenClaw on Sprite")} spawn codex hetzner ${pc.dim("# Launch Codex CLI on Hetzner Cloud")} - spawn cline digitalocean ${pc.dim("# Launch Cline on DigitalOcean")} + spawn kilocode digitalocean ${pc.dim("# Launch Kilo Code on DigitalOcean")} spawn claude sprite --prompt "Fix all linter errors" ${pc.dim("# Execute Claude with prompt and exit")} spawn codex sprite -p "Add tests" ${pc.dim("# Short form of --prompt")} spawn openclaw fly -f instructions.txt ${pc.dim("# Read prompt from file (short for --prompt-file)")} - spawn gptme gcp --dry-run ${pc.dim("# Preview without provisioning")} + spawn opencode gcp --dry-run ${pc.dim("# Preview without provisioning")} spawn claude hetzner --headless ${pc.dim("# Provision, print connection info, exit")} spawn claude hetzner --output json ${pc.dim("# Structured JSON output on stdout")} spawn claude ${pc.dim("# Show which clouds support Claude")} diff --git a/daytona/cline.sh b/daytona/cline.sh deleted file mode 100644 index ed573e99..00000000 --- a/daytona/cline.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/daytona/lib/common.sh)" -fi - -log_info "Cline on Daytona" -echo "" - -agent_install() { - install_agent "Cline" "npm install -g cline" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cline' -} - -spawn_agent "Cline" diff --git a/daytona/continue.sh b/daytona/continue.sh deleted file mode 100644 index 3b26f52c..00000000 --- a/daytona/continue.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/daytona/lib/common.sh)" -fi - -log_info "Continue on Daytona" -echo "" - -agent_install() { - install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cn' -} - -spawn_agent "Continue" diff --git a/daytona/gptme.sh b/daytona/gptme.sh deleted file mode 100644 index 7ff0315f..00000000 --- a/daytona/gptme.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/daytona/lib/common.sh)" -fi - -log_info "gptme on Daytona" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}" -} - -spawn_agent "gptme" diff --git a/daytona/plandex.sh b/daytona/plandex.sh deleted file mode 100644 index f03f96c8..00000000 --- a/daytona/plandex.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/daytona/lib/common.sh)" -fi - -log_info "Plandex on Daytona" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && plandex' -} - -spawn_agent "Plandex" diff --git a/digitalocean/cline.sh b/digitalocean/cline.sh deleted file mode 100755 index a62ab2a1..00000000 --- a/digitalocean/cline.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=digitalocean/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/digitalocean/lib/common.sh)" -fi - -log_info "Cline on DigitalOcean" -echo "" - -agent_install() { install_agent "Cline" "npm install -g cline" cloud_run; } -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} -agent_launch_cmd() { echo 'source ~/.zshrc && cline'; } - -spawn_agent "Cline" diff --git a/digitalocean/continue.sh b/digitalocean/continue.sh deleted file mode 100755 index 752ff762..00000000 --- a/digitalocean/continue.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=digitalocean/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/digitalocean/lib/common.sh)" -fi - -log_info "Continue on DigitalOcean" -echo "" - -agent_install() { install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run; } -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_configure() { setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run; } -agent_launch_cmd() { echo 'source ~/.zshrc && cn'; } - -spawn_agent "Continue" diff --git a/digitalocean/gptme.sh b/digitalocean/gptme.sh deleted file mode 100755 index 861a4bd0..00000000 --- a/digitalocean/gptme.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/digitalocean/lib/common.sh)" -fi - -log_info "gptme on DigitalOcean" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=$OPENROUTER_API_KEY"; } -agent_launch_cmd() { printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}"; } - -spawn_agent "gptme" diff --git a/digitalocean/plandex.sh b/digitalocean/plandex.sh deleted file mode 100755 index f65b0f83..00000000 --- a/digitalocean/plandex.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=digitalocean/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/digitalocean/lib/common.sh)" -fi - -log_info "Plandex on DigitalOcean" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_launch_cmd() { echo 'source ~/.zshrc && plandex'; } - -spawn_agent "Plandex" diff --git a/fly/cline.sh b/fly/cline.sh deleted file mode 100644 index 70eed486..00000000 --- a/fly/cline.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/fly/lib/common.sh)" -fi - -log_info "Cline on Fly.io" -echo "" - -agent_install() { - install_agent "Cline" "npm install -g cline" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cline' -} - -spawn_agent "Cline" diff --git a/fly/continue.sh b/fly/continue.sh deleted file mode 100644 index 71f29c4f..00000000 --- a/fly/continue.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/fly/lib/common.sh)" -fi - -log_info "Continue on Fly.io" -echo "" - -agent_install() { - install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cn' -} - -spawn_agent "Continue" diff --git a/fly/gptme.sh b/fly/gptme.sh deleted file mode 100644 index d5d70327..00000000 --- a/fly/gptme.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/fly/lib/common.sh)" -fi - -log_info "gptme on Fly.io" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}" -} - -spawn_agent "gptme" diff --git a/fly/plandex.sh b/fly/plandex.sh deleted file mode 100644 index 9c4f514c..00000000 --- a/fly/plandex.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/fly/lib/common.sh)" -fi - -log_info "Plandex on Fly.io" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && plandex' -} - -spawn_agent "Plandex" diff --git a/gcp/cline.sh b/gcp/cline.sh deleted file mode 100755 index d442a690..00000000 --- a/gcp/cline.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=gcp/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/gcp/lib/common.sh)" -fi - -log_info "Cline on GCP Compute Engine" -echo "" - -agent_install() { install_agent "Cline" "npm install -g cline" cloud_run; } -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} -agent_launch_cmd() { echo 'source ~/.zshrc && cline'; } - -spawn_agent "Cline" diff --git a/gcp/continue.sh b/gcp/continue.sh deleted file mode 100755 index 67c55fff..00000000 --- a/gcp/continue.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=gcp/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/gcp/lib/common.sh)" -fi - -log_info "Continue on GCP Compute Engine" -echo "" - -agent_install() { install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run; } -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_configure() { setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run; } -agent_launch_cmd() { echo 'source ~/.zshrc && cn'; } - -spawn_agent "Continue" diff --git a/gcp/gptme.sh b/gcp/gptme.sh deleted file mode 100755 index 37c812cf..00000000 --- a/gcp/gptme.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/gcp/lib/common.sh)" -fi - -log_info "gptme on GCP Compute Engine" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=$OPENROUTER_API_KEY"; } -agent_launch_cmd() { printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}"; } - -spawn_agent "gptme" diff --git a/gcp/plandex.sh b/gcp/plandex.sh deleted file mode 100755 index 20a652a8..00000000 --- a/gcp/plandex.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=gcp/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/gcp/lib/common.sh)" -fi - -log_info "Plandex on GCP Compute Engine" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_launch_cmd() { echo 'source ~/.zshrc && plandex'; } - -spawn_agent "Plandex" diff --git a/hetzner/cline.sh b/hetzner/cline.sh deleted file mode 100755 index 2efca059..00000000 --- a/hetzner/cline.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=hetzner/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/hetzner/lib/common.sh)" -fi - -log_info "Cline on Hetzner Cloud" -echo "" - -agent_install() { install_agent "Cline" "npm install -g cline" cloud_run; } -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} -agent_launch_cmd() { echo 'source ~/.zshrc && cline'; } - -spawn_agent "Cline" diff --git a/hetzner/continue.sh b/hetzner/continue.sh deleted file mode 100644 index d6264793..00000000 --- a/hetzner/continue.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# shellcheck disable=SC2154 -set -eo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=hetzner/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/hetzner/lib/common.sh)" -fi - -log_info "Continue on Hetzner Cloud" -echo "" - -agent_install() { install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run; } -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_configure() { setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run; } -agent_launch_cmd() { echo 'source ~/.zshrc && cn'; } - -spawn_agent "Continue" diff --git a/hetzner/gptme.sh b/hetzner/gptme.sh deleted file mode 100644 index 3579034b..00000000 --- a/hetzner/gptme.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "$SCRIPT_DIR/lib/common.sh" ]]; then - source "$SCRIPT_DIR/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/hetzner/lib/common.sh)" -fi - -log_info "gptme on Hetzner Cloud" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=$OPENROUTER_API_KEY"; } -agent_launch_cmd() { printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}"; } - -spawn_agent "gptme" diff --git a/hetzner/plandex.sh b/hetzner/plandex.sh deleted file mode 100644 index e2b4629c..00000000 --- a/hetzner/plandex.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -# shellcheck source=hetzner/lib/common.sh -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/hetzner/lib/common.sh)" -fi - -log_info "Plandex on Hetzner Cloud" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} -agent_env_vars() { generate_env_config "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}"; } -agent_launch_cmd() { echo 'source ~/.zshrc && plandex'; } - -spawn_agent "Plandex" diff --git a/local/cline.sh b/local/cline.sh deleted file mode 100755 index 91d0503a..00000000 --- a/local/cline.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/local/lib/common.sh)" -fi - -log_info "Cline on local machine" -echo "" - -agent_install() { - install_agent "Cline" "npm install -g cline" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc 2>/dev/null; cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc 2>/dev/null; cline' -} - -spawn_agent "Cline" diff --git a/local/continue.sh b/local/continue.sh deleted file mode 100644 index e5a8af5e..00000000 --- a/local/continue.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/local/lib/common.sh)" -fi - -log_info "Continue on local machine" -echo "" - -agent_install() { - install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run -} - -agent_launch_cmd() { - echo 'source ~/.zshrc 2>/dev/null; cn' -} - -spawn_agent "Continue" diff --git a/local/gptme.sh b/local/gptme.sh deleted file mode 100644 index 6ca031a1..00000000 --- a/local/gptme.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/local/lib/common.sh)" -fi - -log_info "gptme on local machine" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || { command -v brew >/dev/null && brew install uv || curl -LsSf https://astral.sh/uv/install.sh | sh; } && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - printf 'source ~/.zshrc 2>/dev/null; gptme -m %s' "${MODEL_ID}" -} - -spawn_agent "gptme" diff --git a/local/plandex.sh b/local/plandex.sh deleted file mode 100644 index 30cb2aa1..00000000 --- a/local/plandex.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/local/lib/common.sh)" -fi - -log_info "Plandex on local machine" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc 2>/dev/null; plandex' -} - -spawn_agent "Plandex" diff --git a/manifest.json b/manifest.json index 98ecab90..64d27487 100644 --- a/manifest.json +++ b/manifest.json @@ -86,38 +86,6 @@ "notes": "Works with OpenRouter via OPENAI_BASE_URL override pointing to openrouter.ai/api/v1", "featured_cloud": ["fly"] }, - "cline": { - "name": "Cline", - "description": "Open-source AI coding agent for the terminal", - "url": "https://github.com/cline/cline", - "install": "npm install -g cline", - "launch": "cline", - "env": { - "OPENAI_API_KEY": "${OPENROUTER_API_KEY}", - "OPENAI_BASE_URL": "https://openrouter.ai/api/v1", - "OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}" - }, - "notes": "Works with OpenRouter via OPENAI_BASE_URL override", - "featured_cloud": ["fly"] - }, - "gptme": { - "name": "gptme", - "description": "Personal AI agent in the terminal with tools for code, terminal, browser, and more", - "url": "https://github.com/gptme/gptme", - "install": "pip install gptme", - "launch": "gptme -m openrouter/${MODEL_ID}", - "env": { - "OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}" - }, - "interactive_prompts": { - "model_id": { - "prompt": "Enter model ID", - "default": "openrouter/auto" - } - }, - "notes": "Natively supports OpenRouter via OPENROUTER_API_KEY and -m openrouter/... flag", - "featured_cloud": ["daytona"] - }, "opencode": { "name": "OpenCode", "description": "AI coding agent built for the terminal with TUI", @@ -130,18 +98,6 @@ "notes": "Natively supports OpenRouter via OPENROUTER_API_KEY env var. Go-based TUI using Bubble Tea.", "featured_cloud": ["daytona"] }, - "plandex": { - "name": "Plandex", - "description": "Open source AI coding agent for complex tasks", - "url": "https://github.com/plandex-ai/plandex", - "install": "curl -sL https://plandex.ai/install.sh | bash", - "launch": "plandex", - "env": { - "OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}" - }, - "notes": "Natively supports OpenRouter via OPENROUTER_API_KEY env var. Go-based CLI with sandbox and version control for AI changes.", - "featured_cloud": ["daytona"] - }, "kilocode": { "name": "Kilo Code", "description": "All-in-one agentic engineering platform with CLI", @@ -155,31 +111,6 @@ }, "notes": "Natively supports OpenRouter as a provider via KILO_PROVIDER_TYPE=openrouter. CLI installable via npm as @kilocode/cli, invocable as 'kilocode' or 'kilo'.", "featured_cloud": ["fly"] - }, - "continue": { - "name": "Continue", - "description": "Open-source AI coding assistant with CLI TUI and headless modes", - "url": "https://github.com/continuedev/continue", - "install": "npm install -g @continuedev/cli", - "launch": "cn", - "env": { - "OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}" - }, - "config_files": { - "~/.continue/config.json": { - "models": [ - { - "title": "OpenRouter", - "provider": "openrouter", - "model": "openrouter/auto", - "apiBase": "https://openrouter.ai/api/v1", - "apiKey": "${OPENROUTER_API_KEY}" - } - ] - } - }, - "notes": "Natively supports OpenRouter via config.json. CLI supports TUI mode (interactive) and headless mode (-p flag). 31K+ GitHub stars.", - "featured_cloud": ["fly"] } }, "clouds": { @@ -317,26 +248,14 @@ "aws/openclaw": "implemented", "aws/nanoclaw": "implemented", "aws/codex": "implemented", - "sprite/cline": "implemented", - "hetzner/cline": "implemented", - "digitalocean/cline": "implemented", - "aws/cline": "implemented", "gcp/claude": "implemented", "gcp/openclaw": "implemented", "gcp/nanoclaw": "implemented", "gcp/codex": "implemented", - "gcp/cline": "implemented", - "sprite/gptme": "implemented", - "hetzner/gptme": "implemented", - "digitalocean/gptme": "implemented", - "aws/gptme": "implemented", - "gcp/gptme": "implemented", "fly/claude": "implemented", "fly/openclaw": "implemented", "fly/nanoclaw": "implemented", "fly/codex": "implemented", - "fly/cline": "implemented", - "fly/gptme": "implemented", "sprite/opencode": "implemented", "hetzner/opencode": "implemented", "digitalocean/opencode": "implemented", @@ -347,16 +266,7 @@ "daytona/openclaw": "implemented", "daytona/nanoclaw": "implemented", "daytona/codex": "implemented", - "daytona/cline": "implemented", - "daytona/gptme": "implemented", "daytona/opencode": "implemented", - "sprite/plandex": "implemented", - "hetzner/plandex": "implemented", - "digitalocean/plandex": "implemented", - "aws/plandex": "implemented", - "gcp/plandex": "implemented", - "fly/plandex": "implemented", - "daytona/plandex": "implemented", "sprite/kilocode": "implemented", "hetzner/kilocode": "implemented", "digitalocean/kilocode": "implemented", @@ -364,22 +274,11 @@ "gcp/kilocode": "implemented", "fly/kilocode": "implemented", "daytona/kilocode": "implemented", - "sprite/continue": "implemented", - "hetzner/continue": "implemented", - "digitalocean/continue": "implemented", - "aws/continue": "implemented", - "gcp/continue": "implemented", - "fly/continue": "implemented", - "daytona/continue": "implemented", "local/claude": "implemented", "local/openclaw": "implemented", "local/nanoclaw": "implemented", "local/codex": "implemented", - "local/cline": "implemented", - "local/gptme": "implemented", "local/opencode": "missing", - "local/plandex": "implemented", - "local/kilocode": "implemented", - "local/continue": "implemented" + "local/kilocode": "implemented" } } diff --git a/sprite/cline.sh b/sprite/cline.sh deleted file mode 100755 index bf4270a6..00000000 --- a/sprite/cline.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/sprite/lib/common.sh)" -fi - -log_info "Cline on Sprite" -echo "" - -agent_install() { - install_agent "Cline" "npm install -g cline" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - log_step "Authenticating Cline with OpenRouter..." - cloud_run "source ~/.zshrc && cline auth -p openrouter -k \"\${OPENROUTER_API_KEY}\"" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cline' -} - -spawn_agent "Cline" diff --git a/sprite/continue.sh b/sprite/continue.sh deleted file mode 100644 index 2ecd6f7e..00000000 --- a/sprite/continue.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/sprite/lib/common.sh)" -fi - -log_info "Continue on Sprite" -echo "" - -agent_install() { - install_agent "Continue CLI" "npm install -g @continuedev/cli" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_configure() { - setup_continue_config "${OPENROUTER_API_KEY}" cloud_upload cloud_run -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && cn' -} - -spawn_agent "Continue" diff --git a/sprite/gptme.sh b/sprite/gptme.sh deleted file mode 100644 index cc75c9e1..00000000 --- a/sprite/gptme.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/sprite/lib/common.sh)" -fi - -log_info "gptme on Sprite" -echo "" - -AGENT_MODEL_PROMPT=1 -AGENT_MODEL_DEFAULT="openrouter/auto" - -agent_install() { - install_agent "gptme" "command -v uv >/dev/null || curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH=\"\$HOME/.local/bin:\$PATH\" && uv tool install gptme" cloud_run - verify_agent "gptme" "export PATH=\"\$HOME/.local/bin:\$PATH\" && command -v gptme" "uv tool install gptme" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - printf 'source ~/.zshrc && gptme -m %s' "${MODEL_ID}" -} - -spawn_agent "gptme" diff --git a/sprite/plandex.sh b/sprite/plandex.sh deleted file mode 100644 index eab1fe9a..00000000 --- a/sprite/plandex.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -eo pipefail - -# Source common functions - try local file first, fall back to remote -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" 2>/dev/null && pwd)" -if [[ -f "${SCRIPT_DIR}/lib/common.sh" ]]; then - source "${SCRIPT_DIR}/lib/common.sh" -else - eval "$(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/sprite/lib/common.sh)" -fi - -log_info "Plandex on Sprite" -echo "" - -agent_install() { - install_agent "Plandex" "curl -sL https://plandex.ai/install.sh | bash" cloud_run - verify_agent "Plandex" "command -v plandex && plandex version" "curl -sL https://plandex.ai/install.sh | bash" cloud_run -} - -agent_env_vars() { - generate_env_config \ - "OPENROUTER_API_KEY=${OPENROUTER_API_KEY}" -} - -agent_launch_cmd() { - echo 'source ~/.zshrc && plandex' -} - -spawn_agent "Plandex" diff --git a/test/mock-curl-script.sh b/test/mock-curl-script.sh index fafa173b..443885cc 100644 --- a/test/mock-curl-script.sh +++ b/test/mock-curl-script.sh @@ -34,7 +34,7 @@ _parse_args() { _maybe_inject_error() { [ -n "${MOCK_ERROR_SCENARIO:-}" ] || return 1 case "$URL" in - *openrouter.ai*|*raw.githubusercontent.com*|*claude.ai/install*|*bun.sh*|*nodesource*|*plandex.ai*|*opencode*|*pip.pypa.io*|*get.docker.com*|*npmjs.org*|*github.com/*/releases*) + *openrouter.ai*|*raw.githubusercontent.com*|*claude.ai/install*|*bun.sh*|*nodesource*|*opencode*|*pip.pypa.io*|*get.docker.com*|*npmjs.org*|*github.com/*/releases*) return 1 ;; esac case "${MOCK_ERROR_SCENARIO}" in @@ -65,7 +65,7 @@ _maybe_inject_error() { _handle_special_urls() { case "$URL" in - *claude.ai/install*|*bun.sh*|*nodesource*|*plandex.ai*|*opencode*install*|\ + *claude.ai/install*|*bun.sh*|*nodesource*|*opencode*install*|\ *pip.pypa.io*|*get.docker.com*|*install.python-poetry.org*|\ *npmjs.org*|*deb.nodesource.com*|*github.com/*/releases*|*cli.github.com*) printf '#!/bin/bash\nexit 0\n' diff --git a/test/mock.sh b/test/mock.sh index 7b574711..475440de 100644 --- a/test/mock.sh +++ b/test/mock.sh @@ -243,7 +243,7 @@ MOCK setup_mock_agents() { # Agent binaries - _create_logging_mock claude codex cline gptme opencode plandex kilocode openclaw nanoclaw q + _create_logging_mock claude codex opencode kilocode openclaw nanoclaw q # Tools used during agent install and file upload _create_logging_mock pip pip3 npm npx bun node openssl shred cargo go git base64