The root file is the repo entry point. Layer-specific AI/agent guides
live in .agents/:
.agents/UI.md- View-layer architecture, widgets, timelines, profiler launch, and remote UI.agents/CONTROLLER.md- deep dive onsrc/controller/(C ABI, async fetch, memory manager, segment timeline).agents/DATABASE.md- deep dive onsrc/model/(SQLite adapters, query pipeline, packed table, data model, topology, metadata versioning)
If you are an AI coding assistant (Cursor, Codex, Claude Code,
Copilot agent, etc.), read .agents/UI.md in full before making
non-trivial changes under src/view/ or to UI-facing app integration.
If your change touches src/controller/, also read
.agents/CONTROLLER.md. If it touches src/model/ (the database /
data-model layer), also read .agents/DATABASE.md. Together these
guides are the single source of truth for:
- Project identity, build, and repo layout
- Module boundaries (
app/core/model/controller/view) - The View layer top-down tour and full widget inventory
- Track-item, trace-view, and compute-view internals
- UI models and cross-cutting services (events, settings, monitoring, logging, hotkeys, notifications)
- Compare, measurement, profiler-launch, and remote/SSH workflows
- Data flow (click -> request -> event -> pixels)
- Coding conventions, comment style, and reuse catalog
- Common pitfalls and a quick-reference index of every UI class
Human contributors should read these in order:
README.md- what the app is and how to use itBUILDING.md- per-platform build stepsCODING.md- hard rules on style, naming, format (READ THIS FIRST before changing any C++).agents/UI.md- View architecture and reuse guide (read for UI work).agents/CONTROLLER.md- controller deep dive (read when working onsrc/controller/).agents/DATABASE.md- database / model layer deep dive (read when working onsrc/model/).github/CONTRIBUTING.md- contribution workflow
When CODING.md and the .agents/ guides disagree, CODING.md wins.