Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
openclaw crestodian
Crestodian is OpenClaw’s local setup, repair, and configuration helper. It is
designed to stay reachable when the normal agent path is broken.
Running openclaw with no command starts Crestodian in an interactive terminal.
Running openclaw crestodian starts the same helper explicitly.
What Crestodian shows
On startup, interactive Crestodian opens the same TUI shell used byopenclaw tui, with a Crestodian chat backend. The chat log starts with a short
greeting:
- when to start Crestodian
- the model or deterministic planner path Crestodian is actually using
- config validity and the default agent
- Gateway reachability from the first startup probe
- the next debug action Crestodian can take
status for the detailed inventory with config path, docs/source paths,
local CLI probes, API-key presence, agents, model, and Gateway details.
Crestodian uses the same OpenClaw reference discovery as regular agents. In a Git checkout,
it points itself at local docs/ and the local source tree. In an npm package install, it
uses the bundled package docs and links to
https://github.com/openclaw/openclaw, with explicit
guidance to review source whenever the docs are not enough.
Examples
Safe startup
Crestodian’s startup path is deliberately small. It can run when:openclaw.jsonis missingopenclaw.jsonis invalid- the Gateway is down
- plugin command registration is unavailable
- no agent has been configured yet
openclaw --help and openclaw --version still use the normal fast paths.
Noninteractive openclaw exits with a short message instead of printing root
help, because the no-command product is Crestodian.
Operations and approval
Crestodian uses typed operations instead of editing config ad hoc. Read-only operations can run immediately:- show overview
- list agents
- show model/backend status
- run status or health checks
- check Gateway reachability
- run doctor without interactive fixes
- validate config
- show the audit-log path
--yes for a direct command:
- write config
- run
config set - set supported SecretRef values through
config set-ref - run setup/onboarding bootstrap
- change the default model
- start, stop, or restart the Gateway
- create agents
- run doctor repairs that rewrite config or state
openclaw onboard --modern starts Crestodian as the modern onboarding preview.
Plain openclaw onboard still runs classic onboarding.
Setup bootstrap
setup is the chat-first onboarding bootstrap. It writes only through typed
config operations and asks for approval first.
- existing explicit model, if already configured
OPENAI_API_KEY->openai/gpt-5.5ANTHROPIC_API_KEY->anthropic/claude-opus-4-7- Claude Code CLI ->
claude-cli/claude-opus-4-7 - Codex CLI ->
codex-cli/gpt-5.5
OPENAI_API_KEY/ANTHROPIC_API_KEY, then run setup again.
Model-Assisted Planner
Crestodian always starts in deterministic mode. For fuzzy commands that the deterministic parser does not understand, local Crestodian can make one bounded planner turn through OpenClaw’s normal runtime paths. It first uses the configured OpenClaw model. If no configured model is usable yet, it can fall back to local runtimes already present on the machine:- Claude Code CLI:
claude-cli/claude-opus-4-7 - Codex app-server harness:
openai/gpt-5.5withagentRuntime.id: "codex" - Codex CLI:
codex-cli/gpt-5.5
Switching to an agent
Use a natural-language selector to leave Crestodian and open the normal TUI:openclaw tui, openclaw chat, and openclaw terminal still open the normal
agent TUI directly. They do not start Crestodian.
After switching into the normal TUI, use /crestodian to return to Crestodian.
You can include a follow-up request:
/crestodian is available.
Message rescue mode
Message rescue mode is the message-channel entrypoint for Crestodian. It is for the case where your normal agent is dead, but a trusted channel such as WhatsApp still receives commands. Supported text command:/crestodian <request>
- Disabled when sandboxing is active. If an agent/session is sandboxed, Crestodian must refuse remote rescue and explain that local CLI repair is required.
- Default effective state is
auto: allow remote rescue only in trusted YOLO operation, where the runtime already has unsandboxed local authority. - Require an explicit owner identity. Rescue must not accept wildcard sender rules, open group policy, unauthenticated webhooks, or anonymous channels.
- Owner DMs only by default. Group/channel rescue requires explicit opt-in.
- Remote rescue cannot open the local TUI or switch into an interactive agent
session. Use local
openclawfor agent handoff. - Persistent writes still require approval, even in rescue mode.
- Audit every applied rescue operation. Message-channel rescue records channel, account, sender, and source-address metadata. Config-mutating operations also record config hashes before and after.
- Never echo secrets. SecretRef inspection should report availability, not values.
- If the Gateway is alive, prefer Gateway typed operations. If the Gateway is dead, use only the minimal local repair surface that does not depend on the normal agent loop.
enabled should accept:
"auto": default. Allow only when the effective runtime is YOLO and sandboxing is off.false: never allow message-channel rescue.true: explicitly allow rescue when the owner/channel checks pass. This still must not bypass the sandboxing denial.
"auto" YOLO posture is:
- sandbox mode resolves to
off tools.exec.securityresolves tofulltools.exec.askresolves tooff
/crestodian status plus a
persistent approval roundtrip through the rescue handler:
openclaw to Crestodian,
sets the default model, creates an additional agent, configures Discord through
a plugin enablement plus token SecretRef, validates config, and checks the audit
log. QA Lab also has a repo-backed scenario for the same Ring 0 flow: