Developer reference
Data model
The core types that flow between the backend and the UI — and that are persisted in your local store.json.
Project#
| Field | Meaning |
|---|---|
path | Absolute repo path (the unique key). |
name | Display name (the folder name). |
base_branch | The repo's base branch. |
Workspace#
| Field | Meaning |
|---|---|
id | Unique id (the agent session is agent:<id>). |
name / project_path | Task name and owning project. |
worktree_path / branch / base_branch | The isolated checkout, its branch, and what it merges into. |
status | idle · running · done · error · merged · archived. |
messages | The chat history (ChatMessage[]). |
started | Whether the agent has run at least once. |
review / checks_passed / checks_output | The self-review text and test results. |
ChatMessage & ChatStep#
| Type | Fields |
|---|---|
ChatMessage | role (user · agent · system), text, ts, steps, duration_ms. |
ChatStep | kind (text · tool), text, tool, detail — one step of an agent turn. |
DiffResult & FileChange#
| Type | Fields |
|---|---|
DiffResult | patch (unified diff), files (FileChange[]). |
FileChange | path, status (added · modified · deleted · renamed), added, removed. |
Settings#
| Field | Meaning |
|---|---|
model | The Claude model id (see Models). |
permission_mode | skip · acceptEdits · plan · default. |
thinking | off · high · xhigh · max. |
budget_usd / budget_period | The spend budget and its window. |
auto_review | Whether self-review & checks run after each run. |
branch_strategy | simple · conventional. |
UsageRecord#
| Field | Meaning |
|---|---|
ts / model | Timestamp and model used. |
cost_usd | Dollar cost of the run. |
input / output / cache_read / cache_creation tokens | Token breakdown. |
workspace_id / project_path | Where the usage came from. |
Other types#
| Type | Fields |
|---|---|
Command | id, name, description, prompt, kind (command · skill). |
Issue | number, title, body, url, labels, state. |
GithubAccount / GoogleAccount | The signed-in profile (login/name/avatar, or email/name/picture). |
DepStatus | git, claude booleans plus version strings. |
Note
All of this is persisted locally in
store.json — see How it's built → storage.