~ / rigs / hockeybuggy / dotfiles

hockeybuggy/dotfiles

My ever evolving dotfiles

↗ GitHub ★ 7 no license updated 7d ago personal setup Claude CodeCodex
share on X
ARCHETYPE
Orchestrator
A bench of specialised subagents. The main agent mostly delegates.
CONTEXT TAX · EVERY TURN
~14.0k tokens
Heavy · median rig: 2.3k · breakdown
GUARDRAILS
3/5
Pre-tool screening hook · No YOLO mode · Sandbox or ask-first rules · details

Copy this rig

# review before running: this installs third-party code
$ claude mcp add chrome-devtools -- npx -y chrome-devtools-mcp@latest
$ npx degit hockeybuggy/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.

$ claude mcp add chrome-devtools -- npx -y chrome-devtools-mcp@latest
$ npx degit hockeybuggy/dotfiles/agents/skills/1password-cli .claude/skills/1password-cli
$ npx degit hockeybuggy/dotfiles/agents/skills/bro .claude/skills/bro
$ npx degit hockeybuggy/dotfiles/agents/skills/caffeinate .claude/skills/caffeinate
$ npx degit hockeybuggy/dotfiles/agents/skills/commit .claude/skills/commit
$ npx degit hockeybuggy/dotfiles/agents/skills/deslop .claude/skills/deslop
$ npx degit hockeybuggy/dotfiles/agents/skills/edit-in-pane .claude/skills/edit-in-pane
$ npx degit hockeybuggy/dotfiles/agents/skills/executing-plans .claude/skills/executing-plans
$ npx degit hockeybuggy/dotfiles/agents/skills/frontend-design .claude/skills/frontend-design
$ npx degit hockeybuggy/dotfiles/agents/skills/github .claude/skills/github
$ npx degit hockeybuggy/dotfiles/agents/skills/google-workspace .claude/skills/google-workspace
$ npx degit hockeybuggy/dotfiles/agents/skills/herdr .claude/skills/herdr
$ npx degit hockeybuggy/dotfiles/agents/skills/isolating-test-stacks .claude/skills/isolating-test-stacks
$ npx degit hockeybuggy/dotfiles/agents/skills/mermaid .claude/skills/mermaid
$ npx degit hockeybuggy/dotfiles/agents/skills/rebasing-prs .claude/skills/rebasing-prs
$ npx degit hockeybuggy/dotfiles/agents/skills/receiving-code-review .claude/skills/receiving-code-review
$ npx degit hockeybuggy/dotfiles/agents/skills/report .claude/skills/report
$ npx degit hockeybuggy/dotfiles/agents/skills/shots .claude/skills/shots
$ npx degit hockeybuggy/dotfiles/agents/skills/supervise-herdr-agents .claude/skills/supervise-herdr-agents
$ npx degit hockeybuggy/dotfiles/agents/skills/test-driven-development .claude/skills/test-driven-development
$ npx degit hockeybuggy/dotfiles/agents/skills/tmux .claude/skills/tmux
$ npx degit hockeybuggy/dotfiles/agents/skills/using-git-worktrees .claude/skills/using-git-worktrees
$ npx degit hockeybuggy/dotfiles/agents/skills/writing-handoffs .claude/skills/writing-handoffs
$ npx degit hockeybuggy/dotfiles/agents/skills/writing-plans .claude/skills/writing-plans
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/live-preview/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/element-attributes.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/element-attributes.md
$ curl -fsSL --create-dirs -o .claude/agents/playwright-tests.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/playwright-tests.md
$ curl -fsSL --create-dirs -o .claude/agents/request-mocking.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/request-mocking.md
$ curl -fsSL --create-dirs -o .claude/agents/running-code.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/running-code.md
$ curl -fsSL --create-dirs -o .claude/agents/session-management.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/session-management.md
$ curl -fsSL --create-dirs -o .claude/agents/spec-driven-testing.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/spec-driven-testing.md
$ curl -fsSL --create-dirs -o .claude/agents/storage-state.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/storage-state.md
$ curl -fsSL --create-dirs -o .claude/agents/test-generation.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/test-generation.md
$ curl -fsSL --create-dirs -o .claude/agents/tracing.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/tracing.md
$ curl -fsSL --create-dirs -o .claude/agents/video-recording.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/playwright-cli/references/video-recording.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/summarize/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.com/hockeybuggy/dotfiles/main/agents/skills-pi/web-browser/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-cli/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-in-pane/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-plans/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-design/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-workspace/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-test-stacks/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-prs/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-code-review/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-herdr-agents/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/mission-template.md https://raw.githubusercontent.<redacted>-herdr-agents/mission-template.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-driven-development/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-git-worktrees/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-handoffs/SKILL.md
$ curl -fsSL --create-dirs -o .claude/agents/SKILL.md https://raw.githubusercontent.<redacted>-plans/SKILL.md

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

{
  "permissions": {
    "ask": [
      "Bash(gh pr comment)",
      "Bash(gh pr comment:*)",
      "Bash(gh issue comment)",
      "Bash(gh issue comment:*)",
      "Bash(gh pr review)",
      "Bash(gh pr review:*)",
      "Bash(agy)"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "cmd=$(jq -r '.tool_input.command'); echo \"$cmd\" | grep -qE 'gh api[^|;&]*(comments|reviews)' && echo \"$cmd\" | grep -qE '(-X|--method)[ =]+(POST|PATCH|PUT|DELETE)|(^| )(-f|-F|--field|--raw-field|--input)[ =]' && printf '{\"hookSpecificOutput\""
          }
        ]
      }
    ]
  }
}

MCP servers (1)

serversourceest. tokens
Chrome DevTools MCP · "chrome-devtools" npm 9.0k

Skills (23)

Subagents (38)

live-previewLaunch a project's local dev server and drive it in a visible (headed) playwright-cli browser so the user can watch and interact alongside the agent. Use when asked to preview the site/app locally, op
playwright-cliAutomate browser interactions, test web pages and work with Playwright tests.
element-attributes—
playwright-tests—
request-mocking—
running-code—
session-management—
spec-driven-testing—
storage-state—
test-generation—
tracing—
video-recording—
summarizeFetch a URL or convert a local file (PDF/DOCX/HTML/etc.) into Markdown using `uvx markitdown`, optionally it can summarize
web-browserAllows to interact with web pages by performing actions such as clicking buttons, filling out forms, and navigating links. It works by remote controlling Google Chrome or Chromium browsers using the C
1password-cliUse the `op` CLI to sign in, read secrets, and inject them into commands or files via `op run`, `op read`, and `op inject`. Use when the user needs a credential from 1Password, wants a command run wit
broRestate your previous message in plain language — no jargon, no ceremony, just one human explaining something to another. Use when the user says 'bro', 'in plain English', 'say that again simply', 'wh
caffeinateKeep the computer awake for a set duration or while a command runs, using `caffeinate` on macOS. Use when the user wants to prevent sleep during a long-running task, download, or presentation.
commitRead this skill before making git commits
deslopStrip the slop out of work you just finished — narrating comments, single-use wrappers, defensive checks for impossible states, speculative options, redundant tests — without changing behaviour. Use w
edit-in-paneHand a file to the user in nvim in a new herdr pane, wait until they quit, then read what they wrote and carry on. Use when the user wants to answer questions, review a plan, edit a draft, or write or
executing-plansCarry out an implementation plan written with the writing-plans skill, from worktree to draft PR. Use when asked to "execute this plan", "work through the plan", or "implement the plan".
frontend-designDesign and implement distinctive, production-ready frontend interfaces with strong aesthetic direction. Use when asked to create or restyle web pages, components, or applications (HTML/CSS/JS, React,
githubInteract with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, PR review comments, and advanced queries.
google-workspaceAccess Google Workspace APIs (Drive, Docs, Calendar, Gmail, Sheets, Slides, Chat, People) via local helper scripts without MCP. Handles OAuth login and direct API calls.
herdrCreate and drive herdr panes, tabs, and workspaces, and talk to or watch other agents running in them. Put user-requested work in the user's running herdr session; reserve a named agent session for ag
isolating-test-stacksSpin up throwaway service/database stacks for tests, migrations, and ingest without touching the user's real dev stack or live data. Use when a task runs `docker compose`, database migrations, ingest
mermaidMust read guide on creating/editing mermaid charts with valiation tools
rebasing-prsRebases the current PR branch onto its base (usually `origin/main`), resolves conflicts with intent-aware decisions, and offers a safe force-push afterwards. Use when the user says "rebase", "rebase o
receiving-code-reviewGuides how to process and respond to code review feedback — categorizing comments, making changes systematically, and responding to reviewers. Use when a pull request or code has received review comme
reportProduce a self-contained, styled HTML report answering a question about the codebase. Use when the user asks for a report, a written summary, or a shareable write-up of how part of the codebase works.
shotsCapture before/after screenshots of a web UI change and embed them in a pull request description. Use when asked for before/after shots, UI screenshots for a PR, or visual evidence of a frontend chang
supervise-herdr-agentsLaunch a dedicated agent in its own herdr tab that watches your other herdr-tracked agents and reacts the moment one goes `blocked` -- auto-answering prompts it judges safe and escalating everything e
mission-template—
test-driven-developmentEnforces RED-GREEN-REFACTOR test-driven development. Use when implementing features, fixing bugs, or writing any code. Triggers on phrases like "implement this", "add a feature", "write code for", "fi
tmuxCreate and drive tmux panes, windows, and sessions. Put user-requested work in the user's current tmux context; reserve the isolated agent server for agent-only background work.
using-git-worktreesCreates and manages isolated git worktrees for feature development. Use when starting a new feature, working on a plan, or any time development work should be isolated from the main branch. Triggers o
writing-handoffsWrites a self-contained handoff document that briefs another agent or person to execute a scoped task without the originating context. Triggers when the user asks to "write a handoff", "hand this off"
writing-plansWrite an implementation plan for another, usually less capable, model to carry out with the executing-plans skill. Use when the user asks for a plan ("write a plan", "plan out the implementation", "ho

Hooks (1)

eventmatcherruns
PreToolUseBashcmd=$(jq -r '.tool_input.command'); echo "$cmd" | grep -qE 'gh api[^|;&]*(comments|reviews)' && echo "$cmd" | grep -qE '(-X|--method)[ =]+(POST|PATCH|PUT|DELETE)|(^| )(-f|-F|--field|--raw-field|--input)[ =]' && printf '{"hookSpecificOutput"

Plugins (1)

chrome-devtools-mcp@chrome-devtools-plugins

Permissions

deny (0)
—
ask (7)
Bash(gh pr comment)
Bash(gh pr comment:*)
Bash(gh issue comment)
Bash(gh issue comment:*)
Bash(gh pr review)
Bash(gh pr review:*)
Bash(agy)
allow (8)
Bash(bundle exec rspec)
Bash(bundle exec rspec:*)
Bash(uv run pytest)
Bash(uv run pytest:*)
Bash(uv run pyright)
Bash(uv run pyright:*)
Bash(uv run black --check)
Bash(uv run black --check:*)

Similar rigs

copied ✓