/grill-with-docs สกิลที่ให้ AI สัมภาษณ์เราแล้วจดภาษากลางของโปรเจกต์ลง context.md ให้เอง
/grill-with-docs คือสกิลบน Claude Code ที่ให้ AI สัมภาษณ์เราเรื่องฟีเจอร์ใหม่ แล้วจดคำศัพท์ที่ตกลงกันไว้เป็นเอกสารกลางของโปรเจกต์ไปด้วย ผลคือ AI จำภาษาของโค้ดเราได้ข้ามเซสชัน ไม่ต้องอธิบายคำเดิมซ้ำทุกครั้งที่เริ่มใหม่

/grill-with-docs คือสกิลบน Claude Code เครื่องมือเขียนโค้ดร่วมกับ AI ที่ทำสองอย่างพร้อมกันในรอบเดียว มันให้ AI สัมภาษณ์เราเรื่องฟีเจอร์ที่กำลังจะสร้าง แล้วค่อย ๆ จดคำศัพท์ที่ตกลงกันระหว่างทางไว้เป็นเอกสารกลางของโปรเจกต์ไปด้วย
ปัญหาใหญ่ของการเขียนโค้ดกับ AI หลายครั้งไม่ได้อยู่ที่ AI เขียนโค้ดไม่เป็น แต่อยู่ที่เรากับ AI ไม่เคยตกลงกันให้ชัดก่อนว่าคำแต่ละคำในโปรเจกต์หมายถึงอะไร พอนิยามในหัวของสองฝ่ายไม่ตรงกัน โค้ดที่ออกมาก็เลยเฉียดความต้องการแต่ไม่เคยตรงเป๊ะ สกิลนี้ออกแบบมาแก้ตรงจุดนั้นโดยตรง คือบังคับให้เรื่องภาษามาก่อนเรื่องโค้ด
จาก /grill-me ที่ให้ AI สัมภาษณ์เราก่อน
เบื้องหลังสกิลนี้คือ Matt Pocock ที่เล่าวิธีคิดและเดโมการใช้งานทั้งหมดไว้ในคลิปเดียว จุดเริ่มต้นของเขาคือ /grill-me สกิลต้นทางที่เขียนขึ้นจากข้อความแค่ประมาณสี่ประโยค หน้าที่ของมันเรียบง่ายมาก คือให้ AI สัมภาษณ์เราแบบไม่ยอมหยุด ไล่ถามทีละประเด็นจนกว่าทั้งสองฝ่ายจะเข้าใจตรงกันจริงๆ แทนที่จะรีบลงมือทำตามคำสั่งกว้างๆ ที่เราพิมพ์ไปครั้งเดียว
วิธีถามของมันคือค่อย ๆ แยกสิ่งที่จะออกแบบเป็นประเด็นย่อย ๆ แล้วไล่เคลียร์ทีละข้อ พอเจอจังหวะที่การตัดสินใจอันหนึ่งไปกระทบอีกอัน มันจะหยุดสะสางตรงนั้นให้จบก่อน ไม่ปล่อยให้ค้างคาไว้
สกิลเล็ก ๆ ตัวนี้กลับได้รับความนิยมมากเกินคาด เจ้าของบอกว่าได้ข้อความจากผู้ใช้ราววันละห้าข้อความที่เขียนมาบอกว่าชอบ และมันไม่ได้จำกัดอยู่แค่งานเขียนโค้ด มีคนเอา /grill-me ไปให้ AI สัมภาษณ์ตัวเองเรื่องความทรงจำเกี่ยวกับแม่ เพื่อรวบรวมข้อมูลไว้เขียนคำไว้อาลัย
แต่ /grill-me มีจุดอ่อนอยู่อย่างหนึ่ง ภาษากลางที่อุตส่าห์ตกลงกันในเซสชันหนึ่ง ไม่ได้บันทึกเก็บไว้ที่ไหนเลย พอเปิดเซสชันใหม่ในวันรุ่งขึ้น ก็ต้องมานั่งอธิบายคำเฉพาะของโปรเจกต์กันใหม่ตั้งแต่ต้นทุกครั้ง
ภาษากลางที่ DDD เรียกว่า ubiquitous language
ทางแก้จุดอ่อนนี้หยิบมาจากแนวคิดเก่าในวงการออกแบบซอฟต์แวร์ที่ชื่อ Domain-Driven Design (DDD) แนวคิดนั้นคือ ubiquitous language หรือภาษาชุดเดียวที่ใช้ร่วมกันทั้งในโค้ด ทีมพัฒนา และคนที่รู้ว่ากำลังสร้างอะไรอยู่แต่ไม่รู้ว่าต้องสร้างยังไง แนวคิดนี้มาจากหนังสือ DDD ของ Eric Evans ที่คนในวงการเรียกกันติดปากว่า the big blue book
ก่อนหน้านี้เจ้าของสกิลแยก /ubiquitous-language ไว้อีกตัว ใช้ระหว่างสัมภาษณ์เพื่อเก็บคำที่ตกลงกันไว้ในไฟล์ ubiquitous-language.md สุดท้ายเขารวมสองสกิลเข้าด้วยกัน กลายเป็น /grill-with-docs ที่ทั้งถามเก่งแบบ /grill-me และจดเก่งแบบ /ubiquitous-language อยู่ในตัวเดียว
context.md สมุดศัพท์ที่ AI อ่านก่อนเริ่มถาม

หัวใจของ /grill-with-docs คือไฟล์ชื่อ context.md มันคือเอกสารที่รวบรวมคำศัพท์และนิยามทั้งหมดของงานเอาไว้ วางอยู่ที่โฟลเดอร์หลักของโปรเจกต์ และถ้าเป็นโปรเจกต์ใหญ่ที่รวมหลายส่วนไว้ด้วยกันก็แยกไฟล์ตามแต่ละส่วน จุดที่ต่างจาก /grill-me อย่างชัดเจนคือ AI จะอ่าน context.md ตั้งแต่ต้นเซสชัน เท่ากับโหลดภาษากลางเข้าหัวก่อนจะเริ่มถามอะไรสักคำ
เพื่อให้ AI หาเอกสารพวกนี้เจอ เจ้าของสกิลเพิ่มบรรทัดในไฟล์ตั้งค่าของโปรเจกต์เพื่อบอกตำแหน่งของเอกสารของงานและ context.md จุดเล็ก ๆ นี้สำคัญกว่าที่คิด เพราะถ้า AI ไม่รู้ว่าสมุดศัพท์อยู่ตรงไหน มันก็กลับไปเดาความหมายของคำเองเหมือนเดิม
ในโปรเจกต์ใหญ่ๆ ที่หนึ่งงานมีหลายส่วนซึ่งแต่ละส่วนพูดกันคนละภาษา การแยก context.md ออกตามส่วนแบบนี้ช่วยไม่ให้คำที่สะกดเหมือนกันแต่คนละความหมายมาตีกันเอง
ดูตอนมันทำงานจริงกับฟีเจอร์ใหม่
ในคลิป โจทย์เดโมคือเพิ่มของใหม่ชื่อ pitch เข้าไปในแอปคอร์สวิดีโอที่มี courses, lessons, videos และ sections อยู่ก่อนแล้ว pitch ในที่นี้คือแพ็กเกจของวิดีโอ ทั้งชื่อเรื่อง คำอธิบาย และมุมที่จะเล่า โดยต้องคิดส่วนนี้ให้จบก่อนลงมือถ่ายจริง ตามหลักที่เรียกกันเล่น ๆ ว่า MrBeast axiom คือคิดเรื่องแพ็กเกจให้เสร็จก่อนค่อยคิดเรื่องเนื้อหา
แทนที่จะรีบสร้างที่เก็บข้อมูล pitch ขึ้นมาทันที AI กลับโฟกัสที่คำศัพท์ก่อน แล้วช่วยสะสางเรื่องที่คนมักมองข้ามจนได้ข้อสรุปชัดๆ ทีละข้อ:
- "standalone video" เคยนิยามไว้แล้วใน context.md ว่าคือวิดีโอที่ขายแยกเป็นรายตัว ไม่ได้ผูกกับบทเรียนไหน
- หนึ่ง pitch ผูกกับ standalone video ได้หลายตัว
- เจอจุดที่คำชนกัน คือคำเดียวแต่หมายถึงคนละอย่าง แล้วตัดสินใจให้ pitching เป็นแค่ข้อมูลกำกับบน standalone video ไม่แยกออกเป็นส่วนใหม่ในหน้าจอ
- สถานะของ pitch ทั้ง idle · scheduled · shipped ให้เป็นปุ่มสลับแบบกดเองไปก่อน ยังไม่ต้องทำให้เป็นอัตโนมัติ
- pitch หนึ่งอันยังไม่มีวิดีโอเลยสักตัวก็ได้ เพราะมันคือไอเดียที่ยังไม่ได้ลงมือทำ
- เวลาลบ จะไม่ลบทิ้งจริง แต่ย้ายไปเก็บในคลังเก่าแทน
พอตกลงกันครบ AI ก็อัปเดต context.md โดยเพิ่มคำใหม่เข้าไป ทั้ง pitch, pitch status, pitched standalone video และ unattached standalone video นี่คือส่วนที่ /grill-with-docs ทำได้มากกว่า /grill-me คือมันคอยตรวจว่าคำที่เราใช้ยังตรงกับสมุดศัพท์เดิมไหม ช่วยทำให้นิยามที่ยังกำกวมชัดเจนและเฉพาะเจาะจงขึ้น ชวนคุยถึงสถานการณ์จริงทีละฉากโดยเทียบกับโค้ดที่มีอยู่ และอัปเดต context.md ไปเรื่อย ๆ ตลอดเซสชัน
ADR จดเหตุผลของการตัดสินใจที่ย้อนยาก

นอกจาก context.md แล้ว /grill-with-docs ยังสร้างบันทึกการตัดสินใจหรือ ADR (Architectural Decision Record) ให้ด้วย มันคือไฟล์ข้อความธรรมดาที่จดเหตุผลเบื้องหลังการตัดสินใจสำคัญเอาไว้ ตามรูปแบบที่สกิลกำหนด
แต่ไม่ใช่ทุกการตัดสินใจจะได้บันทึก สกิลจะสร้างให้เฉพาะเรื่องที่เข้าเกณฑ์ครบสามข้อพร้อมกัน คือหนึ่ง ย้อนกลับยาก สอง ถ้าไม่มีบริบทกำกับแล้วจะงงว่าทำไมถึงเลือกแบบนี้ และสาม เป็นผลของการชั่งน้ำหนักข้อดีข้อเสียที่ส่งผลกระทบในระยะยาว ส่วนเรื่องที่สลับไปมาได้ง่าย ๆ ไม่ต้องจดให้เปลืองที่
ทำไมการลงแรงตรงนี้ถึงคุ้ม
ประโยชน์ที่เห็นชัดที่สุดคือคำตอบของ AI สั้นและตรงขึ้น เพราะเมื่อทั้งสองฝ่ายใช้คำชุดเดียวกัน AI ก็ไม่ต้องเสียเวลาอธิบายซ้ำว่าสิ่งที่กำลังพูดถึงคืออะไร และความกระชับนี้ยังส่งผลไปถึงตอนที่ AI คิดกับตัวเองด้วย เพราะ AI ก็ใช้ภาษาในการคิด พอภาษาที่ใช้แม่นขึ้น กระบวนการคิดก็รัดกุมตามไปด้วย
ผลพลอยได้อีกอย่างคือโค้ดอ่านง่ายขึ้น เพราะตั้งชื่อตัวแปรและชื่อไฟล์ทั้งหมดโดยอิงจาก context.md เจ้าของสกิลถึงกับบอกว่าการทำจุดนี้ให้ถูกคือเรื่องสำคัญที่สุด ถ้าอยากให้เรากับ AI รู้สึกเหมือนอยู่ทีมเดียวกันจริงๆ
แต่ของแบบนี้มีกับดักของมันเช่นกัน เรื่องการตั้งชื่อและนิยามคำเถียงกันได้ไม่รู้จบ ถ้าหมกมุ่นกับการหาคำที่สมบูรณ์แบบก็จะเสียเวลาเปล่า เจ้าของสกิลเองเตือนไว้ว่ากำหนดภาษาให้ดีพอแล้วก็เริ่มลงมือทำจริงได้เลย เพราะยังไงก็กลับมาปรับแก้ทีหลังได้เสมอ
เริ่มใช้วันนี้ต้องทำอะไรบ้าง
การเลือกว่าจะใช้สกิลไหนนั้นง่ายมาก ถ้ามีโค้ดอยู่แล้วให้ใช้ /grill-with-docs เสมอ แม้แต่ตอนเพิ่งเริ่มโปรเจกต์ใหม่ แต่ถ้ายังไม่มีโค้ดเลย หรือเป็นงานนอกสายเขียนโปรแกรม อย่างการให้ AI สัมภาษณ์เก็บข้อมูลทั่วไป ก็ใช้ /grill-me ตัวเปล่าก็พอ
ลำดับเริ่มต้นจริงๆ มีอยู่ไม่กี่ขั้น:
- เปิดเซสชันด้วย /grill-with-docs แล้ววางข้อความที่อธิบายฟีเจอร์หรือไอเดียที่อยากทำ เช่น "อยากเพิ่มระบบ pitch สำหรับวิดีโอที่ขายแยกเป็นรายตัว"
- ปล่อยให้ AI อ่าน context.md เดิมก่อน (ถ้ามี) แล้วเริ่มยิงคำถาม มันจะโฟกัสที่เรื่องคำก่อนเรื่องโค้ด ทั้งคำที่ความหมายชนกัน ของอย่างหนึ่งผูกกับอีกอย่างได้กี่ตัว และความหมายของแต่ละสถานะ
- ตอบไปเรื่อยๆ จนรู้สึกว่าภาษานิ่งพอ ค่อยบอกให้มันบันทึกลง context.md ถ้ายังมีอะไรค้าง มันจะถามต่อจนเคลียร์
- ปล่อยให้มันสร้างหรืออัปเดตบันทึกการตัดสินใจสำหรับเรื่องก้อนใหญ่ที่ย้อนยาก
แค่นี้เซสชันถัดไปก็เริ่มจากจุดที่ AI รู้ภาษาของโปรเจกต์เราอยู่แล้ว ไม่ต้องเล่าใหม่ตั้งแต่ศูนย์
สิ่งที่เปลี่ยนไปจริง ๆ ไม่ใช่ AI ถามเก่งขึ้น แต่คือการที่บทสนทนาไม่ใช่ของใช้แล้วทิ้งอีกต่อไป ทุกครั้งที่เราเข้าใจตรงกันกับ AI มันจะกลายเป็นไฟล์ที่เซสชันหน้าหยิบไปต่อได้ทันที ยิ่งคุยกันไปเรื่อย ๆ โค้ดของเราก็ยิ่งมีภาษาเป็นของตัวเองที่ชัดขึ้น แทนที่จะต้องเริ่มนับหนึ่งกันใหม่ทุกเช้า
ที่มา: คลิป I stopped using /grill-me for coding. Here’s what I use instead: จากช่อง Matt Pocock



