What GPS is
GPS is a memory layer for coding agents such as Claude Code, Codex, and Cursor. It stores the knowledge humans usually repeat — repo conventions, invariants, decisions, TODOs, test commands, and lessons from past edits — and retrieves the relevant slice right before an agent touches the code.
How it works
Three inputs compound on a single symbol graph:
- Static structure — calls, callers, tests, and provenance form the spine.
- Human intent — notes, decisions, and invariants capture what is worth knowing.
- Agent behavior — what agents asked and what they broke becomes signal.
Core loop
npx -y @invariance/gps setup --yes --with-claude
gps prepare <symbol> --intent "what I am about to change"
gps remember "hard-won fact worth reusing"
gps donegps prepare returns a decision-ready brief: definition location, risk level, callers, tests to run, applicable invariants, notes from previous edits, past decisions, and recent changes. gps done runs a post-edit self-audit covering changed symbols, tests, and invariants.
Why it matters
Native agent memory is often ephemeral, manual, or scoped to a file or conversation. GPS persists notes anchored to symbols, so a lesson surfaces only when that code is touched — and it works across Claude Code, Codex, and Cursor. Over time the notes-and-invariants layer becomes an asset every new engineer and agent depends on.
Integration
GPS is CLI-first, so agents treat it like rg: a local command run before and after edits. It also exposes an MCP stdio server (gps serve) and writes the native files each agent reads at startup. Read commands accept --json or --markdown for tool chaining.

