บทเรียน 24: เป้าหมายที่ยั่งยืน
บทเรียน 24: เป้าหมายที่ยั่งยืน — คำแนะนำที่เข้าใจง่ายจากเอกสารอย่างเป็นทางการ
นี่เป็นส่วนหนึ่งของชุดบทช่วยสอนอย่างเป็นทางการของ Hermes Agent ดูบทช่วยสอนทั้งหมด
ลองนึกภาพว่าคุณกำลังทำอาหารมื้อใหญ่และบอกผู้ช่วยครัวว่า “สับผักไปเรื่อยๆ จนกว่าโต๊ะเตรียมวัตถุดิบจะเต็ม” คุณจะไม่ยืนคอยสั่งซ้ำทุกครั้งที่หั่นแครอทเสร็จ — คุณไว้ใจให้เขาทำต่อไปจนกว่างานจะเสร็จ Persistent Goals มอบพลัง “ทำต่อไปจนกว่าจะเสร็จ” แบบเดียวกันให้กับ Hermes สำหรับงานเขียนโค้ดของคุณ
/goal ทำอะไร?
โดยปกติแล้ว คุณให้งาน Hermes มันตอบกลับ แล้วก็หยุด — รอคำสั่งถัดไปจากคุณ แต่ด้วย /goal คุณจะให้ Hermes มี เป้าหมายถาวร ที่คงอยู่ข้ามรอบการสนทนา หลังจากแต่ละการตอบกลับ โมเดล “ผู้ตัดสิน” ขนาดเบาจะตรวจสอบว่า “เป้าหมายเสร็จหรือยัง?” ถ้ายังไม่เสร็จ Hermes จะป้อนพรอมต์ให้ตัวเองโดยอัตโนมัติและทำงานต่อไป — โดยไม่ต้องคอยรบเร้าจากคุณ มันจะวนซ้ำไปเรื่อยๆ จนกว่าเป้าหมายจะสำเร็จ คุณหยุดหรือล้างมัน หรืองบประมาณรอบการสนทนาจะหมดลง
ฟีเจอร์นี้ได้แรงบันดาลใจจากฟีเจอร์ที่คล้ายกันใน Codex CLI และเหมาะอย่างยิ่งสำหรับงานที่ไม่อย่างนั้นคุณจะต้องพูดว่า “ทำต่อไป” ซ้ำๆ ถึงสามครั้ง
ขั้นตอนที่ 1: รู้ว่าเมื่อไหร่ควรใช้
ใช้ /goal เมื่อคุณต้องการให้ Hermes ทำงานซ้ำๆ ด้วยตัวเอง โดยไม่ต้องป้อนพรอมต์ซ้ำ ตัวอย่างที่ดี:
/goal แก้ไขข้อผิดพลาด lint ทุกจุดใน src/ และตรวจสอบให้แน่ใจว่า ruff check ผ่าน/goal พอร์ตฟีเจอร์ X จาก repo Y รวมถึงเทสต์ และทำให้ CI เป็นสีเขียว/goal ตรวจสอบว่าทำไม session ID ถึงบางครั้งคลาดเคลื่อนระหว่างการบีบอัดกลางรัน และเขียนรายงาน/goal สร้าง CLI เล็กๆ เพื่อเปลี่ยนชื่อไฟล์ตามวันที่ EXIF จากนั้นทดสอบกับโฟลเดอร์ photos/
หากงานของคุณต้องการแค่รอบเดียว ข้าม /goal ไปได้เลย ฟีเจอร์นี้จะโดดเด่นเมื่อคุณไม่อย่างนั้นต้องคอยเฝ้าดูแลตลอดเวลา
ขั้นตอนที่ 2: เข้าใจความแตกต่างระหว่าง /goal และ Kanban
นี่เป็นจุดที่มักสับสน ดังนั้นขออธิบายแบบง่ายๆ:
/goalใช้ได้เฉพาะเซสชันเดียว มันจะทำงานภายใน การสนทนานี้ ไปเรื่อยๆ จนกว่าเสร็จ มันไม่เคยสร้างการ์ดบนบอร์ด ไม่เคยมอบหมายงานให้โปรไฟล์อื่น และไม่เคยกระจายงาน- Kanban คือบอร์ดที่มีหลายงาน การ์ดแต่ละใบจะมีกระบวนการทำงานของตัวเองพร้อมเซสชันของตัวเอง การ์ด การพึ่งพา ผู้รับผิดชอบ และการส่งต่องานจะอยู่บนบอร์ด
ความทับซ้อนกันมีน้อยแต่ตั้งใจ: การ์ด Kanban ที่สร้างด้วย --goal จะใช้เอ็นจินการทำงานต่อเนื่องเดียวกัน แต่ ภายในเซสชันของการ์ดใบนั้น — มันยืมเอ็นจินมาใช้ ไม่ใช่ยืมบอร์ด
| คุณต้องการ | ใช้ |
|---|---|
| วนซ้ำงานเดียวในแชทนี้จนกว่าเสร็จ | /goal <ข้อความ> |
| งานอิสระหลายงานที่มีการพึ่งพากัน | hermes kanban create … |
| การ์ดบอร์ดใบเดียวที่วนซ้ำจนกว่าเกณฑ์การยอมรับจะผ่าน | การ์ด Kanban ที่มี --goal |
จำไว้: /goal ไม่เคยแตะต้องบอร์ด และการหยุด/ล้างเป้าหมายไม่เคยย้ายการ์ด หากคุณต้องการทำงานบนบอร์ด ใส่ไว้ที่นั่นด้วยตัวเอง
ขั้นตอนที่ 3: รันเป้าหมายแรกของคุณ
นี่คือวิธีเริ่มต้นอย่างรวดเร็ว:
/goal แก้ไขเทสต์ที่ล้มเหลวทั้งหมดใน tests/hermes_cli/ และตรวจสอบให้แน่ใจว่า scripts/run_tests.sh ผ่านสำหรับไดเรกทอรีนั้น
นี่คือสิ่งที่คุณจะเห็นเกิดขึ้น:
- ยอมรับเป้าหมาย — คุณจะเห็นการยืนยันเช่น:
⊙ ตั้งเป้าหมายแล้ว (งบประมาณ 20 รอบ): <เป้าหมายของคุณ> - รันรอบที่ 1 — Hermes เริ่มทำงานราวกับว่าคุณส่งเป้าหมายเป็นข้อความปกติ
- ผู้ตัดสินทำงาน — หลังจากรอบนั้น โมเดลผู้ตัดสินจะตัดสินใจว่า
เสร็จหรือทำต่อ - วนซ้ำหากจำเป็น — หากเป็น
ทำต่อคุณจะเห็น:↻ กำลังดำเนินการต่อตามเป้าหมาย (1/20): <เหตุผลของผู้ตัดสิน>— และ Hermes จะดำเนินการขั้นตอนถัดไปโดยอัตโนมัติ - สิ้นสุด — ในที่สุด เป้าหมายจะสำเร็จ คุณหยุดหรือล้างมัน หรืองบประมาณรอบการสนทนาจะหมดลง
ขั้นตอนที่ 4: จัดการลูป
คุณควบคุมได้เสมอ คุณสามารถ หยุด เป้าหมายเพื่อหยุดลูปชั่วคราว ล้าง เพื่อยกเลิกทั้งหมด หรือปล่อยให้มันรันจนเสร็จ งบประมาณ 20 รอบป้องกันการวนซ้ำไม่รู้จบ ดังนั้นคุณไม่ต้องกังวลว่า Hermes จะทำงานหนีไปตลอดกาล
สรุป
/goal คือฟีเจอร์ “ทำต่อไปจนกว่าจะเสร็จ” ของคุณ เหมาะอย่างยิ่งสำหรับงานในเซสชันเดียวที่ต้องวนซ้ำหลายครั้ง — การแก้ไข lint การพอร์ตฟีเจอร์ การตรวจสอบ หรือการสร้างเครื่องมือขนาดเล็ก ไม่เหมาะสำหรับการจัดการหลายงานพร้อมกัน (นั่นคืองานของ Kanban) แค่ตั้งเป้าหมาย ปล่อยให้ผู้ตัดสินดูแลลูป แล้วเข้ามาแทรกแซงเมื่อคุณต้องการหยุด ล้าง หรือปรับเปลี่ยนเท่านั้น
ต่อไป: บทช่วยสอน 25 — การรันโค้ด: งานประมวลผลแบบแบตช์ด้วยสคริปต์ Python
📖 เอกสารทางการ
この記事は Hermes Agent のเอกสารทางการに基づいています:เอกสารทางการ › user-guide/features/goals