Prime Agent's interactive mode is a fullscreen TUI with a scrollable transcript, pinned prompt bar, and mouse support; keyboard shortcuts and session control are customizable and hot-reloadable. OSC 8 is a terminal escape sequence standard that embeds clickable hyperlinks in terminal output, associating a URI with a text span so supporting terminals can open the link on interaction.
As of v0.2.5, fullscreen TUI rendering — a scrollable transcript with a pinned prompt bar and mouse selection — is enabled by default.[1] The fullscreen TUI renderer supports OSC 8 terminal hyperlinks; clicking a hyperlink in fullscreen mode opens it. Hyperlink hit-testing in fullscreen mode is implemented via a utility in packages/tui/src/utils.ts, with coverage provided by fullscreen.test.ts and hyperlink-at-column.test.ts. Bare URLs (not wrapped in OSC 8 escape sequences) in agent output are rendered as clickable links in fullscreen TUI mode, implemented via utilities in packages/tui/src/fullscreen.ts, tui.ts, and utils.ts, with gating logic in packages/coding-agent/src/core/settings-manager.ts. Collapse state for tool-execution blocks, IPython cells, and agent messages is unified as a single toggle in fullscreen TUI mode; state is coordinated in interactive-mode.ts with corresponding updates to conversation-components.ts, ipython-cell.ts, and tool-execution.ts. Mouse capture state in fullscreen TUI mode is managed in packages/coding-agent/src/core/settings-manager.ts rather than the TUI layer directly, making it the authoritative location for terminal-compatibility guards, including capability flag negotiation at startup and on mode transitions. The working-status elapsed-timer is implemented across packages/coding-agent/src/core/agent-messages.ts, agent-session.ts, and modes/interactive/interactive-mode.ts, with test coverage in test/interactive-mode-status.test.ts. The working-status elapsed-timer initializes from the session's original start timestamp and persists across session re-entries, giving a cumulative wall-clock total of working time rather than resetting on each re-entry. Subagent summary display in the interactive TUI is rendered as a visually distinct bordered tile, implemented in packages/coding-agent/src/modes/interactive/components/subagent-summary-line.ts, with test coverage in test/subagent-summary-line.test.ts; the bordered presentation improves readability when multiple subagents complete in close succession. The markdown-transform-hook extension point in packages/tui/src/components/markdown.ts is the sanctioned integration point for intercepting and transforming fenced code blocks before markdown display. Mermaid diagram code blocks in the interactive TUI are rendered as terminal diagrams rather than raw markup; the feature is user-facing and controlled via packages/coding-agent/src/core/settings-manager.ts and settings-selector.ts.
Keyboard shortcuts are customizable via ~/.prime/agent/keybindings.json; the full list is shown by the /hotkeys command.[2] In v0.4.0, alt+enter was added to queue a reply as a follow-up while Enter steers a streaming session, and ctrl+n starts a new session from Agents View.[3] The Ctrl+P keybinding toggles visibility of tool-execution blocks, IPython cells, and sent agent messages in the conversation view.
The /reload command hot-reloads keybindings, extensions, skills, prompts, and context files; themes hot-reload automatically without needing /reload.[2] The startup header's --verbose flag lists all loaded AGENTS.md files, prompt templates, skills, and extensions.[2]
Sources