TERRA RPC

กำลังเตรียมกระดาน…

Agent Dev Thai Academyprinciples · patterns · architecture
หลักสูตร · Agent setup ในงานจริง
0/5
Agent setup ในงานจริง · สี่กระดาน รอบตัว AI

เขียนไว้แล้ว แต่AI ไม่เห็น

หกบทก่อนหน้าสอนว่าโค้ดของแอปควรอยู่ตรงไหน บทนี้คือของที่อยู่รอบตัว AI กฎ ความจำ skill และ cron ที่รันเอง ของพวกนี้ไม่ใช่โค้ดที่ลูกค้าใช้ แต่ AI ควรอ่านมันก่อนลงมือทุกครั้ง ถ้าวางผิดที่ มันไม่อ่าน หรืออ่านแล้วทำตามข้อที่ผิด

คราวนี้แถวบนกระดานคือที่ที่ของถูกโหลด ทุก session, hook, ไฟล์ในโปรเจกต์, แชทที่หายเมื่อปิด, งบคำอธิบาย skill และสองฝั่งของ cron กล่องยังเป็นไฟล์ ชิ้นคือบรรทัดหรือขั้นตอนข้างใน ซ้ายคือ setup ที่วางของถูกที่ ขวาคือ setup ที่โตขึ้นเองเมื่อไม่มีใครจัด กดถัดไปแล้วนับว่าฝั่งไหน AI ต้องอ่านซ้ำกี่อย่าง และอะไรที่เขียนไว้แล้วไม่ถูกอ่าน บทจะถูกนับว่าเรียนจบเมื่อคุณไปถึงขั้นสุดท้ายของรูป

1
ตอนที่ 1 · กฎอยู่ผิดที่เขียนห้ามไว้ตัวหนาบรรทัดแรก AI ก็ยังเปิดไฟล์รหัสลับ เพราะ CLAUDE.md เป็นคำขอ ไม่ใช่กฎ
เรื่องย่อ

repo นี้คุณให้ AI ทำงานมาหลายเดือน ทุกครั้งที่มันพลาด คุณเขียนกฎเพิ่มลง CLAUDE.md เพราะเป็นไฟล์เดียวที่เห็นตอนเริ่ม วันนี้คุณเห็นว่ามันเปิดไฟล์รหัสลับ ทั้งที่ในไฟล์เขียนห้ามไว้

doc ของ Anthropic เขียนไว้เองว่า CLAUDE.md เป็น context ไม่ใช่ configuration ทุกบรรทัดเป็นคำขอที่ไปนั่งรวมกับ prompt และโค้ดที่มันเพิ่งอ่าน บนฝั่งขวา ยิ่งไฟล์ยาว ทุกข้อยิ่งเจือจาง และสองข้อที่เขียนห่างกันหลายเดือนเริ่มชี้คนละทาง

ซ้าย กฎแยกไว้สามที่ CLAUDE.md สั้น ๆ มีแค่ของที่ทุกงานต้องรู้ hook ที่ตอบ deny ก่อนเครื่องมือรัน และกฎตามโฟลเดอร์ที่โหลดเมื่อแตะไฟล์ที่ตรงกัน ขวา ทุกข้ออยู่ใน CLAUDE.md ไฟล์เดียวที่โหลดทั้งก้อนทุก session คุณจะสั่งงานสามงานให้ทั้งสองฝั่ง แล้วนับว่าฝั่งไหน AI ต้องอ่านใหม่กี่ข้อ และข้อไหนที่เขียนไว้แล้วมันไม่ทำตาม

กล่องบนกระดานนี้ · 4
ส่วนทำอะไรทำไม
CLAUDE.mdของที่ทุกงานต้องรู้ สั้น ๆโหลดทุก session ทุกบรรทัดเลยต้องคุ้มที่จะอ่านทุกครั้ง
hook กันของห้ามเด็ดขาดโค้ดที่ตอบ deny ก่อนเครื่องมือรันพลาดครั้งเดียวคือรหัสลับหลุด เลยไม่ปล่อยให้โมเดลตัดสิน
กฎงานหน้าเว็บโหลดเมื่อ AI แตะไฟล์หน้าเว็บตอนแก้งานอื่น กฎชุดนี้ไม่อยู่ใน context เลย
กฎงาน APIไฟล์ใหม่ โหลดเมื่อแตะงาน APIเพิ่มกฎได้โดยไม่ทำให้ไฟล์ที่โหลดทุกครั้งยาวขึ้น
1
Rules in the right place · กฎอยู่ผิดที่คุณจะสั่ง AI ว่าอะไร
1
Rules in the right place · กฎอยู่ผิดที่
ตอนที่ 1 · สถานการณ์

repo นี้คุณให้ AI ทำงานมาหลายเดือน ทุกครั้งที่มันพลาด คุณเขียนกฎเพิ่มลง CLAUDE.md เพราะเป็นไฟล์เดียวที่เห็นตอนเริ่ม วันนี้คุณเห็นว่ามันเปิดไฟล์รหัสลับ ทั้งที่ในไฟล์เขียนห้ามไว้

เขียนห้ามไว้ตัวหนาบรรทัดแรก AI ก็ยังเปิดไฟล์รหัสลับ เพราะ CLAUDE.md เป็นคำขอ ไม่ใช่กฎ

กฎแยกสามที่ ตามความเสียหาย
ทุกข้อใน CLAUDE.md ไฟล์เดียว

แตะกล่องเพื่อหาไฟล์บนกระดาน

กฎแยกสามที่ ตามความเสียหาย
ทุกข้อใน CLAUDE.md ไฟล์เดียว
กฎแยกสามที่ ตามความเสียหาย
โหลดทุก session
CLAUDE.mdโหลดทุก sessionสั้น
ใช้ pnpm ไม่ใช่ npmรัน test ก่อน commitข้อมูลไม่ครบ บอกสมมติฐานก่อน
hook · รันก่อน AI ใช้เครื่องมือ
hook กันของห้ามเด็ดขาดโค้ดรันก่อนเครื่องมือทุกครั้ง
force push · ตอบ deny ก่อนรัน
กฎตามโฟลเดอร์ · โหลดเมื่อแตะไฟล์ที่ตรงกัน
กฎงานหน้าเว็บโหลดเมื่อแตะไฟล์หน้าเว็บ
กฎของงานหน้าเว็บ ทั้งชุด
ทุกข้อใน CLAUDE.md ไฟล์เดียว
โหลดทุก session
CLAUDE.mdโหลดทั้งก้อนทุก sessionทุกเรื่อง
ใช้ pnpm ไม่ใช่ npmรัน test ก่อน commitข้อมูลไม่ครบ บอกสมมติฐานก่อนห้ามเปิดไฟล์รหัสลับห้าม force pushกฎของงานหน้าเว็บ ทั้งชุดสั่งอะไรให้ทำเลย ไม่ต้องขออนุญาต
hook · รันก่อน AI ใช้เครื่องมือ
ไม่มี hook · ทุกข้อเป็นแค่ข้อความ
กฎตามโฟลเดอร์ · โหลดเมื่อแตะไฟล์ที่ตรงกัน
ไม่มีกฎตามโฟลเดอร์ · ทุกอย่างอยู่ในไฟล์เดียว
ขั้นสุดท้าย · ลากขั้นตอนมาแยกเป็นไฟล์ใหม่ตรงนี้+ ไฟล์ใหม่ลากข้อห้ามไป hook กฎเฉพาะงานไปไฟล์ของมัน ข้อที่ขัดไปพักไว้

กล่อง = ไฟล์หนึ่งไฟล์ ที่ AI ต้องเปิดเมื่อแก้เรื่องในนั้นขั้นตอนชิ้น = สิ่งที่โค้ดทำ หนึ่งขั้น= ชิ้นที่ลากไปไฟล์ใหม่ได้ ในขั้นสุดท้าย

เขียว: ที่ AI เพิ่มหรือแก้ประ: ไฟล์ที่ต้องอ่านใหม่ทั้งก้อนแดง: กฎที่ AI ไม่ทำตาม

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

0 / 3
ก่อนเริ่มก่อนสั่งอะไร

ทั้งสองฝั่งมีกฎชุดเดียวกัน ใช้ pnpm รัน test ก่อน commit ข้อมูลไม่ครบให้บอกสมมติฐานก่อน ห้าม force push และกฎของงานหน้าเว็บ ซ้ายแยกไว้ตามว่าพลาดแล้วเสียหายแค่ไหน และมี hook กัน force push อยู่แล้ว ขวาทุกข้อเป็นข้อความใน CLAUDE.md ไฟล์เดียว พร้อมข้อที่เขียนเพิ่มทีหลังว่าสั่งอะไรให้ทำเลย

ขั้นที่ 1กัน AI ไม่ให้เปิดไฟล์รหัสลับอีก

ซ้าย AI เพิ่มบรรทัด deny ไฟล์รหัสลับใน hook ไฟล์เดียว ครั้งหน้าที่มันขอเปิด hook ตอบไม่อนุญาตก่อนเครื่องมือรัน ขวา AI เขียนกฎข้อเดิมใหม่ ตัวหนา ขึ้นบรรทัดแรก ทั้งไฟล์ 7 ข้อต้องอ่านใหม่ แล้ว session ถัดมามันก็ยังเปิดไฟล์นั้น

ขั้นที่ 2เพิ่มกฎของงาน API

ซ้าย AI สร้างไฟล์กฎงาน API ไฟล์ใหม่ที่โหลดเฉพาะเมื่อแตะไฟล์ API ตอนแก้หน้าเว็บ กฎชุดนี้ไม่อยู่ใน context เลย ขวา AI ต่อท้ายไฟล์ที่โหลดทุก session ไฟล์ยาวขึ้นเป็น 8 ข้อ ทุกข้อต้องอ่านใหม่ และทุกงาน แม้แต่งานแก้ CSS ก็แบกกฎ API ไปด้วย

ขั้นสุดท้ายเปลี่ยนเป็นโมเดลใหม่ แล้วสั่งให้ช่วย finalize ข้อความ

ซ้าย CLAUDE.md มีสามข้อ ไม่มีข้อไหนชี้คนละทาง AI บอกสมมติฐานก่อนแล้วแก้แค่ที่ขอ ไม่มีไฟล์ไหนต้องอ่านใหม่ ขวา โมเดลใหม่อ่านทั้ง 8 ข้อตามตัวอักษร ข้อที่บอกให้ทำเลยกับข้อที่บอกให้ถามก่อน เขียนห่างกันหลายเดือน มันทำตามข้อแรก แล้วเขียนข้อความใหม่ทั้งอัน

หลักการ ในภาษาของโค้ด

ถามทุกข้อว่าพลาดครั้งเดียวเสียหายแค่ไหน ข้อห้ามเด็ดขาดต้องเป็น hook กฎเฉพาะบางไฟล์อยู่ในไฟล์กฎของมัน CLAUDE.md เหลือแค่ของที่ทุกงานต้องรู้

ถามก่อนรับ diffกฎที่ diff นี้เพิ่ม ถ้า AI พลาดครั้งเดียวจะเสียหายแค่ไหน และมันไปขัดกับข้อไหนที่มีอยู่แล้ว

How Claude remembers your project (Anthropic docs): CLAUDE.md is context, not enforced configuration; .claude/rules/ files with paths: load only when matching files are touched; a PreToolUse hook runs before every tool call and can deny it
2
ตอนที่ 2 · AI ลืมทุก sessionสอน AI เรื่องเดิมไปแล้ว เปิด session ใหม่มันก็ทำพังท่าเดิม เพราะบทเรียนอยู่ในแชทที่ปิดไปแล้ว
เรื่องย่อ

โปรเจกต์นี้คุณทำกับ AI มาหลายอาทิตย์ เปิด session ใหม่ทีไรต้องเล่าเรื่องเดิม ใช้ pnpm ไม่ใช่ npm อย่าแก้ไฟล์ใน migration test ต้องรันก่อน commit พิมพ์ไปสิบรอบแล้ว ยังต้องพิมพ์อีก

AI ไม่มีความจำข้าม session ทุกครั้งที่เปิดแชทใหม่ มันคือคนใหม่ที่ไม่เคยเจอคุณ บนฝั่งขวา ทุกบทเรียนที่สอนไปอยู่ในแชทที่ปิดไปแล้ว วันที่สั่ง /clear กลางงาน คุณต้องนั่งเล่าใหม่ 15 ถึง 20 นาที

ซ้าย ทุกเรื่องที่ต้องจำอยู่ในไฟล์ในโปรเจกต์ CLAUDE.md ดึงบันทึกบทเรียนที่ AI จดเองเข้ามาทุก session ไฟล์สถานะงานบอกว่าถึงไหน และบันทึกการตัดสินใจมีวันที่กับเหตุผลทุกบรรทัด ขวา ทุกเรื่องอยู่ในแชทของ session เดียว และหายไปพร้อมกัน คุณจะสั่งงานสามงาน แล้วนับว่าฝั่งไหนต้องเล่าใหม่กี่เรื่อง และอะไรพังซ้ำ

กล่องบนกระดานนี้ · 4
ส่วนทำอะไรทำไม
CLAUDE.mdโหลดเองทุก session แล้วชี้ไปอีกสามไฟล์ไฟล์อื่นถูกอ่านก็ต่อเมื่อไฟล์นี้ดึงเข้ามา
บันทึกบทเรียน · AI จดเองเกิดอะไร ทำไม ครั้งหน้าทำยังไงทุกความผิดกลายเป็นบรรทัดเดียวที่ session หน้าอ่านเอง
สถานะงานถึงไหนแล้ว ต่อไปทำอะไรอัปเดตหลังทุกงาน สั่ง /clear แล้วไม่ต้องเล่าใหม่
บันทึกการตัดสินใจตกลงอะไรไป วันไหน เพราะอะไรสามเดือนต่อมายังรู้ว่าข้อไหนยังใช้ได้
2
Memory across sessions · AI ลืมทุก sessionคุณจะสั่ง AI ว่าอะไร
2
Memory across sessions · AI ลืมทุก session
ตอนที่ 2 · สถานการณ์

โปรเจกต์นี้คุณทำกับ AI มาหลายอาทิตย์ เปิด session ใหม่ทีไรต้องเล่าเรื่องเดิม ใช้ pnpm ไม่ใช่ npm อย่าแก้ไฟล์ใน migration test ต้องรันก่อน commit พิมพ์ไปสิบรอบแล้ว ยังต้องพิมพ์อีก

สอน AI เรื่องเดิมไปแล้ว เปิด session ใหม่มันก็ทำพังท่าเดิม เพราะบทเรียนอยู่ในแชทที่ปิดไปแล้ว

ความจำอยู่ในไฟล์ โหลดทุก session
ทุกอย่างอยู่ในแชท หายเมื่อปิด

แตะกล่องเพื่อหาไฟล์บนกระดาน

ความจำอยู่ในไฟล์ โหลดทุก session
ทุกอย่างอยู่ในแชท หายเมื่อปิด
ความจำอยู่ในไฟล์ โหลดทุก session
ไฟล์ในโปรเจกต์ · อยู่ข้าม session
CLAUDE.mdโหลดเองทุก sessionชี้ไปอีกสามไฟล์
ใช้ pnpm ไม่ใช่ npmดึงบันทึกบทเรียนเข้ามาทุก sessionเริ่มงานอ่านสถานะงาน · จบงานอัปเดต
บันทึกบทเรียน · AI จดเองAI จดเองเกิดอะไร ทำไม ครั้งหน้าทำยังไง
บทเรียน: งานที่ย้อนได้ ทำเลยแล้วรายงาน
สถานะงานอัปเดตหลังทุกงาน
งานถึงไหน ต่อไปทำอะไร
บันทึกการตัดสินใจบรรทัดละเรื่องมีวันที่กับเหตุผล
ตกลงอะไรไป วันไหน เพราะอะไร
แชทของ session นี้ · หายเมื่อปิด
ไม่มีอะไรค้างในแชท · ทุกเรื่องอยู่ในไฟล์
ทุกอย่างอยู่ในแชท หายเมื่อปิด
ไฟล์ในโปรเจกต์ · อยู่ข้าม session
ไม่มีไฟล์ · ทุกเรื่องอยู่ในแชท
แชทของ session นี้ · หายเมื่อปิด
แชทของ session นี้หายเมื่อปิด sessionterminal ละแชท
ใช้ pnpm ไม่ใช่ npmงานถึงไหน ต่อไปทำอะไรตกลงอะไรไป วันไหน เพราะอะไรบทเรียน: งานที่ย้อนได้ ทำเลยแล้วรายงาน
ขั้นสุดท้าย · ลากขั้นตอนมาแยกเป็นไฟล์ใหม่ตรงนี้+ ไฟล์ใหม่ลากทุกเรื่องในแชทไปไว้ในไฟล์ที่ session หน้าอ่านได้

กล่อง = ไฟล์หนึ่งไฟล์ ที่ AI ต้องเปิดเมื่อแก้เรื่องในนั้นขั้นตอนชิ้น = สิ่งที่โค้ดทำ หนึ่งขั้น= ชิ้นที่ลากไปไฟล์ใหม่ได้ ในขั้นสุดท้าย

เขียว: ที่ AI จดหรือแก้ประ: ต้องเล่าใหม่ทั้งหมดแดง: เรื่องที่ AI ลืมหรือรู้ผิด

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

0 / 3
ก่อนเริ่มก่อนสั่งอะไร

ทั้งสองฝั่งรู้เรื่องเดียวกัน ใช้ pnpm งานถึงไหน ตกลงอะไรไปแล้ว และบทเรียนว่างานที่ย้อนได้ให้ทำเลยแล้วค่อยรายงาน ซ้ายทุกเรื่องอยู่ในไฟล์ที่ CLAUDE.md ดึงเข้ามาตอนเปิด ขวาทุกเรื่องอยู่ในแชทของ session นี้

ขั้นที่ 1AI แก้ไฟล์ migration ที่มีอยู่ แล้วคุณจับได้

ซ้าย AI จดลงบันทึกบทเรียนหนึ่งรายการ เกิดอะไร ทำไม ครั้งหน้าทำยังไง session หน้าอ่านเองก่อนเริ่ม ขวา คุณบอกในแชท AI รับปาก พอปิด session แชทก็หาย session หน้ามันแก้ไฟล์ migration อีก

ขั้นที่ 2สั่ง /clear กลางโปรเจกต์ แล้วทำงานต่อ

ซ้าย AI อ่านไฟล์สถานะงาน ทำข้อถัดไปต่อ จบงานแล้วอัปเดตไฟล์นั้น ขวา แชทว่าง AI ไม่รู้ว่าทำถึงไหน ตกลงอะไรไว้ คุณต้องเล่าใหม่ทั้ง 5 เรื่อง 15 ถึง 20 นาที

ขั้นสุดท้ายเปิดสาม terminal บนโปรเจกต์เดียว

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

หลักการ ในภาษาของโค้ด

สิ่งที่บอก AI ในแชทหายเมื่อปิด session อยากให้มันจำ ต้องอยู่ในไฟล์ที่โหลดทุก session บทเรียนจดสามช่อง สถานะงานอัปเดตหลังทุกงาน การตัดสินใจมีวันที่กับเหตุผล

ถามก่อนรับ diffบทเรียนจากงานนี้ ถูกจดลงไฟล์แล้ว หรือยังอยู่แค่ในแชท

Claude Code memory (Anthropic docs): CLAUDE.md loads at the start of every session and can import other files with @path; Architecture Decision Records (Nygard 2011): one dated record per decision, with its reason
3
ตอนที่ 3 · skill ที่โมเดลมองไม่เห็นเพิ่ม skill อีกตัว แต่โมเดลไม่เคยเห็นมัน เพราะคำอธิบายของ 146 skill เกินงบที่โมเดลได้อ่าน
เรื่องย่อ

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

Claude Code ไม่ได้ส่งคำอธิบายของทุก skill ให้โมเดลอ่าน มันมีงบ ตัวที่เคยถูกเรียกได้ขึ้นก่อน ที่เหลือเรียงตามตัวอักษร บนฝั่งขวา skill ที่เพิ่งเขียนเสร็จอาจไม่ถูกมองเห็นเลยสักครั้ง และคำกล่อมที่เคยดันรุ่นเก่าให้คิดหนัก ตอนนี้ดันรุ่นใหม่ให้ทำผิด

ซ้าย skill ไม่กี่ตัว ตัวละหนึ่งโหมด คำอธิบายสั้นพอให้ทุกตัวอยู่ในงบที่โมเดลเห็น ไม่มีคำกล่อมที่เขียนไว้ดันโมเดลรุ่นก่อน ขวา skill 146 ตัวที่สะสมมาเจ็ดเดือน คำอธิบายรวม 83,616 ตัวอักษร โมเดลเห็นราว 18,000 ที่เหลือเห็นแค่ชื่อ มีชุดที่ซ้ำกัน และมีคำว่า Ultrathink กับ MANDATORY ห้อยอยู่ คุณจะสั่งงานสามงาน แล้วดูว่าฝั่งไหนโมเดลมองไม่เห็นของที่คุณเขียนไว้

กล่องบนกระดานนี้ · 4
ส่วนทำอะไรทำไม
skill วางแผนหนึ่ง skill หนึ่งโหมดอยากให้รีวิวเข้มขึ้น ไม่ต้องแตะไฟล์ที่คุมการวางแผน
skill ตรวจก่อนบอกว่าเสร็จเขียนเองจากความพังของตัวเองข้ามขั้นนี้แล้วเคยพังจริง เลยถูกเรียกใช้จริง
skill แก้ crontab อย่างปลอดภัยskill ใหม่ คำอธิบายสั้นซ้ายอยู่ในงบตั้งแต่วันแรก ขวาต่อท้ายแถว เห็นแค่ชื่อ
skill อีก 120 ตัวที่ไม่เคยถูกเรียกโหลดมาเก็บไว้กินงบคำอธิบาย โดยไม่เคยถูกใช้สักครั้ง
3
Skills the model can see · skill ที่โมเดลมองไม่เห็นคุณจะสั่ง AI ว่าอะไร
3
Skills the model can see · skill ที่โมเดลมองไม่เห็น
ตอนที่ 3 · สถานการณ์

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

เพิ่ม skill อีกตัว แต่โมเดลไม่เคยเห็นมัน เพราะคำอธิบายของ 146 skill เกินงบที่โมเดลได้อ่าน

skill น้อย ทุกตัวอยู่ในงบ
146 skill โมเดลเห็นแค่บางส่วน

แตะกล่องเพื่อหาไฟล์บนกระดาน

skill น้อย ทุกตัวอยู่ในงบ
146 skill โมเดลเห็นแค่บางส่วน
skill น้อย ทุกตัวอยู่ในงบ
อยู่ในงบ · โมเดลเห็นคำอธิบาย
skill วางแผนหนึ่ง skill หนึ่งโหมด
วางแผนก่อนลงมือ
skill รีวิวหนึ่ง skill หนึ่งโหมด
รีวิว diff ก่อน merge
skill ตรวจก่อนบอกว่าเสร็จเขียนเองจากความพัง
รัน verify ก่อนบอกว่าเสร็จ
เกินงบ · โมเดลเห็นแค่ชื่อ
ไม่มี · ทุกตัวอยู่ในงบ
146 skill โมเดลเห็นแค่บางส่วน
อยู่ในงบ · โมเดลเห็นคำอธิบาย
skill รีวิวเคยถูกเรียกได้ขึ้นก่อน
รีวิว diff ก่อน mergeห้อยท้ายด้วย Ultrathink
skill งานออกแบบประโยคเดียวกันก๊อปไว้ 14 ตัว
งานออกแบบหน้าจอMANDATORY · you MUST สัมภาษณ์ก่อน
skill ตรวจก่อนบอกว่าเสร็จชุดที่ก๊อปมาเองเดือนมีนาตัวที่ถูกเรียกจริง
รัน verify ก่อนบอกว่าเสร็จ
เกินงบ · โมเดลเห็นแค่ชื่อ
skill ตรวจก่อนบอกว่าเสร็จ · ชุดซ้ำชุดที่ระบบ sync มาให้
ซ้ำกับตัวเดิม · ไม่เคยถูกเรียก
skill อีก 120 ตัวที่ไม่เคยถูกเรียกเรียงท้ายแถวไม่รู้ว่าใช้ทำอะไร
ไม่เคยถูกเรียกใช้จริงสักครั้ง
ตัดออกจากเครื่อง
ยังไม่ได้ตัดอะไร · ทุกตัวอยู่ในเครื่อง
ขั้นสุดท้าย · ลากขั้นตอนมาแยกเป็นไฟล์ใหม่ตรงนี้+ ไฟล์ใหม่ลาก skill ที่ไม่เคยใช้ ชุดซ้ำ และคำกล่อมไปตัดออก ย้าย skill ใหม่เข้างบ

กล่อง = ไฟล์หนึ่งไฟล์ ที่ AI ต้องเปิดเมื่อแก้เรื่องในนั้นขั้นตอนชิ้น = สิ่งที่โค้ดทำ หนึ่งขั้น= ชิ้นที่ลากไปไฟล์ใหม่ได้ ในขั้นสุดท้าย

เขียว: ที่ AI เพิ่มประ: ไฟล์ที่ต้องอ่านใหม่แดง: โมเดลมองไม่เห็นหรือทำผิด

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

0 / 3
ก่อนเริ่มก่อนสั่งอะไร

ทั้งสองฝั่งมี skill รีวิว และตรวจก่อนบอกว่าเสร็จ ซ้ายมีอีกแค่ skill วางแผน คำอธิบายสั้น ทุกตัวอยู่ในงบที่โมเดลเห็น ขวามีทุกอย่างที่เคยโหลดมา มีคำกล่อมของรุ่นก่อน มีชุดที่ซ้ำกัน และอีก 120 ตัวที่ไม่เคยถูกเรียก ส่วนที่เกินงบ โมเดลเห็นแค่ชื่อ

ขั้นที่ 1เพิ่ม skill แก้ crontab อย่างปลอดภัย

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

ขั้นที่ 2เปลี่ยนเป็นโมเดลรุ่นใหม่

ซ้าย ไม่มีคำกล่อมในไฟล์ไหน โมเดลใหม่อ่านแล้วทำเหมือนเดิม ไม่มีไฟล์ไหนต้องแก้ ขวา Ultrathink ห้อยท้าย skill อยู่ห้าตัว ประโยค MANDATORY ก๊อปไว้ใน skill ออกแบบสิบสี่ตัว รุ่นใหม่อ่านตามตัวอักษร ของที่เคยดันให้คิดหนัก ตอนนี้ดันให้ทำผิด

ขั้นสุดท้ายตรวจ setup ทั้งเครื่อง

ซ้าย AI อ่านครบสี่ skill ไม่มีอะไรให้ตัด ขวา AI อ่านทุก skill เจอ 162 ข้อ พอให้อีกชุดเถียงทุกข้อ รอด 81 ตกไป 81 และเจอ skill ตรวจก่อนบอกว่าเสร็จสองชุด ตัวที่ถูกเรียกจริงคือชุดเก่าที่ก๊อปมาเอง

หลักการ ในภาษาของโค้ด

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

ถามก่อนรับ diffskill ที่ diff นี้เพิ่ม โมเดลจะเห็นคำอธิบายของมันจริงไหม หรือไปต่อท้ายแถวที่เกินงบ

Claude Code skills listing, measured on the author's machine: descriptions share one listing budget, skills invoked before are listed first and the rest alphabetically; GStack: one skill, one mode; Pocock SCOPE.md: a skill needs an observed failure
4
ตอนที่ 4 · cron ที่เขียนแล้วไม่มีใครอ่านcron เขียนสรุปให้ทุกวัน แต่ไม่มี session ไหนเปิดอ่าน เช้ามา AI ก็ยังไม่รู้ว่าวันนี้ต้องทำอะไร
เรื่องย่อ

เปิด Claude Code ตอนเช้า ถามว่าวันนี้ต้องทำอะไร มันตอบว่าไม่มีข้อมูลงานของคุณ คุณเลยตั้ง cron ให้รวมสรุปไว้ในไฟล์เดียว refresh ทุก 4 ชั่วโมง

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

ซ้าย pipeline มีสองฝั่ง cron เขียนสรุปลงไฟล์เดียว และ CLAUDE.md สั่งให้ session อ่านไฟล์นั้นก่อนตอบ ทั้งสองฝั่งตรวจแล้วว่าทำงานจริง ขวา cron เขียนทุกวันเหมือนกัน แต่ไม่มีใครต่อสายฝั่งอ่าน คุณจะเพิ่มสรุปตลาดตอนเช้า เจอสรุปที่ค้าง แล้วเพิ่ม cron อีกตัว ดูว่าฝั่งไหนของที่เขียนไว้ถูกอ่านจริง

กล่องบนกระดานนี้ · 4
ส่วนทำอะไรทำไม
cron เขียนสรุปประจำวันรวมต้นทางเป็นไฟล์เดียว ทุก 4 ชั่วโมงAI ไม่ต้องไปดึงของเองตอนเริ่มงาน
ไฟล์สรุป · ราว 200 บรรทัดวันที่ งานที่ติด สามเรื่องของวันนี้อ่านไฟล์เดียวแทนต้นทาง 10 ไฟล์ ราว 2,000 บรรทัด
CLAUDE.mdสั่งให้ session อ่านสรุปก่อนตอบคือฝั่งอ่าน ไม่มีบรรทัดนี้ ไฟล์สรุปก็ไม่มีใครเปิด
cron สรุปตลาดตอนเช้าดึงข้อมูลลงไฟล์ก่อน แล้วค่อยเขียนสรุปต้องต่อสายฝั่งอ่านไปพร้อมกัน ไม่งั้นเป็นอีกไฟล์ที่ไม่มีใครเปิด
4
Pipelines with a read side · cron ที่เขียนแล้วไม่มีใครอ่านคุณจะสั่ง AI ว่าอะไร
4
Pipelines with a read side · cron ที่เขียนแล้วไม่มีใครอ่าน
ตอนที่ 4 · สถานการณ์

เปิด Claude Code ตอนเช้า ถามว่าวันนี้ต้องทำอะไร มันตอบว่าไม่มีข้อมูลงานของคุณ คุณเลยตั้ง cron ให้รวมสรุปไว้ในไฟล์เดียว refresh ทุก 4 ชั่วโมง

cron เขียนสรุปให้ทุกวัน แต่ไม่มี session ไหนเปิดอ่าน เช้ามา AI ก็ยังไม่รู้ว่าวันนี้ต้องทำอะไร

เขียนแล้วมีคนอ่าน ตรวจทั้งสองฝั่ง
cron เขียนทุกวัน ไม่มีใครอ่าน

แตะกล่องเพื่อหาไฟล์บนกระดาน

เขียนแล้วมีคนอ่าน ตรวจทั้งสองฝั่ง
cron เขียนทุกวัน ไม่มีใครอ่าน
เขียนแล้วมีคนอ่าน ตรวจทั้งสองฝั่ง
ฝั่งเขียน · cron รันเอง
ต้นทาง 10 ไฟล์ · ราว 2,000 บรรทัดต้นทางที่ cron รวม
standup ล่าสุดการตัดสินใจที่ยังใช้ไฟล์ที่เปลี่ยนใน 24 ชั่วโมง
cron เขียนสรุปประจำวันรันทุก 4 ชั่วโมงตรวจแล้วว่าเขียนจริง
รวมต้นทางเป็นไฟล์เดียว
ไฟล์สรุป · ราว 200 บรรทัดไฟล์เดียวที่ AI อ่านตอนเริ่ม
วันที่ของสรุปงานที่ติดอยู่สามเรื่องที่ต้องทำวันนี้
ฝั่งอ่าน · session ตอนเปิด
CLAUDE.mdตรวจแล้วว่าอ่านเจอ
อ่านไฟล์สรุปก่อนตอบ
cron เขียนทุกวัน ไม่มีใครอ่าน
ฝั่งเขียน · cron รันเอง
ต้นทาง 10 ไฟล์ · ราว 2,000 บรรทัดต้นทางที่ cron รวม
standup ล่าสุดการตัดสินใจที่ยังใช้ไฟล์ที่เปลี่ยนใน 24 ชั่วโมง
cron เขียนสรุปประจำวันรันทุก 4 ชั่วโมงความตั้งใจว่าจะมีคนอ่าน อยู่ในนี้อย่างเดียว
รวมต้นทางเป็นไฟล์เดียวอ่านไฟล์สรุปก่อนตอบ
ไฟล์สรุป · ราว 200 บรรทัดเขียนทุกวันไม่มีใครเปิด
วันที่ของสรุปงานที่ติดอยู่สามเรื่องที่ต้องทำวันนี้
ฝั่งอ่าน · session ตอนเปิด
ไม่มีฝั่งอ่าน · session เปิดมาเริ่มจากศูนย์
ขั้นสุดท้าย · ลากขั้นตอนมาแยกเป็นไฟล์ใหม่ตรงนี้+ ไฟล์ใหม่ลากขั้นอ่านออกจาก cron ไปไว้ฝั่งอ่าน ใน CLAUDE.md

กล่อง = ไฟล์หนึ่งไฟล์ ที่ AI ต้องเปิดเมื่อแก้เรื่องในนั้นขั้นตอนชิ้น = สิ่งที่โค้ดทำ หนึ่งขั้น= ชิ้นที่ลากไปไฟล์ใหม่ได้ ในขั้นสุดท้าย

เขียว: ที่ AI เพิ่มประ: ไฟล์ที่ต้องเปิดอ่านแดง: เขียนแล้วไม่มีใครอ่าน หรือค้างโดยไม่มีใครรู้

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

0 / 3
ก่อนเริ่มก่อนสั่งอะไร

ทั้งสองฝั่งมี cron ที่รวมต้นทางเป็นไฟล์สรุปทุก 4 ชั่วโมง ซ้ายมีฝั่งอ่านด้วย CLAUDE.md สั่งให้ session อ่านไฟล์สรุปก่อนตอบ ขวาความตั้งใจว่าจะมีคนอ่านอยู่ใน cron อย่างเดียว ไม่มีบรรทัดไหนในฝั่งที่ session โหลด

ขั้นที่ 1เพิ่มสรุปตลาดตอนเช้า

ซ้าย AI เพิ่ม cron ที่ดึงข้อมูลลงไฟล์แล้วเขียนสรุป และเพิ่มบรรทัดใน CLAUDE.md ให้ session อ่านสรุปนั้นตอนเปิด แตะ 2 ไฟล์ ตรวจทั้งฝั่งเขียนและฝั่งอ่าน ขวา AI เพิ่มแค่ cron มันเขียนสรุปทุกเช้า แต่ไม่มีใครอ่าน ได้อีกไฟล์ที่ไม่มีใครเปิด

ขั้นที่ 2ถามว่าวันนี้ต้องทำอะไร วันที่ไฟล์สรุปค้าง

ซ้าย session อ่านไฟล์สรุปก่อนตอบ เห็นวันที่เก่ากว่ารอบ 4 ชั่วโมง เลยบอกคุณก่อนว่าสรุปค้าง ไม่ตอบจากของเก่า ขวา ไม่มี session ไหนเปิดไฟล์นั้น สรุปค้างโดยไม่มีใครรู้ AI ตอบว่าไม่มีข้อมูลงานของคุณ เหมือนก่อนมี cron

ขั้นสุดท้ายเพิ่ม cron สรุปงาน ที่ใช้ข้อมูลของ cron แรก

ซ้าย cron ตัวใหม่อ่านไฟล์สรุปไฟล์เดียว ราว 200 บรรทัด ขวา ไม่มีอะไรบอกว่าไฟล์สรุปมีอยู่ cron ตัวใหม่เลยดึงต้นทางทั้ง 10 ไฟล์ใหม่เอง ราว 2,000 บรรทัด ช้ากว่า แพงกว่า และพังบ่อยกว่า

หลักการ ในภาษาของโค้ด

pipeline ไหนมีทั้งฝั่งเขียนและฝั่งอ่าน ตรวจทั้งสองข้าง ไม่ใช่แค่ข้างที่ผลิตงาน cron ที่เขียนแล้วไม่มีใครอ่าน คือไฟล์ที่ทิ้งไว้เฉย ๆ

ถามก่อนรับ diffไฟล์ที่ diff นี้ให้ cron เขียน ใครเป็นคนอ่าน และตรวจแล้วหรือยังว่าอ่านเจอจริง

The page's own pipeline: a cron refreshes one snapshot every 4 hours and the session reads it at start instead of fetching (hot cache); the MEMORY.md entry "hot cache was a dead drop": verify both the write and the read side
ครบสี่กระดานแล้ว? ทายก่อนเปิด session ถัดไปแบบทดสอบแปดข้อ ทุกข้อคือ setup ที่ AI กำลังจะอ่าน
ทำแบบทดสอบ →

สี่ข้อคือคำถามเดียว: AI อ่านมันเมื่อไร

ข้อห้ามที่พลาดไม่ได้เป็น hook ที่รันทุกครั้ง กฎเฉพาะงานโหลดเมื่อแตะไฟล์ของมัน ที่เหลือใน CLAUDE.md สั้นพอให้ทุกบรรทัดถูกอ่าน (1) บทเรียน สถานะงาน และสิ่งที่ตกลงไว้อยู่ในไฟล์ ไม่ใช่ในแชทที่หายเมื่อปิด (2) skill มีเท่าที่ถูกเรียกจริง คำอธิบายอยู่ในงบที่โมเดลเห็น ไม่มีคำกล่อมที่เขียนไว้ให้รุ่นเก่า (3) และทุกไฟล์ที่ cron เขียน มี session ที่อ่านมัน (4) โมเดลเปลี่ยนรุ่นทุกไม่กี่เดือน ของรอบตัวมันต้องตรวจตามไปด้วย

สี่กระดานบน setup ของ Claude Code: กฎ · ความจำข้าม session · skill · cron กับฝั่งอ่าน · ตัวเลขทุกตัวมาจากโพสต์ของเพจคีย์บนกระดาน: Enter / คลิก = ขั้นถัดไป · ⌫ = รีเซ็ต