~ / rigs / derjochenmeyer / claude-code-craft

derjochenmeyer/claude-code-craft

A complete Claude Code project system: setup, memory, backlog, audits, and best-practice upgrades.

↗ GitHub ★ 2 MIT updated 6mo ago project Claude Code
share on X
ARCHETYPE
Skill Collector
Ten-plus skills loaded on demand. A procedural-knowledge library.
CONTEXT TAX · EVERY TURN
~1.5k tokens
Featherweight · median rig: 2.3k · breakdown
GUARDRAILS
3/5
Blocks destructive commands · Protects secrets · No YOLO mode · details

Copy this rig

# review before running: this installs third-party code
$ npx degit derjochenmeyer/claude-code-craft/.claude ./rig-claude-code-craft  # inspect, then merge into .claude/

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 derjochenmeyer/claude-code-craft/skills/craft-global-audit .claude/skills/craft-global-audit
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-audit-full .claude/skills/craft-project-audit-full
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-audit .claude/skills/craft-project-audit
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-dream .claude/skills/craft-project-dream
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-explore .claude/skills/craft-project-explore
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-remember .claude/skills/craft-project-remember
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-setup .claude/skills/craft-project-setup
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-project-status .claude/skills/craft-project-status
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-session-solidify .claude/skills/craft-session-solidify
$ npx degit derjochenmeyer/claude-code-craft/skills/craft-update-self .claude/skills/craft-update-self

Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.

{
  "permissions": {
    "deny": [
      "Bash(rm -rf *)",
      "Bash(sudo *)",
      "Bash(git push --force *)",
      "Bash(git reset --hard *)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Bash(rm -rf *)",
      "Bash(sudo *)",
      "Bash(git push --force *)",
      "Bash(git reset --hard *)",
      "Bash(npm install *)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Write(./src/content/posts/*)",
      "Edit(./src/content/posts/*)"
    ]
  }
}

Skills (10)

Hooks (6)

eventmatcherruns
SessionStartstartupl=$(grep '^## L' .craft/memory/learned-rules.md 2>/dev/null | head -10 | tr '\n' '|'); printf '%s' "${l:-none yet}" | jq -Rs '{"systemMessage":("[craft] Read .craft/PROJECT_STATE.md before starting. Lessons: " + .)}'
SessionStartstartupbash -c 'D=.craft/DREAM_LOG.md; [[ -f $D ]] || exit 0; L=$(stat -f %m "$D" 2>/dev/null || stat -c %Y "$D" 2>/dev/null || echo 0); A=$(( ($(date +%s) - $L) / 86400 )); C=$(git log --since="$A days ago" --oneline 2>/dev/null | wc -l | tr -d "
PreCompact*git diff --quiet HEAD 2>/dev/null && printf '{"decision":"allow"}' || printf '{"decision":"allow","systemMessage":"[craft] Uncommitted changes detected. Consider committing before compaction to preserve this session."}'
SessionStartstartupl=$(grep '^## L' .craft/memory/learned-rules.md 2>/dev/null | head -10 | tr '\n' '|'); printf '%s' "${l:-none yet}" | jq -Rs '{"systemMessage":("[craft] Read .craft/PROJECT_STATE.md before starting. Lessons: " + .)}'
SessionStartstartupbash -c 'D=.craft/DREAM_LOG.md; [[ -f $D ]] || exit 0; L=$(stat -f %m "$D" 2>/dev/null || stat -c %Y "$D" 2>/dev/null || echo 0); A=$(( ($(date +%s) - $L) / 86400 )); C=$(git log --since="$A days ago" --oneline 2>/dev/null | wc -l | tr -d "
PreCompact*git diff --quiet HEAD 2>/dev/null && printf '{"decision":"allow"}' || printf '{"decision":"allow","systemMessage":"[craft] Uncommitted changes detected. Consider committing before compaction to preserve this session."}'

Permissions

deny (15)
Bash(rm -rf *)
Bash(sudo *)
Bash(git push --force *)
Bash(git reset --hard *)
Read(./.env)
Read(./.env.*)
Bash(rm -rf *)
Bash(sudo *)
Bash(git push --force *)
Bash(git reset --hard *)
Bash(npm install *)
Read(./.env)
Read(./.env.*)
Write(./src/content/posts/*)
Edit(./src/content/posts/*)
ask (0)
—
allow (22)
Bash(git status)
Bash(git diff *)
Bash(git add *)
Bash(git log *)
Bash(git commit *)
Read(*)
Write(*)
Edit(*)
Glob(*)
Grep(*)
Bash(git status)
Bash(git diff *)
Bash(git add *)
Bash(git log *)
Bash(git commit *)
Bash(pnpm *)
Bash(npx astro *)
Read(*)
Write(*)
Edit(*)
Glob(*)
Grep(*)

Similar rigs

copied ✓