用 Claude Code 、Codex 、Gemini CLI 这些工具的朋友应该都有同感:权限提示太频繁了。
每个 AI CLI 跳过权限的参数都不一样:Claude 是 --dangerously-skip-permissions,Codex 是 --dangerously-bypass-approvals-and-sandbox,Gemini 和 Qwen 又换成了 --yolo,Aider 则是 --yes-always。装了三四个工具之后,根本记不住。
我写了一个很小的 npm 包来解决这个问题:yolo-ai。
GitHub: https://github.com/2501224066/yolo-ai
核心逻辑就一句话:用 yolo 前缀调用任何一个 AI CLI ,它会自动把该工具对应的“跳过权限”参数塞进去,然后把终端交还给子进程。
用法
npm install -g yolo-ai
然后:
yolo claude # → claude --dangerously-skip-permissions
yolo codex # → codex --dangerously-bypass-approvals-and-sandbox
yolo gemini # → gemini --yolo
yolo aider # → aider --yes-always
目前支持 9 个 agent:Claude 、Agy 、Codex 、Gemini 、Qwen 、Crush 、OpenCode 、Cn 、Aider 。yolo --list 会列出你机器上实际装了哪些。
参数会原样透传,交互式和非交互式都能用:
yolo claude --continue
yolo claude -p "explain this repo"
Windows 下也不用改 shell profile 。npm 会生成 yolo( sh )、yolo.cmd、yolo.ps1 三个 shim ,Git Bash 、PowerShell 、cmd.exe 都能直接跑,不依赖任何 rc 文件。
说清楚风险
这个工具是 Dangerous by design 的,README 第一段就写了。yolo 的本质是把 agent 的权限提示关掉,意味着它可以在不问你的情况下删文件、推 commit 、装包。只建议在你本来就愿意让 agent 无人值守跑的场景里用,不要在存了重要东西的目录里随手 yolo claude。
为此留了两个安全出口:
yolo --dry-run只打印最终命令,不执行,可以先确认它到底会跑什么;- 如果某个 agent 本身支持沙箱,可以把它自己的 sandbox 参数和
yolo组合使用,做到“不弹权限提示,但仍然限制文件系统访问”。
为什么不用 shell alias
我之前也试过在 .zshrc 里写 alias ,后来发现两个问题:换到 Windows 或者换一台机器就没了; alias 和 shell 的加载顺序、PATH 解析搅在一起,时不时静默失效。yolo-ai 的 shim 完全走 PATH 查找,不碰 shell profile ,npm 装完之后在任何受支持的 shell 里都能直接调。
项目是 MIT ,代码量很小,registry 加一个新的 agent 只需要在 lib/registry.js 里补一行 flag 和 probe 就行。如果你同时在用好几个 AI CLI ,被权限提示烦到过,应该能省一点事。
GitHub 链接再放一次: https://github.com/2501224066/yolo-ai
欢迎试用,也欢迎提 issue 说想加哪个 agent 。