---
doc-schema-version: 1
read_when:
    - คุณต้องการให้ OpenClaw มองเห็นเป้าหมายหนึ่งอย่างต่อเนื่องตลอดเซสชันที่ยาวนาน
    - คุณต้องหยุดชั่วคราว ดำเนินการต่อ บล็อก ทำให้เสร็จสมบูรณ์ หรือล้างเป้าหมายของเซสชัน
    - คุณต้องการทำความเข้าใจเครื่องมือ get_goal, create_goal และ update_goal
    - คุณต้องการดูว่าเป้าหมายปรากฏใน TUI อย่างไร
summary: 'เป้าหมายเซสชัน: วัตถุประสงค์รายเซสชันที่คงทน, การควบคุม /goal, เครื่องมือเป้าหมายของโมเดล, งบประมาณโทเค็น และสถานะ TUI'
title: เป้าหมาย
x-i18n:
    generated_at: "2026-06-27T18:28:28Z"
    model: gpt-5.5
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: 4313983dff7f37496f6c996303cace75f6863a71c8a9cd5367fdafbcc3f459c4
    source_path: tools/goal.md
    workflow: 16
---

# เป้าหมาย

**เป้าหมาย** คือวัตถุประสงค์ที่คงอยู่หนึ่งรายการซึ่งแนบกับเซสชัน OpenClaw ปัจจุบัน
สิ่งนี้ทำให้เอเจนต์และผู้ปฏิบัติงานมีเป้าหมายร่วมกันสำหรับงานระยะยาว
โดยไม่เปลี่ยนเป้าหมายนั้นให้เป็นงานเบื้องหลัง ตัวเตือน งาน cron หรือ
คำสั่งถาวร

เป้าหมายเป็นสถานะของเซสชัน เป้าหมายจะย้ายไปกับคีย์เซสชัน อยู่รอดหลังการรีสตาร์ตโปรเซส
แสดงใน `/goal` พร้อมใช้งานสำหรับโมเดลผ่านเครื่องมือเป้าหมาย
และปรากฏในส่วนท้ายของ TUI เมื่อเซสชันที่ใช้งานอยู่มีเป้าหมาย

## เริ่มต้นอย่างรวดเร็ว

ตั้งเป้าหมาย:

```text
/goal start get CI green for PR 87469 and push the fix
```

ตรวจสอบ:

```text
/goal
```

หยุดชั่วคราวเมื่องานกำลังรอโดยเจตนา:

```text
/goal pause waiting for CI
```

ดำเนินการต่อ:

```text
/goal resume
```

ทำเครื่องหมายว่าเสร็จสมบูรณ์:

```text
/goal complete pushed and verified
```

ล้างออก:

```text
/goal clear
```

## เป้าหมายใช้สำหรับอะไร

ใช้เป้าหมายเมื่อเซสชันมีผลลัพธ์ที่เป็นรูปธรรมซึ่งควรยังคงมองเห็นได้
ตลอดหลายเทิร์น:

- การปิดงาน PR: แก้ไข ตรวจสอบความถูกต้อง ทำ autoreview, push และเปิดหรืออัปเดต PR
- การดีบักหนึ่งรอบ: ทำซ้ำบั๊ก ระบุพื้นผิวที่เป็นเจ้าของ แพตช์ และพิสูจน์
  การแก้ไข
- การปรับปรุงเอกสาร: อ่านเอกสารที่เกี่ยวข้อง เขียนหน้าใหม่ เชื่อมโยงข้ามหน้า และ
  ตรวจสอบว่าเอกสาร build ได้
- งานบำรุงรักษา: ตรวจสอบสถานะปัจจุบัน ทำการเปลี่ยนแปลงแบบจำกัดขอบเขต รัน
  การตรวจสอบที่เหมาะสม และรายงานสิ่งที่เปลี่ยนไป

เป้าหมายไม่ใช่คิวงาน ใช้ [โฟลว์งาน](/th/automation/taskflow),
[งาน](/th/automation/tasks), [งาน cron](/th/automation/cron-jobs) หรือ
[คำสั่งถาวร](/th/automation/standing-orders) เมื่องานควรถูกรันแบบแยกตัว
ทำซ้ำตามกำหนดเวลา แตกออกเป็นงานย่อยที่มีการจัดการ หรือคงอยู่เป็นนโยบาย

## อ้างอิงคำสั่ง

`/goal` ที่ไม่มีอาร์กิวเมนต์จะพิมพ์สรุปเป้าหมายปัจจุบัน:

```text
Goal
Status: active
Objective: get CI green for PR 87469 and push the fix
Tokens used: 12k
Token budget: 12k/50k

Commands: /goal pause, /goal complete, /goal clear
```

คำสั่ง:

- `/goal` หรือ `/goal status` แสดงเป้าหมายปัจจุบัน
- `/goal start <objective>` สร้างเป้าหมายใหม่สำหรับเซสชันปัจจุบัน
- `/goal set <objective>` และ `/goal create <objective>` เป็นนามแฝงของ
  `start`
- `/goal pause [note]` หยุดเป้าหมายที่ใช้งานอยู่ชั่วคราว
- `/goal resume [note]` ดำเนินการต่อกับเป้าหมายที่หยุดชั่วคราว ถูกบล็อก ถูกจำกัดการใช้งาน หรือ
  ถูกจำกัดงบประมาณ
- `/goal complete [note]` ทำเครื่องหมายว่าเป้าหมายสำเร็จแล้ว
- `/goal done [note]` เป็นนามแฝงของ `complete`
- `/goal block [note]` ทำเครื่องหมายว่าเป้าหมายถูกบล็อก
- `/goal blocked [note]` เป็นนามแฝงของ `block`
- `/goal clear` ลบเป้าหมายออกจากเซสชัน

ในหนึ่งเซสชันมีเป้าหมายได้เพียงหนึ่งรายการในแต่ละครั้ง การเริ่มเป้าหมายที่สองจะล้มเหลว
จนกว่าเป้าหมายปัจจุบันจะถูกล้างออก

## สถานะ

เป้าหมายใช้ชุดสถานะขนาดเล็ก:

- `active`: เซสชันกำลังดำเนินตามเป้าหมาย
- `paused`: ผู้ปฏิบัติงานหยุดเป้าหมายชั่วคราว; `/goal resume` ทำให้กลับมาใช้งานอีกครั้ง
- `blocked`: เอเจนต์หรือผู้ปฏิบัติงานรายงานตัวบล็อกจริง; `/goal resume`
  ทำให้กลับมาใช้งานอีกครั้งเมื่อมีข้อมูลหรือสถานะใหม่พร้อมใช้งาน
- `budget_limited`: ถึงงบประมาณโทเค็นที่กำหนดค่าไว้แล้ว; `/goal resume`
  เริ่มการดำเนินตามวัตถุประสงค์เดิมอีกครั้ง
- `usage_limited`: สงวนไว้สำหรับสถานะหยุดจากขีดจำกัดการใช้งาน; `/goal resume`
  เริ่มการดำเนินต่อเมื่อได้รับอนุญาต
- `complete`: เป้าหมายสำเร็จแล้ว เป้าหมายที่เสร็จสมบูรณ์เป็นสถานะปลายทาง; ใช้
  `/goal clear` ก่อนเริ่มเป้าหมายอื่น

`/new` และ `/reset` จะล้างเป้าหมายของเซสชันปัจจุบัน เพราะคำสั่งเหล่านี้ตั้งใจ
เริ่มบริบทเซสชันใหม่

## งบประมาณโทเค็น

เป้าหมายสามารถมีงบประมาณโทเค็นค่าบวกแบบไม่บังคับได้ งบประมาณจะถูกจัดเก็บพร้อมกับ
เป้าหมายและวัดจากจำนวนโทเค็นสดใหม่ของเซสชัน ณ เวลาที่สร้าง หาก
เซสชันปัจจุบันมีเฉพาะการใช้งานโทเค็นที่เก่าหรือไม่ทราบค่าเมื่อเริ่มเป้าหมาย
OpenClaw จะรอสแนปชอตโทเค็นสดใหม่ครั้งถัดไปของเซสชันและใช้ค่านั้นเป็น
ฐาน ดังนั้นโทเค็นที่ใช้ไปก่อนมีเป้าหมายจะไม่ถูกคิดรวมกับเป้าหมาย

เมื่อการใช้งานโทเค็นถึงงบประมาณ เป้าหมายจะเปลี่ยนเป็น `budget_limited` สิ่งนี้
ไม่ได้ลบเป้าหมายหรือลบวัตถุประสงค์ แต่บอกผู้ปฏิบัติงานและ
เอเจนต์ว่าเป้าหมายไม่ได้ถูกดำเนินตามอย่างแข็งขันอีกต่อไปจนกว่าจะถูกดำเนินต่อหรือ
ล้างออก

งบประมาณโทเค็นเป็นราวกั้นสำหรับเป้าหมายของเซสชัน ไม่ใช่เพดานค่าใช้จ่าย โควตาของผู้ให้บริการ
การรายงานค่าใช้จ่าย และพฤติกรรมหน้าต่างบริบทยังคงใช้การควบคุมการใช้งานและ
โมเดลตามปกติของ OpenClaw

## เครื่องมือโมเดล

OpenClaw เปิดเผยเครื่องมือเป้าหมายหลักสามรายการให้กับ harness ของเอเจนต์:

- `get_goal`: อ่านเป้าหมายของเซสชันปัจจุบัน รวมถึงสถานะ วัตถุประสงค์ การใช้งานโทเค็น
  และงบประมาณโทเค็น
- `create_goal`: สร้างเป้าหมายเฉพาะเมื่อคำสั่งจากผู้ใช้ ระบบ หรือผู้พัฒนา
  ขอไว้อย่างชัดเจนเท่านั้น คำสั่งนี้จะล้มเหลวหากเซสชันมีเป้าหมายอยู่แล้ว
- `update_goal`: ทำเครื่องหมายเป้าหมายเป็น `complete` หรือ `blocked`

โมเดลไม่สามารถหยุดชั่วคราว ดำเนินต่อ ล้าง หรือแทนที่เป้าหมายอย่างเงียบ ๆ ได้ สิ่งเหล่านั้นเป็น
การควบคุมของผู้ปฏิบัติงาน/เซสชันผ่าน `/goal` และคำสั่งรีเซ็ต สิ่งนี้ป้องกันไม่ให้
เอเจนต์ย้ายเป้าหมายอย่างเงียบ ๆ ในขณะเดียวกันยังคงมีเส้นทางที่ชัดเจนให้
เอเจนต์รายงานความสำเร็จหรือตัวบล็อกที่แท้จริง

เครื่องมือ `update_goal` ควรทำเครื่องหมายเป้าหมายเป็น `complete` เฉพาะเมื่อวัตถุประสงค์
สำเร็จจริงเท่านั้น และควรทำเครื่องหมายเป้าหมายเป็น `blocked` เฉพาะเมื่อเงื่อนไข
ที่บล็อกเดิมเกิดซ้ำและเอเจนต์ไม่สามารถคืบหน้าอย่างมีนัยสำคัญได้โดยไม่มี
ข้อมูลผู้ใช้ใหม่หรือการเปลี่ยนแปลงสถานะภายนอก

## TUI

TUI ทำให้เป้าหมายของเซสชันที่ใช้งานอยู่มองเห็นได้ในส่วนท้ายถัดจาก
เอเจนต์ เซสชัน โมเดล การควบคุมการรัน และจำนวนโทเค็น

ตัวอย่างส่วนท้าย:

- `Pursuing goal (12k/50k)` สำหรับเป้าหมายที่ใช้งานอยู่พร้อมงบประมาณโทเค็น
- `Goal paused (/goal resume)` สำหรับเป้าหมายที่หยุดชั่วคราว
- `Goal blocked (/goal resume)` สำหรับเป้าหมายที่ถูกบล็อก
- `Goal hit usage limits (/goal resume)` สำหรับเป้าหมายที่ถูกจำกัดการใช้งาน
- `Goal unmet (50k/50k)` สำหรับเป้าหมายที่ถูกจำกัดงบประมาณ
- `Goal achieved (42k)` สำหรับเป้าหมายที่เสร็จสมบูรณ์

ส่วนท้ายถูกออกแบบให้กระชับ ใช้ `/goal` เพื่อดูวัตถุประสงค์ฉบับเต็ม หมายเหตุ
งบประมาณโทเค็น และคำสั่งที่พร้อมใช้งาน

## พฤติกรรมของช่องทาง

คำสั่ง `/goal` ทำงานในเซสชัน OpenClaw ที่รองรับคำสั่ง รวมถึง
TUI และพื้นผิวแชตที่อนุญาตคำสั่งข้อความ สถานะเป้าหมายแนบกับ
คีย์เซสชัน ไม่ใช่ transport หากสองพื้นผิวใช้เซสชันเดียวกัน ทั้งสองจะเห็น
เป้าหมายเดียวกัน

สถานะเป้าหมายไม่ใช่คำสั่งการส่งมอบ มันไม่บังคับให้ตอบกลับผ่าน
ช่องทาง เปลี่ยนพฤติกรรมคิว อนุมัติเครื่องมือ หรือกำหนดเวลางาน

## การแก้ไขปัญหา

`Goal error: goal already exists` หมายความว่าเซสชันมีเป้าหมายอยู่แล้ว ใช้
`/goal` เพื่อตรวจสอบ ใช้ `/goal complete` หากเสร็จแล้ว หรือใช้ `/goal clear` ก่อน
เริ่มวัตถุประสงค์อื่น

`Goal error: goal not found` หมายความว่าเซสชันยังไม่มีเป้าหมาย เริ่มเป้าหมายด้วย
`/goal start <objective>`

`Goal error: goal is already complete` หมายความว่าเป้าหมายเป็นสถานะปลายทาง ล้างเป้าหมาย
ก่อนเริ่มหรือดำเนินวัตถุประสงค์อื่นต่อ

หากการใช้งานโทเค็นดูเหมือน `0` หรือเก่า เซสชันที่ใช้งานอยู่อาจยังไม่มี
สแนปชอตโทเค็นสดใหม่ การใช้งานจะรีเฟรชเมื่อ OpenClaw บันทึกการใช้งานเซสชันและ
ยอดรวมที่ได้จาก transcript

## ที่เกี่ยวข้อง

- [คำสั่ง Slash](/th/tools/slash-commands)
- [TUI](/th/web/tui)
- [เครื่องมือเซสชัน](/th/concepts/session-tool)
- [Compaction](/th/concepts/compaction)
- [โฟลว์งาน](/th/automation/taskflow)
- [คำสั่งถาวร](/th/automation/standing-orders)
