Skip to main content
Turnbook

Turnbook

Your AI forgets everything when the session ends. This one remembers, and it never calls an LLM to do it.

88.8% on LongMemEval. Zero model tokens spent saving memory. Runs on your own PC.

goyohan0611-png/turnbook MCP server Listed on mcpservers.org Mentioned in Awesome MCP Servers

Decide something with one agent on Monday. Ask another on Wednesday. It knows.

English · 한국어

Recorded live: Claude Code saves a decision to Turnbook, and Codex, a different app, recalls it

Recorded live on one PC: Claude Code (Opus 5.5, effort high) and Codex (GPT-6.1-Sol, effort high) sharing one Turnbook memory. Model thinking time is fast-forwarded.

Install

Windows: download Turnbook-Setup.cmd and double-click it, or in PowerShell:

irm https://raw.githubusercontent.com/goyohan0611-png/turnbook/main/scripts/install.ps1 | iex

macOS / Linux:

curl -LsSf https://raw.githubusercontent.com/goyohan0611-png/turnbook/main/scripts/install.sh | sh

No Python needed; nothing else to set up. Restart your AI apps afterwards. Already have Python? pip install turnbook && turnbook-install. More: docs/install.md.

Connecting an MCP client by hand

After pip install turnbook:

{
  "mcpServers": {
    "turnbook": {
      "command": "python",
      "args": ["-m", "graph_mind.mcp_server"]
    }
  }
}

Claude Code: claude mcp add turnbook -- python -m graph_mind.mcp_server. This gives the tools only; turnbook-install also saves every conversation automatically.

Try it

Work as usual for a while, then open a new session, another app, or another model and ask:

  • "Where did we leave off yesterday?"
  • "Which database did we pick for the billing service, and why?"
  • "What did you change in the auth middleware last week?"
  • "What's my dog's name?" (any fact you mentioned once, in passing)

Nothing to tag or save by hand: every turn is already stored, and the agent pulls back the few that answer the question.

What it does

  • One shared brain for every agent in your terminal. Whichever coding agent or model you run, they all read and write the same memory. Switch agents or models; the memory stays.
  • Made for orchestration. When an orchestrator runs several agents at once, they all write to the same memory as they work, so what one agent decided is there for the next. Every memory keeps which app and session it came from.
  • Remembers conversations word for word, on your own PC. Saving is a database write: no model call, no tokens. When a question depends on the past, the agent gets back the few thousand tokens that answer it. Korean and English.
  • One memory across your PCs. Run turnbook folder share, then turnbook folder <code> on the other PC (the AI tells you the command; it never moves your memory by itself, so a web page cannot either). Office network or Tailscale, over TLS, every line encrypted before it leaves a PC.
  • Hand a memory to someone else as a file. turnbook export FILE writes all of it; --project FOLDER writes only the conversations held in that folder. They run turnbook import FILE.
  • Yours. No account, no cloud of its own, no telemetry. Secrets are masked before anything is stored, and "delete the password I typed earlier" deletes it everywhere. docs/privacy.md
  • Teams, if you want them. Share a project's decisions and progress with teammates' AIs, never your personal memory; files stay in Slack and GitHub. docs/teams.md

Works with

The installer finds these and connects them; run it again after installing a new one.

app conversations saved how
Claude Code every turn reads its transcripts
Codex CLI every turn reads its transcripts
Cursor every turn reads its transcripts
Copilot CLI every turn reads its transcripts
Claude Desktop (Cowork) every turn reads its session files
Gemini CLI every turn hooks; also adds relevant memory before each answer
OpenCode every turn plugin; also adds relevant memory before each answer, for any model
Claude Desktop chat, Windsurf, VS Code Copilot, Cline, LM Studio what the model saves MCP tools

Any other MCP client works through the tools: see the hand-written config above.

How it works

flowchart LR
    A["Claude Code · Codex · Cursor<br/>Gemini CLI · OpenCode · ..."] -- "transcripts, hooks, plugin" --> C["capture service<br/>(runs in the background)"]
    C -- "verbatim turns,<br/>secrets masked" --> S[("your memory<br/>on this PC")]
    S --> I["local search<br/>words + meaning + time"]
    A -- "a question that needs the past" --> I
    I -- "the few turns that answer it<br/>(~3k tokens)" --> A
  • Saving costs nothing. Turns are stored as they were said. No model summarises or extracts anything at write time, so nothing is lost or invented on the way in, and no tokens are spent.
  • Search runs on your PC. Word search, a multilingual embedding model (mpnet, int8; ONNX, no GPU) and when things were said are combined; the agent gets a short packet with the source turns, not a dump of history.
  • The model you already use does the thinking. Turnbook hands it evidence; it answers. When models get better, the answers get better without changing the memory.

Does it work?

LongMemEval is the public benchmark for long-term chat memory: 500 questions over about 50 past sessions each. Every system below got the same answer model (gpt-5-mini), the same prompt and the official gpt-4o judge; only the memory differs.

accuracy model tokens spent saving memory text the answer model reads
Turnbook 88.8% (all 500) 0 3.4k tokens
agentmemory 80.4% (same 499) — ~16.5k tokens
MemPalace 3.10.0 57.5% (40 questions) 0 —
Mem0 2.2.1 (open source) 52.5% (40 questions) ~640,000 per question —

On agentmemory's 499 Turnbook scored 89.0%; on the 40, 85.0%. Retrieval alone, on agentmemory's own measure (an answer session among the first 5 retrieved): Turnbook 98.5%, agentmemory 95.2%. These runs used the embedding model of 0.9.9 and before; on a 100-question sample the current one finds the answer session as often or more (among the first 5: 99.0% against 97.9%).

Every question, answer and verdict is in research/runs/; method, failures and how to rerun it: docs/benchmarks.md.

FAQ

Will it slow my PC down? The background service uses about 2% of one CPU core when nothing new is coming in and about 650 MB of memory, most of it the search model. A memory search takes about 20 ms (41 ms at the 95th percentile on a GitHub runner); the first one after an app starts, about 1.3 s. After an update that changes the search model, it reads the memory again once, at half pace (about an hour for 11,000 pieces).

What does it cost? Nothing. No API key and no model calls of its own; your AI app reads a packet of about 3k tokens when a question needs the past.

Does anything leave my PC? No, unless you share the memory with your own other PCs or a team. No telemetry. Secrets (API keys, passwords, card numbers...) are masked before storing.

How is this different from CLAUDE.md or an app's built-in memory? Those keep notes a model wrote, one app at a time. Turnbook keeps every turn as it was said and shares it across every app and model on the PC.

Korean? Yes: Korean and English conversations, and questions in either language. A Korean question about something said only in English is found most of the time, not always.

How do I remove it? turnbook-uninstall disconnects every app and stops the service; the memory stays in ~/.graph-mind unless you add --purge.

More

MCP tools · See your memory in 3D (turnbook-view) · Changelog · Security · Development: pip install -r requirements.txt, then python -m unittest discover -s tests

Contributions are welcome. License: Apache-2.0.

Metadata

Release files for turnbook 0.9.45

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for turnbook 0.9.45
File Size Uploaded Provenance
turnbook-0.9.45.tar.gz 229.9 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for turnbook 0.9.45
File Interpreter ABI Platform
turnbook-0.9.45-py3-none-any.whl Python 3 none any Details

Total release size: 409.8 kB

Release files / turnbook-0.9.45.tar.gz

Download URL turnbook-0.9.45.tar.gz
Size 229.9 kB
Tags Source
SHA-256 checksum
How to use checksums
2aaef7f84b509247210b263f6f2a6bd5ed299c1a85c23dd7f8bc2bc120363c35
BLAKE2b-256 checksum
How to use checksums
13c97028beb99388e4e1997bcd4b94f9f9b73d2a5d7f94833989b6cde2f585a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / turnbook-0.9.45-py3-none-any.whl

Download URL turnbook-0.9.45-py3-none-any.whl
Size 179.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c78aa9b3aef63b911778141a055e89c01db2abdc5b7a01a807dff067f9d576c
BLAKE2b-256 checksum
How to use checksums
9ed8394eec1b1105f9603e69ccf6d1900f836e4000a889b83f9755a88b66f83c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Security for turnbook 0.9.45

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for turnbook-0.9.45.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page