| Crates.io | ccperm |
| lib.rs | ccperm |
| version | 0.1.0 |
| created_at | 2026-01-14 11:44:19.616445+00 |
| updated_at | 2026-01-14 11:44:19.616445+00 |
| description | A TUI viewer/editor for Claude Code permission settings |
| homepage | |
| repository | https://github.com/nyanko3141592/ccperm |
| max_upload_size | |
| id | 2042646 |
| size | 71,988 |
A TUI (Terminal User Interface) viewer and editor for Claude Code permission settings.
ccperm provides an interactive terminal interface to view and manage Claude Code's permission settings stored in ~/.claude/settings.json. It helps you understand which tools and commands are allowed, denied, or require confirmation.
settings.json) and local (settings.local.json) settingscargo install ccperm
git clone https://github.com/nyanko3141592/ccperm.git
cd ccperm
cargo install --path .
Simply run:
ccperm
| Key | Action |
|---|---|
j / ↓ |
Move down |
k / ↑ |
Move up |
h / ← |
Collapse category |
l / → / Enter |
Expand category |
Tab |
Switch tab (Allow/Deny/Ask) |
a |
Add new permission |
e |
Edit selected permission |
d |
Delete selected permission |
s |
Save changes |
r |
Reload from file |
g |
Switch to Global settings |
L |
Switch to Local settings |
? |
Show help |
q / Esc |
Quit |
┌─────────────────────────────────────────────────────────────────┐
│ ccperm - Claude Code Permission Manager [?] Help [q] │
├─────────────────────────────────────────────────────────────────┤
│ [Allow] [Deny] [Ask] Source: [G] │
├─────────────────────────────────────────────────────────────────┤
│ ▼ Git (5) │
│ ├─ git commit:* │
│ ├─ git push │
│ └─ git add:* │
│ ▼ NPM (4) │
│ ├─ npm install:* │
│ └─ npm run build:* │
│ ▶ GCloud (12) │
│ ▶ Web (2) │
├─────────────────────────────────────────────────────────────────┤
│ [a]dd [e]dit [d]elete [s]ave [r]eload Total: 36 │
└─────────────────────────────────────────────────────────────────┘
ccperm reads and writes to the following files:
~/.claude/settings.json - Global Claude Code settings~/.claude/settings.local.json - Local overridesPermissions follow the pattern:
Tool(command:pattern)
Examples:
Bash(npm install:*) - Allow npm install with any argumentsBash(git commit) - Allow git commit (exact match)WebFetch(domain:github.com) - Allow fetching from github.com~/.claude/ directory must exist)MIT License - see LICENSE for details.
Contributions are welcome! Please feel free to submit a Pull Request.