--output table|json. JSON mode never prompts or emits human banners.
Commands
Diagnose
- Local authentication configuration and server health
- Registry lockfile metadata against the active Registry
- Managed hooks, plugins, or extensions for all registered harnesses
- UUID-attributed Kiro Agent hooks
- Bundled Observal skill installation
healthy, issues, and warnings:
Patch
Preview every registered harness:--all-harnesses or one or more --harness options. JSON returns one result per harness:
~/.pi/agent/extensions/observal.ts and records the CLI version it came from in an adjacent .observal-extension.json. If npm:observal-pi is registered in ~/.pi/agent/settings.json, that registration wins: patch installs nothing locally, and removes a local copy it recognises as its own so Pi does not load the extension twice. A local file Observal did not write is never touched. MCP commands and remote URLs are never wrapped or rewritten.
Cleanup
Preview cleanup:--yes is present. JSON cleanup requires --yes unless it is a dry run.
Unknown harnesses, conflicting selections, malformed configuration, and write failures are surfaced before success is reported.
Support bundles
Exit codes
Related
observal scan: read-only harness inventoryobserval agent pull: install a complete Agent- Session tracking: telemetry delivery architecture

