vtcode-tui
Reusable terminal UI primitives and session APIs for Rust CLI/TUI applications.
Status
vtcode-tui is self-contained and can be used without vtcode-core or vtcode-config.
The crate focuses on terminal UI primitives and session rendering only (no auth/provider logic).
The full implementation lives in src/core_tui/.
For integrations, use the standalone options API:
SessionOptionsSessionSurfaceKeyboardProtocolSettingsspawn_session_with_optionsspawn_session_with_host
Host-injected customization in SessionOptions:
slash_commands: command palette metadataappearance: optional UI appearance override (SessionAppearanceConfig)app_name: terminal title/app branding textnon_interactive_hint: custom message when no interactive TTY is available
Quick Start
use ;
#
Public API Highlights
- Session lifecycle:
spawn_session_with_options,spawn_session_with_host,InlineSession - Interaction:
InlineHandle,InlineCommand,InlineEvent - UI models: plans, diff previews, modal/list/wizard selection types
- Theme/style helpers:
theme_from_styles,convert_style,ratatui_style_from_ansi
Examples
examples/minimal_session.rsexamples/custom_theme_and_widgets.rsexamples/host_adapter_integration.rs