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:
@@ -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 |
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user