ให้ 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 ถัดไปเริ่มเมื่อ | หยุดเมื่อ |
|---|---|---|
/goal | Turn ก่อนหน้าเสร็จ | โมเดลยืนยันว่าเงื่อนไขสำเร็จ |
/loop | ช่วงเวลาผ่านไป | คุณหยุดหรือ Claude ตัดสินว่างานเสร็จ |
| Stop hook | Turn ก่อนหน้าเสร็จ | สคริปต์หรือ 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 testexits 0" หรือ "git statusis 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 รันโดยไม่มีผู้ดูแล