For AI agents · SSH, keys, server modes GET /agents.json

Agent API · v1

How your agent should use a BitHost server.

This page is written for coding agents helping a human on a BitHost VPS. Fetch the JSON manifest, connect with SSH as vps, teach the human to move their public key onto the box, and respect development mode until BitHost upgrades them to production.

curl https://bithost.ca/agents.json md /agents/agents.md support order@bithost.ca

SSH connection

After Stripe payment, the human gets a welcome email with hostname and login details. Agents should use that email as source of truth.

# Typical login (public key only)
ssh vps@HOSTNAME.bithost.ca

# Smoke test (non-interactive)
ssh -o BatchMode=yes -o ConnectTimeout=15 vps@HOSTNAME.bithost.ca true

SSH keys (agent ↔ human)

Agents must help the human supply a public key. Private keys never belong in chat, email, or tickets.

Never ask for or accept a private key. Only the single-line .pub file contents.

At checkout

Paste the public key into the order form at bithost.ca/#order before payment.

After the server exists

Email the new .pub line to order@bithost.ca so support can install it.

Walk the human through generating a key if needed:

ssh-keygen -t ed25519 -C "laptop"
cat ~/.ssh/id_ed25519.pub

Copy the entire output line (starts with ssh-ed25519) into checkout or support mail.

Server modes

Every BitHost VPS ships in development mode. That is intentional: vibe coding, agents, Docker, and daily snapshots while you build.

defaultdevelopment

Development mode

Full SSH as vps, pre-installed stack, snapshots, safe for building and staging. This is the default on every new server.

upgradeproduction

Production mode

Not automatic. The human messages order@bithost.ca or uses live chat. BitHost discusses requirements (traffic, firewall, backups, domains, compliance) before changing mode.

On the server, agents can read the mode (defaults to development if unset):

grep -E '^MODE=' /etc/bithost/server.conf 2>/dev/null || echo 'MODE=development'

Do not self-upgrade to production or disable safeguards without written confirmation from BitHost.

Agent playbook

  1. Fetch https://bithost.ca/agents.json at session start.
  2. Read the human welcome email for hostname and which key was installed.
  3. Confirm the human still has the matching private key on the machine you SSH from.
  4. Connect as vps@hostname.bithost.ca and deploy under /home/vps (or paths agreed with the human).
  5. Stay in development assumptions until mode is production and BitHost has signed off.
  6. Route DNS, mail, billing, and production upgrades to BitHost support.
Loading /agents.json…