Mirror of the public Nokido wiki (source of truth: https://github.com/Nokido-labs/nokido/wiki/09-TUI-Reference). Edits belong there.
Updated: 2026-09-29
Nokido ships a terminal UI for multi-agent orchestration. Launch :
python tools/nokido_tui.py
(nokido-cli is the plain terminal client, not this TUI.)
One pane per agent, 10 switchable views, a PTY widget and 23 slash commands (20 from the
v13.6 set in app/tui_adapters/commands_adapter.py, plus /clear, /help, /ssh).
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ STATUS โ CLAUDE โ GEMINI โ CODEX โ
โ โ โ โ โ
โ hub: UP โ > prompt โ > question โ > command โ
โ ring: 0 โ ...reply.. โ ...reply.. โ ...reply... โ
โโโโโโโโโโโโโโผโโโโโโโโโโโโโโผโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ CLINE โ MASTER โ RAG (Ctrl+K to toggle) โ
โ โ (owner) โ recent anchors + lessons โ
โโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Compose box โ @target message โ Ctrl+B broadcast โ Ctrl+Q quit โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The BINDINGS list of tools/nokido_tui.py, as of 2026-09-29 :
| Key | Action |
|---|---|
Tab |
Focus next pane |
Ctrl+B |
Broadcast message to all (@all) |
Ctrl+K |
Toggle RAG pane (not Ctrl+M: terminals send it as Enter) |
Ctrl+E / Ctrl+S / Ctrl+T |
Toggle evolution / services / tasks view |
Ctrl+D / Ctrl+V / Ctrl+F |
Toggle health / events / forge view |
Ctrl+G |
Toggle RBAC view |
Ctrl+P |
Toggle PTY widget (interactive shell) |
Ctrl+U |
Filter panes with unread messages |
Ctrl+L |
OPSEC lock (mute the LLM panes) |
Ctrl+R |
Refresh all panes |
Ctrl+Q |
Quit |
F1 |
Help modal |
F3 |
Cycle through views |
0โ9 |
Jump to view N (0 = none, 1 services, 2 tasks, 3 health, 4 events, 5 forge, 6 RAG, 7 evolution, 8 RBAC, 9 PTY) |
| Key | Action |
|---|---|
Enter |
Send message to focused pane's agent |
Ctrl+Enter |
Insert newline |
@<agent> |
Prefix to direct-message (@claude, @gemini, โฆ) |
@all |
Broadcast to every connected agent |
Type any of these in the compose box. Source : app/tui_adapters/commands_adapter.py
(20) and tools/nokido_tui.py (/clear, /help, /ssh). /cmds lists them live.
| Command | What it does |
|---|---|
/run <cmd> |
Shell via the hub run tool, with a danger check |
/rag <query> ยท /mem <query> |
RAG search via the hub (/mem is an alias) |
/agentic <skill> ยท /disco |
Competence check + library lookup (/disco alias) |
/evolve [status] ยท /loop ยท /apply |
State of forge_self_patcher + auto-evolution loop (aliases) |
/role [name] |
Switch or list roles via the hub role tool |
/model [name] |
Switch the Ollama provider / list |
/ollama [list\|show <m>\|ps] |
Relay to the Ollama API |
/audit |
Open :7400/reports in the browser |
/code <spec> |
Run the software-creator pipeline |
/test [path] |
Run pytest via the hub (timeout 90 s) |
/sandbox <python code> |
Execute via the hub run action=python (timeout 60 s) |
/nlu <text> |
Classify intent via forge_nlu (chat / action / rag) |
/estim |
Token-cost monitor report |
/chain <agents...> |
forge_handoff swarm execution |
/scan |
Opens :7400/recon โ a page removed with the offensive-surface separation (2026-09-27) : dead link, to fix in the adapter |
/cmds |
List every slash command |
/ssh <host> |
PTY SSH |
/clear ยท /help |
Clear the pane ยท help modal (F1) |
0โ9 to jump)0 none (the agent chat grid alone) ยท 1 services ยท 2 tasks (mailbox + jobs) ยท
3 health (heartbeats, latencies, errors) ยท 4 events (Deno bus stream) ยท 5 forge ยท
6 RAG ยท 7 evolution (EVOLUTION_TREE) ยท 8 RBAC ยท 9 PTY. Each view has its adapter
in app/tui_adapters/.
Embedded interactive shell powered by asyncssh + pyte (app/tui_adapters/pty_adapter.py). Useful for :
python -c "..." against the local venv.Exit with Ctrl+D.
The TUI keeps its session (focused pane, unread counters for Ctrl+U, layout) and
persists it between launches in nokido_persist/tui_session.json.
Top-left STATUS pane shows :
hub : UP / DOWN / LAG (latency >2s on /health).ring : your current ring.OPSEC : OFF / ON (Ctrl+L toggle โ hides cloud LLM panes).agents : count of connected agents.mailbox : unread message count.Shows :
forge_*.py edits + their RAG centrality.anchor_solution() entries.Agent panes come from the AGENTS list of tools/nokido_tui.py (id, label, color,
tag) : add an entry and relaunch the TUI โ compose() builds one AgentPaneWidget per
entry. A new view is an adapter in app/tui_adapters/ plus its binding.
Edit the BINDINGS list in tools/nokido_tui.py, then relaunch.
| Path | What's in it |
|---|---|
nokido_persist/tui_session.json |
Session state, unread counters, pane layout. |
| per-agent heartbeats | Read by the health / forge adapters. |
| the hub's RAG base | All RAG content. Read-only for the TUI. |
pyte >= 0.8.2 and Windowsproxy_deno/web_hub to be running.pytest tests/test_tui_adapters_*.py.PYTHONIOENCODING=utf-8 and PYTHONUTF8=1.3).commands_adapter isapp/tui_adapters/commands_adapter.py.