~ / rigs / dtsong / claude-code-wsl-setup

dtsong/claude-code-wsl-setup

Multi-agent Claude Code setup for Windows/WSL with smart notifications, auto-formatting, and parallel agentic development workflows. Based on Boris Cherney (Claude Code creator)'s workflow.

↗ GitHub ★ 1 MIT updated 4mo ago personal setup Claude Code
share on X
ARCHETYPE
Orchestrator
A bench of specialised subagents. The main agent mostly delegates.
CONTEXT TAX · EVERY TURN
~7.0k tokens
Heavy · median rig: 2.3k · breakdown
GUARDRAILS
2/5
Blocks destructive commands · No YOLO mode · details

Copy this rig

# review before running: this installs third-party code
$ npx degit dtsong/claude-code-wsl-setup/agents ./rig-claude-code-wsl-setup/agents
$ npx degit dtsong/claude-code-wsl-setup/commands ./rig-claude-code-wsl-setup/commands
$ npx degit dtsong/claude-code-wsl-setup/skills ./rig-claude-code-wsl-setup/skills
$ npx degit dtsong/claude-code-wsl-setup/hooks ./rig-claude-code-wsl-setup/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.

$ npx degit dtsong/claude-code-wsl-setup/pipeline/templates/skill-suite/skills/specialist-template .claude/skills/specialist-template
$ npx degit dtsong/claude-code-wsl-setup/skills/cicd-generation .claude/skills/cicd-generation
$ npx degit dtsong/claude-code-wsl-setup/skills/code-search .claude/skills/code-search
$ npx degit dtsong/claude-code-wsl-setup/skills/dbt-skill .claude/skills/dbt-skill
$ npx degit dtsong/claude-code-wsl-setup/skills/dockerfile-generation .claude/skills/dockerfile-generation
$ npx degit dtsong/claude-code-wsl-setup/skills/evaluate-diagram .claude/skills/evaluate-diagram
$ npx degit dtsong/claude-code-wsl-setup/skills/generate-diagram .claude/skills/generate-diagram
$ npx degit dtsong/claude-code-wsl-setup/skills/generate-plot .claude/skills/generate-plot
$ npx degit dtsong/claude-code-wsl-setup/skills/git-status .claude/skills/git-status
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows .claude/skills/git-workflows
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/abort .claude/skills/abort
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/branch .claude/skills/branch
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/branches .claude/skills/branches
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/conflicts .claude/skills/conflicts
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/delete-branch .claude/skills/delete-branch
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/merge-main .claude/skills/merge-main
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/pull .claude/skills/pull
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/push .claude/skills/push
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/rebase .claude/skills/rebase
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/squash .claude/skills/squash
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/stash .claude/skills/stash
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/switch .claude/skills/switch
$ npx degit dtsong/claude-code-wsl-setup/skills/git-workflows/skills/sync .claude/skills/sync
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow .claude/skills/github-workflow
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-activity .claude/skills/gh-activity
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-changelog .claude/skills/gh-changelog
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-health .claude/skills/gh-health
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-issue .claude/skills/gh-issue
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-mine .claude/skills/gh-mine
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-pr-merge .claude/skills/gh-pr-merge
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-pr-request .claude/skills/gh-pr-request
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-pr-respond .claude/skills/gh-pr-respond
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-pr-status .claude/skills/gh-pr-status
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-pr-update .claude/skills/gh-pr-update
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-release .claude/skills/gh-release
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-tag .claude/skills/gh-tag
$ npx degit dtsong/claude-code-wsl-setup/skills/github-workflow/skills/gh-triage .claude/skills/gh-triage
$ npx degit dtsong/claude-code-wsl-setup/skills/helm-generation .claude/skills/helm-generation
$ npx degit dtsong/claude-code-wsl-setup/skills/language-conventions .claude/skills/language-conventions
$ npx degit dtsong/claude-code-wsl-setup/skills/prompt-wizard .claude/skills/prompt-wizard
$ curl -fsSL --create-dirs -o .claude/agents/council-advocate.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-advocate.md
$ curl -fsSL --create-dirs -o .claude/agents/council-alchemist.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-alchemist.md
$ curl -fsSL --create-dirs -o .claude/agents/council-architect.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-architect.md
$ curl -fsSL --create-dirs -o .claude/agents/council-artisan.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-artisan.md
$ curl -fsSL --create-dirs -o .claude/agents/council-chronicler.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-chronicler.md
$ curl -fsSL --create-dirs -o .claude/agents/council-cipher.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-cipher.md
$ curl -fsSL --create-dirs -o .claude/agents/council-craftsman.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-craftsman.md
$ curl -fsSL --create-dirs -o .claude/agents/council-forge.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-forge.md
$ curl -fsSL --create-dirs -o .claude/agents/council-guardian.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-guardian.md
$ curl -fsSL --create-dirs -o .claude/agents/council-herald.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-herald.md
$ curl -fsSL --create-dirs -o .claude/agents/council-operator.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-operator.md
$ curl -fsSL --create-dirs -o .claude/agents/council-oracle.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-oracle.md
$ curl -fsSL --create-dirs -o .claude/agents/council-pathfinder.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-pathfinder.md
$ curl -fsSL --create-dirs -o .claude/agents/council-prover.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-prover.md
$ curl -fsSL --create-dirs -o .claude/agents/council-scout.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-scout.md
$ curl -fsSL --create-dirs -o .claude/agents/council-sentinel.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-sentinel.md
$ curl -fsSL --create-dirs -o .claude/agents/council-skeptic.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-skeptic.md
$ curl -fsSL --create-dirs -o .claude/agents/council-steward.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-steward.md
$ curl -fsSL --create-dirs -o .claude/agents/council-strategist.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-strategist.md
$ curl -fsSL --create-dirs -o .claude/agents/council-tuner.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-tuner.md
$ curl -fsSL --create-dirs -o .claude/agents/council-warden.md https://raw.githubusercontent.com/dtsong/claude-code-wsl-setup/main/agents/council-warden.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(rm -rf /*)",
      "Bash(rm -rf ~)",
      "Bash(rm -rf ~/*)",
      "Bash(sudo rm:*)",
      "Bash(sudo dd:*)",
      "Bash(mkfs:*)",
      "Bash(chmod -R 777 /)",
      "Bash(chown -R:*)"
    ]
  }
}

Skills (56)

Subagents (21)

Advocate
model: claude-opus-4-6
Council Green Lens — user experience, product thinking, accessibility
Alchemist
model: claude-opus-4-6
Council Indigo Lens — data engineering, data science, ML workflows, analytics
Architect
model: claude-opus-4-6
Council Blue Lens — system design, data models, APIs, integration patterns
Artisan
model: claude-opus-4-6
Council Rose Lens — visual design, design systems, motion
Chronicler
model: claude-opus-4-6
Council Ivory Lens — documentation, knowledge architecture, onboarding
Cipher
model: claude-opus-4-6
Council Obsidian Lens — cryptographic engineering, protocol security, key management, post-quantum readiness
Craftsman
model: claude-opus-4-6
Council Purple Lens — DX, testing strategy, code quality, patterns
Forge
model: claude-opus-4-6
Council Graphite Lens — microarchitecture, silicon design, RTL security, timing closure, physical implementation
Guardian
model: claude-opus-4-6
Council Silver Lens — compliance, governance, privacy
Herald
model: claude-opus-4-6
Council Bronze Lens — growth, monetization, onboarding, retention
Operator
model: claude-opus-4-6
Council Orange Lens — DevOps, deployment, infrastructure, monitoring
Oracle
model: claude-opus-4-6
Council Violet Lens — AI/LLM integration, RAG, prompt engineering
Pathfinder
model: claude-opus-4-6
Council Coral Lens — mobile, cross-platform, native apps
Prover
model: claude-opus-4-6
Council Pearl Lens — formal methods, mathematical verification, security invariants, property specification
Scout
model: claude-opus-4-6
Council Cyan Lens — research, precedent, external knowledge
Sentinel
model: claude-opus-4-6
Council Titanium Lens — IoT, embedded, edge, device protocols
Skeptic
model: claude-opus-4-6
Council Red Lens — risk assessment, devil's advocate, security
Steward
model: claude-opus-4-6
Council Platinum Lens — orchestration, synthesis, facilitation (Maestro persona)
Strategist
model: claude-opus-4-6
Council Gold Lens — business value, scope, MVP, prioritization
Tuner
model: claude-opus-4-6
Council Amber Lens — performance, scalability, optimization, capacity planning
Warden
model: claude-opus-4-6
Council Slate Lens — OS kernel security, process isolation, privilege boundaries, HW/SW security interface

Hooks (5)

eventmatcherruns
Notification*~/.claude/hooks/notify.sh
Stop*~/.claude/hooks/stop.sh
PostToolUseWrite|Edit|MultiEdit~/.claude/hooks/format.sh
PostToolUseTaskUpdatebash hooks/acceptance-gate.sh
PreCompactautobash "$HOME/.claude/hooks/pre-compact-handover.sh"

Slash commands (30)

/_council-engine/brainstorm/careful/commit-push-pr/commit/council/create-issues/diagnose/fix/freeze/g/handover/implement/lint/looper/map/new-mcp-server/new-python/new-terraform/new-typescript/ops/qa/ralf/references/ship-review-rules/references/ship-state-schema/review/roadmap-executor/ship/simplify/test

Plugins (8)

claude-hud@claude-hudcode-simplifier@claude-plugins-officialsuperpowers@claude-plugins-officialpr-review-toolkit@claude-plugins-officialterraform-skill@antonbabenkofrontend-design@claude-plugins-officialswift-lsp@claude-plugins-officialfigma@claude-plugins-official

Permissions

deny (9)
Bash(rm -rf /)
Bash(rm -rf /*)
Bash(rm -rf ~)
Bash(rm -rf ~/*)
Bash(sudo rm:*)
Bash(sudo dd:*)
Bash(mkfs:*)
Bash(chmod -R 777 /)
Bash(chown -R:*)
ask (0)
—
allow (75)
Bash(npm:*)
Bash(npx:*)
Bash(yarn:*)
Bash(pnpm:*)
Bash(node:*)
Bash(bun:*)
Bash(deno:*)
Bash(git:*)
Bash(gh:*)
Bash(ls:*)
Bash(cat:*)
Bash(head:*)
Bash(tail:*)
Bash(less:*)
Bash(more:*)
Bash(grep:*)
Bash(rg:*)
Bash(find:*)
Bash(fd:*)
Bash(wc:*)
Bash(sort:*)
Bash(uniq:*)
Bash(diff:*)
Bash(echo:*)
Bash(printf:*)
Bash(pwd:*)
Bash(cd:*)
Bash(mkdir:*)
Bash(touch:*)
Bash(cp:*)
Bash(mv:*)
Bash(basename:*)
Bash(dirname:*)
Bash(realpath:*)
Bash(which:*)
Bash(whereis:*)
Bash(type:*)
Bash(file:*)
Bash(stat:*)
Bash(tree:*)
Bash(prettier:*)
Bash(eslint:*)
Bash(tsc:*)
Bash(jest:*)
Bash(vitest:*)
Bash(mocha:*)
Bash(python:*)
Bash(python3:*)
Bash(pip:*)
Bash(pip3:*)
Bash(pytest:*)
Bash(black:*)
Bash(ruff:*)
Bash(go:*)
Bash(cargo:*)
Bash(rustc:*)
Bash(make:*)
Bash(cmake:*)
Bash(docker compose:*)
Bash(docker-compose:*)

Similar rigs

copied ✓