internal/

directory
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2026 License: MIT

Directories

Path Synopsis
agent
usheragent
Package usheragent is the main-chat agent that routes user messages to Claude Code sessions and resolves permission requests.
Package usheragent is the main-chat agent that routes user messages to Claude Code sessions and resolves permission requests.
Package appserver implements the newline-delimited JSON-RPC transport used by `codex app-server`.
Package appserver implements the newline-delimited JSON-RPC transport used by `codex app-server`.
Package auth implements usher's password-based web UI auth: argon2id password hashing, an HMAC-signed stateless cookie tied to the current password hash (so changing password kicks every device), and a per-IP exponential-backoff rate limiter for /login.
Package auth implements usher's password-based web UI auth: argon2id password hashing, an HMAC-signed stateless cookie tied to the current password hash (so changing password kicks every device), and a per-IP exponential-backoff rate limiter for /login.
Package backend defines the backend-neutral contracts between the router and concrete coding-agent adapters.
Package backend defines the backend-neutral contracts between the router and concrete coding-agent adapters.
Package broker is a small in-process pub/sub for session events.
Package broker is a small in-process pub/sub for session events.
Package claudestream manages long-running Claude Code stream-json children.
Package claudestream manages long-running Claude Code stream-json children.
Package codexrollout parses OpenAI Codex CLI "rollout" session logs into the the backend-neutral core display model consumed by router, web, and agents.
Package codexrollout parses OpenAI Codex CLI "rollout" session logs into the the backend-neutral core display model consumed by router, web, and agents.
Package core holds shared types referenced by multiple internal packages.
Package core holds shared types referenced by multiple internal packages.
Package discovery scans Claude Code's projects directory and watches it for changes, exposing the set of known sessions.
Package discovery scans Claude Code's projects directory and watches it for changes, exposing the set of known sessions.
Package hook brokers backend interactions through usher's web UI.
Package hook brokers backend interactions through usher's web UI.
Package imutil holds helpers shared by usher's IM frontends (the in-process Telegram hub and out-of-process IM plugins): flattening session jsonl events into plain text, and IM-agnostic text utilities.
Package imutil holds helpers shared by usher's IM frontends (the in-process Telegram hub and out-of-process IM plugins): flattening session jsonl events into plain text, and IM-agnostic text utilities.
Package jsonl parses Claude Code's session log files.
Package jsonl parses Claude Code's session log files.
Package mainchat persists main-chat conversations as append-only jsonl files under <data-dir>/mainchats/<id>.jsonl.
Package mainchat persists main-chat conversations as append-only jsonl files under <data-dir>/mainchats/<id>.jsonl.
Package modelcatalog implements model metadata sources for built-in agent backends.
Package modelcatalog implements model metadata sources for built-in agent backends.
Package pathutil holds path-safety helpers shared across usher.
Package pathutil holds path-safety helpers shared across usher.
Package pi adapts pi coding-agent sessions and its RPC protocol to usher.
Package pi adapts pi coding-agent sessions and its RPC protocol to usher.
Package pluginapi exposes the IM-frontend subset of the Router to out-of-process plugins over a Unix socket, and provides the matching client.
Package pluginapi exposes the IM-frontend subset of the Router to out-of-process plugins over a Unix socket, and provides the matching client.
Package push delivers browser Web Push notifications for usher: a turn finishing or a permission prompt arriving while the web UI is closed or backgrounded.
Package push delivers browser Web Push notifications for usher: a turn finishing or a permission prompt arriving while the web UI is closed or backgrounded.
Package router glues discovery, sender, broker, and hook together.
Package router glues discovery, sender, broker, and hook together.
Package sender drives headless Claude and Codex sessions and reports each turn's output by tailing the backend's session log.
Package sender drives headless Claude and Codex sessions and reports each turn's output by tailing the backend's session log.
Package sessionmeta persists per-session user decisions (archive, pin) in sessions.json under <data-dir>/.
Package sessionmeta persists per-session user decisions (archive, pin) in sessions.json under <data-dir>/.
Package telegram is a dependency-free Telegram Bot API client plus the hub that mirrors usher's sessions into a forum supergroup, one topic per session.
Package telegram is a dependency-free Telegram Bot API client plus the hub that mirrors usher's sessions into a forum supergroup, one topic per session.
Package terminal manages session-scoped tmux shells.
Package terminal manages session-scoped tmux shells.
Package transcript adapts built-in persisted formats to the backend-neutral transcript contract.
Package transcript adapts built-in persisted formats to the backend-neutral transcript contract.
Package web serves the usher HTTP API and embedded static UI.
Package web serves the usher HTTP API and embedded static UI.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL