GitHub Copilot app เพิ่ม local sandboxing — จำกัดไฟล์ เน็ต และ credential ของคำสั่งที่เอเจนต์รันบนเครื่อง ถ้า OS บังคับ policy ไม่ได้จะ error แทนการรันโดยไม่มี sandbox แต่ค่าเริ่มต้นยังปิดอยู่
ข่าวตามหลัง: GitHub ประกาศใน changelog เมื่อ 23 ก.ย. 2026 ว่า GitHub Copilot app (แอปเดสก์ท็อปที่รันเอเจนต์บนเครื่องนักพัฒนา) มี local sandboxing แบบ public preview แล้ว คำสั่งที่เอเจนต์รันจะทำงานอยู่ใน sandbox ระดับระบบปฏิบัติการ ที่จำกัดการเข้าถึงไฟล์ เครือข่าย และ credential บนเครื่อง สรุปรายสัปดาห์ของ Copilot วันที่ 25 ก.ย. ยังรวมฟีเจอร์ด้านความปลอดภัยของเอเจนต์ใน JetBrains และ VS Code ไว้ด้วย
เอกสารของ GitHub อธิบายเหตุผลไว้ตรง ๆ ว่า working tree แยก branch และไฟล์ของแต่ละเซสชันออกจากกันได้ “but it does not restrict what a command can access elsewhere on your machine” หมายความว่าก่อนหน้านี้ เอเจนต์ที่รันบนเครื่องเข้าถึงทุกอย่างที่บัญชีผู้ใช้เข้าถึงได้
ตั้งค่าอะไรได้บ้าง (ต่อโปรเจกต์)
- Filesystem: เพิ่มโฟลเดอร์ที่อ่าน/เขียนได้ โฟลเดอร์อ่านอย่างเดียว และโฟลเดอร์ที่ห้ามเข้าถึง ถ้าห้ามโฟลเดอร์ลูกไว้ โฟลเดอร์ลูกนั้นยังถูกห้ามแม้โฟลเดอร์แม่จะเปิดสิทธิ์ ค่าเริ่มต้นให้อ่าน/เขียนได้ใน workspace และ working directory ของเซสชัน
- Network: เปิดหรือปิดการออกอินเทอร์เน็ต และการเชื่อมต่อ loopback / local network แยกกัน
- Credentials: เลือกได้ว่าจะให้ใช้ Git credential (HTTPS) และ GitHub CLI credential ใน sandbox หรือไม่
- ถ้ามี enterprise-managed settings อยู่ policy ที่ใช้จริงอาจเข้มกว่าที่ตั้งไว้ในโปรเจกต์
จุดที่ออกแบบไว้ดีคือ fail closed เพราะ “If your operating system cannot enforce the requested policy, the sandboxed shell fails with an error rather than running without a sandbox” ตัวอย่างเช่นบน Windows ถ้าบังคับการห้ามเข้าถึงโฟลเดอร์ไม่ได้ คำสั่งจะล้มพร้อมข้อความ unsupported-policy
ข้อจำกัดที่ต้องรู้
- ปิดเป็นค่าเริ่มต้น ต้องเปิด “Sandbox new sessions” ในการตั้งค่าโปรเจกต์ หรือพิมพ์
/sandbox onในเซสชันที่รันอยู่ - policy เริ่มต้นยังเปิดกว้าง เอกสารบอกว่าเซสชันที่อยู่ใน sandbox “can connect to the internet and your local network” และใช้ Git/gh credential ได้ตามค่าเริ่มต้น เพื่อให้ติดตั้ง dependency, push branch และเปิด PR ได้
- บน Linux sandbox “cannot control local network access independently for spawned processes” ได้แก่ shell command และ MCP/LSP server ที่รันบนเครื่อง การตั้งค่า local network จึงมีผลแค่กับงานภายในแอป
- ใช้ไม่ได้กับ cloud sandbox หรือเซสชันบน remote host และ Copilot CLI ตั้งค่า sandbox แยกจากแอป
- การเปลี่ยน policy มีผลกับเซสชันใหม่หรือเมื่อรีสตาร์ต (
/restart-session) เท่านั้น
ฟีเจอร์อื่นในสัปดาห์เดียวกัน
- JetBrains — assisted approvals (public preview): “automatically approve low-risk tool calls while prompting you for higher-risk actions” มีตัวตั้งค่าให้ปิดหรือเปิด GitHub MCP Server ที่ติดมากับ Copilot และคุมสิทธิ์ของ tool MCP แต่ละตัวแบบถาวรได้
- VS Code 1.139: รันเอเจนต์ใน Dev Containers บน SSH, Tunnel และ WSL host ได้ (ทยอยเปิด)
- Copilot app: ส่ง telemetry ของเอเจนต์ออกเป็น OpenTelemetry ผ่าน enterprise-managed settings
- Agentic autofix + Copilot Memory (25 ก.ย.): เมื่อแก้ security alert ได้ ระบบจะเก็บรูปแบบการแก้ไว้เป็น memory ให้ code review และ cloud agent ใช้ต่อ
มุมมอง AI Curator
ทิศทางถูกต้องและมาถูกเวลา หลังจากเดือนนี้เราเห็นเหตุเอเจนต์หนีออกทาง DNSและยิง API ภายนอกแบบ brute force การออกแบบให้ล้มเมื่อบังคับ policy ไม่ได้ แทนที่จะรันต่อแบบไม่มี sandbox เป็นหลักที่เครื่องมือเอเจนต์ทุกตัวควรมี
แต่ช่องว่างใหญ่คือ ค่าเริ่มต้น ทั้งปิด sandbox และ policy เริ่มต้นที่เปิดเน็ตกับ credential ไว้ ถ้าเปิด sandbox ด้วยค่าเริ่มต้น เอเจนต์ที่โดน prompt injection จาก README หรือ issue ยังส่งข้อมูลออกเน็ตและ push ด้วยสิทธิ์ของคุณได้ ทีมที่จะใช้ Copilot app จริงควรตั้ง policy เองอย่างน้อยสามข้อ: ห้ามเข้าถึง ~/.ssh, ~/.aws และโฟลเดอร์ .env ของโปรเจกต์อื่น, ปิด gh credential ถ้าเอเจนต์ไม่ต้องเปิด PR เอง และปิดอินเทอร์เน็ตในงานที่ไม่ต้องติดตั้งแพ็กเกจ นักพัฒนาไทยจำนวนมากใช้ WSL หรือ Linux เป็นหลัก ควรรู้ด้วยว่าบน Linux การปิด local network ยังไม่ครอบคลุม MCP server ที่รันบนเครื่อง
ส่วน assisted approvals ใน JetBrains ต้องดูให้ดี เพราะให้ AI ตัดสินว่า tool call ไหน “ความเสี่ยงต่ำ” ซึ่งช่วยลด prompt อนุมัติที่น่ารำคาญ แต่ย้ายการตัดสินใจจากคนไปให้ตัวจัดประเภทที่เราไม่เห็นเกณฑ์ ใช้คู่กับ sandbox ได้ แต่อย่าใช้แทน sandbox
แหล่งข่าว
อ่านเพิ่มในหมวด เครื่องมือนักพัฒนา
Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ
Betelgeuse ฟอร์ก llama.cpp ที่เปิดเมื่อ 31 ต.ค. ดึง expert จาก NVMe เข้า VRAM ตามต้องการ อ้าง 22 tok/s แบบไม่ทิ้ง expert แต่ README เตือนเองว่ายังทดลองและตัวเลขมาจากคนละรอบ วันเดียวกันผู้พัฒนา Basalt เผยผลวัดว่าแฟล็กเร่งความเร็วทำคุณภาพ Q8 ตกไปใกล้ Q2
กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง
ต่อจากที่เราพบกฎนี้ในไบนารี Claude Code ผู้ใช้เริ่มรายงานว่างานเชิงพาณิชย์ถูกปฏิเสธ และ Tom's Hardware กับ Mashable หยิบไปรายงาน แต่เมื่อไล่ issue ที่อ้างถึง พบว่าหลายรายการเกิดก่อนกฎจะมา จึงน่าจะเป็นตัวกรองด้านไซเบอร์ ส่วน Anthropic ยังไม่ชี้แจง
Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้
รายงานอิสระพบว่าฟีเจอร์ agent_summary ของ Claude Code ส่ง transcript เต็มของ background agent ไปถามสถานะทุก ~30 วินาที คิดเป็น 16.4% ของค่าใช้จ่ายในระบบของผู้วัด Issue เปิดมาตั้งแต่ ส.ค. ยังไม่มีสวิตช์ปิดที่รองรับ เราตรวจพบโค้ดนี้ใน 2.1.314 และพบกฎใหม่เรื่องเกมที่ไม่อยู่ใน changelog