# Cline วางแผนก่อนลงมือ ให้แผนนั้นมีแผนที่

Canonical source: https://maguyva.ai/th/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

เปิดจากไอคอน MCP Servers ในแผง Cline: แท็บ Configure แล้วเลือก Configure MCP Servers เซิร์ฟเวอร์อยู่ใต้ `mcpServers`

### ระยะไกลผ่าน URL

Cline เชื่อมต่อกับ endpoint ของ Maguyva ผ่าน Streamable HTTP ไม่มีโปรเซสบนเครื่อง ไม่ต้องใช้ Node.js

### เฮดเดอร์แบบตรงตัว

คีย์ใส่ลงในเฮดเดอร์ `Authorization` โดยตรง เหมือนตัวอย่างของ Cline เอง ไฟล์ตั้งค่าอยู่ในพื้นที่เก็บข้อมูลผู้ใช้ของเอดิเตอร์ ไม่ได้อยู่ในรีโพของคุณ

### streamableHttp ไม่ใช่ SSE

คง `"type": "streamableHttp"` ไว้ในรายการ: หากไม่ระบุชนิด Cline จะถือว่าเป็น SSE แบบเก่า ใส่เครื่องมือที่คุณเชื่อถือใน `autoApprove` เพื่อข้ามการขออนุมัติ

## กฎของ Cline คือข้อตกลงในการทำงาน ใช้มันให้เต็มที่

```text
# .clinerules/testing.md
- รันชุดทดสอบก่อนทำเครื่องหมายว่างานเสร็จ
- ถามก่อนเพิ่ม dependency
```

กฎของ workspace คือไฟล์ Markdown ใน `.clinerules/` หรือ `.cline/rules/` และ Cline ยังอ่าน `AGENTS.md` `.cursorrules` และ `.windsurfrules` ด้วย กฎเหมาะสำหรับ:

- คำสั่งที่ Cline ควรรัน
- ข้อจำกัดที่กำหนดขอบเขตเฉพาะพาธด้วย glob ใน frontmatter
- ข้อตกลงของทีมที่คุณเบื่อจะพูดซ้ำ

กฎบอก Cline ว่าควรทำตัวอย่างไร แต่ไม่ได้บอกว่าบริการไหนบ้างที่อ่านตารางที่มันกำลังจะย้าย

## เมื่อกฎและการอ่านไฟล์ไม่พอ

ช่องว่างสามจุดที่ Cline เติมด้วยการอ่านไฟล์เพิ่ม ทีละคำขอ

### // แผนที่สร้างจากรายการไฟล์

โหมด Plan ให้เหตุผลจากสิ่งที่ Cline อ่านมาจนถึงตอนนั้น ในรีโพขนาดใหญ่นั่นคือโครงสร้างไดเรกทอรีกับไฟล์ไม่กี่ไฟล์ และแผนก็รับช่องว่างเหล่านั้นไปด้วย

### // การอ่านแต่ละครั้งคือการไปกลับหนึ่งรอบ

ทุกไฟล์ที่ Cline เปิดเพื่อหาทิศทางใช้โทเค็นและคำขอโมเดลหนึ่งครั้ง การหาทิศทางในแพ็กเกจที่ไม่คุ้นเคยอาจใช้หน้าต่างบริบทไปเกือบหมดก่อนการแก้ไขครั้งแรก

### // การค้นหาข้อความเจอสตริง ไม่ใช่ผู้เรียก

“มีใครเรียกสิ่งนี้อีกบ้าง?” เป็นคำถามเชิงกราฟ การค้นหาข้อความเจอสตริงนั้น แต่แยกผู้เรียกจริงออกจากคอมเมนต์ mock และเมธอดชื่อเดียวกันไม่ได้

## Maguyva ในฐานะเซิร์ฟเวอร์ MCP ใน Cline

รายการ mcpServers เดียวให้สิ่งเหล่านี้แก่ Cline:

- **เครื่องมือ 11 รายการบนรีโพที่ทำดัชนีแล้วของคุณ**: การค้นหาเชิงความหมาย เชิงโครงสร้าง (AST) เชิงกราฟ และข้อความ รวมถึงการค้นหาสัญลักษณ์ ส่วนที่พึ่งพา และการดึงไฟล์
- **คำตอบพร้อมพาธไฟล์และหมายเลขบรรทัด**: ครอบคลุม 285+ ภาษา แผนจึงอ้างอิงไฟล์จริง
- **เครื่องมือที่อ่านอย่างเดียว**: เครื่องมือของ Maguyva สืบค้นดัชนี ไม่มีตัวไหนแก้ไขไฟล์ของคุณ

> กฎของ Cline บอก Cline ว่า*ต้องทำงานอย่างไร*
> Maguyva มอบ*แผนที่สำหรับวางแผน*ให้ Cline

## สองเวิร์กโฟลว์

วางแผนตามแผนที่ แล้วค่อยลงมือ

### 01. วางแผนการเปลี่ยนแปลงจากจุดเรียกจริง

```text
cline plan> ย้าย session refresh ไปไว้ในแพ็กเกจ 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. หาการอิมพลีเมนต์จริง ไม่ใช่ test fixture

```text
cline> เราคำนวณ proration อย่างไร?

semantic_search("proration calculation")
  src/billing/proration.ts:22   prorate()   ← การอิมพลีเมนต์
  test/billing/proration.spec.ts:7   ← fixture

→ Cline อ่านไฟล์เดียวแทนที่จะอ่านหกไฟล์
[exit 0]
```

ผลลัพธ์ที่จัดอันดับวางการอิมพลีเมนต์จริงไว้เหนือ fixture ที่ใช้ชื่อเดียวกัน

## ตั้งค่าใน Cline

สามขั้นตอน แผน Free: รีโพซิทอรี 3 แห่ง, บรรทัดที่ทำดัชนีสูงสุด 50,000 บรรทัด ไม่ต้องใช้บัตรเครดิต

### 01. ทำดัชนีรีโพที่ maguyva.ai

เลือกรีโพที่คุณรู้จักอยู่แล้ว เพื่อให้คุณประเมินคำตอบได้

### 02. เพิ่ม Maguyva ในการตั้งค่า MCP ของ Cline

`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 ของคุณแล้วบันทึกไฟล์ ถามหนึ่งคำถามที่คุณรู้คำตอบอยู่แล้ว จากนั้นเปิดไฟล์ที่ถูกอ้างอิง

[เอกสาร MCP](https://docs.cline.bot/mcp/mcp-overview) ของ Cline อธิบายเรื่องเซิร์ฟเวอร์ระยะไกล ไทม์เอาต์ และการอนุมัติอัตโนมัติ

## ทำดัชนีรีโพเดียวที่คุณรู้จักดีอยู่แล้ว

เชื่อมต่อ Cline ผ่าน MCP แล้วถามคำถามเดียวที่คุณตรวจสอบได้
