Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
74
66%
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 technically specific, clearly communicating the skill's capabilities around tmux session automation. Its main weakness is the absence of an explicit 'Use when...' clause, which limits Claude's ability to know exactly when to select it. Adding trigger guidance and a few more natural user terms would strengthen it.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user needs to interact with tmux sessions, automate terminal commands, send keystrokes to running processes, or read output from tmux panes.'
Include additional natural trigger terms users might say, such as 'terminal multiplexer', 'send-keys', 'capture-pane', 'automate terminal', or 'control running process'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple concrete actions: 'remote-control tmux sessions', 'sending keystrokes', and 'scraping pane output'. These are specific, actionable capabilities rather than vague language. | 3 / 3 |
Completeness | Clearly answers 'what does this do' (remote-control tmux sessions by sending keystrokes and scraping 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', 'tmux send-keys', 'capture-pane', or 'screen scraping'. Users might also say 'automate terminal' or 'control terminal session'. | 2 / 3 |
Distinctiveness Conflict Risk | Very distinct niche — tmux session control via keystrokes and pane scraping is highly specific and unlikely to conflict with other skills. The combination of 'tmux', 'keystrokes', and 'scraping pane output' creates a clear, unique identity. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
64%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 for tmux session control with concrete, executable commands throughout. Its main weaknesses are the lack of validation/feedback loops in workflows (e.g., send input → verify output changed → retry if needed) and some unnecessary content like basic session management commands that Claude already knows. The 'Sending Input Safely' pattern and Claude Code-specific sections add genuine value.
Suggestions
Add an explicit workflow with validation: after sending keys, capture output to verify the expected state change occurred, with a retry/error path if it didn't (e.g., send 'y' → sleep → capture-pane → grep for expected output → retry if not found).
Remove or significantly trim the basic Session Management section (new/kill/rename) as these are standard tmux commands Claude already knows.
Consider trimming the 'When to Use' / 'When NOT to Use' sections to a more concise format—a single sentence or two would suffice for boundary-setting.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient but includes some unnecessary content. The 'When to Use' and 'When NOT to Use' sections add moderate value but are somewhat verbose. The session management section (create/kill/rename) is basic tmux knowledge Claude already knows. The Notes section at the end is lean and useful. | 2 / 3 |
Actionability | Every section provides concrete, copy-paste ready bash commands. The examples cover real scenarios like capturing output, sending keys safely, checking session status, and approving prompts. The commands are fully executable with specific flags and targets. | 3 / 3 |
Workflow Clarity | The skill presents individual commands clearly but lacks explicit multi-step workflows with validation checkpoints. The 'Sending Input Safely' section hints at a sequence (split text and Enter, use sleep) but there's no feedback loop for verifying that input was received or that the expected output appeared after sending keys. For interactive session control, a capture-verify-retry pattern would be important. | 2 / 3 |
Progressive Disclosure | The content is well-organized with clear headers and logical grouping, but everything is in a single file. The Claude Code Session Patterns section and the general tmux commands could potentially be split, though the total length is moderate enough that this is borderline. The table for example sessions is a nice touch but the overall structure is somewhat flat. | 2 / 3 |
Total | 9 / 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 | |
af8bd5f
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.