Справочник по наборам инструментов

Наборы инструментов — это именованные пакеты инструментов, которые контролируют действия агента. Они являются основным механизмом настройки доступности инструментов для каждой платформы, для каждого сеанса или для каждой задачи.

Как работают наборы инструментов

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

Настройка наборов инструментов

За сеанс (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

Core Toolsets

Toolset Tools Purpose
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 Core browser automation. Includes web_search as a fallback for quick lookups. browser_cdp and browser_dialog are gated at runtime — registered only when a CDP endpoint is reachable at session start (via /browser connect, browser.cdp_url config, Browserbase, or Camofox). browser_dialog works together with the pending_dialogs and frame_tree fields that browser_snapshot adds when a CDP supervisor is attached.
clarify clarify Ask the user a question when the agent needs clarification.
code_execution execute_code Run Python scripts that call Hermes tools programmatically.
cronjob cronjob Schedule and manage recurring tasks.
debugging composite (file + terminal + web) Debug bundle — file, process/terminal, web extract/search.
delegation delegate_task Spawn isolated subagent instances for parallel work.
discord discord Core Discord text/embed/DM actions (gateway-only). Active on the hermes-discord toolset.
discord_admin discord_admin Discord moderation (bans, role changes, channel management). Active on the hermes-discord toolset; requires the bot to hold the relevant Discord permissions.
feishu_doc feishu_doc_read Read Feishu/Lark document content. Used by the Feishu document-comment intelligent-reply handler.
feishu_drive feishu_drive_add_comment, feishu_drive_list_comments, feishu_drive_list_comment_replies, feishu_drive_reply_comment Feishu/Lark drive comment operations. Scoped to the comment agent; not exposed on hermes-cli or other messaging toolsets.
file patch, read_file, search_files, write_file File reading, writing, searching, and editing.
homeassistant ha_call_service, ha_get_state, ha_list_entities, ha_list_services Smart home control via Home Assistant. Only available when HASS_TOKEN is set.
computer_use computer_use Background macOS desktop control via cua-driver — does not steal cursor/focus. Works with any tool-capable model. macOS only; requires cua-driver on $PATH.
image_gen image_generate Text-to-image generation via FAL.ai (with opt-in OpenAI / xAI backends).
video_gen video_generate Text-to-video and image-to-video via plugin-registered backends (xAI Grok-Imagine, FAL.ai Veo 3.1 / Pixverse v6 / Kling O3). Pass image_url to animate an image; omit it for text-to-video.
kanban kanban_block, kanban_comment, kanban_complete, kanban_create, kanban_heartbeat, kanban_link, kanban_show Multi-agent coordination tools — only registered when the agent is spawned by the kanban dispatcher (HERMES_KANBAN_TASK env set). Lets workers mark tasks done with structured handoffs, block for human input, heartbeat during long ops, comment on threads, and (for orchestrators) fan out into child tasks.
memory memory Persistent cross-session memory management.
messaging send_message Send messages to other platforms (Telegram, Discord, etc.) from within a session.
moa mixture_of_agents Multi-model consensus via 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 training environment management (Atropos).
safe image_generate, vision_analyze, web_extract, web_search (via includes) Read-only research + media generation. No file writes, no terminal, no code execution.
search web_search Web search only (without extract).
session_search session_search Search past conversation sessions.
skills skill_manage, skill_view, skills_list Skill CRUD and browsing.
spotify spotify_albums, spotify_devices, spotify_library, spotify_playback, spotify_playlists, spotify_queue, spotify_search Native Spotify control (playback, queue, search, playlists, albums, library). Registered by the bundled spotify plugin.
terminal process, terminal Shell command execution and background process management.
todo todo Task list management within a session.
tts text_to_speech Text-to-speech audio generation.
vision vision_analyze Image analysis via vision-capable models.
video video_analyze Video analysis and understanding tools (opt-in, not in the default toolset — add explicitly via --toolsets).
web web_extract, web_search Web search and page content extraction.
yuanbao yb_query_group_info, yb_query_group_members, yb_search_sticker, yb_send_dm, yb_send_sticker Yuanbao DM/group actions and sticker search. Registered only on hermes-yuanbao.

Platform Toolsets

Platform toolsets define the complete tool configuration for a deployment target. Most messaging platforms use the same set as hermes-cli:

Toolset Differences from hermes-cli
hermes-cli Full toolset — the default for interactive CLI sessions. Includes file, terminal, web, browser, memory, skills, vision, image_gen, todo, tts, delegation, code_execution, cronjob, session_search, clarify, and safe (read-only) bundles plus the standard messaging tools.
hermes-acp Drops clarify, cronjob, image_generate, send_message, text_to_speech, and all four Home Assistant tools. Focused on coding tasks in IDE context.
hermes-api-server Drops clarify, send_message, and text_to_speech. Keeps everything else — suitable for programmatic access where user interaction isn't possible.
hermes-cron Same as hermes-cli.
hermes-telegram Same as hermes-cli.
hermes-discord Adds discord and discord_admin on top of hermes-cli.
hermes-slack Same as hermes-cli.
hermes-whatsapp Same as hermes-cli.
hermes-signal Same as hermes-cli.
hermes-matrix Same as hermes-cli.
hermes-mattermost Same as hermes-cli.
hermes-email Same as hermes-cli.
hermes-sms Same as hermes-cli.
hermes-bluebubbles Same as hermes-cli.
hermes-dingtalk Same as hermes-cli.
hermes-feishu Adds the five feishu_doc_* / feishu_drive_* tools (only used by the document-comment handler, not the regular chat adapter).
hermes-qqbot Same as hermes-cli.
hermes-wecom Same as hermes-cli.
hermes-wecom-callback Same as hermes-cli.
hermes-weixin Same as hermes-cli.
hermes-yuanbao Adds the five yb_* tools (DM/group/sticker) on top of hermes-cli.
hermes-homeassistant Same as hermes-cli (the Home Assistant tools are already present by default and activate when HASS_TOKEN is set).
hermes-webhook Same as hermes-cli.
hermes-gateway Internal gateway orchestrator toolset — union of every hermes-<platform> toolset; used when the gateway needs to accept any message source.

Dynamic Toolsets

MCP server toolsets

Each configured MCP server generates a mcp-<server> toolset at runtime. For example, if you configure a github MCP server, a mcp-github toolset is created containing all tools that server exposes.

# 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

Подстановочные знаки

Связь с «инструментами Гермеса»

Команда «hermestools» предоставляет пользовательский интерфейс на основе проклятий для включения или выключения отдельных инструментов для каждой платформы. Это работает на уровне инструмента (более тонком, чем наборы инструментов) и сохраняется в config.yaml. Отключенные инструменты отфильтровываются, даже если их набор инструментов включен.

См. также: Справочник по инструментам для получения полного списка отдельных инструментов и их параметров.