uac unified agent context

Docs

Terminal (uac-chat)

A full-screen terminal app that talks to both agents over the shared store.

uac-chat is the other front end: a full-screen terminal UI for talking to both agents over your shared memory and skills. Same idea as the extension, for people who live in the terminal — pick whichever you prefer.

Like the extension, it has no model of its own; each turn is forwarded to claude or codex as a subprocess.

Install

The app lives in cli/ and shares the uac core (which isn’t on PyPI, so it’s included as editable):

uv tool install --editable ./cli --with-editable .

Then, in a project you’ve run uac init in:

uac-chat                 # start with Claude Code
uac-chat --agent codex   # start with Codex

Keys

Key
Entersend
Ctrl+Tswitch agent (Claude ⇄ Codex)
Ctrl+Gmodel
Ctrl+Eeffort
Ctrl+Pmode (permissions / sandbox)
Ctrl+Btoggle the shared-memory panel
Ctrl+Cstop the running turn — or quit when idle
/skills and slash commands
@mention a file by path

The controls bar shows the current agent, model, effort and mode; a setting you change lights up. Effort dots follow the model you pick — Codex’s scales differ per model.

How it renders

Each turn streams as it arrives. The agent’s working (reads, searches, commands, edits) collects into a collapsible group that folds away once the answer lands, so the reply stands on its own.

Project skills reach both agents: Claude has them natively; for Codex, a /skill is rewritten into a skill_load call over MCP.