Ship quick start

2 min read

Ship quick start

A first run

teploy-ship run "write fib.py that prints 8 Fibonacci numbers and run it"

Local workspace by default; add --sandbox <url> --sandbox-token <t> to run inside teploy-sandbox.

Live runs stream thoughts (dim), actions (bold) and observations to the terminal. The default approval policy flags destructive, network and privilege actions for an interactive y/N; use --yes or --headless for CI, --json for machine output. Every run ends with a cache-aware token summary.

Durable runs

teploy-ship run --durable "big refactor"   # parks on approvals, survives exits and crashes
teploy-ship runs                           # list durable runs
teploy-ship approve run-1a2b3c4d           # approve a parked action — the run continues
teploy-ship deny run-1a2b3c4d "not in prod" # deny with a reason — the agent adapts
teploy-ship answer run-1a2b3c4d "archive them, do not delete"  # reply to a question

A parked run holds zero processes; approve, deny and resume continue it in a new invocation, and replay skips completed work. With --sandbox, parks snapshot the workspace so the run survives container TTLs.

The agent can ask

When a decision is genuinely yours — two designs with different consequences, a destructive step the task did not clearly authorise — the loop offers an ask action. The run parks on the question exactly as it parks on an approval, and the question appears on the run page with an answer box, on the webhook as question, and in an approvals queue if you run one. An empty answer tells the agent to decide for itself and say what it assumed.

Benchmarking

teploy-ship eval --suite hard --repeats 2

Configuration

Defaults live in ~/.config/teploy-ship/config.json (model, sandboxUrl, sandboxToken, sandboxImage). Set AI_GATEWAY_URL and AI_GATEWAY_KEY to route all model calls through teploy-gateway.