Architecture overview
Veyyon is a Bun/TypeScript coding agent (fork of oh-my-pi) with Rust hot paths (@veyyon/hashline,
native grep, PTY). The shipped CLI binary is veyyon. There is no separate app-server daemon in
the product surface.
The request path
prompt ──► veyyon
│
▼
AgentSession turn loop
│
▼
model stream + tool calls
│
▼
tool handlers (read, bash, edit, …) ──► results back to model
Interactive mode runs in the TUI. Non-interactive work uses veyyon with a prompt or subcommands such
as commit, grep, and models.
Subsystem map
| Area | Responsibility | Handbook |
|---|---|---|
| Sessions | JSONL trees, resume, fork, compact | Sessions |
| Edit | Hashline patches (default) | Edit engine |
| Sandbox | Approval + filesystem/network bounds | Sandbox |
| Config | Layered config.yml, profiles | Config |
| MCP | External tool servers | MCP |
| Providers | Model registry + auth | Providers |
| Memory | mnemopi / local backends | Memory |
Spec — not shipped: a standalone exec-server process, guardian auto-review as a subsystem, and a separate backend-catalog subsystem. Behavior that ships is covered under the rows above.