1. Work the task
The agent edits, runs tests, and opens a PR — and notes the conventions it hit along the way.
Most coding agents start every session from zero. 0dai keeps a project memory on disk in the ai/ directory. Each session reads what earlier sessions recorded about the codebase, so the next task starts where the last one left off.
Illustrative model. The timeline and charts below show the shape we expect as project memory builds up on a repo. They are an example, not measured customer data. We will publish real numbers once we can stand behind them.
Compounding context
When the agent finishes a task, it writes what it learned about the repo to a project memory on disk: the test layout, naming rules, the error-handling style. The next session reads that memory before it touches a file. Nothing is re-derived from scratch, so the second week of work costs less review time than the first.
1. Work the task
The agent edits, runs tests, and opens a PR — and notes the conventions it hit along the way.
2. Record to memory
Those notes land in ai/ on disk, scoped to the project and versioned with the repo.
3. Read it back
The next session loads that memory first, so it starts already knowing how the codebase is written.
The first three weeks
An illustrative arc on a single repo. Day 1 is a cold start — larger PRs, more review cycles. By Day 21 the agent matches the repo's patterns, so PRs are smaller and clear review faster.
The agent reads the repo from scratch. It guesses at file layout and naming, so PRs are larger and reviewers send them back more than once.
Project memory now holds the import order, the test layout, and a few naming rules. New diffs need fewer corrections.
The agent reuses error-handling and test patterns it recorded earlier. PRs land closer to how a regular contributor would write them.
Generated changes read like the rest of the codebase. PRs are smaller and scoped, and most clear review on the first pass.
Illustrative figures — see the note at the top of the page.
Trends
Two metrics fall as the agent stops re-learning the repo; one rises as it records more of how the codebase is written. Each chart is an illustrative model over the same three-week window.
Goes down
Time from first commit to merge. Falls as the agent stops re-deriving the repo's structure each session.
Goes down
Back-and-forth before approval. Drops as generated diffs already match the team's conventions.
Goes up
Style, naming, and test rules the agent has recorded in project memory and reuses on the next task.
What it records
Project memory holds the conventions that make a diff read like the rest of the repo. Four of them carry the most weight.
Import order, line width, where helpers live, when to extract a function versus inline it.
How the repo names variables, files, and routes — and which abbreviations it refuses.
The test framework, the fixture layout, and whether new code ships with a test in the same PR.
Whether the repo throws, returns a result type, or logs and continues — and the shape of its error messages.
Illustrative lines, in the format the CLI writes to project memory.