เวลาในการอ่าน: 14 minutes

คุณใช้เวลาหลายสัปดาห์สร้างการกำกับดูแลเอเจนต์ที่ไร้ที่ติ Eager/Lazy ขั้นตอนการจบเซสชัน การสำรองข้อมูลแบบหมุนเวียน ระบบทำงานได้ แต่แล้ววันหนึ่งเอเจนต์ก็ช้าลง คำตอบถูกเจือจางลง คุณวัดได้ว่า 1414 บรรทัดถูกโหลดโดยอัตโนมัติ และที่แย่ที่สุดคือ ตัวการไม่ใช่โค้ด ไม่ใช่ backlog และไม่ใช่คลังเก็บเซสชัน ตัวการคือไฟล์ที่บันทึกวิธีการของคุณ

ฉาก: เซสชัน 051 มีบางอย่างผิดปกติ

30 เมษายน 2026 เวลา 16:00 น. ฉันกำลังอยู่ในช่วงกลางเซสชันบน`magic-stick`, โปรเจกต์สร้าง ISO Linux แบบไลฟ์ของฉัน เอเจนต์ Opencode โหลดไฟล์ Eager ของฉันโดยอัตโนมัติตามปกติ —AGENT.adoc, PROMPT_REPRISE.adoc, .agents/INDEX.adoc. ทุกอย่างเป็นปกติ

ยกเว้นว่าคำตอบนั้นอ่อนแรง เอเจนต์ใช้เวลาคิดนานขึ้นอีกสองวินาที มันลืมรายละเอียดที่เคยอยู่ตรงหน้าตนเมื่อสามข้อความก่อน นี่ไม่ใช่การแครช ไม่ใช่ข้อผิดพลาด — แต่เป็นการเสื่อมลงอย่างช้า ๆ แบบที่เราไม่ทันสังเกตในทันที

ฉันเคยเจอเรื่องนี้มาแล้วในเซสชัน 048 เมื่อฉันค้นพบว่าไฟล์ด้านการกำกับดูแลมีน้ำหนักรวมสะสมถึง 5200 บรรทัด ตอนนั้นฉันจึงสร้างกรอบแนวคิดกลไก Hot/Warm/Cold ขึ้นมา พร้อมหน้าต่างเลื่อน 10 เซสชัน ระลอกเย็นที่เหมือนกันทุกครั้ง และเซนเซอร์ที่มีตัวกระตุ้นสองตัว ปัญหาได้รับการแก้ไขแล้ว ในทางทฤษฎี

แต่ตอนนี้เราอยู่ที่เซสชัน 051 การหมุนเวียนแบ็กอัปเกิดขึ้นแล้วจริง ๆ — ไฟล์ EAGER ลดจาก 2087 เหลือ 500 บรรทัด ถึงกระนั้นบริบทก็ยังหนักอยู่ มีบางอย่างที่ฉันยังไม่เข้าใจ

ฉันเปิดเทอร์มินัลแล้วพิมพ์:

wc -l AGENT.adoc AGENT_MODUS_OPERANDI.adoc PROMPT_REPRISE.adoc \
  .agents/INDEX.adoc .agents/SESSIONS_HISTORY.adoc \
  .agents/archives/COMPLETED_TASKS_ARCHIVE_2026-04.adoc
  287 AGENT.adoc
  627 AGENT_MODUS_OPERANDI.adoc
   51 PROMPT_REPRISE.adoc
  218 .agents/INDEX.adoc
   18 .agents/SESSIONS_HISTORY.adoc
  213 .agents/archives/COMPLETED_TASKS_ARCHIVE_2026-04.adoc
 1414 total

1414 บรรทัด การหมุนเวียนแบ็กอัปได้ตัดทอน INDEX, SESSIONS_HISTORY และ COMPLETED_TASKS ลงอย่างเรียบร้อย — พวกมันสะอาดดี แต่มีช้างในห้องที่ฉันไม่เคยเห็น:627 บรรทัดในไฟล์เดียว`AGENT_MODUS_OPERANDI.adoc`.

ไฟล์นี้คือไฟล์ที่ฉันเขียนในเซสชัน 1 เพื่อบันทึกกลยุทธ์ Eager/Lazy มันคือคู่มือของวิธีการนี้ และมันได้กลายเป็น 44% ของบริบท EAGER โดยตัวมันเอง

@startuml
skinparam backgroundColor #FEFEFE

title Contexte EAGER — 1414 lignes

rectangle "AGENT_MODUS_OPERANDI\n**627 lignes (44%)**" as MOD #FFCDD2
rectangle "AGENT.adoc\n287 lignes (20%)" as AG #BBDEFB
rectangle "INDEX.adoc\n218 lignes (15%)" as IDX #C8E6C9
rectangle "COMPLETED_TASKS\n213 lignes (15%)" as ARC #FFF9C4
rectangle "PROMPT_REPRISE\n51 lignes (4%)" as PRO #E1BEE7
rectangle "SESSIONS_HISTORY\n18 lignes (1%)" as HIS #FFE0B2

note bottom of MOD
  Le fichier qui documente
  la méthode est devenu
  le plus gros poste de dépense
end note

@enduml

ความย้อนแย้งนั้นสมบูรณ์แบบ ไฟล์ที่ออกแบบมาเพื่อ ประหยัด บริบทกลับกลายเป็น ผู้บริโภค บริบทหลัก มันเหมือนกับว่าคู่มือการใช้รถของคุณหนักยิ่งกว่าตัวเครื่องยนต์

การตรวจสอบ: วิเคราะห์ 627 บรรทัด

ฉันตัดสินใจตรวจสอบทีละส่วน ไม่ใช่เพื่อลบ — แต่เพื่อ ทำความเข้าใจ ว่าอะไรสมควรอยู่ใน EAGER และอะไรที่อาจอยู่ที่อื่นได้โดยไม่สูญเสียความรู้

นี่คือโครงสร้างที่แน่นอนของ`AGENT_MODUS_OPERANDI.adoc`และสิ่งที่ฉันพบที่นั่น:

ส่วน เส้น เนื้อหา มีอยู่แล้วใน…​

P1 — ภาพรวม

64

ปัญหาที่แก้ไขแล้ว หลักการพื้นฐาน การเปรียบเทียบแดชบอร์ดกับคู่มือ

Please provide the French text you’d like me to translate into Thai.

P2 — โครงสร้างไฟล์

97

โครงสร้างแบบต้นไม้, นโยบายการโหลด, โหลดอะไรเมื่อใด

Please provide the French text you’d like me to translate.

P3 — กฎเด็ดขาด

34

ห้ามใช้ Git ห้ามใช้คำสั่งที่ทำลายข้อมูล ห้ามใช้ข้อมูลลับ

AGENT.adoc+INDEX.adoc

P4 — วงจรชีวิตเซสชัน

133

เทมเพลตการเปิด, กฎการทำงาน, 6 ขั้นตอนสิ้นสุดเซสชัน, รายการตรวจสอบ

AGENT.adoc§สิ้นสุดเซสชัน +INDEX.adoc

P5 — เมตริกและเกณฑ์

49

เซสชันที่เหมาะสมที่สุด (15-30 นาที, 1-3 ไฟล์), สัญญาณเตือน

Please provide the French text you’d like me to translate.

P6 — ประเภทของเซสชัน

72

ตารางการตรวจจับ รูปแบบข้อเสนอ ข้อยกเว้น

Please provide the French text you’d like me to translate into Thai.

P7 — การปรับปรุงอย่างต่อเนื่อง

39

ตัวชี้วัดการติดตาม, การทบทวนรายสัปดาห์

—

P8 — รายการตรวจสอบการเริ่มต้น

13

Bootstrap โปรเจกต์ใหม่

Please provide the French text you’d like me to translate into Thai.

P9 — เอกสารอ้างอิง

30

ไฟล์อ้างอิง, แหล่งข้อมูลภายนอก

AGENT.adoc(ไฟล์ EAGER/LAZY)

ภาคผนวก A+B

42

อภิธานศัพท์, ประวัติเวอร์ชัน

No French text was provided to translate. Please send the source text.

คำตัดสินเป็นที่สิ้นสุด:

  • รายการซ้ำแบบสมบูรณ์(167 บรรทัด) : P3, P4, P9 — ทุกอย่างอยู่ในแล้ว`AGENT.adoc` ou INDEX.adoc, บ่อยครั้งแบบคำต่อคำ

  • ในทางปฏิบัติไม่เคยถูกปรึกษา(215 บรรทัด) : P5, P6, P7, P8, ภาคผนวก — ของเมตากาเวอร์แนนซ์ที่ไม่เคยถูกใช้ในเซสชันใดเลย

  • ความรู้เฉพาะ(161 บรรทัด) : P1 และ P2 — คำศัพท์ LAZY/EAGER, การเปรียบเทียบ, นโยบายการโหลด

จาก 627 บรรทัด,382 เป็นเสียงรบกวน. และ 382 บรรทัดเหล่านี้ถูกโหลด ทุกครั้งที่เริ่มเซสชัน ถูกใช้โดยเอเจนต์ ทำให้ความสนใจของมันเจือจางก่อนที่ฉันจะพูดสวัสดีด้วยซ้ำ

@startuml
skinparam backgroundColor #FEFEFE
skinparam defaultTextAlignment center

title Audit de AGENT_MODUS_OPERANDI.adoc — 627 lignes

left to right direction

rectangle "🟡 **Doublons**\n167 lignes (27%)" as DUP #FFF9C4 {
  card "P3 — Règles absolues\n(34 lignes)" as D1
  card "P4 — Cycle de vie\n(133 lignes)" as D2
  card "P9 — Références\n(30 lignes)" as D3
}

rectangle "🔴 **Jamais consulté**\n215 lignes (34%)" as JAM #FFCDD2 {
  card "P5 — Métriques\n(49 lignes)" as J1
  card "P6 — Détection\n(72 lignes)" as J2
  card "P7 — Amélioration\n(39 lignes)" as J3
  card "P8 — Bootstrap\n(13 lignes)" as J4
  card "Annexes — Glossaire\n(42 lignes)" as J5
}

rectangle "🟢 **Connaissance unique**\n161 lignes (26%)" as UNI #C8E6C9 {
  card "P1 — Vue d'ensemble\n(64 lignes)" as U1
  card "P2 — Structure fichiers\n(97 lignes)" as U2
}

note bottom of UNI
  C'est ÇA qu'il faut garder en EAGER.
  Le reste → cold storage.
end note

@enduml

แผนภาพนี้คือกุญแจของทุกสิ่ง ข้อมูลซ้ำ (สีเหลือง) เป็นเพียงสัญญาณรบกวนล้วน ๆ — เอเจนต์อ่านสิ่งเหล่านั้นสองครั้ง ในไฟล์ที่แตกต่างกันสองไฟล์ ส่วนสิ่งที่ไม่เคยถูกตรวจดู (สีแดง) คือเอกสารที่ตายแล้ว — เขียนขึ้นอย่างพิถีพิถัน แต่ไม่เคยถูกนำไปใช้ มีเพียงสีเขียวเท่านั้นที่บรรจุความรู้ซึ่งเอเจนต์ไม่สามารถหาได้จากที่อื่น

ความกลัวที่จะสูญเสียวิศวกรรม

ในขั้นนี้ ฉันมีหลักฐานอยู่ตรงหน้าแล้ว: ฉันต้องลด`AGENT_MODUS_OPERANDI.adoc`แต่ฉันลังเล

ไฟล์นี้ ฉันเขียนด้วยมือ แต่ละส่วนเป็นผลลัพธ์ของบทเรียนที่ได้เรียนรู้ในเซสชันจริง ส่วน P3 เกิดจาก`rm -rf`โดยบังเอิญบน`bakery-plugin`ซึ่งทำให้ฉันเสียโทเค็น Firebase จริง ๆ ส่วน P4 เป็นผลจากสิบห้าเซสชันที่ฉันลืมเก็บถาวรและหลุดประเด็น กระบวนการ 6 ขั้นตอนไม่ได้มาจากหนังสือ — มันมาจากความเจ็บปวด

การลบส่วนเหล่านี้ ก็เท่ากับทิ้งประวัติวิศวกรรมของตัวผมเอง บทเรียนที่ทำให้เกิดส่วนเหล่านี้ เซสชันที่ผมค้นพบมัน ความผิดพลาดที่ผมไม่อยากทำซ้ำอีกเลย นี่ไม่ใช่ข้อความ — มันคือประสบการณ์ที่ตกผลึก

ณ จุดนี้เองที่ฉันกำหนดหลักการซึ่งจะนำทางแนวทางแก้ไข:

Please provide the French text you’d like me to translate into Thai. ห้ามลบเด็ดขาด ย้ายตำแหน่งเสมอความรู้ไม่จำเป็นต้องหายไปจากโปรเจกต์ แค่ต้องไม่ถูกโหลดโดยอัตโนมัติเมื่อไม่จำเป็น Please provide the French text you’d like me to translate to Thai.

ทางออก: การแยกแบบสารานุกรม

รูปแบบที่ฉันเสนอนั้นเรียบง่ายและได้แรงบันดาลใจจากวิธีที่วิกิพีเดียเติบโตขึ้น: เมื่อบทความยาวเกินไป เราไม่ตัดมันทิ้ง — เราสร้างบทความแยกที่มีรายละเอียดและเก็บบทสรุปไว้ในบทความหลัก

สำหรับ`AGENT_MODUS_OPERANDI.adoc`, ซึ่งให้:

  1. แยกออก161 บรรทัดความรู้ที่ไม่ซ้ำกัน (P1 + P2) ในไฟล์ใหม่`LAZY_EAGER_ESSENTIALS.adoc`— กระชับเหลือ ~50 บรรทัด โดยเป็น EAGER อย่างเคร่งครัด

  2. เปลี่ยนชื่อ AGENT_MODUS_OPERANDI.adoc en .agents/encyclopedies/LAZY_EAGER_ENCYCLOPEDIE.adoc— ไฟล์ต้นฉบับ 627 บรรทัด ที่เก็บรักษาไว้ อย่างสมบูรณ์ ในที่จัดเก็บแบบเย็น

  3. ห้ามชาร์จไฟล์สารานุกรมโดยอัตโนมัติ — มันมีไว้สำหรับมนุษย์ สำหรับการกลั่นกรองในอนาคต สำหรับเอเจนต์ที่เราจะเรียกใช้ในอีกหกเดือนด้วยโมเดลที่ดีกว่า

@startuml
skinparam backgroundColor #FEFEFE
skinparam defaultTextAlignment center

title Split Encyclopédique — AGENT_MODUS_OPERANDI

left to right direction

rectangle "**AGENT_MODUS_OPERANDI.adoc**\n627 lignes\n(avant split)" as BEFORE #FFCDD2 {
}

rectangle " " as ARROW1
rectangle " " as ARROW2

rectangle "**LAZY_EAGER_ESSENTIALS.adoc**\n**~50 lignes — EAGER**" as ESS #C8E6C9 {
  card "P1 condensée\n(15 lignes)" as E1
  card "P2 condensée\n(35 lignes)" as E2
}

rectangle "**.agents/encyclopedies/**\n**LAZY_EAGER_ENCYCLOPEDIE.adoc**\n627 lignes — COLD" as ENC #BBDEFB {
  card "P1 à Annexes\n(intégral, intact)" as C1
}

BEFORE -[#4CAF50]-> ESS : "Extraction de\nla connaissance critique"
BEFORE -[#2196F3]-> ENC : "Préservation intégrale\nde l'ingénierie"

note bottom of ESS
  Chargé automatiquement
  en début de session
  → L'agent comprend le vocabulaire
end note

note bottom of ENC
  Jamais chargé automatiquement
  Consultable par l'humain
  Matériau brut pour distillation future
end note

@enduml

ชื่อ`encyclopedies/`ไม่ใช่เรื่องเล็กน้อย สารานุกรมไม่ใช่แฟ้มจดหมายเหตุ — แต่เป็นชุดความรู้ที่จัดระเบียบแล้ว ค้นดูได้แต่พกพาไม่ได้ เราไม่อ่าน Encyclopédie Universalis บนรถไฟใต้ดิน เราเก็บมันไว้ในห้องสมุด และไปที่นั่นเมื่อมีคำถามที่เฉพาะเจาะจง

นี่คือหน้าที่ของโฟลเดอร์นี้อย่างแท้จริง: คลังอ้างอิงแบบเย็นที่มีโครงสร้างและครอบคลุมครบถ้วน — ซึ่งเอเจนต์จะไม่แตะต้องโดยอัตโนมัติ

เนื้อหาของไฟล์ ESSENTIALS

นี่คือลักษณะจริง ๆ ของไฟล์ใหม่`LAZY_EAGER_ESSENTIALS.adoc`, สกัดและย่อให้กระชับจาก P1 และ P2:

= Stratégie LAZY/EAGER — Principes Essentiels

[abstract]
Ce fichier définit la stratégie de gestion du contexte agent.
Chargé automatiquement (EAGER) en début de session.

== Principes

|===
| EAGER | LAZY
| Tableau de bord | Manuel du propriétaire
| Chargé automatiquement | Chargé sur demande
| <= 100 lignes, <= 10k tokens | Illimité, détaillé
| Règles absolues, mission courante | Archives, historique, références
|===

== Politique de Chargement

|===
| Fichier | Type | Quand charger
| PROMPT_REPRISE.adoc | EAGER | Début session (auto)
| *_ESSENTIALS.adoc | EAGER | Début session si EPIC active
| .agents/INDEX.adoc | EAGER | Début session (auto)
| *_REFERENCE.adoc | LAZY | Sur besoin (détails architecture)
| .agents/sessions/N-*.adoc | LAZY | Sur demande (détails session)
| .agents/encyclopedies/*.adoc | COLD | Jamais auto (humain seulement)
|===

== Comment l'Agent Sait Quoi Charger

Début session → PROMPT_REPRISE + INDEX + ESSENTIALS actifs.
Besoin de détails → charger les *_REFERENCE et sessions/ en LAZY.
Connaissance froide → encyclopedies/, jamais automatique.

ห้าสิบบรรทัด. นั่นคือทั้งหมดที่เอเจนต์ต้องการเพื่อเข้าใจกลไก ส่วนที่เหลือทั้งหมด — ประวัติของบทเรียน การเปรียบเทียบโดยละเอียด ขั้นตอนทีละขั้น ภาคผนวก — อยู่ในสารานุกรม

และที่สำคัญที่สุด:ไม่มีอะไรถูกลบ. เส้นงานวิศวกรรม 627 เส้นยังอยู่ตรงนั้น ใน`.agents/encyclopedies/LAZY_EAGER_ENCYCLOPEDIE.adoc`. พวกมันเพียงถูกจัดเก็บไว้ในชั้นหนังสือแทนที่จะวางบนโต๊ะทำงาน

ผลลัพธ์: -50% ของบริบท EAGER

ก่อนการแยก:

 287 AGENT.adoc
 627 AGENT_MODUS_OPERANDI.adoc
  51 PROMPT_REPRISE.adoc
 218 .agents/INDEX.adoc
  18 .agents/SESSIONS_HISTORY.adoc
 213 .agents/archives/COMPLETED_TASKS_ARCHIVE_2026-04.adoc
1414 total

หลังจากการแยก:

 287 AGENT.adoc
  50 LAZY_EAGER_ESSENTIALS.adoc       ← remplace 627 lignes
  51 PROMPT_REPRISE.adoc
 218 .agents/INDEX.adoc
  18 .agents/SESSIONS_HISTORY.adoc
 213 .agents/archives/COMPLETED_TASKS_ARCHIVE_2026-04.adoc
 837 total                              ← -41%
@startuml
skinparam backgroundColor #FEFEFE

title Contexte EAGER après split encyclopédique — 837 lignes (-41%)

rectangle "AGENT.adoc\n287 lignes (34%)" as AG #BBDEFB
rectangle "INDEX.adoc\n218 lignes (26%)" as IDX #C8E6C9
rectangle "COMPLETED_TASKS\n213 lignes (25%)" as ARC #FFF9C4
rectangle "PROMPT_REPRISE\n51 lignes (6%)" as PRO #E1BEE7
rectangle "ESSENTIALS\n50 lignes (6%)" as ESS #A5D6A7
rectangle "SESSIONS_HISTORY\n18 lignes (2%)" as HIS #FFE0B2

note bottom of ESS
  De 627 → 50 lignes
  577 lignes d'ingénierie
  préservées en cold storage

  Rien de perdu. Tout de relocalisé.
end note

@enduml

ผู้ใช้ทรัพยากรมากที่สุด (AGENT_MODUS_OPERANDI, 627 บรรทัด) ถูกแทนที่ด้วยไฟล์ขนาด 50 บรรทัด ผลที่ได้เกิดขึ้นทันที: ปลดปล่อยบริบทได้ 577 บรรทัด เอเจนต์หายใจได้

และใน`.agents/encyclopedies/`, ไฟล์ต้นฉบับ 627 บรรทัดรออยู่ ยังสมบูรณ์ พร้อมทุกส่วนของมัน — รวมถึงส่วนที่เป็นข้อมูลซ้ำ รวมถึงส่วนที่ไม่เคยถูกใช้งานเลย เพราะสักวันหนึ่ง โมเดลที่ดีกว่าหรือนักวิทยาศาสตร์ข้อมูลที่เป็นมนุษย์จะอยากนำแง่มุมเหล่านี้ ความซ้ำซ้อนที่ยอมรับไว้เหล่านี้ และบทเรียนที่ได้เรียนรู้เหล่านี้มาเปรียบเทียบไขว้กัน และในวันนั้น วัตถุดิบก็จะอยู่ตรงนั้น

ทำไมโฟลเดอร์จึงชื่อ `encyclopedies/

การเลือกชื่อไม่ใช่เรื่องความสวยงามภายนอก มันเข้ารหัสปรัชญาของกลไกนั้น

หนึ่ง จดหมายเหตุ (archives/) มีข้อมูลย้อนหลังที่จัดเรียงตามลำดับเวลา — เช่น COMPLETED_TASKS รายเดือน แบ็กอัป หนึ่งรายการ (backup/) คือสแนปช็อตที่ระบุเวลา — สำเนาสำรองของสถานะในอดีต

สารานุกรม เป็นสิ่งที่แตกต่างออกไป มันคือการรวบรวมความรู้เฉพาะเรื่อง ซึ่งจัดโครงสร้างตามหัวข้อ ครอบคลุมครบถ้วนแต่ไม่เรียงตามลำดับเชิงเส้น เราไม่ได้อ่านสารานุกรมตั้งแต่ต้นจนจบ แต่เราดำดิ่งเข้าไปเพื่อตอบคำถามที่เจาะจงข้อหนึ่ง

นี่คือสัญญาของแฟ้มนี้อย่างแท้จริง:

แฟ้ม

บทบาท

การเข้าถึง

ความละเอียด

archives/

ข้อมูลย้อนหลัง (งานที่เสร็จสิ้นต่อเดือน)

LAZY ที่มีโครงสร้าง

ตามลำดับเวลา

backup/

สแนปช็อตแบบเย็น (ชุดละ 10 เซสชัน)

COLD, สำเนาฉบับสมบูรณ์

ตามลำดับเวลา

encyclopedies/

ความรู้เชิงหัวข้ออย่างครอบคลุม (ระเบียบวิธี, รูปแบบ)

COLD ไม่เคยเป็นแบบอัตโนมัติ

หัวข้อ

การแยกความแตกต่างนี้ช่วยหลีกเลี่ยงการเป็นที่รวมทุกอย่างแบบไม่แยกประเภท แต่ละไฟล์รู้ว่าตนควรอยู่ที่ไหนตาม สิ่งที่มันบรรจุอยู่ ไม่ใช่ตาม เวลาที่มันถูกสร้างขึ้น

ความต่อเนื่องตามหลักเหตุผลของซีรีส์

หากคุณได้อ่านบทความสองชิ้นแรกแล้ว นี่คือวิธีที่ชิ้นส่วนทั้งสามประกอบเข้าด้วยกัน:

@startuml
skinparam backgroundColor #FEFEFE
skinparam defaultTextAlignment center
skinparam wrapWidth 220

title Trilogie de la Gouvernance Agent

left to right direction

package "📖 **Article 0108**\nStratégie Eager/Lazy" as A1 #E8F5E9 {
  card "Mémoire agent\nentre sessions" as M1
  card "Fichiers EAGER\n(auto-chargés)" as M2
  card "Fichiers LAZY\n(sur demande)" as M3
  card "Procédure 6 étapes" as M4
}

package "🧊 **Article 0110**\nMécanisme Hot/Warm/Cold" as A2 #FFF9C4 {
  card "Vieillissement\ndu contexte" as V1
  card "Sliding window\n10 sessions" as V2
  card "Vague froide\nidentique" as V3
  card "Capteur à\ndeux déclencheurs" as V4
}

package "🔍 **Article 0111**\nAudit + Solution Encyclopédique" as A3 #BBDEFB {
  card "Audit des fichiers\nEAGER" as E1
  card "Identification\ndu gaspillage" as E2
  card "Split\nESSENTIALS/encyclopédie" as E3
  card "Préservation\nde l'ingénierie" as E4
}

A1 --> A2 : "La mémoire grandit\n→ il faut un mécanisme\nde vieillissement"
A2 --> A3 : "Le vieillissement ne suffit pas\n→ il faut auditer ce qui\nmérite d'être en EAGER"

note bottom of A3
  ✅ Les trois couches sont en place
  sur 6 projets actifs
end note

@enduml
  • 0108ตอบว่า: « จะให้หน่วยความจำแก่เอเจนต์ระหว่างสองเซสชันได้อย่างไร?

  • 0110ตอบว่า: «จะป้องกันไม่ให้ความทรงจำนี้ทำให้ตัวแทนหายใจไม่ออกได้อย่างไร

  • 0111ตอบว่า: « แล้วถ้าปัญหาไม่ใช่ขนาดของอาร์ไคฟ์ แต่เป็นสิ่งที่เรา เลือก ที่จะใส่ใน EAGER ล่ะ ?

บทความแรกสร้างโครงสร้าง บทความที่สองเพิ่มกลไกการชรา บทความที่สามตรวจสอบเนื้อหา — และค้นพบว่าวิธีวิทยาเองได้กลายเป็นปัญหา

สิ่งที่ฉันจะทำต่างออกไป

เมื่อมองย้อนกลับไป ฉันเห็นข้อผิดพลาดในการออกแบบในตอนแรก`AGENT_MODUS_OPERANDI.adoc`ถูกสร้างขึ้นเป็นเอกสารเดียว — แถลงการณ์ฉบับหนึ่ง นั่นเป็นวิธีที่ถูกต้องในการจัดระบบความคิดให้เป็นทางการ แต่เมื่อความคิดถูกทำให้เป็นทางการแล้ว เอกสารนั้นควรถูกแยกออกทันที: ส่วนสำคัญไว้ใน EAGER ส่วนที่ละเอียดครบถ้วนไว้ใน cold

ผมไม่ได้ทำอย่างนั้นเพราะผมภาคภูมิใจในเอกสารนี้ 627 บรรทัดของงานวิศวกรรมล้วน ๆ ที่เขียนด้วยมือ แต่ละส่วนล้วนเป็นผลจากบทเรียนในเซสชัน มันเป็นผลงานของผม และเหมือนนักเขียนทุกคน ผมลำบากใจที่จะตัดมันออกเป็นส่วน ๆ

บทเรียน:ไม่ใช่เพราะเอกสารดีแล้วจะต้องโหลดโดยอัตโนมัติ. คุณภาพของเนื้อหาไม่มีความเกี่ยวข้องใด ๆ กับความเกี่ยวข้องของเนื้อหาต่อบริบทเฉพาะหน้าของเอเจนต์

วันนี้ กฎนั้นง่ายมาก: เอกสารใดก็ตามที่มีมากกว่า 100 บรรทัดในบริบท EAGER ถือว่าน่าสงสัย ควรได้รับการตรวจสอบ ไม่ใช่การตัดสินลงโทษ — แต่เป็นการตรวจสอบ และคำถามไม่เคยใช่ « ควรลบมันหรือไม่? » แต่เป็น « ควรโหลดมันในทุกเซสชันหรือไม่?

คู่มือสำหรับการตรวจสอบบริบทของคุณเอง

หากคุณได้ติดตามสองบทความแรกและได้วางระบบการกำกับดูแลแบบ Eager/Lazy ของคุณเองแล้ว นี่คือกระบวนการตรวจสอบในห้าขั้นตอน:

  1. วัดThe text to translate is missing — please provide the French source text.`wc -l`บนไฟล์ EAGER ทั้งหมดของคุณ ยอดรวมควรน้อยกว่า 1000 บรรทัด

  2. ระบุสิ่งที่ใหญ่ที่สุด: ไฟล์ที่มีขนาดเกิน 20% ของทั้งหมดคือผู้ต้องสงสัยอันดับหนึ่ง

  3. ตรวจสอบทีละส่วน: สำหรับแต่ละส่วน ให้ถามตัวเองว่า «ข้อมูลนี้อยู่ที่อื่นแล้วหรือไม่? เอเจนต์อ่านข้อมูลนี้ในไฟล์อื่นแล้วหรือยัง? ข้อมูลนี้ถูกใช้งานใน 5 เซสชันล่าสุดหรือไม่?

  4. จำแนกประเภท: รายการซ้ำ, ไม่เคยถูกใช้งาน, ความรู้เฉพาะตัว

  5. แยกหรือย้ายที่ตั้ง: สิ่งที่เป็นเอกลักษณ์และสำคัญยิ่ง → ESSENTIALS แบบกะทัดรัด ทุกอย่างที่เหลือ →encyclopedies/.

@startuml
skinparam backgroundColor #FEFEFE
skinparam defaultTextAlignment center

title Procédure d'Audit du Contexte Agent — 5 Étapes

start

:1. **Mesurer**\n`wc -l *.adoc .agents/*.adoc`;

if (Total > 1000 lignes ?) then (oui)
  :⚠️ Contexte trop lourd;
else (non)
  :✅ Contexte OK;
  stop
endif

:2. **Identifier le suspect**\nLe fichier > 20% du total;

:3. **Auditer section par section**\nPour chaque section :\n• Déjà ailleurs ? → doublon\n• Jamais servi ? → mort\n• Information unique ? → critique;

:4. **Classifier**\n🟡 Doublons → à retirer de l'EAGER\n🔴 Jamais utilisé → cold storage\n🟢 Connaissance unique → à garder;

:5. **Splitter**\n🟢 → ESSENTIALS (~50 lignes, EAGER)\n🟡🔴 → encyclopedies/ (cold storage);

:✅ Contexte optimisé\nsans perte d'ingénierie;

stop

@enduml

ขั้นตอนนี้ใช้เวลา 15 นาที ในโปรเจกต์ที่มี 50 เซสชัน จะช่วยประหยัดโทเคนหลายร้อยโทเคนต่อเซสชันในอนาคต ROI เกิดขึ้นทันที

ธรรมาภิบาลที่มีชีวิต

สิ่งที่บทความชุดสามตอนนี้สอนฉันคือ การกำกับดูแลเอเจนต์ไม่ใช่ผลิตภัณฑ์ที่เสร็จสมบูรณ์ มันคือสิ่งมีชีวิต. เธอเติบโตไปพร้อมกับโครงการ เธอเผชิญกับโรคจากการเจริญเติบโต เธอจำเป็นต้องได้รับการตรวจสุขภาพเป็นประจำ

เซสชัน 048 เผยให้เห็นว่าคลังเอกสารบวมขึ้น เซสชัน 051 เผยให้เห็นว่าระเบียบวิธีเองก็บวมขึ้นเช่นกัน เซสชัน 060 น่าจะเผยให้เห็นสิ่งอื่นอีก นั่นเป็นเรื่องปกติ นั่นเป็นเรื่องที่ดี การกำกับดูแลที่ไม่เคยตั้งคำถามกับตนเองเลยคือการกำกับดูแลที่ตายแล้ว

กลไกทั้งสามที่นำมาใช้ — Eager/Lazy, Hot/Warm/Cold, split encyclopédique — ประกอบกันเป็นระบบป้องกันเชิงลึกต่อการอิ่มตัวของบริบท ไม่มีกลไกใดเพียงพอโดยลำพัง เมื่ออยู่ร่วมกัน กลไกเหล่านี้จึงเสริมซึ่งกันและกัน :

  • กระตือรือร้น/ขี้เกียจจัดโครงสร้างข้อมูล ตามความพร้อมใช้งาน

  • ร้อน/อุ่น/เย็นจัดโครงสร้างข้อมูล ตามความสดใหม่

  • การตรวจประเมินเชิงสารานุกรมจัดโครงสร้างข้อมูล ตามความหนาแน่น

@startuml
skinparam backgroundColor #FEFEFE
skinparam nodeBackgroundColor #E3F2FD

title Défense en Profondeur contre la Saturation du Contexte

node "**Contexte Agent**\n~800 lignes\nsain" as CTX #C8E6C9

node "Couche 1\n**EAGER / LAZY**" as C1 #BBDEFB
node "Couche 2\n**HOT / WARM / COLD**" as C2 #BBDEFB
node "Couche 3\n**ESSENTIALS / ENCYCLOPÉDIE**" as C3 #BBDEFB

CTX --> C1 : "Structure par\n**disponibilité**"
CTX --> C2 : "Structure par\n**fraîcheur**"
CTX --> C3 : "Structure par\n**densité**"

note bottom of C3
  Les trois couches sont nécessaires.
  Aucune n'est suffisante seule.
end note

@enduml

ด้วยเลเยอร์ทั้งสามนี้ บริบทของเอเจนต์บน`magic-stick`ได้ลดลงจาก 2087 บรรทัด (ก่อนการปรับให้เหมาะสมใด ๆ) เหลือประมาณ 800 บรรทัด — เป็นการหารด้วย 2.6 โดยไม่สูญเสียเอกสารแม้แต่บรรทัดเดียว ไม่สูญเสียไฟล์เก็บเซสชันแม้แต่ไฟล์เดียว และไม่สูญเสียบทเรียนที่ได้เรียนรู้แม้แต่ข้อเดียว

ทุกอย่างอยู่ที่นี่ เพียงแค่จัดระเบียบได้ดีขึ้น

ลิงก์


ความรู้ไม่จำเป็นต้องหายไป แค่ต้องไม่ถูกโหลดเมื่อไม่จำเป็น

บทความที่เกี่ยวข้อง