shell-use
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHELL_USE_SOCKET | No | Path to tmux socket (default: /tmux/tmux.sock in Docker) | |
| SHELL_USE_SESSIONS | Yes | Comma-separated list of allowed session names |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_sessionsA | Returns list of available tmux sessions. |
| captureC | Captures current terminal screen text. |
| send_keysC | Sends key input. Supports tmux key notation (Enter, C-c, etc.). |
| send_textA | Sends literal text via tmux buffer. Supports multiline text with \n and \t. Use enter=True for shell commands - automatically presses Enter after sending. Use enter=False (default) for editors - newlines are preserved as text. Examples: - Shell: send_text(session, "ls -la", enter=True) -> executes command - Editor: send_text(session, "line1\nline2") -> pastes two lines |
| scrollA | Navigates the scrollback buffer (half-pages by default). |
| exit_scroll_modeA | Exits tmux copy-mode and returns to normal mode. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool has a clear, distinct purpose: listing sessions, capturing output, sending key input, sending text, scrolling, and exiting scroll mode. While send_keys and send_text both handle input, their descriptions clearly differentiate key notation from literal text, and scroll/exiting scroll are complementary rather than overlapping.
Most tools follow a consistent verb_noun pattern (list_sessions, send_keys, send_text, exit_scroll_mode), but capture and scroll are single verbs. This is a minor deviation; the naming remains predictable and readable.
With 6 tools, the server is well-scoped for its purpose of interacting with tmux sessions. Each tool covers a necessary operation—listing, capturing, sending, scrolling—without unnecessary redundancy.
The tool set covers the core lifecycle of terminal interaction: list sessions, send input, capture output, and navigate history. It lacks session creation or pane management, but these are outside the stated purpose of 'shell-use', so only minor gaps exist.