~ / rigs / ivuorinen / dotfiles

ivuorinen/dotfiles

These are my dotfiles. There are many like 'em, but these are mine.

↗ GitHub ★ 3 NOASSERTION updated 1d ago personal setup Claude CodeCopilot
share on X
ARCHETYPE
Skill Collector
Ten-plus skills loaded on demand. A procedural-knowledge library.
CONTEXT TAX · EVERY TURN
~4.6k tokens
Moderate · 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 ivuorinen/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 ivuorinen/dotfiles/.claude/skills/adversarial-reviewer .claude/skills/adversarial-reviewer
$ npx degit ivuorinen/dotfiles/.claude/skills/bats-test-scaffold .claude/skills/bats-test-scaffold
$ npx degit ivuorinen/dotfiles/.claude/skills/dotbot-validate .claude/skills/dotbot-validate
$ npx degit ivuorinen/dotfiles/.claude/skills/fish-validate .claude/skills/fish-validate
$ npx degit ivuorinen/dotfiles/.claude/skills/graphify .claude/skills/graphify
$ npx degit ivuorinen/dotfiles/.claude/skills/host-override .claude/skills/host-override
$ npx degit ivuorinen/dotfiles/.claude/skills/lua-format .claude/skills/lua-format
$ npx degit ivuorinen/dotfiles/.claude/skills/new-fish-function .claude/skills/new-fish-function
$ npx degit ivuorinen/dotfiles/.claude/skills/new-script .claude/skills/new-script
$ npx degit ivuorinen/dotfiles/.claude/skills/shell-validate .claude/skills/shell-validate
$ npx degit ivuorinen/dotfiles/.claude/skills/theme-handler-scaffold .claude/skills/theme-handler-scaffold
$ npx degit ivuorinen/dotfiles/.claude/skills/yaml-validate .claude/skills/yaml-validate
$ curl -fsSL --create-dirs -o .claude/agents/code-reviewer.md https://raw.githubusercontent.com/ivuorinen/dotfiles/main/.claude/agents/code-reviewer.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(curl:*)",
      "Bash(wget:*)",
      "WebFetch"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Edit|Write|Read|MultiEdit",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-edit-block.sh"
          },
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-rules-lint.sh"
          }
        ]
      },
      {
        "matcher": "Grep|Glob|NotebookEdit",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-edit-block.sh"
          }
        ]
      },
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-bash-route.sh"
          },
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-graphify-nudge.sh search"
          }
        ]
      },
      {
        "matcher": "mcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_c",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-ctx-write-guard.sh"
          }
        ]
      },
      {
        "matcher": "Read|Glob",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/pre-graphify-nudge.sh read"
          }
        ]
      }
    ]
  }
}

Skills (12)

Subagents (1)

code-reviewerReviews shell/fish/lua changes for correctness and style

Hooks (18)

eventmatcherruns
SessionStart*"$CLAUDE_PROJECT_DIR"/.claude/hooks/session-start-context.sh
UserPromptSubmit*"$CLAUDE_PROJECT_DIR"/.claude/hooks/prompt-record.sh
PreToolUseEdit|Write|Read|MultiEdit"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-edit-block.sh
PreToolUseEdit|Write|Read|MultiEdit"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-rules-lint.sh
PreToolUseGrep|Glob|NotebookEdit"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-edit-block.sh
PreToolUseBash"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-bash-route.sh
PreToolUsemcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_c"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-ctx-write-guard.sh
PreToolUseBash"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-graphify-nudge.sh search
PreToolUseRead|Glob"$CLAUDE_PROJECT_DIR"/.claude/hooks/pre-graphify-nudge.sh read
PostToolUsemcp__plugin_context-mode_context-mode__.*"$CLAUDE_PROJECT_DIR"/.claude/hooks/post-tool-context-mode-check.sh
PostToolUseEdit|Write"$CLAUDE_PROJECT_DIR"/.claude/hooks/post-edit-format.sh
PostToolUseEdit|Write"$CLAUDE_PROJECT_DIR"/.claude/hooks/post-edit-dotbot-validate.sh
PostToolUseEdit|Write"$CLAUDE_PROJECT_DIR"/.claude/hooks/post-edit-config-warn.sh
PostToolUseEdit|Write"$CLAUDE_PROJECT_DIR"/.claude/hooks/post-edit-lint.sh
PostToolUseEdit|Write"$CLAUDE_PROJECT_DIR"/.claude/hooks/async-bats.sh
PostToolUseFailure*"$CLAUDE_PROJECT_DIR"/.claude/hooks/log-failures.sh
Notificationidle_prompt"$CLAUDE_PROJECT_DIR"/.claude/hooks/notify-idle.sh
Stop*"$CLAUDE_PROJECT_DIR"/.claude/hooks/stop-lint-gate.sh

Permissions

deny (3)
Bash(curl:*)
Bash(wget:*)
WebFetch
ask (0)
—
allow (0)
—

Similar rigs

copied ✓