This page maps the Condensate repository: the runtime, the applications that run on it, and the shared packages they use. Use it to find the package or app you want to use or change.
The runtime runs three engines: Claude Code, Codex, and Condensate's own agent. The spawn request and model routing decide which one runs a task. Models and other harnesses explains that choice.
Build an application
Use packages/agents-sdk to call the runtime from your own code. The SDK is early access: it lives inside this repository as a private workspace package and is not published to npm.
The SDK guide starts with a read-only client that lists threads. It then follows recorded events and sends work.
For a chat interface, packages/chat-sdk supplies shared state and React components that connect to runtime threads. packages/thread-ui turns runtime events into view models for the conversation, tool activity, and stream state, and also supplies theme tokens. Its core has no DOM, so server code can use it too. Your interface can then follow the thread the same way the Condensate apps do.
Understand the runtime
| Package | What it does |
|---|---|
packages/agents-host | Keeps durable threads, serves the HTTP routes, tracks which process owns each session, and runs work in execution runners |
packages/engine | Runs the agent loop for Condensate's own agent, the Claude and Codex adapters, context windows, model routing, and failover between accounts |
packages/agents-sdk | Typed client and event schemas for applications (early access) |
packages/broker | Stores provider credentials, refreshes tokens, and gives accounts to sessions |
The runtime listens on port 4741 by default. The Runtime HTTP API describes its routes.
For how the running processes are arranged on real machines, read the notes in docs/architecture/ in the repository.
Explore the applications
| Application | What it provides | Default port (developer setup) |
|---|---|---|
| Dex | One installable page that drives your runtime threads from a phone, a tablet, or a desktop | 5189 |
| gt-review | The review hub: registered checkouts, review rooms, and the API that Dex reads for review work | 4700 |
| Dojo | Lessons with an AI tutor, a terminal or notebook for the work, and a tutor that reviews what you submit | 4800 |
| Middleware | Tools exposed over MCP, and hook policy for other agents such as Claude Code and Codex | 4787 |
Other apps in apps/:
| Directory | What it is |
|---|---|
apps/canvas | Boards that agents draw on and people open |
apps/browser-ext | A browser side panel that answers questions about the page you have open |
apps/condensate-live | The iPhone app, which embeds the Dex page and shows a Live Activity |
apps/head | The workspace head page: a conversation with the head agent next to the state of your estate |
apps/site | The public condensate.dev site: the landing page, forkit, and where the docs are mounted |
apps/docs | This documentation website, built from apps/docs/content |
apps/dex | The Dex design system assets (web/ds): component styles, scripts, and icons |
Shared packages
| Package | What it does |
|---|---|
packages/orbkit | Animated marks and status indicators for agent state. Its root API does not need React |
packages/prose | Writing checks, the document profile, and the proof passes that a document thread's merge gate counts |
packages/canvas-vocabulary | The drawing vocabulary an agent may use on a canvas board |
packages/head-tools | The tools the workspace head uses, provided as an Effect service |
packages/condensate-plugin | One plugin for Claude Code and Codex that bundles governance hooks, the code-mode MCP server, and skills |
packages/estate | Snapshots a machine's setup, plans changes against a desired manifest, and redacts secrets before a manifest is shared |
packages/workos-auth | Checks WorkOS access tokens and returns the signed-in principal or a failure reason |
Reference pages
Each package and app that has a package.json gets a reference page, generated from that manifest. The pages list its commands, its exports, and the workspace packages it depends on. Find them under /reference/packages/ and /reference/apps/, for example agents-host.
When a guide and a reference page disagree, the reference page reflects the current manifest.