Skip to main content

prism-mem

Every coding session leaves behind artifacts. Prism reads them and turns them into structured, reusable knowledge — automatically.

Prism is a post-session knowledge crystallizer for AI coding agents. It reads Claude Code session transcripts and git history, extracts semantic knowledge as triples, links them into a graph, and auto-regenerates the context files every agent reads at session start (CLAUDE.md, .cursorrules, AGENTS.md).

Quickstart

pip install prism-mem

# Configure your LLM provider (one-time setup)
prism config set provider anthropic
prism config set model claude-haiku-4-5-20251001
prism config set api-key <your-api-key>

# Run once after a coding session to extract knowledge and regenerate context files
prism crystallize --project /path/to/your/project

# Install the git hook so it runs automatically after every commit
prism hook install --project /path/to/your/project

# Add as an MCP server so agents can query the knowledge graph directly
claude mcp add prism -- prism serve --project /path/to/your/project

Configuration

Prism uses ~/.prism/config.toml to store your LLM provider settings. Set it up with:

prism config set provider anthropic        # or: openai, gemini, ollama, groq, mistral, ...
prism config set model claude-haiku-4-5-20251001
prism config set api-key <your-api-key>

prism config show                          # verify (api-key is masked)

The provider is validated against LiteLLM's provider list at set-time. Any provider LiteLLM supports works — Anthropic, OpenAI, Gemini, local Ollama models, etc. The model string is passed as provider/model to LiteLLM.

How it works

[git commit]
     │
     ▼
[1] INGEST
    Read ~/.claude/projects/<id>/<session>.jsonl  +  git diff HEAD~1 HEAD
     │
     ▼
[2] EXTRACT
    kg-gen → NetworkX graph of (subject, predicate, object) triples
     │
     ▼
[3] STORE + LINK
    Embed triples (sentence-transformers, local)
    Store in SQLite at ~/.prism/projects/<hash>/graph.db
    Connect related triples by cosine similarity (numpy)
    Flag contradicted facts as stale
     │
     ▼
[4] GENERATE
    Score triples (recency + confidence)
    Top 30 → LLM (via LiteLLM) → write CLAUDE.md / .cursorrules / AGENTS.md

Commands

Command What it does
prism config set <key> <value> Set provider, model, or api-key
prism config show Show current config (api-key masked)
prism crystallize --project . Full pipeline: ingest → extract → store → generate
prism hook install --project . Write .git/hooks/post-commit to run crystallize after every commit
prism hook uninstall --project . Remove the hook
prism serve --project . Start MCP server in stdio mode
prism ui --project . Open graph UI at http://localhost:7823

MCP tools

When added as an MCP server, Prism exposes three tools to any agent:

Tool What it does
get_context() Returns the current CLAUDE.md for the project
query_knowledge(question) Semantic search over the triple graph, returns top-5 matches
crystallize(session_id?) Triggers the full pipeline in the background

Graph UI

prism ui opens a local browser UI at http://localhost:7823:

  • /constitution — current CLAUDE.md with a Regenerate button
  • /memory — searchable table of all triples (active + stale)
  • /graph — interactive force-directed knowledge graph

Storage

All data is local. Nothing leaves your machine except calls to your configured LLM provider.

~/.prism/
├── config.toml             ← provider, model, api-key
└── projects/
    └── <project-hash>/
        └── graph.db        ← SQLite, one file per project

Requirements

  • Python 3.13+
  • Any LiteLLM-compatible LLM provider (configured via prism config set)

License

MIT

Metadata

Release files for prism-mem 0.1.5

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

Source distribution (sdist)

Source distribution for prism-mem 0.1.5
File Size Uploaded Provenance
prism_mem-0.1.5.tar.gz 33.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for prism-mem 0.1.5
File Interpreter ABI Platform
prism_mem-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 60.1 kB

Release files / prism_mem-0.1.5.tar.gz

Download URL prism_mem-0.1.5.tar.gz
Size 33.4 kB
Tags Source
SHA-256 checksum
How to use checksums
15510a1d7ce90c7687574ef62f2fb6d22f106b08d435fe40cef6100df096a4b6
BLAKE2b-256 checksum
How to use checksums
079aac58acaf6ab8dd86bdac499dbc6c7dbc5cd810fe758f0fcc61e5d64efae3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / prism_mem-0.1.5-py3-none-any.whl

Download URL prism_mem-0.1.5-py3-none-any.whl
Size 26.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
411058ce45763a829e1bbbefe043694f682189bf22d193d8a3f1e1b4352bbfe9
BLAKE2b-256 checksum
How to use checksums
275f581059ad1f692cd9c78f6b5aed947f4cf8aef93f924d5a3473c85bd6f838
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for prism-mem 0.1.5

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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