@juancr11/sibu 0.5.3 → 0.6.0
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/bin/features/doctor-project/handler.js +1 -1
- package/bin/shared/catalog.js +9 -0
- package/package.json +2 -2
- package/templates/AGENTS.md +4 -1
- package/templates/manifest.json +29 -22
- package/templates/skills/ai-implementation-plan-executor/SKILL.md +38 -0
- package/templates/skills/ai-implementation-planner/SKILL.md +38 -1
- package/templates/skills/architecture/command-pattern/SKILL.md +10 -0
- package/templates/skills/architecture/ddd-hexagonal/SKILL.md +10 -0
- package/templates/skills/feature-brief-writer/SKILL.md +86 -13
- package/templates/skills/product-context-map-writer/SKILL.md +211 -0
- package/templates/skills/product-vision-writer/SKILL.md +25 -0
- package/templates/skills/scrum-master-planner/SKILL.md +29 -0
- package/templates/skills/technical-design-writer/SKILL.md +48 -5
- package/templates/skills/ux-expert/SKILL.md +28 -0
|
@@ -77,7 +77,7 @@ function logSyncNextStep() {
|
|
|
77
77
|
log.info(line);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
function diagnoseState({ rootPath, state }) {
|
|
80
|
+
export function diagnoseState({ rootPath, state }) {
|
|
81
81
|
const issues = [];
|
|
82
82
|
const manifest = readTemplateManifest();
|
|
83
83
|
if (state.templateVersion !== manifest.templateVersion) {
|
package/bin/shared/catalog.js
CHANGED
|
@@ -27,6 +27,15 @@ export const MANDATORY_SKILLS = [
|
|
|
27
27
|
windsurf: '.agents/skills/product-vision-writer/SKILL.md',
|
|
28
28
|
},
|
|
29
29
|
},
|
|
30
|
+
{
|
|
31
|
+
templateRelativePath: 'skills/product-context-map-writer/SKILL.md',
|
|
32
|
+
targetRelativePathsByAgent: {
|
|
33
|
+
codex: '.agents/skills/product-context-map-writer/SKILL.md',
|
|
34
|
+
gemini: '.agents/skills/product-context-map-writer/SKILL.md',
|
|
35
|
+
claude: '.agents/skills/product-context-map-writer/SKILL.md',
|
|
36
|
+
windsurf: '.agents/skills/product-context-map-writer/SKILL.md',
|
|
37
|
+
},
|
|
38
|
+
},
|
|
30
39
|
{
|
|
31
40
|
templateRelativePath: 'skills/feature-brief-writer/SKILL.md',
|
|
32
41
|
targetRelativePathsByAgent: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@juancr11/sibu",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "CLI for setting up a local AI-augmented development workflow.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"dev:unlink": "pnpm unlink --global sibu",
|
|
33
33
|
"prepack": "pnpm run build",
|
|
34
34
|
"smoke:init": "node ./bin/sibu.js init",
|
|
35
|
-
"test": "pnpm build && node
|
|
35
|
+
"test": "pnpm build && node ./scripts/run-tests.mjs",
|
|
36
36
|
"validate:packed-runtime": "node ./scripts/validate-packed-cli-runtime.mjs",
|
|
37
37
|
"validate:doctor-version-advisory": "pnpm build && node ./scripts/validate-doctor-version-advisory.mjs",
|
|
38
38
|
"validate:post-update-doctor-drift": "pnpm build && node ./scripts/validate-post-update-doctor-drift.mjs",
|
package/templates/AGENTS.md
CHANGED
|
@@ -36,9 +36,12 @@ Keep responses concise by default, but spend the context needed for correctness,
|
|
|
36
36
|
|
|
37
37
|
## Skill routing
|
|
38
38
|
|
|
39
|
+
For planned product/feature work, use this pipeline: product vision -> product context map -> feature brief -> technical design -> optional UX -> epics/stories -> AI implementation plan -> AI executor. Narrow code fixes and small local changes do not require the full pipeline unless product scope, context ownership, or architecture direction is unclear.
|
|
40
|
+
|
|
39
41
|
- For any code-writing task, use `clean-code`.
|
|
40
42
|
- For requests to create, revise, or clarify a product vision, product strategy narrative, product north star, positioning, product principles, product voice, target user definition, product boundaries, or success signals, use `product-vision-writer`.
|
|
41
|
-
- For requests to create, revise, or clarify a
|
|
43
|
+
- For requests to create, revise, or clarify a Product Context Map, product responsibility boundaries, context ownership, or `docs/product-context-map.md`, use `product-context-map-writer`.
|
|
44
|
+
- For requests to create, revise, or clarify a business-level feature brief after Product Context Map work, feature definition, feature scope, MVP feature boundaries, business acceptance criteria, or product-level feature rationale, use `feature-brief-writer`.
|
|
42
45
|
- For requests to create, revise, or clarify a technical design, implementation-oriented design doc, architecture approach, technical tradeoffs, technical risks, or implementation plan for an approved feature, use `technical-design-writer`.
|
|
43
46
|
- For requests to create Epics, User Stories, Scrum planning artifacts, backlog slices, or delivery plans from an approved feature brief and technical design, use `scrum-master-planner`.
|
|
44
47
|
- For requests to turn a specific User Story into an implementation checklist, coding plan, step-by-step execution plan, or baby-step plan, use `ai-implementation-planner`.
|
package/templates/manifest.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
|
-
"templateVersion": "
|
|
2
|
+
"templateVersion": "63",
|
|
3
3
|
"templates": {
|
|
4
4
|
"AGENTS.md": {
|
|
5
|
-
"version": "
|
|
5
|
+
"version": "23",
|
|
6
6
|
"description": "Project-level agent instructions and Sibu maintenance guidance.",
|
|
7
7
|
"changes": [
|
|
8
|
-
"Adds
|
|
8
|
+
"Adds Product Context Map routing and clarifies the planned feature-work pipeline without requiring it for narrow code fixes."
|
|
9
9
|
]
|
|
10
10
|
},
|
|
11
11
|
".codex/config.toml": {
|
|
@@ -38,24 +38,31 @@
|
|
|
38
38
|
]
|
|
39
39
|
},
|
|
40
40
|
"skills/product-vision-writer/SKILL.md": {
|
|
41
|
-
"version": "
|
|
41
|
+
"version": "6",
|
|
42
42
|
"description": "Mandatory product vision writer skill installed once at the shared .agents/skills workspace path.",
|
|
43
43
|
"changes": [
|
|
44
|
-
"
|
|
44
|
+
"Adds a pipeline contract that clarifies required inputs, owned output, stop conditions, and stage boundaries for product vision work."
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
"skills/product-context-map-writer/SKILL.md": {
|
|
48
|
+
"version": "3",
|
|
49
|
+
"description": "Mandatory Product Context Map writer skill installed once at the shared .agents/skills workspace path.",
|
|
50
|
+
"changes": [
|
|
51
|
+
"Adds a pipeline contract that clarifies required inputs, owned output, stop conditions, and stage boundaries for Product Context Map work."
|
|
45
52
|
]
|
|
46
53
|
},
|
|
47
54
|
"skills/feature-brief-writer/SKILL.md": {
|
|
48
|
-
"version": "
|
|
55
|
+
"version": "7",
|
|
49
56
|
"description": "Mandatory feature brief writer skill installed once at the shared .agents/skills workspace path.",
|
|
50
57
|
"changes": [
|
|
51
|
-
"
|
|
58
|
+
"Adds a pipeline contract that clarifies required inputs, owned output, stop conditions, and stage boundaries for feature brief work."
|
|
52
59
|
]
|
|
53
60
|
},
|
|
54
61
|
"skills/technical-design-writer/SKILL.md": {
|
|
55
|
-
"version": "
|
|
62
|
+
"version": "14",
|
|
56
63
|
"description": "Mandatory technical design writer skill installed once at the shared .agents/skills workspace path.",
|
|
57
64
|
"changes": [
|
|
58
|
-
"
|
|
65
|
+
"Adds a pipeline contract that clarifies required inputs, owned output, stop conditions, and Product Context boundary translation for technical design work."
|
|
59
66
|
]
|
|
60
67
|
},
|
|
61
68
|
"skills/typescript/SKILL.md": {
|
|
@@ -69,21 +76,21 @@
|
|
|
69
76
|
"version": "1",
|
|
70
77
|
"description": "Selectable Go skill installed when Go language support is selected.",
|
|
71
78
|
"changes": [
|
|
72
|
-
"Adds an optional Go skill with concise, Effective Go
|
|
79
|
+
"Adds an optional Go skill with concise, Effective Go–style guidance for .go files, package APIs, interfaces, errors, receivers, concurrency, and tests."
|
|
73
80
|
]
|
|
74
81
|
},
|
|
75
82
|
"skills/architecture/ddd-hexagonal/SKILL.md": {
|
|
76
|
-
"version": "
|
|
83
|
+
"version": "2",
|
|
77
84
|
"description": "Selectable back-end architecture skill for DDD and Hexagonal Architecture.",
|
|
78
85
|
"changes": [
|
|
79
|
-
"Adds
|
|
86
|
+
"Adds Product Context compatibility so DDD + Hexagonal guidance preserves approved context ownership while structuring domain, application, and infrastructure concerns."
|
|
80
87
|
]
|
|
81
88
|
},
|
|
82
89
|
"skills/architecture/command-pattern/SKILL.md": {
|
|
83
|
-
"version": "
|
|
90
|
+
"version": "3",
|
|
84
91
|
"description": "Selectable architecture skill for command-oriented vertical slices using Command Pattern, Hexagonal Architecture, and DDD principles.",
|
|
85
92
|
"changes": [
|
|
86
|
-
"
|
|
93
|
+
"Adds Product Context compatibility so command-oriented vertical slices stay within or clearly under approved context ownership."
|
|
87
94
|
]
|
|
88
95
|
},
|
|
89
96
|
"skills/nextjs/SKILL.md": {
|
|
@@ -101,24 +108,24 @@
|
|
|
101
108
|
]
|
|
102
109
|
},
|
|
103
110
|
"skills/scrum-master-planner/SKILL.md": {
|
|
104
|
-
"version": "
|
|
111
|
+
"version": "6",
|
|
105
112
|
"description": "Mandatory Scrum planner skill for creating pragmatic Epics and User Stories from approved feature and technical design docs.",
|
|
106
113
|
"changes": [
|
|
107
|
-
"
|
|
114
|
+
"Adds a pipeline contract that clarifies required inputs, owned Epic and Story outputs, stop conditions, and stage boundaries for Scrum planning."
|
|
108
115
|
]
|
|
109
116
|
},
|
|
110
117
|
"skills/ai-implementation-planner/SKILL.md": {
|
|
111
|
-
"version": "
|
|
118
|
+
"version": "9",
|
|
112
119
|
"description": "Mandatory AI implementation planner skill for turning one approved User Story into small, story-local implementation step files.",
|
|
113
120
|
"changes": [
|
|
114
|
-
"
|
|
121
|
+
"Adds a pipeline contract that clarifies required inputs, owned implementation plan outputs, stop conditions, and stage boundaries for implementation planning."
|
|
115
122
|
]
|
|
116
123
|
},
|
|
117
124
|
"skills/ai-implementation-plan-executor/SKILL.md": {
|
|
118
|
-
"version": "
|
|
125
|
+
"version": "14",
|
|
119
126
|
"description": "Mandatory AI implementation plan executor skill for implementing existing story implementation plans one reviewed step at a time.",
|
|
120
127
|
"changes": [
|
|
121
|
-
"
|
|
128
|
+
"Adds a pipeline contract that clarifies required inputs, current-step outputs, stop conditions, and review-gated execution boundaries."
|
|
122
129
|
]
|
|
123
130
|
},
|
|
124
131
|
"skills/ai-prompt-engineer-master/SKILL.md": {
|
|
@@ -129,10 +136,10 @@
|
|
|
129
136
|
]
|
|
130
137
|
},
|
|
131
138
|
"skills/ux-expert/SKILL.md": {
|
|
132
|
-
"version": "
|
|
139
|
+
"version": "5",
|
|
133
140
|
"description": "Selectable UX expert skill for UI-changing features, responsive design, flows, states, accessibility, and binding mockups.",
|
|
134
141
|
"changes": [
|
|
135
|
-
"
|
|
142
|
+
"Adds a pipeline contract that clarifies required inputs, owned output, stop conditions, and UI-impact boundaries for UX design work."
|
|
136
143
|
]
|
|
137
144
|
}
|
|
138
145
|
}
|
|
@@ -9,6 +9,38 @@ description: Execute an existing ai-implementation-planner story implementation
|
|
|
9
9
|
|
|
10
10
|
Execute one existing story implementation plan, one ordered step file at a time, with human review between steps. This skill owns execution from an existing `.impl_plan/` folder; it does not create plans, change story scope, or skip review gates.
|
|
11
11
|
|
|
12
|
+
## Pipeline Contract
|
|
13
|
+
|
|
14
|
+
### What this skill needs
|
|
15
|
+
|
|
16
|
+
- Exactly one User Story file or one story-local `.impl_plan/` folder.
|
|
17
|
+
- Ordered implementation step files in that `.impl_plan/` folder.
|
|
18
|
+
- The story, Epic brief, feature brief, and technical design for the selected plan.
|
|
19
|
+
- `docs/features/<feature-slug>/ux.md` only when the story, step, or feature has UI impact.
|
|
20
|
+
- Relevant repo files, validation output, and implementation skills needed for the current step.
|
|
21
|
+
|
|
22
|
+
### What this skill writes
|
|
23
|
+
|
|
24
|
+
- Code, docs, tests, or other repo changes required by the current implementation step only.
|
|
25
|
+
- Step approval metadata in the current step file only after explicit user approval.
|
|
26
|
+
- A focused commit for each approved step.
|
|
27
|
+
|
|
28
|
+
### When this skill stops
|
|
29
|
+
|
|
30
|
+
- The user does not provide or clearly identify exactly one User Story file or `.impl_plan/` folder.
|
|
31
|
+
- The implementation plan is missing, empty, invalid, or has no ordered step files; direct the user to `ai-implementation-planner`.
|
|
32
|
+
- Any required source artifact is missing, incomplete, or invalid in a way its owning stage should repair.
|
|
33
|
+
- The story, step, or feature has UI impact and `ux.md` is missing; direct the user to `ux-expert`.
|
|
34
|
+
- The request is to create an implementation plan, change story scope, skip review gates, or perform another pipeline stage.
|
|
35
|
+
|
|
36
|
+
### What this skill must not do
|
|
37
|
+
|
|
38
|
+
- Do not create product visions, Product Context Maps, feature briefs, technical designs, UX specs, Epics, User Stories, or implementation plans.
|
|
39
|
+
- Do not modify prior-stage artifacts except for approval metadata in the current step file.
|
|
40
|
+
- Do not reread `docs/product-context-map.md` by default; trust `technical_design.md` for implementation boundaries.
|
|
41
|
+
- Do not implement multiple unapproved steps in one pass or mark a step approved before explicit user approval.
|
|
42
|
+
- Do not weaken the one-step-at-a-time execution model, user review gate, or approved-step commit behavior.
|
|
43
|
+
|
|
12
44
|
## Required source context
|
|
13
45
|
|
|
14
46
|
The user must provide or clearly identify exactly one User Story or implementation plan folder:
|
|
@@ -36,6 +68,8 @@ docs/features/<feature-slug>/ux.md # when the story, step, or feature has UI im
|
|
|
36
68
|
|
|
37
69
|
Also read `docs/product-vision.md` when product fit, target user, scope boundaries, or success signals are ambiguous.
|
|
38
70
|
|
|
71
|
+
When the story, implementation plan, feature brief, or technical design includes Product Context guidance, treat it as part of the execution contract. Product Contexts answer “where does this work belong?” Approved contexts define where code work should stay.
|
|
72
|
+
|
|
39
73
|
If the story, any step, or feature has UI impact and `docs/features/<feature-slug>/ux.md` is missing, stop and ask the user to create the UX spec with `ux-expert` before implementation.
|
|
40
74
|
|
|
41
75
|
When `ux.md` includes mockups, treat them as binding UI goals. Implementation must preserve the mockup structure, hierarchy, visible content, dominant interactions, major visual emphasis, and breakpoint-specific layout. Do not redesign the UI during execution; implement the approved UX and stop if technical constraints require a UX revision.
|
|
@@ -146,11 +180,14 @@ Do not automatically start planning or implementing the next story. This check i
|
|
|
146
180
|
Do:
|
|
147
181
|
|
|
148
182
|
- preserve the source story scope and acceptance criteria
|
|
183
|
+
- preserve approved Product Context boundaries when present
|
|
149
184
|
- follow the current step file exactly unless it conflicts with source context
|
|
150
185
|
- keep changes focused on the current step's `## Scope` and `## Files`
|
|
186
|
+
- keep work inside the contexts named by the approved step and technical design
|
|
151
187
|
- use existing project patterns and the relevant skills
|
|
152
188
|
- run focused validation for the current step when possible
|
|
153
189
|
- stop and ask if the step is ambiguous, missing required files, or conflicts with the technical design
|
|
190
|
+
- stop and ask before moving work into an unrelated Product Context unless the approved step or technical design explicitly justifies it
|
|
154
191
|
|
|
155
192
|
Do not:
|
|
156
193
|
|
|
@@ -158,6 +195,7 @@ Do not:
|
|
|
158
195
|
- implement multiple unapproved steps in one pass
|
|
159
196
|
- mark a step approved before the user explicitly approves it
|
|
160
197
|
- add product scope absent from the story, Epic, feature brief, technical design, or step file
|
|
198
|
+
- silently move work into unrelated or unapproved Product Contexts
|
|
161
199
|
- continue past a failed validation without reporting it and asking how to proceed
|
|
162
200
|
- leave approved step changes uncommitted before moving to the next step
|
|
163
201
|
|
|
@@ -9,6 +9,35 @@ description: Turn one approved User Story Markdown file into LLM-sized implement
|
|
|
9
9
|
|
|
10
10
|
Turn one approved User Story into concrete Markdown step files an AI coding agent can execute safely and completely. This skill owns implementation planning for one story at a time, not product scope, technical design decisions, Scrum planning, or code implementation.
|
|
11
11
|
|
|
12
|
+
## Pipeline Contract
|
|
13
|
+
|
|
14
|
+
### What this skill needs
|
|
15
|
+
|
|
16
|
+
- Exactly one User Story file at `docs/features/<feature-slug>/epics/<epic-slug>/stories/<order>-<story-slug>.md`.
|
|
17
|
+
- The story's `epic_brief.md`.
|
|
18
|
+
- The feature's `feature_brief.md`.
|
|
19
|
+
- The feature's `technical_design.md`.
|
|
20
|
+
- `docs/features/<feature-slug>/ux.md` only when the story or feature has UI impact.
|
|
21
|
+
- Relevant repo files, tests, scripts, and implementation skills needed to make concrete step files.
|
|
22
|
+
|
|
23
|
+
### What this skill writes
|
|
24
|
+
|
|
25
|
+
- Story-local implementation step files under `docs/features/<feature-slug>/epics/<epic-slug>/stories/<order>-<story-slug>.impl_plan/*.md`.
|
|
26
|
+
|
|
27
|
+
### When this skill stops
|
|
28
|
+
|
|
29
|
+
- The user does not provide or clearly identify exactly one User Story file.
|
|
30
|
+
- Any required source artifact is missing, incomplete, or invalid in a way its owning stage should repair.
|
|
31
|
+
- The story or feature has UI impact and `ux.md` is missing; direct the user to `ux-expert`.
|
|
32
|
+
- The request is to write production code, execute an implementation plan, create stories, or perform another pipeline stage.
|
|
33
|
+
|
|
34
|
+
### What this skill must not do
|
|
35
|
+
|
|
36
|
+
- Do not create or update product visions, Product Context Maps, feature briefs, technical designs, UX specs, Epics, User Stories, or production code.
|
|
37
|
+
- Do not modify prior-stage artifacts.
|
|
38
|
+
- Do not reread `docs/product-context-map.md` by default; trust `technical_design.md` for implementation boundaries.
|
|
39
|
+
- Do not infer implementation scope from an Epic brief, feature brief, or technical design without exactly one User Story.
|
|
40
|
+
|
|
12
41
|
## Required input
|
|
13
42
|
|
|
14
43
|
The user must provide or clearly identify exactly one User Story file:
|
|
@@ -33,6 +62,8 @@ docs/features/<feature-slug>/ux.md # when the story or feature has UI impact
|
|
|
33
62
|
|
|
34
63
|
Also read `docs/product-vision.md` when product fit, target user, scope boundaries, or success signals are ambiguous.
|
|
35
64
|
|
|
65
|
+
When the feature brief or technical design includes Product Context guidance, treat it as required planning context. Product Contexts answer “where does this work belong?” Implementation steps must preserve approved context boundaries.
|
|
66
|
+
|
|
36
67
|
If the story or feature has UI impact and `docs/features/<feature-slug>/ux.md` is missing, stop and ask the user to create the UX spec with `ux-expert` before implementation planning.
|
|
37
68
|
|
|
38
69
|
When `ux.md` includes mockups, treat them as binding UI goals. Implementation steps must preserve the mockup structure, hierarchy, visible content, dominant interactions, major visual emphasis, and breakpoint-specific layout. Do not redesign the UI in the implementation plan; plan code steps that implement the approved UX and stop if technical constraints require a UX revision.
|
|
@@ -101,6 +132,8 @@ Do:
|
|
|
101
132
|
- call out dependencies, sequencing constraints, and risk checkpoints
|
|
102
133
|
- include test, build, lint, or manual validation commands when known
|
|
103
134
|
- include a stop-and-ask condition when the implementation would exceed the technical design
|
|
135
|
+
- keep work inside the approved Product Contexts unless cross-context work is explicit in the source artifacts
|
|
136
|
+
- call out cross-context ownership and coordination in the relevant step files
|
|
104
137
|
|
|
105
138
|
Do not:
|
|
106
139
|
|
|
@@ -110,6 +143,7 @@ Do not:
|
|
|
110
143
|
- include prerequisite reading, scope confirmation, or repository inspection as step files
|
|
111
144
|
- create task noise such as “review the code” without a specific implementation or validation purpose
|
|
112
145
|
- prescribe architecture that conflicts with the selected architecture skill or technical design
|
|
146
|
+
- move work into unrelated or unapproved Product Contexts; add a stop-and-ask condition instead
|
|
113
147
|
|
|
114
148
|
## Workflow
|
|
115
149
|
|
|
@@ -129,11 +163,12 @@ If the story lacks testable acceptance criteria, stop and ask for the User Story
|
|
|
129
163
|
|
|
130
164
|
### 2. Read feature and technical context
|
|
131
165
|
|
|
132
|
-
From the Epic and feature brief, identify delivery boundaries and
|
|
166
|
+
From the Epic and feature brief, identify delivery boundaries, user value, and approved Product Context ownership when present.
|
|
133
167
|
|
|
134
168
|
From the technical design, identify:
|
|
135
169
|
|
|
136
170
|
- intended implementation approach
|
|
171
|
+
- Product Context boundaries, ownership, and any explicit cross-context work
|
|
137
172
|
- affected commands, modules, files, adapters, docs, or tests
|
|
138
173
|
- known risks or unresolved decisions
|
|
139
174
|
- expected validation commands or checks
|
|
@@ -184,6 +219,7 @@ Step-file requirements:
|
|
|
184
219
|
- keep each step small enough for one AI coding pass
|
|
185
220
|
- name every known file, module, command, or artifact to change or validate
|
|
186
221
|
- include explicit out-of-scope boundaries in `Scope` when they prevent scope creep
|
|
222
|
+
- preserve Product Context boundaries in `Scope`; call out cross-context work explicitly when required
|
|
187
223
|
- include validation commands in `Done when` when known
|
|
188
224
|
- ensure the full set of step files covers every acceptance criterion
|
|
189
225
|
|
|
@@ -200,6 +236,7 @@ Before finishing, verify:
|
|
|
200
236
|
- every step file has clear done conditions
|
|
201
237
|
- validation is explicit enough to prove the story is complete
|
|
202
238
|
- the step files do not add scope beyond the source artifacts
|
|
239
|
+
- the step files preserve approved Product Context boundaries and stop before unrelated context movement
|
|
203
240
|
- architecture and code-quality steps align with the relevant skills
|
|
204
241
|
|
|
205
242
|
## Final response behavior
|
|
@@ -10,6 +10,16 @@ Use this skill to design and implement software features as independent, end-to-
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## Product Context Compatibility
|
|
14
|
+
|
|
15
|
+
Product Contexts answer “where does this work belong?” Command Pattern guidance answers “how is that work structured as command-oriented vertical slices?”
|
|
16
|
+
|
|
17
|
+
When `docs/product-context-map.md`, a feature brief, or a technical design names Product Contexts, place each vertical slice within or clearly under the relevant Product Context's ownership. The feature-local Command, Handler, Port, Adapter, and Result guidance still applies inside that context boundary.
|
|
18
|
+
|
|
19
|
+
Do not invent new Product Contexts during design or implementation. If work does not fit the approved contexts, stop and route the decision back to the `product-context-map-writer` workflow.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
13
23
|
## 1. The Component Contract
|
|
14
24
|
Every feature is defined by four distinct roles. This separation ensures that the "Core" logic remains pure and testable.
|
|
15
25
|
|
|
@@ -27,6 +27,16 @@ This skill is backend-focused. It does not cover frontend component architecture
|
|
|
27
27
|
|
|
28
28
|
If a simpler structure preserves clear boundaries, prefer the simpler structure.
|
|
29
29
|
|
|
30
|
+
## Product Context compatibility
|
|
31
|
+
|
|
32
|
+
Product Contexts answer “where does this work belong?” DDD + Hexagonal answers “how is that context structured internally?”
|
|
33
|
+
|
|
34
|
+
When `docs/product-context-map.md`, a feature brief, or a technical design names Product Contexts, treat them as the first ownership boundary to preserve before choosing domain/application/infra placement. Prefer placing domain concepts, use cases, ports, and adapters under the selected context's ownership. If work crosses contexts, name the owning context for each part and keep dependencies explicit.
|
|
35
|
+
|
|
36
|
+
A Product Context may contain `domain`, `application`, and `infra`/adapter concerns, but the map remains architecture-agnostic: it is not a required DDD Bounded Context, folder structure, service boundary, or layer model.
|
|
37
|
+
|
|
38
|
+
Do not invent new Product Contexts during design or implementation. If work does not fit the approved contexts, stop and route the decision back to the `product-context-map-writer` workflow.
|
|
39
|
+
|
|
30
40
|
## The layers
|
|
31
41
|
|
|
32
42
|
### Domain
|
|
@@ -11,21 +11,52 @@ Create concise feature briefs that explain what a feature is, why it matters, wh
|
|
|
11
11
|
|
|
12
12
|
This skill owns the product/business shape of a feature. It does not own UI interaction design, technical architecture, implementation plans, data models, APIs, or task breakdowns.
|
|
13
13
|
|
|
14
|
+
## Pipeline Contract
|
|
15
|
+
|
|
16
|
+
### What this skill needs
|
|
17
|
+
|
|
18
|
+
- `docs/product-vision.md`.
|
|
19
|
+
- `docs/product-context-map.md`.
|
|
20
|
+
- Enough user-provided feature intent to define the feature problem, target user/scenario, business goal, MVP boundary, out-of-scope boundary, success signals, constraints, and Product Context fit.
|
|
21
|
+
|
|
22
|
+
### What this skill writes
|
|
23
|
+
|
|
24
|
+
- `docs/features/<feature-slug>/feature_brief.md`.
|
|
25
|
+
- The containing `docs/features/<feature-slug>/` directory when needed.
|
|
26
|
+
|
|
27
|
+
### When this skill stops
|
|
28
|
+
|
|
29
|
+
- `docs/product-vision.md` is missing; tell the user to create it first with `product-vision-writer`.
|
|
30
|
+
- `docs/product-context-map.md` is missing; tell the user to create it first with `product-context-map-writer`.
|
|
31
|
+
- The feature appears to require a new or changed Product Context; direct the user back to `product-context-map-writer`.
|
|
32
|
+
- The request belongs to another pipeline stage, such as technical design, UX design, Scrum planning, implementation planning, or implementation execution.
|
|
33
|
+
- Current-stage feature intent is unclear; ask one focused question at a time until enough information is available.
|
|
34
|
+
|
|
35
|
+
### What this skill must not do
|
|
36
|
+
|
|
37
|
+
- Do not create or update Product Context Maps, technical designs, UX specs, Epics, User Stories, implementation plans, or production code.
|
|
38
|
+
- Do not invent Product Contexts or use contexts that are absent from `docs/product-context-map.md`.
|
|
39
|
+
- Do not require a final confirmation summary before writing once enough feature brief context is available.
|
|
40
|
+
- Do not duplicate or rewrite the product vision; apply only the relevant implications to the feature.
|
|
41
|
+
|
|
14
42
|
## Required source of truth
|
|
15
43
|
|
|
16
44
|
Before doing any feature-brief work, read:
|
|
17
45
|
|
|
18
46
|
```txt
|
|
19
47
|
docs/product-vision.md
|
|
48
|
+
docs/product-context-map.md
|
|
20
49
|
```
|
|
21
50
|
|
|
22
51
|
Use the product vision as the source of truth for the product's purpose, audience, positioning, principles, voice, boundaries, trust expectations, and success signals.
|
|
23
52
|
|
|
53
|
+
Use the Product Context Map as the source of truth for where feature work belongs. Product Contexts answer “where does this work belong?” Do not invent Product Contexts in a feature brief.
|
|
54
|
+
|
|
24
55
|
Do not duplicate or rewrite the product vision inside the feature brief. Apply it to the specific feature being defined.
|
|
25
56
|
|
|
26
57
|
## Hard start rule
|
|
27
58
|
|
|
28
|
-
Do not start a feature brief if `docs/product-vision.md` is missing.
|
|
59
|
+
Do not start a feature brief if `docs/product-vision.md` or `docs/product-context-map.md` is missing.
|
|
29
60
|
|
|
30
61
|
If the product vision is missing:
|
|
31
62
|
|
|
@@ -34,6 +65,13 @@ If the product vision is missing:
|
|
|
34
65
|
3. Instruct the user to create the product vision first with the `product-vision-writer` skill.
|
|
35
66
|
4. Do not draft, infer, or save a feature brief until the product vision exists.
|
|
36
67
|
|
|
68
|
+
If the Product Context Map is missing:
|
|
69
|
+
|
|
70
|
+
1. Stop.
|
|
71
|
+
2. Tell the user that a feature brief requires `docs/product-context-map.md`.
|
|
72
|
+
3. Instruct the user to create the map first with the `product-context-map-writer` skill.
|
|
73
|
+
4. Do not draft, infer, or save a feature brief until the map exists.
|
|
74
|
+
|
|
37
75
|
## Use this skill for
|
|
38
76
|
|
|
39
77
|
- defining a new feature at the business/product level
|
|
@@ -56,9 +94,21 @@ Use a short kebab-case feature slug that matches the feature name. Keep all arti
|
|
|
56
94
|
|
|
57
95
|
Do not write the brief to technical design, UX, user story, implementation plan, or backlog files unless the user explicitly asks for a separate artifact after the feature brief exists.
|
|
58
96
|
|
|
97
|
+
## Interview posture
|
|
98
|
+
|
|
99
|
+
Be deliberately interrogative before drafting. The feature brief should reflect the user's intent, not the assistant's assumptions.
|
|
100
|
+
|
|
101
|
+
- Ask one focused question at a time.
|
|
102
|
+
- Keep asking until you have complete practical understanding and explicit user alignment.
|
|
103
|
+
- Prefer follow-up questions over filling gaps with plausible invention.
|
|
104
|
+
- Treat "100% understanding" as: feature intent, target user, scenario, user problem, business goal, MVP boundary, out-of-scope boundary, success signals, and known constraints are all clear enough to defend in the brief.
|
|
105
|
+
- Treat "enough context" as: feature intent, target user/scenario, desired outcome, MVP boundary, out-of-scope boundary, success signals, constraints, and Product Context fit are clear enough to defend in the brief.
|
|
106
|
+
- If the user gives a partial answer, acknowledge the useful part and ask the next most important unresolved question.
|
|
107
|
+
- Do not ask a large questionnaire all at once.
|
|
108
|
+
|
|
59
109
|
## Workflow
|
|
60
110
|
|
|
61
|
-
### 1. Read the product vision
|
|
111
|
+
### 1. Read the product vision and Product Context Map
|
|
62
112
|
|
|
63
113
|
Read `docs/product-vision.md` first and identify:
|
|
64
114
|
|
|
@@ -72,25 +122,40 @@ Read `docs/product-vision.md` first and identify:
|
|
|
72
122
|
|
|
73
123
|
Use these as constraints for the feature brief.
|
|
74
124
|
|
|
75
|
-
|
|
125
|
+
Then read `docs/product-context-map.md` and identify which existing Product Contexts may own the requested feature. A feature brief must name one or more existing Product Contexts.
|
|
76
126
|
|
|
77
|
-
|
|
127
|
+
If no existing Product Context fits:
|
|
128
|
+
|
|
129
|
+
1. Stop before drafting.
|
|
130
|
+
2. Tell the user the feature appears to require a Product Context Map update.
|
|
131
|
+
3. Provide this suggested prompt, adapted to the user's feature:
|
|
132
|
+
|
|
133
|
+
```txt
|
|
134
|
+
Use product-context-map-writer to update docs/product-context-map.md for this feature: <feature summary>. Decide whether it belongs in an existing Product Context or requires a new/changed context, then update the map only after confirming the responsibility boundary with me.
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
4. Do not draft, infer, or save a feature brief until the map is updated.
|
|
138
|
+
|
|
139
|
+
### 2. Clarify feature intent before drafting
|
|
140
|
+
|
|
141
|
+
Do not draft a feature brief from a vague or merely plausible request.
|
|
78
142
|
|
|
79
143
|
A request is too vague when the user gives only a broad area, product milestone, theme, or label such as "define the MVP," "write the onboarding feature," "make a sync feature," or "I want analytics" without enough detail to know what the user actually means.
|
|
80
144
|
|
|
81
|
-
When feature intent is vague:
|
|
145
|
+
When feature intent is vague or incomplete:
|
|
82
146
|
|
|
83
147
|
1. Stop before drafting.
|
|
84
148
|
2. Explain briefly that the feature direction needs clarification before a responsible brief can be written.
|
|
85
149
|
3. Ask one focused discovery question.
|
|
86
150
|
4. Wait for the user's answer.
|
|
87
151
|
5. Continue asking one question at a time until there is enough context to write a useful, product-vision-aligned brief.
|
|
152
|
+
6. Draft once the missing information is clear enough to produce the feature brief.
|
|
88
153
|
|
|
89
154
|
Do not ask the user to answer a large questionnaire all at once. Keep the interview conversational and focused.
|
|
90
155
|
|
|
91
156
|
### 3. Gather the minimum required feature context
|
|
92
157
|
|
|
93
|
-
Ask
|
|
158
|
+
Ask every question needed to remove material ambiguity, but only one at a time. Clarify:
|
|
94
159
|
|
|
95
160
|
- what feature or capability the user wants
|
|
96
161
|
- what the user means by broad labels such as MVP, onboarding, sync, analytics, or automation
|
|
@@ -102,7 +167,9 @@ Ask only for missing information that materially affects the brief. Use as few q
|
|
|
102
167
|
- what should stay out of scope
|
|
103
168
|
- known constraints, risks, or open decisions
|
|
104
169
|
|
|
105
|
-
Draft only once feature intent, target user/scenario, desired outcome,
|
|
170
|
+
Draft only once feature intent, target user/scenario, desired outcome, MVP boundary, out-of-scope boundary, success signals, constraints, and Product Context fit are clear enough to avoid invention.
|
|
171
|
+
|
|
172
|
+
If the conversation stalls, offer a concise default assumption for the next unresolved point and ask the user to confirm or correct it before proceeding.
|
|
106
173
|
|
|
107
174
|
### 4. Write a business-level brief
|
|
108
175
|
|
|
@@ -119,6 +186,9 @@ Recommended structure:
|
|
|
119
186
|
## Product Vision Fit
|
|
120
187
|
<How this feature supports the product vision, principles, audience, or positioning.>
|
|
121
188
|
|
|
189
|
+
## Product Context
|
|
190
|
+
<One or more existing Product Contexts from docs/product-context-map.md that own this feature, with a brief fit rationale.>
|
|
191
|
+
|
|
122
192
|
## User / Customer Problem
|
|
123
193
|
<The user need, pain, desire, or opportunity this feature addresses.>
|
|
124
194
|
|
|
@@ -181,6 +251,7 @@ If the file already exists, read it first. Treat the request as a revision when
|
|
|
181
251
|
Aim for writing that is:
|
|
182
252
|
|
|
183
253
|
- loyal to the required product vision
|
|
254
|
+
- explicit about which existing Product Contexts own the feature
|
|
184
255
|
- specific to the user's feature
|
|
185
256
|
- grounded in the product vision
|
|
186
257
|
- concise
|
|
@@ -194,6 +265,7 @@ Avoid:
|
|
|
194
265
|
- vague benefits without user or business grounding
|
|
195
266
|
- feature lists without rationale
|
|
196
267
|
- drafting from vague feature labels without discovery
|
|
268
|
+
- inventing new Product Contexts instead of stopping for a map update
|
|
197
269
|
- inventing certainty where the product vision or user input is unresolved
|
|
198
270
|
|
|
199
271
|
## Decision rule
|
|
@@ -201,12 +273,13 @@ Avoid:
|
|
|
201
273
|
When shaping a feature brief, prefer:
|
|
202
274
|
|
|
203
275
|
1. alignment with `docs/product-vision.md`
|
|
204
|
-
2.
|
|
205
|
-
3. clear
|
|
206
|
-
4.
|
|
207
|
-
5.
|
|
208
|
-
6.
|
|
209
|
-
7.
|
|
276
|
+
2. fit with existing Product Contexts from `docs/product-context-map.md`
|
|
277
|
+
3. clear user value
|
|
278
|
+
4. clear business or product outcome
|
|
279
|
+
5. simple MVP scope
|
|
280
|
+
6. honest boundaries and tradeoffs
|
|
281
|
+
7. measurable success signals
|
|
282
|
+
8. non-technical acceptance criteria
|
|
210
283
|
|
|
211
284
|
## Final response behavior
|
|
212
285
|
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: product-context-map-writer
|
|
3
|
+
description: Create or update docs/product-context-map.md as an architecture-agnostic map of durable product responsibility boundaries before feature brief work.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Product Context Map Writer
|
|
7
|
+
|
|
8
|
+
## Purpose
|
|
9
|
+
|
|
10
|
+
Create or update `docs/product-context-map.md`, the product-level map of responsibility areas that downstream feature briefs, technical designs, and implementation plans use to decide where work belongs.
|
|
11
|
+
|
|
12
|
+
A Product Context is DDD-inspired but architecture-agnostic. It is not a folder structure, service boundary, layer, package, or requirement to use Domain-Driven Design.
|
|
13
|
+
|
|
14
|
+
This skill owns the Product Context Map only. It does not own feature briefs, technical designs, user stories, implementation plans, code structure, or architecture selection.
|
|
15
|
+
|
|
16
|
+
## Pipeline Contract
|
|
17
|
+
|
|
18
|
+
### What this skill needs
|
|
19
|
+
|
|
20
|
+
- `docs/product-vision.md`.
|
|
21
|
+
- Existing `docs/product-context-map.md` when revising the map.
|
|
22
|
+
- Enough user interview context to identify durable product responsibility boundaries, exclusions, scenarios, relationships, and cross-context rules.
|
|
23
|
+
|
|
24
|
+
### What this skill writes
|
|
25
|
+
|
|
26
|
+
- `docs/product-context-map.md`.
|
|
27
|
+
|
|
28
|
+
### When this skill stops
|
|
29
|
+
|
|
30
|
+
- `docs/product-vision.md` is missing; tell the user to create it first with `product-vision-writer`.
|
|
31
|
+
- The request belongs to another pipeline stage, such as feature brief, technical design, UX design, Scrum planning, implementation planning, or implementation execution.
|
|
32
|
+
- User answers are still too vague to defend Product Context boundaries; ask one focused question instead of drafting.
|
|
33
|
+
|
|
34
|
+
### What this skill must not do
|
|
35
|
+
|
|
36
|
+
- Do not create feature briefs, technical designs, UX specs, Epics, User Stories, implementation plans, or production code.
|
|
37
|
+
- Do not choose application architecture, folders, services, packages, database tables, or team ownership.
|
|
38
|
+
- Do not ask for or require a final confirmation summary before writing once enough context map information is available.
|
|
39
|
+
- Do not invent Product Contexts without grounding them in the product vision and user interview.
|
|
40
|
+
|
|
41
|
+
## What a Product Context is
|
|
42
|
+
|
|
43
|
+
A Product Context is a durable area of product responsibility: a named part of the product that owns specific user-facing behaviors, rules, decisions, promises, and language.
|
|
44
|
+
|
|
45
|
+
Use Product Contexts to answer:
|
|
46
|
+
|
|
47
|
+
```txt
|
|
48
|
+
When future work changes behavior, which part of the product is responsible for deciding how that behavior should work?
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
A Product Context is not:
|
|
52
|
+
|
|
53
|
+
- a feature
|
|
54
|
+
- a screen
|
|
55
|
+
- a command
|
|
56
|
+
- a workflow step
|
|
57
|
+
- a code folder
|
|
58
|
+
- a package, service, or database table
|
|
59
|
+
- a technical layer
|
|
60
|
+
- an org chart or team boundary
|
|
61
|
+
|
|
62
|
+
Good Product Contexts are stable product jobs that will absorb multiple features over time. They should be broad enough to own meaningful behavior and narrow enough that ownership is defensible.
|
|
63
|
+
|
|
64
|
+
Use these tests:
|
|
65
|
+
|
|
66
|
+
- If it describes a stable product job or promise, it may be a context.
|
|
67
|
+
- If it describes one command, page, database object, or implementation mechanism, it is probably too small or too technical.
|
|
68
|
+
- If it only says "user control," "quality," "security," or another value that applies everywhere, it is probably a cross-context rule instead of a context.
|
|
69
|
+
- If two candidates cannot explain what decisions they own differently, merge or rename them.
|
|
70
|
+
- If future feature work would routinely ask "does this belong here or there?", keep clarifying the boundary.
|
|
71
|
+
|
|
72
|
+
## Required source of truth
|
|
73
|
+
|
|
74
|
+
Before doing any Product Context Map work, read:
|
|
75
|
+
|
|
76
|
+
```txt
|
|
77
|
+
docs/product-vision.md
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Use the product vision as the source of truth for purpose, audience, positioning, principles, boundaries, trust expectations, and success signals.
|
|
81
|
+
|
|
82
|
+
## Hard start rule
|
|
83
|
+
|
|
84
|
+
Do not create or update a Product Context Map if `docs/product-vision.md` is missing.
|
|
85
|
+
|
|
86
|
+
If the product vision is missing:
|
|
87
|
+
|
|
88
|
+
1. Stop.
|
|
89
|
+
2. Tell the user that a Product Context Map requires `docs/product-vision.md`.
|
|
90
|
+
3. Instruct the user to create the product vision first with `product-vision-writer`.
|
|
91
|
+
4. Do not draft, infer, or save a context map until the product vision exists.
|
|
92
|
+
|
|
93
|
+
## Output location
|
|
94
|
+
|
|
95
|
+
Write the map to:
|
|
96
|
+
|
|
97
|
+
```txt
|
|
98
|
+
docs/product-context-map.md
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
This file is user-owned product content created or updated by this skill. It is not a Sibu-managed workflow template.
|
|
102
|
+
|
|
103
|
+
## Interview posture
|
|
104
|
+
|
|
105
|
+
Be deliberately interrogative before writing.
|
|
106
|
+
|
|
107
|
+
- Ask one focused question at a time.
|
|
108
|
+
- Keep asking until you understand the product's major responsibility areas, boundaries, key scenarios, relationships, and naming.
|
|
109
|
+
- Treat "100% understanding" as: contexts, responsibilities, exclusions, scenarios, relationships, and deep-module boundaries are clear enough to defend.
|
|
110
|
+
- Treat "enough context" as: contexts, responsibilities, exclusions, scenarios, relationships, and deep-module boundaries are clear enough to defend in the map.
|
|
111
|
+
- Do not ask the user to name the Product Contexts up front. Most users do not know what the contexts should be yet.
|
|
112
|
+
- Extract contexts by asking about product jobs, decisions, promises, lifecycle moments, and confusing boundaries.
|
|
113
|
+
- Teach briefly as needed. If the user seems unsure, explain Product Contexts in plain language before asking the next question.
|
|
114
|
+
- Do not create contexts from vague labels without confirming what they own and do not own.
|
|
115
|
+
- If the conversation stalls, propose one concise assumption for the next unresolved point and ask the user to confirm or correct it.
|
|
116
|
+
|
|
117
|
+
## Interview method
|
|
118
|
+
|
|
119
|
+
Derive candidate contexts from answers. Do not make the user design the map from scratch.
|
|
120
|
+
|
|
121
|
+
Prefer questions like:
|
|
122
|
+
|
|
123
|
+
- "What is the existing product/repo state before the product starts helping?"
|
|
124
|
+
- "What durable job is the product doing for the user at this moment?"
|
|
125
|
+
- "What decisions should this area own, and which decisions should it not own?"
|
|
126
|
+
- "What should never be silently changed or overwritten?"
|
|
127
|
+
- "After the first setup, what ongoing responsibilities does the product have?"
|
|
128
|
+
- "What user scenarios would feel like the same responsibility area over time?"
|
|
129
|
+
- "Where do you expect future features to create boundary confusion?"
|
|
130
|
+
- "Is this a separate responsibility area, or a rule that applies across all areas?"
|
|
131
|
+
- "If this behavior changed, what other parts of the product would need to know?"
|
|
132
|
+
- "What language would a product manager, designer, engineer, and agent all understand?"
|
|
133
|
+
|
|
134
|
+
Avoid questions like:
|
|
135
|
+
|
|
136
|
+
- "What contexts do you want?"
|
|
137
|
+
- "What bounded contexts should we use?"
|
|
138
|
+
- "What services/packages/modules should exist?"
|
|
139
|
+
- "What are your DDD boundaries?"
|
|
140
|
+
|
|
141
|
+
When a user gives a feature, command, screen, template, or technical mechanism, translate it into the product responsibility it represents and ask the user to confirm or correct that responsibility.
|
|
142
|
+
|
|
143
|
+
Example:
|
|
144
|
+
|
|
145
|
+
```txt
|
|
146
|
+
User: "sibu init scaffolds the AI files."
|
|
147
|
+
Assistant: "That sounds like an AI workflow adoption/scaffolding responsibility, not general project onboarding. It owns how an existing repo adopts Sibu-managed AI workflow files. Is that right?"
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Ask enough follow-up to fill these fields for each context:
|
|
151
|
+
|
|
152
|
+
- Purpose
|
|
153
|
+
- Owns
|
|
154
|
+
- Does not own
|
|
155
|
+
- Key scenarios
|
|
156
|
+
- Related contexts
|
|
157
|
+
- Boundary notes
|
|
158
|
+
|
|
159
|
+
Also identify cross-context rules, especially product values that apply everywhere, such as user ownership, safety, transparency, local customization, or quality.
|
|
160
|
+
|
|
161
|
+
## Context principles
|
|
162
|
+
|
|
163
|
+
Product Contexts should be:
|
|
164
|
+
|
|
165
|
+
- product responsibility boundaries, not implementation details
|
|
166
|
+
- deep modules: simple from the outside, rich enough inside to own meaningful behavior
|
|
167
|
+
- durable enough to guide multiple features over time
|
|
168
|
+
- named in language useful across product planning, technical design, implementation planning, and code organization
|
|
169
|
+
|
|
170
|
+
Avoid shallow contexts based on one feature, screen, command, workflow step, database table, folder, or technical layer.
|
|
171
|
+
|
|
172
|
+
## Workflow
|
|
173
|
+
|
|
174
|
+
1. Read `docs/product-vision.md`.
|
|
175
|
+
2. Read existing `docs/product-context-map.md` if it exists.
|
|
176
|
+
3. Ask one focused question at a time until the context direction is clear.
|
|
177
|
+
4. Write or update `docs/product-context-map.md` once enough context is available.
|
|
178
|
+
|
|
179
|
+
## Recommended map structure
|
|
180
|
+
|
|
181
|
+
```md
|
|
182
|
+
# Product Context Map
|
|
183
|
+
|
|
184
|
+
## Purpose
|
|
185
|
+
<How this map guides feature briefs, technical design, and implementation.>
|
|
186
|
+
|
|
187
|
+
## Contexts
|
|
188
|
+
|
|
189
|
+
### <Context Name>
|
|
190
|
+
- Purpose:
|
|
191
|
+
- Owns:
|
|
192
|
+
- Does not own:
|
|
193
|
+
- Key scenarios:
|
|
194
|
+
- Related contexts:
|
|
195
|
+
- Boundary notes:
|
|
196
|
+
|
|
197
|
+
## Cross-Context Rules
|
|
198
|
+
- <Rules for when work spans contexts or needs a new context.>
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
Adapt the structure when useful, but keep the map concise and product-level.
|
|
202
|
+
|
|
203
|
+
## Final response behavior
|
|
204
|
+
|
|
205
|
+
After writing the file, final-answer with only the path created or updated:
|
|
206
|
+
|
|
207
|
+
```txt
|
|
208
|
+
docs/product-context-map.md
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Do not paste the map body, excerpt, outline, or section summaries unless the user explicitly asks for inline review in the current request.
|
|
@@ -11,6 +11,31 @@ Help write product vision documents that make a product feel clear, intentional,
|
|
|
11
11
|
|
|
12
12
|
Default output path: `docs/product-vision.md`.
|
|
13
13
|
|
|
14
|
+
## Pipeline Contract
|
|
15
|
+
|
|
16
|
+
### What this skill needs
|
|
17
|
+
|
|
18
|
+
- Enough user-provided product discovery to define or revise a product vision.
|
|
19
|
+
- No upstream pipeline artifact is required.
|
|
20
|
+
- If an existing `docs/product-vision.md` is being revised, read it first.
|
|
21
|
+
|
|
22
|
+
### What this skill writes
|
|
23
|
+
|
|
24
|
+
- `docs/product-vision.md` by default.
|
|
25
|
+
- A different path only when the user explicitly requests one.
|
|
26
|
+
|
|
27
|
+
### When this skill stops
|
|
28
|
+
|
|
29
|
+
- The user's intent is too unclear to ask a useful discovery question.
|
|
30
|
+
- Writing would overwrite an existing vision when the user appears to want a separate new vision.
|
|
31
|
+
- The request is for a downstream artifact such as a Product Context Map, feature brief, technical design, UX spec, stories, implementation plan, or implementation work.
|
|
32
|
+
|
|
33
|
+
### What this skill must not do
|
|
34
|
+
|
|
35
|
+
- Do not create Product Context Maps, feature briefs, technical designs, UX specs, Epics, User Stories, implementation plans, or production code.
|
|
36
|
+
- Do not require a final confirmation summary before writing once enough product vision context is available.
|
|
37
|
+
- Do not pretend unresolved strategy questions are settled; ask a focused question or document a clear assumption.
|
|
38
|
+
|
|
14
39
|
## Workflow
|
|
15
40
|
|
|
16
41
|
### 1. Start with discovery, not drafting
|
|
@@ -11,6 +11,35 @@ Turn an approved feature brief and technical design into the smallest useful Scr
|
|
|
11
11
|
|
|
12
12
|
This skill owns delivery planning artifacts. It does not own product vision, feature definition, technical design, code implementation, or project-management tool automation.
|
|
13
13
|
|
|
14
|
+
## Pipeline Contract
|
|
15
|
+
|
|
16
|
+
### What this skill needs
|
|
17
|
+
|
|
18
|
+
- `docs/features/<feature-slug>/feature_brief.md`.
|
|
19
|
+
- `docs/features/<feature-slug>/technical_design.md`.
|
|
20
|
+
- `docs/features/<feature-slug>/ux.md` only when the feature has UI impact.
|
|
21
|
+
- Enough source-artifact detail to create delivery slices without inventing product scope or implementation boundaries.
|
|
22
|
+
|
|
23
|
+
### What this skill writes
|
|
24
|
+
|
|
25
|
+
- `docs/features/<feature-slug>/epics/<epic-slug>/epic_brief.md`.
|
|
26
|
+
- `docs/features/<feature-slug>/epics/<epic-slug>/stories/<order>-<user-story-slug>.md`.
|
|
27
|
+
- Supporting Epic and Story directories under the same feature tree when needed.
|
|
28
|
+
|
|
29
|
+
### When this skill stops
|
|
30
|
+
|
|
31
|
+
- The feature brief or technical design is missing; direct the user to the owning prior stage.
|
|
32
|
+
- The feature has UI impact and `ux.md` is missing; direct the user to `ux-expert`.
|
|
33
|
+
- A prior artifact is obviously incomplete or invalid in a way its owning stage should repair.
|
|
34
|
+
- The request belongs to another pipeline stage, such as product definition, technical design, UX design, implementation planning, or implementation execution.
|
|
35
|
+
|
|
36
|
+
### What this skill must not do
|
|
37
|
+
|
|
38
|
+
- Do not create or update product visions, Product Context Maps, feature briefs, technical designs, UX specs, implementation plans, or production code.
|
|
39
|
+
- Do not modify prior-stage artifacts.
|
|
40
|
+
- Do not reread `docs/product-context-map.md` by default; trust `technical_design.md` for implementation boundaries.
|
|
41
|
+
- Do not add product scope or architecture decisions absent from the feature brief and technical design.
|
|
42
|
+
|
|
14
43
|
## Required inputs
|
|
15
44
|
|
|
16
45
|
Before planning, read:
|
|
@@ -7,16 +7,48 @@ description: Use this skill to turn an approved feature brief into a concise, im
|
|
|
7
7
|
|
|
8
8
|
Write the smallest useful technical design doc for an approved feature: enough for a human to understand the implementation direction and a later coding agent to know what to do next. Avoid filler, generic engineering advice, and restating other skills.
|
|
9
9
|
|
|
10
|
+
## Pipeline Contract
|
|
11
|
+
|
|
12
|
+
### What this skill needs
|
|
13
|
+
|
|
14
|
+
- A Markdown feature brief at `docs/features/<feature-slug>/feature_brief.md`.
|
|
15
|
+
- `docs/product-context-map.md`.
|
|
16
|
+
- The feature brief's `## Product Context` section naming one or more existing Product Contexts.
|
|
17
|
+
- Relevant existing repo files and flows needed to make implementation direction concrete.
|
|
18
|
+
- `docs/features/<feature-slug>/ux.md` only when the feature has UI impact.
|
|
19
|
+
- Relevant implementation guidance skills such as `clean-code`, selected architecture skills, language skills, or framework skills.
|
|
20
|
+
|
|
21
|
+
### What this skill writes
|
|
22
|
+
|
|
23
|
+
- `docs/features/<feature-slug>/technical_design.md`.
|
|
24
|
+
|
|
25
|
+
### When this skill stops
|
|
26
|
+
|
|
27
|
+
- The feature brief is missing or the user only has a vague feature idea; direct the user to `feature-brief-writer`.
|
|
28
|
+
- `docs/product-context-map.md` is missing; direct the user to `product-context-map-writer`.
|
|
29
|
+
- The feature brief does not name existing Product Contexts, or the selected contexts are missing, ambiguous, or inconsistent with the map.
|
|
30
|
+
- The feature has UI impact and `docs/features/<feature-slug>/ux.md` is missing; direct the user to `ux-expert`.
|
|
31
|
+
- The request belongs to another pipeline stage, such as feature definition, UX design, Scrum planning, implementation planning, or implementation execution.
|
|
32
|
+
|
|
33
|
+
### What this skill must not do
|
|
34
|
+
|
|
35
|
+
- Do not create or update product visions, Product Context Maps, feature briefs, UX specs, Epics, User Stories, implementation plans, or production code.
|
|
36
|
+
- Do not invent new Product Contexts or move work into unselected contexts.
|
|
37
|
+
- Do not redesign binding UX mockups.
|
|
38
|
+
- Do not duplicate architecture, language, framework, or clean-code skill guidance.
|
|
39
|
+
- Do not require a final confirmation summary before writing once enough technical design context is available.
|
|
40
|
+
|
|
10
41
|
## Grounding
|
|
11
42
|
|
|
12
43
|
Before writing, read:
|
|
13
44
|
|
|
14
45
|
1. `docs/product-vision.md`
|
|
15
|
-
2.
|
|
16
|
-
3.
|
|
17
|
-
4. `
|
|
18
|
-
5.
|
|
19
|
-
6.
|
|
46
|
+
2. `docs/product-context-map.md`
|
|
47
|
+
3. the feature brief, including its `## Product Context` section
|
|
48
|
+
4. `docs/features/<feature-slug>/ux.md` when the feature has UI impact
|
|
49
|
+
5. `clean-code`
|
|
50
|
+
6. any selected architecture, language, or framework skills that apply
|
|
51
|
+
7. relevant existing repo files and flows
|
|
20
52
|
|
|
21
53
|
Apply those inputs. Do not summarize them back into the technical design unless a specific implication changes the implementation.
|
|
22
54
|
|
|
@@ -24,6 +56,10 @@ Apply those inputs. Do not summarize them back into the technical design unless
|
|
|
24
56
|
|
|
25
57
|
Require a Markdown feature brief. If the user only has a vague idea, route to `feature-brief-writer` first.
|
|
26
58
|
|
|
59
|
+
Require `docs/product-context-map.md`. If it is missing, stop and ask the user to create it with `product-context-map-writer` first. Do not infer or invent Product Contexts.
|
|
60
|
+
|
|
61
|
+
Require the feature brief to name one or more existing Product Contexts. Preserve those selected contexts in the technical design; if they appear missing, ambiguous, or inconsistent with the map, stop and ask the user to update the feature brief or Product Context Map first.
|
|
62
|
+
|
|
27
63
|
If the feature has UI impact, require `docs/features/<feature-slug>/ux.md`. If it is missing, stop and ask the user to create the UX spec with `ux-expert` first.
|
|
28
64
|
|
|
29
65
|
## UX binding rule
|
|
@@ -34,6 +70,8 @@ For UI-related features, `ux.md` is source context, not inspiration. If `ux.md`
|
|
|
34
70
|
|
|
35
71
|
Translate product intent into implementation direction.
|
|
36
72
|
|
|
73
|
+
Product Contexts answer “where does this work belong?” Architecture guidance answers “how is that context structured internally?” Translate the feature brief's selected Product Contexts into implementation boundaries appropriate for the selected architecture. Capture those boundaries in the technical design so downstream Scrum planning, implementation planning, and execution can trust the technical design instead of rereading the Product Context Map by default.
|
|
74
|
+
|
|
37
75
|
Prefer:
|
|
38
76
|
|
|
39
77
|
- concise decisions over long explanation
|
|
@@ -41,6 +79,7 @@ Prefer:
|
|
|
41
79
|
- current codebase patterns over speculative redesigns
|
|
42
80
|
- explicit open questions over risky assumptions
|
|
43
81
|
- delegation to the right skills instead of duplicating their guidance
|
|
82
|
+
- preserving the feature brief's selected Product Contexts
|
|
44
83
|
|
|
45
84
|
Avoid:
|
|
46
85
|
|
|
@@ -48,6 +87,7 @@ Avoid:
|
|
|
48
87
|
- product scope expansion
|
|
49
88
|
- user stories, tickets, or delivery plans
|
|
50
89
|
- invented CLI/database/API concepts that the feature brief did not ask for
|
|
90
|
+
- inventing new Product Contexts or moving work into unselected contexts
|
|
51
91
|
- large template sections that say “none” without adding value
|
|
52
92
|
|
|
53
93
|
## Delegation rule
|
|
@@ -88,6 +128,7 @@ Use this structure as a starting point. Delete sections that do not add value.
|
|
|
88
128
|
|
|
89
129
|
## Inputs
|
|
90
130
|
- Product vision: <path>
|
|
131
|
+
- Product Context Map: <path>
|
|
91
132
|
- Feature brief: <path>
|
|
92
133
|
- Delegated skills: <skills later implementation should apply>
|
|
93
134
|
|
|
@@ -100,6 +141,8 @@ Use this structure as a starting point. Delete sections that do not add value.
|
|
|
100
141
|
## Proposed Design
|
|
101
142
|
<Concrete implementation decisions. Include command flows, file/module impact, state changes, and integration boundaries when relevant.>
|
|
102
143
|
|
|
144
|
+
<Explain how the selected Product Contexts translate into architecture, module, command, file, or implementation boundaries when that affects downstream work.>
|
|
145
|
+
|
|
103
146
|
## Validation
|
|
104
147
|
<Focused test/build/manual checks.>
|
|
105
148
|
|
|
@@ -7,6 +7,34 @@ description: Use this skill for UX/UI design after product definition when a fea
|
|
|
7
7
|
|
|
8
8
|
Act as a senior UX/UI designer. Turn an approved product artifact into usable, expressive, phone-first, implementation-ready UI direction. Do not include code, file paths, architecture, or framework-specific guidance.
|
|
9
9
|
|
|
10
|
+
## Pipeline Contract
|
|
11
|
+
|
|
12
|
+
### What this skill needs
|
|
13
|
+
|
|
14
|
+
- `docs/product-vision.md`.
|
|
15
|
+
- A product artifact such as `docs/features/<feature-slug>/feature_brief.md` that defines goals, scope, and acceptance criteria.
|
|
16
|
+
- Confirmation from the request or source artifact that the feature has UI impact.
|
|
17
|
+
- Enough user or product context to design affected surfaces, flows, responsive layouts, states, accessibility requirements, and binding mockups.
|
|
18
|
+
|
|
19
|
+
### What this skill writes
|
|
20
|
+
|
|
21
|
+
- `docs/features/<feature-slug>/ux.md`.
|
|
22
|
+
|
|
23
|
+
### When this skill stops
|
|
24
|
+
|
|
25
|
+
- The user only has a product idea; direct the user to `feature-brief-writer` first.
|
|
26
|
+
- `docs/product-vision.md` is missing; direct the user to `product-vision-writer` first.
|
|
27
|
+
- The product artifact is missing, unclear, or lacks goals, scope, and acceptance criteria.
|
|
28
|
+
- The feature or request has no UI impact; say so and do not invent UI work.
|
|
29
|
+
- The request belongs to another pipeline stage, such as product definition, technical design, Scrum planning, implementation planning, or implementation execution.
|
|
30
|
+
|
|
31
|
+
### What this skill must not do
|
|
32
|
+
|
|
33
|
+
- Do not create or update product visions, Product Context Maps, feature briefs, technical designs, Epics, User Stories, implementation plans, or production code.
|
|
34
|
+
- Do not make architecture, framework, API, data model, or file-path decisions.
|
|
35
|
+
- Do not treat UX work as optional for UI-changing features; concrete mockups are required.
|
|
36
|
+
- Do not require a final confirmation summary before writing once enough UX context is available.
|
|
37
|
+
|
|
10
38
|
## Required grounding
|
|
11
39
|
|
|
12
40
|
Read `docs/product-vision.md` and apply only relevant implications: target user, principles, voice, boundaries, trust expectations, success signal. Do not restate the full vision.
|