2.1 KiB
2.1 KiB
| id | type | title | tags | importance | confidence | created | updated | relations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 230a1d01-d47b-46ee-91f1-7388e3255b19 | decision | Decision: mcp-tui-driver chosen over mcpterm for TUI testing |
|
0.7 | 0.8 | 2026-03-02T00:38:13.416653+00:00 | 2026-03-02T00:38:32.468312+00:00 |
|
Architecture Decision: TUI Testing MCP Server Selection
Context
Needed an MCP server to enable Claude Code to automate and test TUI (terminal UI) applications.
Options Evaluated
mcpterm (Go)
- Only 2 tools
- Proof-of-concept quality
- Single session only
- Minimal feature set
mcp-tui-driver (Rust)
- 23 tools
- Playwright-like design philosophy
- Multi-session support
- PNG screenshots for visual verification
- Accessibility snapshots with element references (structured, not just raw text)
- Mouse support (click, double-click, right-click, coordinate-based)
- Proper wait primitives (
tui_wait_for_text,tui_wait_for_idle) - Asciicast recording
- JS scripting via
tui_run_code
Decision
Chose mcp-tui-driver. The accessibility snapshot approach (element references rather than raw terminal text) and proper wait primitives make systematic test development practical. mcpterm is too minimal for anything beyond simple PoC work.