Hicortex - AI Fleet Memory
Official# Hicortex — AI Fleet Memory
[](https://glama.ai/mcp/servers/gamaze-labs/hicortex)
<img src="docs/dashboard-composition.png" alt="Hicortex dashboard — live memory analytics" width="800">
[](https://www.npmjs.com/package/@gamaze/hicortex)
[](https://www.npmjs.com/package/@gamaze/hicortex)
[](LICENSE)
[](https://nodejs.org)
**Shared memory for AI agents — it corrects itself overnight, and what one agent learns, the whole fleet knows.** One memory across every agent, every project, every machine — they stop assuming and start knowing.
- **One brain, every harness** — Claude Code, Hermes, OpenClaw, Pi, OpenCode, and any MCP-compatible agent share the same memory.
- **Pushed, not pulled** — in every supported coding agent, a compact recall index is injected on *every prompt*, so the decisions, corrections, and context an agent needs are already in front of it. No re-explaining, no copy-paste, nothing to maintain. **Zero LLM calls per turn** — no API cost or rate-limit hit from recall.
- **Consolidates overnight** — each night it reads the day's sessions, distills what matters, and turns it into Learnings, links, and a knowledge graph.
- **Local-first** — raw sessions never leave the machine; only distilled memory is stored.
## Install
```bash
npx @gamaze/hicortex init
Claude Desktop: one "yes" during init.
```
Auto-detects your environment, configures one LLM (Ollama, the Claude CLI, or an API key), installs a local daemon (launchd on macOS, systemd on Linux), and registers MCP tools with Claude Code.
For multi-machine setups, point thin clients at a shared server — no local DB or LLM on the clients:
```bash
npx @gamaze/hicortex init --server https://your-server.example.com
```
`init` auto-detects the other harnesses and installs their clients: a Pi extension (`~/.pi/agent/extensions/hicortex.ts` — pushed recall, identity + lessons, the ten tools; or copy `pi-extension/hicortex/index.ts` there manually), an OpenCode plugin (`~/.config/opencode/plugins/hicortex.ts` — the same trio; or copy `opencode-plugin/hicortex/index.ts` there manually), the Hermes plugin, and the OpenClaw plugin. [pi-mcp-adapter](https://github.com/nicobailon/pi-mcp-adapter) remains a generic MCP escape hatch for any harness (verified against the SSE endpoint) — Pi no longer needs it. See the [install docs](https://hicortex.gamaze.com/docs/installation).
## How it works
```
CAPTURE (nightly) CONSOLIDATE (nightly) RECALL (every prompt)
sessions → denoise score · reflect · link a compact index of
→ POST /distill decay · dedup · supersede relevant memories is
(one model, all phases) pushed into the prompt
→ full text lazy-loaded
```
Memories strengthen when agents use them, fade when they don't, and link to related ones automatically. Retrieval is hybrid BM25 + vector search — zero-LLM at query time.
The first nightly run captures the last 7 days of sessions by default (not your entire history) — run `hicortex nightly --recapture-window <days>` once to import more.
## Features
- **Per-prompt recall push** — relevant memory lands in context every turn; the agent fetches full content with `hicortex_get` only when it needs it.
- **Memory analytics** at `/dashboard` — growth, recall adoption, and a nightly digest of what was learned.
- **Knowledge graph** at `/viz` — memories clustered by domain, connected by relationship edges.
- **Domains & tags** — multi-tag classification with a configurable vocabulary; your categories drift with your data.
- **Learnings from reflection** — nightly reflection extracts general, reusable Learnings, not just Experience logs.
- **Self-correcting store** — every night, stale facts are rewritten in place with dated provenance; near-duplicates resolve into one (verbatim copies kept free, merges recoverable); superseded decisions are demoted, never re-surfaced. No zombie memory.
- **Unprompted by design** — coding agents get recall injected via hooks; instruction-capable clients (Claude Desktop, Cursor-class) get standing instructions, so memory is used without being asked. Plain MCP clients keep full search.
- **Self-calibrating** — recall, decay and merge boundaries report their own statistics; tuning is measured, never guessed.
- **Standing context layer** — hand-edited "who you are / how to work" Markdown, injected every session, never decayed.
## MCP
Nine MCP tools — `hicortex_search`, `hicortex_get`, `hicortex_recent`, `hicortex_ingest`, `hicortex_lessons`, `hicortex_index`, `hicortex_graph`, `hicortex_update`, `hicortex_delete` — plus a `/learn` skill to save explicit learnings. [Full reference →](https://hicortex.gamaze.com/docs/)
## Stack
TypeScript · Node.js 20+ · SQLite + sqlite-vec + FTS5 (semantic + full-text in one DB) · ONNX embeddings (bge-small-en, CPU) · MCP over HTTP/SSE · one configurable LLM (Ollama, Claude CLI, or any OpenAI-compatible endpoint).
## Development
```bash
git clone https://github.com/gamaze-labs/hicortex.git
cd hicortex
```
[AGENTS.md](AGENTS.md) at the repository root defines the machine-checkable verification contract. "Done" means the full command chain exits with code 0. The contract mirrors what CI runs. Contributors — human or agent — run it before claiming work complete.
Contributions welcome — see [CONTRIBUTING.md](CONTRIBUTING.md).
## Links
- **Website:** [hicortex.gamaze.com](https://hicortex.gamaze.com)
- **Docs:** [hicortex.gamaze.com/docs](https://hicortex.gamaze.com/docs/)
- **Changelog:** [CHANGELOG.md](CHANGELOG.md)
- **npm:** [@gamaze/hicortex](https://www.npmjs.com/package/@gamaze/hicortex)
- **Issues:** [gamaze-labs/hicortex/issues](https://github.com/gamaze-labs/hicortex/issues)
- **Security:** [SECURITY.md](SECURITY.md)
## License
Personal and noncommercial use is free under the [PolyForm Noncommercial License 1.0.0](LICENSE). Commercial use requires a per-seat license — see [hicortex.gamaze.com](https://hicortex.gamaze.com).
TDQS
Scored across 11 tools
While most tools have distinct purposes (get vs search vs delete), hicortex_learnings and hicortex_lessons are exact duplicates — clear ambiguity. Also, hicortex_update and hicortex_delete could overlap if incorrect content might be better corrected than removed, though descriptions mitigate this. hicortex_graph and hicortex_index are distinct but could be confused for related discovery tasks.
All tool names start with 'hicortex_' followed by a single verb or noun (get, delete, search, recent, ingest, update, learnings, lessons, index, identity, graph). Pattern is mostly consistent, but 'learnings' vs 'lessons' are synonyms for the same action, creating redundancy rather than following the verb_noun pattern seen elsewhere (e.g., search is verb, index is noun). Minor inconsistency: verbs for actions, nouns for queries.
With 11 tools, the count is within the ideal range for a memory management system. The tool count feels reasonable for the scope: CRUD operations, search, recent memories, learnings, indexing, identity, and graph exploration. Only redundancy of learnings/lessons slightly inflates the count, but overall it's well-scoped.
The server appears to cover the core lifecycle of memories: create (ingest), read (get, search, recent, index, identity), update, delete. It also includes advanced features like learnings and graph exploration. The only gap is a lack of bulk operations (e.g., delete by filter, list all memories) or a way to export/import, but those are minor and not essential for the stated purpose.