~ / rigs / dentaco / claude-starter

dentaco/claude-starter

Alex Znamenskiy's sanitised Claude Code config: settings.json, CLAUDE.md template, typecheck + deploy-watcher hooks, status line, three reviewer agents, safe installer. Cloned in the Build & Ship with AI course (dentaco.ae).

↗ GitHub ★ 0 MIT updated 17d ago project Claude Code
share on X
ARCHETYPE
Pragmatist
A balanced, no-drama setup: some rules, some tools, nothing extreme.
CONTEXT TAX · EVERY TURN
~339 tokens
Featherweight · median rig: 2.3k · breakdown
GUARDRAILS
1/5
No YOLO mode · details

Copy this rig

# review before running: this installs third-party code
$ npx degit dentaco/claude-starter/agents ./rig-claude-starter/agents
$ npx degit dentaco/claude-starter/hooks ./rig-claude-starter/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.

$ curl -fsSL --create-dirs -o .claude/agents/design-reviewer.md https://raw.githubusercontent.com/dentaco/claude-starter/main/agents/design-reviewer.md
$ curl -fsSL --create-dirs -o .claude/agents/qa-tester.md https://raw.githubusercontent.com/dentaco/claude-starter/main/agents/qa-tester.md
$ curl -fsSL --create-dirs -o .claude/agents/ux-reviewer.md https://raw.githubusercontent.com/dentaco/claude-starter/main/agents/ux-reviewer.md

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 *)"
    ]
  }
}

Subagents (3)

design-reviewer
model: sonnet
Judges a live site against a written design bar and flags anything drifting toward a generic template. Use for design reviews; edit the BAR section below to make it your taste.
qa-tester
model: sonnet
Tests a live website end to end in the real browser and reports what broke. Use after any deploy, or when asked to "test the live site".
ux-reviewer
model: sonnet
Walks a live site as a first-time user and scores clarity, friction and copy. Use when asked for a UX review or before showing a product to real users.

Hooks (2)

eventmatcherruns
PostToolUseEdit|Writeif [ -f tsconfig.json ]; then npx tsc --noEmit; fi
PostToolUseBash|mcp__plugin_vercel_vercel__deploy_to_vercel$HOME/.claude/hooks/post-deploy-ship.sh

Plugins (2)

frontend-design@claude-plugins-officialvercel@claude-plugins-official

Similar rigs

copied ✓