A3S Docs
A3S TUI

Components

Component families exported by a3s_tui::components and how to choose them.

TUI Components

a3s_tui::components exports a broad component library for agent consoles, dashboards, editors, and operational tools. The exact set evolves, so use the crate exports as the source of truth.

Agent Console Components

ComponentUse
ActivityBlockIn-flight activity with optional live output tail.
ConnectorBlockConnector-led compact output and task-summary rows.
GutterBlockTranscript/message block with marker gutter and optional bubble background.
OutputBlockStatus-marked transcript or tool output with tail preview.
ToolLogViewCompleted tool/command history with arguments and output.
SessionStatusAgent/session footer row with live chips.
TaskQueuePinned running and queued task panel.
SubagentTrackerParallel subagent or background work tracker.
SideNotePanelCompact side-channel question and answer panel.
WelcomeBannerFirst-run banner with metadata, tips, and notices.
ComponentUse
Tabs / TabbedMenuPanelTab navigation and command palette-style overlays.
MenuPanelTitled scroll-aware menus.
List, Select, MultiSelectSingle and multi-selection controls.
Tree, TreePickerExpandable hierarchy and file/tree pickers.
BreadcrumbHierarchical path navigation.
PreviewPanelSelectable item list with live preview.
ViewportScrollable content plus text-selection helpers.

Data And Inspection

ComponentUse
Table / DataTableTabular data with headers and responsive rows.
DetailPanelSelected-row metadata and actions.
KeyValueLabeled metadata rows.
MetricTrend, Meter, Progress, SparklineCompact status and trend visualization.
TimelineSectioned timeline with colored nodes and selected rows.
DiffViewUnified diff renderer for edits and tool output.

Input And Overlays

ComponentUse
TextInputSingle-line input.
TextareaMulti-line editor with scrolling.
PromptLinePrompt-prefixed input with aligned continuation rows.
CursorLineDisplay-width-aware editor line with block cursor.
Confirm / ChoicePromptApproval, rejection, and numbered action prompts.
Modal / TextOverlay / ToastManagerDialogs, transient overlays, and notifications.

Text And Chrome

ComponentUse
ParagraphWidth-aware wrapping.
Alert, Badge, ChipStripCompact status and callout text.
HelpPanel, ModeLine, StatusBarShortcut help, current mode, and bottom status rows.
Divider, Scrollbar, SplitPane, InputBorder, PanelFrameLayout chrome and framing.
Spinner, ShimmerTextLoading and activity animation.

Choosing Components

  • Use Element primitives for custom layout and simple text.
  • Use components for repeated console patterns: approvals, logs, transcripts, tasks, diffs, and tables.
  • Keep input state in your model; components should render state and emit messages rather than own the whole application loop.

On this page