From permissions-manager
Knowledge about Claude Code permission patterns, safe defaults, and settings.local.json structure. Use when discussing permissions, configuring project settings, or analyzing what commands should be auto-approved.
How this skill is triggered — by the user, by Claude, or both
Slash command
/permissions-manager:permissions-patternsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill provides comprehensive knowledge about Claude Code permission management.
This skill provides comprehensive knowledge about Claude Code permission management.
Claude Code uses a pattern-based permission system in settings.local.json:
Tool(qualifier:pattern)
Examples:
Bash(npm test:*) - Allow npm test with any argumentsBash(git status:*) - Allow git statusWebFetch(domain:github.com) - Allow fetching from GitHubRead(path:/project/**) - Allow reading files in /projectThese commands only read data and cannot modify the system:
| Command | Purpose |
|---|---|
find | Locate files |
ls | List directory contents |
grep | Search file contents |
cat | Display file contents |
head | Show beginning of file |
tail | Show end of file |
stat | File statistics |
file | Determine file type |
pwd | Print working directory |
which | Locate commands |
tree | Directory structure |
Commands that verify project state without modifying it:
| Command | Purpose |
|---|---|
git status | Working tree status |
git diff | Show changes |
git log | Commit history |
git check-ignore | Check gitignore |
npm run test | Run tests |
npm run lint | Run linter |
npx tsc --noEmit | Type checking |
gh pr view | View PR details |
gh pr diff | View PR diff |
These modify node_modules or install dependencies:
| Command | Purpose | Risk |
|---|---|---|
npm install | Install dependencies | Network + disk |
npm ci | Clean install | Network + disk |
yarn install | Install dependencies | Network + disk |
stow | Symlink management | Modifies home dir |
pip install | Python packages | Network + disk |
cargo build | Rust compilation | Disk |
Never auto-approve these:
| Command | Risk |
|---|---|
rm | Data loss |
git push | Remote modification |
git commit | History modification |
git reset | History loss |
git rebase | History rewrite |
Detect project types from manifest files:
| File | Project Type | Suggested Permissions |
|---|---|---|
package.json | Node.js | npm/yarn commands |
Cargo.toml | Rust | cargo commands |
pyproject.toml | Python | pip/poetry commands |
go.mod | Go | go commands |
Makefile | Make-based | make targets |
Gemfile | Ruby | bundle commands |
composer.json | PHP | composer commands |
Bash(npm:*) is too broadBash(npm run test:*) is better than Bash(npm:*)For detailed patterns and schema, see:
references/safe-patterns.md - Complete pattern listsreferences/settings-schema.md - Settings file structureCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub jobrien127/plugin-marketplace --plugin permissions-manager