Skip to content

受信任文件夹

受信任文件夹功能是一项安全设置,让你可以控制哪些项目可以使用 Gemini CLI 的完整功能。它通过在 CLI 从文件夹加载任何项目特定配置之前要求你批准该文件夹,来防止潜在的恶意代码运行。

启用功能

受信任文件夹功能默认禁用。要使用它,你必须首先在设置中启用它。

在你的用户 settings.json 文件中添加以下内容:

json
{
  "security": {
    "folderTrust": {
      "enabled": true
    }
  }
}

工作原理:信任对话框

启用该功能后,当你第一次从某个文件夹运行 Gemini CLI 时,会自动出现一个对话框,提示你做出选择:

  • 信任文件夹:授予当前文件夹(例如 my-project)完全信任。
  • 信任父文件夹:授予父目录(例如 safe-projects)信任,这也会自动信任其所有子目录。如果你将所有安全项目放在一个地方,这很有用。
  • 不信任:将文件夹标记为不受信任。CLI 将在受限的"安全模式"下运行。

你的选择保存在中央文件(~/.gemini/trustedFolders.json)中,因此每个文件夹只会询问你一次。

为什么信任很重要:不受信任工作区的影响

当文件夹不受信任时,Gemini CLI 在受限的"安全模式"下运行以保护你。在此模式下,以下功能被禁用:

  1. 工作区设置被忽略:CLI 不会从项目加载 .gemini/settings.json 文件。这可以防止加载自定义工具和其他潜在危险的配置。

  2. 环境变量被忽略:CLI 不会从项目加载任何 .env 文件。

  3. 扩展管理受限:你无法安装、更新或卸载扩展。

  4. 工具自动接受被禁用:在运行任何工具之前,你将始终收到提示,即使你已全局启用自动接受。

  5. 自动记忆加载被禁用:CLI 不会自动从本地设置中指定的目录将文件加载到上下文中。

  6. MCP 服务器不连接:CLI 不会尝试连接到任何 Model Context Protocol (MCP) 服务器。

  7. 自定义命令不加载:CLI 不会从 .toml 文件加载任何自定义命令,包括项目特定和全局用户命令。

授予文件夹信任可以为该工作区解锁 Gemini CLI 的完整功能。

管理你的信任设置

如果你需要更改决定或查看所有设置,你有几个选项:

  • 更改当前文件夹的信任:在 CLI 中运行 /permissions 命令。这将弹出相同的交互式对话框,允许你更改当前文件夹的信任级别。

  • 查看所有信任规则:要查看所有受信任和不受信任文件夹规则的完整列表,你可以检查主目录中 ~/.gemini/trustedFolders.json 文件的内容。

信任检查过程(高级)

对于高级用户,了解信任如何确定的确切操作顺序很有帮助:

  1. IDE 信任信号:如果你正在使用 IDE 集成,CLI 首先询问 IDE 工作区是否受信任。IDE 的响应具有最高优先级。

  2. 本地信任文件:如果 IDE 未连接,CLI 检查中央 ~/.gemini/trustedFolders.json 文件。

aicodex 文档网站