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

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- การรันเอเจนต์เขียนโค้ดหลายเซสชันพร้อมกันทำให้เกิดปัญหาความขัดแย้งของไฟล์และการทับซ้อนของงาน
- นักพัฒนาต้องกลายเป็นผู้ส่งข้อความเอง คอยสลับหน้าจอเทอร์มินัลและคัดลอกรหัสคอมมิต
- ฟีเจอร์การส่งข้อความระหว่างเซสชันและ Socket ของ Claude Code ช่วยสร้างรากฐานสำหรับการจัดการที่ดีขึ้น
- โซลูชันที่แท้จริงคือแผงควบคุมในเครื่องที่บังคับให้แต่ละเซสชันประกาศเป้าหมาย ไฟล์ และผลลัพธ์ให้ชัดเจน
การเปิดใช้งานเซสชันเอเจนต์เขียนโค้ดสองหรือสามตัวพร้อมกันนั้นไม่ใช่เรื่องยาก แต่การจะรู้ว่างานของพวกมันปลอดภัยพอที่จะนำมารวมกันหรือไม่นั้นเป็นอีกเรื่องหนึ่ง เซสชันหนึ่งอาจกำลังปรับเปลี่ยน API ในขณะที่อีกเซสชันกำลังเขียนทดสอบรีเกรสชันกับรูปแบบเดิม ส่วนเซสชันที่สามกำลังตรวจสอบปัญหาบนระบบจริงและแก้ไขไฟล์กำหนดค่าเดียวกัน แม้ระบบ Git worktrees จะช่วยป้องกันการชนกันบนระบบไฟล์ได้ทันที แต่ก็ไม่สามารถอธิบายความเหนี่ยวรั้งของงาน การถ่ายทอดสมมติฐาน หรือเตือนได้ว่าเอเจนต์สองตัวกำลังแก้ไขปัญหาในเวอร์ชันที่ไม่เข้ากัน
ผลลัพธ์คือตัวนักพัฒนาเองต้องทำหน้าที่เป็นบัสรับส่งข้อความ คอยตรวจเช็กหน้าจอเทอร์มินัล คัดลอกรหัสคอมมิต ทวนบริบทซ้ำๆ และตัดสินใจว่าเซสชันไหนควรรอ ยิ่งเอเจนต์มีความสามารถสูงขึ้นเท่าไหร่ หน้าจอเทอร์มินัลที่เรียงรายกันก็ยิ่งกลายเป็นอินเทอร์เฟซการประสานงานที่หมดประโยชน์ลงเท่านั้น
ปัจจุบัน Claude Code รองรับการส่งข้อความระหว่างเซสชันบนเครื่องเดียวกันแล้ว เอกสารระบุถึงการค้นหาเซสชัน ข้อความแบบข้อความธรรมดา และซ็อกเก็ตข้อความภายในเครื่อง นอกจากนี้มุมมองเอเจนต์ยังแสดงสถานะเซสชันเบื้องหลัง worktrees สถานะพูลรีเควสต์ และรายการรูปแบบ JSON ที่เหมาะสำหรับสคริปต์แยกต่างหาก พร้อมทั้งมี Hooks คอยสังเกตการณ์อินพุตของเครื่องมือและบล็อกการเรียกใช้ก่อนที่จะทำงานจริง
การที่เครื่องมือระดับแพลตฟอร์มเริ่มรองรับการสื่อสารระหว่างเซสชันสะท้อนให้เห็นว่า อุปสรรคสำคัญของการพัฒนาซอฟต์แวร์ด้วย AI ได้ขยับจากการเพิ่มประสิทธิภาพของตัวโมเดล ไปสู่การบริหารจัดการเวิร์กโฟลว์เมื่อมีเอเจนต์หลายตัวทำงานพร้อมกัน แผงควบคุมหรือตัวกลางที่มีโครงสร้างชัดเจนจึงกลายเป็นหัวใจสำคัญในการลดภาระทางความคิดของมนุษย์
อย่างไรก็ตาม สิ่งนี้ไม่ได้พิสูจน์ความต้องการของผลิตภัณฑ์ใหม่ แต่เป็นจังหวะการนำไปใช้งานที่เป็นรูปธรรม นั่นคือระบบพื้นฐานสำหรับการส่งมอบงานและการมองเห็นมีอยู่แล้ว ในขณะที่ความเป็นเจ้าของความพึ่งพิงและการเจรจาข้อขัดแย้งยังคงเป็นปัญหาในส่วนของกระบวนการทำงาน ผลิตภัณฑ์ที่มีประโยชน์จึงไม่ใช่หน้าต่างแชทอันใหม่ แต่เป็นแผงควบคุมขนาดเล็กในเครื่องที่ทำให้แต่ละเซสชันต้องประกาศสิ่งสำคัญ 4 อย่าง ได้แก่ เป้าหมาย, worktree, ไฟล์ที่คาดว่าจะแตะต้อง และผลลัพธ์ที่เซสชันอื่นกำลังรออยู่

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
เมื่อเซสชัน API ทำงานเสร็จ เซสชันทดสอบควรได้รับชุดส่งมอบงานแบบกระชับซึ่งประกอบด้วยคอมมิต, สัญญาที่เปลี่ยนแปลงไป, เป้าหมายการตรวจสอบ และสมมติฐานที่ยังไม่คลี่คลาย หากการทดสอบยังไม่สามารถดำเนินต่อไปได้ ความพึ่งพิงนั้นควรแสดงให้เห็นเป็นเส้นที่ถูกบล็อกแทนที่จะซ่อนอยู่ในเนื้อหาข้อความ งานที่เสร็จแล้วควรตกลงไปในคิวตรวจสอบพร้อมผลลัพธ์การทดสอบและสรุปความแตกต่าง ไม่ใช่หายลับไปกับการเลื่อนหน้าจอเทอร์มินัล
แนวทางการเริ่มต้นใช้งานสามารถทำได้โดยใช้ผู้พัฒนาหนึ่งคน หนึ่งที่เก็บโค้ด Claude Code และ Git worktrees โดย Daemon บนเครื่องสามารถอ่านรายการเซสชัน ลงทะเบียนบทบาทผ่าน hooks เมื่อเริ่มเซสชัน และรวบรวมคอมมิตพร้อมผลลัพธ์การทดสอบเมื่อเสร็จสิ้นงาน ข้อความข้ามเซสชันจะบรรจุเฉพาะข้อมูลการส่งมอบงานที่มีโครงสร้าง ได้แก่ ผู้ผลิต, ผู้บริโภค, ความพึ่งพิง, คอมมิต, พฤติกรรมที่คาดหวัง และคำถามที่ค้างคา
ในส่วนของการป้องกันความขัดแย้ง ควรเริ่มต้นด้วยการเช่าไฟล์แบบแนะนำ (advisory file leases) ก่อนที่เครื่องมือแก้ไขจะทำงาน hook จะตรวจสอบว่าเซสชันที่ใช้งานอยู่ตัวอื่นได้ประกาศไฟล์เดียวกันไว้หรือไม่ หากใช่ ระบบจะส่งคืนเจ้าของ งาน และทางเลือกแนะนำ เช่น รอ เจรจาความเป็นเจ้าของ หรือทำงานกับไฟล์อื่น โดยไม่ควรพยายามรวมโค้ดอัตโนมัติหรือล็อกระดับฟังก์ชันในการปล่อยใช้งานเวอร์ชันแรก
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น