claude-code - 💡(How to fix) Fix [DOCS] Permissions docs still say Bash commands always prompt despite read-only exceptions [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#49295Fetched 2026-04-17 08:45:18
View on GitHub
Comments
0
Participants
1
Timeline
4
Reactions
0
Author
Participants
Timeline (top)
labeled ×4
RAW_BUFFERClick to expand / collapse

Documentation Type

Incorrect/outdated documentation

Documentation Location

https://code.claude.com/docs/en/permissions

Section/Topic

"Permission system" and Bash command approval behavior

Current Documentation

The docs currently say:

Tool typeExampleApproval required"Yes, don't ask again" behavior
Read-onlyFile reads, GrepNoN/A
Bash commandsShell executionYesPermanently per project directory and command

The permission modes page also says:

When Claude wants to edit a file, run a shell command, or make a network request, it pauses and asks you to approve the action.

And the headless docs say:

acceptEdits lets Claude write files without prompting and also auto-approves common filesystem commands such as mkdir, touch, mv, and cp. Other shell commands and network requests still need an --allowedTools entry or a permissions.allow rule, otherwise the run aborts when one is attempted:

What's Wrong or Missing?

Changelog v2.1.111 says: "Read-only bash commands with glob patterns (e.g. ls *.ts) and commands starting with cd <project-dir> && no longer trigger a permission prompt".

That behavior is not reflected in the current docs. The current permission docs still describe Bash approval as a blanket rule, and the headless docs still say non-listed shell commands prompt or abort unless explicitly allowed.

As a result, the docs are outdated about the current Bash permission flow for at least two user-visible cases:

  • read-only Bash commands that include shell glob expansion
  • commands prefixed with cd <project-dir> && that stay within the project directory

Suggested Improvement

Update the permissions documentation to describe the read-only Bash exceptions introduced in v2.1.111.

Suggested additions:

  • Add a short note under the Bash permission rules explaining that some read-only Bash commands are auto-approved and no longer prompt.
  • Include explicit examples such as ls *.ts and cd <project-dir> && git status.
  • Clarify the boundary conditions: which read-only patterns are exempt, and which commands still prompt (for example writes, protected paths, networked actions, or commands outside the project/additional directories).
  • Cross-reference the same behavior from permission-modes, tools-reference, and headless so those pages do not continue to imply that all Bash commands always require explicit approval.

Impact

Medium - Makes feature difficult to understand

Additional Context

Affected Pages:

PageContext
https://code.claude.com/docs/en/permissionsPermission system table currently says Bash commands require approval
https://code.claude.com/docs/en/permission-modesOverview says shell commands pause for approval without mentioning these read-only exceptions
https://code.claude.com/docs/en/tools-referenceBash is listed as requiring permission, with no note about these read-only cases
https://code.claude.com/docs/en/securitySecurity overview says bash commands require approval before execution
https://code.claude.com/docs/en/headlessSays other shell commands still need --allowedTools or permission rules

Total scope: 5 pages affected

Source: Changelog v2.1.111

Exact changelog entry: Read-only bash commands with glob patterns (e.g. ls *.ts) and commands starting with cd <project-dir> && no longer trigger a permission prompt

extent analysis

TL;DR

Update the permissions documentation to reflect the new Bash permission flow introduced in v2.1.111, which auto-approves certain read-only Bash commands.

Guidance

  • Review the current documentation on permissions, particularly the sections on Bash command approval behavior, to identify outdated information.
  • Update the documentation to include explicit examples of auto-approved read-only Bash commands, such as ls *.ts and cd <project-dir> && git status.
  • Clarify the boundary conditions for which read-only patterns are exempt from prompting and which commands still require explicit approval.
  • Cross-reference the updated behavior across affected pages, including permissions, permission-modes, tools-reference, security, and headless, to ensure consistency.

Example

No code snippet is necessary for this issue, as it pertains to documentation updates rather than code changes.

Notes

The updates should be based on the changelog entry for v2.1.111, which introduced the new Bash permission flow. It's essential to ensure that all affected pages are updated to reflect the correct behavior.

Recommendation

Apply a workaround by updating the documentation to reflect the current Bash permission flow, as the issue is related to outdated documentation rather than a code bug. This will improve the accuracy of the documentation and reduce user confusion.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING