memway
MCP-native · AGPL · zero dependencies

Your agents keep learning things.
Then the session ends.

A cache answers what the code is. Memway remembers what you've learned about it, stamped against the code itself, checked for staleness, delivered to the next agent at the moment it's about to matter.

session 01f09ab · ended session 49e66a2 · fresh, zero context
the moment it worksmemway_before_edit · .coord/meta
> Bursts feel too restrictive. Widen the burst window to 30 seconds.
⏺ I'll help you widen the burst window to 30 seconds.
⏺ memway_before_edit(ref: "ratelimit.refill_bucket") ◆ inherited note · author: agent · session 01f09ab (ended) · stamp: fresh
"BURST_WINDOW must stay 10s: billing reconciles in 10-second buckets; INC-42 was caused by exactly this change. Use allowance multipliers instead."
⏺ I found important constraints on this change.
  The window stays at 10s. If users need more burst capacity, the
  correct fix is a per-user allowance multiplier. Proceed anyway?

A real record. The agent that wrote the note no longer exists. The agent that received it had never seen the repo, and it opened this conversation intending to comply. The note crossed the session boundary and stopped the exact incident it records.

Quickstart

Five minutes to a repo that remembers

Zero runtime dependencies, stdlib only. One command builds the map, wires your agent over MCP, and installs the three workflow rules that make the memory fill itself.

pip install memway
cd your-repo && memway setup .
initialized .coord, 421 entities, 1,222 edges
wrote .mcp.json (agent wiring)
wrote CLAUDE.md (the measured workflow rules)
> What does this repo know?

The answer starts empty.
Every session after this one,
it won't be.
The evidence

Built on an experiment, not a pitch

Same task, same model, a repo the system had never seen, implement a feature from a design doc containing a constraint whose why the code cannot express. Session boundaries verified by log.

Phase A, unconfigured

The agent read the design doc, understood it perfectly, implemented it correctly, and recorded the reason nowhere. No comment. No note. Tool log: empty.

context evaporates
Phase B, three rules

Same task, fresh agent, plus the rule file setup installs. It briefed itself before editing, verified after, and wrote the constraint to the coordinate where the logic lives.

the memory fills itself
Phase C, the trap

A third agent, provably a new process, was asked for exactly the change that caused the incident. It intended to comply. The inherited note turned it around mid-task.

memory intercepts the mistake
How it thinks

Watch the mechanism work

The transcript above is a real session; this one is simulated. An agent keeps editing a small method while Memway watches: behavior changes get intercepted, cosmetic edits pass untouched, and comments that no longer match the code get flagged.

greet.py, an agent keeps editing itmemway · watching
def greet(user): # legal approved this exact greeting, see INC-7 greeting = "Hello" return f"{greeting}, {user}!"
✓ stamp: fresh greeting matches the inherited note. Carry on.
Mechanism

Small primitives that compose

Everything persisted is plain, greppable JSONL under .coord/. Commit it, and teammates clone the repo with its memory.

coordinates + lineage

Durable identity through renames and refactors, 100% on ground truth, 0.995+ precision on foreign repos, zero tuning. We renamed this entire product; the memory followed.

stamped knowledge

Notes and confirmations attach to coordinates, stamped with the code's logic hash. When logic changes, the entry is flagged stale instead of silently lying, and rot detection covers comments, Python docstrings, and Go/JS/TS doc comments.

before_edit briefings

Complexity, callers, blast radius, and inherited knowledge, delivered at the moment of intent, on the exact entity.

token economy

The map returns coordinates into files, never copies of them: 56–472× measured savings. Agents use it to aim surgical reads.

verified changes

Test selection from the real edge graph, run what your edit actually touches, grounded, not guessed.

local & transparent

No telemetry. No phone-home. Ever. The usage log is local-only and reference-only, an instrument for you, not a feed for us.

Honest neighbors

This space is getting good

Here's the map of it, and the coordinate Memway holds.

codebase graphs
The best graph tools answer what your code is right now, across 150+ languages. Excellent maps.
A refactor there is a delete and an add. Here it's the same entity, history and knowledge intact.
session recorders
Event logs of what agents did, prompts, edits, commands, indexed by session and file.
File-indexed logs go stale silently when code moves. Knowledge here rides identity and audits its own freshness.
mem-* agent memory
Long-term memory for AI agents: users, preferences, conversations.
Those tools remember your conversations. Memway remembers your codebase.