𝗖𝗼𝗺𝗽𝗶𝗹𝗶𝗻𝗴 𝗧𝗵𝗲 𝗣𝗿𝗼𝗰𝗲𝘀𝘀, 𝗡𝗼𝘁 𝗧𝗵𝗲 𝗖𝗼𝗱𝗲

Coding agents คือเครื่องมือสร้างสรรค์งานความเร็วสูง พวกเขามีความคิดสร้างสรรค์แต่เชื่อถือไม่ได้เสมอไป และมักจะลืมกฎเกณฑ์เมื่อบริบท (context) เริ่มซับซ้อนหรือหนักเกินไป

เพื่อแก้ไขปัญหานี้ คุณไม่ควรใช้วิธีการ "สั่งสอน" agent แต่ควรสร้าง verifier ขึ้นมาแทน

Verifier คือการตรวจสอบแบบ deterministic ที่มีต้นทุนต่ำและทำหน้าที่อยู่หน้า generator หาก agent ทำผิดกฎ การตรวจสอบนี้จะหยุดการทำงานทันที นี่คือการแยกส่วนระหว่าง generator/verifier

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

ผมใช้การตรวจสอบเพื่อบังคับใช้ระเบียบวินัยในการทำงานอย่างมืออาชีพ:

• การตรวจสอบหนึ่งจะช่วยให้มั่นใจว่างานมีข้อกำหนด (specification) ที่เป็นลายลักษณ์อักษรก่อนเริ่มการลงมือทำ • อีกหนึ่งอย่างจะคอยแจ้งเตือน dependencies ที่ล้าสมัย • อย่างที่สามจะบังคับใช้ lifecycle ที่เข้มงวด: proposed, reviewed, แล้วจึง accepted

ในทีมที่เป็นมนุษย์ กฎเหล่านี้มักจะอยู่ในหัวของแต่ละคน การทำให้เป็นระบบอัตโนมัติ (mechanizing) มักจะมีต้นทุนที่สูงเกินไป แต่เมื่อเป็น agent ตัวเลขเหล่านี้จะเปลี่ยนไป

Agent ทำให้เกิดการออกนอกลู่นอกทาง (drift) ได้เร็วกว่ามนุษย์ แต่ในขณะเดียวกัน Agent ก็สามารถเขียนสคริปต์สำหรับบังคับใช้กฎได้ภายในไม่กี่วินาที ต้นทุนในการทำให้กระบวนการของคุณเป็นระบบอัตโนมัติจึงแทบจะเป็นศูนย์

เมื่อต้นทุนในการบังคับใช้กฎลดลง คุณก็สามารถทำให้ระเบียบวิธี (methodology) ของคุณเป็นทางการมากขึ้น คุณจะเปลี่ยนจากการใช้ "checklist" ไปสู่การใช้ "grammar" คำสั่งของคุณจะสั้นลงและตรงไปตรงมามากขึ้น เพราะมีด่านตรวจ (gates) คอยทำหน้าที่จดจำกฎเกณฑ์แทน

อย่างไรก็ตาม ควรระวังสามสิ่งนี้:

เลิกปฏิบัติกับไฟล์คำสั่งของคุณเหมือนเป็นคู่มือ แต่ให้มองว่ามันคือเจตจำนง (intent) ย้ายความถูกต้องออกจากเนื้อหาที่เป็นความเรียง (prose) ไปไว้ในการตรวจสอบ (checks) แทน

คอมไพล์กระบวนการของคุณ ไม่ใช่แค่โค้ดของคุณ

Source: https://dev.to/vasyltretiakov/compiling-the-process-not-the-code-a-machine-checked-workflow-for-coding-agents-3agg

Optional learning community: https://t.me/GyaanSetuAi