Справочник наборов инструментов
Наборы инструментов — именованные группы инструментов, определяющие, что может делать агент. Это основной механизм настройки доступности инструментов для каждой платформы, сессии или задачи.
Как работают наборы инструментов
Каждый инструмент принадлежит ровно одному набору. При включении набора все инструменты группы становятся доступны агенту. Наборы бывают трёх видов:
- Основной (Core) — одна логическая группа связанных инструментов (например,
fileобъединяетread_file,write_file,patch,search_files) - Составной (Composite) — объединяет несколько основных наборов для типичного сценария (например,
debuggingобъединяет инструменты файлов, терминала и веба) - Платформенный (Platform) — полная конфигурация инструментов для конкретного контекста развёртывания (например,
hermes-cli— набор по умолчанию для интерактивных CLI-сессий)
Настройка наборов инструментов
На сессию (CLI)
hermes chat --toolsets web,file,terminal
hermes chat --toolsets debugging # составной — разворачивается в file + terminal + web
hermes chat --toolsets all # всё
На платформу (config.yaml)
toolsets:
- hermes-cli # по умолчанию для CLI
# - hermes-telegram # переопределение для шлюза Telegram
Интерактивное управление
hermes tools # интерфейс curses для включения/отключения по платформам
Или внутри сессии:
/tools list
/tools disable browser
/tools enable discord
Основные наборы инструментов
| Набор | Инструменты | Назначение |
|---|---|---|
browser | browser_back, browser_cdp, browser_click, browser_console, browser_dialog, browser_exec, browser_get_images, browser_navigate, browser_press, browser_scroll, browser_snapshot, browser_type, browser_vault_enter_code, browser_vault_fill, browser_vault_list, browser_vault_save_login, browser_vault_unlock, browser_vision | Основная автоматизация браузера. browser_cdp и browser_dialog управляются во время выполнения — регистрируются только когда при старте сессии доступен CDP-эндпоинт (через /browser connect, конфигурацию browser.cdp_url, Browserbase или Camofox). browser_dialog работает совместно с полями pending_dialogs и frame_tree, которые browser_snapshot добавляет при подключённом CDP-супервизоре. browser_exec заменяет остальные браузерные инструменты, когда browser.backend равен browser-use; инструменты browser_vault_* идут вместе с браузером для форм с учётными данными. Быстрые запросы — дело наборов web/search: web_search намеренно НЕ входит в этот набор, поэтому disabled_toolsets: [browser] не может его отключить (#64503). |
clarify | clarify | Задать пользователю вопрос, когда агенту нужно уточнение. |
code_execution | execute_code | Запуск Python-скриптов, программно вызывающих инструменты Hermes. |
connections | manage_connections | Подключает пользователя к приложениям: аккаунты управляемых коннекторов через шлюз Nous и локальные MCP-серверы из каталога. Может добавить второй именованный аккаунт приложения и переименовывать аккаунты. На десктопе каждое действие — карточка, которая блокируется, пока пользователь её не закроет; вне десктопа управляемые действия возвращают ссылку на подключение для каждого приложения. |
coding | составной (file + terminal + search + web + skills + browser + todo + memory + session_search + clarify + code_execution + delegation + vision) | Пакет для разработки: редактирование файлов, терминал, поиск, веб-документация, навыки, браузер, делегирование и выполнение кода. |
cronjob | cronjob_manage | Планирование и управление повторяющимися задачами. |
debugging | составной (file + terminal + web) | Пакет отладки — файлы, процессы/терминал, извлечение/поиск в вебе. |
delegation | delegate_task | Запуск изолированных субагентных экземпляров для параллельной работы. |
discord | discord | Основные действия в Discord: текст, embed, DM (только шлюз). Активен в наборе hermes-discord. |
discord_admin | discord_admin | Модерация Discord (баны, изменение ролей, управление каналами). Активен в наборе hermes-discord; требует соответствующих разрешений Discord у бота. |
feishu_doc | feishu_doc_read | Чтение содержимого документов Feishu/Lark. Используется обработчиком умных ответов на комментарии к документам Feishu. |
feishu_drive | feishu_drive_add_comment, feishu_drive_list_comments, feishu_drive_list_comment_replies, feishu_drive_reply_comment | Операции с комментариями в Feishu/Lark drive. Ограничен агентом комментариев; не доступен в hermes-cli или других наборах для обмена сообщениями. |
file | patch, read_file, search_files, write_file | Чтение, запись, поиск и редактирование файлов. |
computer_use | computer_use | Фоновое управление рабочим столом через cua-driver — не захватывает курсор/фокус. Работает с любой моделью, поддерживающей инструменты. macOS, Windows и Linux; требует cua-driver в $PATH. |
context_engine | (варьируется) | Инструменты времени выполнения, предоставляемые активным плагином движка контекста (пуст, пока плагин не заполнит его). |
image_gen | image_generate | Генерация изображений по тексту через FAL.ai (с opt-in бэкендами OpenAI / xAI). |
video_gen | video_generate, xai_video_edit, xai_video_extend | Text-to-video и image-to-video через бэкенды на основе плагинов (xAI Grok-Imagine, FAL.ai Veo 3.1 / Pixverse v6 / Kling 3.0 / Kling O3). Передайте image_url для анимации изображения; опустите для text-to-video. xai_video_edit / xai_video_extend — специфичные для провайдера инструменты редактирования/продления, доступны только при настроенных учётных данных xAI Imagine. |
kanban | kanban_attach, kanban_attach_url, kanban_attachments, kanban_block, kanban_comment, kanban_complete, kanban_create, kanban_heartbeat, kanban_link, kanban_list, kanban_request_changes, kanban_request_review, kanban_show, kanban_unblock | Инструменты мультиагентной координации. Регистрируются для рабочих, запущенных диспетчером (HERMES_KANBAN_TASK), и для платформ, в сохранённом выборе которых есть kanban (hermes tools enable kanban --platform <p>; подстановочный знак all/* не включает его). Рабочие помечают задачи выполненными, запрашивают полноценное ревью, блокируют, отправляют heartbeat, комментируют и создают/связывают продолжения; профили оркестраторов дополнительно получают инструменты маршрутизации по доске (list/unblock). Дочерние задачи delegate_task не являются владельцами запуска Kanban: их схема отключает/вырезает этот набор, а защита времени выполнения отклоняет прямые изменения доски, даже если у родителя установлены переменные окружения HERMES_KANBAN_*. |
memory | memory | Управление постоянной межсессионной памятью. |
desktop_ui | annotate_preview, apply_layout, close_terminal, desktop_preview, drive_preview, focus_pane, gui_tour, react_to_message, read_terminal, read_window_below, show_tip | Действия, управляющие самим десктопным приложением Hermes — чтение/закрытие встроенной панели терминала, открытие, чтение, закрытие внутреннего браузера, работа с ним и пометки на нём, определение системного окна за приложением, показ панели, реакция на сообщение, запуск управляемого тура (подсветка и озвучивание элементов интерфейса в приложении или в панели предпросмотра), применение пресета раскладки. Доступны для сессий, источником которых служит десктопное приложение — независимо от того, к какому бэкенду оно подключено (локальному, по SSH, по URL или к Hermes Cloud). Никогда не присутствуют в CLI-, TUI-, messaging- или cron-сессиях. |
project | desktop_project | Создание и переключение десктопных Проектов (именованных многопапочных рабочих пространств) через одно перечисление действий create/switch/list. Только GUI/десктопные сессии. |
catalog | manage_catalog | Ищет по каталогу плагинов и хабу навыков и устанавливает найденное через карточку одобрения в профиль этого чата. Включён для сессий, источник которых — десктопное приложение, к какому бы бэкенду оно ни было подключено (локальному, SSH, URL или Hermes Cloud). Никогда не присутствует в сессиях CLI, TUI, мессенджеров и cron, даже если его называет список в конфиге. all его не включает. По умолчанию отложен за tool_search. Убрать можно через agent.disabled_toolsets: [catalog]. |
safe | image_generate, vision_analyze, web_extract, web_search (через includes) | Исследование только для чтения + генерация медиа. Без записи файлов, без терминала, без выполнения кода. |
search | web_search | Только веб-поиск (без извлечения). |
session_search | session_search | Поиск прошлых сессий диалога. |
setup | setup_choose | Поверхность только для онбординга в десктопном профиле настройки: задаёт пользователю по одному вопросу или карточке выбора. Включается собственным конфигом профиля настройки (platform_toolsets.cli), а инструменты получают только десктопные сессии. all его не включает. Не показывается в hermes tools. |
start_chat | start_chat | Запускает новый десктопный чат в существующем профиле (в профиле этого же чата, если имя не указано) и отправляет ему первое сообщение, чтобы задача выполнялась там на глазах у пользователя. Каждый вызов открывает ещё один чат. Включается собственным конфигом профиля (platform_toolsets.cli), а инструмент получают только десктопные сессии. all его не включает. Не показывается в hermes tools. Субагенты его не получают. |
skills | skill_manage, skill_view, skills_list | CRUD и просмотр навыков. |
terminal | process_manage, terminal | Выполнение команд командной строки и управление фоновыми процессами. |
todo | todo_list | Управление списком задач в рамках сессии. |
tts | text_to_speech | Генерация голосового аудио из текста. |
vision | vision_analyze | Анализ изображений через модели с поддержкой видения. |
video | video_analyze | Инструменты анализа и понимания видео (opt-in, не в наборе по умолчанию — добавляйте явно через --toolsets). |
web | web_extract, web_search | Веб-поиск и извлечение содержимого страниц. |
x_search | x_search | Публичный поиск в X только для чтения через встроенный инструмент xAI x_search Responses. Для аутентифицированных запросов к X API и действий с аккаунтом используйте навык xurl. Отключён по умолчанию; активируйте через hermes tools. Схема регистрируется только при настроенных учётных данных xAI (SuperGrok OAuth или XAI_API_KEY). |
yuanbao | yb_query_group_info, yb_query_group_members, yb_search_sticker, yb_send_dm, yb_send_sticker | Действия DM/групп и поиск стикеров в Yuanbao. Регистрируется только в hermes-yuanbao. |
Платформенные наборы инструментов
Платформенные наборы определяют полную конфигурацию инструментов для целевого контекста развёртывания. Большинство платформ обмена сообщениями используют тот же набор, что и hermes-cli:
| Набор | Отличия от hermes-cli |
|---|---|
hermes-cli | Полный набор — по умолчанию для интерактивных CLI-сессий. Включает пакеты file, terminal, web, browser, memory, skills, vision, image_gen, todo, tts, delegation, code_execution, cronjob, session_search, clarify, computer_use и инструменты kanban (все проверяются функцией check_fn во время выполнения). |
hermes-acp | Убирает clarify, cronjob, image_generate, text_to_speech, computer_use и инструменты kanban. Ориентирован на задачи программирования в контексте IDE. |
hermes-api-server | Убирает clarify, text_to_speech, computer_use и инструменты kanban. Всё остальное сохраняет — подходит для программного доступа без возможности взаимодействия с пользователем. |
hermes-cron | То же, что hermes-cli. |
hermes-telegram | То же, что hermes-cli. |
hermes-discord | Добавляет discord и discord_admin поверх hermes-cli. |
hermes-slack | То же, что hermes-cli. |
hermes-whatsapp | То же, что hermes-cli. |
hermes-signal | То же, что hermes-cli. |
hermes-matrix | То же, что hermes-cli. |
hermes-mattermost | То же, что hermes-cli. |
hermes-email | То же, что hermes-cli. |
hermes-sms | То же, что hermes-cli. |
hermes-bluebubbles | То же, что hermes-cli. |
hermes-dingtalk | То же, что hermes-cli. |
hermes-feishu | Добавляет пять инструментов feishu_doc_* / feishu_drive_* (используются только обработчиком комментариев к документам, а не обычным адаптером чата). |
hermes-qqbot | То же, что hermes-cli. |
hermes-wecom | То же, что hermes-cli. |
hermes-wecom-callback | То же, что hermes-cli. |
hermes-weixin | То же, что hermes-cli. |
hermes-yuanbao | Добавляет пять инструментов yb_* (DM/группы/стикеры) поверх hermes-cli. |
hermes-webhook | Ограниченное безопасное подмножество — только web_search, web_extract, vision_analyze и clarify. Запуски по вебхуку не получают доступа к терминалу, файлам или браузеру. |
hermes-gateway | Внутренний набор оркестратора шлюза — объединение всех наборов hermes-<platform>; используется когда шлюзу нужно принимать сообщения из любого источника. |
Платформы, которые поставляются плагинами, получают неявный пакет hermes-<platform>, не входящий в hermes-gateway. Например, hermes-homeassistant по-прежнему разрешается после установки плагина каталога homeassistant, но встроенным набором инструментов больше не является.
Динамические наборы инструментов
Наборы инструментов MCP-сервера
Каждый настроенный MCP-сервер создаёт набор инструментов mcp-<server> во время выполнения. Например, при настройке MCP-сервера github создаётся набор mcp-github, содержащий все инструменты, предоставляемые этим сервером.
# config.yaml
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
Это создаёт набор mcp-github, на который можно ссылаться в --toolsets или конфигурациях платформ. Голое имя сервера (github) работает как псевдоним. Если сервер назван так же, как встроенный набор (browser, web), это имя даст встроенные инструменты плюс инструменты сервера mcp__<server>__*; одно другое не перекрывает.
Наборы инструментов плагинов
Плагины могут регистрировать собственные наборы инструментов через ctx.register_tool() при инициализации плагина. Они появляются рядом со встроенными наборами и могут быть включены/отключены так же.
Пользовательские наборы инструментов
Определяйте пользовательские наборы в config.yaml для создания проектно-специфических групп:
toolsets:
- hermes-cli
custom_toolsets:
data-science:
- file
- terminal
- code_execution
- web
- vision
Подстановочные знаки
allили*— разворачивается во все зарегистрированные наборы (встроенные + динамические + плагинные)
У части инструментов есть дополнительная проверка доступности помимо членства в наборе — all/* не включает их автоматически:
- Инструменты с проверкой возможностей (браузер,
computer_use,code_execution, Feishu, cronjob) появляются только при настроенном бэкенде/учётных данных. - Инструменты с проверкой рабочего процесса — набор
kanban— намеренно opt-in.all/*не включает kanban; нужно явно перечислитьkanban(или быть рабочим, запущенным диспетчером с установленнымHERMES_KANBAN_TASK). Инструменты kanban изменяют общее состояние доски, поэтому по умолчанию остаются отключёнными даже приall.
Связь с hermes tools
Команда hermes tools предоставляет curses-интерфейс для переключения отдельных инструментов по платформам. Это работает на уровне инструментов (детальнее наборов) и сохраняется в config.yaml. Отключённые инструменты фильтруются, даже если их набор включён.
См. также: Справочник инструментов с полным списком отдельных инструментов и их параметров.