主题
受信任文件夹
受信任文件夹功能是一项安全设置,让你可以控制哪些项目可以使用 Gemini CLI 的完整功能。它通过在 CLI 从文件夹加载任何项目特定配置之前要求你批准该文件夹,来防止潜在的恶意代码运行。
启用功能
受信任文件夹功能默认禁用。要使用它,你必须首先在设置中启用它。
在你的用户 settings.json 文件中添加以下内容:
json
{
"security": {
"folderTrust": {
"enabled": true
}
}
}工作原理:信任对话框
启用该功能后,当你第一次从某个文件夹运行 Gemini CLI 时,会自动出现一个对话框,提示你做出选择:
- 信任文件夹:授予当前文件夹(例如
my-project)完全信任。 - 信任父文件夹:授予父目录(例如
safe-projects)信任,这也会自动信任其所有子目录。如果你将所有安全项目放在一个地方,这很有用。 - 不信任:将文件夹标记为不受信任。CLI 将在受限的"安全模式"下运行。
你的选择保存在中央文件(~/.gemini/trustedFolders.json)中,因此每个文件夹只会询问你一次。
为什么信任很重要:不受信任工作区的影响
当文件夹不受信任时,Gemini CLI 在受限的"安全模式"下运行以保护你。在此模式下,以下功能被禁用:
工作区设置被忽略:CLI 不会从项目加载
.gemini/settings.json文件。这可以防止加载自定义工具和其他潜在危险的配置。环境变量被忽略:CLI 不会从项目加载任何
.env文件。扩展管理受限:你无法安装、更新或卸载扩展。
工具自动接受被禁用:在运行任何工具之前,你将始终收到提示,即使你已全局启用自动接受。
自动记忆加载被禁用:CLI 不会自动从本地设置中指定的目录将文件加载到上下文中。
MCP 服务器不连接:CLI 不会尝试连接到任何 Model Context Protocol (MCP) 服务器。
自定义命令不加载:CLI 不会从 .toml 文件加载任何自定义命令,包括项目特定和全局用户命令。
授予文件夹信任可以为该工作区解锁 Gemini CLI 的完整功能。
管理你的信任设置
如果你需要更改决定或查看所有设置,你有几个选项:
更改当前文件夹的信任:在 CLI 中运行
/permissions命令。这将弹出相同的交互式对话框,允许你更改当前文件夹的信任级别。查看所有信任规则:要查看所有受信任和不受信任文件夹规则的完整列表,你可以检查主目录中
~/.gemini/trustedFolders.json文件的内容。
信任检查过程(高级)
对于高级用户,了解信任如何确定的确切操作顺序很有帮助:
IDE 信任信号:如果你正在使用 IDE 集成,CLI 首先询问 IDE 工作区是否受信任。IDE 的响应具有最高优先级。
本地信任文件:如果 IDE 未连接,CLI 检查中央
~/.gemini/trustedFolders.json文件。