gemini-cli docs pushed an excludeTools form that blocks nothing, PR reveals
hemv-857 · ghdev · 2026-11-15
gemini-cli's extension docs long recommended "excludeTools": ["runshellcommand(rm -rf)"], claiming it blocks that command. PR #30305 by hemv-857 shows it blocks nothing:
- Root cause: extension excludeTools entries are collected into a Set and matched against each tool's whole name; entries carrying arguments never match, so runshellcommand stays enabled with no warning
- Correct approach: the toolName(args) syntax only works for tools.allowed, tools.core and policy rules (parsed into a tool name plus argsPattern); command-scoped restrictions need a policy rule with commandPrefix and a deny decision
- Changes: fixes the docs' security examples to ["runshellcommand"], corrects the shipped example file, and adds a test pinning the contract
More from coding & agent
- Dynalist MCP Server lets Claude search, edit, and bulk-import Dynalist outlines — modelcontextprotocol · 2026-11-15
- PayPal MCP connector offers read-only AI access to transactions and invoices — modelcontextprotocol · 2026-11-15
- rea + mitmproxy: a 60-second workflow that makes Claude Code expose what your apps are phoning home — Kyrannio · 2026-11-15
- Are We in a Vibecoding Trough? Unreviewed PRs Blamed for Constantly Breaking Infra — nptacek · 2026-11-15
- Amp Runs One Meeting a Week: Thorsten Ball Details the Monday Ritual — vincent_koc · 2026-11-15
- Meta's Muse Agent Asks Approval for Every GitHub Action, Users Frustrated — koltregaskes · 2026-11-15