Expand description
oino-view: frontend-agnostic view models shared by the terminal client (oino-tui) and
the GPUI apps (modes.md §7.1).
Nothing here knows about a UI toolkit. Every model is a plain state machine fed with
oino_core::events::ClientEvents, RPC replies or user intents, and is unit-tested
without a terminal.
§API map
| Module | Contents |
|---|---|
transcript | transcript::Transcript rows keyed by tool-call id; reducer over session events |
ui_state | ui_state::RegistryMirror: v2 snapshot/patch mirror (ui-protocol §6, §9.2) with the dialog queue; ui_state::UiState: the transitional v1 request reducer |
ous | ous::OusNode: typed Oino UI Spec v1 nodes (deleted with the last v1 emitter, WP-U7) |
tree | tree::TreeModel: flattening, filter modes, folding, search |
sessions | sessions::SessionListModel: scope, sort, name filter, search |
settings_hub | extension settings hub: namespaces, flattened fields, display, cycling, parsing, visibleIf/disabledIf |
composer | composer::Composer: multi-line buffer, history, kill ring, undo, paste markers |
commands | built-in slash command table and parsing |
keys | keys::KeyId, keys::Keybindings with defaults |
fuzzy | subsequence matcher |
format | token, cwd, age formatting |
Wire types come from oino-core/oino-session/oino-ai until oino-protocol exists
(deviations/tui-client.md).
Modules§
- commands
- Built-in interactive slash commands (modes.md §1.3) and the
command menu model merged with
get_commandsresults. - composer
- Composer buffer (
Editorsemantics): multi-line text with a cursor, prompt history, kill ring (yank / yank-pop), undo, large-paste markers and attachment tokens. - format
- Display formatting shared by frontends (footer, session selector, tool renderers).
- fuzzy
- Subsequence fuzzy matching (approximation of
fuzzyFilter). - keys
- Key ids and keybindings (
KeybindingsManager). - ous
- Oino UI Spec v1 nodes (ui-protocol §6), parsed from JSON into a typed tree.
- sessions
- Session resume picker model.
- settings_
hub - Extension settings hub model (ui-protocol §7, OSS-2): namespaces from the typed
SettingsNamespacedescriptors (or fromget_settings_schemaJSON), flattened fields per namespace, values fromget_extension_settings, and the edits a frontend sends back (set_extension_setting/unset_extension_setting). - transcript
- Transcript rows (the interactive-mode chat container).
- tree
- Session tree navigator model.
- ui_
state - Extension UI state (ui-protocol §2–§6, §9.2).
Type Aliases§
- Json
Object - JSON value type used throughout (re-exported from
oino-ai). JSON object with insertion order preserved (Record<string, unknown>). - Json
Value - JSON value type used throughout (re-exported from
oino-ai). Arbitrary JSON value (unknown).