Your agent remembers this repo.
Every Claude Code session starts with what you already decided here, each line linked to the session it came from. When there is no record, it says so.
Real output from alluvia's own repository, the session after it was built.[7]
The first two states are the plugin's own session-start output, receipts intact.[10]The search runs on the demo corpus behind the replays below.
Real output from alluvia's own repository, the session after it was built.[7]
No briefing exists for this repository, so the hook returns nothing at all and the session starts clean. Guessing is not a feature.[9]
Even a bare commit SHA finds its session.
You think in Claude Code. You debug in Cursor. Each session starts from zero, and the decision you made last week sits in a transcript that is deleted after 30 days. Your agent re-derives it, or guesses. A teammate solves it a third time. The record of why the code looks the way it does lives nowhere.So the team solves it again.
how it works
Install the plugin
uv tool install alluvia, then the plugin from its marketplace inside Claude Code. Local-first; raw conversations never leave your machine. Signing in is optional, later, and adds sync.[4]
Alluvia processes what is already on disk
Sessions become decisions, problems, and open questions, each tied to the session it came from. Long sessions are read to the end, where decisions land. Every model call is secret-scrubbed first.[3]
Every session starts with this repo's record
Last session's decisions, the problems still open, earlier decisions, each linked to its session. Nothing known, nothing injected. Ask a question and get the answer or an honest no record.[10]
Memory your agent gets, and you keep.
Your agent starts every session with this repository's record, each line linked to its session.You keep the same record: owned, portable, and shared with a team only when you say so.
your history, owned
Your history, owned.
Claude Code keeps local transcripts for 30 days by default, then deletes them.[8] The notes alluvia distilled from them stay, and they are yours to move.
notes stay
Your notes and their sources live on your machine for as long as you keep them, long after the transcript is gone.
export, import
One file holds your notes, session metadata, suppressions, and mutes. Import merges it on any machine, idempotently. Never raw.[11]
alluvia memory export ~/memory.jsonla repo carries its own
Keeps .alluvia/memory.jsonl current after every session; a fresh clone receives the repository's handoff on its first session. Committing it is your act.[11]
alluvia repo share onor sign in once
Your record follows you across machines, and on Pro we process sessions for you. The same never-raw notes, nothing more.[11]
alluvia cloud loginWhat leaves your machine
| Raw conversations | Nowhere. Local SQLite, forever yours. |
|---|---|
| Embeddings | Nowhere. Computed on-device. |
| Processing calls | Your own model provider, under your key, secret-scrubbed first. On Pro, ours. |
| Cloud sync | Only after you sign in. Notes, session details, topics, and your judgments; never raw history. |
| Our processing (Pro) | Secret-scrubbed transcripts, processed for you when your own provider is limited or absent. |
| Team sync | Opt-in. Notes only; raw history still never leaves your machine. |
| Telemetry | The CLI sends none. |
What never leaves the machine deposits nothing; no gold on those rows. The source is public.[6]
Watch it answer.
The Cloud dashboard and the local-first CLI: replays rendered from real pipeline output.[5]
pricing
Your AI forgets everything after 30 days. Yours won't.
Try it on one machine. Bring your own API key, keep the last 30 days in the cloud, forget and undo from the browser.
- one machine
- last 30 days in the cloud
- your own API key
We process your sessions for you, no key needed. Your whole history, kept forever, on every machine. Search everything, ask questions, get a briefing every Monday.
- 1,000 sessions a month processed for you
- history kept forever, every machine
- search, questions, a Monday briefing
Everything in Pro for each person, plus shared memory: what the team decided, who decided it, and the answers you confirmed.
- everything in Pro, per person
- shared memory and search
- decision log and confirmed answers
Single sign-on, audit, self-hosting, priority support.
- SSO/SAML
- audit
- self-host
Prices in USD. Cancel any time. The open-source plugin stays free.
Asked and answered.
Q.Is my code or conversations sent anywhere?
A.No. Raw conversations and embeddings stay on your machine. Processing uses your own key on Free, ours on Pro, and is secret-scrubbed first. If you sign in, only notes and your judgments sync, never raw history.[6]
Q.What do I get for $25?
A.We process your sessions for you, so you never configure a key or wait on a rate limit. Your whole history is kept forever and follows you to every machine. You can search all of it, ask questions and get answers with sources, and a briefing lands every Monday.
Q.What if I never sign in?
A.The open-source plugin works without an account. Sign in to keep your history past 30 days, sync your machines, and have us process sessions for you.
Q.Do you keep my conversations?
A.No. Raw conversations never leave your machine, signed in or not. The cloud holds notes, session details, topics, and your judgments.
Q.Is this another “AI memory” tool?
A.Memory tools inject what they guess is relevant. Alluvia injects what your own sessions in this repo decided, each line linked to its session, hides weak matches, and says no record when there is none. A wrong note is one click from gone, for good.
Q.How is this different from a wiki?
A.You don't write it. Alluvia builds the record from the AI sessions you already have, and keeps it current as you work.
Q.Which tools do you support?
A.Claude Code, Cursor, Codex CLI, Gemini CLI, OpenCode, the Cline family (Cline, Roo, Kilo), and ChatGPT exports today, with more adapters landing. Anything that writes the open normalized-session format is a source.
Q.Do you train on our data?
A.Never. There is no shared model; your record is yours, scoped to you or your team.
Sources
Every mark on this page resolves to something you can check.
- [1]LICENSEthe MIT license, in the repository root
- [2]pypi.org/project/alluviathe CLI, installable today
- [3]alluvia/distill/scrub.pythe secret-scrubber that runs before any LLM call
- [4]what leaves your machinethe table above, row by row
- [5]alluvia-cloud-demo-v2.mp4the replay itself, rendered from real pipeline output
- [6]github.com/dylanp12/alluviathe entire CLI source; there is no telemetry to find in it
- [7]README · what arrives at session startthe briefing in the card, as the plugin printed it
- [8]code.claude.com/docs/en/data-usagetranscripts are stored locally for 30 days by default (cleanupPeriodDays)
- [9]code.claude.com/docs/en/hooksSessionStart, SessionEnd, PreCompact: the events the plugin listens to
- [10]hooks/hooks.jsonthe plugin's hook manifest: three commands, no resident process
- [11]README · your history, ownedexport, import, repo share, and the sign-in path