gc-tree ที่สร้างขึ้นเพื่อไม่ต้องอธิบายเรื่องเดิมให้ AI ซ้ำทุกครั้ง
(github.com/handsupmin)gc-tree เป็นเครื่องมือจัดการ global context สำหรับ AI coding agent
ทำไมถึงสร้างมันขึ้นมา
เวลาใช้งาน AI พอเปลี่ยนเซสชันก็ต้องอธิบายเรื่องเดิมซ้ำทุกครั้ง
- เราทำงานกันแบบไหน
- ทีมใช้คำศัพท์อะไร
- repo นี้กับ repo นั้นเชื่อมโยงกันอย่างไร
ถ้าเซสชันหายไปหรือ context ถูกบีบอัด
ก็ต้องใส่ข้อมูลพื้นหลังพวกนี้ใหม่ทุกครั้ง
แม้จะมีวิธีจัดการ context อย่าง CLAUDE.md หรือ AGENTS.md
แต่วิธีแบบนี้เหมาะกับการอธิบาย repo เดียวมากกว่า และยังมีข้อไม่สะดวกเมื่อต้องจัดการหลาย repo พร้อมกัน
- เก็บความสัมพันธ์ระหว่าง repo ได้ยาก
- ความรู้พื้นฐานที่ใช้ร่วมกันมักซ้ำซ้อนกระจัดกระจายไปหลายที่
- พอเซสชันปิดก็ต้องเริ่มอธิบายใหม่ตั้งแต่ต้น
ผมอยากลดงานที่ต้องทำซ้ำเหล่านี้
gc-tree ทำอะไรได้บ้าง
gc-tree เป็นเครื่องมือที่เก็บสไตล์การทำงานของผม คำศัพท์เฉพาะของทีม และความรู้พื้นฐานที่ใช้ร่วมกันไว้เป็น global context ภายนอก repo
และดึงมาอ้างอิงเฉพาะข้อมูลที่จำเป็นตอนทำงาน
พอตั้งค่า onboarding ไว้ครั้งหนึ่งแล้ว หลังจากนั้นก็ไม่ต้องอธิบายยาว ๆ ทุกครั้งว่าผมคือใครและทำงานแบบไหน
มันมีประโยชน์มากเป็นพิเศษเมื่อทำงานในสภาพแวดล้อมแบบ multi-repo
เพราะไม่ถูกจำกัดอยู่ใน repo ใด repo หนึ่ง และสามารถนำบริบทร่วมที่ใช้ในหลายโปรเจกต์กลับมาใช้ซ้ำได้
สิ่งที่ใส่ใจระหว่างการพัฒนา
- ลดการใช้โทเคนด้วยการดึงมาเฉพาะข้อมูลที่จำเป็น แทนการอ่าน context ทั้งหมดทุกครั้ง
- แยกจัดการหลาย workflow ได้เหมือนการแตก branch
- มองข้ามบริบทที่ไม่เกี่ยวข้องโดยอัตโนมัติ
- ถ้ามี onboarding data ที่เพื่อนร่วมทีมจัดไว้แล้ว ก็สามารถนำมาใช้เริ่มต้นได้ทันที
- ออกแบบให้เชื่อมต่อเข้ากับสภาพแวดล้อมการพัฒนาเดิมได้ โดยไม่ต้องเปลี่ยนแปลงมาก
สรุป
ถ้าคุณทำงานกับหลาย repo หรือรู้สึกยุ่งยากที่ต้องคอยอธิบายความรู้พื้นหลังที่มีแค่คุณรู้ให้ฟังซ้ำ ๆ ก็น่าจะลองใช้ดูได้ครับ
หากได้ลองใช้แล้วส่งฟีดแบ็กมาก็จะขอบคุณมากครับ
GitHub Link: https://github.com/handsupmin/gc-tree
ยังไม่มีความคิดเห็น