เขียนโดย @41five
Box Mount เปิดให้ใช้งานในรูปแบบ private preview แล้ววันนี้
หากคุณกำลังสร้าง AI agent ที่ทำงานอยู่ใน sandbox การทำให้โมเดลทำงานที่เป็นประโยชน์ได้เป็นเพียงส่วนหนึ่งของงานเท่านั้น เพราะ agent ยังคงต้องการเอกสารสำหรับใช้ทำงาน เครื่องมือสำหรับประมวลผลเอกสารเหล่านั้น และพื้นที่สำหรับจัดเก็บไฟล์ที่สร้างขึ้น
ในตอนแรก การย้ายเอกสารเหล่านี้อาจดูเหมือนแค่การเรียก API ไม่กี่ครั้ง: ดาวน์โหลดข้อมูลนำเข้า รัน agent แล้วอัปโหลดผลลัพธ์ แต่เลเยอร์นี้จะซับซ้อนขึ้นทันทีเมื่อไฟล์สามารถเปลี่ยนแปลงระหว่างเวิร์กโฟลว์ เมื่อมีคนต้องตรวจสอบผลลัพธ์ หรือเมื่อมี agent หลายตัวใช้เนื้อหาร่วมกัน ซึ่งคุณจะต้องจัดการทั้งการซิงโครไนซ์ เวอร์ชัน ความขัดแย้งของข้อมูล และการลองใหม่ (retry)
Box Mount ถูกสร้างมาเพื่อรองรับส่วนนี้ของเวิร์กโฟลว์ โดยมอบพื้นที่ทำงาน Box ที่เข้ากันได้กับ POSIX ให้กับ sandbox ของ agent ทำให้โค้ดและเครื่องมือภายใน sandbox สามารถทำงานกับเนื้อหาใน Box ผ่าน path ของไฟล์ที่คุ้นเคยได้ Box Mount จะจัดการการเคลื่อนย้ายข้อมูลทั้งสองทิศทาง ในขณะที่ Box ยังคงทำหน้าที่เป็นระบบจัดเก็บข้อมูลหลักที่มีการควบคุมกำกับดูแล
เมื่อไหร่ที่ควรใช้ Box Mount
Box Mount ไม่ได้ถูกออกแบบมาเพื่อแทนที่การเรียก Box API หรือ MCP ทุกครั้ง หาก agent ของคุณต้องการแค่ดึงเอกสารมาใส่ใน prompt อินเทอร์เฟซเหล่านั้นก็อาจเพียงพอต่อความต้องการของคุณแล้ว
ความแตกต่างอยู่ที่ว่าเอกสารเหล่านั้นเป็นเพียงบริบท (context) หรือเป็นส่วนหนึ่งของสภาพแวดล้อมการทำงานของ agent
ลองนึกภาพ agent ที่ตรวจสอบโฟลเดอร์สัญญา รันเครื่องมือประมวลผลเอกสาร สร้างบันทึกการตรวจสอบ แล้วรอให้ทนายความเข้ามาแก้ไข หรือเวิร์กโฟลว์ RFP ที่ดึงข้อมูลจากคลังคำตอบที่ได้รับการอนุมัติ สร้างร่างเอกสาร แล้วส่งกลับไปให้ฝ่ายกฎหมายและความปลอดภัยตรวจสอบ
ในกรณีเหล่านี้ agent ทำมากกว่าแค่การดึงเนื้อหาเพียงครั้งเดียว แต่กำลังทำงานกับกลุ่มไฟล์ที่อยู่ภายใน runtime ภายนอก
นี่คือรูปแบบที่ Box Mount ออกแบบมาเพื่อรองรับ: นักพัฒนาเตรียม sandbox ให้ agent นำเนื้อหาจาก Box เข้ามาสู่สภาพแวดล้อมนั้น แล้วส่งผลงานของ agent กลับไปยัง Box
ดู Box Mount ทำงานจริง
เดโมสั้นๆ นี้แสดงแอปพลิเคชันตรวจสอบสัญญาที่ใช้ Box Mount เพื่อนำเนื้อหาจาก Box เข้าสู่ E2B sandbox รัน agent กับพื้นที่ทำงานนั้น และซิงค์ผลการตรวจสอบที่เสร็จสมบูรณ์กลับไปยัง Box เพื่อให้คนตรวจสอบต่อไป

ตัวอย่างนี้แสดงการตรวจสอบ deal room แบบ multi-agent โดยใช้ Box Mount เพื่อนำเนื้อหาองค์กรเข้าสู่ sandbox ของ OpenAI Agents API รัน lead agent หนึ่งตัวและ specialist agent สามตัวแบบขนานกันกับไฟล์ต้นทางห้าไฟล์ และซิงค์รายงานสี่ฉบับกลับไปยัง Box โดยอัตโนมัติเมื่อ MSA ต้นทางมีการแก้ไข

เดโมนี้นำเสนอการตรวจสอบแบบสอบถามด้านความปลอดภัย โดยใช้ Box Mount เพื่อนำเอกสารนโยบายที่ได้รับการอนุมัติเข้าสู่ Vercel Sandbox microVM รัน agent ตรวจสอบ 12 รายการเพื่อหาหลักฐานสนับสนุนคำตอบที่ผ่านเกณฑ์ 10 ข้อ และทำเครื่องหมาย 2 ข้อเพื่อให้คนตรวจสอบ จากนั้นซิงค์ไฟล์ Excel ที่เสร็จสมบูรณ์กลับไปยัง Box โดยอัตโนมัติ

เดโมนี้นำเสนอบันทึกการตรวจสอบ due diligence ใน deal room โดยใช้ Box Mount เพื่อมอบ path ไฟล์ปกติให้กับ agent ใน DigitalOcean sandbox สำหรับเข้าถึงเนื้อหาบนคลาวด์ของ Box อ่านเอกสาร deal room ในเครื่อง และเขียนบันทึกที่เสร็จสมบูรณ์กลับไปยัง Box โดยไม่ต้องสร้างลอจิกดาวน์โหลดหรืออัปโหลดใดๆ

พื้นที่ทำงานที่คุ้นเคยภายใน sandbox
หลังจาก mount โฟลเดอร์ Box แล้ว agent จะเห็นไดเรกทอรีธรรมดาๆ ไดเรกทอรีหนึ่ง:
1/mnt/box2├── Incoming/3│ └── Acme-MSA.docx4├── Playbook/5│ └── approved-contract-playbook.md6└── Reviewed/
จากจุดนี้ ไลบรารีและเครื่องมือ command-line ที่มีอยู่เดิมสามารถทำงานกับเนื้อหาได้เลย โดยไม่ต้องมีเครื่องมือเฉพาะของ Box สำหรับทุกการดำเนินการ ตัวอย่างเช่น แอปพลิเคชัน Node สามารถใช้ filesystem API เดียวกับที่ใช้สำหรับไฟล์ในเครื่อง:
1import { readFile, writeFile } from "node:fs/promises";23const playbook = await readFile(4 "/mnt/box/Playbook/approved-contract-playbook.md",5 "utf8",6);78const review = await reviewContract({9 contractPath: "/mnt/box/Incoming/Acme-MSA.docx",10 playbook,11});1213await writeFile(14 "/mnt/box/Reviewed/Acme-MSA-review.md",15 review,16);
การเขียนข้อมูลครั้งสุดท้ายนั้นเป็นเพียงการดำเนินการกับไฟล์ปกติในมุมมองของแอปพลิเคชัน Box Mount จะซิงค์ผลการตรวจสอบใหม่ไปยัง Box ซึ่งผู้ใช้สามารถเปิด แก้ไข มอบหมายงาน หรือสร้างเวอร์ชันใหม่ได้
หากมีใครอัปเดตไฟล์ใน Box ขณะที่ sandbox ยังทำงานอยู่ การเปลี่ยนแปลงนั้นสามารถไหลกลับเข้ามาในพื้นที่ทำงานที่ mount ไว้เพื่อใช้ในขั้นตอนถัดไปของ agent ได้ สิ่งนี้ช่วยสร้างสภาพแวดล้อมการทำงานร่วมกันระหว่าง agent และผู้คน โดยที่นักพัฒนาไม่ต้องสร้างลอจิกการย้ายและซิงค์ข้อมูลแบบกำหนดเองสำหรับทุกไฟล์
นอกจากนี้ยังทำให้เวิร์กโฟลว์ไม่ผูกติดกับโมเดลหรือ agent framework ใดเป็นพิเศษ sandbox อาจรัน OpenAI agent, Anthropic agent, LangGraph, CrewAI, สคริปต์ Python, LibreOffice CLI หรือใช้เครื่องมือหลายอย่างร่วมกันก็ได้ ตราบใดที่เครื่องมือนั้นรู้วิธีทำงานกับไฟล์ ก็สามารถใช้พื้นที่ทำงานที่ mount ไว้ได้
องค์ประกอบต่างๆ ทำงานร่วมกันอย่างไร
ผลิตภัณฑ์หรือ orchestrator ของคุณมีหน้าที่เตรียม sandbox และรัน agent ส่วน Box Mount จะทำงานภายใน sandbox นั้นในฐานะคอมโพเนนต์ซิงโครไนซ์แบบ headless โดยเป็นตัวกลางเชื่อมต่อ filesystem และสื่อสารกับ Box ผ่าน Box API
agent จะทำงานผ่าน path ที่ mount ไว้ แทนที่จะเรียก Box ทุกครั้งที่มีการดำเนินการกับเอกสาร Box Mount จะคอยอัปเดตโฟลเดอร์ให้เป็นปัจจุบัน อัปโหลดการเปลี่ยนแปลง ตรวจจับการอัปเดตที่ขัดแย้งกัน และทำการซิงโครไนซ์รอบสุดท้ายเมื่อ unmount พื้นที่ทำงาน
Box ยังคงทำหน้าที่เป็นเลเยอร์เนื้อหา ซึ่งรวมถึงสิทธิ์ การจัดการเวอร์ชัน การจัดหมวดหมู่ นโยบายการเก็บรักษา การป้องกันด้วย Shield และประวัติการตรวจสอบ (audit history) โดย sandbox จะมีสำเนาการทำงานที่ถูกซิงค์ไว้ ดังนั้นนักพัฒนาจึงยังคงต้องจัดการสภาพแวดล้อมและข้อมูลในเครื่องตามข้อกำหนดด้านความปลอดภัยของตนเอง

ผลิตภัณฑ์ของลูกค้าเป็นผู้เตรียม sandbox และรัน agent ส่วน Box Mount จะเชื่อมต่อพื้นที่ทำงาน filesystem ของ agent เข้ากับ Box ผ่าน Box API
การใช้งาน Box Mount
เวิร์กโฟลว์พื้นฐานของ Box Mount ใช้คำสั่งเพียงไม่กี่บรรทัด ขั้นแรก กำหนดค่าข้อมูลรับรอง (credentials) ของ Box:
1box-mount config
Mount โฟลเดอร์ Box เข้าสู่ sandbox ของ agent:
1mkdir -p /mnt/box2box-mount mount "/mnt/box" "<box-folder-id>"
เมื่อ mount เสร็จแล้ว agent สามารถใช้เครื่องมือ filesystem ทั่วไปได้เลย:
1find /mnt/box -type f2cat /mnt/box/Playbook/approved-contract-playbook.md3cp generated-review.md /mnt/box/Reviewed/
คุณสามารถตรวจสอบสถานะการ mount ที่ใช้งานอยู่ขณะที่ agent กำลังทำงานได้:
1box-mount status
เมื่อทำงานเสร็จสิ้น ให้ unmount พื้นที่ทำงานและดำเนินการซิงโครไนซ์รอบสุดท้าย:
1box-mount unmount "/mnt/box"
การยืนยันตัวตนและการเตรียมสภาพแวดล้อมจะขึ้นอยู่กับวิธีที่แอปพลิเคชันของคุณเริ่มใช้งาน sandbox เอกสารสำหรับ private preview ที่มาพร้อมกับ binary จะครอบคลุมตัวเลือกการตั้งค่าทั้งหมดที่มีให้ใช้งาน
คุณจะสร้างอะไรได้บ้าง?
การตรวจสอบสัญญาเป็นตัวอย่างหนึ่ง agent สามารถเปรียบเทียบข้อตกลงที่ได้รับกับ playbook ที่ได้รับการอนุมัติ เขียนผลการค้นพบกลับไปยัง Box และส่งมอบผลลัพธ์ให้ทนายความ หากทนายความแก้ไขผลการตรวจสอบใน Box agent ก็จะเห็นไฟล์ที่อัปเดตแล้วในสภาพแวดล้อมการทำงานของตน
รูปแบบเดียวกันนี้สามารถนำไปใช้กับการร่างข้อเสนอและ RFP การวิเคราะห์ deal room การจัดทำสรุปข้อมูลสำหรับผู้บริหาร การสังเคราะห์งานวิจัย การตรวจสอบการปฏิบัติตามกฎระเบียบ และเวิร์กโฟลว์อื่นๆ ที่ต้องใช้เอกสารจำนวนมาก นอกจากนี้ agent หลายตัวยังสามารถทำงานผ่านโฟลเดอร์ Box ร่วมกันได้ เช่น ตัวหนึ่งสร้างร่าง อีกตัวตรวจสอบ และมีคนเป็นผู้ตัดสินใจขั้นสุดท้าย
โมเดลและเวิร์กโฟลว์อาจเปลี่ยนไป แต่รูปแบบพื้นฐานยังคงเหมือนเดิม: เนื้อหาจาก Box เข้าสู่ sandbox ภายนอก กลายเป็นส่วนหนึ่งของสภาพแวดล้อมการทำงานของ agent และผลงานที่ได้จะถูกส่งกลับไปยัง Box
สำรวจแอปพลิเคชันตัวอย่าง
ตัวอย่างการตรวจสอบสัญญาด้วย Box Mount แสดงเวิร์กโฟลว์ที่สมบูรณ์โดยใช้ E2B
แอปพลิเคชันนี้จะสร้าง sandbox ติดตั้ง Box Mount mount พื้นที่ทำงานสัญญาจาก Box และรัน Box AI หรือ OpenAI agent จากนั้นจะซิงค์ผลการตรวจสอบที่สร้างขึ้นกลับไปยัง Box โดยสามารถเลือกมอบหมายให้ผู้ตรวจสอบที่เป็นบุคคลจริงได้ และปล่อยให้ sandbox ทำงานต่อไปเพื่อให้นักพัฒนาตรวจสอบผลลัพธ์ก่อนจะปิดมันลง
ปัจจุบัน repository นี้เป็นแบบส่วนตัวและไม่รวม binary ของ Box Mount ผู้เข้าร่วม private preview จะต้องได้รับสิทธิ์เข้าถึง repository และต้องวาง binary ที่ได้รับไว้ในไดเรกทอรี private/ ของโปรเจกต์ก่อนที่จะรันตัวอย่าง
เข้าร่วม private preview
Box Mount ยังอยู่ในช่วงเริ่มต้น และเรากำลังมองหานักพัฒนาที่กำลังสร้าง (หรือเริ่มศึกษา) เวิร์กโฟลว์ agent ที่ทำงานใน sandbox และใช้เนื้อหาร่วมกับ Box
หากสถาปัตยกรรมของคุณตรงกับที่กล่าวมา เราอยากรู้ว่าคุณย้ายเนื้อหาอย่างไรในปัจจุบัน มีอะไรทำงานอยู่ใน sandbox ของคุณบ้าง และจุดไหนที่วิธีการเดิมเริ่มกลายเป็นปัญหา ผู้เข้าร่วม private preview จะได้รับ binary ของ Box Mount พร้อมคำแนะนำในการติดตั้ง เพื่อให้ทดลองใช้กับเวิร์กโฟลว์ของตัวเองได้
https://bit.ly/box-mount-preview
หากเนื้อหาจาก Box จำเป็นต้องกลายเป็นส่วนหนึ่งของสภาพแวดล้อมการทำงานของ agent ของคุณ เราอยากเห็นสิ่งที่คุณจะสร้างขึ้น





