Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
76
70%
Does it follow best practices?
Impact
86%
2.00xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./openclaw/skills/tmux/SKILL.mdQuality
Discovery
67%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description is concise and specific about its capabilities, clearly identifying the niche of tmux session control for interactive CLIs. Its main weaknesses are the lack of an explicit 'Use when...' clause and somewhat limited trigger term coverage for how users might naturally describe needing this functionality.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when needing to interact with running terminal processes, control tmux sessions, or automate interactive command-line tools.'
Include additional natural trigger terms like 'terminal multiplexer', 'send keys', 'capture terminal output', 'interactive process', or 'running CLI tool' to improve matching with user requests.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple concrete actions: 'remote-control tmux sessions', 'sending keystrokes', 'scraping pane output', and specifies the context of 'interactive CLIs'. These are specific, actionable capabilities. | 3 / 3 |
Completeness | Clearly answers 'what does this do' (remote-control tmux sessions by sending keystrokes and scraping pane output), but lacks an explicit 'Use when...' clause specifying when Claude should select this skill. The 'when' is only implied. | 2 / 3 |
Trigger Term Quality | Includes good terms like 'tmux', 'keystrokes', 'pane output', and 'interactive CLIs', but misses common user variations like 'terminal multiplexer', 'send keys', 'capture output', 'tmux send-keys', or 'screen scraping'. A user might say 'interact with a running process' or 'control a terminal session' which aren't covered. | 2 / 3 |
Distinctiveness Conflict Risk | Highly distinctive — tmux session control via keystrokes and pane scraping is a very specific niche. Unlikely to conflict with other skills due to the unique combination of tmux, keystrokes, and pane output scraping. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
72%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid, actionable reference skill for tmux session control with concrete, executable commands throughout. Its main weaknesses are some unnecessary sections that explain things Claude already knows (basic session management, when-to-use lists) and a lack of validation/error-recovery steps after sending input to sessions. The structure and organization are good for a reference-style skill.
Suggestions
Add a verification step after sending keys (e.g., capture-pane after send-keys to confirm input was received), especially for the Claude Code interaction patterns.
Remove or significantly trim the 'When to Use' and 'When NOT to Use' sections and the basic session management commands (new/kill/rename) to save tokens on things Claude already knows.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient but includes some unnecessary content like the 'When NOT to Use' section which is somewhat verbose, and the session management section (create/kill/rename) which overlaps with basic tmux knowledge Claude already has. The 'When to Use' checklist also adds tokens without much value. | 2 / 3 |
Actionability | Every section provides concrete, copy-paste ready bash commands with specific flags and target syntax. The examples cover real scenarios like checking for prompts with grep patterns, iterating over sessions, and the safe input pattern with sleep. | 3 / 3 |
Workflow Clarity | The Claude Code session patterns show a logical sequence (check → approve → send task), but there are no explicit validation checkpoints or error recovery steps. For example, after sending keys there's no guidance on verifying the input was received correctly or handling failures. | 2 / 3 |
Progressive Disclosure | For a skill of this size (~100 lines), the content is well-organized into logical sections with clear headers. It serves as a self-contained reference without needing external files, and the table format for example sessions aids quick scanning. | 3 / 3 |
Total | 10 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata.version' is missing | Warning |
metadata_field | 'metadata' should map string keys to string values | Warning |
Total | 9 / 11 Passed | |
0c1ec2b
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.