🤖 Claude Code agent instructions

qrate is the one public surface for scripts and agents. The desktop app keeps a single private control endpoint (crates/app/src/app_control.rs, app-control.json, loopback TCP, bearer token); everything outside the app goes through crates/cli and its JSON and exit codes. The loopback agent bridge is removed, not deprecated: its request types (ai::agent), live adapter, program runner and Agent panel log stay, only the transport changed.

The branch is feature/qrate-cli (PR #122). PLAN.md at the repo root tracks the branch; docs/dev/cli-plan.md is the full design, including later phases that are not in scope here.

Scope

Rules that are easy to break

Not in scope

MCP server (ASNT-98), offline --use <PATH> commands against a saved .qrate, any command that writes a cell, qrate app quit.

Definition of done