chore(skills): add start-workshop skill and update CLAUDE.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-14 09:35:07 +01:00
co-authored by Claude Opus 4.6
parent 47f65c3302
commit 3671fceeb8
2 changed files with 116 additions and 4 deletions
+112
View File
@@ -0,0 +1,112 @@
---
name: start-workshop
description: >
Start a multi-agent design workshop from a workshop brief. Use when the user says
"start workshop", "run workshop", "let's start the workshop", or invokes /start-workshop.
Parses the workshop brief to extract participants, questions, and round format.
Creates a team, tasks, and spawns agents as teammates via the Task tool.
---
# Start Workshop
## Prerequisites
A workshop brief must exist at `docs/workshops/{name}/{name}-workshop-brief.md` containing:
- **Participants** line (comma-separated agent names)
- **Questions for participants** sections with numbered questions tagged by agent name
- **Workshop Format** section defining number of rounds and their purpose
## Workflow
### 1. Parse the Brief
Read the workshop brief. Extract:
- Workshop name (from directory name)
- Participant list (from `**Participants:**` line)
- Per-participant questions (scan for `**{AgentName}**:` patterns in questions sections)
- Round count and round descriptions (from `**Workshop Format**` section)
### 2. Create Team
```
TeamCreate: team_name = "{workshop-name}", description from brief title
```
### 3. Always-Present Agents
Two agents join every workshop regardless of the participant list:
| Agent | Role | Task | Participates in discussion? |
|-------|------|------|-----------------------------|
| **Qatux** | Documenter | Captures all decisions, questions, dissent, consensus. Writes `workshop-notes.md` per round, produces final `workshop-outcomes.md`. | No — observes and records only |
| **SI** | Sprint prep | Suggest adding when outputs include tickets. Creates tickets from decisions, links to sprint backlog. | No — execution prep only |
Qatux and SI are **never dismissed early.** If the user reduces the team mid-workshop, keep qatux and si (if added). Documenting everything prevents loss of valuable information.
### 4. Create Tasks (Round 1)
One task per participant containing:
- Instruction to read the full brief at its path
- The specific questions assigned to that participant (extracted from all layers)
- The output format from the brief's round description
One task for Qatux: "Document Round 1 — read all agent responses and capture decisions, questions, and dissent."
Assign all tasks using TaskUpdate with `owner` = agent name.
### 5. Spawn Agents
Use the Task tool to spawn each agent as a teammate. Each call should:
- Set `team_name` to the workshop team name
- Set `name` to the agent name (e.g., "gestalt")
- Set `subagent_type` to the matching agent type (same as name — see reference table)
- Provide a prompt telling the agent to check TaskList for their assigned task
Spawn all agents in parallel (one Task call per agent in a single message). Agents will appear as teammates in the Claude Code UI and pick up their tasks from the shared task list.
For large workshops (>6 agents), spawn participants in batches to avoid overwhelming the system. Always-present agents (Qatux, SI) can run in background via `run_in_background: true`.
### 6. Monitor
- TaskList to check progress
- SendMessage to nudge idle agents or provide clarification
- Agents work autonomously — claim tasks, read the brief, produce responses
### 7. Between Rounds
When all Round N tasks are complete:
1. Qatux produces round summary in `workshop-notes.md`
2. Create Round N+1 tasks (integration pass, synthesis, etc.)
3. Assign to agents with TaskUpdate
4. Agents continue working
### 8. Wrap Up
**Always ask the user before wrapping up.** There may be more to discuss or additional rounds needed. Only proceed to wrap-up when the user confirms.
Wrap-up sequence:
1. Qatux produces final `workshop-outcomes.md` from accumulated notes
2. If SI is present, SI creates tickets from decided items
3. Send shutdown_request to all agents (qatux and si last, after they finish their output tasks)
4. TeamDelete to clean up
## Agent Type Reference
Agent name maps directly to subagent_type:
| Name | Domain | Typical workshop role |
|------|--------|-----------------------|
| gestalt | Systems design | Mechanics, fun factor, system interactions |
| ozzie | Player experience | Wow moments, feel, emotional response |
| tyre | Technical architect | Feasibility, performance, architecture |
| stig | UI developer | Interface patterns, layout, interaction flows |
| dudley | Server developer | Server-side systems, data flow, ECS |
| paula | Narrative | Story, dialogue, character, political depth |
| araminta | Visual design | Art direction, visual treatment, aesthetics |
| nigel | Replayability | Emergent stories, second-playthrough, sandbox |
| gore | Themes/endgame | What the game is about, philosophical questions |
| mellanie | Copywriter | In-game text, voice, tone |
| miri | Worldbuilder | Setting, factions, lore, consistency |
| inigo | Sound design | Audio, soundscape, spatial audio |
| troblum | Tech consultant | Second opinion on architecture/tech choices |
| hoshe | QA/testing | Test plans, verification, quality |
+4 -4
View File
@@ -33,10 +33,10 @@ db/
skills/ # Skill definitions
decisions/ # Decision domain files (source of truth)
README.md # Domain index and query examples
architecture.md # D-008, D-009, D-010, D-012, D-020, D-026, D-030, D-031
perception.md # D-011, D-015, D-016, D-017, D-018, D-019
content.md # D-023, D-024, D-025, D-028, D-029
scope.md # D-001, D-003, D-005, D-006, D-007, D-013, D-014, D-027
architecture.md # D-008, D-009, D-010, D-012, D-020, D-026, D-030, D-031, D-041, D-042, D-054, D-055
perception.md # D-011, D-015, D-016, D-017, D-018, D-019, D-033, D-035, D-043-D-049, D-052, D-056-D-061
content.md # D-023, D-024, D-025, D-028, D-029, D-032, D-034-D-037, D-050, D-062-D-064
scope.md # D-001, D-003, D-005, D-006, D-007, D-013, D-014, D-027, D-038, D-039, D-051, D-053, D-065
process.md # D-004, D-021, D-022
questions.md # Q-001 through Q-011
rejected.md # R-001 through R-010