ตั้งแต่วันที่ 14 สิงหาคมนี้ ทาง Claude Code
จะปรับเปลี่ยน default permission เป็น Auto mode สำหรับคนที่ใช้ Pro/Max/Team plan
จากเดิมใช้งาน default mode คือ read only และทำการกำหนด permission (allow/deny) ได้เอง
ซึ่ง auto mode นั้นถูกออกแบบเพื่อให้ workflow การทำงานดีขึ้น
ลดการขัดจังหวะในการทำงาน
รวมทั้งยังมีระบบคัดกรองความเสี่ยง (classifier)
เพื่อหลีกเลี่ยงการทำงานที่ไม่ปลอดภัยให้ด้วย

เป็นการทำงานร่วมกันทั้ง Human และ system นั่นเอง

กลับมาที่ความรู้พื้นฐานระบบ permission modeใน Claude Code

จะมีค่า default เป็น read only และเราสามารถเปลี่ยน mode ไปใช้
acceptEdits/plan/auto/dontAsk/bypassPermissions ได้

ส่วนการจัดการ permission จะประกอบไปด้วย

  • Allow
  • Auto
  • Ask
  • Deny

สามารถทำการ config ไว้ในไฟล์ .claude/settings.local.json หรือ ~/.claude.json ได้
ยกตัวอย่างเช่น

โดยที่ Auto mode จะถูกเรียกใช้งานเมื่อ set permission ไว้เป็น auto นั่นเอง
ตัว classifier ของ Auto mode จะทำการตรวจสอบการทำงานนั้น ๆ
ด้วยหลากหลายมุมมอง เช่น

  • ถ้าทำการแก้ไขหรือลบไฟล์นั้น ๆ สามารถ undo ได้หรือไม่
  • การทำงานนั้น ๆ อยู่ในขอบเขต หรือ boundary ของงานนั้น ๆ หรือไม่ ที่อธิบายใน prompt/context
  • การทำงานนั้น ๆ มีความเสี่ยงหรือไม่ เช่นมีการใช้งา credential data, sensitive data หรือพวก external system ต่าง ๆ
  • การกระทำนั้น ๆ ก็ให้เกิดผลกระทบอื่น ๆ เป็นลูกโซ่หรือไม่

จะเห็นได้ว่า Auto mode นั้นทำงานมากกว่าจะทำพวก whitelist/backlist

ตัวอย่างการทำงานของ Auto mode

  • อ่านเขียนไฟล์ source code จะทำการแบบอัตโนมัติ
  • ทำการอ่านไฟล์ config ต่าง ๆ จะทำการแบบอัตโนมัติ
  • ทำการลบไฟล์ หรือ folder จะทำการ ถาม หรือ block
  • ทำการส่ง request หรือเรียกระบบอื่น ๆ ผ่าน network จะทำการ ถาม หรือ block
  • มีการ drop database จะทำการ block
  • มีคำสั่ง rm -rf บน system path จะทำการ block

จากข้อมูลของ Anthropic นั้นพบว่า
Auto mode ตรวจจับ action ที่อันตรายได้ดีกว่าคนมาก ๆ
นั่นคือ ช่วยเพิ่มความปลอดภัยของการทำงานมากยิ่งขึ้น
หรือจะเป็นพวก prompt injection ก็ตรวจจับได้เช่นกัน
เนื่องจากหลาย ๆ คนมักจะ accept to run/allow แบบไม่อ่านกันเลย !!

โดย Auto mode นั้น จะแตกต่างจาก claude –dangerously-skip-permissions

ถ้า run claude แบบนี้ คือจะอนุญาตทุก ๆ action นั่นเอง
ซึ่งอันตรายอย่างมาก ใช้งานอย่างระมัดระวัง !!

ลองใช้งานกันดูครับ
เป็นเรื่องที่สำคัญ แต่มักจะถูกมองข้ามไป