kittui

reference

Reference

Commands, configuration, crates and validation for kittui 0.1.7. Command output on this site comes from that release.

kittui commands

kittui --helpkitty graphics for TUIsUsage: kittui [OPTIONS] <COMMAND>Commands:  build-info  Print exact binary provenance, app schema and runtime capabilities  app         Build, validate, inspect, run and test declarative kittui applications  inline      Render inline one-line components for prompts/statuslines  box         Render a box (filled, stroked, rounded) at the given footprint  gradient    Render a linear gradient strip  glow        Render a glow layer  panel       Render a tonal panel chrome scene  chip        Render a pill-shaped chip chrome scene  divider     Render a single-row divider chrome scene  wm-chrome   Render the reusable kittwm window chrome scene  wm-session  Render a kittwm SESSION_JSON manifest as window chrome scenes  title-bar   Render a title-bar chrome scene  compose     Compose a scene from a JSON file  render      Render a scene JSON file to PNG bytes without terminal placement  image       Render an image from a path/bytes through Node::Image  place       Re-place an already-uploaded image id at a terminal footprint  delete      Delete an uploaded image or one placement from the terminal  cache       Cache management subcommands  probe       Probe terminal capabilities  proof       Walk the full kitty graphics protocol surface and emit labelled output  update      Download and install a released kittui binary  mcp         Expose shared kittui tools over MCP stdio
Global optionEffect
--renderer cpu|gpu|autoChoose the renderer
--transport direct|tmux|file|memoryOverride transport detection
--json, --json-bytesDescribe the placement as JSON, optionally with the upload, placement and placeholder strings
--upload-only, --placement-only, --embed-onlyPrint just one part of the output
--scene-jsonPrint the scene instead of rendering it
--dry-runBuild everything but write no bytes
--terminal-cols, --terminal-rowsTerminal size, for percentage footprints such as -w 100%
--cache-dirCache location

kittwm commands

kittwm help topic covers each area, and kittwm quickstart, examples and cheat are the daily guides:

kittwm helpstart    launch modes, startup environment, and first terminalpanes    pane lifecycle, focus, layout, movement, and sessionsinput    text, key, mouse, bytes, paste, and semantic actionsinspect  status, panes, chrome, shortcuts, help, and text readssession  save/restore session manifestsevents   bounded event streams and typed SDK event helpersapps     app discovery and launch helpersssh      pooled SSH workflows for remote apps, displays, and terminalslog      debug log path and tailing workflowscompletions shell completion setup
HelperFor
kittwm-launchStart kittwm with a browser or other first pane
kittwm-terminalTerminal panes and text event streams, locally or remotely
kittwm-browserHeadless browser surfaces and semantic snapshots
kittwm-topA process viewer for kittwm, built on the SDK, or --json
kittwm-barA status bar that reserves its row
kittwm-demoThe mixed-source demo, with --plan to preview what this machine can run

The full socket command set is generated from the in-tree help catalogues, with tests that fail if a command is undocumented.

Environment

Every kittui flag can also come from the environment as KITTUI_COMMAND_FLAG, such as KITTUI_BOX_RADIUS; --json reports where each setting came from. The settings most worth knowing:

VariableDefaultControls
KITTUI_RENDERERautoCPU or GPU rendering
KITTUI_TRANSPORTdetectedHow graphics reach the terminal
KITTUI_KITTY_COMPRESSIONzlibFrame compression: zlib, auto or none
KITTUI_ZLIB_MIN_BYTES16384The auto threshold
KITTUI_CACHE_DIRXDG cacheWhere rendered scenes live
KITTUI_CACHE_BUDGET256 MiBDisk cache size
KITTUI_CACHE_HOT_MAX_ENTRIES, _BYTES64, 16 MiBThe in-memory hot cache
KITTWM_NATIVE_RENDERERANSIkitty draws panes with graphics
KITTWM_NATIVE_CHROME_RENDERERbuilt-inaffordance-scene draws chrome with kittui scenes
KITTWM_WORKSPACEunsetThe workspace label
KITTWM_STARTUP_TERMINALoffOpen a terminal immediately

The repository's configuration references list all 41 KITTUI_ and 63 KITTWM_ entries.

Install and build

nix profile install .#kittwm       # kittwm with every helper and the right native backendsnix run .#kittui-showcase          # the SDK studionix run .#kittwm-demo -- --plan    # what the demo would run herecargo run -p kittui-cli -- box -w 60 -h 8kittui update                      # download and install a released kittui binary

The flake builds platform-native backends by default: ScreenCaptureKit and Quartz on macOS, Xvfb on Linux. The repository also ships kittui-md, a Markdown viewer.

Crates

LayerCrates
Rendererkittui-core (scenes, geometry, colour, hashing, animation), kittui-render-cpu, kittui-render-gpu, kittui-kitty (the only crate that writes escapes), kittui-cache, kittui (the public facade)
Hostskittui-cli, kittui-ffi, kittui-sdk, ratakittui, kittui-app, kittui-affordances, kittui-tmux, kittui-overlay, kittui-watch, kittui-input, kittui-vt, kittui-ghostty-vt
Window managerkittui-wm, kittui-wm-layout, kittwm-sdk, kittui-surface, kittui-window-host, kittui-quartz, kittui-xvfb
Browserkittui-web (the WebAssembly shell), kittui-transport (the host and browser wire protocol)

Validation

Changes prove themselves before they merge:

nix run .#agent-check
One fast-failing preflight: formatting, cargo check, strict Clippy against a baseline, the focused SDK tests, a self-test of the evidence gate, and the visual golden harnesses. Each step prints PASS or FAIL.
Golden harnesses
Render, chrome and scene changes are compared pixel for pixel with checked-in images; KITTUI_REFRESH_GOLDENS regenerates them deliberately.
Evidence gate
Work is closed only with evidence that shows the feature working; an artifact that merely shows a command ran, or shows the feature broken, does not count. The gate itself is tested against good and bad fixtures.
Contract locks
Tests whose only job is to pin a behavioural contract that nothing tested before, so a later change to it has to be deliberate.
Performance self-validation
A fixed micro-workload runs in preflight and is compared with recorded budgets, so hot-path regressions are caught deterministically rather than by feel.

The kittui proof command walks the whole kitty graphics protocol surface and labels each output, for checking a terminal by eye.