Skip to main content

CP Memory logo

CP Memory

Local-first, governable memory for AI coding agents.
Remember project rules across sessions, recall only what matters, and correct bad memory without hiding history.

简体中文 | English

License: MIT Local first MCP server Cross-platform CI


Why CP Memory

For reproducible package, protocol and recall checks, see verification evidence and limits.

  • Local first: memory stays in ~/.cp-memory/memory.db by default.
  • Governable: inspect, review, correct, scope, or retire memory instead of silently overwriting it.
  • MCP-ready, Codex-enhanced: the stdio MCP server is the portable baseline; the Codex plugin adds Skills and lifecycle Hooks.

CP Memory 30-second demo

Quick Start — Portable MCP

With Python 3.10+ and uv installed, any stdio MCP client can start CP Memory with:

uvx cp-memory-mcp

The public package passed a clean-cache MCP handshake with all 40 tools and a write/search/correct flow. See MCP client setup for Codex, Claude Code, Cursor, VS Code, and Gemini CLI examples.

For the enhanced Codex integration with lifecycle Hooks and Skills, install the plugin:

codex plugin marketplace add CJhuochai/cp-memory
codex plugin add cp-memory@cp-memory

Restart Codex after installation and approve the lifecycle Hooks if prompted.

See The Result In 30 Seconds

  1. Tell Codex a project rule, such as: “Releases must start on a branch, run tests, and merge through a PR.”
  2. In a later session, CP Memory restores the relevant rule from the local primary store so Codex can continue following it.
  3. If the rule is wrong, preserve correction history and mark the old record wrong, stale, or scoped instead of silently overwriting it.

CP Memory is a local-first memory plugin for Codex. It stores facts, preferences, ongoing work, episodes, decisions, and conversation checkpoints in a local SQLite database, then restores relevant context through MCP tools and lifecycle hooks.

The goal is not to remember as much as possible. The goal is memory that remains trustworthy after long-term use: explainable, reviewable, correctable, and governable.

CP Memory architecture

CP Memory recall demo

Current Capabilities

  • Context restore: restores relevant local-primary memory on startup and eligible prompts.
  • Automatic extraction: conservatively creates long-term personal memory candidates from explicit statements.
  • Project scope: prioritizes current-project memories with repo:, project:, and workspace: scopes.
  • Reviewable governance: supports review inbox, review digests, conflict suggestions, correction states, and startup reminders.
  • Safe maintenance: weekly maintenance runs health checks, governance preflight, and low-risk expiry cleanup only.

CP Memory governance loop

30-Second Example

You tell Codex:

Remember this: releases for this project must start on a branch, run tests, and merge through a PR.

In a later session, you ask:

What are the release rules for this plugin?

CP Memory restores the relevant memory from the local primary store first, and Codex follows that rule. If the memory is wrong, you can mark it wrong, mark it stale, or write a corrected version.

See more anonymized examples in docs/examples.md.

For a GIF, short video, or launch post, use the sanitized 30-second demo script.

Install

For any stdio MCP client, use the verified public package:

uvx cp-memory-mcp

Client-specific commands and JSON files are in docs/mcp-clients.md.

For Windows, the recommended path is GitHub Marketplace installation:

codex plugin marketplace add CJhuochai/cp-memory
codex plugin add cp-memory@cp-memory

Restart Codex after installation. If Codex asks you to trust hooks, approve the CP Memory lifecycle hooks in the hooks view.

For macOS/Linux, use the source installer. It creates a private Python runtime for the plugin and installs the MCP dependency:

git clone https://github.com/CJhuochai/cp-memory.git
cd cp-memory
sh ./install.sh

Restart Codex when it finishes. Do not treat GitHub Marketplace installation on macOS/Linux as an equivalently verified path: Marketplace does not run install.sh, so it does not create that private runtime.

Platform Support

Platform Recommended installation Verified coverage
Windows GitHub Marketplace; install.ps1 for local development Unit tests, isolated installation validation, and GitHub Actions CI passed
macOS Source installer: sh ./install.sh GitHub Actions macOS CI passed unit tests and isolated install/MCP startup validation
Linux Source installer: sh ./install.sh GitHub Actions Ubuntu CI passed unit tests and isolated install/MCP startup validation

Manual smoke testing of real Codex desktop Hook injection on macOS/Linux is still pending access to physical devices. This release is accepted through three-platform CI; the boundary does not affect the installer and MCP-startup checks already covered, but it is not a substitute for full desktop manual acceptance.

Safety

  • Do not commit your real memory.db, logs, private summaries, or environment files.
  • Automatic extraction is intentionally conservative. Generated memories can be reviewed, corrected, marked stale, or marked wrong.
  • When memories need review, the current version injects a reminder into assistant context. It is not a user-facing popup or visible review panel, and it does not auto-delete memory or auto-resolve conflicts.
  • Weekly maintenance runs health checks, governance preflight, and low-risk expiry cleanup only; long-term personal memories, tasks, and decisions are protected by default.
  • Examples and screenshots use sanitized content, so you do not need to expose your real memory database.

Comparison

If you have seen other memory projects, start with docs/comparison.md. CP Memory's main difference is Codex lifecycle integration plus memory governance, not just storage and search.

Roadmap

See docs/roadmap.md for future directions. The roadmap prioritizes local-first behavior, explainability, correctability, and privacy safety.

See CHANGELOG.md for version history.

Local Development

Windows users normally do not need to run install.ps1. It is mainly for local development, refreshing the personal marketplace cache, and migrating old global hook wiring from earlier versions.

For local macOS/Linux development, run:

sh ./install.sh
sh ./scripts/test-install.sh

Python 3 with python3 on PATH is required. The installer creates a private virtual environment in the plugin directory and installs runtime dependencies; this is the currently verified installation path for macOS/Linux.

Run the test suite:

python -m unittest discover -s tests -p test_cp_memory.py

Validate the installer in an isolated temporary profile without touching your real Codex configuration:

powershell -ExecutionPolicy Bypass -File .\scripts\test-install.ps1

License

MIT

Metadata

Release files for cp-memory-mcp 1.9.1

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

Source distribution (sdist)

Source distribution for cp-memory-mcp 1.9.1
File Size Uploaded
cp_memory_mcp-1.9.1.tar.gz 56.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cp-memory-mcp 1.9.1
File Interpreter ABI Platform
cp_memory_mcp-1.9.1-py3-none-any.whl Python 3 none any Details

Total release size: 99.2 kB

Release files / cp_memory_mcp-1.9.1.tar.gz

Download URL cp_memory_mcp-1.9.1.tar.gz
Size 56.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e2225394c957645c0d97e20c04afa26e5fbe932e3c635a1c9128125da24adb75
BLAKE2b-256 checksum
How to use checksums
8d4d194f9893e8e5caadab7690ff93df65a11a48a69dbf6d5e350fb58217283c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 8, 2026.

Transparency log

Release files / cp_memory_mcp-1.9.1-py3-none-any.whl

Download URL cp_memory_mcp-1.9.1-py3-none-any.whl
Size 42.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e601322ce71f76adf4c8c5f8bef281ba4f49a05d500febb7b4083af29724bd5a
BLAKE2b-256 checksum
How to use checksums
ef46cf83886c83e79c515d54a4d93b4e3dd7350ec5db9bad11f5f2c52e161662
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.9.1 This release

2 release files

1.9.0

2 release files

1.8.1

2 release files

1.8.0

2 release 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