К содержимому

CapyAgent агент, который ходит в ваши рабочие системы сам. Ядро на Go, коннекторы на Python, данные остаются у вас.

Навыки

Порядок действий,
записанный человеком

Навык это не промпт и не код. Это инструкция «как делается вот эта работа», которую агент открывает, когда до неё дошло дело. В промпт идёт каталог названий, тела подтягиваются по запросу.

Каталог пока маленький и это честная картина: навыки пишутся под реальные задачи клиентов, а не набиваются для счётчика на витрине.

Как устроено

Три уровня

01 навык

Навык

Файл SKILL.md с заголовком и порядком действий. Лежит в каталоге навыков, попадает в каталог агента и открывается по надобности.

SKILL.md

02 плагин

Плагин

Каталог с манифестом, своими коннекторами и своими навыками. Ставится командой, не может молча подменить встроенный коннектор.

interclaw.plugin.json

03 расширение

Расширение браузера

Панель рядом со страницей. Просит разрешения манифестом, получает пересечение запрошенного и выданного, а не всё, что попросило.

manifest.json

Правила

Что здесь сделано намеренно

  • Каталог первым, тела по запросу. Двадцать навыков целиком в промпте съедают окно модели раньше, чем начнётся работа.
  • Каталоги данных идут раньше домашнего. Служба работает от отдельного пользователя, а юнит закрывает домашний каталог через ProtectHome=true. Пока плагины искались только в доме, положить их на боевую машину было физически некуда.
  • Недоступный каталог это «плагинов нет», а не отказ работать. Служба пишет предупреждение и идёт дальше.
  • Сломанный манифест внутри установленного плагина это ошибка. Его положил человек, и молча его игнорировать значило бы соврать, что плагин работает.
  • Плагин не выписывает себе разрешения сам. Манифест просит, человек даёт, в процесс уходит пересечение.

Формат

Манифест плагина, версия 1

interclaw.plugin.json
{  "schema_version": 1,  "id": "example",  "name": "Example Business API",  "version": "1.0.0",  "connectors": [{    "id": "api",    "command": ["python3", "${PLUGIN_DIR}/server.py"],    "env": ["EXAMPLE_API_TOKEN"]  }],  "skills": ["skills"],  "permissions": {    "network": ["api.example.com"],    "secrets": ["EXAMPLE_API_TOKEN"]  }}

${PLUGIN_DIR} раскрывается только после успешной проверки манифеста. В работе имя коннектора становится example.api, подменить им встроенный нельзя.

Каталог

Что есть сейчас

Два готовых пункта и один формат. Всё остальное пишется под задачу: навык на полстраницы обычно закрывает работу, ради которой раньше заводили отдельный скрипт.

01 навык

Поиск цен на оборудование

Собирает доказательную таблицу предложений: источник, дата проверки, цена, НДС, наличие, доставка, уверенность. Сниппет из выдачи ценой не считается, страница открывается всегда.

skills/поиск-цен

02 плагин

Calltouch

Звонки, заявки и источники отдельным плагином со своим манифестом и разрешениями. Первый плагин, проверенный живьём на установке и снятии.

plugins/calltouch

03 шаблон

Свой навык за полчаса

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

Как написать

Пример

Как выглядит хороший навык

Из навыка «поиск цен», который уже работает. Обратите внимание: каждый шаг закрывает конкретный способ получить красивый и неверный ответ.

  • Уточни, что ищем. Категория, характеристики, регион, допустимые аналоги. Расплывчатый ответ хуже отсутствия ответа: он выглядит как работа.
  • Ищи несколькими формулировками. Сниппет выдачи это подсказка, куда идти, а не источник цены.
  • Открывай страницу. Сначала дешёвым способом, если вернулся пустой каркас - браузером. Цена берётся только со страницы, которую открыли.
  • Объединяй дубли. Один поставщик на своём сайте и на маркетплейсе это одно предложение. Три ссылки одного магазина не делают выборку шире.
  • Сведи в таблицу с датой проверки и уверенностью по каждой строке.
Такой навык переносим: он работает в CapyAgent, а его текст читается человеком как обычная инструкция. Это и есть смысл формата.

Нужен навык под вашу работу?

Опишите порядок действий словами, а мы превратим его в то, что агент выполняет каждый день.