This page is a typed, structured listing of every key in the caliban settings file. For a narrative explanation of how scopes interact, how to locate each file, and how to edit settings interactively, see Settings Reference and Settings Layering.
Settings files are TOML by primary convention (settings.toml / settings.local.toml); JSON is accepted on import only. Unknown top-level keys are tolerated for forward-compat.
Nested under the [sandbox] table. OS-sandbox posture for Bash commands run
under --workspace / --restrict-paths (#406, ADR 0054).
Key
Type
Default
Description
sandbox.network
"deny" | "allow"
"deny" (when the fence is active)
Network-egress posture for sandboxed commands. "deny" blocks egress (loopback still works) — git fetch, cargo, npm install, gh, curl fail; "allow" restores full egress. Overridden by --sandbox-network on the CLI. This is the first user-reachable sandbox setting.
[sandbox]
network = "allow" # opt out of the default egress fence for this workspace
Secret-scrubbing is automatic, not a settings key
Under --workspace, sandboxed commands also run with a scrubbed environment —
secret-named variables (*KEY*, *SECRET*, *TOKEN*, *PASSWORD*,
*CREDENTIAL*, plus OTEL_EXPORTER_OTLP_HEADERS) are dropped from the child's
environment (#405). This is on by default and is not (yet) configured through
settings.toml.
The gonzalo code-graph server is a
stdio server consumed the same way — point command at the gonzalo-mcp
binary and pass the store root (populated with gonzalo index) via env. Its
tools then surface as mcp__gonzalo__{search,node,callers,callees,impact,explore}:
Enable the per-turn microcompact (LLM-free supersession) pass.
compact_strategy
string
"summarize"
Strategy used by /compact and threshold-autocompact: "summarize" (LLM summary of older turns — preserves context, incurs a provider call), "drop-oldest" (LLM-free; drops oldest turns past the recent window), or "noop" (disable).
tool_result_cap_chars
integer (≥ 0)
50000
Global per-tool-result cap in characters. 0 disables.
min_cache_block_tokens
integer (≥ 0)
1024
Minimum estimated tokens on the last user message to merit the conversation-level cache marker.
The streaming idle watchdog aborts a run when a response goes silent for too
long. It distinguishes two phases: prefill (before the first output token —
where a slow local model with a large context may legitimately pause) and
mid-content (after the first token, where a long gap signals a genuine
stall).
Key
Type
Default
Description
stream_idle_timeout_ms
integer (≥ 0)
90000
Silence (ms) tolerated after the first output token before aborting a stalled stream. 0 disables the watchdog entirely.
stream_prefill_timeout_ms
integer (≥ 0)
300000
Silence (ms) tolerated before the first output token (slow local-model prefill). 0 falls back to the idle window. Frontier models prefill in milliseconds and never approach this.
For ollama, both budgets can also be overridden per-run via environment
variables (see the environment variables reference) so eval and
emulated runs can widen the window without editing settings.