Development tooling for the libtmux C++ port: the parity ledger, the mutation catalogue, and the API reference generator.
8 tools with explicit schemas and descriptions, but significant quality gaps. Tool names follow verb_noun convention (list_, create_, send_, etc.), which is good. However, descriptions are inconsistent: some are detailed (send_keys, run_shell_command), others are vague or repetitive ('Inspect tmux metadata' appears twice). Parameter descriptions exist but lack actionable constraints, e.g., 'Target pane identifier' without explaining the %[0-9]+ format requirement. No output schemas documented. Error handling is minimal; no recovery guidance. Security concerns: send_keys and run_shell_command accept arbitrary shell input with no sanitization warnings. Composition is reasonable (8 focused tools), but no pagination, no batch operations, and no idempotency guarantees stated.
Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted.
Change tmux state; no client-supplied executable input.
Inspect tmux metadata; accepts no client-supplied executable input.
Delete tmux state; accepts no command payload.
Inspect tmux metadata; accepts no client-supplied executable input.
Run a shell command in a pane with your user's permissions.
Send input to a pane's program; a shell that receives it runs it with your user's permissions.
No output schemas documented. LLMs cannot plan downstream calls or extract structured data from responses. All 8 tools lack documented return types.
Parameter descriptions lack actionable constraints. 'Target pane identifier' does not explain the ^%[0-9]+$ pattern requirement. LLMs cannot infer valid formats from names alone.
Destructive tools (send_keys, run_shell_command, kill_session) accept arbitrary shell input with no sanitization guidance or confirmation step. No dry-run or confirmation pattern documented.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2025-06-18+ | v2 |
Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted.
Duplicate/vague descriptions. 'Inspect tmux metadata; accepts no client-supplied executable input' appears for both list_sessions and get_session_info. Descriptions do not explain when to use one vs the other.
No error handling guidance. Tools do not document what errors are retryable, user-fixable, or fatal. No recovery suggestions provided.