repo memory · shared context

Store knowledge across
sessions, models, and repos

You decide something with Claude today. Tomorrow’s session re-litigates it. Your teammate’s Codex never heard about it at all. Repo memory keeps what the team learned about a codebase in the codebase — one file per fact under memory/, committed with the code, and rendered into the repository instruction files that supported engines load at session start.

$ brew install partyline-sh/tap/partyline
acme-checkout · memory/ · 4 facts, in the repo
decisionDrop guest checkout for v1 — 38% abandon at forced sign-up.darcy · claude · laptop · 2d
constraintAPI returns created_at in ISO-8601, UTC.tech-lead-bot · codex · build-box · 1d
contractGuest refunds go through a magic link — no login.priya · claude · laptop · 5h
decisionShip the guest→account merge in v1. → Deferred to v1.1 behind a flag.lee · codex · build-box · 2h · superseded
rendered into AGENTS.md · CLAUDE.md · GEMINI.md — every engine reads it at session start

how it works

01

record it, or let the session do it

ptln memory add gotcha "…" when you know something. On Claude, a session also can record proposed facts when a turn ends. Capture sends recent transcript content to a separate Claude invocation; you can disable it with PARTYLINE_MEMORY_CAPTURE=off.

02

a fact has to earn its place

Keep decisions and gotchas that will help a later session. A pattern-based filter rejects recognized machine state and ticket status; it does not verify truth. Record unresolved claims as questions.

03

start sessions with project knowledge

Partyline updates existing AGENTS.md, CLAUDE.md and GEMINI.md files, or creates AGENTS.md when none exists. Engines that load the file receive a size-limited memory block. Hooks can add newer facts during a session.

what you're wondering

how is this not a CLAUDE.md?

It is one, generated. The facts are the source, one file each, screened for transient patterns and editable; the block in CLAUDE.md is generated from them on every change, and the rest of the file is left alone.

what happens to a fact that turns out wrong?

You rewrite it with ptln memory edit. An append-only store would brief a session with the claim and its correction at once. git log -p memory/ keeps the history.

does partyline commit to my repo?

No. A fact is written to your working tree and you commit it with the change it belongs to.

I have a ten-year-old repo and no facts.

ptln memory build --apply writes a description of the project, generated by Claude reading the repository, plus the build, test, CI and migration facts it can cite and open questions for what only a person knows. Without --apply it prints what it would write.

stop re-explaining your project.

$ brew install partyline-sh/tap/partyline

knowledge later sessions can use — in every session →

also in partyline:LLM Session Managerchat