uac unified agent context

Docs

What it is

The idea behind uac — one shared context layer for Claude Code and Codex.

uac (Unified Agent Context) is a small local service that gives your coding agents one shared memory and skills layer. Today it connects Claude Code and Codex; it’s built to connect more.

The situation

You use more than one coding agent on the same projects. Out of the box, they share nothing:

  • Each has its own instructions file (CLAUDE.md vs AGENTS.md).
  • Each has its own memory — nothing one learns is visible to another. Both Claude and Codex ship native per-tool memory now; neither reads the other’s.
  • Skills don’t transfer — Codex has no Skills concept at all.

So every time you switch agents, you re-explain the project.

Why it can add more agents

uac doesn’t reach into any agent’s internals. It connects through surfaces the agents already expose — the MCP protocol for tools, the AGENTS.md convention for instructions, and session hooks for context injection. An agent that speaks those can plug into the same shared store. Claude Code and Codex are the two wired up today; each is a small adapter, not a fork.

What uac does

One store, both agents. When an agent learns something durable and non-obvious, it writes it to a shared SQLite file. Either agent can read it back in a later session — including the other one.

Claude Code ─┐                        ┌─ .agents/memory.db   this project
             ├─ MCP (stdio) ─ uac ────┼─ ~/.agents/global.db everywhere
Codex ───────┘                        └─ .agents/skills/*.md

The rules it holds to

  • No API keys. Every model call happens inside the official CLI under your own subscription login. uac never calls a model API.
  • Never touches CLI credentials. It does not read, proxy, or forward either CLI’s auth tokens.
  • Local-first. Everything stays on your machine — one SQLite file, some markdown. No cloud, no telemetry.
  • Integrates only through documented surfaces: MCP, instructions files, hooks, CLI flags. It never patches the agents.

How the pieces fit

The core (uac) is the shared brain: an MCP server plus the memory and skills store. Two independent front ends sit on top — a VS Code extension and a terminal app (uac-chat) — and you pick whichever you like. They share the core and nothing else.