Skip to main content

Ankora

Tiny persistent memory for coding agents. Save atomic notes as plain markdown; recall the relevant ones when you start a new session — so the agent continues instead of forgetting what you already worked out.

The problem

Everyone's fix for "Claude forgets" is a bigger CLAUDE.md. But bigger context makes it worse, not better — long files get diluted and the model loses the middle. Splitting into tree.md / context.md / structure.md only helps if you stop loading them all every session; four growing files that always load are the same wall in four pieces.

Ankora is the small version of the fix: one atomic note per fact/decision, a tiny always-loaded index, pull in only the note the task needs.

Install

Needs Python 3.8+ and nothing else — no dependencies to pull in, nothing to build.

pip install ankora-memory
ankora --help

The PyPI name is ankora-memory because plain ankora was already taken by an unrelated project; the command you actually type is still ankora.

Or skip the install entirely — it's one file, so you can just run it:

git clone https://github.com/JavaB1/ankora
cd ankora
python ankora.py --help

Use

# save a decision
ankora save "Use UUID v7 for ids" -t decision -g db,ids -m "time-ordered, index-friendly, avoids v4 fragmentation"

# recall what's relevant to the task at hand
ankora recall "uuid ids"

# rebuild the index (one line per anchor)
ankora index

(Running from a clone instead of an install? Use python ankora.py ... — same commands.)

Anchors live in ./.ankora/anchors/*.md — plain markdown with a small frontmatter block, so they diff cleanly in git and you can read/edit them by hand. ./.ankora/INDEX.md is the short always-on list.

Set ANKORA_DIR to point it somewhere else (e.g. a shared notes repo).

Writes are atomic and guarded by a lock, so a crash mid-save or two concurrent saves never silently lose an anchor.

With Claude Code

Drop SKILL.md into your project (or .claude/skills/). It tells the agent to run recall at the start of a session and save when a real decision is made. See SKILL.md.

What it does NOT do (on purpose)

This is deliberately small. It does not do embeddings/semantic search, a graph, auto-consolidation, conflict detection, or ranking beyond weighted whole-word keyword matching. If two notes disagree, both stay — you resolve it. If you outgrow keyword recall, that's when a full memory framework is worth the extra setup. Ankora is the small version that covers most of the value first, with nothing to install.

License

MIT. Use it, fork it, ship it.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ankora_memory-0.2.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ankora_memory-0.2.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file ankora_memory-0.2.0.tar.gz.

File metadata

  • Download URL: ankora_memory-0.2.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.0

File hashes

Hashes for ankora_memory-0.2.0.tar.gz
Algorithm Hash digest
SHA256 dfdb98c12d9b7fa356267498938f8bb95e56dd6bcc2145d1590d8eb20fb202ad
MD5 a5c5ab86024058ec2abb7304bfcc69cf
BLAKE2b-256 7ace10c9f7905f604899b25191bf76d80e669dd058ad7167b706e9d7dacc13b5

See more details on using hashes here.

File details

Details for the file ankora_memory-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ankora_memory-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.0

File hashes

Hashes for ankora_memory-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3aa0b0761434296465909ee811e3657f357ef74ce58e357f2329e738c7953d4c
MD5 f3aa64b7bd614c1e248e1fb2a4514dbe
BLAKE2b-256 49fe5727310e1c7c98d30a4ac3529a276dafb4306dd2b6ff2b4d97c3b9fb7469

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page