spawn/fluidstack
A f39ffd6e24
fix: Prevent shell/Python injection in Codespaces, Render, and FluidStack (#252)
GitHub Codespaces scripts embedded API keys directly into heredocs sent
over SSH, allowing single-quote breakout for command injection. Fixed by
adding upload_file/run_server/inject_env_vars helpers to Codespaces lib
and using safe temp-file-upload pattern (matching Railway/Render).

Render claude.sh and openclaw.sh built JSON config via unescaped heredocs.
Fixed by using shared setup_claude_code_config/setup_openclaw_config
helpers which properly json_escape values.

FluidStack had triple-quote injection in SSH key registration (pub_key
embedded in Python triple-quotes) and missing single-quote validation in
create_server env var checks. Fixed by reading values via stdin/argv
instead of string interpolation, and added single-quote to validation.

Agent: security-auditor

Co-authored-by: A <6723574+louisgv@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-10 14:14:41 -08:00
..
lib fix: Prevent shell/Python injection in Codespaces, Render, and FluidStack (#252) 2026-02-10 14:14:41 -08:00
aider.sh feat: Add FluidStack GPU cloud provider with claude, aider, and gptme agents (#247) 2026-02-10 14:09:25 -08:00
claude.sh feat: Add FluidStack GPU cloud provider with claude, aider, and gptme agents (#247) 2026-02-10 14:09:25 -08:00
gptme.sh feat: Add FluidStack GPU cloud provider with claude, aider, and gptme agents (#247) 2026-02-10 14:09:25 -08:00
README.md feat: Add FluidStack GPU cloud provider with claude, aider, and gptme agents (#247) 2026-02-10 14:09:25 -08:00

FluidStack

FluidStack GPU cloud via REST API. FluidStack

Prerequisites

  1. A FluidStack account with API key from Dashboard API Keys
  2. SSH public key (will be registered automatically)

Agents

Claude Code

bash <(curl -fsSL https://openrouter.ai/lab/spawn/fluidstack/claude.sh)

Aider

bash <(curl -fsSL https://openrouter.ai/lab/spawn/fluidstack/aider.sh)

gptme

bash <(curl -fsSL https://openrouter.ai/lab/spawn/fluidstack/gptme.sh)

Non-Interactive Mode

FLUIDSTACK_SERVER_NAME=dev-gpu \
FLUIDSTACK_API_KEY=your-api-key \
OPENROUTER_API_KEY=sk-or-v1-xxxxx \
  bash <(curl -fsSL https://openrouter.ai/lab/spawn/fluidstack/claude.sh)

Environment Variables

Variable Description Default
FLUIDSTACK_API_KEY FluidStack API key (prompted)
FLUIDSTACK_SERVER_NAME Instance name (prompted)
FLUIDSTACK_GPU_TYPE GPU type (e.g., RTX_4090, A100, H100) RTX_4090
FLUIDSTACK_SSH_KEY_NAME SSH key name spawn-${USER}
OPENROUTER_API_KEY OpenRouter API key (prompted via OAuth)

Notes

  • FluidStack is a GPU cloud provider with A100s and H100s starting at $1.35/hr
  • Up to 70% cheaper than traditional hyperscalers
  • Zero egress fees for data transfer
  • Simple REST API with Python SDK available
  • SSH keys are automatically registered via the API
  • Instances use the root user for SSH access