spawn/netcup
A b2628e91c1
fix: add actionable guidance to SSH, API, and dependency error messages (#968)
Improve error messages in shared utilities and cloud providers that
previously showed bare "Failed to..." messages without telling users
how to fix the problem.

Shared (shared/common.sh):
- generate_ssh_key_if_missing: handle ssh-keygen/mkdir failures with
  disk space and permission guidance
- get_ssh_fingerprint: detect missing/corrupt public key files with
  regeneration instructions
- generic_ssh_wait: structured "How to fix" with manual SSH test command
  and firewall check
- _report_api_failure: add DNS/firewall/proxy guidance for network errors
- ensure_jq: platform-specific install commands for unknown package
  managers, hash rehash hint after install
- get_openrouter_api_key_manual: structured guidance after 3 failed
  attempts

Cloud providers:
- Contabo: actionable guidance for OAuth token failures
- Exoscale: guidance for credential validation and CLI download failures
- Netcup: network connectivity hint for API connection failure
- Scaleway: structured guidance for project ID lookup failure

Agent: ux-engineer

Co-authored-by: A <6723574+louisgv@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-13 11:00:35 -08:00
..
lib fix: add actionable guidance to SSH, API, and dependency error messages (#968) 2026-02-13 11:00:35 -08:00
aider.sh fix: add actionable guidance to agent installation failures across 126 scripts (#966) 2026-02-13 10:14:03 -08:00
amazonq.sh fix: use log_step (cyan) for progress messages instead of log_warn (yellow) (#534) 2026-02-11 14:37:43 -08:00
claude.sh fix: add actionable guidance to agent installation failures across 126 scripts (#966) 2026-02-13 10:14:03 -08:00
cline.sh fix: use log_step (cyan) for progress messages instead of log_warn (yellow) (#534) 2026-02-11 14:37:43 -08:00
codex.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
continue.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
gemini.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
goose.sh fix: add actionable guidance to agent installation failures across 126 scripts (#966) 2026-02-13 10:14:03 -08:00
gptme.sh fix: add actionable guidance to agent installation failures across 126 scripts (#966) 2026-02-13 10:14:03 -08:00
interpreter.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
kilocode.sh feat: implement netcup/kilocode integration (#751) 2026-02-12 15:49:19 -08:00
nanoclaw.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
openclaw.sh fix: use log_step for progress messages in netcup scripts (#441) 2026-02-11 04:45:44 -08:00
opencode.sh fix: use log_step (cyan) for progress messages instead of log_warn (yellow) (#534) 2026-02-11 14:37:43 -08:00
plandex.sh fix: add actionable guidance to agent installation failures across 126 scripts (#966) 2026-02-13 10:14:03 -08:00
README.md refactor: replace Python with jq in Hetzner lib, fix /lab → /labs URLs (#827) 2026-02-12 23:14:11 -08:00

Netcup Cloud

Netcup VPS cloud via REST API. Netcup

Agents

Claude Code

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

Aider

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

Goose

bash <(curl -fsSL https://openrouter.ai/labs/spawn/netcup/goose.sh)

Amazon Q

bash <(curl -fsSL https://openrouter.ai/labs/spawn/netcup/amazonq.sh)

Plandex

bash <(curl -fsSL https://openrouter.ai/labs/spawn/netcup/plandex.sh)

Kilo Code

bash <(curl -fsSL https://openrouter.ai/labs/spawn/netcup/kilocode.sh)

Non-Interactive Mode

NETCUP_SERVER_NAME=dev-mk1 \
NETCUP_CUSTOMER_NUMBER=12345 \
NETCUP_API_KEY=your-api-key \
NETCUP_API_PASSWORD=your-api-password \
OPENROUTER_API_KEY=sk-or-v1-xxxxx \
  bash <(curl -fsSL https://openrouter.ai/labs/spawn/netcup/claude.sh)

Authentication

Netcup uses session-based REST API authentication with three credentials:

  1. NETCUP_CUSTOMER_NUMBER - Your customer number
  2. NETCUP_API_KEY - API key from SCP
  3. NETCUP_API_PASSWORD - API password from SCP

Get your credentials:

The scripts will:

  1. Check for credentials in environment variables
  2. Check ~/.config/spawn/netcup.json
  3. Prompt for credentials if not found
  4. Save credentials to config file for reuse

Pricing

Budget VPS provider starting at approximately €3.86/month for entry-level VPS plans. Netcup offers flexible pricing with hourly billing or annual contracts.

API

Netcup's REST API launched in October 2025. It uses session-based authentication (login to get session ID, then use session ID for API calls). The API replaces the legacy SOAP web service (discontinued May 1, 2026).

API documentation is available in the Server Control Panel → REST API Docs.