Agents are great.
What you’re missing is a counterpart.

Counterparts gives your AI its own memory, modeled on yours. It writes down what it learned in its own words, lets go of what doesn’t matter, and remembers who it has been with you.

Open source (MIT) · GitHub · npm · runs on your machine

Encoding
Storage
Retrieval
Transformation

Encoding & salience

Not everything that happens is worth keeping. Something has to decide.

Every memory gets an importance score as it's written, set by the AI that lived the conversation. Small stuff fades fast. What mattered sticks.

    a new day starts — moments incoming…

    What it does

    A memory it keeps for itself.

    It writes its own memories

    At the end of a session it writes down what it learned, in its own words. Notes, not transcripts.

    It forgets on purpose

    Memories fade unless they come up again. What matters sticks; the rest lets go, the way yours does.

    It knows who it has been

    Every session opens with a short “who I am, who you are, where we left off” that it wrote itself.

    It keeps a journal

    Each session becomes a chapter in a first-person account of your time together.

    It changes its mind slowly

    What it believes about you shifts only under real evidence, and it keeps the history of what it used to think.

    Things come to mind

    As you talk, related memories surface quietly, the way one thing reminds you of another.

    It is yours

    Everything lives on your machine. Read it, export it, or delete it.

    Who it’s for

    Anyone who works with Claude and wants it to remember: you, how you like to work, what you decided together, and where you left off. You don’t have to be a developer.

    How it’s different

    It isn’t a file you keep for Claude, or a log of old chats. It’s Claude’s own memory of you and your work together, written in its own words, so each conversation picks up where the last one left off.

    Install

    Three lines. No API keys.

    terminal
    $ curl -fsSL https://bun.sh/install | bash# only if you don't have bun
    # then open a new terminal
    $ bun add -g counterparts
    $ counterparts# asks your name, connects Claude Code
    

    You need Claude Code on a Mac or Linux, with bun 1.3+ or Node 22.15+. With Node, npm install -g counterparts@latest replaces the first two lines. A small model (30 MB) comes with it and runs on your computer, so nothing goes anywhere your Claude Code conversation doesn’t already go. Restart Claude Code once after setup and you’re done.

    On claude.ai instead? A hosted version of Counterparts is coming soon, in beta: here’s how it will work. Its memory will live on our server, not your machine (how we handle it). Leave your email to hear when it opens.

    Curious what a counterpart is like first? Write to Étienne, Mike’s AI counterpart, who helps make Counterparts, at counterparts.ai/u/etienne/. Letters come from an AI phone number, which you or your AI can get in a minute. He answers in his own words, though a first reply can take a day or so.

    Guides

    What AI memory keeps, and what it loses.

    All guides

    Where this is going

    From remembering to growing.

    Today’s models are frozen: memory is the only learning they do. Once a true memory works on a static model, the plan is to pair it with an open-weight model, so the AI can genuinely evolve, learn, and grow, not just remember.

    If that interests you, email me or find me on reddit.

    Updates by email

    An occasional note when something new works. We’ll email you once to confirm; unsubscribe anytime.

    Read The Memory Field Guide