生产环境需即时禁用高危工具时,应优先采用会话中动态禁用方式:输入 /tools disable tool_name 后执行 /tools list 验证状态;启动时排除工具集可用 --toolsets 白名单;持久化禁用须修改 ~/.hermes/cli-config.yaml 中 allowed_tools 列表。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当你在生产环境运行 Hermes Agent,需要立即阻止某项高危工具(如 terminal 或 browser)被调用,防止误删文件、触发恶意网页跳转或执行未授权命令时,必须采用即时生效、可验证、不修改配置文件的禁用方式。
会话中动态禁用工具
此方法适用于已启动的交互式会话,指令发出后工具即刻失效,重启后自动恢复默认状态,适合临时封控或调试验证。
第一步:进入正在运行的 Hermes Agent 交互终端,确保提示符为 hermes> 或类似标识。
第二步:输入禁用指令,将 【tool_name】 替换为实际工具名(如 browser、terminal、vision),注意大小写与拼写必须完全匹配预定义名称:
/tools disable tool_name
第三步:执行 /tools list 查看当前启用状态,确认目标工具右侧显示 disabled。若仍显示 enabled,说明工具名错误或该工具未被 Agent 加载——此时需先检查 hermes config show | grep toolsets 确认当前会话是否包含该工具集。
启动时排除工具集
适用于新会话创建前就明确禁止某类能力,比如仅允许文件操作与网页搜索,彻底不加载终端执行模块,从源头规避风险。
方法一:使用 --toolsets 参数指定白名单
运行 hermes chat --toolsets web,file 启动会话。该命令仅加载 web 和 file 两类工具,terminal、browser、code_execution 等均不会初始化,内存中不存在对应执行器。
方法二:启用 all 工具集后再禁用特定项(慎用)
先启动 hermes chat --toolsets all,再立即执行 /tools disable terminal browser。这种方式虽可行,但存在极短时间窗口内工具已加载并可能被触发的风险,【不推荐用于生产敏感场景】。
持久化禁用工具(修改配置文件)
若需所有后续会话默认禁用某工具,必须编辑用户级配置文件,使变更固化。此操作影响全局,不可逆,务必提前备份。
1、打开配置文件:nano ~/.hermes/cli-config.yaml
2、定位到 allowed_tools: 字段(若不存在则手动添加该行,顶格书写,冒号后空一格)
3、在该字段下方缩进两个空格,逐行列出你**允许启用**的工具名,每行以短横线+空格开头,例如:
- web
- file
- session_search
4、保存退出后,新启动的会话将只加载列表中所列工具;未列出的工具(如 terminal)将被直接忽略,不会出现在 /tools list 输出中。











