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

Скиллы: установка и список

Скилл — пакет инструкций и скриптов, по которому внешний ИИ-агент работает с PageCraft: собирает блоки, наполняет страницы, публикует их на витрину. Агент получает ровно те же возможности, что есть у вас в интерфейсе, — всё через REST API V1 по API-ключу.

Скиллы раздаются по стандарту agentskills.io: реестр — /.well-known/agent-skills/index.json, каждый скилл — архив рядом с ним.

Окно терминала
npx skills add https://page-craft.4partners.io -y

Команда читает реестр и ставит все скиллы в текущий харнесс. Проверено с Claude Code и Cursor; работает любой агент, понимающий agentskills.io.

Дальше агенту нужен ключ. Создайте его по инструкции API-ключи и положите в .env проекта:

Окно терминала
PAGECRAFT_API_KEY=pb_a1b2c3d4e5f6...
PAGECRAFT_AUTHOR='Имя Фамилия'

Проверить, что связка жива, можно и без агента:

Окно терминала
curl -s -H "Authorization: Bearer $PAGECRAFT_API_KEY" \
https://page-craft.4partners.io/api/v1/sites | jq '.data[] | {id, name}'

Если пришёл 401 — ключ не тот или потерялся префикс pb_.

Скиллы срабатывают сами по формулировке задачи: «собери лендинг по брифу», «сделай блок по этому скриншоту», «залей картинку в S3». Явно называть скилл не нужно — за это отвечают их описания, приведённые ниже.

Часть скиллов — оркестраторы: pagecraft-block не делает работу сам, а по мере надобности подключает узкоспециализированные скиллы (схема, вёрстка, SSR, публикация). Ставить их по одному не нужно и не имеет смысла.

Ниже — содержимое реестра на момент сборки этой страницы. Список не переписывается руками: он читается из index.json при каждой сборке, поэтому не может разойтись с тем, что реально отдаётся агентам.

PageCraft

pagecraft-pages — версия 0.13.1
Use this skill when the user asks you to build, list or publish any document in PageCraft — a page, a 4CMS template (catalog rubric, product card) or a layout document that wraps pages — by selecting blocks from the library, filling their placeholders via the V1 REST API, and optionally publishing to 4CMS. Trigger phrases include сделай страницу, собери лендинг, напиши статью на сайте, наполни рубрику, создай страницу в PageCraft, сгенерируй landing, сделай шаблон рубрики, сделай шаблон карточки товара, собери макет сайта, сделай макет с шапкой и подвалом, какие есть шаблоны, какие есть шаблоны рубрик, какие есть типы шаблонов, какие есть макеты, покажи мои страницы, наполни блоки контентом, опубликуй страницу, обнови опубликованную страницу, обнови устаревшие блоки, приведи страницу к актуальным версиям, найди где используется блок, мигрируй мажорную версию блока, сделай аудит блоков на странице.
pagecraft-s3 — версия 0.1.2
Загрузка файлов (картинки, видео, PDF, любые бинарники) в S3-хранилище сайта PageCraft с получением публичного URL — обычно перед вставкой медиа в блоки через скилл pagecraft-pages. Используй, когда пользователь говорит «залей файл в S3», «загрузи картинку для блока», «положи ассет в S3 PageCraft».
pagecraft-block — версия 0.3.0
Создание и публикация блоков и лэйаутов PageCraft по описанию или визуальному референсу (скриншот или ссылка на Figma). Используй всегда когда пользователь говорит «сделай блок», «новый блок», «создай блок», «сделай {hero/footer/...} по референсу», «сделай лэйаут», «сделай макет сайта», «сделай обёртку для страниц», «нужна шапка и подвал вокруг контента», и при правке существующего блока или лэйаута. Первым вопросом скилл уточняет, блок это или лэйаут. ВАЖНО — этот скилл orchestrator, передаёт работу под-скиллам ТОЛЬКО через тул `Skill(имя)`, не через `Read .../SKILL.md`.
pagecraft-env — версия 0.1.1
Настройка .env для PageCraft — переменные PAGECRAFT_AUTHOR (имя автора блоков) и PAGECRAFT_API_KEY (ключ доступа к API). Используй на первом запуске, при 401-ошибках от API, или когда orchestrator pagecraft-block направляет в «Фаза 1 — Окружение». Вызывай через тул `Skill(pagecraft-env)`, не через `Read .../SKILL.md`.
pagecraft-api — версия 0.5.0
Работа с PageCraft API — список блоков, отдельный блок, теги, публикация, синхронизация snapshot источников данных. Используй всегда, когда нужно «получить», «опубликовать», «синхронизировать» что-то с сервером PageCraft, а также когда orchestrator pagecraft-block ссылается на `pagecraft-api/scripts/*`. Вызывай через тул `Skill(pagecraft-api)`, не через `Read .../SKILL.md`.
pagecraft-schema-block — версия 0.4.2
Schema-блок PageCraft — поля в schema.json (text/image/color/object/array...), Liquid-шаблон с {{ props.* }}, изолированный JS, BEM-стили. Используй при создании блока с полями редактора, правке template.liquid / schema.json / script.js, выборе типов полей и валидации schema.json; всегда когда orchestrator pagecraft-block направляет в «Фаза 5 — Реализация» для schema-блока. Вызывай через тул `Skill(pagecraft-schema-block)`, не через `Read .../SKILL.md`.
pagecraft-markdown-block — версия 0.1.2
Markdown-блок PageCraft — основной контент редактируется в WYSIWYG как markdown и доступен через {{ content }}, а схема задаёт только настройки оформления (тема, размер, отступы). Используй когда основной текст блока — длинный, форматированный, редактируется как статья/документация; когда orchestrator pagecraft-block направляет в «Фаза 5 — Реализация» для markdown-блока. Вызывай через тул `Skill(pagecraft-markdown-block)`, не через `Read .../SKILL.md`.
pagecraft-block-ssr — версия 0.2.1
SSR-блоки PageCraft — bindingSlots, серверные данные (карточки товаров, избранное, корзина, отзывы), сборка стабов для preview, проверка drift'а привязок. Используй когда блок должен показывать данные с сервера, а не из полей схемы; когда orchestrator pagecraft-block направляет в «Фаза 4.5 — Источники данных»; при build-stubs / check-bindings. Вызывай через тул `Skill(pagecraft-block-ssr)`, не через `Read .../SKILL.md`.
pagecraft-block-design — версия 0.1.2
Дизайн блоков PageCraft — каталог из 20 стилевых направлений (бруталист, swiss, neumorphism, …), работа с референсом (скриншот / Figma + MCP), сравнение результата с референсом через chrome-devtools MCP, CSS-гайд (container queries, fluid typography, BEM), правила для examples блока. Используй когда выбираешь стиль без референса, есть скриншот или ссылка на Figma, нужно сверить результат с макетом, пишешь style.css блока, решаешь сколько примеров класть, или когда orchestrator pagecraft-block направляет в «Фаза 3 — Стиль» / «Фаза 7 — Сравнение». Вызывай через тул `Skill(pagecraft-block-design)`, не через `Read .../SKILL.md`.
pagecraft-block-publish — версия 0.1.2
Публикация блока PageCraft — формирование changelog (140 символов, на русском), preflight-проверка remote-версии, вызов publish-block, обработка конфликтов версий. Используй когда пользователь говорит «опубликуй», «залей», «отправь блок», «обнови блок», или когда orchestrator pagecraft-block направляет в «Фаза 9 — Публикация». Вызывай через тул `Skill(pagecraft-block-publish)`, не через `Read .../SKILL.md`.
pagecraft-folders — версия 0.2.2
Управление папками страниц в PageCraft через публичный V1 API — список/получение/создание/переименование/перемещение/удаление папок, построение иерархий и массовая реорганизация. Используй, когда пользователь говорит «создай папку», «переименуй папку», «перемести папку», «удали папку», «построй структуру папок», «покажи дерево папок».
pagecraft-block-catalog — версия 0.1.0
Отправка блока PageCraft в глобальный каталог на рассмотрение и отслеживание модерации — подать заявку, проверить статус (pending/approved/rejected), прочитать причину реджекта, отозвать заявку. Используй когда пользователь говорит «отправь в каталог», «подай блок на рассмотрение», «опубликуй в общий каталог», «какой статус заявки», «почему отклонили блок», «отозвать заявку». Вызывай через тул `Skill(pagecraft-block-catalog)`, не через `Read .../SKILL.md`.
pagecraft-collections — версия 0.1.1
Управление коллекциями блоков PageCraft через публичный V1 API — список/просмотр/создание/переименование/удаление коллекций и наполнение их блоками (добавить, убрать, переупорядочить). Используй когда пользователь говорит «создай коллекцию», «добавь блок в коллекцию», «убери блок из коллекции», «покажи коллекции», «что в коллекции», «переименуй коллекцию», «поменяй порядок блоков в коллекции», «удали коллекцию». Вызывай через тул `Skill(pagecraft-collections)`, не через `Read .../SKILL.md`.
pagecraft-provider — версия 0.1.0
Подключение провайдера публикации (сейчас 4CMS) к сайту PageCraft и проверка, какой провайдер уже привязан. Используй, когда пользователь говорит «подключи 4cms к сайту», «проверь, есть ли провайдер у сайта», «обнови 4cms-токен у сайта», «какой провайдер у сайта».

4CMS

4cms-env — версия 0.1.0
Настройка .env для работы с 4cms (витрина клиента на 4partners) — ключ FOURCMS_API_KEY (токен X-Auth-Token для api.4partners.io), из которого домен сайта (FOURCMS_DOMAIN) выводится автоматически через /info. Используй на первом обращении к 4cms, когда нужно «настроить 4cms», «подключить магазин», «добавить ключ 4cms/4partners», при ошибках 401/403 от api.4partners.io, или когда скрипт 4cms-* падает с «FOURCMS_DOMAIN not set» / «FOURCMS_API_KEY not set». Вызывай через тул `Skill(4cms-env)`, не через `Read .../SKILL.md`.
4cms-resolve — версия 0.1.1
Резолвит реальные сущности витрины 4cms (бренд, рубрика, товар) по названию на естественном языке ИЛИ по URL — в конкретные id/slug/url, чтобы подставить их в привязки (bindings) блоков PageCraft и ссылки на странице. Используй ВСЕГДА, когда для лендинга/статьи нужно сослаться на реальный бренд, рубрику или товар — «сделай страницу сравнения adidas и nike», «лендинг по рубрике кроссовки», «выведи товары бренда X», «какой id у этой рубрики», «зарезолви эту ссылку bjjd.ru/r-...», «найди бренд по имени», «подбери рубрику для блока каталога». Это домен 4cms (поиск сущностей витрины), не PageCraft. Вызывай через тул `Skill(4cms-resolve)`, не через `Read .../SKILL.md`.
4cms-articles — версия 0.1.0
Смотрит уже опубликованные на витрине 4cms статьи/лендинги (article-html) — чтобы перед созданием новой страницы проверить, нет ли похожей (анти-каннибализация контента), посмотреть последние статьи, узнать рубрики/теги/мету конкретной статьи. Используй, когда пользователь говорит «есть ли уже статья про…», «не дублируем ли контент», «покажи статьи на сайте», «что за лендинг с таким id», «какие статьи в рубрике», перед написанием новой статьи/лендинга. Это чтение существующих статей 4cms (не создание — создаёт страницы PageCraft). Вызывай через тул `Skill(4cms-articles)`, не через `Read .../SKILL.md`.
4cms-catalog — версия 0.1.1
Навигация по каталогу 4cms через аутентифицированный API — дерево рубрик (корни, дети, поддерево, поиск) и список брендов (чанками + поиск по имени/синонимам). Используй, когда нужно обойти/перечислить каталог витрины — «покажи рубрики сайта», «какие подрубрики у …», «дерево категорий», «список брендов», «найди рубрику/бренд по имени с деталями», «дай rubric_id поддерева». Для быстрого резолва одного имени/URL в id предпочтительнее `4cms-resolve` (публичный, без ключа). Вызывай через тул `Skill(4cms-catalog)`, не через `Read .../SKILL.md`.
4cms-products — версия 0.1.1
Поиск и резолв товаров каталога 4cms через аутентифицированный API — поиск по названию, фильтр по бренду/рубрике/цене/скидке, детали товара по id, список всех id товаров. Используй, когда для страницы нужны реальные товары витрины — «найди товары бренда X в рубрике Y», «топ товаров по цене», «дай id этих товаров», «карточки по списку id», «товары со скидкой в категории». Возвращает id/link/цены для привязок блоков и ссылок. Вызывай через тул `Skill(4cms-products)`, не через `Read .../SKILL.md`.

Описания приведены дословно из реестра: их читает агент, решая, браться ли за задачу, — поэтому пересказывать их своими словами вредно.

Что делать, если список выглядит устаревшим

Заголовок раздела «Что делать, если список выглядит устаревшим»

Реестр обновляется при каждой публикации скилла, а эта страница — при сборке документации. Актуальное состояние всегда здесь: /.well-known/agent-skills/index.json.

  • backend/public/.well-known/agent-skills/index.json — реестр, из него собран список
  • skills/** — исходники скиллов
  • skills/AGENTS.md — порядок публикации и версионирования
  • front/src/components/AiHelp/data.ts — команда установки