Перейти к содержимому

Установка скилла для агента

Скилл-агент Santiago — это небольшой набор Markdown-инструкций, который обучает ИИ-агента для кодинга (Claude Code, Cursor, Cline, Continue, Windsurf и другие) управлять запущенным профилем браузера Santiago через локальный HTTP API. Установите его один раз на уровне пользователя — и любой агент, поддерживающий скиллы/правила, сможет автоматизировать ваши профили. Смотрите Обзор автоматизации для общей картины или сразу переходите к Запуску профилей и HTTP API.

Скилл поставляется как архив .tar.gz, содержащий:

Файл / каталогНазначение
SKILL.mdОпределение скилла: фронтматтер (name, description), инструкции по автоматизации и триггеры.
references/Вспомогательные документы, которые скилл подгружает по требованию (полный справочник API и руководства по автоматизации).
README.mdИнструкции по установке для агента. Не копируйте его в каталог установки.

После установки скилл управляет локальным демоном на вашей машине. Он не обращается ни к какому облачному серверу — каждый запрос идёт на http://localhost:7891. Вся подмена отпечатка (canvas, WebGL, аудио, шрифты, WebRTC и т. д.) выполняется автоматически запущенным профилем, а когда у профиля включён режим humanize, Camoufox добавляет к каждому действию движения курсора по кривым Безье.

Самый быстрый способ установки: вставьте это сообщение в любого ИИ-агента для кодинга. Он скачает архив, распакует его, прочитает вложенный README.md и выполнит инструкции, чтобы разместить файлы в нужном каталоге для этого агента.

Install prompt — paste into Claude Code / Cursor / Cline / etc.
Install the Santiago Browser automation skill from:
https://downloads.santiago-browser.com/skill/latest/santiago-browser-skill.tar.gz
Download this archive, extract it, read README.md inside and follow its instructions. If it's already installed, just update the files.

URL архива всегда указывает на последний релиз:

Skill archive (latest)
https://downloads.santiago-browser.com/skill/latest/santiago-browser-skill.tar.gz

Если предпочитаете установить вручную, скачайте и распакуйте архив, затем скопируйте SKILL.md и каталог references/ в глобальный каталог скиллов/правил вашего агента в домашней папке текущего пользователя.

Download and extract
curl -fsSL https://downloads.santiago-browser.com/skill/latest/santiago-browser-skill.tar.gz \
-o santiago-browser-skill.tar.gz
tar -xzf santiago-browser-skill.tar.gz
ls # SKILL.md references/ README.md
Install for Claude Code
mkdir -p ~/.claude/skills/santiago-browser
cp -R SKILL.md references ~/.claude/skills/santiago-browser/
АгентПуть установки
Claude Code~/.claude/skills/santiago-browser/
Cursor~/.cursor/rules/santiago-browser/
Cline / Continue / Windsurfкаталог пользовательских инструкций / правил агента
Другойглобальный каталог Markdown-скиллов/правил вашего рантайма (на уровне пользователя, не проекта)

Если не уверены, где ваш рантайм хранит глобальные скиллы, уточните перед копированием.

После копирования откройте SKILL.md в каталоге установки и убедитесь, что фронтматтер цел:

SKILL.md frontmatter
name: santiago-browser
description: Control a running Santiago anti-detect browser profile via HTTP API. Use when the user needs to navigate pages, fill forms, click buttons, take screenshots, extract data, or automate any browser task inside a Santiago profile.
  • Обновление: замените содержимое каталога установки файлами из более нового архива. Миграция не нужна.
  • Удаление: удалите каталог santiago-browser/ из каталога установки.

Скилл активируется автоматически, когда вы просите агента автоматизировать профиль браузера Santiago — открыть страницу, заполнить форму, кликнуть, сделать скриншот, извлечь данные и так далее. Сначала должны выполняться два условия:

  1. Приложение Santiago запущено, и демон слушает на http://localhost:7891. Скилл всегда обращается только к localhost — агенту не нужны никакие облачные учётные данные.
  2. Целевой профиль запущен (статус running). Запустите его из интерфейса приложения или через API (см. Запуск профилей). Если профиль не запущен, вызовы автоматизации возвращают 404 PROFILE_NOT_RUNNING.

Скилл ожидает ID профиля в переменной окружения с именем $PROFILE. Встроенный агент получает ID профиля в своём системном промпте; внешний агент должен запросить ID у вас или вывести список доступных профилей и дать вам выбрать.

Find a profile ID
curl -s localhost:7891/api/profiles | jq '.data[] | {id, name, status}'
Pin the profile for the session
PROFILE=<profile-id>

Каждый ответ от демона и эндпоинтов автоматизации использует один и тот же конверт:

Response envelope
{ "ok": true, "data": { } }
Error envelope
{ "ok": false, "error": { "code": "PROFILE_NOT_RUNNING", "message": "..." } }

Это пошаговое руководство проведёт вас от запущенного профиля до заполненной и отправленной формы. База демона — http://localhost:7891/api; база автоматизации — http://localhost:7891/api/automation/$PROFILE/<action>.

Check status
curl -s localhost:7891/api/profiles/$PROFILE/status | jq .data.status

Если статус не running, запустите профиль (это возвращает асинхронный 202 и требует активной лицензии плюс свободного слота параллельных сессий):

Launch the profile
curl -s localhost:7891/api/profiles/$PROFILE/launch -X POST

Статусы профиля: idle, launching, running и stopping; профиль, используемый на другом устройстве, показывается как locked.

Navigate
curl -s localhost:7891/api/automation/$PROFILE/navigate -X POST \
-H 'Content-Type: application/json' -d '{"url":"https://example.com"}'

Сделайте один снимок, чтобы понять страницу и определить все нужные элементы перед действиями.

Snapshot
curl -s localhost:7891/api/automation/$PROFILE/snapshot -X POST | jq -r .data.snapshot

fill-page — основной эндпоинт для форм: он заполняет текстовые поля и выпадающие списки combobox и отправляет форму — всё одним координатным вызовом, который работает на анимированных страницах и страницах с переходами.

Fill and submit a form
curl -s localhost:7891/api/automation/$PROFILE/fill-page -X POST \
-H 'Content-Type: application/json' -d '{
"fields": [
{"selector": "#email", "value": "user@example.com"},
{"selector": "#password", "value": "secret123"},
{"selector": "[role=combobox]", "value": "Option A", "type": "combobox"}
],
"submit": {"text": "Sign in"},
"waitAfterSubmit": 2000
}'

Страница изменилась, поэтому любые ссылки на элементы из шага 3 теперь устарели — сделайте свежий снимок, чтобы прочитать результат.

Re-snapshot after submit
curl -s localhost:7891/api/automation/$PROFILE/snapshot -X POST | jq -r .data.snapshot

Вот и весь цикл: переход → снимок → действие → новый снимок. Агент повторяет его по мере необходимости.

Эти правила встроены в скилл, но их стоит знать, чтобы понимать, что делает агент:

  • Один снимок, один пакет. Сделайте один снимок, определите все цели, затем отправьте один пакет действий. Не делайте новый снимок между действиями на одной странице — только после перехода, отправки формы на новую страницу или появления модального окна, заменяющего содержимое.
  • evaluate работает только на чтение. Скилл использует evaluate только для чтения DOM (заголовки, текст, ограничивающие прямоугольники). Он никогда не взаимодействует через evaluate (.click(), установка .value, отправка формы), потому что синтетические события сообщают isTrusted: false и обходят humanize, что отмечают антибот-системы. Чтобы взаимодействовать с элементом, найденным через evaluate, скилл считывает его координаты и использует mouse/click {x, y}.
  • Никаких слепых sleep. Playwright ждёт автоматически, а пакетный эндпоинт добавляет случайный джиттер 80–250 мс между действиями, поэтому скилл никогда не оборачивает вызовы в sleep. Когда ему действительно нужно дождаться сигнала, он использует действие wait с text/selector/state.
  • Используйте вложенные справочники. Перед действиями скилл сверяется со своими вложенными references/ для проверенных паттернов автоматизации и известных подводных камней.

Полный список эндпоинтов и справочник по полям смотрите в HTTP API и Справочнике API. Советы по надёжности — в Лучших практиках.

  • Требуется платный тариф. Демон проверяет вашу лицензию перед запуском или созданием профилей. Тарифы: Starter ($9/мес, 3 профиля), Pro ($59/мес, 40 профилей), Agency ($149/мес, 300 профилей + команда). Бесплатного пробного периода нет — см. Тарифы.
  • Поддерживаемые платформы: macOS (Intel и Apple Silicon), Windows и Linux (AppImage). См. Платформы.
ПроблемаРешение
404 PROFILE_NOT_RUNNINGПрофиль нужно сначала запустить (через интерфейс приложения или POST /api/profiles/$PROFILE/launch).
Скилл не активируетсяУбедитесь, что SKILL.md находится по правильному пути на уровне пользователя для вашего агента и его фронтматтер цел.
Connection refused на localhost:7891Приложение Santiago (и его демон) не запущено. Запустите приложение.
Агент выбирает не тот профильЗадайте $PROFILE явно и укажите агенту, какой профиль использовать — сам он переключаться не будет.