Навыки Велеса: подробный справочник
Это подробная страница для тех, кто хочет понимать внутреннюю механику работы навыков в Велес. Если вам нужно простое объяснение без технических деталей, начните со статьи Навыки Велеса: простое объяснение. Если вас интересует практический алгоритм проведения глубокого исследования, откройте Глубокое исследование (Deep Research).Что такое навык в Велес
В текущей реализации навык — это директория с обязательным файломSKILL.md, который содержит:
- заголовок с названием и описанием;
- дополнительные метаданные;
- инструкции в формате Markdown для Велеса.
- при необходимости вспомогательные файлы: скрипты, справочные материалы и ресурсы.
- в каких ситуациях применять данный сценарий;
- какой именно алгоритм действий использовать;
- какие ограничения следует учитывать;
- какие инструменты задействовать;
- каких действий следует избегать.
Где Велес ищет навыки
Велес загружает навыки из трёх источников с порядком наложения:1. Навыки активной личности
Это каталог внутри рабочей области:<workspace>/personalities/<id>/skills/<имя-навыка>/SKILL.md
2. Навыки рабочей области
Это каталог проекта:<workspace>/skills/<имя-навыка>/SKILL.md
3. Встроенные навыки
Это стандартный каталог фреймворка:veles/skills/<имя-навыка>/SKILL.md
Как добавить навык
Базовый способ добавления остаётся файловым: создать каталог навыка в одном из поддерживаемых мест и положить в негоSKILL.md.
Для подготовки такого каталога есть встроенный навык skill-creator и его скрипт:
.skill:
clawhub, который устанавливает навыки из публичного каталога через npx:
SKILL.md и скопирует весь каталог навыка в <workspace>/skills. Установленные таким способом навыки доступны всем личностям рабочей области.
Программный каталог навыков
Для интерфейса Nerve и внешних клиентов gateway предоставляет метод WebSocket RPC:personalities.skills.catalog
GET /api/skillsPOST /api/skills/translate
targetLanguage, сохраняет исходное поле description и добавляет поле translatedDescription. Если подходящего перевода в памяти нет, translatedDescription содержит пустую строку: само чтение каталога не обращается к языковой модели.
Перевод выполняется только по явному нажатию кнопки рядом с описанием. Маршрут POST /api/skills/translate принимает description и targetLanguage, возвращая translatedDescription. Nerve вычисляет SHA-256 исходного описания и ищет сочетание этого хэша с нормализованным языком в общем кэше. При отсутствии записи используется настроенный в шлюзе механизм языковой модели, после чего успешный результат сохраняется в памяти на 60 минут. Кэш содержит не более 1000 записей, теряется при перезапуске Nerve и совместно используется каталогами установленных навыков и маркетплейсов.
Для маркетплейсов шлюз предоставляет универсальные методы skills.marketplaces.*: получение каталога, создание, изменение, удаление, синхронизацию и установку. Параметры конкретного типа находятся в объекте settings; поэтому добавление нового типа источника не требует новых названий методов. Nerve предоставляет соответствующие маршруты /api/skill-marketplaces. При чтении каталога targetLanguage выбирает язык кэшированного перевода, а каждый вложенный навык получает поле translatedDescription с найденным значением или пустой строкой.
Зарегистрированы типы github и gitlab. Оба принимают адрес репозитория в поле repositoryUrl и необязательную ветку в поле branch; пустая ветка означает ветку репозитория по умолчанию. Для GitHub разрешён публичный адрес HTTPS на github.com. Для GitLab разрешён адрес HTTP или HTTPS на любом узле, в том числе самостоятельная установка с портом и вложенными группами, например http://git.alor.ru/ai/alor-skills. Адрес GitLab не должен содержать имя пользователя, пароль, строку запроса или фрагмент. Интерактивный запрос учётных данных отключён, поэтому закрытые репозитории не поддерживаются. Пользовательские записи всегда можно изменить и удалить. Предустановленные «Alor Public skills» и «Alor Internal skills» изменять и удалять нельзя; ранее установленные навыки при удалении пользовательского маркетплейса сохраняются.
Проверка SKILL.md требует корректных стандартных полей name и description, но не запрещает дополнительные служебные поля во вводной части YAML. Такие поля сохраняются в файле навыка и сами по себе не создают предупреждение синхронизации. В metadata Велес принимает строковые ключи со строками или объектами в значениях. Структурированные требования и секреты навыка можно объявлять в объекте metadata.veles. Для совместимости допустима и строка, содержащая весь объект metadata в формате JSON; повреждённая строка или JSON не объектного типа считается ошибкой.
Как навыки попадают в контекст Велеса
В процессе работы предусмотрено несколько уровней интеграции:1. Краткое описание (summary) всех навыков
При формировании системного промпта (system prompt) Велес добавляет сводку доступных навыков:- название;
- описание;
- путь к файлу
SKILL.md; - статус доступности;
- сведения о недостающих технических требованиях (если есть).
2. Загрузка полного текста SKILL.md по мере необходимости
Если Велес определяет, что для решения задачи требуется конкретный навык, он считывает соответствующий файл целиком.
Это важно по ряду причин:
- навыки загружаются только по требованию;
- полный текст всех инструкций не перегружает промпт при каждом запросе;
- система остается масштабируемой и производительной.
3. Навыки с постоянной доступностью (always-on)
Некоторые навыки могут быть помечены параметромalways: true. В этом случае их содержимое попадает в активный контекст сразу при условии доступности навыка.
В текущем встроенном наборе так работают навыки memory (память) и onboarding
(первичная настройка). У onboarding постоянно загружается только короткая инструкция запуска и
безопасности; подробный сценарий вопросов читается после начала настройки.
Как определяется доступность навыка
Навык может физически присутствовать на диске, но считаться недоступным для использования. Велес проверяет его требования через метаданные:- наличие необходимых программ (CLI) в системном пути (PATH);
- наличие обязательных переменных окружения;
- иные предварительные условия (prerequisites), указанные в описании.
- один и тот же навык может работать у одного пользователя и быть недоступен у другого;
- сводка навыков в промпте может указывать на существование сценария, который временно не готов к запуску;
- работоспособность многих навыков напрямую зависит от конфигурации локального окружения.
Какие навыки доступны сейчас
В основном каталогеveles/skills/ поставляются:
deep-researchperplexity-searchmemoryonboardingcronweathersummarizeskill-creatortmuxdocumentsreport-authoring
<workspace>/skills. В начальной конфигурации каталоги ALOR уже добавлены, но сам
код навыков не входит в пакет Велеса и появляется в рабочей области только после установки.
Ниже приведено краткое описание встроенных и устанавливаемых навыков.
Быстрые ссылки на страницы навыков:
- Навык: Глубокое исследование
- Навык: Память
- Навык: Первичная настройка
- Навык: Cron (Расписание)
- Навык: Entrez Search (NCBI)
- Навык: FDA Database
- Набор медицинских навыков
- Набор навыков консультанта по питанию
- Правовая проверка управления средствами НПФ
- Финансовые навыки для НПФ
- Навык: Perplexity Search
- Навык: Погода
- Навык: Summarize (Выжимки)
- Навык: GitHub
- Навык: GitLab
- Навык: Google Workspace
- Навык: ClawHub (Каталог)
- Навык: ALOR Mail
- Навык: ALOR Calendar
- Навык: Битрикс24 ALOR
- Навык: Контур.Толк ALOR
- Навык: Teamly ALOR
- Навык: Tmux (Терминал)
- Навык: Создание навыков
- Навык: Веб-разработка
- Навык: Создание документов DOCX
- Навык: Подготовка содержательных отчётов
Краткий каталог навыков
deep-research
Назначение:
- проведение полноценных глубоких исследований по заданным темам;
- многошаговый процесс (pipeline) с подготовкой итогового структурированного отчёта.
- требует четко сформулированной темы исследования;
- рассчитан на продолжительную работу;
- запускается как отдельный процесс, а не как быстрый ответ в чате.
perplexity-search
Назначение:
- специализированный сценарий поиска в сети через OpenRouter и использование модели
perplexity/sonar-pro.
memory
Назначение:
- инструкции для Велеса по работе с долгосрочной памятью, файлом
MEMORY.md, сводками и механизмами припоминания (recall).
- является одним из ключевых навыков системы;
- работает в режиме постоянной доступности (always-on).
onboarding
Назначение:
- пошаговое знакомство с неопытным пользователем без требования самостоятельно править служебные файлы;
- разделение устойчивого профиля, долговременного контекста, личности агента и правил рабочей области;
- подготовка точного проекта изменений для
USER.md,memory/MEMORY.md, выбранногоSOUL.mdиAGENTS.md.
- постоянно загружает только короткие правила запуска и безопасности, а подробную анкету — по запросу;
- не начинает опрос самовольно и не прерывает обычную задачу;
- предлагает варианты с объяснением последствий и позволяет пропустить вопрос;
- считает ответы самоописанием пользователя, не угадывает чувствительные признаки и не запрашивает секреты;
- сохраняет существующие содержательные инструкции и записывает изменения только после показа точного проекта и явного подтверждения;
- использует
AGENTS.mdво множественном числе и не создаёт неиспользуемыйAGENT.md.
cron
Назначение:
- помощь в корректном использовании планировщика задач и расписаний.
entrez-search
Назначение:
- поиск литературы и биомедицинских записей через NCBI Entrez E-utilities;
- работа с PubMed, PMC, Gene, Protein, Nuccore, ClinVar, PubChem, MeSH и SNP;
- построение медицинских запросов с MeSH, publication type и date-фильтрами.
- ключ NCBI и адрес для идентификации запросов опциональны и хранятся как секреты
skills.entrez-search.env.NCBI_API_KEYиskills.entrez-search.env.NCBI_EMAIL; - отсутствие ключа не выключает навык, но оставляет обычный лимит запросов NCBI.
fda-database
Назначение:
- поиск официальной информации FDA/openFDA о лекарствах и таблетках;
- работа с label, NDC, recalls/enforcement, Drugs@FDA approvals, shortages, FAERS adverse events и substances/UNII;
- проверка medication safety facts до пациентских ответов.
- API-ключ openFDA опционален и хранится как секрет
skills.fda-database.env.OPENFDA_API_KEY; - сведения FDA относятся к США и не заменяют национальные реестры и инструкции;
- перед персональным советом о лекарствах навык требует
memory_search, чтениеdocs/myhealthпри наличии и многоисточниковую проверку; - FAERS используется только как safety-signal источник, не как доказательство причинности или частоты событий.
Медицинский набор
Набор для личностиmedical-navigator устанавливается из внешнего каталога в personalities/medical-navigator/skills/ и включает:
medical-symptom-navigation— история симптомов, оценка срочности и обсуждаемые диагностические возможности без окончательного диагноза;medical-lab-results— разбор результата по точной единице и референсному интервалу лаборатории;medication-reconciliation— сверка лекарств, добавок, аллергий и расхождений без назначения или изменения дозы;medical-evidence-review— поиск действующих рекомендаций, регуляторных сведений и подходящих научных исследований;medical-visit-preparation— хронология, краткая передача случая и вопросы к специалисту.
- новые навыки не требуют секретов или отдельных программ;
- правила экстренной помощи и конфиденциальности продублированы в
SOUL.md, потому что отдельный навык может не загрузиться; entrez-searchиfda-databaseдополняют набор как источники данных;- FDA относится к США и не заменяет национальный регулятор;
- медицинская личность использует обычные механизмы истории и общей памяти Велеса; отдельная медицинская карта и изолированное хранилище не создаются.
Набор консультанта по питанию
Набор для личностиnutrition-adviser устанавливается из внешнего каталога в personalities/nutrition-adviser/skills/ и включает:
pp-nutrition— состав обычных продуктов, сравнение на общей основе и расчёт блюда по USDA FoodData Central;pp-open-food-facts— состав, аллергены и показатели упакованных продуктов по штрихкоду;medical-evidence-reviewиentrez-search— проверка значимых рекомендаций и поиск публикаций;medical-lab-results,medication-reconciliationиmedical-symptom-navigation— узкие медицинские сценарии, когда вопрос выходит за пределы общей информации о питании.
- оба навыка содержат ограниченные скрипты на стандартной библиотеке Python и не требуют отдельных командных программ или дополнительных библиотек;
- ключ для Open Food Facts не нужен; необязательный бесплатный
FDC_API_KEYхранится в зашифрованных секретах Велеса; - адаптированные навыки разрешают только ограниченную работу с данными и не содержат собственный пищевой дневник, локальные файлы с ключами, вебхуки или изменение внешних записей;
- пищевая база не заменяет клинические рекомендации, а сведения Open Food Facts сверяются с упаковкой;
- личность использует общую рабочую область и память Велеса и не обещает анонимность или изоляцию.
npf-asset-management-legal-review
Навык для личности npf-asset-management-legal-counsel устанавливается из внешнего каталога в personalities/npf-asset-management-legal-counsel/skills/.
Назначение:
- подготовка второго мнения по российскому регулированию управляющей компании, работающей со средствами НПФ;
- проверка субъекта, лицензии, продукта, даты события и применимой редакции нормы;
- сопоставление основной позиции с самым сильным возражением регулятора, суда, аудитора или службы внутреннего контроля;
- подготовка вариантов решения, мер контроля и вопросов для уполномоченного специалиста.
- справочник внутри навыка сохраняет предоставленный перечень из 62 позиций на 28 августа 2026 года, но не заменяет проверку официального текста;
- отсутствующий в справочнике источник можно использовать только с явной пометкой, не изменяя зафиксированный перечень молча;
- навык не требует секретов или отдельных программ;
- история и память не изолированы, адвокатская тайна не создаётся, а юридически значимые действия требуют отдельного прямого поручения.
Финансовый набор для НПФ
Набор для личностиnpf-asset-management-finance-adviser устанавливается из внешнего каталога в personalities/npf-asset-management-finance-adviser/skills/ и включает:
npf-pension-asset-strategy— сводный разбор стратегии пенсионных активов;npf-alm-liquidity-scenarios— согласование активов и обязательств и сценарии ликвидности;npf-investment-risk-stress-testing— методы риска и стресс-сценарии;npf-reporting-quality-review— качество, определения и воспроизводимость отчётности;npf-issuer-investment-analysis— анализ эмитента и ценной бумаги;npf-market-scenario-analysis— макроэкономические и рыночные сценарии.
weather
Назначение:
- алгоритм получения актуальных данных о погоде и прогнозов.
summarize
Назначение:
- создание кратких пересказов содержимого ссылок, локальных файлов, PDF-документов и видео с YouTube.
github
Назначение:
- решение задач на GitHub через интерфейс командной строки
ghи связанные автоматизированные процессы.
gitlab-skill
Назначение:
- работа с GitLab через программный интерфейс GitLab и команды
git: проекты, задачи, запросы на слияние, ветки, коммиты и проверки.
- объявляет
GITLAB_TOKENкак секрет навыкаskills.gitlab-skill.env.GITLAB_TOKEN; GITLAB_HOSTостаётся обычной настройкой, потому что адрес сервера не является секретом.
google-workspace
Назначение:
- работа с почтой Gmail, календарём, диском, контактами, таблицами и документами Google;
- пошаговая настройка доступа через OAuth 2.0 с обновлением токена;
- единый командный скрипт для чтения, поиска, создания и изменения данных после явного подтверждения пользователя.
- хранит файл клиента Google, токен и временное состояние авторизации в зашифрованном хранилище секретов Велеса;
- требует
VELES_SECRETS_MASTER_KEYдля записи и чтения локальных секретов; - перед отправкой писем, созданием или удалением событий, изменением документов, таблиц и прав доступа требуется подтверждение пользователя;
- может использовать установленную программу
gws, а без неё работает через библиотеки Google для Python.
clawhub
Назначение:
- поиск и установка новых навыков из открытого каталога.
alor-calendar
Назначение:
- чтение и управление Outlook/Exchange календарём ALOR через EWS;
- использование настроек и учетных данных из существующей конфигурации email-канала;
- просмотр, поиск и создание календарных событий после явного подтверждения пользователя.
- требует Python-пакеты
exchangelibиpython-dateutil; - по умолчанию использует
Europe/Moscow; - операции изменения календаря требуют подтверждения, потому что меняют внешнюю систему.
alor-bitrix24
Назначение:
- чтение данных локального портала Битрикс24 ALOR;
- работа со сделками, контактами, компаниями, задачами, чатами, файлами и другими доступными разделами;
- подготовка и подтверждённое выполнение изменений через защищённый помощник.
- принимает только адрес
https://portal.alorbroker.ruи отклоняет другой домен; - использует только входящий вебхук;
- требует секреты
skills.alor-bitrix24.env.B24_WEBHOOK_USER_IDиskills.alor-bitrix24.env.B24_WEBHOOK_CODE; - хранит секреты вне
config.jsonи подставляет их только на время ответа; - требует локальный план и подтверждение перед изменением внешних данных;
- требует доступ среды Велеса к внутренней сети ALOR.
alor-ktalk
Назначение:
- поиск запланированных и прошедших встреч в пространстве Контур.Толка ALOR;
- получение материалов встречи: участников, записей, сообщений, опросов, заметок и досок;
- получение расшифровки, краткого пересказа, протокола и отчётов о посещении;
- безопасное сохранение текстовых материалов и явно запрошенных файлов в рабочую область.
- принимает только адрес
https://alor.ktalk.ruи запрещает перенаправления; - требует секрет
skills.alor-ktalk.env.KTALK_API_KEY, который не записывается вconfig.json; - использует только операции чтения и не предоставляет команд изменения данных Толка;
- делает одну совместимую попытку через заголовок
X-Auth-Token: статья о персональном ключе не называет заголовок, а публичное описание программного интерфейса связывает этот заголовок с ключом пространства; - не перебирает другие способы передачи секрета после ошибки авторизации;
- потоково сохраняет большие файлы, ограничивает размер и не перезаписывает существующий путь;
- никогда не передаёт ключ другому узлу, в том числе при перенаправлении загрузки;
- считает названия, описания, чаты, заметки и расшифровки недоверенными данными.
alor-teamly
Назначение:
- поиск и чтение пространств, деревьев и статей локальной базы знаний Teamly ALOR;
- вопросы помощнику Teamly только по корпоративным документам;
- подготовка и подтверждённое выполнение изменений в базе знаний.
- принимает только адрес
https://teamly.alor.ruи отклоняет перенаправления или куки чужого домена; - использует вход Teamly через службу каталогов, но не автоматизирует браузер и не копирует его куки;
- читает
username,adDomainIdиaccountSlugизskills.entries.alor-teamly.configактивногоconfig.json; - требует только один секрет навыка —
TEAMLY_PASSWORD; - хранит полученные куки сеанса под ключом
skills.alor-teamly.session_jsonв зашифрованном хранилище Велеса; - обновляет сеанс и после ответа
401выполняет новый вход с секретами Велеса; - требует явное подтверждение записи и отдельное подтверждение удаления;
- требует доступ среды Велеса к внутренней сети ALOR.
alor-mail
Назначение:
- чтение, поиск и отправка корпоративной почты ALOR через IMAP и SMTP;
- использование настроек из существующей конфигурации почтового канала;
- подготовка ответов и отправка писем после подтверждения пользователя.
- не выполняет разрушительные операции с письмами по умолчанию;
- берёт все параметры IMAP и SMTP только из
channels.emailв активномconfig.json; - читает пароли только из локального зашифрованного хранилища Велеса;
- использует цели секретов
channels.email.imapPasswordиchannels.email.smtpPassword; - принимает для паролей только локальные
SecretRef, а открытые строки и внешние источники отклоняет; - использует обычный синтаксис поиска IMAP;
- присваивает исходящему письму
Message-ID, сохраняет принятую SMTP копию в исходной IMAP-папке с признаком\Sentи строит заголовки ответа по UID родительского письма; - считает ошибку сохранения копии после подтверждения SMTP частичным успехом и запрещает автоматическую повторную отправку.
skill-creator
Назначение:
- помощь в проектировании и корректной упаковке новых навыков. Полезен, если вы хотите добавить собственный сценарий в рабочую область (workspace).
tmux
Назначение:
- управление сессиями tmux для интерактивной или параллельной работы (актуально для Linux/macOS).
web-development
Назначение:
- руководство (guidance) по задачам создания и развития веб-проектов.
Чем навыки отличаются от инструментов на практике
Критическое различие заключается в следующем:Инструмент (Tool)
Это атомарная операция. Примеры:read_file, web_search, exec, session_history.
Навык (Skill)
Это сложный сценарий или методология решения целого класса задач. Примеры: алгоритм проведения исследования, методика работы с расписанием, правила использования памяти. Один навык почти всегда опирается на последовательное использование нескольких инструментов.Deep Research как особый случай
Глубокое исследование заметно выделяется на фоне остальных навыков. Причины:- большая продолжительность выполнения;
- высокая потребность во времени и ресурсах;
- необходимость предварительного уточнения темы;
- сложная структура процесса (не сводится к паре действий);
- результатом является отдельный аналитический документ.
Что важно для автора собственного навыка
Исходя из текущей архитектуры, качественный навык должен:- четко описывать контекст своего применения;
- опираться на существующие инструменты, не дублируя их логику;
- содержать информацию об ограничениях и типичных ошибках (anti-patterns);
- предоставлять Велесу понятный алгоритм действий;
- описывать необходимые предварительные условия (prerequisites).
Практические выводы
Текущая система навыков Велес обладает рядом преимуществ:- позволяет расширять возможности без изменения основного кода;
- поддерживает как встроенные, так и пользовательские навыки;
- оптимизирует использование ресурсов, подгружая инструкции по требованию;
- учитывает особенности локального окружения;
- идеально подходит для сложных повторяющихся процессов.
- наличие навыка не гарантирует, что всё внешнее окружение уже настроено;
- эффективность работы напрямую зависит от качества написанных инструкций.
Итог
В Велес навыки образуют интеллектуальный слой над инструментами:- инструменты предоставляют возможности для действий;
- навыки задают логику и процесс выполнения;
- встроенные навыки обеспечивают базовую функциональность «из коробки»;
- навыки рабочей области позволяют адаптировать систему под специфику конкретного проекта или команды.
