Skip to content

os-console platform and cartridge architecture

Topic

From the PointSav Documentation

os-console is a single Rust binary with a cartridge architecture that provides keyboard-native access to Totebox Archive workflows through F-key-navigated modules.

Updated 2026-05-25 Β· HistoryEspaΓ±ol

os-console is Woodfine's keyboard-native console interface β€” a single Rust binary that provides direct access to the Totebox Archive, editorial workflows, governance records, and infrastructure management from a terminal. It connects to backend os-* services through machine-based authorization and operates fully offline when backend services are unavailable.

The design principle is end-to-end ownership: every component is compiled into a single binary, with no dynamic plugin loading, no subprocess launching, and no nesting. The console starts in milliseconds and responds at keyboard speed.

[edit]The binary

os-console is the deployable artifact: one binary, one process, all cartridges compiled in. It runs as a native application on the host operating system. Platform targets include Linux Mint on the on-premises iMac workstation and macOS 13 or later on executive workstations.

An optional SSH server mode, compiled with the --features ssh-server flag, enables remote access over port 2222 for use on a GCE VM, providing the same TUI experience over an SSH session.

[edit]The base chassis: app-console-keys

app-console-keys is the always-installed base chassis inside os-console. Its relationship to os-console is analogous to `service-fs`'s relationship to os-totebox: it is the minimum required component that must be present; everything else is optional.

app-console-keys provides the Cartridge trait (the interface all cartridges implement), the F-key navigation framework (the horizontal tab strip, F-key input dispatch, and active-cartridge routing), the status bar showing machine-based authorization connection state and session identity, the authorization client that manages connections to paired os-* services, and profile-based configuration stored at ~/.config/os-console/config.toml.

Naming note: "keys" in app-console-keys refers to F-keys β€” keyboard function keys. It does not refer to cryptographic keys. Machine-based authorization is implemented by system-gateway-mba, a separate crate.

[edit]Cartridges

Each app-console-* crate is a library crate that implements the Cartridge trait. Cartridges are compiled into os-console directly β€” not loaded dynamically and not launched as subprocesses. A cartridge that is not installed has its F-key slot greyed in the tab strip.

Cartridges are optional except for app-console-keys and app-console-input (F12). An installation that includes only app-console-content (F4) and app-console-input (F12) is a complete, valid os-console deployment for editorial work.

[edit]F-key map

The console presents twelve addressable slots via F-keys. F12 is fixed as The Anchor β€” the input-machine β€” and is never moved. The complete os-console article describes the broader product design and deployment context.

F-key Cartridge Domain
F1 app-console-help Help overlay
F2 app-console-people Identity and contacts
F3 app-console-email Communications
F4 app-console-content Editorial β€” proofread, draft, verify
F5 app-console-minutebook Governance β€” minutes, resolutions
F6 app-console-bookkeeper Financial ledger
F7 app-console-bim Building information management
F8 app-console-gis Geographic information
F9 app-console-slm AI management and adapter marketplace
F10 app-console-mesh Network mesh management
F11 app-console-system Live os-* service health and pairing status
F12 app-console-input The Anchor β€” Input Machine (SYS-ADR-10)

[edit]The status bar

The app-console-keys status bar is always visible at the bottom of the console and provides the operator with a live situational picture:

jennifer@woodfine | MBA LINK ACTIVE | F4: Content | Tier A | 00:04:23

The identity component shows the username and tenant set during the pairing ceremony. The authorization state shows MBA LINK ACTIVE, MBA LINK INACTIVE <reason>, or MBA LINK PENDING. The active cartridge slot name, the SLM tier in use (A for local, B for cloud burst, C for frontier API), and session duration complete the bar.

[edit]Authorization connectivity

app-console-keys maintains outbound connections to paired os-* services. Each pairing is independent: the console can be active with os-totebox and inactive with os-privategit simultaneously.

When the authorization link is inactive, os-console operates in local-only mode. Locally-cached content remains accessible. Backend service requests to service-proofreader, service-input, and service-content fail gracefully rather than crashing.

[edit]PDF rendering

os-console supports in-terminal PDF rendering using the pdfium-render library β€” Rust bindings to Chromium's pdfium. PDF pages are rendered to RGB bitmaps and displayed using the Kitty graphics protocol as the primary path, with Sixel as a fallback and an error for terminals that support neither. This is pixel rendering, not text extraction.

[edit]Three-Ring Architecture placement

os-console is a client of the Three-Ring Architecture, not a ring itself. It connects to Ring 1 services through the authorization layer β€” service-input via F12, `service-people` via F2, `service-email` via F3, and service-fs; to Ring 2 services including `service-content` and `service-search`; and to the Ring 3 service `service-slm` via Doorman at http://localhost:8011. os-console is the human interface through which an operator instructs the rings.

[edit]See also

Category:Systems
Last edited:
Edit this page Β· View source