- 人工智能
- AI Agent
- 桌面应用
【免费下载链接】Hermes-CN-Desktop
Hermes Agent CN desktop app, Windows-First, built with Tauri, Typescript and Rust. Isolated Hermes Agent core insides.
Hermes-CN-Desktop(Hermes Agent 中文社区桌面版)内置了一个名为YOLO 模式的高危能力:开启后,Agent 执行 shell 命令、删除文件等危险操作时不再弹出二次确认,全部自动批准。它对应后端HERMES_YOLO_MODE环境变量,是长时间批量任务下省掉重复点"确认"的利器,但也是一把双刃剑。本文带你 3 步开启 YOLO 模式,讲清它的风险边界与正确姿势,新手也能安全上手。
YOLO 模式是什么:三种审批模式一分钟看懂
在 Hermes-CN-Desktop 中,危险命令的审批策略共有三档(见 web/src/lib/approval-mode.ts):
| 模式 | 名称 | 行为 | 适合谁 |
|---|---|---|---|
default | 默认手动审批 | 遇到有风险命令就弹窗,等你点确认 | 绝大多数场景的默认安全策略 |
smart | Smart 智能审批 | 由辅助模型先判风险:低风险放行、高风险拒绝、不确定再问你 | 想省确认又怕失控的用户 |
yolo | YOLO 全部放行 | 自动批准所有有风险命令,不再弹窗 | 受信任/隔离环境下的批量任务 |
官方文档对 YOLO 的定义很直白:docs/yolo-mode.md 明确警告——"Agent 可能在你的工作区内执行不可逆操作(删除文件、改写代码、运行任意命令)。请仅在受信任的工作区、且你清楚 Agent 将要做什么时启用。"
开启 YOLO 模式的 3 个步骤:最快上手教程
第一步:找到「危险命令审批模式」开关
打开设置 → 常规,页面底部的「危险命令审批模式」区块就是入口(源码:web/src/routes/settings.tsx)。它被特意放在普通偏好之后,避免误触。
第二步:勾选「我已了解风险」并确认开启
点击「YOLO 全部放行」选项后,会弹出一个红色危险确认框,内容是:
开启后,Agent 执行 shell 命令、删除文件等高危操作时将不再弹出二次确认,全部自动批准。切换会重启内核(约 5-15 秒)。
你必须手动勾选「我已了解风险」,「确认开启」按钮才会点亮——这是产品层面刻意加的一道防误触闸门。
第三步:等待内核自动重启完成
确认后,桌面端会自动重启托管内核(managed runtime),期间屏幕中央显示"正在开启 YOLO 模式…"的重启遮罩,通常 5-15 秒完成,无需手动操作。
关闭则相反:点选其他审批模式即可,无需二次确认,内核同样自动重启。
为什么切换 YOLO 模式要重启内核?
这是新手最容易疑惑的一点。Hermes 后端在进程启动(模块导入)时一次性冻结HERMES_YOLO_MODE的值,运行期间无法再改。所以桌面端的实现是(源码:src/commands/yolo.rs):
- 把开关偏好持久化到 UI 存储(按当前 Profile 的
HERMES_HOME区分,保存在desktop-ui.sqlite); - 重启托管内核时,由 src/process/dashboard.rs 的
spawn_dashboard注入HERMES_YOLO_MODE=1;关闭时则显式env_remove,确保不会被继承的环境变量意外重新打开; - 重启完成后,高危命令才真正不再触发审批弹窗。
设置按 Profile 持久化,重启桌面端后依然生效,不会丢。
如何验证 YOLO 模式已生效
前端通过get_yolo_mode命令(hook:web/src/hooks/use-yolo-mode.ts)返回两个状态,理解它们能帮你排查"开关没反应"的问题:
enabled—— 当前持久化的偏好(你最后一次点的开关位置);effective——正在运行的内核实际启动时的 YOLO 状态。
正常情况下两者一致;如果你刚切换开关、内核还在重启中,会短暂出现enabled与effective不一致的情况,界面会显示「YOLO 启动开关已保存,重启桌面端后生效」的待生效提示。
行为验证最简单:开启后让 Agent 执行一条危险命令(比如删除一个测试文件),应当直接执行、不再出现审批确认弹窗。也可以顺手打开「高级 → 健康检查」页确认内核与 Dashboard 均正常。
💡 注意:YOLO 模式仅在托管内核(桌面端自己启动的 runtime)下可用。如果你连接的是外部本地/远程 Agent,审批策略由对方后端自行决定,开关会提示"当前连接的不是本机内核,YOLO 模式由当前后端自行配置"。
YOLO 模式的风险清单:会发生什么
别被名字迷惑,YOLO 模式下真正危险的场景包括:
- 🗑️不可逆删除:
rm -rf、批量清理文件,删错了没有撤销; - 💥改写项目代码:Agent 批量重构、误改关键文件;
- 🔐执行任意命令:模型幻觉生成的命令也会照单执行,包括误删目录、写坏配置;
- ⏱️无人值守放大风险:你挂机跑长任务时,出错没有人工拦截点,错误会一路执行到底。
正确姿势:5 条让 YOLO 模式安全落地的建议
- 只在受信任的工作区开:新项目、实验仓库、测试目录优先;生产代码库保持默认审批。
- 先提交再开 YOLO:开启前
git commit一次,出了事故随时能回滚,这是最重要的兜底。 - 用隔离环境:容器、虚拟机或独立 clone 的工作副本,把爆炸半径关进笼子。
- 任务指令要具体:给 Agent 的提示词越明确,它"自由发挥"执行危险命令的空间越小。
- 用完即关:批量任务结束后切回默认/智能审批,养成肌肉记忆;切到 Smart 智能审批是不错的折中——日常低风险操作放行,高风险仍有拦截。
常见问题 FAQ
问:YOLO 模式和--yolo参数是一回事吗?答:是的。桌面端开关等价于 CLI 的--yolo参数,最终都是给内核注入HERMES_YOLO_MODE=1。
问:可以在命令行里直接开吗?答:可以(高级用法)。在桌面端进程的环境里设置HERMES_YOLO_MODE=1,会与界面开关「或」叠加(任一为真即开启),适合 dev / 脚本场景。
问:切换 YOLO 会丢当前对话吗?答:不会。切换只重启托管内核(同一HERMES_HOME),会话历史持久化在磁盘,重启后自动重连恢复。
问:为什么我勾了开关,提示"待生效"?答:内核重启尚未完成或重启失败。等重启遮罩消失即可;若长时间不消失,重启一次桌面端即可应用已保存的设置。
相关文档与源码
- 功能文档:docs/yolo-mode.md
- 后端命令实现(查询/切换 + 重启内核):src/commands/yolo.rs
- 内核启动时注入环境变量的逻辑:src/process/dashboard.rs
- 偏好持久化(KV 存储):src/ui_store.rs
- 设置页审批模式 UI:web/src/routes/settings.tsx
- 前端查询/切换 hook:web/src/hooks/use-yolo-mode.ts
一句话总结:YOLO 模式是 Hermes-CN-Desktop 为"批量、可信、可回滚"场景准备的提速开关——先在 git 里兜个底,只在受信任工作区开启,用完记得关掉,就能既快又稳。
- 人工智能
- AI Agent
- 桌面应用
【免费下载链接】Hermes-CN-Desktop
Hermes Agent CN desktop app, Windows-First, built with Tauri, Typescript and Rust. Isolated Hermes Agent core insides.
相关推荐
AlertKit与触觉反馈:提升用户体验的完美结合
AlertKit与触觉反馈:提升用户体验的完美结合 在iOS应用开发中,用户体验的细微差别往往决定了应用的成败。 AlertKit 作为一款原生iOS弹窗库,完
UI库/组件移动开发终极xdotool安全使用指南:保护你的系统免受自动化脚本风险
终极xdotool安全使用指南:保护你的系统免受自动化脚本风险 xdotool是一款功能强大的命令行工具,允许用户模拟键盘输入、鼠标操作和窗口管理。虽然它为自动
3步避坑指南:BongoCat模型合规使用与版权风险排查
3步避坑指南:BongoCat模型合规使用与版权风险排查 BongoCat是一款能让呆萌可爱的猫咪形象陪伴你键盘敲击与鼠标操作的趣味软件,每一次输入都能充满活力
桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考