mattkuda/claude-code-setup
My personal Claude Code setup — status line, agents, commands, skills, and settings. One script to install on any machine.
ARCHETYPE
Minimalist
Lean instructions, few tools, tiny context tax. Lets the model think.
Copy this rig
# review before running: this installs third-party code $ npx degit mattkuda/claude-code-setup/commands ./rig-claude-code-setup/commands $ npx degit mattkuda/claude-code-setup/skills ./rig-claude-code-setup/skills $ npx degit mattkuda/claude-code-setup/hooks ./rig-claude-code-setup/hooks
MCP servers are added to Claude Code at local scope; env vars are shown as YOUR_… placeholders — we never store values. Files are fetched with degit into a separate folder so you can review before merging.
$ npx degit mattkuda/claude-code-setup/skills/grill-me .claude/skills/grill-me $ npx degit mattkuda/claude-code-setup/skills/html-spec .claude/skills/html-spec
This rig commits no guardrails. Here is the community baseline instead — the deny/ask rules most often found across all 7,204 rigs:
{
"permissions": {
"deny": [
"Read(./.env)",
"Read(**/.env)",
"Read(~/.ssh/**)",
"Bash(rm -rf *)",
"Read(**/*.pem)",
"Bash(rm -rf /)",
"Bash(git push --force:*)",
"Bash(sudo *)",
"Read(.env)",
"Bash(rm -rf /*)",
"Read(./.env.*)",
"Read(~/.aws/**)",
"Bash(git push --force*)",
"Bash(rm -rf:*)",
"Read(**/*.key)",
"Read(**/.env.*)",
"Bash(sudo:*)",
"Bash(git reset --hard*)",
"Bash(git reset --hard:*)",
"Read(.env.*)"
],
"ask": [
"Bash(git push:*)",
"Bash(git push *)",
"Bash(git commit:*)",
"Bash(rm *)",
"Bash(rm:*)",
"Bash(git rebase *)",
"Bash(wget *)",
"Bash(npm publish:*)",
"Bash(git commit *)",
"Bash(gh pr merge *)"
]
}
} Skills (2)
Slash commands (1)
/review-branch