mirror of
https://github.com/OpenRouterTeam/spawn.git
synced 2026-05-06 08:10:48 +00:00
* fix: rewrite hetzner common.sh + fix token prompt bug in shared/common.sh Hetzner: rewrote from 621 to 224 lines. Removed hcloud CLI dual-path fallback, server type validation/fallback chain (11 functions), and duplicate CLI+API implementations. Now API-only like DigitalOcean. Shared: fixed echo "" in _prompt_for_api_token, get_openrouter_api_key_manual, and get_openrouter_api_key_oauth writing to stdout instead of stderr. These functions are called inside $(...) command substitutions, so the newlines got prepended to the captured token, causing "unable to authenticate" errors when pasting tokens at the prompt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: rewrite daytona common.sh — API-only, drop CLI dependency Rewrote from 312 to 174 lines. Removed daytona CLI dependency in favor of direct REST API calls. Matches the same API-only pattern used by Hetzner, DigitalOcean, and other clouds. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: pass SSH port to control master exit in daytona interactive/destroy The ssh -O exit command to close the multiplexed master was missing the -p PORT flag when DAYTONA_SSH_PORT is set. This left the master connection open, causing "mux_client: master did not respond" errors when the interactive session tried to allocate a PTY. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| lib | ||
| claude.sh | ||
| codex.sh | ||
| kilocode.sh | ||
| openclaw.sh | ||
| opencode.sh | ||
| README.md | ||
| zeroclaw.sh | ||
Hetzner Cloud
Hetzner Cloud servers via REST API. Hetzner Cloud
Agents
Claude Code
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/claude.sh)
OpenClaw
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/openclaw.sh)
ZeroClaw
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/zeroclaw.sh)
Codex CLI
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/codex.sh)
OpenCode
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/opencode.sh)
Kilo Code
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/kilocode.sh)
Non-Interactive Mode
HETZNER_SERVER_NAME=dev-mk1 \
HCLOUD_TOKEN=your-token \
OPENROUTER_API_KEY=sk-or-v1-xxxxx \
bash <(curl -fsSL https://openrouter.ai/labs/spawn/hetzner/claude.sh)