agent-run
รันเอเจนต์เขียนโค้ดในสภาพแวดล้อมที่มีการแซนด์บ็อกซ์โดยใช้ไบนารีขนาดเล็กและตั้งค่าด้วย TOML ง่ายๆ
agent-run
agent-run คืออะไร
agent-run เป็นเครื่องมือบรรทัดคำสั่งที่รันเอเจนต์เขียนโค้ด AI (เช่น pi, opencode, codex, claude) ในสภาพแวดล้อมที่มีการแซนด์บ็อกซ์โดยใช้ bubblewrap มันให้การตั้งค่าที่ใช้ TOML อย่างง่ายเพื่อควบคุมการเข้าถึงเครือข่าย ตัวแปรสภาพแวดล้อม และจุดเมานต์ ทำให้เอเจนต์แยกออกจากระบบไฟล์ของโฮสต์ยกเว้นพาธที่ระบุ
วิธีใช้ agent-run
- 1ติดตั้งผ่าน Nix: nix run github:sin-ack/agent-run -- <คำสั่ง>
- 2หรือผ่าน Mise: mise use github:sin-ack/agent-run@latest
- 3หรือด้วยตนเอง: ดาวน์โหลดไบนารีจาก releases, วางใน PATH, chmod +x
- 4สร้างไฟล์กำหนดค่า TOML ที่ .agent-run/config.toml (หรือใช้ค่าเริ่มต้น)
- 5รัน: agent-run <agent> (เช่น agent-run claude)
ฟีเจอร์หลักของ agent-run
- ไบนารีเดี่ยวขนาดเล็ก (<1MB) สำหรับ GNU/Linux (aarch64 และ x86_64)
- การกำหนดค่าแบบ TOML ง่าย พร้อมรองรับ JSON schema
- การทำงานในแซนด์บ็อกซ์ผ่าน bwrap ในตัว (เนมสเปซผู้ใช้แบบไม่มีสิทธิ์)
- รองรับเอเจนต์เขียนโค้ดหลายตัว: pi, opencode, codex, claude
- สามารถกำหนดค่าเมานต์, ตัวแปรสภาพแวดล้อม และการเข้าถึงเครือข่ายแยกตามเครื่องมือ
- ระบบไฟล์โฮสต์แบบอ่านอย่างเดียวโดยค่าเริ่มต้น พร้อมเมานต์แบบเขียนได้ไม่บังคับ
เคสใช้งานของ agent-run
- รันเอเจนต์เขียนโค้ด AI อย่างปลอดภัยโดยไม่ต้องมีข้อความแจ้งเตือนสิทธิ์
- แยกเอเจนต์ออกจากไฟล์ที่ไม่ใช่โปรเจกต์เพื่อป้องกันความเสียหายโดยไม่ตั้งใจ
- ทดสอบหรือพัฒนาเอเจนต์ในสภาพแวดล้อมที่ควบคุมได้
- แซนด์บ็อกซ์การทำงานของเอเจนต์ในขณะที่อนุญาตให้เข้าถึงไดเรกทอรีที่ระบุ
ราคาและเครดิตฟรีของ agent-run
agent-run ใช้โมเดลราคาแบบ ฟรี
ข้อดีและข้อจำกัดของ agent-run
ข้อดี
- น้ำหนักเบาและรวดเร็วมาก
- การกำหนดค่าง่ายพร้อมค่าเริ่มต้นที่ดี
- ความยืดหยุ่นแยกตามเครื่องมือสำหรับเมานต์, env, เครือข่าย
- โอเพนซอร์สและตรวจสอบได้
ข้อจำกัด
- ใช้ได้เฉพาะ Linux (ต้องใช้ bwrap และเนมสเปซผู้ใช้แบบไม่มีสิทธิ์)
- ไม่มีการป้องกันการทำงานของโค้ดที่เป็นอันตราย (ระบบไฟล์อ่านอย่างเดียวแต่ซ็อกเก็ต/เครือข่ายพร้อมใช้งาน)
- จำกัดเฉพาะเอเจนต์ที่รองรับ; เอเจนต์ที่กำหนดเองต้องตั้งค่าด้วยตนเอง
- ไม่รองรับโอเวอร์เลย์หรือเอเจนต์แบบขนาน
agent-run เหมาะกับงานแบบไหน?
- นักพัฒนาที่ใช้เอเจนต์เขียนโค้ด AI
- ผู้ที่ต้องการแซนด์บ็อกซ์แบบง่ายโดยไม่ต้องใช้ VM ที่หนัก
- ผู้ใช้ที่รำคาญข้อความแจ้งเตือนสิทธิ์
- ผู้ใช้ Linux ที่ต้องการเครื่องมือแยกแบบน้ำหนักเบา