Skip to main content

Full-screen terminal chat for Claude Code and Codex over one shared memory layer.

Project description

uac-chat — terminal chat for Claude Code and Codex

A full-screen terminal front end for talking to both agents over your shared uac memory and skills — switch between Claude and Codex without leaving the window.

This is a separate app from the VS Code extension, on purpose: pick whichever front end you like. The two share only the uac core (memory, skills, hooks) — never each other's code, and never a second copy of your memory store.

No API key. Every model call happens inside the official CLI under your own subscription login.

Install

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

(The --with-editable . makes the local uac core resolvable, since it isn't on PyPI.) 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
Enter send
Ctrl+T switch agent (Claude ⇄ Codex)
Ctrl+G model
Ctrl+E effort
Ctrl+P mode (permissions / sandbox)
Ctrl+B toggle the shared-memory panel
Ctrl+C stop the running turn — or quit when idle
/ skills and slash commands (your project skills work on both agents)
@ mention a file by path

The controls bar shows the current agent, model, effort and mode. A setting you change lights up; the effort dots follow the model you pick (Codex's scales differ per model — ultra is Terra-only).

How it works

Each turn is forwarded to claude -p … / codex exec … as a subprocess; the streamed events are rendered as they arrive. 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, /skill is rewritten into a skill_load call over MCP.

Develop

cd cli
pytest            # driver + headless app tests (no real agent, no quota)

The driver is this app's own copy — a deliberate sibling of the extension's driver.ts. A change to how an agent is driven or parsed belongs in both.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uac_tui-0.1.1.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uac_tui-0.1.1-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file uac_tui-0.1.1.tar.gz.

File metadata

  • Download URL: uac_tui-0.1.1.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for uac_tui-0.1.1.tar.gz
Algorithm Hash digest
SHA256 31f4f74515ee23080f7d8130342be0f7a7b177c9b67d39f3351acd60e2df8f57
MD5 3152593f8ec0534901eb52d2d1fb5e72
BLAKE2b-256 f1b4fb53b242ccc3d263738515a225915c079bcf9f62bec2276c14a462f56e62

See more details on using hashes here.

File details

Details for the file uac_tui-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: uac_tui-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for uac_tui-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 70973b40e099f77da79ce70d7ba4d863a6239d66b084e37c2fec02e37b21fb86
MD5 cb92f7d54f232e34e9a48b0e548d5527
BLAKE2b-256 ada6bc3e4424e78e259e07ac0bdd45230c95f437dfba3d92d47393947bdeacba

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page