Overview

Coodra gives AI coding agents memory, project context and guardrails. It loads what the agent needs to know when a session opens, records decisions and file changes while it works, and checks a policy before every file write and shell command. It ships on npm as @coodra/cli and works with Claude Code, Cursor and Windsurf.

The problem

Every new session with a coding agent starts from zero. It re-learns the repo's conventions, forgets what it decided an hour ago, and will happily write to files it shouldn't. Re-explaining all of that is a tax paid at the start of every session.

I built Coodra at Matrix Maven to remove that tax, without sending anything off the laptop.

Three primitives

Each one arrives at a different moment in the session:

  1. Feature Pack

    A module blueprint: spec, conventions, permitted files and gotchas, written as markdown in the repo.

    Delivered

    Pushed into the agent's context at session start.

  2. Context Pack

    A durable record of decisions, file changes, test results and open TODOs.

    Delivered

    Saved at session end, and queryable from any later session.

  3. Policy

    Project-scoped allow, ask and deny rules for file writes and shell commands.

    Delivered

    Checked before every write or command. It fails open under load, and every verdict goes to an append-only audit log.

How a session runs

  1. Session start

    A hook opens a run, records the base commit, and hands the agent its Feature Pack. Its first reply already cites the project's conventions.

  2. Working

    Before it changes anything, the agent queries earlier packs and recorded decisions through MCP tools.

  3. Before each write

    The hook bridge checks kill switches and policy rules. Allowed writes go through; denied ones come back with the rule that blocked them.

  4. Session end

    The run's diff is captured and a Context Pack is saved, so the next session starts where this one stopped.

Architecture

Two local processes do the work: an MCP server that exposes 15 tools, and a hook bridge that receives hook events from Claude Code, Cursor and Windsurf. Both write to SQLite on the laptop, so solo mode needs no network at all.

Team mode is opt-in. A sync daemon mirrors selected rows to a PostgreSQL database the team owns, with append-only semantics on the hot tables. The hot path never leaves the laptop.

Shipping it

  • One install, npm i -g @coodra/cli@beta, bundles the MCP server, hook bridge, sync daemon and admin UI.
  • Around 180 unit-test files across 9 workspaces.
  • An end-to-end suite boots real PostgreSQL in CI on every pull request and runs the full session lifecycle.
  • Released under the MIT license as a public beta.

Selected figures

Fig 1. Two local processes; team sync is optional
Fig 2. The 15 MCP tools, grouped by intent

Takeaways

Context belongs at the start

Pushing the right blueprint in when the session opens beats hoping the agent goes looking for it.

Guardrails have to be cheap

A policy check runs before every write, so it has to be fast and fail open instead of blocking the work.

Local first, then share

Solo mode works offline. Team sync is opt-in and goes to a database the team owns.