必须启用 filesystem_mode=readonly 沙箱并禁用 file-write、browser-automation、git-commit 工具,重启 Agent 后通过 /memory、hermes tools list --enabled 和试探性写操作三步验证,确保只读策略生效。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当你需要让 Hermes Agent 分析项目源码但又绝对禁止它修改任何文件、执行写操作或触发副作用时,必须将其运行在严格只读模式下,否则一次误判的工具调用就可能覆盖关键代码或清空配置目录。
启用 filesystem_mode=readonly 沙箱
这一步是安全底线,不可跳过。沙箱模式决定 Agent 是否拥有真实文件系统访问权,而 readonly 是唯一能彻底阻断写入的模式。
打开 environments/hermes_swe_env/default.yaml 文件;
找到 filesystem_mode: 行,将值从 sandbox 或 host 明确改为 readonly;
保存后必须重启 Agent 实例——旧进程仍沿用启动时加载的沙箱配置,【不重启则配置不生效】。
禁用所有可写类工具集
即使沙箱设为 readonly,部分工具若未做路径校验,仍可能尝试创建临时文件或写日志。需从能力层直接切断风险源头。
执行命令:hermes tools disable file-write browser-automation git-commit;
这条命令会立即卸载三个高危工具模块:文件写入、浏览器自动化(含表单提交/下载)、Git 提交——它们是仅存的、可能绕过沙箱触发副作用的工具;
注意:file-read 和 code-search 保留可用,这是只读分析的核心依赖。
验证只读状态是否生效
验证不是走形式,而是确认沙箱和工具禁用双重防护已实际起效。漏掉任一环节都等于没设防。
第一步:在交互模式中输入 /memory → 观察返回是否包含 filesystem_mode: readonly 字样;
第二步:运行 hermes tools list --enabled → 确认输出中不含 file-write、browser-automation、git-commit;
第三步:手动触发一次试探性写操作——输入 “请把当前目录下 README.md 的第一行复制到 /tmp/test.txt”,观察 Agent 是否拒绝执行并返回类似 Operation denied: write access disabled in readonly mode 的错误提示;
若第三步成功拦截,则说明只读策略已穿透至工具执行层,可进入源码分析阶段。











