条件激活机制
概述
Skills 系统中让技能根据当前工具可用性自动显示或隐藏的机制,实现技能的条件化呈现,避免无能力执行时的界面混乱。
关键内容
- 四种条件字段:
fallback_for_toolsets(当某 toolset 不可用时显示,作为回退方案)、fallback_for_tools(当特定工具不可用时显示)、requires_toolsets(只在某 toolset 可用时显示)、requires_tools(只在特定工具可用时显示) - 经典案例 — DuckDuckGo 回退:有 FIRECRAWL_API_KEY 时 web toolset 可用,DuckDuckGo 技能隐藏(用更好的工具);没有 API Key 时 web toolset 不可用,DuckDuckGo 技能自动出现
- 另一个案例 — 需要终端的技能:设置
requires_toolsets: [terminal],在纯对话模式(没有 terminal toolset)下自动隐藏,没有能力执行时显示只会造成混乱 - 用户无需手动管理:条件激活自动处理技能的显示与隐藏,根据当前环境动态调整
- 与渐进式加载的关系:条件激活在 Level 0 目录层面过滤技能,渐进式加载在内容层面控制 Token 消耗,两者协同实现高效的技能管理
来源
- NousResearch/hermes-agent — 2026 年 4 月版本,Hermes Agent 深度解析第四篇
相关
- Hermes Agent — implements
- 渐进式加载 — compares_to
- SKILL.md 格式规范 — part_of