跳到主要内容

工具集参考

工具集(Toolset)是工具的命名集合,用于控制 agent 可以执行的操作。它是按平台、按会话或按任务配置工具可用性的主要机制。

工具集的工作原理

每个工具恰好属于一个工具集。启用某个工具集后,该集合中的所有工具都将对 agent 可用。工具集分为三种类型:

  • 核心(Core) — 一组相关工具的逻辑分组(例如,file 包含 read_filewrite_filepatchsearch_files
  • 复合(Composite) — 将多个核心工具集组合用于常见场景(例如,debugging 包含 file、terminal 和 web 工具)
  • 平台(Platform) — 针对特定部署环境的完整工具配置(例如,aigenlabs-cli 是交互式 CLI 会话的默认配置)

配置工具集

按会话(CLI)

aigenlabs chat --toolsets web,file,terminal
aigenlabs chat --toolsets debugging # composite — expands to file + terminal + web
aigenlabs chat --toolsets all # everything

按平台(config.yaml)

toolsets:
- aigenlabs-cli # default for CLI
# - aigenlabs-telegram # override for Telegram gateway

交互式管理

aigenlabs tools                            # curses UI to enable/disable per platform

或在会话中:

/tools list
/tools disable browser
/tools enable homeassistant

核心工具集

工具集工具用途
browserbrowser_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_cdpbrowser_dialog 在运行时受限——仅在会话启动时 CDP 端点可达(通过 /browser connectbrowser.cdp_url 配置、Browserbase 或 Camofox)时才注册。browser_dialogbrowser_snapshot 在附加 CDP supervisor 时添加的 pending_dialogsframe_tree 字段配合使用。
clarifyclarify当 agent 需要澄清时向用户提问。
code_executionexecute_code运行以编程方式调用 AigenLabs 工具的 Python 脚本。
cronjobcronjob调度和管理周期性任务。
debugging复合(file + terminal + web调试套件——文件、进程/终端、网页提取/搜索。
delegationdelegate_task生成隔离的子 agent 实例以并行执行工作。
discorddiscord核心 Discord 文本/嵌入/私信操作(仅限 gateway)。在 aigenlabs-discord 工具集上激活。
discord_admindiscord_adminDiscord 管理操作(封禁、角色变更、频道管理)。在 aigenlabs-discord 工具集上激活;需要 bot 持有相关 Discord 权限。
feishu_docfeishu_doc_read读取飞书/Lark 文档内容。由飞书文档评论智能回复处理器使用。
feishu_drivefeishu_drive_add_comment, feishu_drive_list_comments, feishu_drive_list_comment_replies, feishu_drive_reply_comment飞书/Lark 云盘评论操作。仅限评论 agent 使用;不在 aigenlabs-cli 或其他消息工具集上暴露。
filepatch, read_file, search_files, write_file文件读取、写入、搜索和编辑。
homeassistantha_call_service, ha_get_state, ha_list_entities, ha_list_services通过 Home Assistant 进行智能家居控制。仅在设置 HASS_TOKEN 时可用。
computer_usecomputer_use通过 cua-driver 进行后台 macOS 桌面控制——不抢占光标/焦点。适用于任何支持工具调用的模型。仅限 macOS;需要 cua-driver$PATH 中。
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_block, kanban_comment, kanban_complete, kanban_create, kanban_heartbeat, kanban_link, kanban_list, kanban_show, kanban_unblock多 agent 协调工具。为调度器生成的任务工作者(AIGENLABS_KANBAN_TASK)以及显式启用 kanban 工具集的 profile 注册。工作者可标记任务完成、阻塞、心跳、评论以及创建/关联后续任务;编排器 profile 还额外获得看板路由工具,如 list/unblock。
memorymemory持久化跨会话记忆管理。
messagingsend_message在会话中向其他平台(Telegram、Discord 等)发送消息。
moamixture_of_agents通过 Mixture of Agents 实现多模型共识。
safeimage_generate, vision_analyze, web_extract, web_search(通过 includes只读研究 + 媒体生成。无文件写入、无终端、无代码执行。
searchweb_search仅网页搜索(不含提取)。
session_searchsession_search搜索历史会话记录。
skillsskill_manage, skill_view, skills_list技能的增删改查与浏览。
spotifyspotify_albums, spotify_devices, spotify_library, spotify_playback, spotify_playlists, spotify_queue, spotify_search原生 Spotify 控制(播放、队列、搜索、播放列表、专辑、音乐库)。由内置 spotify 插件注册。
terminalprocess, terminalShell 命令执行和后台进程管理。
todotodo会话内任务列表管理。
ttstext_to_speech文本转语音音频生成。
visionvision_analyze通过视觉能力模型进行图像分析。
videovideo_analyze视频分析与理解工具(需手动启用,不在默认工具集中——通过 --toolsets 显式添加)。
webweb_extract, web_search网页搜索和页面内容提取。
x_searchx_search通过 xAI 内置的 x_search Responses 工具搜索 X(Twitter)帖子和话题。默认关闭;通过 aigenlabs tools 启用。仅在配置了 xAI 凭据(SuperGrok OAuth 或 XAI_API_KEY)时注册 schema。
yuanbaoyb_query_group_info, yb_query_group_members, yb_search_sticker, yb_send_dm, yb_send_sticker元宝私信/群组操作和表情包搜索。仅在 aigenlabs-yuanbao 上注册。

平台工具集

平台工具集定义了部署目标的完整工具配置。大多数消息平台使用与 aigenlabs-cli 相同的配置:

工具集aigenlabs-cli 的差异
aigenlabs-cli完整工具集——交互式 CLI 会话的默认配置。包含 file、terminal、web、browser、memory、skills、vision、image_gen、todo、tts、delegation、code_execution、cronjob、session_search、clarify 和 safe(只读)套件,以及标准消息工具。
aigenlabs-acp移除了 clarifycronjobimage_generatesend_messagetext_to_speech 以及全部四个 Home Assistant 工具。专注于 IDE 环境中的编码任务。
aigenlabs-api-server移除了 clarifysend_messagetext_to_speech。保留其他所有工具——适用于无法进行用户交互的程序化访问场景。
aigenlabs-cronaigenlabs-cli 相同。
aigenlabs-telegramaigenlabs-cli 相同。
aigenlabs-discordaigenlabs-cli 基础上添加了 discorddiscord_admin
aigenlabs-slackaigenlabs-cli 相同。
aigenlabs-whatsappaigenlabs-cli 相同。
aigenlabs-signalaigenlabs-cli 相同。
aigenlabs-matrixaigenlabs-cli 相同。
aigenlabs-mattermostaigenlabs-cli 相同。
aigenlabs-emailaigenlabs-cli 相同。
aigenlabs-smsaigenlabs-cli 相同。
aigenlabs-bluebubblesaigenlabs-cli 相同。
aigenlabs-dingtalkaigenlabs-cli 相同。
aigenlabs-feishu添加了五个 feishu_doc_* / feishu_drive_* 工具(仅由文档评论处理器使用,不用于常规聊天适配器)。
aigenlabs-qqbotaigenlabs-cli 相同。
aigenlabs-wecomaigenlabs-cli 相同。
aigenlabs-wecom-callbackaigenlabs-cli 相同。
aigenlabs-weixinaigenlabs-cli 相同。
aigenlabs-yuanbaoaigenlabs-cli 基础上添加了五个 yb_* 工具(私信/群组/表情包)。
aigenlabs-homeassistantaigenlabs-cli 相同(Home Assistant 工具默认已存在,在设置 HASS_TOKEN 时激活)。
aigenlabs-webhookaigenlabs-cli 相同。
aigenlabs-gateway内部 gateway 编排器工具集——所有 aigenlabs-<platform> 工具集的并集;当 gateway 需要接受任意消息来源时使用。

动态工具集

MCP server 工具集

每个已配置的 MCP server 在运行时会生成一个 mcp-<server> 工具集。例如,若配置了 github MCP server,则会创建包含该 server 所有暴露工具的 mcp-github 工具集。

# config.yaml
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]

这将创建一个 mcp-github 工具集,可在 --toolsets 或平台配置中引用。

插件工具集

插件可在初始化期间通过 ctx.register_tool() 注册自己的工具集。这些工具集与内置工具集并列显示,可以用相同方式启用/禁用。

自定义工具集

config.yaml 中定义自定义工具集,以创建项目专属的工具集合:

toolsets:
- aigenlabs-cli
custom_toolsets:
data-science:
- file
- terminal
- code_execution
- web
- vision

通配符

  • all* — 展开为所有已注册的工具集(内置 + 动态 + 插件)

aigenlabs tools 的关系

aigenlabs tools 命令提供基于 curses 的 UI,用于按平台切换单个工具的启用/禁用状态。该操作在工具级别进行(比工具集更细粒度),并持久化到 config.yaml。即使工具集已启用,被禁用的工具也会被过滤掉。

另请参阅:工具参考,获取所有单个工具及其参数的完整列表。