Brewcode Guide
Interactive teaching skill for the brewcode/brewdoc/brewtools/brewui plugin suite.
Read-only — never modifies user project files. Only writes progress JSON.
Topic Map
| ID | Topic | Reference File |
|---|---|---|
overview | Four Plugins Overview | topic-overview.md |
installation | Installation & Updates | topic-installation.md |
killer-flow | Spec → Plan → Start | topic-killer-flow.md |
teams | Dynamic Teams | topic-teams.md |
skills-catalog | All Skills Catalog | topic-skills-catalog.md |
agents-catalog | All Agents Catalog | topic-agents-catalog.md |
customization | Build Your Own | topic-customization.md |
integration | Project Configuration | topic-integration.md |
advanced | Power Features | topic-advanced.md |
Phase 0: Validate Environment
EXECUTE using Bash tool:
bash "${CLAUDE_SKILL_DIR}/scripts/validate.sh" 2>/dev/null || echo "VALIDATE_SKIP"
If output is VALIDATE_SKIP — skip silently, continue to Phase 0.5.
Otherwise — show the health table to the user as-is.
Phase 0.5: Plugin freshness check
Before teaching anything, make sure the user's plugin suite is current.
0.5a: Check plugin status
Invoke the brewtools:plugin-update skill with the check argument. This runs in non-interactive status mode — no prompts, no side effects, just a report of installed vs available versions for brewcode, brewdoc, brewtools, brewui.
Use the Skill tool if available:
Skill(skill="brewtools:plugin-update", args="check")
Otherwise instruct the main conversation to run /brewtools:plugin-update check and capture the result.
0.5b: Evaluate result
Parse the check output. A plugin is stale if:
- it is missing (not installed), or
- its installed version is older than the marketplace version.
If all four plugins are current → skip to Phase 1 silently.
0.5c: Offer update
If any plugin is stale or missing:
AskUserQuestion:
question: "Some brewcode plugins are outdated or missing. Update now before continuing the guide?"
options:
- "Update now"
- "Show me later"
- "Skip"
Handle the response:
-
Update now → invoke the skill again with the
updateargument:Skill(skill="brewtools:plugin-update", args="update")When it finishes, continue to Phase 1. Note that a Claude Code restart or
/reload-pluginsmay be required before the new versions take effect. -
Show me later → remember this (set an internal flag
remind_update = true). Continue to Phase 1. At the end of the guide (Phase 4, final completion message), remind the user that plugins are still out of date and show the/brewtools:plugin-updatecommand. -
Skip → continue to Phase 1 without reminder.
Phase 1: Language & Progress
1a: Load Progress
EXECUTE using Bash tool:
bash "${CLAUDE_SKILL_DIR}/scripts/progress.sh" read
Store the JSON result as $PROGRESS.
1b: Language Selection (first run only)
If $PROGRESS.lang is empty:
AskUserQuestion:
question: "Which language do you prefer for the guide?"
options:
- "English"
- "Русский"
- "Português"
Map selection: English → en, Русский → ru, Português → pt.
EXECUTE using Bash tool:
bash "${CLAUDE_SKILL_DIR}/scripts/progress.sh" lang "<selected_code>"
1c: Returning User
If $PROGRESS.completed is non-empty array — greet:
Welcome back! You've completed X/9 topics.
Last session: {$PROGRESS.last_topic} on {$PROGRESS.last_ts}.
Phase 2: Route — Menu or Direct Topic
If $ARGUMENTS is non-empty:
- Match
$ARGUMENTSagainst Topic Map IDs (exact or fuzzy):- Exact match → go to Phase 3 with that topic ID
- Partial/fuzzy match (e.g., "kill" →
killer-flow, "agent" →agents-catalog) → go to Phase 3 - No match → show menu (Phase 2b)
If $ARGUMENTS is empty (Phase 2b — Menu):
-
Read welcome template:
${CLAUDE_SKILL_DIR}/references/welcome.md -
Build menu — replace
{status}markers with:✅if topic ID is in$PROGRESS.completed⬜if not
-
Show the welcome banner + menu
-
Determine recommended next topic:
- If no completions → recommend
overview(topic 1) - If Getting Started done (overview + installation) → recommend
killer-flow - If Core Workflow done → recommend
agents-catalog - Otherwise → first incomplete topic in order
- If no completions → recommend
-
AskUserQuestion:question: "Recommended next: {topic_name}. Choose a topic or follow the recommendation:" options: - "Follow recommendation" - "1 — Four Plugins Overview" - "2 — Installation & Updates" - "3 — Spec → Plan → Start" - "4 — Dynamic Teams" - "5 — Skills Catalog" - "6 — Agents Catalog" - "7 — Build Your Own" - "8 — Project Configuration" - "9 — Power Features" - "Exit guide"If "Exit guide" → stop with farewell message. Otherwise → map selection number to topic ID, go to Phase 3.
Phase 3: Deliver Topic
3a: Load Content
- Read the topic reference file:
${CLAUDE_SKILL_DIR}/references/topic-{TOPIC_ID}.md - Read diagrams:
${CLAUDE_SKILL_DIR}/references/ascii-diagrams.md
3b: Present Section by Section
The reference file has 3-4 sections (marked by ### Section N:). For each section:
-
Present the section content to the user
- Use the user's language (
$PROGRESS.lang) — translate content if noten - Include relevant ASCII diagrams when referenced
- Show CLI commands as ready-to-copy code blocks
- Use the user's language (
-
After each section, ask:
AskUserQuestion(for non-last sections):question: "What would you like to do?" options: - "Continue to next section" - "Show me an example" - "Go deeper" - "Skip to next topic" - "Back to menu" - "Exit guide"AskUserQuestion(for the last section):question: "You've finished this topic! What next?" options: - "Show me an example" - "Go deeper" - "Next topic" - "Back to menu" - "Exit guide"Handle responses:
- Continue → present next section
- Show me an example → generate a practical example relevant to the current section. Use the user's project context if available (read CLAUDE.md, check
.claude/structure). Base examples only on loaded reference files and project state. - Go deeper → expand on the current section using ONLY information from loaded reference files, ascii-diagrams.md, and WebSearch results. Do not invent features or details not found in these sources.
- Skip to next topic → go to Phase 2b (do NOT mark topic as complete)
- Next topic → go to Phase 4
- Back to menu → go to Phase 2b (do NOT mark topic as complete)
- Exit guide → go to Phase 4, then stop
-
After "Next topic" or "Exit guide" from last section → go to Phase 4
Phase 4: Update Progress
4a: Mark Complete
EXECUTE using Bash tool:
bash "${CLAUDE_SKILL_DIR}/scripts/progress.sh" complete "{TOPIC_ID}"
4b: Recommend Next
-
Reload progress: EXECUTE using Bash tool:
bash "${CLAUDE_SKILL_DIR}/scripts/progress.sh" status -
Show completion status to user
-
If all 9 topics completed:
Congratulations! You've completed the full guide. You now know everything about the brewcode plugin suite. Useful next steps: - Run /brewcode:setup in your project - Create a team with /brewcode:teams create - Start a task with /brewcode:spec "your task description"Stop.
-
Otherwise — recommend next incomplete topic:
AskUserQuestion:question: "Continue to the next topic?" options: - "Yes — {next_topic_name}" - "Back to menu" - "Exit guide"- Yes → go to Phase 3 with next topic
- Back to menu → go to Phase 2b
- Exit guide → farewell mes