{"version":"2.1.275","anchor":"permission-mode-auto-resolves-to-a-concrete-mode-at-reques","canonical_anchor":"permission-mode-at-request-preserved-for-tool-use-replies-in","heading":"Permission mode now tracked at the time of the original request","tier":"soon","area":"Permissions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.275\/e\/permission-mode-auto-resolves-to-a-concrete-mode-at-reques","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.275","markdown":"### Permission mode now tracked at the time of the original request\n\nClaude Code now records the permission mode a tool request was made under (permissionModeAtRequest) to resolve 'auto' mode and keep decisions consistent\n\n**What**\n\n- A new `permissionModeAtRequest` field is now threaded through tool-use handling, capturing the concrete permission mode (`default`, `acceptEdits`, `dontAsk`, or `bubble`) that an \"auto\" mode resolves to at the moment a tool request is made; `plan` and `bypassPermissions` both resolve to `default`. This replaces an earlier, simpler mode field.\n\n- When replying to a tool_use request, Claude Code now restores the permission mode that request was originally made under, but only when the effective mode is \"arbiter\" and a gate check passes.\n\n- A new telemetry event, `tengu_auto_mode_decided_as_requested_mode`, fires when auto-mode's eventual decision matches the mode that was originally requested, recording the tool name, whether it's an MCP tool, and the requested mode.\n\n**Why**\n\nThis keeps permission decisions consistent with the mode that was actually in effect when a tool request was made, and provides telemetry to measure how often auto-mode's decision simply confirms the original request.\n\n- Area: Permissions\n- Names: `permissionModeAtRequest`\n- Tier: Nothing to try yet\n- Useful: 2\/5\n- Signal: 2\/5"}