Surf CLI
Surf управляет вашим Chrome из командной строки: агент открывает страницы, читает дерево доступности, кликает и снимает сеть
- 687 ★ репозитория
- Последний коммит
Широкий доступ
Почему такой уровень
- Видит и меняет любые открытые страницы под вашими входами: почту, банк, админки
- Сетевой лог записывает запросы страниц, включая заголовки с токенами
- Удаленный режим открывает управление браузером клиенту с ключом Ed25519
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/surfОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Видит и меняет любые открытые страницы под вашими входами: почту, банк, админки
- Сетевой лог записывает запросы страниц, включая заголовки с токенами
- Удаленный режим открывает управление браузером клиенту с ключом Ed25519
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Surf — CLI, через который ИИ-агент управляет браузером на вашей машине. Расширение для Chrome соединяется с нативным хостом, а команда `surf` общается с ним по сокету Unix. Агенту не нужен сервер MCP: любая программа, которая умеет запускать команды, годится. Команды `surf go`, `surf read`, `surf click e5` и `surf snap` открывают страницу, возвращают дерево доступности со ссылками на элементы, нажимают нужный элемент и делают снимок. Снимки экрана автоматически уменьшаются до 1200 пикселей, чтобы экономить токены, а действия сами возвращают снимок. Сеть логируется, пока Surf активен, поэтому запросы страницы можно фильтровать и повторять. Есть эмуляция устройств, запись анимации и видео, аудит производительности и семантические команды `locate.role` и `locate.text`. Отдельная возможность — запросы к ChatGPT, Gemini, Perplexity, Grok и AI Studio через уже открытые в браузере входы, без API-ключей. Для параллельной работы нескольких агентов служат сессии `session.ensure`, для чужой машины в Tailnet — удаленный режим с ключами Ed25519. Скилл `surf` для агентов ставится вместе с CLI.
Для кого. Разработчикам, у которых Claude Code, Codex или собственный агент должны работать в уже залогиненном браузере, и тем, кому неудобно настраивать сервер MCP ради автоматизации страниц.
Подходит, если
- Агенту нужно пройти по сайту под вашим входом: личный кабинет, админка, внутренний сервис
- Страница не отдает данные через API, и их надо прочитать из дерева доступности или из сетевых запросов
- Нужно сверстать интерфейс и снять мобильные снимки через эмуляцию устройств, не выходя из терминала
- Несколько агентов работают одновременно, и каждому нужна своя вкладка без конфликтов
- Ветку или ленту соцсети проще получить целиком записями, чем заставлять агента прокручивать страницу
Не подходит, если
- Нужна автоматизация в браузере без графической оболочки: на сервере без Xvfb и VNC первый вход не настроить
- Задача идет на страницах `chrome://` или в Chrome Web Store: Chrome их не отдает
- Нужен изолированный браузер без ваших входов и cookies: Surf работает в вашей учетной записи
Пример запроса к агенту
Открой страницу заказов в моем Chrome, собери номера и суммы из таблицы и сохрани их в CSVОграничения
Surf не управляет страницами `chrome://` и Chrome Web Store: это ограничение Chrome. Первая операция CDP на новой вкладке занимает 100–500 мс из-за подключения отладчика. Поддержка Linux названа экспериментальной и в боевой работе не проверена, на сервере нужны Xvfb и VNC для первого входа. Расширение придется загрузить вручную в режиме разработчика и держать этот режим включенным: иначе Chrome отключает перезагружающееся расширение. Запросы к ChatGPT, Gemini и другим сервисам идут через ваши браузерные входы и подчиняются их правилам использования.
Как отключить. Команда `surf uninstall` убирает нативный хост для Chrome, `surf uninstall --all` — для всех браузеров и обертки. Расширение удалите на странице `chrome://extensions`, ссылки на скилл в `~/.claude/skills/surf` — вручную.
Частые вопросы
Как поставить Surf для Claude Code?
Выполните `npm install -g surf-cli` и `surf install`, загрузите расширение из выведенной папки в `chrome://extensions` и перезапустите Chrome. Ссылку на скилл в `~/.claude/skills/surf` команда установки создает сама.
Нужен ли для Surf сервер MCP?
Нет. Агент вызывает обычные команды `surf`, поэтому подходит любой, кто умеет запускать оболочку: Claude Code, Cursor, скрипты.
Какие браузеры поддерживаются?
Chrome по умолчанию, а также Chromium, Brave, Edge, Arc и Helium. Нужный браузер выбирает флаг `surf install --browser`, все сразу ставит `--browser all`.
Как дать доступ к браузеру с другой машины?
Через удаленный режим по Tailscale: на машине с браузером выполните `surf remote authorize` и `surf install --listen`, а клиенту передайте файл с ключом Ed25519. Каждому клиенту нужен отдельный ключ.
Что Surf делает с ChatGPT и Gemini?
Команды `surf chatgpt`, `surf gemini`, `surf perplexity` и другие отправляют запрос на сайт сервиса под вашим входом в браузере и возвращают ответ, API-ключ не нужен.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыАгент работает в вашем настоящем Chrome с уже выполненными входами: CLI, MCP и расширение с отдельной группой вкладок
CLI и MCP-сервер, через которые агент управляет вашим настоящим Chrome с сохраненными входами: 103 команды к 36 сайтам и автоматизация браузера
Локальная платформа автоматизации браузера: MCP-сервер, CLI и скиллы, чтобы агент управлял Chrome, заполнял формы и доставал данные со страниц
Скилл подключает агента к вашему Chrome через расширение и CLI для чтения страниц, управления вкладками и проверки действий.
CLI и скилл для управления Chrome из агента: снимок страницы, клики, консоль, сеть и аудит производительности в экономном выводе
Управление Chrome для ИИ-агентов: локальный HTTP-сервер на Go с CLI, MCP, профилями и скиллом для Claude Code
Коротко о README
README открывается сравнением Surf с другими способами управлять браузером: CLI вместо MCP, ноль настройки, работа с любым агентом. Затем идут установка для нескольких браузеров и WSL2, удаленный доступ через Tailscale, справочник команд по группам, запросы к ИИ-сервисам, сети, воркфлоу и сессии. В конце страницы собраны переменные окружения, диагностика нативного хоста и описание протокола сокета.