Trusted Folders(受信任目录)
Trusted Folders 是一项安全设置,用于控制哪些项目可以使用 Gemini CLI 的全部能力。启用后,CLI 会在加载项目级配置之前征求你的同意,从而阻止潜在的恶意代码运行。
启用功能
默认情况下该功能关闭,需要在设置中手动开启。将以下内容添加到用户级 settings.json:
{
"security": {
"folderTrust": {
"enabled": true
}
}
}
工作方式:信任对话框
启用后,当你第一次在某个目录下运行 Gemini CLI 时,会弹出提示:
- Trust folder:信任当前目录(例如
my-project)。 - Trust parent folder:信任父目录(例如
safe-projects),其所有子目录都会自动获得信任,适合全部安全项目集中存放的情况。 - Don’t trust:标记为不受信任,此时 CLI 会进入受限的“安全模式”。
选择会写入 ~/.gemini/trustedFolders.json,同一目录只会询问一次。
为什么信任很重要:不受信任目录的影响
当目录被标记为“不受信任”时,Gemini CLI 会启用安全模式,以下能力会被禁用:
- 忽略工作区设置:不会加载项目内的
.gemini/settings.json,因此无法使用项目自定义工具或其他高风险配置。 - 忽略环境变量:项目中的
.env文件不会被读取。 - 扩展管理受限:无法安装、更新或卸载扩展。
- 工具自动批准禁用:即使全局开启了自动批准,也会在执行工具前请求确认。
- 不自动加载记忆:不会根据本地设置自动加载上下文文件。
只有在信任目录后,CLI 才会恢复完整功能。
管理信任设置
若需修改或查看信任状态,可以:
- 调整当前目录信任级别:在 CLI 中执行
/permissions,会出现同样的交互式对话框,可重新选择。 - 查看全部规则:打开
~/.gemini/trustedFolders.json,即可查看所有受信任与不受信任目录。
信任判定流程(进阶)
了解判定顺序有助于故障排查:
- IDE 信号:如使用了IDE 集成,CLI 会先询问 IDE 的信任状态,IDE 的结果优先级最高。
- 本地信任文件:若没有 IDE 信号,则读取
~/.gemini/trustedFolders.json。