maestro-flow 0.3.48 → 0.3.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/.claude/agents/impeccable-agent.md +99 -0
  2. package/.claude/commands/maestro-analyze.md +2 -2
  3. package/.claude/commands/maestro-brainstorm.md +116 -112
  4. package/.claude/commands/maestro-composer.md +5 -0
  5. package/.claude/commands/maestro-impeccable.md +46 -9
  6. package/.claude/commands/maestro-merge.md +3 -0
  7. package/.claude/commands/maestro-roadmap.md +5 -1
  8. package/.claude/commands/maestro-ui-craft.md +56 -4
  9. package/.claude/commands/maestro.md +1 -1
  10. package/.claude/commands/manage-issue-discover.md +4 -0
  11. package/.claude/commands/quality-refactor.md +3 -0
  12. package/.claude/skills/maestro-help/index/catalog.json +1 -1
  13. package/.claude/skills/maestro-help/phases/01-parse-intent.md +1 -1
  14. package/.claude/skills/maestro-impeccable/SKILL.md +3 -1
  15. package/.codex/skills/maestro/SKILL.md +3 -3
  16. package/.codex/skills/maestro-brainstorm/SKILL.md +19 -2
  17. package/.codex/skills/maestro-composer/SKILL.md +5 -0
  18. package/.codex/skills/maestro-help/catalog.json +1 -1
  19. package/.codex/skills/maestro-impeccable/SKILL.md +24 -5
  20. package/.codex/skills/maestro-merge/SKILL.md +3 -0
  21. package/.codex/skills/maestro-milestone-audit/SKILL.md +64 -7
  22. package/.codex/skills/maestro-quick/SKILL.md +1 -1
  23. package/.codex/skills/maestro-roadmap/SKILL.md +1 -1
  24. package/.codex/skills/maestro-tools-execute/SKILL.md +1 -1
  25. package/.codex/skills/maestro-tools-register/SKILL.md +1 -1
  26. package/.codex/skills/maestro-ui-craft/SKILL.md +51 -6
  27. package/.codex/skills/quality-refactor/SKILL.md +114 -22
  28. package/chains/_intent-map.json +1 -1
  29. package/chains/singles/ui-design.json +4 -4
  30. package/chains/{ui-design-driven.json → ui-craft-build.json} +8 -8
  31. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +3 -3
  32. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  33. package/dist/src/commands/delegate.d.ts.map +1 -1
  34. package/dist/src/commands/delegate.js +12 -7
  35. package/dist/src/commands/delegate.js.map +1 -1
  36. package/dist/src/commands/impeccable.d.ts +2 -1
  37. package/dist/src/commands/impeccable.d.ts.map +1 -1
  38. package/dist/src/commands/impeccable.js +80 -1
  39. package/dist/src/commands/impeccable.js.map +1 -1
  40. package/package.json +1 -1
  41. package/templates/planning-roles/ui-designer.md +86 -99
  42. package/templates/workflows/specs/node-catalog.md +1 -1
  43. package/workflows/brainstorm.md +26 -0
  44. package/workflows/cli-tools-usage.md +9 -26
  45. package/workflows/delegate-usage.md +301 -343
  46. package/workflows/impeccable/design.md +462 -0
  47. package/workflows/impeccable/explore.md +157 -0
  48. package/workflows/impeccable/shape.md +4 -0
  49. package/workflows/impeccable/ui-search/__pycache__/core.cpython-313.pyc +0 -0
  50. package/workflows/impeccable/ui-search/__pycache__/design_system.cpython-313.pyc +0 -0
  51. package/workflows/impeccable/ui-search/core.py +262 -0
  52. package/workflows/impeccable/ui-search/data/app-interface.csv +31 -0
  53. package/workflows/impeccable/ui-search/data/charts.csv +26 -0
  54. package/workflows/impeccable/ui-search/data/colors.csv +162 -0
  55. package/workflows/impeccable/ui-search/data/design.csv +1776 -0
  56. package/workflows/impeccable/ui-search/data/draft.csv +1779 -0
  57. package/workflows/impeccable/ui-search/data/google-fonts.csv +1924 -0
  58. package/workflows/impeccable/ui-search/data/icons.csv +106 -0
  59. package/workflows/impeccable/ui-search/data/landing.csv +35 -0
  60. package/workflows/impeccable/ui-search/data/products.csv +162 -0
  61. package/workflows/impeccable/ui-search/data/react-performance.csv +45 -0
  62. package/workflows/impeccable/ui-search/data/stacks/angular.csv +51 -0
  63. package/workflows/impeccable/ui-search/data/stacks/astro.csv +54 -0
  64. package/workflows/impeccable/ui-search/data/stacks/flutter.csv +53 -0
  65. package/workflows/impeccable/ui-search/data/stacks/html-tailwind.csv +56 -0
  66. package/workflows/impeccable/ui-search/data/stacks/jetpack-compose.csv +53 -0
  67. package/workflows/impeccable/ui-search/data/stacks/laravel.csv +51 -0
  68. package/workflows/impeccable/ui-search/data/stacks/nextjs.csv +53 -0
  69. package/workflows/impeccable/ui-search/data/stacks/nuxt-ui.csv +51 -0
  70. package/workflows/impeccable/ui-search/data/stacks/nuxtjs.csv +59 -0
  71. package/workflows/impeccable/ui-search/data/stacks/react-native.csv +52 -0
  72. package/workflows/impeccable/ui-search/data/stacks/react.csv +54 -0
  73. package/workflows/impeccable/ui-search/data/stacks/shadcn.csv +61 -0
  74. package/workflows/impeccable/ui-search/data/stacks/svelte.csv +54 -0
  75. package/workflows/impeccable/ui-search/data/stacks/swiftui.csv +51 -0
  76. package/workflows/impeccable/ui-search/data/stacks/threejs.csv +54 -0
  77. package/workflows/impeccable/ui-search/data/stacks/vue.csv +50 -0
  78. package/workflows/impeccable/ui-search/data/styles.csv +85 -0
  79. package/workflows/impeccable/ui-search/data/typography.csv +74 -0
  80. package/workflows/impeccable/ui-search/data/ui-reasoning.csv +162 -0
  81. package/workflows/impeccable/ui-search/data/ux-guidelines.csv +100 -0
  82. package/workflows/impeccable/ui-search/design_system.py +1148 -0
  83. package/workflows/impeccable/ui-search/prototype-template.html +511 -0
  84. package/workflows/impeccable/ui-search/render-prototype.js +208 -0
  85. package/workflows/impeccable/ui-search/search.py +114 -0
  86. package/workflows/maestro-chain-execute.md +2 -2
  87. package/workflows/maestro.codex.md +3 -3
  88. package/workflows/maestro.md +5 -5
  89. package/workflows/plan.md +1 -1
  90. package/workflows/ui-design.md +1 -1
  91. package/workflows/ui-style.md +1 -1
  92. package/.claude/commands/maestro-ui-design.md +0 -104
  93. package/.codex/skills/maestro-ui-design/SKILL.md +0 -242
@@ -0,0 +1,99 @@
1
+ ---
2
+ name: impeccable-agent
3
+ description: Autonomous executor for non-interactive impeccable commands. Runs audit, polish, harden, layout, typeset, and other automatable design operations without user interaction.
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Edit
8
+ - Glob
9
+ - Grep
10
+ - Bash
11
+ - Skill
12
+ ---
13
+
14
+ # Impeccable Agent
15
+
16
+ Autonomous design operations agent. Executes impeccable commands that don't require user interaction, enabling parallel and delegated UI quality work.
17
+
18
+ ## Allowed Commands
19
+
20
+ Commands are classified by interaction level. This agent can execute **non-interactive** and **conditionally interactive** commands autonomously.
21
+
22
+ ### Non-Interactive (always safe to execute)
23
+
24
+ | Command | Category | What it does |
25
+ |---------|----------|-------------|
26
+ | audit | Evaluate | Technical quality checks, produces score |
27
+ | critique | Evaluate | UX review with heuristic scoring, produces score + findings |
28
+ | polish | Refine | Final quality pass, applies fixes |
29
+ | harden | Refine | Production edge cases: errors, i18n, overflow |
30
+ | onboard | Refine | First-run flows, empty states |
31
+ | typeset | Enhance | Improve typography hierarchy |
32
+ | layout | Enhance | Fix spacing, rhythm, visual hierarchy |
33
+ | adapt | Fix | Responsive/device adaptations |
34
+ | optimize | Fix | UI performance fixes |
35
+ | clarify | Fix | Improve UX copy and labels |
36
+ | explore | Build | Multi-style comparison (auto-selects variant 1 in agent mode) |
37
+
38
+ ### Conditionally Interactive (safe with sufficient context)
39
+
40
+ These commands ask questions only "if unclear from codebase". When PRODUCT.md and DESIGN.md exist, they typically run without interaction.
41
+
42
+ | Command | Category | Condition for autonomy |
43
+ |---------|----------|----------------------|
44
+ | bolder | Refine | PRODUCT.md exists (personality context available) |
45
+ | quieter | Refine | PRODUCT.md exists |
46
+ | distill | Refine | Target file exists and is readable |
47
+ | animate | Enhance | DESIGN.md exists (motion context available) |
48
+ | colorize | Enhance | DESIGN.md exists (color palette available) |
49
+ | delight | Enhance | PRODUCT.md exists (brand context available) |
50
+ | extract | Build | Design system directory exists |
51
+
52
+ ### NEVER Execute (require user interaction)
53
+
54
+ | Command | Reason |
55
+ |---------|--------|
56
+ | teach | Interview to create PRODUCT.md |
57
+ | shape | Discovery interview + brief confirmation |
58
+ | craft | Multiple user gates |
59
+ | live | Interactive browser session |
60
+ | overdrive | Requires explicit user creative vision |
61
+ | document | Requires creative input for design system |
62
+
63
+ ## Execution Protocol
64
+
65
+ 1. **Load context**: Run `maestro impeccable load-context` to load PRODUCT.md and DESIGN.md
66
+ 2. **Validate command**: Check the requested command is in the allowed list above
67
+ 3. **Execute**: `Skill({ skill: "maestro-impeccable", args: "{command} {target} --skip-harvest -y" })`
68
+ - Always pass `-y` to auto-confirm where the skill allows
69
+ - Pass `--skip-harvest` — the caller handles harvest if needed
70
+ 4. **Report**: Return the command output (scores, changes made, findings)
71
+
72
+ ## Usage Pattern
73
+
74
+ The agent receives a prompt describing which impeccable command(s) to run and on what target:
75
+
76
+ ```
77
+ Run impeccable audit on src/pages/ then polish any P0 findings.
78
+ ```
79
+
80
+ ```
81
+ Run critique on src/components/dashboard.html and report the score.
82
+ ```
83
+
84
+ ```
85
+ Run these commands sequentially on src/pages/landing.html:
86
+ 1. layout
87
+ 2. typeset
88
+ 3. polish
89
+ ```
90
+
91
+ ## Multi-Command Sequences
92
+
93
+ When given multiple commands, execute sequentially. If a command fails, report the failure and continue with remaining commands unless the failure is blocking.
94
+
95
+ ## Context Requirements
96
+
97
+ - `.workflow/impeccable/PRODUCT.md` should exist for conditionally interactive commands
98
+ - `.workflow/impeccable/DESIGN.md` should exist for color/typography-aware commands
99
+ - If either is missing, restrict to non-interactive commands only
@@ -79,7 +79,7 @@ Phase 4: Output context.md for downstream plan --gaps
79
79
  **Next-step routing on completion:**
80
80
 
81
81
  Phase/Milestone scope:
82
- - Go recommendation, UI work needed → `/maestro-ui-design {phase}`
82
+ - Go recommendation, UI work needed → `/maestro-ui-craft --chain build {target}`
83
83
  - Go recommendation, ready to plan → `/maestro-plan` or `/maestro-plan {phase}`
84
84
  - No-Go recommendation → revisit requirements or `/maestro-brainstorm {topic}`
85
85
 
@@ -129,5 +129,5 @@ Both modes (full + quick):
129
129
  - [ ] Scope creep redirected to Deferred section
130
130
  - [ ] Deferred items auto-created as issues (if any)
131
131
  - [ ] Artifact registered in state.json with correct scope/milestone/phase
132
- - [ ] Next step routed (ui-design/plan for Go, brainstorm for No-Go)
132
+ - [ ] Next step routed (ui-craft/plan for Go, brainstorm for No-Go)
133
133
  </success_criteria>
@@ -1,112 +1,116 @@
1
- ---
2
- name: maestro-brainstorm
3
- description: Brainstorm with auto pipeline or single-role analysis
4
- argument-hint: "[topic|role-name] [--yes] [--count N] [--session ID] [--update] [--skip-questions] [--include-questions] [--style-skill PKG]"
5
- allowed-tools:
6
- - Read
7
- - Write
8
- - Bash
9
- - Glob
10
- - Grep
11
- - Agent
12
- - AskUserQuestion
13
- ---
14
- <purpose>
15
- Unified brainstorming combining interactive framework generation, multi-role parallel analysis, and cross-role synthesis. Two modes: Auto (full pipeline with guidance-specification → parallel role analysis → synthesis) and Single Role (individual role analysis for an existing session). Outputs structured artifacts in .brainstorming/ directory ready for downstream planning.
16
- </purpose>
17
-
18
- <required_reading>
19
- @~/.maestro/workflows/brainstorm.md
20
- </required_reading>
21
-
22
- <deferred_reading>
23
- - [scratch-index.json](~/.maestro/templates/scratch-index.json) — read when operating in scratch mode
24
- - [index.json](~/.maestro/templates/index.json) — read when operating in phase mode
25
- - [brainstorm-visualize.md](~/.maestro/workflows/brainstorm-visualize.md) — read when html-prototypes/ produced and user wants to browse them
26
- </deferred_reading>
27
-
28
- <context>
29
- $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
30
-
31
- **Auto mode**: topic text (e.g., "Build real-time collaboration platform") triggers full pipeline.
32
- **Single role mode**: valid role name (e.g., "system-architect") runs one role analysis.
33
- **All output** goes to `.workflow/scratch/{YYYYMMDD}-brainstorm-{slug}/`.
34
- **Artifact registration**: On completion, registers artifact (type=brainstorm) in state.json.
35
- **Output boundary**: ALL file writes MUST target `{output_dir}/` or `.workflow/state.json` only. NEVER modify source code or files outside these paths.
36
-
37
- **Valid roles**: data-architect, product-manager, product-owner, scrum-master, subject-matter-expert, system-architect, test-strategist, ui-designer, ux-expert
38
-
39
- **Flags**:
40
- - `--yes` / `-y`: Auto mode, skip interactive questions, use defaults
41
- - `--count N`: Number of roles to select (default 3, max 9)
42
- - `--session ID`: Use existing session
43
- - `--update`: Update existing analysis (single role)
44
- - `--skip-questions`: Skip context gathering questions
45
- - `--include-questions`: Force context gathering even if analysis exists
46
- - `--style-skill PKG`: Style package for ui-designer role
47
-
48
- ### Role Knowledge
49
- 1. Browse accumulated knowledge for this role:
50
- `maestro wiki list --category arch`
51
- 2. Analyze the index, identify entries relevant to the current task
52
- 3. Load selected documents:
53
- `maestro wiki load <id1> [id2] [id3...]`
54
- 4. Review loaded knowledge before proceeding
55
- </context>
56
-
57
- <execution>
58
- Follow '~/.maestro/workflows/brainstorm.md' completely.
59
-
60
- **Next-step routing on completion:**
61
-
62
- Auto mode:
63
- - Project not initialized → Skill({ skill: "maestro-init" })
64
- - Project initialized, need spec package → Skill({ skill: "maestro-roadmap", args: "--mode full --from-brainstorm {session_id}" })
65
- - Project initialized, quick roadmap → Skill({ skill: "maestro-roadmap", args: "--from-brainstorm {session_id}" })
66
- - Need deeper analysis first → Skill({ skill: "maestro-analyze", args: "{topic}" })
67
- - `html-prototypes/` produced with 2+ files and user wants to browse → load `~/.maestro/workflows/brainstorm-visualize.md` and launch visualizer server (optional, user-triggered)
68
-
69
- Single role mode:
70
- - More roles needed → Skill({ skill: "maestro-brainstorm", args: "{next_role} --session {session_id}" })
71
- - All roles done, run synthesisSkill({ skill: "maestro-brainstorm", args: "{topic} --session {session_id}" })
72
- </execution>
73
-
74
- <error_codes>
75
- | Code | Severity | Condition | Recovery |
76
- |------|----------|-----------|----------|
77
- | E001 | error | Topic or role argument required | Prompt user for topic text or role name |
78
- | E002 | error | No active session for single role mode | Guide user to run auto mode first |
79
- | E003 | error | Invalid role name | Show valid roles list |
80
- | W001 | warning | Fewer than 10 ideas in divergent phase | Proceed with available ideas |
81
- | W002 | warning | Project context (.workflow/) not found | Continue without project context |
82
- | W003 | warning | Role template not found | Use generic analysis structure |
83
- | W004 | warning | Validation score < 60 | Log warning, suggest manual review |
84
- | W005 | warning | External research agent failed | Continue without designResearchContext |
85
- </error_codes>
86
-
87
- <success_criteria>
88
- **Auto mode**:
89
- - [ ] guidance-specification.md with RFC 2119 keywords, terminology, non-goals, feature decomposition
90
- - [ ] design-research.md persisted when Step 1.7 external research ran (fail-soft: absence not a failure)
91
- - [ ] Spec Review Gate passed (Step 3.5) or `--yes` bypassed
92
- - [ ] Role analysis files for each selected NON-UI role in `.brainstorming/{role}/`
93
- - [ ] If `ui-designer` in selected_roles: `ui-designer/analysis.md` exists AND exactly one of `html-prototypes/` / `ascii-mockups/` / `api-sketches/` exists with `README.md` + ≥1 prototype file
94
- - [ ] ui-designer/analysis.md references each prototype via `@-notation`
95
- - [ ] HTML prototypes are self-contained (no external `<link>`/`<script src>` URLs warn only)
96
- - [ ] Feature specs in `.brainstorming/feature-specs/` (or synthesis-specification.md)
97
- - [ ] UI-bearing feature specs reference the corresponding prototype in Section 3 (Interface Contract)
98
- - [ ] feature-index.json and synthesis-changelog.md
99
- - [ ] Final Output Gate passed (Step 5.5) or `--yes` bypassed
100
- - [ ] All user decisions captured with Decision Recording Protocol
101
- - [ ] Session metadata updated with completion status
102
- - [ ] Confidence scored per role completion and after cross-role analysis
103
- - [ ] Readiness gate checked before spec generation
104
- - [ ] Pressure pass completed on at least 1 feature spec
105
- - [ ] Confidence summary appended to synthesis-changelog.md
106
-
107
- **Single role mode**:
108
- - [ ] analysis.md written to `{output_dir}/{role}/`
109
- - [ ] Feature-point organization used when feature list available
110
- - [ ] Framework reference included when guidance-specification.md exists
111
- - [ ] Session metadata updated
112
- </success_criteria>
1
+ ---
2
+ name: maestro-brainstorm
3
+ description: Brainstorm with auto pipeline or single-role analysis
4
+ argument-hint: "[topic|role-name] [--yes] [--count N] [--session ID] [--update] [--skip-questions] [--include-questions] [--style-skill PKG]"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Bash
9
+ - Glob
10
+ - Grep
11
+ - Agent
12
+ - AskUserQuestion
13
+ ---
14
+ <purpose>
15
+ Unified brainstorming combining interactive framework generation, multi-role parallel analysis, and cross-role synthesis. Two modes: Auto (full pipeline with guidance-specification → parallel role analysis → synthesis) and Single Role (individual role analysis for an existing session). Outputs structured artifacts in .brainstorming/ directory ready for downstream planning.
16
+ </purpose>
17
+
18
+ <required_reading>
19
+ @~/.maestro/workflows/brainstorm.md
20
+ </required_reading>
21
+
22
+ <deferred_reading>
23
+ - [scratch-index.json](~/.maestro/templates/scratch-index.json) — read when operating in scratch mode
24
+ - [index.json](~/.maestro/templates/index.json) — read when operating in phase mode
25
+ - [brainstorm-visualize.md](~/.maestro/workflows/brainstorm-visualize.md) — read when html-prototypes/ produced and user wants to browse them
26
+ </deferred_reading>
27
+
28
+ <context>
29
+ $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
30
+
31
+ **Auto mode**: topic text (e.g., "Build real-time collaboration platform") triggers full pipeline.
32
+ **Single role mode**: valid role name (e.g., "system-architect") runs one role analysis.
33
+ **All output** goes to `.workflow/scratch/{YYYYMMDD}-brainstorm-{slug}/`.
34
+ **Artifact registration**: On completion, registers artifact (type=brainstorm) in state.json.
35
+ **Output boundary**: ALL file writes MUST target `{output_dir}/` or `.workflow/state.json` only. NEVER modify source code or files outside these paths.
36
+
37
+ **Valid roles**: data-architect, product-manager, product-owner, scrum-master, subject-matter-expert, system-architect, test-strategist, ui-designer, ux-expert
38
+
39
+ **Flags**:
40
+ - `--yes` / `-y`: Auto mode, skip interactive questions, use defaults
41
+ - `--count N`: Number of roles to select (default 3, max 9)
42
+ - `--session ID`: Use existing session
43
+ - `--update`: Update existing analysis (single role)
44
+ - `--skip-questions`: Skip context gathering questions
45
+ - `--include-questions`: Force context gathering even if analysis exists
46
+ - `--style-skill PKG`: Style package for ui-designer role
47
+
48
+ ### Pre-load specs
49
+ 1. **Architecture specs**: Run `maestro spec load --category arch` to load architecture constraints. Use as context for multi-role analysis — ensures roles respect documented decisions.
50
+ 2. Optional proceed without if unavailable.
51
+
52
+ ### Role Knowledge
53
+ 1. Browse accumulated knowledge for this role:
54
+ `maestro wiki list --category arch`
55
+ 2. Analyze the index, identify entries relevant to the current task
56
+ 3. Load selected documents:
57
+ `maestro wiki load <id1> [id2] [id3...]`
58
+ 4. Review loaded knowledge before proceeding
59
+ </context>
60
+
61
+ <execution>
62
+ Follow '~/.maestro/workflows/brainstorm.md' completely.
63
+
64
+ **Next-step routing on completion:**
65
+
66
+ Auto mode:
67
+ - Project not initialized Skill({ skill: "maestro-init" })
68
+ - Project initialized, need spec package → Skill({ skill: "maestro-roadmap", args: "--mode full --from-brainstorm {session_id}" })
69
+ - Project initialized, quick roadmap → Skill({ skill: "maestro-roadmap", args: "--from-brainstorm {session_id}" })
70
+ - Need deeper analysis first → Skill({ skill: "maestro-analyze", args: "{topic}" })
71
+ - `html-prototypes/` produced with 2+ files and user wants to browse load `~/.maestro/workflows/brainstorm-visualize.md` and launch visualizer server (optional, user-triggered)
72
+ - DESIGN.md established during Step 3.5 → suggest: "Run `/maestro-ui-craft <feature-description> --chain build` to build with the established design system"
73
+
74
+ Single role mode:
75
+ - More roles needed Skill({ skill: "maestro-brainstorm", args: "{next_role} --session {session_id}" })
76
+ - All roles done, run synthesis → Skill({ skill: "maestro-brainstorm", args: "{topic} --session {session_id}" })
77
+ </execution>
78
+
79
+ <error_codes>
80
+ | Code | Severity | Condition | Recovery |
81
+ |------|----------|-----------|----------|
82
+ | E001 | error | Topic or role argument required | Prompt user for topic text or role name |
83
+ | E002 | error | No active session for single role mode | Guide user to run auto mode first |
84
+ | E003 | error | Invalid role name | Show valid roles list |
85
+ | W001 | warning | Fewer than 10 ideas in divergent phase | Proceed with available ideas |
86
+ | W002 | warning | Project context (.workflow/) not found | Continue without project context |
87
+ | W003 | warning | Role template not found | Use generic analysis structure |
88
+ | W004 | warning | Validation score < 60 | Log warning, suggest manual review |
89
+ | W005 | warning | External research agent failed | Continue without designResearchContext |
90
+ </error_codes>
91
+
92
+ <success_criteria>
93
+ **Auto mode**:
94
+ - [ ] guidance-specification.md with RFC 2119 keywords, terminology, non-goals, feature decomposition
95
+ - [ ] design-research.md persisted when Step 1.7 external research ran (fail-soft: absence not a failure)
96
+ - [ ] Spec Review Gate passed (Step 3.5) or `--yes` bypassed
97
+ - [ ] Role analysis files for each selected NON-UI role in `.brainstorming/{role}/`
98
+ - [ ] If `ui-designer` in selected_roles AND Step 3.5 ran: `.workflow/impeccable/DESIGN.md` exists (visual style established via impeccable explore)
99
+ - [ ] If `ui-designer` in selected_roles: `ui-designer/analysis.md` exists with UX analysis (interaction flows, state design, information architecture)
100
+ - [ ] Feature specs in `.brainstorming/feature-specs/` (or synthesis-specification.md)
101
+ - [ ] UI-bearing feature specs reference DESIGN.md for visual constraints in Section 3 (Interface Contract)
102
+ - [ ] feature-index.json and synthesis-changelog.md
103
+ - [ ] Final Output Gate passed (Step 5.5) or `--yes` bypassed
104
+ - [ ] All user decisions captured with Decision Recording Protocol
105
+ - [ ] Session metadata updated with completion status
106
+ - [ ] Confidence scored per role completion and after cross-role analysis
107
+ - [ ] Readiness gate checked before spec generation
108
+ - [ ] Pressure pass completed on at least 1 feature spec
109
+ - [ ] Confidence summary appended to synthesis-changelog.md
110
+
111
+ **Single role mode**:
112
+ - [ ] analysis.md written to `{output_dir}/{role}/`
113
+ - [ ] Feature-point organization used when feature list available
114
+ - [ ] Framework reference included when guidance-specification.md exists
115
+ - [ ] Session metadata updated
116
+ </success_criteria>
@@ -35,6 +35,11 @@ $ARGUMENTS — natural language description, or flags.
35
35
  - Design drafts: `.workflow/templates/design-drafts/`
36
36
  - Template ID: `wft-<slug>-<YYYYMMDD>`, Node ID: `N-<seq>`, Checkpoint: `CP-<seq>`
37
37
  - Max nodes: 20
38
+
39
+ ### Pre-load specs
40
+ 1. **Architecture specs**: Run `maestro spec load --category arch` to load architecture constraints. Use as context for node resolution — ensures workflow design respects documented patterns.
41
+ 2. **Coding specs**: Run `maestro spec load --category coding` to load coding conventions. Informs executor argument defaults and context injection.
42
+ 3. Optional — proceed without if unavailable.
38
43
  </context>
39
44
 
40
45
  <state_machine>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: maestro-impeccable
3
- description: Production-grade UI design with knowhow accumulation — 23 commands for build, evaluate, refine, enhance, fix
4
- argument-hint: "<command> [target] [--skip-harvest] [-y]"
3
+ description: Production-grade UI design with knowhow accumulation — 24 commands + integrated design search for build, evaluate, refine, enhance, fix
4
+ argument-hint: "<command> [target] [--skip-harvest] [-y] | search <query> [-d <domain>] [--design-system]"
5
5
  allowed-tools:
6
6
  - Read
7
7
  - Write
@@ -13,13 +13,17 @@ allowed-tools:
13
13
  - AskUserQuestion
14
14
  ---
15
15
  <purpose>
16
- Replaces impeccable as the primary UI design entry point. 23 commands covering the full design lifecycle:
17
- Build (craft, shape, teach, document, extract), Evaluate (critique, audit), Refine (polish, bolder, quieter, distill, harden, onboard),
16
+ Replaces impeccable as the primary UI design entry point. 24 commands covering the full design lifecycle:
17
+ Build (craft, shape, teach, document, extract, explore), Evaluate (critique, audit), Refine (polish, bolder, quieter, distill, harden, onboard),
18
18
  Enhance (animate, colorize, typeset, layout, delight, overdrive), Fix (clarify, adapt, optimize), Iterate (live).
19
19
 
20
20
  Core innovation over impeccable: after each command execution, automatically harvests design decisions
21
21
  into `.workflow/knowhow/` (DCS-, AST-, TIP-, REF-) for cross-session accumulation. Other maestro commands
22
22
  consume this via `category: coding` auto-injection and keyword matching.
23
+
24
+ Includes integrated `search` CLI subcommand for querying the UI/UX design knowledge base
25
+ (BM25 search engine + 30+ CSV data files covering styles, colors, typography, UX guidelines, charts, stacks).
26
+ Search is invoked directly via `maestro impeccable search`, not through the Skill dispatch.
23
27
  </purpose>
24
28
 
25
29
  <deferred_reading>
@@ -29,11 +33,11 @@ consume this via `category: coding` auto-injection and keyword matching.
29
33
  <context>
30
34
  $ARGUMENTS — sub-command + target + optional flags.
31
35
 
32
- **Sub-commands** (23):
36
+ **Sub-commands** (24):
33
37
 
34
38
  | Category | Commands |
35
39
  |----------|----------|
36
- | Build | craft, shape, teach, document, extract |
40
+ | Build | craft, shape, teach, document, extract, explore |
37
41
  | Evaluate | critique, audit |
38
42
  | Refine | polish, bolder, quieter, distill, harden, onboard |
39
43
  | Enhance | animate, colorize, typeset, layout, delight, overdrive |
@@ -51,7 +55,23 @@ and writes knowhow entries. DCS-/AST- types also get spec index entries for disc
51
55
 
52
56
  <execution>
53
57
 
54
- ## 1. Invoke Skill
58
+ ## 1. Route
59
+
60
+ If first argument is `search` → direct CLI dispatch (no Skill, no harvest):
61
+
62
+ ```bash
63
+ maestro impeccable search "<query>" [options]
64
+ ```
65
+
66
+ Options: `-d <domain>`, `-s <stack>`, `-n <max>`, `--design-system`, `-p <name>`, `-f <fmt>`, `--persist`, `--page <page>`, `-o <dir>`
67
+
68
+ Domains: style, color, chart, landing, product, ux, typography, icons, react, web, google-fonts.
69
+ Stacks: react, nextjs, vue, svelte, astro, swiftui, react-native, flutter, html-tailwind, shadcn, + more.
70
+
71
+ Search uses `workflows/impeccable/ui-search/search.py` (BM25 engine + 30+ CSV knowledge files).
72
+ Output goes to stdout. No Skill invocation, no harvest. Return after output.
73
+
74
+ ## 2. Invoke Skill (all other sub-commands)
55
75
 
56
76
  ```
57
77
  Skill({ skill: "maestro-impeccable", args: "$ARGUMENTS" })
@@ -60,7 +80,7 @@ Skill({ skill: "maestro-impeccable", args: "$ARGUMENTS" })
60
80
  The skill handles: context loading (spec load --category ui, with load-context fallback), register detection (brand/product),
61
81
  reference file loading, and command execution.
62
82
 
63
- ## 2. Harvest
83
+ ## 3. Harvest
64
84
 
65
85
  After the skill completes, read `~/.maestro/workflows/impeccable.md` and follow the harvest workflow.
66
86
 
@@ -69,12 +89,29 @@ Skip harvest if:
69
89
  - Sub-command is `live` (interactive, no harvestable output)
70
90
  - Sub-command is unrecognized
71
91
 
92
+ ## 4. Post-Execution Routing
93
+
94
+ After harvest (or skip), determine whether this command was invoked as part of a larger pipeline by checking conversation context (e.g., brainstorm Step 3.5, ui-craft chain step).
95
+
96
+ **Pipeline context detected** (called via Skill from brainstorm, ui-craft, etc.):
97
+ - Report command result (output, scores, artifacts produced) and **stop**
98
+ - Do NOT suggest next-step commands — the calling flow owns what happens next
99
+
100
+ **Standalone invocation** (user directly ran `/maestro-impeccable`):
101
+ - Show next-step suggestions based on what was executed:
102
+ - `teach` → suggest `explore` or `shape`
103
+ - `explore` → suggest `shape` → `craft`
104
+ - `shape` → suggest `craft`
105
+ - `craft` → suggest `critique`
106
+ - `critique`/`audit` → suggest commands from findings
107
+ - Enhancement/fix commands → suggest `critique` to re-evaluate
108
+
72
109
  </execution>
73
110
 
74
111
  <error_codes>
75
112
  | Code | Severity | Description |
76
113
  |------|----------|-------------|
77
- | E001 | error | Invalid sub-command (not in 23 valid commands) |
114
+ | E001 | error | Invalid sub-command (not in 24 valid commands) |
78
115
  | E002 | error | No intent or target specified |
79
116
  | W001 | warning | Harvest failed — design knowledge not captured (command still succeeded) |
80
117
  | W002 | warning | PRODUCT.md missing — skill will auto-trigger teach |
@@ -31,6 +31,9 @@ Flags (`-m`, `--force`, `--dry-run`, `--no-cleanup`, `--continue`), merge sequen
31
31
  <execution>
32
32
  Follow '~/.maestro/workflows/merge.md' completely.
33
33
 
34
+ **Knowledge inquiry on completion:**
35
+ After successful merge, ask user once: "Record milestone learnings?" If yes, persist via `Skill("spec-add", "learning \"<title>\" \"<insight>\" --keywords <kw1>,<kw2>")`.
36
+
34
37
  **Next-step routing on completion:**
35
38
  - View dashboard → Skill({ skill: "manage-status" })
36
39
  - Audit milestone → Skill({ skill: "maestro-milestone-audit" })
@@ -69,6 +69,10 @@ maestro-plan → maestro-execute → maestro-verify
69
69
  ```
70
70
 
71
71
  **Note (full mode):** `maestro-init` MUST run before `--mode full`. It creates the `.workflow/` directory and project context.
72
+
73
+ ### Pre-load specs
74
+ 1. **Architecture specs**: Run `maestro spec load --category arch` to load architecture constraints. Use as context for phase decomposition — ensures roadmap respects documented decisions and boundaries.
75
+ 2. Optional — proceed without if unavailable.
72
76
  </context>
73
77
 
74
78
  <execution>
@@ -100,7 +104,7 @@ Follow `~/.maestro/workflows/spec-generate.md` completely.
100
104
  |-----------|-----------|
101
105
  | Roadmap approved, need analysis | /maestro-analyze 1 |
102
106
  | Simple project, ready to plan | /maestro-plan 1 |
103
- | Need UI design first | /maestro-ui-design 1 |
107
+ | Need UI design first | /maestro-ui-craft --chain build |
104
108
  | View project dashboard | /manage-status |
105
109
  | Need project setup (full mode) | /maestro-init |
106
110
  </execution>