Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
uah
command
Command uah is a general-purpose harness for unreal-agent-runner: long-lived sessions, a terminal UI, and headless runs built on uagent.
|
Command uah is a general-purpose harness for unreal-agent-runner: long-lived sessions, a terminal UI, and headless runs built on uagent. |
|
internal
|
|
|
agents
Package agents runs subagents: child sessions a session's agent spawns with the spawn_agent tool, following Codex's v1 multi-agent tools (see docs/design/subagents.md).
|
Package agents runs subagents: child sessions a session's agent spawns with the spawn_agent tool, following Codex's v1 multi-agent tools (see docs/design/subagents.md). |
|
app
Package app turns what the CLI collected into a session ready to open: Resolve decides the settings without I/O, and Setup loads the files and builds the engine around them.
|
Package app turns what the CLI collected into a session ready to open: Resolve decides the settings without I/O, and Setup loads the files and builds the engine around them. |
|
approval
Package approval decides how a command runs: in the sandbox, outside it, or not at all.
|
Package approval decides how a command runs: in the sandbox, outside it, or not at all. |
|
cmdparse
Package cmdparse says what a shell command does, for the TUI's tool lines: it reads files, lists files, searches, or something else.
|
Package cmdparse says what a shell command does, for the TUI's tool lines: it reads files, lists files, searches, or something else. |
|
codereview
Package codereview is Codex's /review: what to review (a Target), the reviewer's prompt for it, the reviewer's system prompt, the findings it answers with, and the messages that hand them to the main agent.
|
Package codereview is Codex's /review: what to review (a Target), the reviewer's prompt for it, the reviewer's system prompt, the findings it answers with, and the messages that hand them to the main agent. |
|
compaction
Package compaction rewrites a model request the way Codex compacts a thread: the user messages stay verbatim and in order (the newest 20,000 tokens of them), and everything else before a point is replaced by one summary message.
|
Package compaction rewrites a model request the way Codex compacts a thread: the user messages stay verbatim and in order (the newest 20,000 tokens of them), and everything else before a point is replaced by one summary message. |
|
compaction/eval
Package eval measures what a compaction strategy does to one model request: the tokens it frees per actor, the headroom it leaves, the prompt cache it breaks, the facts it keeps (by rules, no model), the user messages and skill bodies it keeps, and how likely the next calls are to fetch again what it dropped.
|
Package eval measures what a compaction strategy does to one model request: the tokens it frees per actor, the headroom it leaves, the prompt cache it breaks, the facts it keeps (by rules, no model), the user messages and skill bodies it keeps, and how likely the next calls are to fetch again what it dropped. |
|
compaction/evalrun
Package evalrun runs the compaction evaluation (internal/compaction/eval) on recorded sessions.
|
Package evalrun runs the compaction evaluation (internal/compaction/eval) on recorded sessions. |
|
config
Package config reads uah's configuration: a user file, the layers in config.d and UAH_EXTRA_CONFIG, and, for workspaces the user trusts, a project file.
|
Package config reads uah's configuration: a user file, the layers in config.d and UAH_EXTRA_CONFIG, and, for workspaces the user trusts, a project file. |
|
config/tomledit
Package tomledit edits TOML configuration files in place, keeping their comments and formatting: it sets or removes one key, or cuts whole tables, and writes the file atomically.
|
Package tomledit edits TOML configuration files in place, keeping their comments and formatting: it sets or removes one key, or cuts whole tables, and writes the file atomically. |
|
contextusage
Package contextusage breaks a model request into what fills the context window, as Claude Code's /context does: the system prompt, instruction files, skills, tools, MCP tools, and the conversation, with the free space and the auto-compaction buffer.
|
Package contextusage breaks a model request into what fills the context window, as Claude Code's /context does: the system prompt, instruction files, skills, tools, MCP tools, and the conversation, with the free space and the auto-compaction buffer. |
|
engine
Package engine is the seam between a session and how it runs unreal-agent-runner: the embedded engine runs the runner's packages in process, so messages and settings reach a live run.
|
Package engine is the seam between a session and how it runs unreal-agent-runner: the embedded engine runs the runner's packages in process, so messages and settings reach a live run. |
|
engine/codexauth
Package codexauth serves the ChatGPT subscription credentials the openai-codex provider sends: the access token and the account ID, from the environment or from Codex's auth file, which it refreshes as Codex does (login.go, refresh.go, and docs/design/codex-auth.md).
|
Package codexauth serves the ChatGPT subscription credentials the openai-codex provider sends: the access token and the account ID, from the environment or from Codex's auth file, which it refreshes as Codex does (login.go, refresh.go, and docs/design/codex-auth.md). |
|
engine/embedded
Package embedded is the engine that runs unreal-agent-runner's packages in process.
|
Package embedded is the engine that runs unreal-agent-runner's packages in process. |
|
gitdiff
Package gitdiff reads a workspace's changes with git for the TUI's /diff and /review: the working tree against HEAD (staged and unstaged) plus the untracked files as additions, the local branches, the recent commits, and a branch's merge base.
|
Package gitdiff reads a workspace's changes with git for the TUI's /diff and /review: the working tree against HEAD (staged and unstaged) plus the untracked files as additions, the local branches, the recent commits, and a branch's merge base. |
|
history
Package history is the prompt history file, <home>/history.jsonl, after Codex's message history (codex-rs/message-history, rust-v0.159.1): one JSON object per line, {"session_id":"…","ts":<unix seconds>,"text":"…"}, plus uah's "workspace", the session's folder.
|
Package history is the prompt history file, <home>/history.jsonl, after Codex's message history (codex-rs/message-history, rust-v0.159.1): one JSON object per line, {"session_id":"…","ts":<unix seconds>,"text":"…"}, plus uah's "workspace", the session's folder. |
|
home
Package home is uah's one home, as Codex has ~/.codex and Claude Code has ~/.claude: the configuration, the instructions, hook trust, MCP credentials, sessions, run records, the index, images, the model cache, the prompt history, and logs all live in ~/.uah, or in $UAH_HOME when it is set.
|
Package home is uah's one home, as Codex has ~/.codex and Claude Code has ~/.claude: the configuration, the instructions, hook trust, MCP credentials, sessions, run records, the index, images, the model cache, the prompt history, and logs all live in ~/.uah, or in $UAH_HOME when it is set. |
|
home/migrate
Package migrate moves uah's files, once, from the folders it used before ~/.uah: the configuration directory (~/.config/uagent) and uah's part of the state directory it shared with uagent (~/.local/state/unreal-agent).
|
Package migrate moves uah's files, once, from the folders it used before ~/.uah: the configuration directory (~/.config/uagent) and uah's part of the state directory it shared with uagent (~/.local/state/unreal-agent). |
|
hooks
Package hooks runs user commands at session events, with Claude Code's contract: the event as JSON on stdin; exit 0 continues (optionally with JSON on stdout), exit 2 blocks with stderr as the reason, and any other exit is reported and ignored.
|
Package hooks runs user commands at session events, with Claude Code's contract: the event as JSON on stdin; exit 0 continues (optionally with JSON on stdout), exit 2 blocks with stderr as the reason, and any other exit is reported and ignored. |
|
images
Package images carries images pasted into the prompt.
|
Package images carries images pasted into the prompt. |
|
images/clipboard
Package clipboard reads an image from the system clipboard through the system's own tools, without cgo: osascript on macOS, and wl-paste or xclip on Linux.
|
Package clipboard reads an image from the system clipboard through the system's own tools, without cgo: osascript on macOS, and wl-paste or xclip on Linux. |
|
instructions
Package instructions finds instruction files (AGENTS.md, as Codex does) and builds the host prompt for the runner.
|
Package instructions finds instruction files (AGENTS.md, as Codex does) and builds the host prompt for the runner. |
|
llmcall
Package llmcall makes one model call outside the agent loop: items in, text out.
|
Package llmcall makes one model call outside the agent loop: items in, text out. |
|
mcp
Package mcp runs Model Context Protocol servers for the embedded engine: it starts the configured servers, lists their tools under Codex's names, and calls them.
|
Package mcp runs Model Context Protocol servers for the embedded engine: it starts the configured servers, lists their tools under Codex's names, and calls them. |
|
models
Package models is uah's model catalog: which models the provider offers to this login, with their context windows, reasoning levels, and service tiers.
|
Package models is uah's model catalog: which models the provider offers to this login, with their context windows, reasoning levels, and service tiers. |
|
models/modelstest
Package modelstest serves model catalogs to tests without the network.
|
Package modelstest serves model catalogs to tests without the network. |
|
patch
Package patch parses and applies Codex's apply_patch format, and computes the diff of what a patch changed.
|
Package patch parses and applies Codex's apply_patch format, and computes the diff of what a patch changed. |
|
review
Package review is the automatic approval reviewer, Codex's "auto-review" (guardian): one model call judges an action that needs approval, from the user's messages (trusted), the recent tool calls without their output (untrusted), and the action itself.
|
Package review is the automatic approval reviewer, Codex's "auto-review" (guardian): one model call judges an action that needs approval, from the user's messages (trusted), the recent tool calls without their output (untrusted), and the action itself. |
|
rules
Package rules is Codex's command rules: `prefix_rule` entries in Starlark `.rules` files, matched against a command's words, with the strictest matching decision winning.
|
Package rules is Codex's command rules: `prefix_rule` entries in Starlark `.rules` files, matched against a command's words, with the strictest matching decision winning. |
|
sandbox
Package sandbox runs shell commands inside the operating system's sandbox, as Codex does: Seatbelt (sandbox-exec) on macOS and bubblewrap on Linux.
|
Package sandbox runs shell commands inside the operating system's sandbox, as Codex does: Seatbelt (sandbox-exec) on macOS and bubblewrap on Linux. |
|
session
Package session is the long-lived object the TUI and `uah exec` talk to.
|
Package session is the long-lived object the TUI and `uah exec` talk to. |
|
sessionfile
Package sessionfile reads the runner's session file, sessions/<id>.session.jsonl, by the rules its README documents, with no code from the runner: a header, then items numbered by Sequence, the cursor a reader pages with.
|
Package sessionfile reads the runner's session file, sessions/<id>.session.jsonl, by the rules its README documents, with no code from the runner: a header, then items numbered by Sequence, the cursor a reader pages with. |
|
store
Package store keeps a rebuildable SQLite index of the run records in the state directory, so listing, searching, and activity do not reread every summary (docs/design/state.md).
|
Package store keeps a rebuildable SQLite index of the run records in the state directory, so listing, searching, and activity do not reread every summary (docs/design/state.md). |
|
tui/bubble
Package bubble is the Bubble Tea shell around the TUI state and renderer: it turns keys into intents, runs effects against the session, batches session events, and draws frames.
|
Package bubble is the Bubble Tea shell around the TUI state and renderer: it turns keys into intents, runs effects against the session, batches session events, and draws frames. |
|
tui/render
Package render draws TUI state as screen lines with lipgloss.
|
Package render draws TUI state as screen lines with lipgloss. |
|
tui/render/markdown
Package markdown draws the Markdown the model writes as terminal lines, in uah's look after Codex's: goldmark parses it with the GFM extensions, and a renderer of its own walks the tree.
|
Package markdown draws the Markdown the model writes as terminal lines, in uah's look after Codex's: goldmark parses it with the GFM extensions, and a renderer of its own walks the tree. |
|
tui/state
Package state is the TUI's model and reducer.
|
Package state is the TUI's model and reducer. |
|
usage
Package usage reads the ChatGPT subscription's rate limits for the openai-codex provider, as Codex does: the windows (for example 5 hours and a week), the percent used, and when each resets.
|
Package usage reads the ChatGPT subscription's rate limits for the openai-codex provider, as Codex does: the windows (for example 5 hours and a week), the percent used, and when each resets. |
|
usershell
Package usershell runs a command the user types in the TUI's shell mode (`!` in the composer), as Codex's user shell commands and Claude Code's bash mode do, and writes the record the agent sees of it.
|
Package usershell runs a command the user types in the TUI's shell mode (`!` in the composer), as Codex's user shell commands and Claude Code's bash mode do, and writes the record the agent sees of it. |
|
testing
|
|
|
fakellm
Package fakellm is a scripted OpenAI Responses API for tests.
|
Package fakellm is a scripted OpenAI Responses API for tests. |
|
harnesstest
Package harnesstest sets up isolated uagent environments for tests: the fake runner from uagent, the real unreal-agent-runner, an engine that spawns either (RunnerEngine), a workspace, a state directory, and Codex credentials that pass preflight.
|
Package harnesstest sets up isolated uagent environments for tests: the fake runner from uagent, the real unreal-agent-runner, an engine that spawns either (RunnerEngine), a workspace, a state directory, and Codex credentials that pass preflight. |
|
mcpserver
command
Command mcpserver is a stdio MCP server for tests, built with the official Go SDK.
|
Command mcpserver is a stdio MCP server for tests, built with the official Go SDK. |
|
oauthserver
Package oauthserver is an MCP server behind OAuth 2.1 for tests, in one httptest server: the protected resource (/mcp, a streamable HTTP MCP server built with the official SDK, with a whoami tool), its protected resource metadata, and a small authorization server with dynamic client registration, PKCE (S256), and refresh tokens.
|
Package oauthserver is an MCP server behind OAuth 2.1 for tests, in one httptest server: the protected resource (/mcp, a streamable HTTP MCP server built with the official SDK, with a whoami tool), its protected resource metadata, and a small authorization server with dynamic client registration, PKCE (S256), and refresh tokens. |
Click to show internal directories.
Click to hide internal directories.
