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