maestro-flow-one 0.2.5 → 0.2.7
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.
- package/maestro-flow/agents/impeccable-agent.md +99 -0
- package/maestro-flow/agents/ui-design-agent.md +1 -0
- package/maestro-flow/agents/workflow-executor.md +3 -0
- package/maestro-flow/commands/learn/decompose.md +91 -146
- package/maestro-flow/commands/learn/follow.md +102 -137
- package/maestro-flow/commands/learn/investigate.md +102 -167
- package/maestro-flow/commands/learn/retro.md +100 -243
- package/maestro-flow/commands/learn/second-opinion.md +95 -135
- package/maestro-flow/commands/lifecycle/amend.md +95 -232
- package/maestro-flow/commands/lifecycle/analyze.md +3 -8
- package/maestro-flow/commands/lifecycle/brainstorm.md +116 -112
- package/maestro-flow/commands/lifecycle/collab.md +104 -265
- package/maestro-flow/commands/lifecycle/composer.md +117 -292
- package/maestro-flow/commands/lifecycle/execute.md +10 -17
- package/maestro-flow/commands/lifecycle/impeccable.md +126 -0
- package/maestro-flow/commands/lifecycle/merge.md +3 -0
- package/maestro-flow/commands/lifecycle/plan.md +1 -6
- package/maestro-flow/commands/lifecycle/player.md +111 -340
- package/maestro-flow/commands/lifecycle/quick.md +9 -0
- package/maestro-flow/commands/lifecycle/roadmap.md +5 -1
- package/maestro-flow/commands/lifecycle/ui-codify.md +13 -0
- package/maestro-flow/commands/lifecycle/ui-craft.md +416 -0
- package/maestro-flow/commands/lifecycle/verify.md +12 -13
- package/maestro-flow/commands/manage/issue-discover.md +4 -0
- package/maestro-flow/commands/manage/knowhow-capture.md +45 -170
- package/maestro-flow/commands/quality/auto-test.md +9 -0
- package/maestro-flow/commands/quality/debug.md +11 -25
- package/maestro-flow/commands/quality/refactor.md +12 -0
- package/maestro-flow/commands/quality/review.md +5 -14
- package/maestro-flow/commands/spec/add.md +1 -1
- package/maestro-flow/commands/spec/load.md +3 -2
- package/package.json +1 -1
- package/maestro-flow/commands/lifecycle/ui-design.md +0 -93
|
@@ -13,8 +13,7 @@ allowed-tools:
|
|
|
13
13
|
---
|
|
14
14
|
<purpose>
|
|
15
15
|
Capture reusable knowledge into `.workflow/knowhow/` with type-specific structured fields.
|
|
16
|
-
|
|
17
|
-
indexed by WikiIndexer (type=knowhow) and searchable via `maestro knowhow search`.
|
|
16
|
+
Auto-indexed by WikiIndexer (type=knowhow), searchable via `maestro knowhow search`.
|
|
18
17
|
</purpose>
|
|
19
18
|
|
|
20
19
|
<required_reading>
|
|
@@ -22,181 +21,57 @@ indexed by WikiIndexer (type=knowhow) and searchable via `maestro knowhow search
|
|
|
22
21
|
</required_reading>
|
|
23
22
|
|
|
24
23
|
<context>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
|
32
|
-
|
|
33
|
-
| `
|
|
34
|
-
| `
|
|
35
|
-
| `
|
|
36
|
-
| `
|
|
37
|
-
| `
|
|
38
|
-
| `
|
|
39
|
-
| `
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
-
|
|
46
|
-
- `--tag tag1,tag2` — Categorization tags
|
|
47
|
-
- `--title <title>` — Explicit title (auto-generated if omitted)
|
|
48
|
-
- `--asset-type <type>` — Asset subtype: api-contract, data-model, prompt, config, etc.
|
|
49
|
-
- `--code-paths <paths>` — Related source paths for asset/blueprint (comma-separated)
|
|
50
|
-
- `--category <cat>` — Spec category for agent discovery (coding, arch, test, debug, review, learning)
|
|
24
|
+
$ARGUMENTS — type token + description + optional flags.
|
|
25
|
+
|
|
26
|
+
**Flags**: `--lang <lang>`, `--source <url>`, `--tag tag1,tag2`, `--title <title>`, `--asset-type <type>`, `--code-paths <paths>`, `--category <cat>`
|
|
27
|
+
|
|
28
|
+
**Type routing** (first token match):
|
|
29
|
+
|
|
30
|
+
| Token | Type | Prefix | Key fields |
|
|
31
|
+
|-------|------|--------|------------|
|
|
32
|
+
| `compact`/`session`/`压缩`/`保存` | compact | KNW- | objective, files, decisions, plan, pending |
|
|
33
|
+
| `template`/`tpl`/`模板` | template | TPL- | language, code block, usage, parameters |
|
|
34
|
+
| `recipe`/`rcp`/`配方`/`步骤` | recipe | RCP- | prerequisites, steps, expected outcome, pitfalls |
|
|
35
|
+
| `reference`/`ref`/`参考`/`引用` | reference | REF- | source URL, key points, scenarios, examples |
|
|
36
|
+
| `decision`/`dcs`/`决策`/`adr` | decision | DCS- | context, alternatives table, rationale, consequences |
|
|
37
|
+
| `tip`/`note`/`记录`/`快速` | tip | TIP- | content, tags |
|
|
38
|
+
| `asset`/`ast`/`资产`/`契约` | asset | AST- | assetType, codePaths, category |
|
|
39
|
+
| `blueprint`/`blp`/`蓝图` | blueprint | BLP- | codePaths, category |
|
|
40
|
+
| `document`/`doc`/`文档` | document | DOC- | (general fallback) |
|
|
41
|
+
| Short text + `--tag` | tip | TIP- | — |
|
|
42
|
+
| No args | — | — | AskUserQuestion (9 options) |
|
|
43
|
+
|
|
44
|
+
**Output**: `.workflow/knowhow/{PREFIX}-{YYYYMMDD}-{HHMM}.md` with YAML frontmatter (title, type, category, created, tags, source, lang, status)
|
|
51
45
|
</context>
|
|
52
46
|
|
|
53
47
|
<execution>
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
|
62
|
-
|
|
|
63
|
-
|
|
|
64
|
-
|
|
|
65
|
-
|
|
|
66
|
-
|
|
|
67
|
-
|
|
|
68
|
-
| `blueprint`, `blp`, `蓝图` | blueprint |
|
|
69
|
-
| `document`, `doc`, `文档` | document |
|
|
70
|
-
| No match, short text, `--tag` present | tip |
|
|
71
|
-
| No arguments | AskUserQuestion (9 options) |
|
|
72
|
-
|
|
73
|
-
### Step 2: Generate Content by Type
|
|
74
|
-
|
|
75
|
-
#### compact (KNW-{YYYYMMDD}-{HHMM}.md)
|
|
76
|
-
|
|
77
|
-
Extract from conversation history:
|
|
78
|
-
- **Session ID** — WFS-* if workflow session active, else `manual-{date}`
|
|
79
|
-
- **Project Root** — Absolute path
|
|
80
|
-
- **Objective** — High-level goal
|
|
81
|
-
- **Execution Plan** — Source + complete verbatim content (never summarize)
|
|
82
|
-
- **Working Files** — Modified files with roles (absolute paths, 3-8 files)
|
|
83
|
-
- **Reference Files** — Read-only context files
|
|
84
|
-
- **Last Action** — Final action + result
|
|
85
|
-
- **Decisions** — Table: decision | reasoning
|
|
86
|
-
- **Constraints** — User-specified limitations
|
|
87
|
-
- **Dependencies** — Added/changed packages
|
|
88
|
-
- **Known Issues** — Deferred bugs
|
|
89
|
-
- **Changes Made** — Completed modifications
|
|
90
|
-
- **Pending** — Next steps
|
|
91
|
-
- **Notes** — Unstructured thoughts
|
|
92
|
-
|
|
93
|
-
Plan detection priority: workflow session IMPL_PLAN.md > TodoWrite items > user-stated > inferred.
|
|
94
|
-
|
|
95
|
-
#### template (TPL-{YYYYMMDD}-{HHMM}.md)
|
|
96
|
-
|
|
97
|
-
Ask for or extract:
|
|
98
|
-
- **Language / Tech** — `--lang` flag or inferred from context
|
|
99
|
-
- **Usage** — When/how to use this template
|
|
100
|
-
- **Code** — The template content (ask user to provide or select from conversation)
|
|
101
|
-
- **Parameters** — Placeholders to replace (e.g. `{{name}}`, `{{port}}`)
|
|
102
|
-
- **Dependencies** — Required packages/config
|
|
103
|
-
- **Tags** — From `--tag` flag
|
|
104
|
-
|
|
105
|
-
If code not provided explicitly, prompt user: "Paste the template code:"
|
|
106
|
-
|
|
107
|
-
#### recipe (RCP-{YYYYMMDD}-{HHMM}.md)
|
|
108
|
-
|
|
109
|
-
Ask for or extract:
|
|
110
|
-
- **Goal** — What this recipe accomplishes
|
|
111
|
-
- **Prerequisites** — Tools, access, config needed
|
|
112
|
-
- **Steps** — Numbered step-by-step instructions
|
|
113
|
-
- **Expected Outcome** — What success looks like
|
|
114
|
-
- **Common Pitfalls** — Known issues / gotchas
|
|
115
|
-
- **Related** — Links to templates, references, decisions used
|
|
116
|
-
- **Tags** — From `--tag` flag
|
|
117
|
-
|
|
118
|
-
If steps not clear, prompt user: "Describe the steps (numbered list):"
|
|
119
|
-
|
|
120
|
-
#### reference (REF-{YYYYMMDD}-{HHMM}.md)
|
|
121
|
-
|
|
122
|
-
Ask for or extract:
|
|
123
|
-
- **Source** — `--source` flag (URL, doc title, API endpoint)
|
|
124
|
-
- **Key Points** — Bullet list of essential info
|
|
125
|
-
- **Applicable Scenarios** — When to consult this reference
|
|
126
|
-
- **Quick Examples** — Copy-paste ready code snippets
|
|
127
|
-
- **Last Verified** — Date (today)
|
|
128
|
-
- **Tags** — From `--tag` flag
|
|
129
|
-
|
|
130
|
-
If `--source` provided, offer to fetch and summarize via WebFetch.
|
|
131
|
-
|
|
132
|
-
#### decision (DCS-{YYYYMMDD}-{HHMM}.md)
|
|
133
|
-
|
|
134
|
-
Ask for or extract:
|
|
135
|
-
- **Context** — Background and problem statement
|
|
136
|
-
- **Decision** — What was decided
|
|
137
|
-
- **Alternatives Considered** — Table: alternative | pros | cons | rejected because
|
|
138
|
-
- **Rationale** — Why this choice over alternatives
|
|
139
|
-
- **Consequences** — Positive and negative impact
|
|
140
|
-
- **Related** — Links to affected specs, recipes, templates
|
|
141
|
-
- **Date** — Decision date
|
|
142
|
-
- **Status** — proposed | accepted | superseded
|
|
143
|
-
|
|
144
|
-
#### tip (TIP-{YYYYMMDD}-{HHMM}.md)
|
|
145
|
-
|
|
146
|
-
Simple note:
|
|
147
|
-
- **Content** — Everything after type token (or full $ARGUMENTS)
|
|
148
|
-
- **Context** — Auto-detected from recent conversation files
|
|
149
|
-
- **Tags** — From `--tag` flag
|
|
150
|
-
- **Timestamp** — ISO format
|
|
151
|
-
|
|
152
|
-
### Step 3: Write File
|
|
153
|
-
|
|
154
|
-
Write to `.workflow/knowhow/{PREFIX}-{YYYYMMDD}-{HHMM}.md` with YAML frontmatter:
|
|
155
|
-
|
|
156
|
-
```yaml
|
|
157
|
-
---
|
|
158
|
-
title: {auto or --title}
|
|
159
|
-
type: {type}
|
|
160
|
-
category: {type}
|
|
161
|
-
created: {ISO timestamp}
|
|
162
|
-
tags: [{tags}]
|
|
163
|
-
source: {url if reference}
|
|
164
|
-
lang: {language if template}
|
|
165
|
-
status: {status if decision}
|
|
166
|
-
---
|
|
167
|
-
{markdown body}
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
### Step 4: Confirm
|
|
171
|
-
|
|
172
|
-
```
|
|
173
|
-
=== KNOWHOW CAPTURED ===
|
|
174
|
-
Type: {type}
|
|
175
|
-
ID: knowhow-{slug}
|
|
176
|
-
File: .workflow/knowhow/{filename}
|
|
177
|
-
|
|
178
|
-
{type-specific summary line}
|
|
179
|
-
```
|
|
48
|
+
Follow '~/.maestro/workflows/knowhow.md' completely.
|
|
49
|
+
|
|
50
|
+
**Type-specific content rules**:
|
|
51
|
+
|
|
52
|
+
| Type | Content extraction |
|
|
53
|
+
|------|-------------------|
|
|
54
|
+
| compact | Extract from conversation: session ID, objective, execution plan (verbatim), working files (3-8), decisions, constraints, pending. Plan priority: workflow IMPL_PLAN.md > TodoWrite > user-stated > inferred. |
|
|
55
|
+
| template | Ask for: language, code block, parameters (placeholders), usage context, dependencies |
|
|
56
|
+
| recipe | Ask for: goal, prerequisites, numbered steps, expected outcome, common pitfalls |
|
|
57
|
+
| reference | From --source URL or ask. Key points, applicable scenarios, quick examples. Offer WebFetch if URL provided. |
|
|
58
|
+
| decision | Context, alternatives (table: alt/pros/cons/rejected-because), rationale, consequences. Status: proposed/accepted/superseded. |
|
|
59
|
+
| tip | Content = everything after type token. Auto-detect context from recent files. |
|
|
60
|
+
| asset | assetType (api-contract/data-model/prompt/config), codePaths, category for agent discovery |
|
|
61
|
+
| blueprint | Architecture design with codePaths and category |
|
|
180
62
|
</execution>
|
|
181
63
|
|
|
182
64
|
<error_codes>
|
|
183
|
-
| Code |
|
|
184
|
-
|
|
185
|
-
|
|
|
186
|
-
|
|
|
187
|
-
|
|
|
188
|
-
|
|
|
189
|
-
| W002 | warning | Plan detection found no explicit plan — using inferred plan | compact |
|
|
190
|
-
| W003 | warning | `--source` URL could not be fetched — proceeding with manual entry | reference |
|
|
65
|
+
| Code | Condition | Recovery |
|
|
66
|
+
|------|-----------|----------|
|
|
67
|
+
| E002 | Template: no code provided after prompt | Ask again or cancel |
|
|
68
|
+
| E003 | Recipe: no steps provided after prompt | Ask again or cancel |
|
|
69
|
+
| W001 | No active workflow session (compact) | Captures conversation only |
|
|
70
|
+
| W002 | Plan detection found no explicit plan (compact) | Uses inferred plan |
|
|
191
71
|
</error_codes>
|
|
192
72
|
|
|
193
73
|
<success_criteria>
|
|
194
|
-
- [ ] Type
|
|
195
|
-
- [ ]
|
|
196
|
-
- [ ]
|
|
197
|
-
- [ ] Markdown body follows type structure
|
|
198
|
-
- [ ] File written to `.workflow/knowhow/` with correct prefix
|
|
199
|
-
- [ ] Auto-indexed by WikiIndexer (type=knowhow)
|
|
200
|
-
- [ ] Confirmation displayed with ID, type, file path
|
|
201
|
-
- [ ] Next step hint appropriate to type shown
|
|
74
|
+
- [ ] Type detected or selected, all type-specific fields populated
|
|
75
|
+
- [ ] File written to .workflow/knowhow/ with correct prefix and YAML frontmatter
|
|
76
|
+
- [ ] Confirmation displayed with ID, type, path
|
|
202
77
|
</success_criteria>
|
|
@@ -50,6 +50,15 @@ Phase or task: $ARGUMENTS (required — phase number)
|
|
|
50
50
|
| 5 | Default | code | quality-integration-test |
|
|
51
51
|
|
|
52
52
|
Flags, artifact context resolution, and output formats defined in workflow auto-test.md.
|
|
53
|
+
|
|
54
|
+
### Pre-load context (before test generation)
|
|
55
|
+
|
|
56
|
+
1. **Test specs + tools**: Run `maestro spec load --category test` to load test conventions (framework, patterns, naming). Apply to all generated tests.
|
|
57
|
+
2. **Coding specs**: Run `maestro spec load --category coding` to understand coding patterns for accurate test targeting.
|
|
58
|
+
3. **Role Knowledge**:
|
|
59
|
+
- Browse: `maestro wiki list --category test`
|
|
60
|
+
- Load task-relevant entries: `maestro wiki load <id1> [id2...]`
|
|
61
|
+
4. All are optional — proceed without if unavailable.
|
|
53
62
|
</context>
|
|
54
63
|
|
|
55
64
|
<execution>
|
|
@@ -43,20 +43,11 @@ Each artifact's type determines its outputs at `.workflow/{a.path}/`:
|
|
|
43
43
|
|
|
44
44
|
Extract conclusions from related artifacts that may affect this debug session — review findings guide investigation direction, prior debug avoids redundant work.
|
|
45
45
|
|
|
46
|
-
### Pre-load
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
4. All are optional — proceed without if unavailable.
|
|
52
|
-
|
|
53
|
-
### Role Knowledge
|
|
54
|
-
1. Browse accumulated knowledge for this role:
|
|
55
|
-
`maestro wiki list --category debug`
|
|
56
|
-
2. Analyze the index, identify entries relevant to the current task
|
|
57
|
-
3. Load selected documents:
|
|
58
|
-
`maestro wiki load <id1> [id2] [id3...]`
|
|
59
|
-
4. Review loaded knowledge before proceeding
|
|
46
|
+
### Pre-load (optional, proceed without)
|
|
47
|
+
- Codebase docs: `.workflow/codebase/ARCHITECTURE.md` → module boundaries
|
|
48
|
+
- Wiki: `maestro wiki search "<symptom keywords>" --json` → prior investigations
|
|
49
|
+
- Specs: `maestro spec load --category debug --keyword "<symptom>"` → known issues/workarounds
|
|
50
|
+
- Role knowledge: `maestro wiki list --category debug` → select relevant → `maestro wiki load`
|
|
60
51
|
|
|
61
52
|
**Output**: `DEBUG_DIR = .workflow/scratch/{YYYYMMDD}-debug-P{N}-{slug}/` (P{N} = phase number when phase-scoped; omit for standalone). Output directory rules defined in workflow debug.md Step 4.
|
|
62
53
|
</context>
|
|
@@ -84,18 +75,13 @@ Append to state.json.artifacts[]:
|
|
|
84
75
|
|
|
85
76
|
### Post-debug Knowledge Inquiry
|
|
86
77
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
2. **Non-obvious fix**: If fix involved a non-obvious approach or workaround:
|
|
93
|
-
→ Ask: "This fix used a non-obvious strategy. Should it be recorded as a learning? (`/spec-add learning`)"
|
|
94
|
-
|
|
95
|
-
3. **Architectural gap**: If root cause traces to architectural boundary violation or missing constraint:
|
|
96
|
-
→ Ask: "Root cause points to an architectural gap. Should `architecture-constraints.md` be updated? (`/spec-add arch`)"
|
|
78
|
+
| Condition | Ask | Route |
|
|
79
|
+
|-----------|-----|-------|
|
|
80
|
+
| Recurring root cause pattern (seen in prior debug) | "Document in debug-notes.md?" | spec-add debug |
|
|
81
|
+
| Non-obvious fix / workaround | "Record as learning?" | spec-add learning |
|
|
82
|
+
| Root cause = architectural boundary violation | "Update architecture-constraints.md?" | spec-add arch |
|
|
97
83
|
|
|
98
|
-
|
|
84
|
+
On confirm → `Skill("spec-add", "<category> <content>")`.
|
|
99
85
|
|
|
100
86
|
**Next-step routing on completion:**
|
|
101
87
|
- Root cause found, fix needed → `/maestro-plan {phase} --gaps`
|
|
@@ -27,11 +27,23 @@ Scope: $ARGUMENTS (required)
|
|
|
27
27
|
- "all" - full codebase scan
|
|
28
28
|
|
|
29
29
|
If not provided, prompt user for scope.
|
|
30
|
+
|
|
31
|
+
### Pre-load context (before refactoring)
|
|
32
|
+
|
|
33
|
+
1. **Coding specs**: Run `maestro spec load --category coding` to load coding conventions. Apply conventions to all refactored code.
|
|
34
|
+
2. **Review specs**: Run `maestro spec load --category review` to load review standards. Use as quality gate for refactored code.
|
|
35
|
+
3. **Role Knowledge**:
|
|
36
|
+
- Browse: `maestro wiki list --category coding`
|
|
37
|
+
- Identify task-relevant entries, then load: `maestro wiki load <id1> [id2...]`
|
|
38
|
+
4. All are optional — proceed without if unavailable.
|
|
30
39
|
</context>
|
|
31
40
|
|
|
32
41
|
<execution>
|
|
33
42
|
Follow '~/.maestro/workflows/refactor.md' completely.
|
|
34
43
|
|
|
44
|
+
**Knowledge inquiry on completion:**
|
|
45
|
+
After successful refactoring, ask user once: "Record refactoring pattern as coding convention?" If yes, persist via `Skill("spec-add", "coding \"<title>\" \"<pattern>\" --keywords <kw1>,<kw2>")`.
|
|
46
|
+
|
|
35
47
|
**Next-step routing on completion:**
|
|
36
48
|
- All tests pass → `/quality-sync` (update codebase docs)
|
|
37
49
|
- Test failures after refactor → `/quality-debug {scope}`
|
|
@@ -48,20 +48,11 @@ Each artifact's type determines its outputs at `.workflow/{a.path}/`:
|
|
|
48
48
|
|
|
49
49
|
Extract conclusions from related artifacts that may affect this review. Pass as prior quality context to reviewer agents — avoid redundant work, focus on gaps and regressions.
|
|
50
50
|
|
|
51
|
-
### Pre-load
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
4. All are optional — proceed without if unavailable.
|
|
57
|
-
|
|
58
|
-
### Role Knowledge
|
|
59
|
-
1. Browse accumulated knowledge for this role:
|
|
60
|
-
`maestro wiki list --category review`
|
|
61
|
-
2. Analyze the index, identify entries relevant to the current task
|
|
62
|
-
3. Load selected documents:
|
|
63
|
-
`maestro wiki load <id1> [id2] [id3...]`
|
|
64
|
-
4. Review loaded knowledge before proceeding
|
|
51
|
+
### Pre-load (optional, proceed without)
|
|
52
|
+
- Codebase docs: `.workflow/codebase/ARCHITECTURE.md` → component boundaries, layer rules
|
|
53
|
+
- Wiki constraints: `maestro wiki search "architecture constraint" --json` → documented decisions
|
|
54
|
+
- Specs: `maestro spec load --category review` → review standards, checklists, knowhow tools
|
|
55
|
+
- Role knowledge: `maestro wiki list --category review` → select relevant → `maestro wiki load`
|
|
65
56
|
|
|
66
57
|
**Output**: `REVIEW_DIR = .workflow/scratch/{YYYYMMDD}-review-P{N}-{slug}/` (P{N} = phase number, enables directory-level identification as state.json fallback)
|
|
67
58
|
</context>
|
|
@@ -50,7 +50,7 @@ Follow '~/.maestro/workflows/specs-add.md' completely.
|
|
|
50
50
|
|------|----------|-------------|-------|
|
|
51
51
|
| E001 | fatal | Category and content are both required | parse_input |
|
|
52
52
|
| E002 | fatal | Specs directory not initialized -- run `maestro spec init --scope <scope>` | validate_entry |
|
|
53
|
-
| E003 | fatal | Invalid category -- must be one of: coding, arch, quality, debug, test, review, learning, tools | parse_input |
|
|
53
|
+
| E003 | fatal | Invalid category -- must be one of: coding, arch, quality, debug, test, review, learning, tools, ui | parse_input |
|
|
54
54
|
| E004 | fatal | Invalid scope -- must be one of: project, global, team, personal | parse_input |
|
|
55
55
|
| E005 | fatal | Personal scope requires uid -- use `--uid` or run `maestro collab join` first | parse_input |
|
|
56
56
|
</error_codes>
|
|
@@ -21,7 +21,7 @@ Category-based loading: loads the category's primary doc in full + matching entr
|
|
|
21
21
|
$ARGUMENTS -- optional flags and keyword
|
|
22
22
|
|
|
23
23
|
**Flags:**
|
|
24
|
-
- `--category <category>` — Load by category: primary category doc (full) + cross-file entries with matching category attr. Categories: coding, arch, test, review, debug,
|
|
24
|
+
- `--category <category>` — Load by category: primary category doc (full) + cross-file entries with matching category attr. Categories: coding, arch, test, review, debug, learning, ui.
|
|
25
25
|
- `--keyword <word>` — Filter by keyword within entries
|
|
26
26
|
|
|
27
27
|
**File → Primary Category mapping:**
|
|
@@ -32,7 +32,8 @@ $ARGUMENTS -- optional flags and keyword
|
|
|
32
32
|
| test-conventions.md | test |
|
|
33
33
|
| review-standards.md | review |
|
|
34
34
|
| debug-notes.md | debug |
|
|
35
|
-
|
|
|
35
|
+
| ui-conventions.md | ui |
|
|
36
|
+
| quality-rules.md | review |
|
|
36
37
|
| learnings.md | learning |
|
|
37
38
|
|
|
38
39
|
**Examples:**
|
package/package.json
CHANGED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: maestro-ui-design
|
|
3
|
-
description: Generate UI design prototypes, select and solidify as code
|
|
4
|
-
argument-hint: "<phase|topic> [--styles N] [--stack <stack>] [--targets <pages>] [--layouts N] [--refine] [--persist] [--full] [-y]"
|
|
5
|
-
allowed-tools:
|
|
6
|
-
- Read
|
|
7
|
-
- Write
|
|
8
|
-
- Edit
|
|
9
|
-
- Bash
|
|
10
|
-
- Glob
|
|
11
|
-
- Grep
|
|
12
|
-
- Agent
|
|
13
|
-
- AskUserQuestion
|
|
14
|
-
---
|
|
15
|
-
<purpose>
|
|
16
|
-
Generate UI design prototypes for a phase or topic. Two workflow paths, auto-selected by skill availability:
|
|
17
|
-
|
|
18
|
-
1. **Primary (ui-style.md):** Delegates design to ui-ux-pro-max skill. Generates multiple style variants via `--design-system`, user selects, solidifies as code reference. Lightweight and fast.
|
|
19
|
-
2. **Fallback (ui-design.md):** Self-contained 4-layer pipeline (style → animation → layout → assembly) with 6D attribute space, OKLCH tokens, layout templates, and full prototype matrix. Used when ui-ux-pro-max is unavailable or `--full` is requested.
|
|
20
|
-
|
|
21
|
-
Both paths produce the same output contract: MASTER.md + design-tokens.json + animation-tokens.json + selection.json for downstream plan/execute consumption.
|
|
22
|
-
|
|
23
|
-
Position in pipeline: analyze -> **ui-design** -> plan -> execute -> verify
|
|
24
|
-
</purpose>
|
|
25
|
-
|
|
26
|
-
<deferred_reading>
|
|
27
|
-
- [ui-style.md](~/.maestro/workflows/ui-style.md) — read when SKILL_PATH found (primary path)
|
|
28
|
-
- [ui-design.md](~/.maestro/workflows/ui-design.md) — read when SKILL_PATH empty or --full (fallback path)
|
|
29
|
-
- [index.json](~/.maestro/templates/index.json) — read when updating phase metadata
|
|
30
|
-
- [scratch-index.json](~/.maestro/templates/scratch-index.json) — read when operating in scratch mode
|
|
31
|
-
</deferred_reading>
|
|
32
|
-
|
|
33
|
-
<context>
|
|
34
|
-
$ARGUMENTS — phase number for phase mode, topic text for scratch mode, with optional flags.
|
|
35
|
-
|
|
36
|
-
Flags, workflow routing, scope modes, and output artifacts defined in the routed workflow (ui-style.md or ui-design.md).
|
|
37
|
-
|
|
38
|
-
**Phase mode** (number): resolves phase directory, reads context.md/brainstorm for requirements.
|
|
39
|
-
**Scratch mode** (text): creates `.workflow/scratch/{YYYYMMDD}-ui-design-{slug}/` for standalone exploration.
|
|
40
|
-
</context>
|
|
41
|
-
|
|
42
|
-
<execution>
|
|
43
|
-
## Workflow Routing
|
|
44
|
-
|
|
45
|
-
Detect ui-ux-pro-max skill availability and route to the appropriate workflow:
|
|
46
|
-
|
|
47
|
-
- **`--full` flag present** → Follow '~/.maestro/workflows/ui-design.md' completely (forced full pipeline)
|
|
48
|
-
- **ui-ux-pro-max found** → Follow '~/.maestro/workflows/ui-style.md' completely (lightweight delegation)
|
|
49
|
-
- **ui-ux-pro-max not found** → Follow '~/.maestro/workflows/ui-design.md' completely (self-contained fallback)
|
|
50
|
-
|
|
51
|
-
Skill detection logic, report format, and complete pipeline steps defined in the routed workflow file.
|
|
52
|
-
|
|
53
|
-
**Next-step routing on completion:**
|
|
54
|
-
- Plan with design reference → /maestro-plan {phase}
|
|
55
|
-
- Refine selected design → /maestro-ui-design {phase} --refine
|
|
56
|
-
- Analyze before planning → /maestro-analyze {phase}
|
|
57
|
-
</execution>
|
|
58
|
-
|
|
59
|
-
<error_codes>
|
|
60
|
-
| Code | Severity | Description | Stage |
|
|
61
|
-
|------|----------|-------------|-------|
|
|
62
|
-
| E001 | error | Phase or topic argument required | parse_input |
|
|
63
|
-
| E002 | error | Phase directory not found | parse_input |
|
|
64
|
-
| E003 | error | Python not available (both paths need Python for ui-ux-pro-max or agent fallback) | setup |
|
|
65
|
-
| E004 | error | --refine requires existing design-ref/ | parse_input |
|
|
66
|
-
| W001 | warning | Design system generation returned partial results | generate |
|
|
67
|
-
| W002 | warning | Prototype rendering failed for one variant | render |
|
|
68
|
-
| W003 | warning | No context.md found, using phase goal only | context |
|
|
69
|
-
| W004 | warning | ui-ux-pro-max not found, falling back to full pipeline | routing |
|
|
70
|
-
</error_codes>
|
|
71
|
-
|
|
72
|
-
<success_criteria>
|
|
73
|
-
**Both paths (common):**
|
|
74
|
-
- [ ] Requirements extracted from phase context (context.md, brainstorm, spec, or user input)
|
|
75
|
-
- [ ] N style variants generated with contrasting design directions
|
|
76
|
-
- [ ] User selected preferred variant (or auto-selected in -y mode)
|
|
77
|
-
- [ ] MASTER.md written with complete design system specification
|
|
78
|
-
- [ ] design-tokens.json written with production-ready tokens (OKLCH colors, component_styles)
|
|
79
|
-
- [ ] animation-tokens.json written (duration, easing, transitions, keyframes)
|
|
80
|
-
- [ ] selection.json recorded with choice metadata
|
|
81
|
-
- [ ] index.json updated with design_ref status
|
|
82
|
-
|
|
83
|
-
**ui-style.md path (primary):**
|
|
84
|
-
- [ ] ui-ux-pro-max --design-system called with product/industry/style keywords
|
|
85
|
-
- [ ] Tokens extracted from ui-ux-pro-max output into structured JSON
|
|
86
|
-
|
|
87
|
-
**ui-design.md path (--full or fallback):**
|
|
88
|
-
- [ ] 6D attribute space used for maximum contrast between variants
|
|
89
|
-
- [ ] Layout templates generated per target (dom_structure + css_layout_rules)
|
|
90
|
-
- [ ] HTML prototypes assembled: styles x layouts x targets
|
|
91
|
-
- [ ] compare.html generated as interactive matrix viewer
|
|
92
|
-
</success_criteria>
|
|
93
|
-
</output>
|