Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
72
66%
Does it follow best practices?
Impact
80%
1.37xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./nanobot/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 conveying a unique capability around tmux session automation. Its main weaknesses are the lack of an explicit 'Use when...' clause and limited coverage of natural trigger terms users might employ. Adding trigger guidance and more user-facing keywords would improve skill selection accuracy.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user needs to interact with a tmux session, control interactive CLI tools, or read terminal output programmatically.'
Include additional natural trigger terms like 'terminal session', 'TUI', 'send keys', 'terminal multiplexer', or 'read terminal' to improve matching with common user phrasing.
| 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 output), but lacks an explicit 'Use when...' clause. The 'when' is only implied by the description of capabilities. | 2 / 3 |
Trigger Term Quality | Includes good terms like 'tmux', 'keystrokes', 'pane output', and 'interactive CLIs', but misses common user variations like 'terminal multiplexer', 'terminal session', 'send keys', 'read terminal output', or 'TUI'. Users might not naturally say 'scraping pane output'. | 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 given the unique combination of tmux, keystrokes, and pane output. | 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 skill with concrete executable commands covering tmux session management, input sending, output capture, and multi-agent orchestration. Its main weaknesses are the lack of explicit error handling/validation steps in workflows and some content (orchestration section, Windows notes) that could be trimmed or moved to separate files for better progressive disclosure.
Suggestions
Add explicit validation/error recovery steps to the quickstart workflow (e.g., check if session was created successfully before sending keys, handle case where tmux is not installed).
Move the 'Orchestrating Coding Agents' section to a separate reference file (e.g., ORCHESTRATION.md) and link to it from the main skill to improve conciseness and progressive disclosure.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Generally efficient with mostly command-focused content, but the orchestrating coding agents section is lengthy and could be a separate file. The Windows/WSL section and some tips are somewhat unnecessary for Claude. The skill is reasonably lean but has room for tightening. | 2 / 3 |
Actionability | Provides fully executable, copy-paste ready bash commands throughout — socket setup, session creation, send-keys, capture-pane, wait-for-text, cleanup, and multi-agent orchestration. All commands include concrete flags and arguments. | 3 / 3 |
Workflow Clarity | The quickstart shows a clear sequence (create socket dir → start session → send keys → capture output → print monitor commands), and the orchestration section shows a polling workflow. However, there are no explicit validation checkpoints or error recovery steps for when tmux commands fail or sessions don't start properly. | 2 / 3 |
Progressive Disclosure | Well-organized with clear section headers and references to helper scripts ({baseDir}/scripts/). However, the orchestrating coding agents section is quite long and could be split into a separate file. No bundle files were provided, so referenced scripts like find-sessions.sh and wait-for-text.sh can't be verified, but the references are one-level deep and clearly signaled. | 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 | |
2666582
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.