18 tools with basic schemas and descriptions, but significant gaps in parameter documentation, error handling, and output schema clarity. Most tools lack descriptions of what they return. Parameter descriptions are minimal (e.g., 'Name of the tmux session' without format/constraint guidance). No error recovery guidance. Destructive tools (kill_session, execute_libtmux_command) lack confirmation patterns. Tool naming is generally verb-first but some are redundant (switch_window, switch_window_by_name, switch_window_by_index). Output schemas inferred from models.py but not explicitly documented in tool definitions. Average tool description ~60 chars, below the 194-char baseline for A+ tools.
Create a new tmux session with the default name.
Create a new window in the default tmux session. If should_attach is False, the new window will not be attached.
Execute an arbitrary libtmux command.
Get the content of a specific tmux pane in the default session.
Get information about a specific tmux pane in the default session.
Get information about all tmux sessions, windows, and panes.
Get information about a specific tmux session.
Destructive operations lack confirmation/dry-run patterns. kill_session() and execute_libtmux_command() can cause irreversible data loss without agent confirmation.
Output schemas not documented in tool definitions. Models exist (TmuxSession, TmuxWindow, TmuxPane) but tool docstrings do not describe return structure, forcing LLMs to infer field names and types.
Redundant tool names create LLM confusion. Three separate tools (switch_window, switch_window_by_name, switch_window_by_index) do nearly the same thing. Consolidate into one tool with overloaded parameters or clear naming distinction.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | <=2025-11-25 | v2 |
Get information about a specific tmux window in the default session.
Kill the default tmux session.
List all panes in a specific tmux window in the default session.
List all tmux sessions.
List all windows in the default tmux session.
Send a command to a specific tmux window/pane in the default session.
Switch to a specific pane in a tmux window by index.
Switch to a specific tmux window in the default session.
Switch to a specific window in the default tmux session by index.
Switch to a specific window in the default tmux session by name.
Use a specific tmux session.
Error handling lacks recovery guidance. get_session_info() silently sets session_name to 'No such session: X' instead of raising a structured error with actionable next steps (e.g., 'Try list_sessions() to see available sessions').
Parameter descriptions are minimal and lack constraints. 'Name of the tmux session' does not specify format, length limits, or valid characters. LLMs cannot validate input before calling.