H繁中版
文件參考手冊toolsets reference
<!-- Source: https://hermesbible.com/docs/reference/toolsets-reference -->

工具組是控制代理能力的命名工具集合。它們是按平台、按工作階段或按任務設定工具可用性的主要機制。

工具組運作方式

每個工具恰好屬於一個工具組。当你啟用一個工具組時,該集合中的所有工具都會對代理可用。工具組分為三種類型:

  • 核心 — 一個相關工具的邏輯群組(例如,file 包含 read_filewrite_filepatchsearch_files
  • 複合 — 將多個核心工具組組合用於常見場景(例如,debugging 包含 file、terminal 和 web 工具)
  • 平台 — 針對特定部署上下文的完整工具設定(例如,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 UI 按平台啟用/停用

或在工作階段中:

/tools list
/tools disable browser
/tools enable homeassistant

核心工具組

工具組工具用途
browserbrowser_backbrowser_cdpbrowser_clickbrowser_consolebrowser_dialogbrowser_get_imagesbrowser_navigatebrowser_pressbrowser_scrollbrowser_snapshotbrowser_typebrowser_visionweb_search核心瀏覽器自動化。包含 web_search 作為快速查詢的回退。browser_cdpbrowser_dialog 在運行時控制 — 僅在工作階段開始時可連線至 CDP 端點(透過 /browser connectbrowser.cdp_url 設定、Browserbase 或 Camofox)時註冊。browser_dialog 與 CDP 監督器附加時 browser_snapshot 新增的 pending_dialogsframe_tree 欄位協同工作。
clarifyclarify當代理需要澄清時向使用者提問。
code_executionexecute_code執行以程式化方式呼叫 Hermes 工具的 Python 腳本。
cronjobcronjob排程和管理週期性任務。
debugging複合(file + terminal + web偵錯套件 — file、process/terminal、web extract/search。
delegationdelegate_task產生隔離的子代理實例用於並行工作。
discorddiscord核心 Discord 文字/嵌入/私訊操作(僅限閘道)。在 hermes-discord 工具組上啟用。
discord_admindiscord_adminDiscord 管理(封禁、角色變更、頻道管理)。在 hermes-discord 工具組上啟用;需要機器人持有相關 Discord 權限。
feishu_docfeishu_doc_read讀取飛書/Lark 文件內容。由飛書文件留言智能回覆處理器使用。
feishu_drivefeishu_drive_add_commentfeishu_drive_list_commentsfeishu_drive_list_comment_repliesfeishu_drive_reply_comment飛書/Lark 雲端硬碟留言操作。限定於留言代理;不在 hermes-cli 或其他訊息工具組上暴露。
filepatchread_filesearch_fileswrite_file檔案讀取、寫入、搜尋和編輯。
homeassistantha_call_serviceha_get_stateha_list_entitiesha_list_services透過 Home Assistant 控制智慧家庭。僅在設定 HASS_TOKEN 時可用。
computer_usecomputer_use透過 cua-driver 進行背景 macOS 桌面控制 — 不會搶佔游標/焦點。適用於任何支援工具的模型。僅限 macOS;需要 $PATH 上的 cua-driver
context_engine(依情況而異)由活躍上下文引擎外掛暴露的運行時工具(在外掛填充之前為空)。
image_genimage_generate透過 FAL.ai 進行文字轉圖片生成(可選擇加入 OpenAI / xAI 後端)。
video_genvideo_generate透過外掛註冊的後端進行文字轉影片和圖片轉影片(xAI Grok-Imagine、FAL.ai Veo 3.1 / Pixverse v6 / Kling O3)。傳入 image_url 以製作圖片動畫;省略則為文字轉影片。
kanbankanban_blockkanban_commentkanban_completekanban_createkanban_heartbeatkanban_linkkanban_listkanban_showkanban_unblock多代理協作工具。為調度器產生的工作人員(HERMES_KANBAN_TASK)和明確以名稱列出 kanban 工具組的設定檔註冊(all/* 萬用字元不會啟用它)。工作人員標記任務完成、阻塞、心跳、留言和建立/連結後續任務;協調器設定檔額外獲得板路由工具如 list/unblock。
memorymemory持久性跨工作階段記憶管理。
messagingsend_message在工作階段內向其他平台(Telegram、Discord 等)傳送訊息。
moamixture_of_agents透過 Mixture of Agents 進行多模型共識。
safeimage_generatevision_analyzeweb_extractweb_search(透過 includes唯讀研究 + 媒體生成。無檔案寫入、無終端、無程式碼執行。
searchweb_search僅限網路搜尋(不含提取)。
session_searchsession_search搜尋過去的對話工作階段。
skillsskill_manageskill_viewskills_list技能 CRUD 和瀏覽。
spotifyspotify_albumsspotify_devicesspotify_libraryspotify_playbackspotify_playlistsspotify_queuespotify_search原生 Spotify 控制(播放、佇列、搜尋、播放清單、專輯、資料庫)。由內建 spotify 外掛註冊。
terminalprocessterminalShell 命令執行和背景進程管理。
todotodo工作階段內的任務清單管理。
ttstext_to_speech文字轉語音音訊生成。
visionvision_analyze透過支援視覺的模型進行圖片分析。
videovideo_analyze影片分析和理解工具(選擇性,不在預設工具組中 — 透過 --toolsets 明確新增)。
webweb_extractweb_search網路搜尋和頁面內容提取。
x_searchx_search使用 xAI 內建的 x_search Responses 工具搜尋 X(Twitter)貼文和討論串。預設關閉;透過 hermes tools 選擇加入。僅在已設定 xAI 憑證(SuperGrok OAuth 或 XAI_API_KEY)時註冊。
yuanbaoyb_query_group_infoyb_query_group_membersyb_search_stickeryb_send_dmyb_send_sticker元寶私訊/群組操作和貼圖搜尋。僅在 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移除 clarifycronjobimage_generatesend_messagetext_to_speech 和全部四個 Home Assistant 工具。專注於 IDE 上下文中的編碼任務。
hermes-api-server移除 clarifysend_messagetext_to_speech。保留其餘全部 — 適用於無法與使用者互動的程式化存取。
hermes-cronhermes-cli 相同。
hermes-telegramhermes-cli 相同。
hermes-discordhermes-cli 基礎上新增 discorddiscord_admin
hermes-slackhermes-cli 相同。
hermes-whatsapphermes-cli 相同。
hermes-signalhermes-cli 相同。
hermes-matrixhermes-cli 相同。
hermes-mattermosthermes-cli 相同。
hermes-emailhermes-cli 相同。
hermes-smshermes-cli 相同。
hermes-bluebubbleshermes-cli 相同。
hermes-dingtalkhermes-cli 相同。
hermes-feishu新增五個 feishu_doc_* / feishu_drive_* 工具(僅由文件留言處理器使用,非一般聊天適配器)。
hermes-qqbothermes-cli 相同。
hermes-wecomhermes-cli 相同。
hermes-wecom-callbackhermes-cli 相同。
hermes-weixinhermes-cli 相同。
hermes-yuanbaohermes-cli 基礎上新增五個 yb_* 工具(私訊/群組/貼圖)。
hermes-homeassistanthermes-cli 相同(Home Assistant 工具預設已存在,當 HASS_TOKEN 設定時啟用)。
hermes-webhookhermes-cli 相同。
hermes-gateway內部閘道協調器工具組 — 所有 hermes-<platform> 工具組的聯集;當閘道需要接受任何訊息來源時使用。

動態工具組

MCP 伺服器工具組

每個已設定的 MCP 伺服器在運行時生成一個 mcp-<server> 工具組。例如,如果你設定了一個 github MCP 伺服器,就會建立一個 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* — 展開為所有已註冊的工具組(內建 + 動態 + 外掛)

少數工具在工具組成員資格之上還有額外的可用性檢查,不會僅透過 all/* 就啟用:

  • 能力控制的工具(browser、computer_usecode_execution、飛書、Home Assistant、cronjob)僅在其後端/憑證先決條件已設定時出現。
  • 工作流程控制的工具 — kanban 工具組 — 是刻意選擇性加入的。all/* 不會啟用 kanban;你必須明確列出 kanban(或是設定 HERMES_KANBAN_TASK 的調度器產生的工作人員)。Kanban 工具會變更共享板狀態,因此即使在 all 下也預設關閉。

hermes tools 的關係

hermes tools 命令提供基於 curses 的 UI,用於按平台切換個別工具的開關。這在工具層級操作(比工具組更細粒度),並持久化到 config.yaml。已停用的工具會被過濾掉,即使其工具組已啟用。

另請參見:工具參考 了解完整的個別工具及其參數清單。



MCP 設定參考