AI agents can read your code. What they cannot read is why it is that way.
When Claude Code opens a repo, it sees files. It does not see the decision from six months ago that made auth stateless. It does not know that the billing module has a subtle invariant around invoice previews. It does not know that a particular method was retired two sprints ago and should not be used in new code.
This is not a capability gap. It is a context gap.
What Driftless does
Driftless is context delivery. Before a human or agent touches a file, it delivers the context they need. Not a summary of the code — the context behind it. The decisions, the gotchas, the patterns, the ownership.
This is different from documentation. Documentation is static. It gets written once and rots. Context delivery is dynamic: it is rooted in the codebase, updated by the team's work, and delivered at the moment of change.
What you can do today
1. Scan your repo, get suggested topics
driftless init --suggest
Driftless scans your codebase and suggests topics: modules, patterns, key files. You review and confirm. Each topic becomes a living note that stays anchored to the code.
2. Write context as notes
driftless context add "auth-provider" \
--content "# Auth Provider Decision\n\nWe chose Clerk because..." \
--kind decision \
--tags architecture,auth
Topics are markdown notes with YAML frontmatter. Tags, kind, content. No rigid forms. Write how your team actually thinks.
3. Read context before you code
driftless context get auth-provider
Before editing a file, get the relevant context. Not a dump of everything — the slice that applies to what you are touching.
4. See your architecture as a graph
driftless context graph auth-provider --depth 2
Topics connect with typed relations: depends_on, supersedes, blocks. The dashboard renders this as a visual graph. The shape of the graph tells you things a list cannot.
How it stays current
The key design: context is anchored to the codebase and updated by the PR stream. When a PR changes how a module works, Driftless flags the topic as stale. When a decision gets made in code review, it gets captured.
The memory stays current because the loop never stops: scan → observe → contextualize → deliver → check.
For AI-native teams
If your team uses Claude Code, Cursor, Copilot, or any agent that touches code, context is your bottleneck. Not model capability. Not prompt engineering. Context.
Driftless is built for teams where agents are part of the workflow. Where multiple contributors — human and agent — need shared, durable, up-to-date context.
Get started
npm install -g @driftless-sh/cli
driftless login
driftless init
Or read the docs at docs.driftless.icu.
Context that is as current as the last merged PR.
