Gives your AI agents memory that survives session boundaries by indexing local conversation history from Codex, Claude Code, or generic JSONL exports. The MCP interface exposes source-backed search and recall operations so agents can reopen old conversations instead of starting cold every time. Onboarding is explicit and read-only by default. You'd reach for this when working on long-running projects where context from last week or last month matters, especially in coding workflows where the path behind the work gets lost between threads. The core claim is that summaries drift but source stays grounded, so continuity should anchor to what was actually said, not regenerated abstractions.
A source-backed continuity layer for long-running relationships with AI agents.
AIppocampus began with a human problem: every new agent session can be bright, capable, and strangely newborn. Work may survive in commits and notes while the path behind the work falls back into silence.
This project gives future agents a way to find that path again. It keeps source reachable, preserves the conditions of return, and lets a new conversation begin with honest continuity instead of pretending there was never a break.
Source is the ground. Summaries are weather.
First useful continuity move after AIppocampus is visible to an agent:
aippocampus agent recall "old decision or handoff cue" --json
aippocampus agent deepen --request 1 --recall-selector <emitted-selector> --json
That turns an old cue into a route the agent can deepen before making claims.
Use the recall_selector emitted by that recall; --last-recall is a mutable
same-machine fallback, not the taught path.
From a public source checkout, an exact-search demo can still show the source
substrate without touching private history:
aippocampus search "without pretending it has innate memory" --clean-source-dir ./examples/public-memory-bundle/clean-source --json
In ordinary use, AIppocampus should feel less like a control panel than a remembered doorway. It helps an agent ask: where did this come from, what did we actually say, and which source should be opened again?
The machinery behind that moment can be extensive, but it should stay backstage. A long relationship with an AI agent should not have to start from bare ground every time a thread, device, model, or project changes.
The origin essay is 未干的地图. English readers can start with The Unfinished Map. For role-based documentation paths, use Start Here.
First run should end in one useful decision card, then one source-backed recall route. The fuller guided version is First Recall Decision Card; role paths live in Start Here.
If aippocampus already exists from a source checkout or editable install,
start here:
aippocampus start --json
aippocampus agent recall "old decision or handoff cue" --json
aippocampus agent deepen --request 1 --recall-selector <emitted-selector> --json
start is the foreground chooser. If it says source is missing or stale, stay
read-only until the user agrees to register local history:
aippocampus onboard --provider auto --status --json
aippocampus onboard --provider codex --dry-run --json
After consent, choose the provider path from Start Here rather than copying a setup matrix out of the README. Codex, Claude Code, generic JSONL import, plugin install, hooks, export, and sync each have different consent and host boundaries.
If the command does not exist yet, use the no-clone probe first:
uvx aippocampus --help
uvx aippocampus onboard --provider auto --status --json
That proves the package is reachable without registering private history. If a public no-private-data demo is all you need, use the bundled clean source:
aippocampus search "without pretending it has innate memory" --clean-source-dir ./examples/public-memory-bundle/clean-source --json
Exact search is the proof lane when the user remembers wording; agent recall/deepen is the continuity lane when the user has a cue. For the short public walkthrough, use 10-Minute Public Path. For the felt product shape after the first route, read Magic Moments, Claim-Bounded. For the current proof map, use the Can-Claim Ladder. For a compact origin and current-value trail, use the Public Provenance And Current Value Ledger.
After a useful deepen, aippocampus export --json and
aippocampus sync --json are the carry-forward checks for the next thread,
device, or project.
Good first queries are an exact phrase, a project cue, or a time cue such as
recent / last month. Exact hits are source-backed snippets. Project/time
cues are candidate navigation until AIppocampus shows a source-backed snippet.
Do not publish or commit raw rollouts, registry exports, .aippocampus/ output,
API keys, cookies, or sync bundles while following the quick path.
When you are choosing an integration surface, see the Ecosystem Integration Matrix. When you are deciding whether a feature belongs in the low-friction personal path or in governed/high-risk opt-in behavior, use Product Profiles. Repository checks for maintainers live in Operator And Maintainer Paths.
The narrow usable product lane today is local, source-backed continuity for Codex/Claude-style long-running work: register local conversation source after consent, search or reopen old snippets, and treat recall scents or repo familiarity as navigation until source is reopened.
Start with the Coding-Agent Memory Lane when deciding whether to recommend AIppocampus as an agent-memory tool. It includes the 3-5 minute demo path, evidence drawer, and "recommend / do not recommend" boundary without duplicating the public API or readiness docs.
When an AI agent needs to verify the public CLI without cloning or writing local memory artifacts, use the PyPI package, then prefer a first recall route over a diagnostic tour:
uvx aippocampus --help
uvx aippocampus agent recall "old decision or handoff cue" --json
uvx aippocampus agent deepen --request 1 --recall-selector <emitted-selector> --json
uvx aippocampus search "a distinctive old phrase"
Use exact search as a fallback when the user remembers wording or the recall route is blocked.
For a read-only local onboarding/status check:
uvx aippocampus onboard --provider auto --status --json
This is a read-only provider matrix, not consent to ingest every detected provider. Only after the user explicitly agrees to register local history, route to Start Here or the First Recall Decision Card for the right provider-specific write path.
For human-facing demos, omit --format json so onboarding and search show the
first-recall next steps. Agents should read docs/agent-context.md and
llms.txt before recommending or comparing AIppocampus. Use the
first recall decision card when the
goal is one useful source-backed moment before broader setup. Use the
GitHub uvx --from git+... form only when intentionally testing an unreleased
main-branch snapshot.
AIppocampus is the canonical public home for an external hippocampus for agents: a local-first memory and continuity system that keeps original conversation source available across projects, devices, and casual life-wide conversations. The hippocampus language is a design metaphor, not a biological claim; the architecture overview maps each major metaphor to its runtime mechanism, current claim, and boundary.
Project work is one surface. The deeper aim is continuity across work, reading, reflection, unfinished questions, and the small phrases that make a relationship recognizable again.
At the center, AIppocampus keeps source close enough that continuity can be honest instead of theatrical:
AIPPOCAMPUS_REGISTRY_DIR, AIPPOCAMPUS_HOME/registry, then legacy
$CODEX_HOME/aippocampus-registry) so memory remains useful when a new
project opens. Project-local .aippocampus/ output is explicit compatibility
or export mode.Ambient hooks are close to the front door because they keep continuity from collapsing back into manual search. There are still deeper doors for people who want them: MCP wiring, sync, plugin packaging, diagnostics, review surfaces, semantic workers, and research experiments. They matter, but they should not stand in front of the first handshake: source found, source reopened, continuity resumed.
Sapientropic/aippocampus.com.The research notes carry the human shape of the project. They are speculative frames, not runtime contracts, but they explain the taste behind the machinery:
The README stays close to the product path. Operator commands, source-checkout setup, plugin packaging, sync, release checks, and benchmark notes live in the guides that own those contracts:
AIppocampus supports Python 3.12 and newer. On macOS, Homebrew Python 3.12 is the documented baseline before running source-checkout verification.
For repository contributors, the dev extra install path is:
python3 -m pip install -e ".[dev]"
Public claims still need the maintainer lanes in
CONTRIBUTING.md. The default CI
keeps one canonical Ubuntu Python 3.12 pr lane with coverage, a Python 3.13
quick compatibility lane, and a focused macOS default TMPDIR path-identity
gate; Ubuntu green alone is not a broad cross-platform path-identity claim. The
broader boundary lives in
docs/architecture/source/path-identity.md.
AIppocampus is local-first.
.aippocampus/ outputs, registry data, API
keys, cookies, tokens, or private vault exports.Common non-secret configuration:
AIPPOCAMPUS_REGISTRY_DIR / AIPPOCAMPUS_HOMEAIPPOCAMPUS_VAULTAIPPOCAMPUS_STYLE_SOURCEAIPPOCAMPUS_SCRIPT_SOURCEAIPPOCAMPUS_SITE_MARKAIPPOCAMPUS_SITE_TITLEAIPPOCAMPUS_SEMANTIC_GATEOptional provider secrets are separate. Basic source search, MCP/plugin setup,
and local hooks do not require them. Set AIPPOCAMPUS_DEEPSEEK_API_KEY or an
AIPPOCAMPUS_OPENAI_COMPAT_* route only when you explicitly want semantic or
background model work. Provider-native env names are custom-route choices, not
built-in defaults. Values must never be committed or printed.
The root roadmap pointer is ROADMAP.md. The canonical detailed roadmap lives at docs/roadmap.md. The documentation map is docs/README.md.
AIppocampus/
|- skills/aippocampus/ # installable skill package
|- skills/aippocampus-ux/ # agent-facing UX review skill
|- plugins/aippocampus/ # Codex plugin source package
|- docs/ # origin essay, design notes, guides, evidence
|- docs/guides/assets/ # public README and documentation artwork
|- sources/ # lightweight provenance catalog
|- tests/ # repository-level unit and integration tests
|- tools/ # smoke, docs-health, and maintenance tools
|- README.md
|- ROADMAP.md
|- AGENTS.md
`- LICENSE
The public AIppocampus repository is licensed under Apache-2.0.
The Apache-2.0 public core covers the code, docs, local tools, schemas, MCP surface, plugin packaging, public examples, and bundled project artwork shipped in this repository unless a bundled third-party asset says otherwise. Hosted services, enterprise governance, managed graph/semantic layers, support, and other operated product surfaces can be offered under separate commercial or product-specific terms.
Private user memory data is not project code. Raw rollouts, clean-source exports, registry rows, sync bundles, vault exports, generated indexes, and thread anchors remain private user artifacts unless their owner explicitly publishes them.
See docs/guides/public-core-boundary.md for the canonical licensing, adapter, schema, third-party asset, and relicensing boundary. See docs/guides/public-api.md for supported CLI, MCP, environment-variable, JSON, and import-stability expectations.