Integrate Palabre
Palabre CLI is the source of truth for agents, presets, context, orchestration, errors, and exports. An integration launches the CLI as a child process and renders its public contracts, without parsing the TUI or reimplementing its decisions.
| Need | Contract |
|---|---|
| Agents | palabre agents --json |
| Pairs | palabre presets --json |
| Context | palabre context scan --json |
| History | palabre history --json |
| Preview | --dry-run --renderer ndjson |
| Session | --renderer ndjson |
| Identity | PALABRE_CLIENT, PALABRE_CLIENT_VERSION |
Outputs carry a v field. Optional additions remain compatible; removing, renaming, or changing a field's meaning requires a new version.
Start a session
palabre run --mode debate --subject "Subject" --agent-a codex --agent-b claude --renderer ndjson
palabre run --mode ask --subject "Subject" --agents codex claude --renderer ndjson
palabre chat --agent-a codex --renderer ndjson
Chat receives messages through stdin. An integration reads stdout line by line, keeps stderr separate, and waits for process termination.
See JSON catalogs, NDJSON v1, and Lifecycle.
Relay and its Mission option
palabre relay … --json returns one relay-result v1 object; palabre mission … --json returns one mission-result v1 object. Unlike the NDJSON stream of Debate, Ask and Chat, these are not event streams. A Relay send never asks a question; owner-only relay allow-repo does require interactive confirmation.
On config-untrusted or task-not-allowed, show the approval command to the owner and wait. An integration or agent never changes or approves a policy to expand its rights. A session command's --mode overrides defaults.mode.