Tools have basic naming (verb_noun pattern) and minimal descriptions, but lack depth. Most descriptions are under 50 chars and provide no context on WHEN to use the tool or what it returns. Parameter descriptions are sparse or missing entirely. No output schemas documented. Error handling is absent, no guidance on recovery or retryability. The 'send_keys' tool is particularly concerning: it modifies state but the description does not warn of side effects or idempotency. 'describe' lacks any explanation of the hierarchy structure it returns. No tool has documented return types or pagination guidance.
Capture the contents of a tmux pane
Create a new tmux session
Describe the complete tmux server hierarchy
List all tmux panes
List all tmux sessions
List all tmux windows
Select a layout for a tmux window
Send keys to a tmux pane
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., session_id, pane_id) without knowing response structure.
Descriptions are too brief (10 - 40 chars) and lack context. 'List all tmux sessions' does not explain WHEN to call it, what structure it returns, or how to use results in downstream calls. Baseline is 194 chars for A+ tools.
State-modifying tools (create_session, send_keys, select_layout) lack warnings about side effects, idempotency, or retry safety. LLMs cannot determine if retrying is safe.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Parameter descriptions are missing or minimal. 'pane' in capture_pane is described as 'Pane ID (e.g., '%0')', the example value may be reused literally by LLMs instead of adapting to actual pane IDs. Use enum or pattern constraints instead.
No error handling guidance. Tools provide no recovery hints (e.g., 'Session already exists, try list_sessions() to find an alternative name'). Agents cannot self-correct on failures.