permission-check

Installation
SKILL.md

Permission Check

Purpose

Surface the full permission-mode picture across every layer Claude Code honors, so the user can see at a glance why prompts are (or aren't) firing. Claude Code resolves permission mode from a 6-tier stack; a single misconfigured layer produces silent overrides that are hard to debug by eye.

The 6 layers (precedence: bottom wins)

  1. VSCode user settings~/Library/Application Support/Code/User/settings.json (macOS), %APPDATA%/Code/User/settings.json (Windows), ~/.config/Code/User/settings.json (Linux). Key: claudeCode.initialPermissionMode.
  2. VSCode workspace settings<repo>/.vscode/settings.json. Same key. Wins over user.
  3. CLI user settings~/.claude/settings.json. Key: permissions.defaultMode.
  4. CLI project settings<repo>/.claude/settings.json. Same key. Wins over user.
  5. CLI project-local settings<repo>/.claude/settings.local.json. Same key. Wins over project.
  6. In-session mode — set at session start from layers 1-5, then mutable via Shift+Tab or /permission-mode. Authoritative until session ends.

Key insight: initialPermissionMode only fires at session start. If you toggled mid-session (or the session started before a settings change), the file-level settings are correct but the runtime mode differs. That's the #1 source of "bypass isn't working" confusion.

Privacy contract

Installs
16
GitHub Stars
1.2K
First Seen
Apr 18, 2026
permission-check — pedrohcgs/claude-code-my-workflow