Rules / Hidden content and security
sec-permission-mode
Settings turn on bypassPermissions or skip its confirmation.
Source: Claude Code docs: Settings reference (code.claude.com), read 14 October 2026.
On GitHub: the rule doc and the tests.
All rules73
What it catches#
Settings turn on bypassPermissions or skip its confirmation.
permissions.defaultMode set to bypassPermissions in .claude/settings.json, or in .claude/settings.local.json with --include config-local. With config-local it also reports skipDangerousModePermissionPrompt: true in the local file. Needs --include config.
Why it matters#
bypassPermissions runs every tool without asking. Since Claude Code 2.1.257 it has no effect from project or local settings, but older versions honored it, and the line shows what the author wanted.
Bad example#
{ "permissions": { "defaultMode": "bypassPermissions" } }
Claude Code 2.1.257 and later ignore this in project and local settings, but older versions honour it, so anyone on an older version runs every tool without a prompt. It also tells a reviewer that somebody wanted prompts off for the whole project.
Good example#
{ "permissions": { "defaultMode": "acceptEdits" } }
How to fix#
Remove the line or choose a mode that keeps command prompts. For an unattended run, pass --permission-mode for that one session inside a disposable environment, not in the shared settings file.
Suppress or configure#
sec-permission-mode is a security rule, so it cannot be suppressed with a comment in the file: a suppression comment is itself a hidden comment, and an attacker who can add a payload can add one next to it. A comment that tries gets a suppression-not-allowed warning.
Turn it off, or change its severity, in .asitisrc.json, which shows up in review:
{ "rules": { "sec-permission-mode": "off" } }
Or accept the findings you have today in a baseline, so only new ones fail the build:
asitis lint --format json --write-baseline > .asitis-baseline.json
asitis lint --baseline .asitis-baseline.json
Source#
Claude Code docs: Settings reference, read on 14 October 2026.
Related guides
Run the rule
- In your browser, on one file
- In Claude Code, on the project
- In CI, on every pull request
This page is generated from the plugin's rule registry. Edit it on GitHub. False positive? Open an issue with the line it fired on.