Install
honcho command. It does not start a server. Use honcho start --setup (Docker + an LLM provider key) when you want a local stack.
Quick Start
honcho init authenticates the CLI against a Honcho server. It does not configure the LLM key a local stack needs — that is honcho start --setup.
Local stack
honcho start --setup basic is the fastest way to run Honcho on your machine. It does not require cloning the Honcho repo. The wizard prompts for an LLM provider and API key, writes them into the profile .env, pulls ghcr.io/plastic-labs/honcho:latest, pins that digest, and starts API + deriver + Postgres + Redis via Docker.
Default profile is local (--profile / HONCHO_PROFILE). First start copies the image config.toml.example into the profile directory; later starts leave that file alone so your edits persist — including when you re-pin the image. Delete config.toml yourself if you want a fresh copy from a new image. Pass --image to pin a different tag or digest. Ports bind to 127.0.0.1; if 8000/5432/6379 are taken, the CLI remaps them (or pass --api-port / --db-port / --redis-port). Auth is off (AUTH_USE_AUTH=false).
Pass --setup basic or --setup advanced for an interactive wizard that writes curated LLM/feature overrides into the profile .env (environment variables win over config.toml). This is TTY-only. basic covers provider and chat model; advanced also covers embeddings, deriver/dialectic models, dreams, and deriver flush. Re-running --setup while the stack is up recreates the API and deriver containers.
This does not change environmentUrl in the shared config file. To talk to the local stack:
Configuration
The CLI resolves config in this order: flag → env var → config file → default.Persisted config
The CLI shares~/.honcho/config.json with sibling Honcho tools. It owns
apiKey and environmentUrl at the top level — everything else (hosts,
sessions, etc.) is written by other tools and left untouched on save.
On managed servers that advertise the device grant in OAuth metadata,
honcho init can log you in via the browser; tokens auto-refresh
and are stored under oauth without deleting a shared apiKey.
Per-command targeting (workspace / peer / session) is handled via
-w / -p / -s
flags or HONCHO_* env vars. Not persisted as CLI defaults. This is
deliberate: every invocation is explicit about what it operates on.Runtime overrides
Workspace, peer, and session targeting are per-command only — pass flags orHONCHO_* env vars on every invocation.
Output & exit codes
Every command adapts its output to the context:- TTY — human-readable tables via Rich.
- Piped or redirected — JSON automatically (detected via
isatty). --jsonflag /HONCHO_JSON=1— force JSON regardless of terminal.
honcho-cli is on PyPI (uv tool upgrade honcho-cli). JSON/piped output skips it; set HONCHO_NO_UPDATE_CHECK=1 to disable it.
Collection commands emit JSON arrays; single-resource commands emit JSON objects. Errors are always structured:
CI pipelines and agent runtimes can branch on these without parsing stderr.
Command reference
honcho conclusion
List, search, create, and delete peer conclusions (Honcho’s memory atoms).create
create
delete
delete
list
list
honcho config
Inspect CLI configuration.honcho doctor
Verify config and connectivity. Scope with -w / -p to check workspace, peer, and queue health.honcho help
Show help message.honcho init
Set API key and server URL in ~/.honcho/config.json. Press Enter to keep the current value or type a replacement. Workspace / peer / session scoping is per-command via -w / -p / -s or HONCHO_* env vars — never persisted.string
API key (admin JWT).
string
Honcho API URL (e.g. https://api.honcho.dev, http://localhost:8000).
honcho message
List, create, and get messages within a session.create
create
honcho peer
List, create, chat with, search, and manage peers and their representations.chat
chat
create
create
get-metadata
get-metadata
inspect
inspect
list
list
List all peers in the workspace.
representation
representation
honcho session
List, inspect, view, create, delete, and manage conversation sessions and their peers.context
context
create
create
delete
delete
get-metadata
get-metadata
inspect
inspect
list
list
peers
peers
representation
representation
set-metadata
set-metadata
summaries
summaries
view
view
View a session transcript as a chat log.Modes (pick one):
- default / —last N: tail of the conversation (most recent N)
- —page N [—size M]: page through the full transcript
- —all: every message
string
number
Show only the N most recent messages (default when no —page/—all: 50).
number
1-indexed page of the full transcript. Use for page 2+.
number
Messages per page; requires —page (1-100, default: 50).
boolean
Show the full transcript (every page).
boolean
Newest first (default is chronological: oldest at top).
boolean
Include message IDs in the transcript.
string
Filter by peer ID. Short alias:
-p.honcho start
Start a local Honcho stack (API, deriver, Postgres, Redis). Requires Docker. Uses cloud LLM providers. Does not change the CLI’s configured server URL — pass HONCHO_BASE_URL to talk to this stack.--setup basic or --setup advanced runs an interactive config wizard.
string
default:"local"
Local stack profile name.
string
Host port for the API.
string
Host port for Postgres.
string
Host port for Redis.
string
Interactive config wizard: basic (provider/model) or advanced (embeddings, deriver, dialectic, dreams, flush).
string
Honcho image to pull and pin by digest (default: ghcr.io/plastic-labs/honcho:latest).
string
default:"180"
Seconds to wait for /health after compose up.
honcho status
Show local stack endpoints and container health. With no--profile, lists every stack under ~/.honcho/profiles/.
string
Limit to this profile. Omit to show every local stack.
honcho stop
Stop the local stack started byhoncho start. Keeps data unless —wipe.
string
default:"local"
Local stack profile name.
boolean
Also delete volumes (Postgres data).
honcho workspace
List, create, inspect, delete, and search workspaces.create
create
delete
delete
Delete a workspace. Use —dry-run first to see what will be deleted.Requires —yes to skip confirmation, or will prompt interactively.
If sessions exist, requires —cascade to delete them first.
string
required
boolean
Skip confirmation prompt (for scripted/agent use). Short alias:
-y.boolean
Delete all sessions before deleting the workspace.
boolean
Show what would be deleted without deleting.
inspect
inspect
list
list
List all accessible workspaces.
queue-status
queue-status
Workflows
Inspect an unfamiliar workspace
When you pick up a workspace and need to orient — start broad, narrow to the peer and session you care about.1
Survey the workspace
2
Inspect a specific peer
3
Review the peer's memory
4
Debug a session
A peer isn’t learning
If new messages aren’t producing new conclusions, work down the diagnostic ladder.Session context looks wrong
When an agent’s responses don’t reflect what you expect it to know.Dialectic returns bad answers
Whenhoncho peer chat or the dialectic API is hallucinating or missing context.
Scripting & automation
Pipe commands intojq for inline transforms, or set HONCHO_* env vars for a CI/CD environment with no config file: