~ / rigs / majidraza1228 / dotfiles

majidraza1228/dotfiles

Personal dotfiles — Claude Code config and install script

↗ GitHub ★ 0 no license updated 6mo ago personal setup Claude CodeCodexCopilot
share on X
ARCHETYPE
Automator
Hooks on every lifecycle event: format, lint, notify, log.
CONTEXT TAX · EVERY TURN
~1.3k tokens
Featherweight · median rig: 2.3k · breakdown
GUARDRAILS
3/5
Blocks destructive commands · Pre-tool screening hook · No YOLO mode · details

Copy this rig

# review before running: this installs third-party code
$ npx degit majidraza1228/dotfiles/.claude ./rig-dotfiles  # 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 majidraza1228/dotfiles/.codex/skills/code-review .claude/skills/code-review
$ npx degit majidraza1228/dotfiles/.codex/skills/fix-issue .claude/skills/fix-issue
$ npx degit majidraza1228/dotfiles/.codex/skills/implement-feature .claude/skills/implement-feature
$ npx degit majidraza1228/dotfiles/.codex/skills/security-review .claude/skills/security-review
$ curl -fsSL --create-dirs -o .claude/agents/code-reviewer.md https://raw.githubusercontent.com/majidraza1228/dotfiles/main/project-template/.claude/agents/code-reviewer.md
$ curl -fsSL --create-dirs -o .claude/agents/security-auditor.md https://raw.githubusercontent.com/majidraza1228/dotfiles/main/project-template/.claude/agents/security-auditor.md

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(rm -rf:*)",
      "Bash(sudo:*)",
      "Bash(git push --force:*)",
      "Bash(DROP TABLE:*)",
      "Bash(DELETE FROM:*)"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "echo \"[$(date '+%H:%M:%S')] $CLAUDE_TOOL_INPUT\" >> ~/.claude/debug/tool-log.txt"
          },
          {
            "type": "command",
            "command": "bash .claude/hooks/pre-tool.sh"
          }
        ]
      }
    ]
  }
}

Skills (4)

Subagents (2)

code-reviewer
model: sonnet
Reviews pull requests for correctness, style, and alignment with product specs. PROACTIVELY invoked when user asks to review a PR or branch.
security-auditor
model: sonnet
Audits code changes for security vulnerabilities before they ship. Invoke before merging any PR that touches auth, DB queries, file handling, or external APIs.

Hooks (6)

eventmatcherruns
PreToolUseBashecho "[$(date '+%H:%M:%S')] $CLAUDE_TOOL_INPUT" >> ~/.claude/debug/tool-log.txt
Stop*echo "[$(date '+%H:%M:%S')] Session ended" >> ~/.claude/debug/tool-log.txt
PreToolUseBashbash .claude/hooks/pre-tool.sh
PostToolUseEdit|Writebash .claude/hooks/post-edit.sh
Stop*echo "[$(date '+%H:%M:%S')] Claude session ended" >> .claude/debug/session-log.txt 2>/dev/null || true
PreCompact*echo "[$(date '+%H:%M:%S')] Context compacting..." >> .claude/debug/session-log.txt 2>/dev/null || true

Slash commands (5)

/fix-issue/review/deploy/fix-issue/review

Permissions

deny (8)
Bash(rm -rf:*)
Bash(sudo:*)
Bash(git push --force:*)
Bash(rm -rf:*)
Bash(sudo:*)
Bash(git push --force:*)
Bash(DROP TABLE:*)
Bash(DELETE FROM:*)
ask (0)
—
allow (28)
Bash(python3:*)
Bash(pip:*)
Bash(git status:*)
Bash(git log:*)
Bash(git diff:*)
Bash(git add:*)
Bash(git commit:*)
Bash(git push:*)
Bash(git pull:*)
Bash(git checkout:*)
Bash(git branch:*)
Bash(gh:*)
Bash(curl:*)
Bash(chmod:*)
Bash(kill:*)
Read(~/.claude/**)
Bash(python3:*)
Bash(pip:*)
Bash(flask:*)
Bash(pytest:*)
Bash(git status:*)
Bash(git log:*)
Bash(git diff:*)
Bash(git add:*)
Bash(git commit:*)
Bash(git push:*)
Bash(git checkout:*)
Bash(gh:*)

Similar rigs

copied ✓