CLI reference¶
For: people and agents calling the tether command. After this page you know every subcommand, flag and exit code.
The tether command is the primary entry point for running, inspecting, and controlling headless LLM sessions. Add --json (where a command lists it) for machine-readable output.
Exit codes¶
| Code | Meaning |
|---|---|
0 |
Completed successfully |
1 |
Usage error (bad arguments, missing required flags) |
2 |
Waiting for input (WAITING_INPUT) |
3 |
Verification gate failed |
4 |
Max steps reached or stalled |
5 |
Worker or provider error |
tether run¶
Start a new headless session with a goal and optional tools, model, or harness. Use this to launch autonomous tasks that run to completion or until a gate pauses them.
| Flag | Meaning |
|---|---|
--headless |
Run detached in background and print session ID |
--model |
Model identifier (e.g., ollama/qwen3.5:9b, openai/gpt-4o-mini) |
--skill |
Skill name from ./skills/ or ~/.tether/skills/ |
--tools |
Comma-separated tools (e.g., web,mem,bash or all) |
--verify |
Deterministic verification gate command to run before done (repeatable) |
--sandbox |
Deterministic sandbox profile |
--no-network |
Disable network inside the bash sandbox (requires bwrap; fails closed without it) |
--max-steps |
Maximum reasoning steps |
--context-tokens |
Context token budget (default 8192) |
--fold-after |
Fold observations older than N turns (default 2) |
--db |
SQLite DB path (default .tether/tether.db) |
--param |
Model request parameter, repeatable (e.g., --param temperature=0 --param think=false) |
--output-schema |
JSON Schema file; the done deliverable must validate or done is rejected |
--result-file |
Write the deliverable here, not to stdout |
--json |
Machine-readable JSON output |
tether pipeline¶
Execute a declarative pipeline from a YAML manifest with a root goal. Use this for reproducible, multi-stage workflows defined in configuration.
| Flag | Meaning |
|---|---|
--headless |
Run detached in background and print session ID |
--model |
Default fallback model when a stage omits model |
--sandbox |
Root deterministic sandbox profile (stages can only narrow) |
--no-network |
Disable network inside the bash sandbox (requires bwrap; fails closed without it) |
--max-steps |
Default max reasoning steps per stage |
--db |
SQLite DB path (default .tether/tether.db) |
--context-tokens |
Context token budget (default 8192) |
--fold-after |
Fold observations older than N turns (default 2) |
--result-file |
Write the deliverable here, not to stdout |
--json |
Machine-readable JSON output |
tether status¶
Show the current state of a session (running, paused, completed, failed). Use this to check progress without reading the full event log.
| Flag | Meaning |
|---|---|
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether read¶
Print the full event transcript of a session. Use this to review what the agent did, step by step.
| Flag | Meaning |
|---|---|
--digest |
Show compact ~50-token digest card |
--steps |
Show step-by-step work log |
--full |
Show the full final result (the default) |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether query¶
Search a session's event log for keywords. Use this to find specific tool calls, decisions, or errors without reading the entire transcript.
| Flag | Meaning |
|---|---|
--top |
Top K chunks to return |
--db |
SQLite DB path (default .tether/tether.db) |
tether send¶
Send a follow-up instruction to a running or paused session. Use this to steer an agent mid-run or respond to a WAITING_INPUT pause.
| Flag | Meaning |
|---|---|
--headless |
Resume in background if completed |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether wait¶
Block until one or more sessions reach a terminal state (completed, failed, or paused). Use this in scripts to synchronize parallel runs.
| Flag | Meaning |
|---|---|
--timeout |
Maximum seconds to wait |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether stop¶
Request graceful termination of a running session. Use this to cancel a run that is stuck or no longer needed.
| Flag | Meaning |
|---|---|
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether list¶
List all known sessions with their status, goal, and timestamps. Use this to get an overview of past and current runs.
| Flag | Meaning |
|---|---|
--limit |
Maximum sessions to show |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether stats¶
Show aggregate statistics across all sessions (counts by status, total steps, token usage). Use this for a quick health check of your workload.
| Flag | Meaning |
|---|---|
--model |
Filter by model identifier |
--skill |
Filter by skill name |
--limit |
Max recent sessions to analyze |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether retro¶
Generate a retrospective summary of a completed session (what worked, what didn't, suggestions). Use this to learn from past runs and improve prompts or pipelines.
| Flag | Meaning |
|---|---|
--apply |
Write rules (SKILL.md or project pin) |
--model |
Model for the single LLM pass |
--db |
SQLite DB path (default .tether/tether.db) |
tether events¶
Stream raw events from a session in real time. Use this for live monitoring or piping into other tools.
| Flag | Meaning |
|---|---|
--follow |
Stream until the session ends |
--db |
SQLite DB path (default .tether/tether.db) |
tether misses¶
Show tool calls that failed or returned errors across sessions. Use this to debug recurring tool failures.
| Flag | Meaning |
|---|---|
--model |
Only sessions of this model |
--limit |
Max replies (default 20) |
--db |
SQLite DB path (default .tether/tether.db) |
--json |
Machine-readable JSON output |
tether mcp¶
Start an MCP (Model Context Protocol) server that exposes tether sessions as tools. Use this to let other agents or IDEs invoke tether runs.
| Flag | Meaning |
|---|---|
--db |
SQLite DB path (default .tether/tether.db) |
--workspace |
Workspace root (default: current directory) |