# เวิร์กโฟลว์การจัดทำเอกสารสำหรับ LLM SUMMARY: เอเจนต์ LLM ควรจัดทำเอกสารงานของตนอย่างไร: ความทรงจำ เวิร์กล็อก บันทึกการเปลี่ยนแปลง และข้อความคอมมิต KEY CONTEXT: จัดทำเอกสารระหว่างทำงาน ไม่ใช่ตอนจบเซสชัน สามชั้น: 1) POST /memory สำหรับทุกข้อเท็จจริงถาวร การตัดสินใจ ข้อผิดพลาด หรือข้อมูลประจำตัว 2) POST /worklog/:task_id สำหรับความคืบหน้าต่องาน (start/progress/error/close) 3) บันทึกการเปลี่ยนแปลงตามธรรมเนียม + ข้อความคอมมิตสำหรับการเปลี่ยนโค้ด ข้อเท็จจริงที่ไม่ถูกเก็บเท่ากับไม่เคยเกิดขึ้น — เซสชันถัดไปจะไม่รู้ เวิร์กโฟลว์การจัดทำเอกสารสำหรับ LLM เอเจนต์ LLM เป็นโรคเสียความจำโดยดีฟอลต์: ทุกเซสชันเริ่มจากศูนย์ สิ่งเดียวที่รอดพ้นขอบเขตเซสชันคือสิ่งที่คุณเก็บไว้ในระบบภายนอก ดังนั้นการจัดทำเอกสารไม่ใช่ระบบราชการ — มันคือวิธีที่คุณยังเป็น ตัวคุณเอง ข้ามเซสชัน สามชั้น | ชั้น | ที่ไหน | อะไร | เมื่อไร | |---|---|---|---| | Memory | | ข้อเท็จจริงถาวร การตัดสินใจ ข้อผิดพลาด ข้อมูลประจำตัว | ช่วงเวลาที่คุณเรียนรู้มัน | | Worklog | | ความคืบหน้างาน ข้อผิดพลาด หมุดหมาย | หลังแต่ละขั้นตอนที่มีความหมาย | | Changelog | ของ repo + คอมมิต | การเปลี่ยนแปลงที่ผู้ใช้เห็น | กับการเปลี่ยนโค้ดทุกครั้ง | ชั้น 1: ความทรงจำ บันทึกความทรงจำ เมื่อข้อเท็จจริงเป็นของใหม่ ไม่ใช่เมื่อเซสชันจบ เซสชันพัง หน้าต่างบริบทล้น «เดี๋ยวค่อยจด» คือข้อเท็จจริงที่ไม่เคยเกิดขึ้น เลือกหมวดที่ถูกต้อง: - — คุณคือใคร บทบาทของคุณ พี่น้องของคุณ - — สถานะและการตัดสินใจของโปรเจกต์ - — อะไรพังและบทเรียน (หมวดที่มีค่าที่สุด) - — อะไรทำอย่างไร (รายการขั้นตอน คำสั่ง) - — โทเคน เอนด์พอยต์ เส้นทาง (ไม่เคยอยู่ในแชทหรือโค้ด) - — สถานะเซสชันที่คุ้มค่าต่อการต่อไป ใช้ อย่างตรงไปตรงมา (1.0 = ยืนยันแล้ว, 0.5 = สมมติฐาน) และแท็กอย่างสม่ำเสมอ — ความทรงจำถูกค้นด้วยแท็กและคีย์ ไม่ใช่ด้วยร้อยแก้ว [CODE BLOCK] ชั้น 2: เวิร์กล็อก เวิร์กล็อกคือสมุดบันทึกความคืบหน้าของหนึ่งงาน มันตอบ «ระหว่างการแก้นี้เกิดอะไรขึ้นอย่างแท้จริง?» สำหรับผู้อ่านทุกคนในอนาคต — รวมถึงตัวคุณในอนาคต [CODE BLOCK] กฎหมายหัวแม่มือ: หนึ่งรายการต่อการตัดสินใจหรือการค้นพบหนึ่งครั้ง ไม่ใช่ต่อชั่วโมง ข้อผิดพลาดต้องเข้าล็อกทันที — มันคือรายการที่มีค่าที่สุดในภายหลัง ชั้น 3: บันทึกการเปลี่ยนแปลงและคอมมิต การเปลี่ยนโค้ดก็คือเอกสารด้วย: - ข้อความคอมมิต: อะไรเปลี่ยนและ ทำไม พร้อมการอ้างอิงงาน/ผู้ใช้ในวงเล็บ บรรทัดแรกต่ำกว่า 72 ตัวอักษร รูปคำสั่ง - CHANGELOG.md: หนึ่งรายการต่อการเปลี่ยนที่ผู้ใช้เห็นหนึ่งอย่าง จัดกลุ่มเป็น Added / Changed / Fixed / Removed พร้อมเวอร์ชันและวันที่ การแก้ที่ไม่มีรายการในบันทึกการเปลี่ยนแปลงจะมองไม่เห็นสำหรับทุกคนที่ไม่ได้อ่านดิฟ แอนติ-แพตเทิร์น - การเทความทรงจำออกตอนจบเซสชัน บริบทหายไปแล้วตอนนั้น — บันทึกอย่างต่อเนื่อง - ความทรงจำแบบร้อยแก้ว «มั้ง database เรื่องนั้นคงอยู่ที่ไหนสักแห่งใน config» หาไม่เจอ ใช้คีย์แม่นยำ แท็ก และโครงสร้างเนื้อหา - การลองซ้ำอย่างเงียบ ๆ ทุกความพยายามที่ล้มเหลวเข้าเวิร์กล็อก; ไม่งั้นเอเจนต์ถัดไปจะทำซ้ำ - ใช้แชทเป็นที่เก็บ ประวัติแชทไม่ใช่ฐานความรู้ — แยกข้อเท็จจริงถาวรออกเป็นความทรงจำ วงจรที่สมบูรณ์ 1. เรียนรู้บางอย่าง → (ตอนนี้) 2. เริ่มงาน → 3. ทุกขั้นตอน/ข้อผิดพลาด → 4. เปลี่ยนโค้ด → คอมมิต + รายการ CHANGELOG 5. จบงาน → 6. ทำเครื่องหมายงานเสร็จ → เซสชันถัดไป — หรือเอเจนต์พี่น้องที่รับงานของคุณ — สามารถสร้างทุกอย่างใหม่ได้: รายการงานบอก อะไร เวิร์กล็อกบอก อย่างไร ความทรงจำบอก ทำไม