spawn/binarylane
L 0708ff1700
fix: Use robust OpenCode install method across all clouds (#48)
The upstream OpenCode installer pipes `curl -# -L | tar xz` which fails
in container exec environments (Sprite, E2B, Modal, Daytona) where the
binary stream gets corrupted through the exec layer, producing
"gzip: stdin: not in gzip format" errors.

Added opencode_install_cmd() to shared/common.sh that downloads the
binary to a file first, then extracts it. Updated all 17 opencode.sh
scripts to use this robust method instead of the upstream installer.

The previous fix (#44) only addressed Sprite with a hardcoded
linux-x86_64 architecture. This fix detects OS/arch dynamically and
applies to all cloud providers.

Fixes #42

Co-authored-by: Sprite <noreply@sprite.dev>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-07 23:02:18 -08:00
..
lib refactor: Automated improvements from cycle 1 2026-02-08 06:02:07 +00:00
aider.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
amazonq.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
claude.sh Add BinaryLane regional cloud provider (#40) 2026-02-07 21:51:02 -08:00
cline.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
codex.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
gemini.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
goose.sh Add BinaryLane regional cloud provider (#40) 2026-02-07 21:51:02 -08:00
gptme.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
interpreter.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
nanoclaw.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
openclaw.sh Add Genesis Cloud GPU provider 2026-02-08 06:02:48 +00:00
opencode.sh fix: Use robust OpenCode install method across all clouds (#48) 2026-02-07 23:02:18 -08:00
plandex.sh Add BinaryLane regional cloud provider (#40) 2026-02-07 21:51:02 -08:00
README.md Fix BinaryLane manifest: mark 10 existing scripts as implemented (#43) 2026-02-07 22:54:25 -08:00

BinaryLane Cloud Scripts

Deploy AI coding agents on BinaryLane's Australian cloud infrastructure.

Overview

BinaryLane is an Australian cloud provider offering simple VPS hosting with hourly billing. These scripts provision servers via the BinaryLane REST API and deploy various AI agents with OpenRouter integration.

Prerequisites

Usage

Interactive Mode

# Deploy Claude Code
bash binarylane/claude.sh

# Deploy Goose
bash binarylane/goose.sh

# Deploy Plandex
bash binarylane/plandex.sh

Non-Interactive Mode

Set environment variables for fully automated deployment:

export BINARYLANE_API_TOKEN="your-api-token"
export OPENROUTER_API_KEY="sk-or-v1-..."
export BINARYLANE_SERVER_NAME="my-agent-server"

# Optional: customize server configuration
export BINARYLANE_SIZE="std-2vcpu"      # default: std-1vcpu
export BINARYLANE_REGION="syd"           # default: syd (Sydney)
export BINARYLANE_IMAGE="ubuntu-24.04"   # default: ubuntu-24.04

bash binarylane/claude.sh

Available Scripts

Implemented

  • claude.sh - Claude Code (Anthropic's CLI agent)
  • goose.sh - Goose (Block's open-source agent)
  • plandex.sh - Plandex (AI coding agent for complex tasks)
  • openclaw.sh - OpenClaw (OpenRouter's agent framework)
  • nanoclaw.sh - NanoClaw (WhatsApp-based agent)
  • aider.sh - Aider (AI pair programming)
  • codex.sh - Codex CLI (OpenAI's agent)
  • interpreter.sh - Open Interpreter
  • gemini.sh - Gemini CLI
  • amazonq.sh - Amazon Q CLI
  • cline.sh - Cline
  • gptme.sh - gptme
  • opencode.sh - OpenCode

Configuration

Server Sizes

  • std-1vcpu - 1 vCPU, 2 GB RAM (default)
  • std-2vcpu - 2 vCPU, 4 GB RAM
  • std-4vcpu - 4 vCPU, 8 GB RAM

See full pricing: https://www.binarylane.com.au/pricing

Regions

  • syd - Sydney, Australia (default)
  • per - Perth, Australia
  • bne - Brisbane, Australia
  • mel - Melbourne, Australia

Billing

BinaryLane uses hourly billing prorated from monthly rates:

  • Charged from server creation to deletion
  • Example: AUD 50/month = ~AUD 0.0694/hour
  • Cancel anytime via destroy_server <SERVER_ID>

API Documentation

Full API reference: https://api.binarylane.com.au/reference/

Troubleshooting

Authentication fails

Server creation fails

SSH connection fails

  • Wait 30-60s for cloud-init to complete
  • Check firewall rules at BinaryLane dashboard
  • Verify SSH key is registered: curl -H "Authorization: Bearer $BINARYLANE_API_TOKEN" https://api.binarylane.com.au/v2/account/keys

Advanced Usage

Using the Common Library

#!/bin/bash
source binarylane/lib/common.sh

ensure_binarylane_token
ensure_ssh_key
create_server "my-custom-server"
run_server "$BINARYLANE_SERVER_IP" "echo hello"
destroy_server "$BINARYLANE_SERVER_ID"

List Running Servers

source binarylane/lib/common.sh
ensure_binarylane_token
list_servers

Security

  • API tokens stored in ~/.config/spawn/binarylane.json (chmod 600)
  • SSH keys auto-generated at ~/.ssh/id_ed25519
  • Temporary config files securely wiped on exit
  • OpenRouter API keys injected via environment variables

Remote Execution

These scripts support bash <(curl -fsSL URL) execution:

# Deploy Claude Code directly from GitHub
bash <(curl -fsSL https://raw.githubusercontent.com/OpenRouterTeam/spawn/main/binarylane/claude.sh)