hologram-cognitive
Every prompt arrives with the few files that matter for what your session is doing right now.
Hologram watches what your coding agent actually reads and edits, keeps a pressure score per file, and puts the project's current working set in front of the model on every prompt — so a fresh session stops re-deriving your project from scratch and a long one stays on the right files.
This is the free, MIT-licensed routing engine. It runs locally, makes no network calls, and keeps its state in your project.
Install
Python 3.11 or newer.
pipx install hologram-cognitive
cd your-project
hologram init .
Then connect your agent:
hologram install claude-code # Claude Code: a prompt hook and an end-of-turn hook
hologram install hermes # Hermes Agent: Hologram as its memory provider
Each command prints every change before making it and asks first. hologram uninstall reverses
all of them.
What a prompt gets
[HOLOGRAM] (cap=7000B, schema=t3-ctx/v1, project=your-project)
tier_counts: hot=1 warm=0 cold=1 (working set 2: 1 by pressure, 1 by recency)
- docs/deploy.md [legacy/unknown]
preview: # Deploy tunnels and service contracts
- docs/routing.md [legacy/unknown]
preview: # Routing how pressure routing decides
bytes_used: 336/7000 | typed=0 legacy=2 mem=0
(Real output from a two-doc project; [legacy/unknown] means the file has no typed frontmatter.)
About 1 KB per file — a preview and the excerpts around what the prompt mentions — under a 7,000-byte cap.
How it chooses
- Activation. Words in the prompt activate at most 8 files. Stop-words and words found in most files are ignored, matches are whole-word, and rarer words count for more.
- Pressure. Activated files gain pressure; everything else decays. Total pressure is capped at 10 whatever the project's size, taken equally from every file, so the files that matter keep their lead and the tail drops out.
- The working set. Every prompt gets the top 6 files by pressure, the next 10 by name, and up to 3 recently modified docs when too few files hold pressure. It is never empty.
- Learning. At the end of each turn the files the session actually read or edited are reinforced, and each file's boost and decay adapt to how often it is used when it is activated.
- Fixtures and test data are indexed but demoted, unless the prompt names them.
What it touches
your-project/.hologram/— the routing state and its history. Delete it to start over.- Claude Code: the hook entries in
~/.claude/settings.json(a backup is written first). - Hermes Agent:
~/.hermes/plugins/hologram/andmemory.provider/memory.hologram.commandin Hermes's config, set throughhermes config(the provider you had is restored on uninstall).
No network calls, no telemetry.
Free and Pro
| hologram-cognitive (free, MIT) | Hologram Pro | |
|---|---|---|
| The working set on every prompt, learned from use | ✓ | ✓ |
| Claude Code hooks, Hermes Agent provider | ✓ | ✓ |
| The project's causal graph: what is current, what failed and why, delivered at session start and on every prompt | ✓ | |
| Guards: an adjudicated rule refuses an edit or command before it runs | ✓ | |
| Project memory (decisions and failed approaches, recalled with the working set) | ✓ | |
| The blackboard: sessions on one machine — any vendor — leave each other notes | ✓ | |
| A reranker over prompt-time signals | ✓ | |
| Codex, Grok and Antigravity; MCP servers for Cursor, Gemini and chat clients | ✓ |
Hologram Pro: https://hologram-pro.dev. Upgrading replaces this package (Pro includes everything here); your projects' routing state carries over.
Upgrading from 0.3
0.4 routes your project's own files rather than a .claude/ notes directory, and keeps its state in
.hologram/. Your old .claude/ directory is left exactly as it was and is no longer routed —
move any notes you want routed into the project (for example docs/). hologram init . once in
each project. 0.4 needs Python 3.11 or newer.
License
MIT — see LICENSE.
Metadata
Release files for hologram-cognitive 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| hologram_cognitive-0.4.0.tar.gz | 147.8 kB | Without provenance | Details for hologram_cognitive-0.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| hologram_cognitive-0.4.0-py3-none-any.whl | Python 3 | none | any | Details for hologram_cognitive-0.4.0-py3-none-any.whl |
Total release size: 273.0 kB
Release files / hologram_cognitive-0.4.0.tar.gz
| Download URL | hologram_cognitive-0.4.0.tar.gz |
|---|---|
| Size | 147.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d311b21639dde6272752f2a340aa4e8a5b6a71400c7555319eea03b3851dc833
|
|
BLAKE2b-256 checksum How to use checksums |
e8ade6183a50e1941cdffe19b15d85741b444c532b7abe18fee9d1bfd2ff2714
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / hologram_cognitive-0.4.0-py3-none-any.whl
| Download URL | hologram_cognitive-0.4.0-py3-none-any.whl |
|---|---|
| Size | 125.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0fcf415bf25708d56d39e596e45f8a94b8f31cd04f2d4c5c2b864417a44cfe1a
|
|
BLAKE2b-256 checksum How to use checksums |
8b09edb8d2397329e15a2e651f7971f6f7379badec46dbe6de7cb0c7ab33a68e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for hologram-cognitive 0.4.0
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.