VibeTunnel: терминал вашего Mac в браузере — управление AI-агентами откуда угодно
📂 Исходный код на GitHubOpen-source инструмент (MIT), который превращает любой браузер в терминал вашего Mac: проксирует терминальные сессии в веб-интерфейс, чтобы запускать команды и следить за AI-агентами (Claude Code и другими) с телефона или чужого компьютера — без SSH и проброса портов.
VibeTunnel — open-source инструмент (лицензия MIT), который делает ровно то, что обещает его слоган: превращает любой браузер в терминал вашего Mac. Вы запускаете команды локально через обёртку vt, а весь ввод-вывод в реальном времени проксируется в веб-интерфейс. Отсюда главный сценарий проекта: вы запустили Claude Code или другой терминальный AI-агент на домашнем Mac, ушли по делам — и проверяете прогресс агента или долгую сборку с телефона, планшета или чужого ноутбука. Без SSH-ключей, без проброса портов, без настройки.
Проект активно развивается: около 4,7 тыс. звёзд на GitHub, больше двух тысяч коммитов, есть документация на docs.vibetunnel.sh, сообщество в Discord и релизы под macOS и Linux.
Зачем это на практике
Авторы формулируют три типовых случая:
- проверить, чем занят ваш AI-агент, пока вас нет рядом с рабочей машиной;
- мониторить долгую сборку или тесты с телефона;
- показать терминальную сессию коллеге без настройки SSH.
Из полезных мелочей: индикаторы активности показывают, какие сессии активны, а какие простаивают; все сессии записываются в формате asciinema, так что историю можно проиграть заново; ваши shell-алиасы и функции работают через vt без дополнительных настроек.
Установка
Есть два основных варианта.
Нативное macOS-приложение (рекомендуется для Mac): живёт в строке меню, управляет сервером и обновляется автоматически. Требуется Apple Silicon (M1+) и macOS 14+; Intel-Маки не поддерживаются.
brew install --cask vibetunnel
npm-пакет (Linux, Docker, headless-системы, Intel-Маки): тот же сервер с веб-интерфейсом, но без приложения в строке меню. Нужен Node.js от 22.12 до 24.x. Windows пока не поддерживается.
npm install -g vibetunnel
Можно и совсем без установки:
# Local server without auth
npx -y vibetunnel --no-auth
# Quick share via ngrok
npx -y vibetunnel --no-auth --ngrok
Быстрый старт
- Запустите VibeTunnel (иконка в строке меню или команда
vibetunnel). - Откройте дашборд на
http://localhost:4020. - Запускайте команды через обёртку
vt— их вывод появится в браузере:
# Run any command and see it in the browser
vt pnpm run dev
vt npm test
vt python script.py
# Your shell aliases work as-is
vt gs
vt claude-danger
# Open an interactive shell
vt --shell
Под капотом vt — это bash-скрипт вокруг vibetunnel fwd: он создаёт сессию, выделяет PTY (сохраняются цвета и управление курсором), проксирует ввод-вывод между вашим терминалом и браузером и корректно обрабатывает сигналы и коды выхода. Если установлен и Mac-апп, и npm-пакет, vt автоматически выберет реализацию от Mac-приложения.
У vt есть режимы управления заголовком сессии (--title-mode none|filter|static) и уровни детализации логов от -q (тихо, только в файл ~/.vibetunnel/log.txt) до -vvv (полная отладка). Внутри сессии можно переименовать её на лету: vt title "Building Production Release".
Удалённый доступ
Локально всё работает из коробки; чтобы достучаться до терминала извне, проект предлагает шесть вариантов:
| Вариант | Суть |
|---|---|
| Tailscale (рекомендуется) | Приватный WireGuard-VPN между вашими устройствами; режимы Private (только ваш tailnet) и Public через Tailscale Funnel; автоматический HTTPS |
| ngrok | Публичный HTTPS-URL за минуту; удобно для быстрого шаринга, бесплатный URL меняется при перезапуске |
| Локальная сеть | Режим Network и доступ по http://[ip-мака]:4020 |
| Cloudflare Quick Tunnel | cloudflared tunnel --url http://localhost:4020 |
| Pinggy | Интеграция в настройках, есть токены для постоянного поддомена |
| Pangolin | Интеграция через Newt; креды хранятся в Keychain |
Tailscale-интеграция самая проработанная: VibeTunnel сам находит CLI, умеет поднимать Tailscale Serve с автоматически выдаваемыми SSL-сертификатами и переключением между приватным и публичным доступом прямо из настроек.
Git Follow Mode
Отдельная фича для тех, кто работает с AI-агентами через Git worktree. Идея: агент трудится в worktree, а ваш основной чекаут остаётся открытым в IDE — и при переключении агентом ветки основной репозиторий автоматически переключается следом.
Как это устроено:
- VibeTunnel ставит лёгкие Git-хуки (
post-commit,post-checkout) в worktree; - при смене ветки в worktree основной репозиторий чекаутит ту же ветку;
- если в основном репозитории есть незакоммиченные изменения, синхронизация ставится на паузу, чтобы ничего не потерять;
vt unfollowснимает хуки и восстанавливает прежние.
# Create a worktree for agent development
git worktree add ../project-agent feature/new-feature
# Enable follow mode from the main repo
cd ../project && vt follow
# Disable
vt unfollow
Ваш Xcode или другая IDE, запущенный dev-сервер и прочие инструменты продолжают работать без перезапуска — репозиторий просто «едет» за агентом.
Аутентификация и безопасность
Пять режимов на выбор:
- Системная аутентификация (по умолчанию) — логин и пароль аккаунта macOS; на Linux — PAM.
- Переменные окружения —
VIBETUNNEL_USERNAMEиVIBETUNNEL_PASSWORDдля деплоев. - SSH-ключи — Ed25519-ключи из
~/.ssh/authorized_keys, есть флаг полного запрета паролей. - Без аутентификации — только для доверенных окружений.
- Local bypass — только для разработки; в проде требует
--local-auth-token.
Сессии браузера подписываются JWT; секрет генерируется один раз в ~/.vibetunnel/jwt-secret с правами только для владельца и переживает перезапуски сервера. В рекомендациях по безопасности авторы настаивают: всегда включайте аутентификацию при бинде на внешние интерфейсы, используйте HTTPS через обратный прокси (nginx, Caddy) и по умолчанию выбирайте самый строгий режим.
Архитектура
Три компонента:
- macOS-приложение в строке меню — нативное Swift-приложение, управляющее жизненным циклом сервера;
- Node.js-сервер — TypeScript-сервер, обрабатывающий терминальные сессии; распространяется как standalone-исполняемый файл со встроенными модулями (есть нативный форвардер на Rust);
- веб-фронтенд — современный интерфейс на Lit-компонентах и ghostty-web.
Качество поддерживается тестами с порогами покрытия в CI: 75% для macOS/iOS (Swift Testing), 80% для веба (Vitest). Есть экспериментальный нативный iOS-клиент, но авторы честно предупреждают: он пока в работе и для продакшена не рекомендуется.
Кому смотреть
VibeTunnel создали Mario Zechner, Armin Ronacher, Peter Steinberger, Helmut Januschka и Manuel Maly. Если ваш рабочий день устроен вокруг терминальных AI-агентов вроде Claude Code и вы хотите заглядывать в их сессии откуда угодно — это один из самых простых способов: одна команда, один браузер, ноль настройки SSH. Исходники под MIT лежат на GitHub, подробная документация — на docs.vibetunnel.sh.
Источник: https://github.com/amantus-ai/vibetunnel