Skip to main content

ให้ Claude ทำงานไปสู่เป้าหมาย

ตั้งเงื่อนไขความสำเร็จด้วย /goal และ Claude จะทำงานต่อเนื่องในหลาย turn จนเงื่อนไขนั้นเป็นจริง

หมายเหตุ: /goal ต้องการ Claude Code v2.1.139 หรือใหม่กว่า

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

ใช้เป้าหมายสำหรับงานสำคัญที่มีสถานะสิ้นสุดที่ตรวจสอบได้:

  • ย้ายโมดูลไปยัง API ใหม่จนทุก call site compile ได้และเทสผ่าน
  • นำ design doc ไปใช้งานจนทุก acceptance criteria เป็นจริง
  • แยกไฟล์ขนาดใหญ่เป็นโมดูลที่เน้นจนแต่ละอันต่ำกว่าขนาดที่กำหนด

เปรียบเทียบวิธีให้เซสชันทำงานต่อเนื่อง

สามวิธีในการให้เซสชันปัจจุบันทำงานต่อเนื่องระหว่าง prompt:

วิธีการTurn ถัดไปเริ่มเมื่อหยุดเมื่อ
/goalTurn ก่อนหน้าเสร็จโมเดลยืนยันว่าเงื่อนไขสำเร็จ
/loopช่วงเวลาผ่านไปคุณหยุดหรือ Claude ตัดสินว่างานเสร็จ
Stop hookTurn ก่อนหน้าเสร็จสคริปต์หรือ prompt ของคุณตัดสิน

ใช้ /goal

เป้าหมายหนึ่งอันสามารถ active ต่อเซสชันได้ คำสั่งเดียวกันตั้ง ตรวจสอบ และล้างขึ้นอยู่กับ argument

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

รัน /goal ตามด้วยเงื่อนไขที่ต้องการให้เป็นจริง

/goal all tests in test/auth pass and the lint step is clean

การตั้งเป้าหมายจะเริ่ม turn ทันทีโดยมีเงื่อนไขนั้นเป็นคำสั่ง ในขณะที่เป้าหมาย active จะมีตัวบ่งชี้ ◎ /goal active

เขียนเงื่อนไขที่มีประสิทธิภาพ

ผู้ประเมิน evaluator ตัดสินเงื่อนไขของคุณตามสิ่งที่ Claude แสดงใน conversation มันไม่รันคำสั่งหรืออ่านไฟล์โดยอิสระ ดังนั้นเขียนเงื่อนไขเป็นสิ่งที่ output ของ Claude เองสามารถแสดงได้

เงื่อนไขที่ดีมักมี:

  • สถานะสิ้นสุดที่วัดได้หนึ่งอย่าง: ผลเทส, exit code ของ build, จำนวนไฟล์, queue ว่าง
  • การตรวจสอบที่ระบุ: วิธีที่ Claude ควรพิสูจน์ เช่น "npm test exits 0" หรือ "git status is clean"
  • ข้อจำกัดที่สำคัญ: สิ่งใดที่ต้องไม่เปลี่ยนแปลงระหว่างทาง

เงื่อนไขสามารถมีได้ถึง 4,000 ตัวอักษร

ตรวจสอบสถานะ

รัน /goal โดยไม่มี argument เพื่อดูสถานะปัจจุบัน:

/goal

ล้างเป้าหมาย

รัน /goal clear เพื่อลบเป้าหมาย active ก่อนที่เงื่อนไขจะสำเร็จ:

/goal clear

stop, off, reset, none และ cancel เป็น alias ของ clear

Resume พร้อมเป้าหมาย active

เป้าหมายที่ยัง active เมื่อเซสชันสิ้นสุดจะถูก restore เมื่อคุณ resume เซสชันนั้นด้วย --resume หรือ --continue

รันแบบ non-interactive

/goal ทำงานใน non-interactive mode:

claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"

การทำงานของ Evaluation

/goal คือ wrapper รอบ session-scoped prompt-based Stop hook ทุกครั้งที่ Claude เสร็จ turn เงื่อนไขและ conversation จนถึงตอนนี้จะถูกส่งไปยัง small fast model ซึ่งค่าเริ่มต้นคือ Haiku โมเดลส่งคืนการตัดสิน yes/no และเหตุผลสั้น ๆ

หมายเหตุ: Token ของ evaluation ถูกเรียกเก็บเงินบน small fast model และโดยปกติแล้วน้อยมากเมื่อเทียบกับ main-turn spend

ข้อกำหนด

/goal รันเฉพาะใน workspace ที่คุณยอมรับ trust dialog แล้วเท่านั้น /goal ยังไม่สามารถใช้ได้เมื่อตั้งค่า disableAllHooks

ดูเพิ่มเติม

  • รัน prompt ซ้ำด้วย /loop — รันซ้ำตามช่วงเวลาแทนจนเงื่อนไขเป็นจริง
  • Prompt-based hooks — เขียน Stop hook ของตัวเองเมื่อต้องการ evaluation logic แบบกำหนดเอง
  • Auto mode — อนุมัติ tool call อัตโนมัติเพื่อให้แต่ละ goal turn รันโดยไม่มีผู้ดูแล