Справочник по наборам инструментов
Наборы инструментов (toolsets) — это именованные группы инструментов, управляющие тем, что может делать агент. Это основной механизм для настройки доступности инструментов для каждой платформы, сессии или задачи.
Как работают наборы инструментов
Каждый инструмент принадлежит ровно одному набору. Когда вы включаете набор, все инструменты в этой группе становятся доступными агенту. Наборы инструментов бывают трёх видов:
-
Core (основные) — единая логическая группа связанных инструментов (например,
fileобъединяетread_file,write_file,patch,search_files) -
Composite (составные) — объединяют несколько основных наборов для типового сценария (например,
debuggingобъединяет file, terminal и web) -
Platform (платформенные) — полная конфигурация инструментов для конкретного контекста развёртывания (например,
hermes-cliиспользуется по умолчанию для интерактивных CLI-сессий)
Настройка наборов инструментов
Для сессии (CLI)
hermes chat --toolsets web,file,terminal
hermes chat --toolsets debugging # composite — expands to file + terminal + web
hermes chat --toolsets all # everything
Для платформы (config.yaml)
toolsets:
- hermes-cli # default for CLI
# - hermes-telegram # override for Telegram gateway
Интерактивное управление
hermes tools # curses UI to enable/disable per platform
Или внутри сессии:
/tools list
/tools disable browser
/tools enable rl
Основные наборы инструментов
| Набор инструментов | Инструменты | Назначение |
|---|---|---|
browser |
browser_back, browser_cdp, browser_click, browser_console, browser_dialog, browser_get_images, browser_navigate, browser_press, browser_scroll, browser_snapshot, browser_type, browser_vision, web_search |
Основная автоматизация браузера. Включает web_search как запасной вариант для быстрых запросов. browser_cdp и browser_dialog ограничены во время выполнения — регистрируются только когда CDP-адрес доступен при запуске сессии (через /browser connect, конфиг browser.cdp_url, Browserbase или Camofox). browser_dialog работает совместно с полями pending_dialogs и frame_tree, которые browser_snapshot добавляет при подключённом CDP-супервизоре. |
clarify |
clarify |
Задать вопрос пользователю, когда агенту требуется уточнение. |
code_execution |
execute_code |
Запуск Python-скриптов, которые программно вызывают инструменты Hermes. |
cronjob |
cronjob |
Планирование и управление повторяющимися задачами. |
debugging |
composite (file + terminal + web) |
Отладочный набор — файлы, процессы/терминал, извлечение/поиск в вебе. |
delegation |
delegate_task |
Запуск изолированных экземпляров подагентов для параллельной работы. |
discord |
discord |
Основные действия Discord: текст/встраивание/ЛС (только шлюз). Активен в наборе 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 |
Чтение, запись, поиск и редактирование файлов. |
homeassistant |
ha_call_service, ha_get_state, ha_list_entities, ha_list_services |
Управление умным домом через Home Assistant. Доступно только при установленном HASS_TOKEN. |
computer_use |
computer_use |
Фоновое управление рабочим столом macOS через cua-driver — не перехватывает курсор/фокус. Работает с любой моделью, поддерживающей инструменты. Только macOS; требуется cua-driver в $PATH. |
image_gen |
image_generate |
Генерация изображений по тексту через FAL.ai (с опциональными бэкендами OpenAI / xAI). |
kanban |
kanban_block, kanban_comment, kanban_complete, kanban_create, kanban_heartbeat, kanban_link, kanban_show |
Инструменты координации мультиагентов — регистрируются только когда агент запущен диспетчером канбана (установлена переменная окружения HERMES_KANBAN_TASK). Позволяет работникам отмечать задачи как выполненные со структурированной передачей, блокировать для ввода данных пользователем, отправлять heartbeat во время длительных операций, комментировать в тредах и (для оркестраторов) распределять дочерние задачи. |
memory |
memory |
Постоянное управление памятью между сессиями. |
messaging |
send_message |
Отправка сообщений на другие платформы (Telegram, Discord и т.д.) из текущей сессии. |
moa |
mixture_of_agents |
Мультимодельный консенсус через Mixture of Agents. |
rl |
rl_check_status, rl_edit_config, rl_get_current_config, rl_get_results, rl_list_environments, rl_list_runs, rl_select_environment, rl_start_training, rl_stop_training, rl_test_inference |
Управление средой RL-обучения (Atropos). |
safe |
image_generate, vision_analyze, web_extract, web_search (через includes) |
Исследования только для чтения + генерация медиа. Без записи файлов, терминала и выполнения кода. |
search |
web_search |
Только веб-поиск (без извлечения). |
session_search |
session_search |
Поиск по прошлым сессиям разговоров. |
skills |
skill_manage, skill_view, skills_list |
CRUD и просмотр навыков. |
spotify |
spotify_albums, spotify_devices, spotify_library, spotify_playback, spotify_playlists, spotify_queue, spotify_search |
Нативное управление Spotify (воспроизведение, очередь, поиск, плейлисты, альбомы, библиотека). Регистрируется встроенным плагином spotify. |
terminal |
process, terminal |
Выполнение команд оболочки и управление фоновыми процессами. |
todo |
todo |
Управление списком задач в рамках сессии. |
tts |
text_to_speech |
Генерация аудио из текста. |
vision |
vision_analyze |
Анализ изображений через модели с поддержкой зрения. |
video |
video_analyze |
Инструменты анализа и понимания видео (опционально, не входят в набор по умолчанию — добавляйте явно через --toolsets). |
web |
web_extract, web_search |
Веб-поиск и извлечение содержимого страниц. |
yuanbao |
yb_query_group_info, yb_query_group_members, yb_search_sticker, yb_send_dm, yb_send_sticker |
Действия в ЛС/группах 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 и safe (только чтение), а также стандартные инструменты обмена сообщениями. |
hermes-acp |
Исключает clarify, cronjob, image_generate, send_message, text_to_speech и все четыре инструмента Home Assistant. Ориентирован на задачи программирования в контексте IDE. |
hermes-api-server |
Исключает clarify, send_message и text_to_speech. Оставляет всё остальное — подходит для программного доступа там, где взаимодействие с пользователем невозможно. |
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_* (ЛС/группы/стикеры) поверх hermes-cli. |
hermes-homeassistant |
То же, что и hermes-cli (инструменты Home Assistant уже присутствуют по умолчанию и активируются при установке HASS_TOKEN). |
hermes-webhook |
То же, что и hermes-cli. |
hermes-gateway |
Внутренний набор оркестратора шлюза — объединение всех наборов hermes-<platform>; используется, когда шлюзу необходимо принимать сообщения из любого источника. |
Динамические наборы инструментов
Наборы инструментов MCP-серверов
Каждый настроенный MCP-сервер генерирует набор mcp-<server> во время выполнения. Например, если вы настроили MCP-сервер github, будет создан набор mcp-github, содержащий все инструменты, которые предоставляет этот сервер.
# config.yaml
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
Это создаёт набор mcp-github, на который можно ссылаться в --toolsets или в конфигурациях платформ.
Наборы инструментов плагинов
Плагины могут регистрировать собственные наборы инструментов через ctx.register_tool() во время инициализации. Они появляются рядом со встроенными наборами и могут быть включены или отключены таким же образом.
Пользовательские наборы инструментов
Определите собственные наборы инструментов в config.yaml, чтобы создавать группы для конкретных проектов:
toolsets:
- hermes-cli
custom_toolsets:
data-science:
- file
- terminal
- code_execution
- web
- vision
Подстановочные знаки
allили*— расширяется до всех зарегистрированных наборов (встроенных + динамических + плагинов)
Связь с hermes tools
Команда hermes tools предоставляет curses-интерфейс для включения или отключения отдельных инструментов для каждой платформы. Она работает на уровне инструментов (точнее, чем наборы) и сохраняет изменения в config.yaml. Отключённые инструменты фильтруются, даже если их набор включён.
См. также: Справочник по инструментам для полного списка отдельных инструментов и их параметров.