
madappgang/tmux-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Быстрый и быстрый сервер tmux mcp
Обзор
Агент-ориентированный MCP-сервер для tmux — нативное обнаружение процессов, интеллектуальные триггеры и одна ручка: слот. Установленный tmux, Go 1.26.1+ или готовый двоичный код. Добавьте конфигурацию клиента MCP (~/.claude/settings.json для Claude Code): Получите терминал и запустите в нем что-то — ни вызова настройки, ни ручки для переноски: Агенты кодирования ИИ (Claude Code, Codex CLI, Gemini CLI, opencode) нуждаются в терминальном управлении. Существующие MCP-серверы рассматривают tmux как тупую трубу: отправляют команду, проводят опрос для вывода, повторяют. Агент запускает npm run dev и должен знать, когда сервер, а не когда он произвел какой-либо вывод. Агент запускает миграцию базы данных и должен определить, когда psql, а не угадывать из текста экрана. - Агент связывает пять операций и не может позволить себе поиск в оба конца между каждым шагом. Агент наблюдает за сборкой в фоновой панели, выполняя другую работу. Этот проект решает эти четыре проблемы напрямую. Это быстро и без зависимостей, но работает только с безголовыми терминалами.
Обзор (машинный перевод)
Агент-ориентированный MCP-сервер для tmux — нативное обнаружение процессов, интеллектуальные триггеры и один Ручка: слот.
Быстрый старт
Предпосылки: установленный tmux, Go 1.26.1+ или готовый двоичный код.
Добавьте конфигурацию клиента MCP ([T0]) для кода Клода:
Получите терминал и запустите в нем что-то — ни вызова настройки, ни ручки для переноски:
Почему это существует
Агенты кодирования ИИ (Claude Code, Codex CLI, Gemini CLI, opencode) нуждаются в терминальном управлении. Существующие MCP-серверы рассматривают tmux как тупую трубу: отправляют команду, проводят опрос для вывода, повторяют.
Эта модель ломается четырьмя способами:
Агент начинает npm run dev и должен знать, когда сервер ** готов **, а не когда
Он производил любую продукцию.
Агент запускает миграцию базы данных и должен определить, когда psql ожидает
Пароль ** — не угадайте из текста экрана.
Агент связывает пять операций и не может позволить себе поиск между каждым шагом.
Агент наблюдает за сборкой в фоновом панеле, выполняя другую работу.
Этот проект решает эти четыре проблемы напрямую.
##Сравнение
| | nickgnd/tmux-mcp | ht-mcp | mcp-interactive-terminal | tmux-mcp (это) [скрыто] [скрыто] [скрыто] [скрыто] [скрыто] | Язык | TypeScript | Rust | Node.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
tmux-mcp
Agent-oriented MCP server for tmux — native process detection, smart triggers, and one handle: the slot.
Quick start
Prerequisites: tmux installed, Go 1.26.1+ or a pre-built binary.
# Install via Go
go install github.com/MadAppGang/tmux-mcp/v2@latest
# Or build from source
git clone https://github.com/MadAppGang/tmux-mcp
cd tmux-mcp && go build -o tmux-mcp .
Add to your MCP client config (~/.claude/settings.json for Claude Code):
{
"mcpServers": {
"tmux": {
"command": "tmux-mcp",
"args": ["--shell-type", "zsh"]
}
}
}
Get a terminal and run something in it — no setup call, no handle to carry:
// A pane beside the agent is created on first use. Synchronous: blocks until
// the command finishes, and returns output plus the exit code.
{"tool": "execute-command", "params": {"command": "go build ./..."}}
// → {"slot": 1, "created": true, "output": "", "exitCode": 0, "timedOut": false}
// The same slot is the same pane next time.
{"tool": "capture-pane", "params": {}}
// → the pane's text, with structuredContent {"slot": 1}
Why this exists
AI coding agents (Claude Code, Codex CLI, Gemini CLI, opencode) need terminal control. Existing MCP servers treat tmux as a dumb pipe: send a command, poll for output, repeat.
That model breaks down in four ways:
- An agent starts
npm run devand needs to know when the server is ready — not when it produced any output. - An agent runs a database migration and needs to detect when psql is waiting for a password — not guess from screen text.
- An agent chains five operations and cannot afford a lookup round-trip between each step.
- An agent watches a build in a background pane while doing other work.
This project solves those four problems directly.
Comparison
| nickgnd/tmux-mcp | ht-mcp | mcp-interactive-terminal | tmux-mcp (this) | |
|---|---|---|---|---|
| Language | TypeScript | Rust | Node.js | Go |
| Tools | 13 | 6 | 7 | 13 |
| Dependencies | Node.js / npx | None | Node.js + node-pty | None (single binary) |
| Binary size | ~node_modules | ~4MB | ~node_modules | ~7MB |
| Async monitoring | No | No | No | Yes (blocking tools with progress notifications) |
| Process input detection | No | No | Heuristic | Native OS (kernel-level) |
| Structured JSON output | Partial | No | No | Yes (all tools) |
| Addressing | pane IDs the agent must track | one session | one shell | Stable slot numbers; no IDs anywhere |
| Invisible panes | No | Only invisible | Only invisible | Either, per slot (isolated) |
| Works beside the user | No | No | No | Yes — panes open in the window they are looking at |
| execute-command | Polling | N/A | Heuristic | Synchronous (tmux wait-for) |
ht-mcp is fast and dependency-free but works only with headless terminals it creates itself. It cannot attach to existing sessions or manage pane layouts.
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →Конфигурация
{
"mcpServers": {
"tmux": {
"command": "tmux-mcp",
"args": ["--shell-type", "zsh"]
}
}
}