Memory that pushes,
not memory
you have to ask for.
Supermemory is a context cloud your agent has to call. graphCTX inverts it — it calls your agent, pushing commit-valid, scope-aware context at the exact moments it drifts. Runs on your machine. No cloud. No API key.
curl -fsSL https://graph.coder.company/install | sh user: what's the deploy command?
agent: I don't see one in the repo —
you'll need to tell me.
user: what's the deploy command?
agent: ./scripts/ship.sh --canary --wait
mem:9f3a2c
Same agent, same prompt. The only difference is graphCTX pushing the fact into context.
Five primitives. One push.
A memory control plane, not a search box. The work is in the last step — forcing the right context into the agent at the moment it matters.
Read the repo, deterministically
Six extractors parse package scripts, lockfiles, CI, editorconfig, AGENTS.md, and session episodes. No LLM needed for the trusted base — facts are grounded in files, not guesses.
Bind every fact to a commit
Memory is valid as of a git state, not a wall-clock time. Revert a change and the fact comes back; branch away and it doesn't apply. Your DAG is the source of truth.
Graduate facts across scopes
session → workspace → user, through hard evidence gates. Conservative by design: only earned facts cross boundaries. Secrets and low-trust prose never get promoted.
Decide when it actually matters
A relevance gate computes topic drift and entity changes, firing only when memory plausibly applies — at SessionStart, PostCompact, PreToolUse, and branch switches.
Inject context into the agent
A budgeted, provenance-tagged capsule lands in the agent's context the moment it would drift — no tool call, no model discretion, no forgetting to ask.
We ran it live against Supermemory.
Same coding-fact set, same queries, real network calls. graphCTX answers
from your machine before a Supermemory request finishes its TLS handshake.
Reproducible: graphctx compare --deep.
Latency holds at scale
Retrieval p50/p95 as the workspace grows. A realistic repo (~500 facts) answers in 14.5ms. Even a 5,000-fact monorepo stays interactive.
Push vs pull — the thesis
Post-compaction solve rate across 14 coding tasks. Pull-based memory forgets to ask; push delivers every time.
// graphctx eval run --arms A,B,C
// honest caveat: Supermemory does cross-doc reasoning + connectors at scale that graphCTX doesn't attempt. This compares direct coding-fact retrieval — the path that matters in your editor.
Supermemory waits to be called. graphCTX calls your agent.
Supermemory is powerful general infrastructure. graphCTX is a sharper tool for one job: keeping a coding agent grounded, locally, for free. Here's where each wins — no spin.
// we list where we lose, too. Need cloud-scale connectors and cross-doc reasoning? Use Supermemory. Want your coding agent to stop forgetting — locally, instantly, privately? Use graphCTX.
Up and running in 30 seconds
No account. No API key. No cloud. Install the CLI, point it at your agent, and memory starts pushing on the next session.
curl -fsSL https://graph.coder.company/install | sh Prefer npm? npm i -g graphctx
$ curl -fsSL https://graph.coder.company/install | sh install the CLI (detects Node / Bun)
$ graphctx install claude wire your agent (claude · cursor · opencode · generic)
$ graphctx doctor verify push is live