● กำลังพัฒนา
Multi-Agent Tmux Workflow
ระบบ orchestration ใช้ tmux แบ่ง session หลายหน้าต่าง ให้ AI หลายตัวทำงานพร้อมกันบน codebase เดียวโดยไม่ชนกัน
สารบัญ
แรงบันดาลใจ
เวลาพัฒนาโปรเจคคนเดียว งานส่วนใหญ่แบ่งได้เป็น 3-4 ประเภทที่ไม่เกี่ยวกันเลย เช่น UI, เนื้อหา, และ QA แต่ถ้าจะใช้ AI ช่วยแต่ละส่วน การสลับ context ใน session เดียวทำให้ประสิทธิภาพลดลงมาก จึงออกแบบระบบ tmux ที่แต่ละ session มีหน้าที่ชัดเจน และสามารถทำงานพร้อมกันได้โดยไม่ชนกัน
โครงสร้าง Session
| Session | Engine | บทบาท |
|---|---|---|
leader | claude | อ่านแผน, แตก task, มอบหมายงาน, commit, จด log |
frontend | codex | งาน UI/layout/component |
content | claude | งาน markdown, copywriting |
qa | codex | ตรวจสอบ build, ทดสอบ link, accessibility |
วิธีสื่อสารระหว่าง Session
ใช้ tmux send-keys ส่งข้อความได้โดยตรง:
# leader ส่งงานไป frontend
tmux send-keys -t frontend -l "[จาก leader] ทำ Card component ให้มี hover effect" Enter
# frontend รายงานกลับ leader
tmux send-keys -t leader -l "[frontend เสร็จ] แก้ src/components/Card.astro แล้ว" Enter
สำคัญ: ส่งข้อความ → รอ 1 วิ → กด Enter เพิ่ม 2-3 ครั้ง เพื่อป้องกัน input ค้าง
กฎการแบ่งไฟล์
- แต่ละ session ถือสิทธิ์ไฟล์ที่ตัวเองดูแลแบบ exclusive
leaderรันgit statusก่อนมอบหมายงานเสมอ เพื่อดูว่าไฟล์ไหนถูกแก้อยู่- ถ้าพบไฟล์ถูกแก้จาก session อื่น ต้องหยุดและรายงานทันที
src/layouts/ → leader / frontend
src/components/ → frontend
src/content/ → content
src/pages/ → แบ่งตามหน้า
Leader Log
leader จดทุก task ที่มอบหมายและผลลัพธ์ใน leader-log.md พร้อม timestamp:
## 2025-12-10T14:30+07:00 — Sprint 3
### มอบหมาย
- FRONT-03 → frontend: ทำ mobile nav hamburger
- CONT-02 → content: เขียน about.md ฉบับเต็ม
### ผลลัพธ์
- FRONT-03 ✅ — src/components/Header.astro แก้แล้ว
- CONT-02 ✅ — src/content/about.md สร้างแล้ว
สิ่งที่เรียนรู้
tmux send-keys -l(literal mode) จำเป็นมากเพื่อกันตัวอักษรพิเศษหลุด- ต้องมี protocol ชัดเจนว่า session ไหนเป็นคนรัน build ท้ายสุด (leader เสมอ)
- log file ช่วยมากในการ debug ว่าทำอะไรไปแล้ว เมื่อ context window หมด
Safety Rules ที่ขาดไม่ได้
# รัน git status ก่อนมอบหมายงานทุกครั้ง
git status
# ห้ามแก้ไฟล์เดียวกันพร้อมกันหลาย session
# ถ้าพบ conflict ต้องหยุดและรายงาน leader
- ห้าม commit secrets, token, API key หรือไฟล์ .env
- ทุก session ต้องรัน
npm run buildก่อนรายงาน - leader เป็นคนเดียวที่ commit และ push
ข้อดีเทียบกับ Single-Session
| Single Session | Multi-Agent Tmux | |
|---|---|---|
| งาน frontend + content | ทำทีละอย่าง | ทำพร้อมกันได้ |
| Context window | หมดเร็วจากหลายโดเมน | แต่ละ session โฟกัสโดเมนเดียว |
| Error isolation | ปนกัน | แยกชัดเจน ง่ายต่อการ debug |
| Speed | 1x | ~2.5x (ประมาณการ) |
สถานะปัจจุบัน
ใช้ระบบนี้พัฒนา Panupong WS ข้ามหลาย sprint (Sprint 1–27+) — ประหยัดเวลาได้มากเมื่อเทียบกับ single-session workflow โดยเฉพาะเมื่องานแต่ละประเภทต้องใช้ context ที่ต่างกันโดยสิ้นเชิง