สารบัญคู่มือ · บทที่ 6 จาก 11
เขียนโจทย์ให้ agent
บทที่ 6 จาก 11 · อ่านราว 10 นาที · อัปเดต 9 ตุลาคม 2569 · ระดับเริ่มต้น
สรุปใน 3 บรรทัด
- agent ทำตามสิ่งที่เราเขียน ไม่ใช่สิ่งที่เราคิดไว้ในหัว ส่วนที่ไม่ได้เขียน มันจะเดาเอง
- โจทย์ที่ดีมี 4 ส่วน คือ เป้าหมาย บริบท ขอบเขต และเกณฑ์รับงาน
- เกณฑ์รับงานที่ตรวจได้จริง ทำให้เรารู้ว่างานเสร็จหรือยัง แม้ยังอ่านโค้ดไม่คล่อง
ควรอ่านก่อน
บทที่ 5: AI agent คืออะไรอ่านจบแล้วคุณจะ
- เขียนโจทย์ได้ครบ 4 ส่วน
- เปลี่ยนคำขอกว้าง ๆ ให้เป็นเกณฑ์ที่ตรวจได้
- รู้ว่าเมื่อไหร่ควรแบ่งงานให้เล็กลง
ทำไมโจทย์ถึงสำคัญ
ลองนึกถึงช่างที่ทำงานเร็วมากและฝีมือดีมาก แต่ไม่เคยเห็นบ้านของเรา ถ้าเราบอกแค่ว่า "ทำห้องครัวให้หน่อย" ช่างต้องเดาทุกอย่าง ตั้งแต่ขนาด สี ไปจนถึงงบประมาณ ผลงานอาจสวยมาก แต่ไม่ใช่ห้องครัวที่เราต้องการ
AI agent ก็เป็นแบบนั้น มันเขียนโค้ดได้เร็วกว่าคน แต่รู้เรื่องงานของเราเท่าที่เราบอกเท่านั้น ทุกช่องว่างในโจทย์คือจุดที่มันต้องเดา และการเดาผิดคือที่มาของงานที่ต้องแก้ซ้ำ
งานของ dev ยุคนี้จึงย้ายจาก "พิมพ์โค้ดทุกบรรทัดเอง" มาเป็น "อธิบายงานให้ชัด แล้วตรวจว่าได้ตามนั้นจริง" มากขึ้น การเขียนโจทย์จึงเป็นทักษะพื้นฐาน ไม่ใช่ทริกลัด
โจทย์ที่ดีมี 4 ส่วน
| ส่วน | ตอบคำถามว่า | ตัวอย่าง |
|---|---|---|
| เป้าหมาย | อยากได้อะไร และเอาไปใช้ทำอะไร | หน้าเว็บจดสิ่งที่ต้องทำ ไว้ใช้เองบนมือถือ |
| บริบท | ตอนนี้มีอะไรอยู่แล้ว ใช้เครื่องมืออะไร | ยังไม่มีโปรเจค ใช้ HTML, CSS และ JavaScript ไฟล์เดียว |
| ขอบเขต | อะไรที่ไม่ต้องทำ หรือห้ามแตะ | ยังไม่ต้องมีระบบล็อกอิน ห้ามใช้ไลบรารีจากภายนอก |
| เกณฑ์รับงาน | ตรวจยังไงว่างานเสร็จ | ปิดแล้วเปิดหน้าใหม่ รายการยังอยู่ |
มือใหม่มักลืม "ขอบเขต" กับ "เกณฑ์รับงาน" แต่สองส่วนนี้แหละที่ทำให้เราคุมงานได้ ขอบเขตกันไม่ให้ agent ทำเกินหรือแตะของที่ไม่ควรแตะ ส่วนเกณฑ์รับงานบอกเราว่าเมื่อไหร่ถึงเรียกว่าเสร็จ
ตัวอย่าง: จากคำขอกว้าง ๆ เป็นโจทย์ที่ตรวจได้
agent ทำออกมาได้แน่นอน แต่เราไม่รู้เลยว่ามันจะใช้อะไรสร้าง หน้าตาเป็นยังไง ข้อมูลจะหายตอนปิดหน้าไหม และที่สำคัญที่สุด เราไม่รู้ว่าจะตรวจยังไงว่ามัน "เสร็จ" แล้ว
เป้าหมาย: ทำหน้าเว็บจดสิ่งที่ต้องทำ (to-do list) ไว้ใช้เองบนมือถือ บริบท: ยังไม่มีโปรเจค ใช้ HTML, CSS และ JavaScript ในไฟล์เดียว ไม่ต้องมีเซิร์ฟเวอร์ ขอบเขต: - ทำแค่ เพิ่มรายการ ติ๊กว่าเสร็จ และลบรายการ - ยังไม่ต้องมีระบบล็อกอิน - ห้ามใช้ไลบรารีจากภายนอก เกณฑ์รับงาน: - พิมพ์ข้อความแล้วกด Enter รายการใหม่ขึ้นด้านล่าง และช่องพิมพ์ว่างลง - กดที่รายการแล้วมีเส้นขีดฆ่า กดอีกครั้งแล้วกลับเป็นปกติ - ปิดแล้วเปิดหน้าใหม่ รายการยังอยู่ครบ - บนจอกว้าง 390px ไม่มีแถบเลื่อนแนวนอน ก่อนเริ่มเขียน ให้อธิบายแผนสั้น ๆ และถามกลับถ้ามีอะไรไม่ชัด
ตรวจผลยังไง
สังเกตว่าทุกข้อตรวจได้โดยไม่ต้องอ่านโค้ดสักบรรทัด นี่คือเหตุผลที่เกณฑ์รับงานสำคัญมากสำหรับมือใหม่ เพราะมันเปลี่ยนคำถามว่า "โค้ดนี้ดีไหม" ที่เรายังตอบไม่ได้ ให้เป็น "ทำแบบนี้แล้วได้ผลแบบนี้ไหม" ที่ใครก็ตอบได้
เกณฑ์รับงานที่ดีหน้าตาเป็นยังไง
หลักง่าย ๆ คือ ถ้าให้คนอื่นอีกคนมาตรวจ ต้องได้คำตอบเดียวกับเรา คำที่แต่ละคนตีความไม่เหมือนกัน เช่น "ง่าย" "เร็ว" "สวย" ใช้เป็นเกณฑ์ไม่ได้
| ตรวจไม่ได้ | ตรวจได้ |
|---|---|
| ใช้งานง่าย | ปุ่มทุกปุ่มสูงอย่างน้อย 44 พิกเซล กดด้วยนิ้วโป้งได้ |
| โหลดเร็ว | เปิดหน้าแล้วเห็นรายการภายใน 1 วินาที |
| หน้าตาสวย | สีและตัวอักษรตรงกับภาพตัวอย่างที่แนบมา |
| ไม่มีบั๊ก | ลบรายการหนึ่งแล้ว รายการอื่นยังอยู่ครบ |
งานใหญ่ ให้แบ่งเป็นรอบ
ถ้าเขียนเกณฑ์รับงานแล้วยาวเกินราว 5–6 ข้อ หรืองานแตะหลายหน้าพร้อมกัน มักเป็นสัญญาณว่างานใหญ่เกินไปสำหรับรอบเดียว ให้แบ่งเป็นรอบเล็ก ๆ ที่แต่ละรอบตรวจได้ เช่น
- รอบที่ 1: เพิ่มรายการ และแสดงรายการ
- รอบที่ 2: ติ๊กว่าเสร็จ และลบรายการ
- รอบที่ 3: จำรายการไว้หลังปิดหน้า
แต่ละรอบเล็กพอให้ตรวจได้ในไม่กี่นาที ถ้ารอบไหนผิด ก็แก้หรือย้อนแค่รอบนั้น ไม่ต้องรื้อทั้งหมด
สิ่งที่ต้องบอกทุกครั้ง ให้เขียนไว้ในไฟล์เดียว
บางเรื่องต้องบอก agent ทุกครั้ง เช่น ให้ตอบเป็นภาษาไทย ห้ามแตะไฟล์ที่เก็บรหัสลับ หรือก่อนส่งงานต้องรันเทสต์ แทนที่จะพิมพ์ซ้ำทุกโจทย์ ให้เขียนไว้ในไฟล์บริบทของโปรเจค ซึ่งเครื่องมือหลายตัวอ่านให้เองตอนเริ่มงาน ชื่อไฟล์ขึ้นกับเครื่องมือที่ใช้ เช่น AGENTS.md หรือ CLAUDE.md
ข้อผิดพลาดที่พบบ่อย
- บอกวิธี แต่ไม่บอกเป้าหมาย เช่น "ใช้ React ทำปุ่ม" แต่ไม่บอกว่าปุ่มนี้มีไว้ทำอะไร agent จึงตัดสินใจเรื่องอื่นผิดทาง
- ไม่มีเกณฑ์รับงาน สุดท้ายรู้ไม่ได้ว่างานเสร็จหรือยัง
- รวมหลายเรื่องไว้ในโจทย์เดียว แก้บั๊ก เพิ่มฟีเจอร์ และเปลี่ยนสีในคราวเดียว ถ้าพังจะไม่รู้ว่าพังเพราะอะไร
- ใส่รหัสผ่านหรือ API key ลงในโจทย์ ห้ามเด็ดขาด ข้อความในโจทย์อาจถูกบันทึกเก็บไว้ ดู บทที่ 9: ความปลอดภัย
- เชื่อคำว่า "เสร็จแล้ว" ของ agent ตรวจตามเกณฑ์รับงานเองทุกครั้ง ดู บทที่ 7: ตรวจงานที่ agent ทำ
เช็กความเข้าใจ
1. ข้อไหนเป็นเกณฑ์รับงานที่ตรวจได้
2. ประโยค "ยังไม่ต้องมีระบบล็อกอิน" อยู่ในส่วนไหนของโจทย์