Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Project Memory

Project Memory keeps a project's decisions, evidence, outcomes and reviewed lessons in a local SQLite database. An AI assistant retrieves the relevant records through three MCP tools; people inspect the same history in a self-contained HTML viewer.

Use it when a project repeatedly revisits research, loses the reasons behind decisions, or carries outdated requirements into new work. It preserves the original evidence and the conditions under which a decision or lesson applies.

Public beta. The runtime uses Python 3.11+ and its standard library. There is no model service, vector database, telemetry or background maintenance process. The assistant still interprets evidence and needs explicit agreement before accepting a lesson or changing project requirements. Evidence and limits describe what has actually been measured.

Install and connect

Install uv, then run this inside the project you want to remember:

uvx project-memory-mcp@0.5.0b2 setup --client codex --trust

This creates .memory/project.sqlite, adds a project-local MCP connection and nine command hooks, and asks the installed Codex host for the exact hook hashes to enable. Existing settings and records are preserved. Open a new Codex task afterwards. --trust explicitly enables these project hooks; omit it to review and enable them in Codex yourself.

For Claude Code, run the same command with --client claude:

uvx project-memory-mcp@0.5.0b2 setup --client claude --trust

This adds the project_memory server to the project's .mcp.json and the lifecycle hooks to .claude/settings.local.json, which Claude Code keeps out of version control. --trust pre-approves the project MCP server in that local settings file; omit it to approve the server when Claude Code asks. Start a new Claude Code session in the project afterwards. Claude Code has no interrupt hook, so eight of the nine lifecycle events are captured there; an interrupted tool call remains visible as an unconfirmed receipt. Claude Code's tool failure event closes the same receipt as a completed call, with the failure retained. After automatic compaction, the session start hook restores the memory session, the active decision and the reconciliation count.

For a permanent CLI installation:

uv tool install project-memory-mcp==0.5.0b2
project-memory doctor
project-memory view

For another local MCP client, run project-memory setup --client mcp, then configure the client to run project-memory serve --project /absolute/path/to/project. Generic MCP supports explicit records and retrieval; automatic receipts exist for Codex and Claude Code. The Codex integration has been verified in a live host; the Claude Code integration is verified with real hook processes and simulated host payloads, not yet in a live session. Setup and lifecycle includes imports, upgrades, backup, uninstall and client configuration.

Claude Code can also install the plugin, which provides the three tools, the lifecycle hooks and a workflow skill in every project that has run project-memory setup --client mcp:

claude plugin marketplace add Dankaro-projects/project-memory
claude plugin install project-memory@dankaro

Do not combine the plugin with a --client claude project setup in the same project, or both capture the same work.

The same versioned wheel is available from GitHub Releases. The MCPB asset supports directory selection in compatible desktop clients.

Published on PyPI, the official MCP Registry, and Smithery. The Glama listing is also claimed and has a tested beta container release. See distribution and compatibility for verified launch paths and remaining limits.

The HTML viewer shows synthetic decisions, evidence, corrections and review status.

Use it in ordinary work

Ask your assistant:

Capture VISION.md and our decision log. Show which statements are evidence, proposals and agreed requirements. Preserve the originals. Before choosing an approach, retrieve relevant decisions and check whether their evidence is still current.

Then work normally. The assistant supplies record IDs and versions. You review the meaning, rather than maintain a second set of forms.

  • A decision records its evidence, initial choice, alternatives, uncertainty, expected consequences and conditions for reconsideration.
  • Actions and actual outcomes attach to that decision. Revisions retain the earlier choice and its result.
  • Successful practices, anti-patterns and recoveries can become proposed lessons. A separate review accepts, rejects or retires them, with their scope and exceptions intact.
  • Code reviews, writing corrections and research remain separate subjects. A dependency across subjects must name the evidence and explain why it matters.
  • Selected Markdown files are captured verbatim. Changed, missing and superseded evidence is flagged. Importing a vision does not approve its proposals.
  • Approved project requirements can evolve through append-only revisions. Earlier decisions retain the version they used and become reviewable when the agreed basis changes.

Run project-memory view for decisions, documents, corrections, patterns, drift, captures and unresolved work. It creates a fresh, offline HTML snapshot with evidence navigation. Source bodies are excluded unless you add --include-bodies.

What is automatic

Codex and Claude Code hooks mechanically record session and tool events, sizes, hashes and available execution metadata. They do not turn a failed command into a lesson or assume that an interrupted command rolled back. The assistant records interpretation separately and checks side effects before retrying uncertain work.

Retrieval returns bounded, complete records and preserves exceptions. Search indexes and explicit source slices support expansion when needed. The default MCP reply limit is 6,000 characters, with an explicit maximum of 20,000; these are characters in the tool result, not complete model-input tokens. Keeping every model input below 10K tokens remains a target, subordinate to quality and feature preservation.

Develop and verify

python -m unittest discover -s tests -q
python -m examples.document_case --output results/documents
python -m examples.host_example --output results/host-example
node tests/viewer_logic.cjs
uv build
python scripts/check_artifacts.py dist
python scripts/installed_smoke.py dist

The public artifacts contain code, documentation and synthetic examples. They exclude project databases, host transcripts, private evaluation archives and local configuration. Contributing, security, record fields, release process.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

project_memory_mcp-0.5.0b2.tar.gz (221.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

project_memory_mcp-0.5.0b2-py3-none-any.whl (61.0 kB view details)

Uploaded Python 3

File details

Details for the file project_memory_mcp-0.5.0b2.tar.gz.

File metadata

  • Download URL: project_memory_mcp-0.5.0b2.tar.gz
  • Upload date:
  • Size: 221.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for project_memory_mcp-0.5.0b2.tar.gz
Algorithm Hash digest
SHA256 ac7c5999f16c5689e9e72c1306cd835a166bb4e329c4099291d42bcc842ab14d
MD5 78f5dfe91541178434f30856926685fd
BLAKE2b-256 bffcea981b07fd5c2069a921115885d29602d49a0348473dbf3877a5abf72861

See more details on using hashes here.

Provenance

The following attestation bundles were made for project_memory_mcp-0.5.0b2.tar.gz:

Publisher: release.yml on Dankaro-projects/project-memory

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file project_memory_mcp-0.5.0b2-py3-none-any.whl.

File metadata

File hashes

Hashes for project_memory_mcp-0.5.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 d3aeb89f8d4d03fa3ef77533211b0a29145c19e51a9d530b1ece31030cbde7ad
MD5 c938502c3194defb2b349e92cd78ce60
BLAKE2b-256 7c5b61af4ad077046145b1bbddc5038571d6693fa90d8b484610dc6f6dba2dab

See more details on using hashes here.

Provenance

The following attestation bundles were made for project_memory_mcp-0.5.0b2-py3-none-any.whl:

Publisher: release.yml on Dankaro-projects/project-memory

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.5.0b2 This release

2 files

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