linklore

Built for agents, not humans.Usability, not readability.

One memory, for all agents — no more per-agent memory files to keep in sync.
COMPATIBLE AGENTS
Claude CodeCursorWindsurfGemini CLICodex+ any MCP client
Open source · ELv2·GitHub·PyPI · llre·dogfooded: 26 projects · 5,699 commits · 11 months
Six things a markdown file can't do.
brief() → context restored · 0.8s ✓
brief()
Instant recall
One call restores the whole project context in a new session.
add(type='lore')
add()
Self-writing memory
Your agent records decisions and pitfalls on its own, as it works.
↔ linked lr-c9d0e1f2 · 1 dup flagged
link · dedup
Smart linking
New entries auto-link to related lore, with duplicate and contradiction checks.
⚠ drift — auth.py changed since lr-f3a4b5c6
drift
Code-linked memory
When linked code changes, memory knows.
status: open → done
status
Typed & statused
Every entry carries a type and status — a settled decision reads differently from a stale note.
push → backend-team ✓
push · pull
Team sync
Share memory across teammates and projects with push/pull.
drift
> edit(file="auth.py")

⚠ drift detected — 2 lore linked to this file
  [lr-f3a4b5c6] JWT refresh: access 15min, refresh 7d
  [lr-a9b0c1d2] CORS origin whitelist rule

  code changed since these were written. review?
Why it's different

Markdown doesn't know when it's wrong.

Lore links to the code it's about. When that code changes, the linked lore surfaces as drift — instead of quietly going stale.

Real usage, real tools

What agents actually say mid-session

Real feedback from dogfooding sessions and outside AI reviewers — no logos, just the actual words.

Tax SaaS
Lore saved us from repeating the same design debates. The rejection rationale from 3 months ago was still there.
— ongoing use
Accounting automation
One brief() call and I had the full project context. Nothing like reading 5 scattered .md files.
— ongoing use
External AI reviewer
Flat markdown would cost 300–500K tokens. Each call costs 200 to 3,000. That's 100 to 1,000x.
— token-economy review
Tax SaaS
One brief() call at session start and I never ask 'what were we doing?' again.
via brief()
Grok 4.5 high
The core delivers — brief() alone is worth it.
— first session, on Cursor
Tax SaaS
Lore saved us from repeating the same design debates. The rejection rationale from 3 months ago was still there.
— ongoing use
Accounting automation
One brief() call and I had the full project context. Nothing like reading 5 scattered .md files.
— ongoing use
External AI reviewer
Flat markdown would cost 300–500K tokens. Each call costs 200 to 3,000. That's 100 to 1,000x.
— token-economy review
Tax SaaS
One brief() call at session start and I never ask 'what were we doing?' again.
via brief()
Grok 4.5 high
The core delivers — brief() alone is worth it.
— first session, on Cursor
Academic review
Lore = history, code = current invariant. This distinction is what lets AI make real decisions.
— ongoing use
External AI reviewer
I don't have to remember to search — it just interrupts me with what's relevant.
— token-economy review
Internal dogfood
Git tells me what changed. Lore tells me why. That cross-reference has no substitute.
— self-review
Academic review
After every non-trivial decision, add() became muscle memory. Three months later, the lore pays for itself.
via add()
Academic review
Tag discovery with show(tag='?') was a game changer for onboarding.
via show()
Academic review
Lore = history, code = current invariant. This distinction is what lets AI make real decisions.
— ongoing use
External AI reviewer
I don't have to remember to search — it just interrupts me with what's relevant.
— token-economy review
Internal dogfood
Git tells me what changed. Lore tells me why. That cross-reference has no substitute.
— self-review
Academic review
After every non-trivial decision, add() became muscle memory. Three months later, the lore pays for itself.
via add()
Academic review
Tag discovery with show(tag='?') was a game changer for onboarding.
via show()

Install — three steps, then it's automatic

01 · TELL YOUR AGENT:Tell your agent — it reads install.md and sets everything up.
02Work as usual. Your agent records lore as it goes.
03
brief() → context restored
Next session, it already knows. Try each tool below.
Manual setup (no web access, or you'd rather see it first)
$ claude mcp add llre -- uvx llre
Cursor, Gemini CLI, Codex — same uvx llre command in each client's MCP config. Details: linklore.io/install.md
  • brief()
  • add()
  • show()
  • edit()
  • link()
  • status()
  • log()
  • push · pull
  • +13 others

brief()

FREE, IN THE MARKETBrowse the market →
Curated lore, free to pull — decisions and pitfalls from real projects, ready for yours.
BuildPersonalAutomation
3 MONTHS FREE
Memory you query, not maintain.

Launched July 27 — 3 months free as a launch special. Early users keep a free tier.