| name | dream-system |
| description | Implements Anthropic's "Dreaming" pattern—asynchronous reflection and memory consolidation to build long-term playbooks and self-improve. |
Dream System: Cognitive Reflection & Consolidation
Inspired by Anthropic's "Dreaming" pattern, this skill enables the agent to perform asynchronous self-reflection, turning raw session history into structured knowledge (Playbooks) and pruning "Memory Rot."
触发条件 (Triggers)
- เมื่อสิ้นสุดงานใหญ่ (Task Completion)
- เมื่อเริ่ม Session ใหม่ (Session Start) เพื่อสรุปบทเรียนจากครั้งก่อน
- เมื่อผู้ใช้สั่ง "dream", "สรุปบทเรียน", หรือ "วิเคราะห์ตัวเอง"
- ช่วงเวลาว่าง (Idle time) ระหว่างการทำงาน
ขั้นตอนการทำงาน (Workflow)
1. การเก็บเกี่ยวบทเรียน (Review & Harvest)
- อ่าน Logs หรือประวัติการสนทนาในอดีต (Short-term context)
- ระบุจุดที่งานติดขัด (Bottlenecks) และจุดที่งานสำเร็จ (Success patterns)
2. การสะท้อนและสรุปผล (Reflection & Refinement)
- วิเคราะห์ว่า "ทำไมวิธีนี้ถึงได้ผล?" หรือ "ทำไม Error นี้ถึงเกิดขึ้นซ้ำ?"
- Action: สร้างหรืออัปเดตไฟล์
docs/PLAYBOOK.md หรือ docs/LEARNINGS.md เพื่อเก็บ "วิธีทำงานที่ถูกต้อง" (Golden Paths)
3. การรวบรวมหน่วยความจำ (Consolidation)
- ย้ายข้อมูลจากกระจัดกระจายใน Logs ไปอยู่ในโครงสร้างถาวร เช่น
MEMORY.md หรือ AGENTS.md
- สรุปเนื้อหาสำคัญที่ต้องจำข้าม Session (Cross-session facts)
4. การชำระล้างหน่วยความจำ (Pruning & Garbage Collection)
- ตรวจสอบความขัดแย้งของข้อมูล (Contradictions)
- ลบคำแนะนำหรือขั้นตอนที่ล้าสมัย (Deprecated workflows) ออกจากบริบทหลักเพื่อประหยัด Token
ผลลัพธ์ที่คาดหวัง (Expected Artifacts)
- Playbooks: ไฟล์คู่มือการทำงานเฉพาะทางที่ Agent สร้างขึ้นเอง
- Refined Memory: หน่วยความจำที่กระชับและมีสัญญาณ (Signal) สูงกว่าเสียงรบกวน (Noise)
- Reduced Steering: ใน Session ถัดไป Agent จะรู้วิธีทำงานโดยไม่ต้องให้ผู้ใช้สอนซ้ำ
กฎเหล็ก (Guiding Principles)
- No Hallucination: ห้ามมโนสรุปสิ่งที่ไม่ได้เกิดขึ้นจริงใน Logs
- Human Approval: หากมีการเปลี่ยนแปลงโครงสร้าง AGENTS.md หรือ SPEC.md ที่สำคัญ ต้องขอความเห็นชอบจากผู้ใช้
- Token Efficiency: เป้าหมายหลักคือการลดปริมาณข้อมูลที่ Agent ต้อง "อ่าน" ในแต่ละครั้งให้เหลือน้อยที่สุด