spawn/manifest.json
L f7a97a24e6
Add AWS Lightsail as sixth cloud provider with all 7 agents (#14)
AWS Lightsail via AWS CLI, uses 'ubuntu' user and userdata for cloud-init.
- aws-lightsail/lib/common.sh: AWS CLI wrapper, SSH key import, instance lifecycle
- All 7 agents: claude, openclaw, nanoclaw, aider, goose, codex, interpreter

Matrix now 7 agents x 6 clouds = 42/42 implemented.

Co-authored-by: Sprite <noreply@sprite.dev>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-07 11:48:13 -08:00

257 lines
8.8 KiB
JSON

{
"agents": {
"claude": {
"name": "Claude Code",
"description": "Anthropic's CLI coding agent",
"url": "https://claude.ai",
"install": "curl -fsSL https://claude.ai/install.sh | bash",
"launch": "claude",
"env": {
"ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
"ANTHROPIC_AUTH_TOKEN": "${OPENROUTER_API_KEY}",
"ANTHROPIC_API_KEY": "",
"CLAUDE_CODE_SKIP_ONBOARDING": "1",
"CLAUDE_CODE_ENABLE_TELEMETRY": "0"
},
"config_files": {
"~/.claude/settings.json": {
"theme": "dark",
"permissions": {
"defaultMode": "bypassPermissions",
"dangerouslySkipPermissions": true
}
},
"~/.claude.json": {
"hasCompletedOnboarding": true,
"bypassPermissionsModeAccepted": true
}
}
},
"openclaw": {
"name": "OpenClaw",
"description": "OpenRouter's agent framework with gateway + TUI",
"url": "https://github.com/OpenRouterTeam/openclaw",
"install": "bun install -g openclaw",
"launch": "openclaw tui",
"pre_launch": "nohup openclaw gateway > /tmp/openclaw-gateway.log 2>&1 &",
"env": {
"OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}",
"ANTHROPIC_API_KEY": "${OPENROUTER_API_KEY}",
"ANTHROPIC_BASE_URL": "https://openrouter.ai/api"
},
"interactive_prompts": {
"model_id": {
"prompt": "Enter model ID",
"default": "openrouter/auto"
}
}
},
"nanoclaw": {
"name": "NanoClaw",
"description": "WhatsApp-based AI agent",
"url": "https://github.com/gavrielc/nanoclaw",
"install": "git clone https://github.com/gavrielc/nanoclaw.git ~/nanoclaw && cd ~/nanoclaw && npm install && npm run build",
"launch": "cd ~/nanoclaw && npm run dev",
"deps": ["tsx"],
"env": {
"OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}",
"ANTHROPIC_API_KEY": "${OPENROUTER_API_KEY}",
"ANTHROPIC_BASE_URL": "https://openrouter.ai/api"
},
"dotenv": {
"path": "~/nanoclaw/.env",
"values": {
"ANTHROPIC_API_KEY": "${OPENROUTER_API_KEY}"
}
},
"notes": "Requires WhatsApp QR code scan for authentication"
},
"aider": {
"name": "Aider",
"description": "AI pair programming in the terminal",
"url": "https://github.com/paul-gauthier/aider",
"install": "pip install aider-chat",
"launch": "aider --model 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 --model openrouter/... flag"
},
"goose": {
"name": "Goose",
"description": "Block's open-source AI coding agent",
"url": "https://github.com/block/goose",
"install": "CONFIGURE=false curl -fsSL https://github.com/block/goose/releases/latest/download/download_cli.sh | bash",
"launch": "goose",
"env": {
"GOOSE_PROVIDER": "openrouter",
"OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}"
},
"notes": "Model-agnostic agent by Block (formerly Square), supports OpenRouter as a provider"
},
"codex": {
"name": "Codex CLI",
"description": "OpenAI's open-source coding agent",
"url": "https://github.com/openai/codex",
"install": "npm install -g @openai/codex",
"launch": "codex",
"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 pointing to openrouter.ai/api/v1"
},
"interpreter": {
"name": "Open Interpreter",
"description": "Natural language interface for computer control",
"url": "https://github.com/OpenInterpreter/open-interpreter",
"install": "pip install open-interpreter",
"launch": "interpreter",
"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"
}
},
"clouds": {
"sprite": {
"name": "Sprite",
"description": "Sprites.dev managed VMs with CLI",
"url": "https://sprites.dev",
"type": "cli",
"auth": "sprite login",
"provision_method": "sprite create",
"exec_method": "sprite exec",
"interactive_method": "sprite exec -tty"
},
"hetzner": {
"name": "Hetzner Cloud",
"description": "Hetzner Cloud servers via REST API",
"url": "https://www.hetzner.com/cloud/",
"type": "api",
"auth": "HCLOUD_TOKEN",
"provision_method": "POST /v1/servers with cloud-init",
"exec_method": "ssh root@IP",
"interactive_method": "ssh -t root@IP",
"defaults": {
"server_type": "cx22",
"location": "fsn1",
"image": "ubuntu-24.04"
}
},
"digitalocean": {
"name": "DigitalOcean",
"description": "DigitalOcean Droplets via REST API",
"url": "https://www.digitalocean.com/",
"type": "api",
"auth": "DO_API_TOKEN",
"provision_method": "POST /v2/droplets with user_data",
"exec_method": "ssh root@IP",
"interactive_method": "ssh -t root@IP",
"defaults": {
"size": "s-2vcpu-2gb",
"region": "nyc3",
"image": "ubuntu-24-04-x64"
}
},
"vultr": {
"name": "Vultr",
"description": "Vultr Cloud Compute instances via REST API",
"url": "https://www.vultr.com/",
"type": "api",
"auth": "VULTR_API_KEY",
"provision_method": "POST /v2/instances with user_data (base64)",
"exec_method": "ssh root@IP",
"interactive_method": "ssh -t root@IP",
"defaults": {
"plan": "vc2-1c-2gb",
"region": "ewr",
"os_id": 2284
}
},
"linode": {
"name": "Linode (Akamai)",
"description": "Linode instances via REST API",
"url": "https://www.linode.com/",
"type": "api",
"auth": "LINODE_API_TOKEN",
"provision_method": "POST /v4/linode/instances with metadata.user_data",
"exec_method": "ssh root@IP",
"interactive_method": "ssh -t root@IP",
"defaults": {
"type": "g6-standard-1",
"region": "us-east",
"image": "linode/ubuntu24.04"
}
},
"aws-lightsail": {
"name": "AWS Lightsail",
"description": "AWS Lightsail instances via AWS CLI",
"url": "https://aws.amazon.com/lightsail/",
"type": "cli",
"auth": "aws configure (AWS credentials)",
"provision_method": "aws lightsail create-instances with --user-data",
"exec_method": "ssh ubuntu@IP",
"interactive_method": "ssh -t ubuntu@IP",
"defaults": {
"bundle": "medium_3_0",
"region": "us-east-1",
"blueprint": "ubuntu_24_04"
},
"notes": "Uses 'ubuntu' user instead of 'root'. Requires AWS CLI installed and configured."
}
},
"matrix": {
"sprite/claude": "implemented",
"sprite/openclaw": "implemented",
"sprite/nanoclaw": "implemented",
"hetzner/claude": "implemented",
"hetzner/openclaw": "implemented",
"hetzner/nanoclaw": "implemented",
"digitalocean/claude": "implemented",
"digitalocean/openclaw": "implemented",
"digitalocean/nanoclaw": "implemented",
"sprite/aider": "implemented",
"hetzner/aider": "implemented",
"digitalocean/aider": "implemented",
"sprite/goose": "implemented",
"hetzner/goose": "implemented",
"digitalocean/goose": "implemented",
"vultr/claude": "implemented",
"vultr/openclaw": "implemented",
"vultr/nanoclaw": "implemented",
"vultr/aider": "implemented",
"vultr/goose": "implemented",
"sprite/codex": "implemented",
"hetzner/codex": "implemented",
"digitalocean/codex": "implemented",
"vultr/codex": "implemented",
"linode/claude": "implemented",
"linode/openclaw": "implemented",
"linode/nanoclaw": "implemented",
"linode/aider": "implemented",
"linode/goose": "implemented",
"linode/codex": "implemented",
"sprite/interpreter": "implemented",
"hetzner/interpreter": "implemented",
"digitalocean/interpreter": "implemented",
"vultr/interpreter": "implemented",
"linode/interpreter": "implemented",
"aws-lightsail/claude": "implemented",
"aws-lightsail/openclaw": "implemented",
"aws-lightsail/nanoclaw": "implemented",
"aws-lightsail/aider": "implemented",
"aws-lightsail/goose": "implemented",
"aws-lightsail/codex": "implemented",
"aws-lightsail/interpreter": "implemented"
}
}