sfs - ระบบไฟล์ "สมองร่วม" ที่ AI agent หลายตัวใช้ร่วมกัน
(github.com/runbear-io)สวัสดีครับ/ค่ะ พอได้รัน AI agent อย่าง Claude Code, Codex บนอุปกรณ์/เซสชันหลายแห่ง ก็รู้สึกอึดอัดที่แต่ละ agent สะสมคอนเท็กซ์แยกกัน และสิ่งที่ agent ตัวหนึ่งสรุปเก็บไว้เมื่อวาน วันนี้ agent บนอุปกรณ์อื่นกลับไม่รู้ จึงทำสิ่งนี้ขึ้นมา
แนวคิดหลักคือ "สมองร่วม (shared brain) ที่หลาย agent ใช้ร่วมกัน"
เมื่อหลาย agent แชร์โฟลเดอร์เดียวกัน (เช่น ./shared) วิกิ, ไฟล์ความทรงจำ, เอกสารแผนงาน และอาร์ติแฟกต์ของงานทั้งหมดจะถูกรวมอยู่ในสมองร่วมเดียวกัน Agent ตัวหนึ่งที่เขียนบันทึกการตัดสินใจไว้ Agent บนอุปกรณ์/เซสชันอื่นก็สามารถอ่านต่อได้ทันที และยังติดตามได้ว่าใคร เปลี่ยนอะไร จากอุปกรณ์ไหน เมื่อไร
กรณีการใช้งาน:
- คอนเท็กซ์เกี่ยวกับปัญหาลูกค้าที่ Support agent และ Engineering agent ใช้ร่วมกัน
- แชร์การเปลี่ยนแปลงไฟล์/โฟลเดอร์ระหว่าง Mac mini และ Macbook
- วิกิของบริษัท (company brain) ที่สมาชิกทีมแต่ละคนค่อย ๆ สร้างร่วมกันจาก agent ของตัวเอง
sfs สามารถเมานต์โฟลเดอร์ใดก็ได้ให้เป็นซิงก์วอลุ่ม:
$ sfs mnt ./shared --remote s3://my-bucket/workspace
ไฟล์ในโฟลเดอร์ที่เมานต์แล้วเป็นไฟล์จริงบนดิสก์ตามปกติ ดังนั้นทุก editor/tool/agent จึงใช้งานได้ทันทีโดยไม่ต้องมีการอินทิเกรตเพิ่มเติม หากเมานต์ remote เดียวกันบนอุปกรณ์อื่น ไฟล์ชุดเดียวกันก็จะตามไปด้วย
ตอนแรกก็คิดว่าใช้ Google Drive ธรรมดาก็น่าจะพอ แต่พอลองใช้เป็น workspace สำหรับ agent จริง ๆ ก็พบปัญหาดังนี้:
- Google Drive มักออฟโหลดไฟล์โลคัลออกเป็นระยะเพื่อประหยัดดิสก์ ทำให้บ่อยครั้งที่ agent ต้องดาวน์โหลดกลับจากคลาวด์ใหม่ทุกครั้งที่จะอ่านไฟล์
- เป็นการเมานต์แบบสตรีมมิง จึงเกิดกรณีที่ Claude ถูกบล็อกระหว่างโหลดไฟล์บ่อยครั้ง
- ตั้งแต่ต้นก็ไม่ได้เป็นเครื่องมือที่ออกแบบมาสำหรับเวิร์กโฟลว์ของ AI agent (ตั้งสมมติฐานว่าคนจะคลิกใช้งานผ่าน GUI)
sfs เก็บทุกไฟล์ไว้เป็นไฟล์จริงบนดิสก์โลคัลเสมอ (ไม่มีการออฟโหลด) และซิงก์อยู่เบื้องหลัง ทำให้ agent อ่านและเขียนได้ทันทีเหมือนไฟล์ทั่วไป
คุณสมบัติหลัก:
- การเชื่อมต่อกับคลาวด์สตอเรจ: S3, GCS
- การติดตามการเปลี่ยนแปลง: ใช้
sfs logเพื่อตรวจสอบว่าใคร/เมื่อไร/จากอุปกรณ์ไหน เปลี่ยนไฟล์อะไร และเพราะใช้การจัดเก็บแบบอ้างอิงตามคอนเทนต์ เนื้อหาของไฟล์ที่ถูกเขียนทับ/ลบก็ยังคงถูกเก็บไว้ - ออฟไลน์ก่อน: ใช้โฟลเดอร์ได้เต็มรูปแบบแม้ไม่มีเครือข่าย และจะ push อัตโนมัติเมื่อกลับมาเชื่อมต่อ
- ปลอดภัยเมื่อมีคอนฟลิกต์: การแก้ไขพร้อมกันจะถูก replay แบบกำหนดผลแน่นอนตามลำดับ (lamport, time, device)
- macOS, Linux
การติดตั้ง:
brew install runbear-io/tap/sfs
ตอนนี้ยังเป็นเวอร์ชันช่วงต้น ยินดีรับ feedback/issue ครับ/ค่ะ ขอบคุณครับ/ค่ะ!
ยังไม่มีความคิดเห็น