Documentation
¶
Overview ¶
arena.go wires chatwright.dev/runtime/arena into the CLI as `chatwright arena run` and `chatwright arena report`. It is deliberately thin per this repository's own AGENTS.md ("the CLI is deliberately thin ... engine or wire logic never lives here"): every metric, every retry- breakdown count and the whole matrix-execution loop live in the arena package; this file only parses an arena.yaml config into arena.Matrix, calls arena.Run/arena.WriteReport, and persists what the arena package itself never writes to disk (see arena's own package doc comment) — bundles, the markdown report, and a machine-readable results.json.
Command chatwright is the local command-line entry point for the Chatwright conversation execution platform. It is deliberately thin: the heavy lifting lives in chatwright.dev/runtime (platform emulation + the testing runtime) and chatwright.dev/sdk (the run-bundle wire model); this binary only fronts them from a terminal.
server.go wires chatwright.dev/cli/internal/server into the CLI as `chatwright server serve|start|stop|restart`. It is deliberately thin per this repository's own AGENTS.md ("the CLI is deliberately thin ... engine or wire logic never lives here"): every HTTP handler, the reverse proxy, the metrics ring buffer, the datastate evaluation seam, and the PID-file/ daemon primitives live in internal/server; this file only parses flags (falling back to environment variables, then fixed defaults), and calls into that package.