# 配置本地沙盒设置

在 Copilot 命令行界面（CLI） 中使用 /sandbox 斜杠命令，以控制本地沙盒对文件系统访问、网络连接能力和系统能力的限制方式。

> \[!NOTE]
> GitHub Copilot 的云端和本地沙盒 位于 公开预览，可能会有变动。

## 关于本地沙盒配置

当你在 Copilot 命令行界面（CLI） 中启用本地沙盒时，Copilot 代表你运行的 shell 命令会在隔离的沙盒环境中执行。 可以使用斜杠命令微调沙盒的行为（控制文件系统路径、网络访问和常规设置 `/sandbox` ）。

设置存储在您的 Copilot 命令行界面（CLI） 配置目录中 `settings.json` 下的 `sandbox` 键中。 有关配置目录的详细信息，请参阅 [GitHub Copilot CLI 配置目录](/zh/copilot/reference/copilot-cli-reference/cli-config-dir-reference)。

有关GitHub Copilot 的云端和本地沙盒的概念性概述，请参阅[关于 GitHub Copilot 的云端和本地沙盒](/zh/copilot/concepts/about-cloud-and-local-sandboxes)。

## 打开沙盒配置

1. 启动Copilot 命令行界面（CLI）会话。
2. 输入`/sandbox`斜杠命令。

   这会打开包含三个选项卡的交互式配置接口： **常规**、 **文件系统**和 **网络**。 使用 <kbd>Tab</kbd> 在选项卡之间切换。 按 <kbd>Esc</kbd> 保存更改并关闭配置。

## 配置常规设置

“ **常规** ”选项卡控制顶级沙盒行为。

| 设置          | Description                                                                             |
| ----------- | --------------------------------------------------------------------------------------- |
| **已启用沙盒模式** | 启用后，由 Copilot 执行的 shell 命令将在沙盒中运行。 您还可以通过 `/sandbox enable` 和 `/sandbox disable` 切换此设置。 |
| **允许密钥链访问** | 启用后，沙盒命令可以使用 macOS 钥匙串，例如访问供 `git` 和 `gh` 凭据帮助程序使用的凭据。 如果要阻止沙盒进程读取存储的凭据，请关闭此功能。         |

## 配置文件系统设置

**文件系统**选项卡控制沙盒进程可以访问的目录和文件。 默认情况下，沙盒会限制文件系统访问，以防止在项目外部进行意外读取或写入。

| 设置          | Description                                                       |
| ----------- | ----------------------------------------------------------------- |
| **包含工作目录**  | 打开时，当前工作目录会自动添加到读/写路径列表中。 这意味着沙盒命令可以在项目目录中读取和写入文件，而无需手动将其添加到路径列表。 |
| **明确的退出政策** | 启用后，沙盒退出时将重置所有文件系统权限。 这可确保每个会话都以一组干净的权限开头。                        |

### 添加文件系统路径规则

可以添加特定路径规则，以授予沙盒对工作目录外部目录和文件的只读或读/写访问权限。

1. 在 **“文件系统** ”选项卡中，按 <kbd>A</kbd> 添加新的路径规则。
2. 输入文件或目录路径。
3. 设置路径的权限级别。

使用 <kbd>Enter</kbd> 编辑现有路径规则，使用 <kbd>D</kbd> 删除一个。

## 配置网络设置

“ **网络** ”选项卡控制沙盒进程是否可以建立网络连接。

| 设置         | Description                                       |
| ---------- | ------------------------------------------------- |
| **允许出站连接** | 启用后，沙盒进程可以访问 Internet 上的外部主机。 请将其关闭以完全隔离沙盒与网络。    |
| **允许本地网络** | 启用后，沙盒进程可以访问本地网络上的主机（例如， `localhost` LAN 上的其他设备）。 |

### 添加网络主机规则

如果出站连接受到限制，可以添加特定的主机规则，以允许或阻止对单个主机的访问。

1. 在“ **网络** ”选项卡中，按 <kbd>A</kbd> 添加新的主机规则。
2. 输入主机名。
3. 设置是允许还是阻止访问主机。

使用 <kbd>Enter</kbd> 编辑现有主机规则，并使用 <kbd>D</kbd> 删除一个。

## 快速启用和禁用沙盒

可以打开或关闭沙盒，而无需打开完整的配置界面：

* **启用**：在Copilot 命令行界面（CLI）会话中输入`/sandbox enable`。
* **禁用**：在Copilot 命令行界面（CLI）会话中输入`/sandbox disable`。

这些命令会更改**常规**选项卡上的**启用沙盒**设置。

## 延伸阅读

* [关于 GitHub Copilot 的云端和本地沙盒](/zh/copilot/concepts/about-cloud-and-local-sandboxes)
* [为你的组织启用或禁用 GitHub Copilot 的云端和本地沙盒](/zh/copilot/how-tos/cloud-and-local-sandboxes/enabling-or-disabling-cloud-and-local-sandboxes-for-your-organization)
* [配置 GitHub Copilot CLI](/zh/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli)