> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qoder.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 执行环境

Quest 支持 Local 和 Worktree 等执行环境。本文将介绍不同环境的适用场景及配置方法，帮助你安全、高效地隔离与执行任务。

| 环境           | 说明                                                                                 | 适用                   |
| :----------- | :--------------------------------------------------------------------------------- | :------------------- |
| **Local**    | 在当前打开的工作区直接改代码，变更落在当前项目目录                                                          | 小改动、快速验证             |
| **Worktree** | 使用独立的 [Git worktree](https://git-scm.com/docs/git-worktree) 检出，与主分支工作区隔离，确认后再合并或应用 | 中等复杂度、多次应用、同一仓库并行多任务 |

<Note>在套餐与配额允许范围内支持并行任务。</Note>

## Worktree

Worktree 模式基于 Git worktree 在后台创建独立工作区副本，让 Agent 在隔离环境中执行任务。主工作区保持干净，多个 Worktree 可并行运行。

### 适用场景

| 场景        | 说明                                       |
| --------- | ---------------------------------------- |
| **并行多任务** | 同时处理多个需求或重构，每条线独立推进，互不干扰                 |
| **高风险重构** | 让 Agent 大胆尝试架构调整或大规模重命名，不满意直接丢弃，主工作区毫发无损 |

### 如何使用

#### 创建工作树

1. 在聊天面板顶部的运行环境区域，点击当前模式（如「本地模式」）
2. 在下拉中选择 **Worktree**
3. 在模式选择器旁的分支下拉中，选择 Agent 基于哪条本地分支创建工作树
4. 输入任务描述并发送，Agent 会在独立的工作树中执行工作

如果主工作区存在未提交的改动，面板会显示「包含未提交变更」开关。开启后，创建时会将这些改动同步到工作树中，确保 Agent 看到你最新的代码状态。

#### 移交到本地

当 Agent 在工作树中完成工作后，你可以将结果带回主工作区继续开发：

在左侧任务列表中找到对应的工作树会话，点击会话的「移交到本地」操作，将 worktree 中的分支状态和未提交改动移交到本地主工作区，后续任务直接在本地继续执行。

<Note>
  执行移交前，本地工作区需要处于干净状态（没有未提交的变更），建议先 commit 或 stash 当前改动。
</Note>

#### 审查与提交

如果你不需要将变更带回本地，可以直接在工作树中完成提交：在会话右侧打开「审查与提交」面板，查看 Agent 所做的所有文件变更。确认无误后，在面板中创建新分支并提交代码。

### 初始化脚本

如需在创建 Worktree 时自动执行初始化操作（如安装依赖、复制环境变量文件），可在设置中找到「本地任务的 Worktree 配置」，编辑启动脚本。

### 清理

#### 自动清理

系统会自动清理较早的工作树以释放磁盘空间。你可以在管理面板底部配置清理策略：

* **最大保留数**：每个工作区默认保留 15 个工作树。

#### 手动清理

* 在左侧会话列表中，对工作树会话进行「删除」，会一并删除相应工作树。
* 也可以在设置中统一管理和删除不再需要的工作树。

### 注意事项

* **需要 Git 仓库**：项目必须是一个 Git 仓库，Worktree 选项才会出现。
* **移交前请保持工作区干净**：执行移交时，本地工作区不能有未提交的变更。
* **磁盘占用**：每个工作树是一份独立的文件检出，项目较大时多个工作树会占用相应的磁盘空间。合理配置最大保留数，避免空间不足。
