{"version":"2.1.295","anchor":"deny-by-rule-message-inlined","canonical_anchor":"deny-by-rule-message-inlined","heading":"Message for tools blocked by a permission rule is now built directly","tier":"internal","area":"Permissions","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295\/e\/deny-by-rule-message-inlined","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295","markdown":"### Message for tools blocked by a permission rule is now built directly\n\nWhen a permission rule blocks a tool, Claude is told \"Permission to use with has been denied\"\n\n**What**\n\nPermission rules let you say which tools Claude may use. When a rule denies one, Claude Code now writes the message in place, in the form \"Permission to use (tool name) with (what it was asked to do) has been denied.\" Before, a separate shared piece of code produced it.\n\n**Why**\n\nThe wording Claude sees when a tool is denied may be slightly different.\n\n- Area: Permissions\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 0\/5\n- Scope: individual\n- Heads-up: no"}