mirror of
https://github.com/OpenRouterTeam/spawn.git
synced 2026-05-06 08:10:48 +00:00
- Replace unquoted heredocs with printf + json_escape for all JSON config files containing credentials (8 cloud providers + shared lib) - Replace eval with printf -v for safe indirect variable assignment - Move RunPod API key from URL query param to api-key header Fixes #104, Fixes #105, Fixes #106 Co-authored-by: A <6723574+louisgv@users.noreply.github.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| lib | ||
| aider.sh | ||
| claude.sh | ||
| gptme.sh | ||
| README.md | ||
Railway
Railway container platform via CLI. Railway
Pay-per-minute billing. Fast deployment. Uses websocket-based SSH protocol (not standard SSH). Requires Railway CLI.
Agents
Claude Code
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/claude.sh)
Aider
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/aider.sh)
gptme
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/gptme.sh)
OpenClaw
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/openclaw.sh)
NanoClaw
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/nanoclaw.sh)
Goose
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/goose.sh)
Codex CLI
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/codex.sh)
Open Interpreter
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/interpreter.sh)
Gemini CLI
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/gemini.sh)
Amazon Q CLI
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/amazonq.sh)
Cline
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/cline.sh)
OpenCode
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/opencode.sh)
Plandex
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/plandex.sh)
Non-Interactive Mode
RAILWAY_PROJECT_NAME=dev-mk1 \
RAILWAY_TOKEN=your-token \
OPENROUTER_API_KEY=sk-or-v1-xxxxx \
bash <(curl -fsSL https://openrouter.ai/lab/spawn/railway/claude.sh)
Authentication
Railway CLI requires authentication. You can authenticate in three ways:
- Interactive login (default):
railway loginopens a browser for OAuth - Project token: Set
RAILWAY_TOKENenvironment variable from https://railway.app/account/tokens - Stored credentials: After running
railway login, credentials are stored and reused
For CI/CD pipelines, use project tokens via the RAILWAY_TOKEN environment variable.
Pricing
Railway uses pay-per-minute billing for compute resources. You only pay for what you use:
- Free tier: $5 of free credits per month
- Hobby plan: $5/month subscription + usage-based pricing
- Pro plan: $20/month subscription + usage-based pricing with higher limits
Pricing is prorated to the minute, so you're not paying for idle resources when your service is stopped.
Limits
- Project name: 1-50 characters, lowercase letters, numbers, and hyphens
- Must start and end with alphanumeric character
- No standard SSH access (uses Railway's websocket-based protocol)
- Requires Railway CLI for all operations
Troubleshooting
Railway CLI not found
Install via npm:
npm install -g @railway/cli
Or use the official installer:
bash <(curl -fsSL cli.new)
Authentication failed
Generate a new token at https://railway.app/account/tokens and set:
export RAILWAY_TOKEN=your-token-here
Project already exists
If you get "project already exists", Railway will attempt to reuse the existing project. If this causes issues, you can either:
- Use a different project name
- Delete the old project from https://railway.app/dashboard
- Use
railway linkto link to an existing project
Resources
- Railway Documentation: https://docs.railway.com/
- Railway CLI Reference: https://docs.railway.com/reference/cli-api
- Railway Dashboard: https://railway.app/dashboard
- Generate API Tokens: https://railway.app/account/tokens