From magic-powers
Use when configuring Claude Code for a project — .claude/settings.json structure, permission modes, model selection, tool allowlists/denylists, and team vs personal settings.
npx claudepluginhub kienbui1995/magic-powers --plugin magic-powersThis skill uses the workspace's default tool permissions.
`.claude/settings.json` is the control plane for Claude Code on a project. It defines what Claude can do, which model it uses, which external tools it can call, and what automation runs around its tool usage. Committing this file to the repo means everyone on the team gets the same Claude Code behavior — no individual configuration drift.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
.claude/settings.json is the control plane for Claude Code on a project. It defines what Claude can do, which model it uses, which external tools it can call, and what automation runs around its tool usage. Committing this file to the repo means everyone on the team gets the same Claude Code behavior — no individual configuration drift.
// .claude/settings.json (project-level, committed to repo)
{
"model": "claude-sonnet-4-6",
"permissions": {
"allow": [
"Bash(git *)",
"Bash(npm run *)",
"Bash(pytest *)",
"Edit(*)",
"Read(*)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(git push --force *)",
"Bash(sudo *)"
]
},
"mcpServers": { },
"hooks": { }
}
Denylist overrides allowlist. If a command matches both, it is denied.
Claude Code has 4 permission modes (set per-session with --permission-mode flag):
| Mode | What Claude can do | Use for |
|---|---|---|
default | Most things, asks for risky operations | Normal development |
acceptEdits | Auto-accept file edits, asks for bash | Code generation tasks |
bypassPermissions | Everything without asking | Trusted automation (CI) |
plan | Read-only, only edits plan file | Planning sessions |
{
"model": "claude-sonnet-4-6"
}
Override per-session with --model flag or /model command in the Claude Code UI.
Choosing the default model:
| Model | Use for |
|---|---|
claude-haiku-4-5-20251001 | Fast, cost-sensitive tasks; simple code gen |
claude-sonnet-4-6 | Balanced — most projects, debugging, reviews |
claude-opus-4-6 | Complex reasoning, architecture, hard problems |
Set the default to what you use 80% of the time; escalate to Opus only when needed.
Commit to repo (.claude/settings.json):
Personal only (~/.claude/settings.json):
The rule: if everyone on the team should have it, commit it. If it's just you, put it in your global config.
{
"model": "claude-sonnet-4-6",
"permissions": {
"allow": [
"Bash(git *)",
"Bash(npm *)",
"Bash(pnpm *)",
"Bash(pytest *)",
"Bash(ruff *)",
"Bash(docker compose *)",
"Edit(*)",
"Read(*)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(git push --force *)",
"Bash(git reset --hard *)",
"Bash(sudo *)",
"Bash(curl * | bash *)"
]
},
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" }
}
},
"hooks": {
"Stop": [{
"hooks": [{
"type": "command",
"command": "bash .claude/hooks/enforce-done.sh"
}]
}]
}
}
.claude/settings.json — project configuration file; commit to repo for team consistencybypassPermissions — CI/automation mode; Claude does everything without asking; never use interactively.claude/settings.json committed to repo (without secrets)?.claude/settings.json: complete project configurationbypassPermissions used for interactive sessions without audit trailacceptEdits mode for code generation tasks, configure default model for cost optimization, add common safe commands to allowlist to reduce interruptionsbypassPermissions for interactive sessions (only for trusted automation like CI)claude-hooks (hooks configured in same file — see claude-hooks skill)claude-mcp-setup (MCP servers configured in same file — see claude-mcp-setup skill)claude-md-authoring (settings.json + CLAUDE.md together = complete Claude Code project config)