Open source and local first. Shared decision governance when your team is ready. See how it works ›

The engineering control layer between your team and your coding agents.

Keep AI-generated code aligned with your engineering decisions.

Give Claude, Cursor, Codex and Gemini the decisions that matter as they work. Contexer independently captures and checks the resulting changes for drift before they land.

MIT licensed · Runs locally, no account required · Optional cloud sync

Compatibility

One decision set, compiled into each agent’s native format.

  • Claude CodeCLAUDE.md
  • Cursor.cursor/rules
  • CodexAGENTS.md
  • Gemini CLIGEMINI.md

The alignment gap

Giving agents the rules isn't the same as making sure they follow them.

Engineering decisions already live in docs, repositories, conversations, and people's heads. AI agents can read that context, but teams still need to know which decisions apply and whether the resulting changes actually follow them.

01

Decisions are scattered

Architecture decisions, constraints, and conventions live across docs, repos, sessions, and senior engineers.

02

Agents can miss context

Relevant decisions may exist, but the agent may not retrieve or apply them when they matter.

03

Decisions and code drift

Code can stop following a valid decision, or the code can evolve while the documented decision becomes stale.

DecisionCodeCodeDecision
04

Senior engineers become the enforcement layer

The people who know why things are built a certain way end up catching the same context-specific mistakes during review.

Having the right context is necessary. Verifying that the resulting work stays aligned with it is a separate problem. Contexer closes this loop.

How it fits together

One workflow, five stages. Capture, approve, share, detect, enforce.

Four stages run in the open source tool on your own machine. Teams adds a shared approved decision set and drift detection on GitHub pull requests.

  1. Capture

    Open source

    Decisions are captured from real coding sessions and kept as persistent, file-aware context your agents can retrieve on demand.

    Install open source
    • Captures architecture, constraint, convention, and pattern decisions
    • File-aware retrieval and full version history
    • When context is missing, Contexer scans the codebase and fills the gap
  2. Approve

    Open source

    Nothing an agent proposes becomes trusted context until a human reviews it. Approval is the gate between suggestion and record.

    • AI-proposed decisions are parked for review, never auto-trusted
    • Approve, edit, skip, or dismiss before anything replays
    • Approved decisions are versioned, with the reasoning attached
  3. Share

    OSS locally · Teams shared

    Approved decisions are compiled into each agent's native format, so Claude Code, Cursor, Codex, and Gemini CLI work from the same record.

    • One decision set, distributed across all four agents
    • Open source keeps it local to your machine
    • Teams adds a shared approved set with sync and reconciliation
  4. Detect

    Teams

    GitHub pull requests are checked against the team's approved decisions, so architecture drift is visible during review.

    Explore Teams
    • Runs on GitHub pull requests against your shared decision set
    • Architecture drift detection, advisory today
    • GitHub only. No other source-control providers
  5. Enforce

    Open source · local guard

    The shipped local guard checks your changes at commit time, before anything reaches a pull request.

    Loops back to Capture

    • Warns before commit when a change conflicts with an approved decision
    • Deterministic regex and secret checks can block locally when explicitly armed
    • Findings become new captured decisions, closing the loop

The loop closes here. Stage 05 feeds back into stage 01: every guard or drift finding becomes a new decision to review, so your engineering knowledge keeps evolving instead of going stale.

Workflow preview

Capture, proposed decision, human approval. Right inside your terminal.

These mockups show the intended flow. The actual UI may differ. A decision is captured while you work, an agent proposal waits for review, and only an approved decision becomes trusted context.

01Capture
Live
>
Captured as global convention
Rule
Release sequence: branch → bump → PR → merge → tag
Loaded into 0 sessions · applies to all future repos

State a rule. Contexer stores it.

Directives you state outright become global conventions, loaded into every future session.

02Propose
Idle
Pending decisionAI proposed
Use RabbitMQ for async jobs, not Kafka.
Rationale: lower ops overhead, fits current scale.
1 approve
2 edit
3 ignore

AI surfaces a decision mid-work.

Architecture and constraint decisions are parked for review, never replayed until you approve.

03Approve
Idle
>
Approved · v1
Decision
Use RabbitMQ for async jobs.
immutable
replayed across agents

One keystroke. Versioned forever.

Approve, edit, or ignore. Approved decisions are immutable and replayed across every agent.

What Contexer actually captures

Engineering decisions. Not chat history.

Architecture decisions

“We standardized on PostgreSQL.”

Constraints

“Never expose S3 buckets publicly.”

Conventions

“Terraform modules live under infrastructure/modules.”

Patterns

“Every API emits OpenTelemetry traces.”

These are engineering decisions. Not chat history, not transcripts, not session logs.

Not another AI memory tool

AI memory tools recall conversations. Contexer is your team’s decision of record.

CLAUDE.md, AGENTS.md, .cursorrules, and per-assistant memory features are single player. One person edits a file, another tool ignores it, nothing is reviewed, nothing is versioned. Contexer is the shared layer above them: typed engineering decisions, human approved, versioned forever, and replayed into every agent your team uses.

What it holds
Chat history, per-assistant rules files
Typed engineering decisions with rationale, the team's decision of record
How it gets in
Auto-scraped from sessions, or hand-edited by one person
AI proposes, a human reviews and approves before it is trusted
Versioning
Overwritten in place, no history
Approved decisions are immutable. Changes create a new revision with full provenance
Scope
Per-assistant, per-machine
One decision layer, shared across the team
Vendor coverage
Locked to one tool at a time
Vendor neutral: Claude Code, Cursor, Codex, and Gemini CLI
What you can point to
“The model saw some notes.”
Who approved which decision, when, and why

Pricing

Start open source. Add governance when the team needs it.

Start here

Open Source

FreeMIT licensed

For individual developers. Runs locally, stores decisions on your machine, and wires into the coding agents you already use. No account required.

Local first · No account required

  • Capture architecture, constraint, convention, and pattern decisions
  • Human approval before an AI-proposed decision becomes trusted
  • Cross-agent context for Claude Code, Cursor, Codex, and Gemini CLI
  • File-aware retrieval and full version history
  • Local guard: warns at commit time when a change conflicts with a decision
  • Deterministic regex and secret checks can block locally when armed

Teams

Freeduring early access

Shared decision governance for engineering teams. One approved decision set of record, distributed to every member and every agent. Pricing will be announced once our IP process is settled.

No credit card required · Pricing coming soon

  • Everything in Open Source
  • Shared repository of reviewed and approved team decisions
  • Team sync and reconciliation across members
  • Role-based approval workflow (lead or member)
  • Drift detection on GitHub pull requests, advisory today

Quick start

Two commands. Under two minutes.

Requires Python 3.12+ and uv. Auto-detects Claude Code, Cursor, Codex, and Gemini CLI, then wires them in.

bash · install
# Step 1. install
$ uv tool install contexer

# Step 2. wire into your AI assistant
$ contexer install

-> detected ~/.claude (Claude Code)
-> detected ~/.cursor (Cursor)
-> detected ~/.codex (Codex)
-> detected ~/.gemini (Gemini CLI)
-> wired all four. restart your AI assistant.

Restart your AI assistant and open any git repo. Contexer runs from there.