PontusNyberg/Graybark-workflow
Structured AI development workflow template for Claude Code. Multi-agent orchestration with specialist coding agents, parallel review, quality gates, and compound learning.
ARCHETYPE
Orchestrator
A bench of specialised subagents. The main agent mostly delegates.
Copy this rig
# review before running: this installs third-party code
$ npx degit PontusNyberg/Graybark-workflow/.claude ./rig-graybark-workflow # 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.
$ curl -fsSL --create-dirs -o .claude/agents/TEAM.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/TEAM.md $ curl -fsSL --create-dirs -o .claude/agents/backend-developer.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/backend-developer.md $ curl -fsSL --create-dirs -o .claude/agents/frontend-developer.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/frontend-developer.md $ curl -fsSL --create-dirs -o .claude/agents/product-designer.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/product-designer.md $ curl -fsSL --create-dirs -o .claude/agents/product-skeptic.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/product-skeptic.md $ curl -fsSL --create-dirs -o .claude/agents/tech-lead.md https://raw.githubusercontent.com/PontusNyberg/Graybark-workflow/master/.claude/agents/tech-lead.md
Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && bash .claude/hooks/safety-check.sh \"$CMD\" \""
},
{
"type": "command",
"command": "command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && if echo \"$CMD\" | grep -qE 'git add -A|git a"
},
{
"type": "command",
"command": "command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && if echo \"$CMD\" | grep -q 'git commit'; then"
}
]
},
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; FILE=$(cat | jq -r '.tool_input.file_path // empty') && case \"$FILE\" in *.md|*settings.json|*set"
}
]
}
]
}
} Subagents (6)
| TEAM | — |
| TODO Backend specialist name model: opus | Backend developer / API and database specialist |
| TODO Frontend specialist name model: sonnet | Frontend developer / UI and component specialist |
| TODO UX-advisor name model: haiku | Product designer / UX advisor (does not code) |
| TODO Scope-skeptic name model: haiku | Product skeptic / scope guardian (advisor, does not code) |
| TODO Tech-lead name model: sonnet | Tech Lead / system architect |
Hooks (5)
| event | matcher | runs |
|---|---|---|
| SessionStart | * | printf '{"hookSpecificOutput":{"hookEventName":"SessionStart","additionalContext":"STOP — WORKFLOW REQUIRED. Before writing any code you MUST: (1) Read .ai/rules/always.md (2) Read .ai/workflows/implement-issue.md and follow steps 1-4 inclu |
| PreToolUse | Bash | command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && bash .claude/hooks/safety-check.sh "$CMD" " |
| PreToolUse | Edit|Write | command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; FILE=$(cat | jq -r '.tool_input.file_path // empty') && case "$FILE" in *.md|*settings.json|*set |
| PreToolUse | Bash | command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && if echo "$CMD" | grep -qE 'git add -A|git a |
| PreToolUse | Bash | command -v jq >/dev/null 2>&1 || { echo 'This Graybark hook requires jq — install jq or remove the hook from .claude/settings.json'; exit 1; }; CMD=$(cat | jq -r '.tool_input.command // empty') && if echo "$CMD" | grep -q 'git commit'; then |
Slash commands (2)
/fresh-review/ship-and-watch
Similar rigs
rtk-ai/rtk
CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
Orchestrator 2.6k tok ·
Yeachan-Heo/oh-my-claudecode
Teams-first Multi-agent orchestration for Claude Code
Orchestrator 14.5k tok ·
alirezarezvani/claude-skills
380 Claude Code skills & agent skills & plugins (30+ Agents, 70+ custom commands, 380+ skills, customizable references, scripts)for Claude Code, Codex, Gemini CLI, Cursor, and 8 more coding agents — engineering, marketing, product, complian
Orchestrator 48.5k tok ·
czlonkowski/n8n-mcp
A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you
Orchestrator 3.8k tok ·