# Cline 先規劃再動手。給規劃一張地圖。

Canonical source: https://maguyva.ai/zh-hant/for-cline

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Cline 會讀檔、執行指令，改任何東西前都會先問你。Maguyva 為整個程式碼庫建立索引並透過 MCP 回傳，所以 Plan 模式從真實的呼叫點出發，而不是從目錄清單出發。

> .clinerules 管怎麼做事，Maguyva 管程式碼現在長什麼樣。

## 關於 Cline 你需要知道的

四項 Cline 專屬事實。

### cline_mcp_settings.json

從 Cline 面板的 MCP Servers 圖示開啟：先到 Configure 分頁，再點 Configure MCP Servers。伺服器放在 `mcpServers` 底下。

### 遠端，以 URL 連線

Cline 透過 Streamable HTTP 連線到 Maguyva 的端點。沒有本機程序，也不需要 Node.js。

### 直接寫在標頭裡

和 Cline 自己的範例一樣，金鑰直接寫進 `Authorization` 標頭。設定檔位於編輯器的使用者儲存空間，不在你的儲存庫裡。

### 用 streamableHttp，不用 SSE

項目裡保留 `"type": "streamableHttp"`：沒有類型時，Cline 會當成舊式 SSE。把你信任的工具列進 `autoApprove`，就能跳過它們的核准提示。

## Cline 規則是一份工作約定，儘管用。

```text
# .clinerules/testing.md
- 把任務標為完成前，先跑測試套件。
- 新增相依套件前先詢問。
```

工作區規則是放在 `.clinerules/` 或 `.cline/rules/` 裡的 Markdown 檔；Cline 也會讀取 `AGENTS.md`、`.cursorrules` 與 `.windsurfrules`。規則適合寫：

- Cline 該執行的指令。
- 用 frontmatter glob 限定在某個路徑的防護規則。
- 你已經懶得一再重複的團隊慣例。

規則告訴 Cline 該怎麼做。它不會告訴 Cline，有哪些服務在讀它正要遷移的那張資料表。

## 規則與讀檔不夠用的地方

Cline 靠一次次請求、多讀檔案來補上的三個缺口。

### // 從目錄清單做出的規劃

Plan 模式依據 Cline 目前讀過的內容推理。在大型程式碼庫裡，那不過是一棵目錄樹加上幾個檔案，規劃也就繼承了這些缺口。

### // 每次讀取都是一趟來回

Cline 為了摸清狀況開啟的每個檔案，都要花 token 和一次模型請求。在陌生的套件裡摸索，可能在第一次編輯前就用掉大半脈絡視窗。

### // 文字搜尋找到的是字串，不是呼叫端

“還有誰在呼叫它？”是圖譜的問題。文字搜尋能找到字串，卻分不清真正的呼叫端、註解、測試替身和同名方法。

## 作為 Cline 中 MCP 伺服器的 Maguyva

一筆 mcpServers 項目讓 Cline 獲得：

- **針對已索引程式碼庫的 11 個工具**: 語意、結構（AST）、圖譜與文字搜尋，外加符號查找、依賴方與檔案擷取。
- **附檔案路徑與行號的答案**: 涵蓋 285+ 種語言，規劃引用的都是真實存在的檔案。
- **只會讀取的工具**: Maguyva 的工具只查詢索引，沒有一個會修改你的檔案。

> Cline 規則告訴 Cline *怎麼工作*。
> Maguyva 給 Cline *一張用來規劃的地圖*。

## 兩種工作流程

照著地圖規劃，然後執行。

### 01. 從真實呼叫點規劃變更

```text
cline plan> 把工作階段更新移到 auth 套件

dependency_search("refreshSession", dependents)
  src/api/middleware.ts:58
  src/jobs/renew.ts:12
  src/web/hooks/useSession.ts:30

→ 進入 Act 模式前，規劃已列出三個呼叫點。
[exit 0]
```

規劃會列出它要動的每個檔案，你核准的是一份清單，而不是一個直覺。

### 02. 找到真正的實作，而不是測試固定資料

```text
cline> 我們的按比例計費是怎麼算的？

semantic_search("proration calculation")
  src/billing/proration.ts:22   prorate()   ← 實作
  test/billing/proration.spec.ts:7   ← 固定資料

→ Cline 只讀一個檔案，而不是六個。
[exit 0]
```

排序結果會把實作排在同名的固定資料前面。

## 在 Cline 中設定

三個步驟。Free 方案：3 個儲存庫, 最多索引 5 萬行儲存庫程式碼，免信用卡。

### 01. 在 maguyva.ai 索引一個程式碼庫

挑一個你已經熟悉的，這樣你才能評分答案。

### 02. 把 Maguyva 加進 Cline 的 MCP 設定

`cline_mcp_settings.json`

```json
{
  "mcpServers": {
    "maguyva": {
      "type": "streamableHttp",
      "url": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer mgv_xxxx"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
```

### 03. 替換預留位置，然後問一個問題

把 `mgv_xxxx` 換成你的 API 金鑰並儲存檔案。問一個你已經知道答案的問題，再開啟它引用的檔案。

Cline 的 [MCP 文件](https://docs.cline.bot/mcp/mcp-overview)說明了遠端伺服器、逾時與自動核准。

## 索引一個你已經熟悉的程式碼庫。

透過 MCP 連接 Cline，然後問一個你能查證的問題。
