← Harness Engineering Handbook
LEVEL 3 · ขยายระบบ
Memory & Skills — ความรู้ที่อยู่ข้ามเซสชัน
วันนี้พี่สอน agent ไปครึ่งชั่วโมง: โปรเจกต์นี้ใช้ pnpm ไม่ใช่ npm · เทสต์ต้องรันด้วยคำสั่งนี้ · อย่าแตะโฟลเดอร์ legacy · พรุ่งนี้เปิดเซสชันใหม่ — ลืมหมดเกลี้ยง ถามคำถามเดิมครบทุกข้อ · จะโทษมันก็ไม่ได้: loop จบ = context หาย (บทที่ 2–3) · ความจำข้ามเซสชันไม่ใช่ของที่โมเดลมีให้ — มันคือระบบที่ harness ต้องสร้าง
9.1 ความรู้สามชั้นของ harness
- ① Instructions ถาวร — ไฟล์อย่าง
CLAUDE.md/AGENTS.mdที่ harness โหลดเข้า context ให้อัตโนมัติทุกเซสชัน เสียบเข้าใกล้ system prompt (จุดที่บทที่ 2 ชี้ไว้) · เหมาะกับกติกาโปรเจกต์ คำสั่งประจำ ข้อห้าม — เป็นชั้นที่จ่ายแพงสุดเพราะกิน context ทุกรอบ จึงต้องสั้น - ② Memory ที่ agent เขียนเอง — จดสิ่งที่เรียนรู้ระหว่างทำงานลงไฟล์/ฐานเก็บ ไว้ค้นในเซสชันหน้า · ต่างจากชั้นแรกตรงที่มันเกิดจากการทำงาน ไม่ใช่คนป้อน — โจทย์ยากคือ "จดอะไร" (ไม่ใช่ทุกอย่าง) และ "เมื่อไหร่เลิกเชื่อ" (ความรู้เก่าที่ผิดไปแล้วอันตรายกว่าไม่มี)
- ③ Skills — ความรู้เฉพาะงานที่แพ็กเป็น "คู่มือพร้อมใช้": วิธี deploy ของทีม, ฟอร์มรายงานที่ถูกต้อง, ขั้นตอน review · ถูกโหลดเมื่องานเรียกเท่านั้น
สองข้อควรระวังที่มากับความรู้สามชั้นนี้: ความจำผิด ๆ อยู่ยาวกว่าความจำถูก — memory ที่จดไว้ผิด (หรือเคยถูกแต่โลกเปลี่ยนแล้ว) จะถูกหยิบมาใช้ซ้ำ ๆ อย่างมั่นใจ จดพร้อมบริบท/วันที่ ตรวจก่อนเชื่อ และออกแบบให้ลบง่ายพอ ๆ กับเพิ่ม · และ instructions ถาวรมีแนวโน้มบวม — ทุกคนอยากยัด "กฎอีกข้อเดียว" ลง CLAUDE.md จนมันกินงบ context เอง กฎเช็กง่าย: ถ้าไม่ได้ใช้แทบทุกเซสชัน มันไม่ควรอยู่ชั้น ① — ย้ายลงชั้น skill หรือ memory แทน
9.2 progressive disclosure — เคล็ดที่ทำให้ความรู้ไม่กินโต๊ะ
ความรู้ทั้งหมดขององค์กรใหญ่กว่า context window หลายเท่า — โหลดหมดตั้งแต่ต้นคือจ่ายมหาศาลให้ของที่ 95% ไม่เกี่ยวกับงานตรงหน้า (บทที่ 3 สอนไว้แล้วว่าจบยังไง) · ทางออกเรียกว่า progressive disclosure: ให้ agent เห็นแค่ "สารบัญ" ตลอดเวลา แล้วเปิดเนื้อเต็มเฉพาะเมื่อจำเป็น
รูปธรรมสุด ๆ: skill ชื่อ deploy-checklist — สิ่งที่อยู่ใน context ตลอดคือบรรทัดเดียว: "ขั้นตอน deploy + rollback — ใช้เมื่อจะขึ้น production" · ตัวเนื้อสามหน้านอนอยู่บนดิสก์ จนกว่างาน deploy จะมาถึง agent ถึงเปิดอ่าน — โครงสร้างเดียวกับ just-in-time retrieval ของบทที่ 3 แต่คราวนี้ใช้กับความรู้ของระบบเอง
✅ สรุปบทที่ 9 — จบเซสชัน = ความจำหาย — harness แก้ด้วยความรู้สามชั้น: instructions ถาวร (CLAUDE.md — โหลดทุกเซสชัน ต้องสั้น) / memory ที่ agent จดเอง / skills (คู่มือเฉพาะงาน โหลดเมื่อใช้) · progressive disclosure: เห็นสารบัญตลอด เปิดเนื้อเมื่อจำเป็น — ประหยัด context แบบบท 3 · ระวังความจำ stale และ instructions บวม: อะไรไม่ได้ใช้ทุกเซสชัน อย่าให้อยู่ชั้นแพงสุด