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

# 計畫模式

> 在代理修改程式碼前，先草擬並審查實作計畫

計畫模式會將工作階段切換為唯讀狀態，讓代理可以探索程式碼庫並草擬實作計畫，而不會進行任何變更。您可以審查計畫、核准或要求修改，代理核准後才會開始撰寫程式碼。

## 進入計畫模式

有兩種方式可進入計畫模式：

* **`/plan` 指令** —在聊天輸入列中輸入 `/plan`（可選擇性地接上任務描述）。工作階段會在代理回合開始前立即進入計畫模式。空白工作階段的建議區塊中有一個 **Plan** 快捷按鈕可直接插入。
* **代理主動進入** —當您明確要求代理先規劃（「先規劃一下」、「在開始寫程式碼前寫個計畫」），代理會自行進入計畫模式。代理不會在一般請求中自行啟動。

```
/plan 為設定頁面加入深色模式支援
```

## 代理可以做什麼

計畫模式啟用時，工作階段為唯讀，但有幾項例外：

| 動作              | 允許   |
| --------------- | ---- |
| 讀取檔案、glob、grep  | 是    |
| 產生 explore 子代理  | 是    |
| 寫入 `plan/` 內的檔案 | 是    |
| 寫入 `plan/` 外的檔案 | 否    |
| 執行 shell 指令     | 唯讀沙箱 |
| MCP 工具          | 封鎖   |
| 工作階段異動工具        | 封鎖   |

計畫模式期間產生的子代理會繼承相同限制。

代理會探索專案，然後將 markdown 計畫儲存至 `plan/` —例如 `plan/2026-06-12-dark-mode.md`。計畫遵循結構化格式，包含標頭（目標、架構、技術棧）、檔案清單，以及使用核取方塊語法（`- [ ]`）的細粒度任務。

## 審查計畫

當代理完成計畫撰寫後，訊息列下方會出現審查面板。面板顯示：

* 渲染後的計畫 markdown（可摺疊）
* 直接開啟計畫檔案的連結
* **Approve plan** 與 **Request changes** 按鈕

**Approve** 會退出計畫模式，代理隨即開始實作已核准的計畫。

**Request changes** 會開啟回饋文字區域。描述需要變更的內容並送出—代理會修改計畫檔案並再次請求核准。

## 實作計畫

核准後，代理會依固定的紀律實作計畫：

* 依序處理各項任務，逐步精確執行，且不略過該步驟的驗證。
* 每完成一個步驟，就在計畫檔案中勾選對應的核取方塊（`- [ ]` → `- [x]`）。
* 當專案為 git 儲存庫時，每完成一項任務便提交一次。
* 若遇到阻礙—缺少相依套件、指示不明確，或某項驗證持續失敗—代理會停下來詢問您，而非自行猜測。
* 完成最後一項任務後，代理會針對受影響的範圍執行測試與 lint，並總結已建置的內容。

## 執行既有計畫

您也可以實作先前儲存的計畫—在其他工作階段中，或在原工作階段已關閉之後。輸入 `/plan execute` 並接上計畫的路徑（也可使用 `run` 別名）：

```
/plan execute plan/2026-06-12-dark-mode.md
```

這會在一般的讀寫工作階段中執行—**不會**進入計畫模式。代理會先讀取計畫並批判性地審查，在開始前向您提出任何缺口，接著以與已核准計畫相同的紀律進行實作。路徑相對於專案根目錄；若檔案不存在或位於專案之外，CTOR 會顯示通知，且不會開始任何回合。

## 進度追蹤

核准計畫後—或以 `/plan execute` 執行計畫時—訊息下方會出現進度列。當代理完成每個步驟時，會在計畫檔案中勾選核取方塊（`- [ ]` → `- [x]`），進度列會即時更新已完成/總計數。

進度列顯示計畫標題（來自第一個 `#` 標題）、填充列，以及開啟計畫檔案的連結。按一下 **×** 可在不需要時關閉它。

進度狀態在工作階段切換與應用程式重新啟動後仍會保留。

## 退出計畫模式

核准計畫後，計畫模式會自動結束。您也可以手動退出：

* 輸入 `/plan exit`（或 `/plan off`、`/plan cancel`、`/plan stop`、`/plan quit`）
* 按一下指示列上的 **Exit plan mode**

退出會取消任何待審核的核准請求，並恢復完整的讀寫存取權限。
