@juancr11/sibu 0.6.0 → 0.8.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.
Files changed (69) hide show
  1. package/bin/admin/changelog.js +155 -0
  2. package/bin/admin/release.js +217 -0
  3. package/bin/entrypoints/cli/create-program.js +1 -1
  4. package/bin/entrypoints/cli/execute-command.js +6 -6
  5. package/bin/modules/interactive-guidance/index.js +1 -0
  6. package/bin/{shared → modules/interactive-guidance}/prompts.js +17 -1
  7. package/bin/modules/maintainer-release-support/generate-changelog/changelog-format.js +213 -0
  8. package/bin/modules/maintainer-release-support/generate-changelog/changelog-writer.js +91 -0
  9. package/bin/modules/maintainer-release-support/generate-changelog/git-history.js +93 -0
  10. package/bin/modules/maintainer-release-support/generate-changelog/handler.js +167 -0
  11. package/bin/modules/maintainer-release-support/generate-changelog/semver.js +40 -0
  12. package/bin/modules/maintainer-release-support/index.js +2 -0
  13. package/bin/modules/maintainer-release-support/release-workflow/git-release.js +114 -0
  14. package/bin/modules/maintainer-release-support/release-workflow/handler.js +369 -0
  15. package/bin/modules/maintainer-release-support/release-workflow/package-json.js +181 -0
  16. package/bin/modules/maintainer-release-support/release-workflow/release-plan.js +87 -0
  17. package/bin/{features/init-project → modules/project-adoption}/handler.js +7 -5
  18. package/bin/modules/project-adoption/index.js +1 -0
  19. package/bin/modules/skill-selection-management/index.js +3 -0
  20. package/bin/{features → modules/skill-selection-management}/list-skills/handler.js +14 -4
  21. package/bin/{features → modules/skill-selection-management}/stop-managing-file/handler.js +15 -8
  22. package/bin/modules/skill-selection-management/use-skill/command.js +1 -0
  23. package/bin/{features → modules/skill-selection-management}/use-skill/handler.js +42 -8
  24. package/bin/{features/sync-project → modules/sync-review}/apply-action.js +5 -3
  25. package/bin/modules/sync-review/command.js +1 -0
  26. package/bin/{features/sync-project → modules/sync-review}/handler.js +4 -4
  27. package/bin/modules/sync-review/index.js +5 -0
  28. package/bin/{shared → modules/sync-review}/sync-preview.js +11 -7
  29. package/bin/modules/template-catalog-rendering/index.js +1 -0
  30. package/bin/modules/template-catalog-rendering/templates.js +60 -0
  31. package/bin/modules/version-advisory/index.js +1 -0
  32. package/bin/{shared → modules/version-advisory}/npm-version.js +29 -2
  33. package/bin/modules/workflow-health-diagnosis/command.js +1 -0
  34. package/bin/{features/doctor-project → modules/workflow-health-diagnosis}/handler.js +13 -7
  35. package/bin/modules/workflow-health-diagnosis/index.js +1 -0
  36. package/bin/modules/workflow-mutation-readiness/index.js +1 -0
  37. package/bin/{shared → modules/workflow-mutation-readiness}/workflow-mutation-readiness.js +3 -3
  38. package/bin/modules/workflow-state-registry/index.js +1 -0
  39. package/bin/{shared → modules/workflow-state-registry}/state.js +3 -1
  40. package/bin/modules/workflow-target-planning/catalog.js +252 -0
  41. package/bin/modules/workflow-target-planning/index.js +2 -0
  42. package/bin/modules/workflow-target-planning/workflow-targets.js +130 -0
  43. package/bin/shared/catalog.js +0 -253
  44. package/bin/shared/paths.js +1 -12
  45. package/bin/shared/workflow-targets.js +3 -2
  46. package/package.json +4 -2
  47. package/templates/AGENTS.md +3 -3
  48. package/templates/manifest.json +38 -27
  49. package/templates/skills/ai-implementation-plan-executor/SKILL.md +74 -70
  50. package/templates/skills/ai-implementation-planner/SKILL.md +24 -17
  51. package/templates/skills/architecture/command-pattern/SKILL.md +32 -20
  52. package/templates/skills/architecture/ddd-hexagonal/SKILL.md +14 -9
  53. package/templates/skills/deep-module-map-writer/SKILL.md +241 -0
  54. package/templates/skills/feature-brief-writer/SKILL.md +24 -24
  55. package/templates/skills/postgresql-expert/SKILL.md +72 -0
  56. package/templates/skills/product-vision-writer/SKILL.md +2 -2
  57. package/templates/skills/scrum-master-planner/SKILL.md +2 -2
  58. package/templates/skills/technical-design-writer/SKILL.md +15 -15
  59. package/templates/skills/ux-expert/SKILL.md +1 -1
  60. package/bin/features/sync-project/preview.js +0 -1
  61. package/templates/skills/product-context-map-writer/SKILL.md +0 -211
  62. /package/bin/{features/doctor-project/command.js → modules/cli-command-surface/index.js} +0 -0
  63. /package/bin/{features/init-project → modules/maintainer-release-support/generate-changelog}/command.js +0 -0
  64. /package/bin/{features/list-skills → modules/maintainer-release-support/release-workflow}/command.js +0 -0
  65. /package/bin/{features/stop-managing-file → modules/project-adoption}/command.js +0 -0
  66. /package/bin/{features/sync-project → modules/skill-selection-management/list-skills}/command.js +0 -0
  67. /package/bin/{features/use-skill → modules/skill-selection-management/stop-managing-file}/command.js +0 -0
  68. /package/bin/{features/sync-project → modules/sync-review}/action-prompt.js +0 -0
  69. /package/bin/{features/sync-project → modules/sync-review}/log-preview.js +0 -0
@@ -12,8 +12,8 @@ Write the smallest useful technical design doc for an approved feature: enough f
12
12
  ### What this skill needs
13
13
 
14
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.
15
+ - `docs/deep-module-map.md`.
16
+ - The feature brief's `## Deep Module` section naming one or more existing Deep Modules.
17
17
  - Relevant existing repo files and flows needed to make implementation direction concrete.
18
18
  - `docs/features/<feature-slug>/ux.md` only when the feature has UI impact.
19
19
  - Relevant implementation guidance skills such as `clean-code`, selected architecture skills, language skills, or framework skills.
@@ -25,15 +25,15 @@ Write the smallest useful technical design doc for an approved feature: enough f
25
25
  ### When this skill stops
26
26
 
27
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.
28
+ - `docs/deep-module-map.md` is missing; direct the user to `deep-module-map-writer`.
29
+ - The feature brief does not name existing Deep Modules, or the selected modules are missing, ambiguous, or inconsistent with the map.
30
30
  - The feature has UI impact and `docs/features/<feature-slug>/ux.md` is missing; direct the user to `ux-expert`.
31
31
  - The request belongs to another pipeline stage, such as feature definition, UX design, Scrum planning, implementation planning, or implementation execution.
32
32
 
33
33
  ### What this skill must not do
34
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.
35
+ - Do not create or update product visions, Deep Module Maps, feature briefs, UX specs, Epics, User Stories, implementation plans, or production code.
36
+ - Do not invent new Deep Modules or move work into unselected modules.
37
37
  - Do not redesign binding UX mockups.
38
38
  - Do not duplicate architecture, language, framework, or clean-code skill guidance.
39
39
  - Do not require a final confirmation summary before writing once enough technical design context is available.
@@ -43,8 +43,8 @@ Write the smallest useful technical design doc for an approved feature: enough f
43
43
  Before writing, read:
44
44
 
45
45
  1. `docs/product-vision.md`
46
- 2. `docs/product-context-map.md`
47
- 3. the feature brief, including its `## Product Context` section
46
+ 2. `docs/deep-module-map.md`
47
+ 3. the feature brief, including its `## Deep Module` section
48
48
  4. `docs/features/<feature-slug>/ux.md` when the feature has UI impact
49
49
  5. `clean-code`
50
50
  6. any selected architecture, language, or framework skills that apply
@@ -56,9 +56,9 @@ Apply those inputs. Do not summarize them back into the technical design unless
56
56
 
57
57
  Require a Markdown feature brief. If the user only has a vague idea, route to `feature-brief-writer` first.
58
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.
59
+ Require `docs/deep-module-map.md`. If it is missing, stop and ask the user to create it with `deep-module-map-writer` first. Do not infer or invent Deep Modules.
60
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.
61
+ Require the feature brief to name one or more existing Deep Modules. Preserve those selected modules 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 Deep Module Map first.
62
62
 
63
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.
64
64
 
@@ -70,7 +70,7 @@ For UI-related features, `ux.md` is source context, not inspiration. If `ux.md`
70
70
 
71
71
  Translate product intent into implementation direction.
72
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.
73
+ Deep Modules answer “where does this implementation work belong?” Architecture guidance answers “how is that module structured internally?” Translate the feature brief's selected Deep Modules 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 Deep Module Map by default.
74
74
 
75
75
  Prefer:
76
76
 
@@ -79,7 +79,7 @@ Prefer:
79
79
  - current codebase patterns over speculative redesigns
80
80
  - explicit open questions over risky assumptions
81
81
  - delegation to the right skills instead of duplicating their guidance
82
- - preserving the feature brief's selected Product Contexts
82
+ - preserving the feature brief's selected Deep Modules
83
83
 
84
84
  Avoid:
85
85
 
@@ -87,7 +87,7 @@ Avoid:
87
87
  - product scope expansion
88
88
  - user stories, tickets, or delivery plans
89
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
90
+ - inventing new Deep Modules or moving work into unselected modules
91
91
  - large template sections that say “none” without adding value
92
92
 
93
93
  ## Delegation rule
@@ -128,7 +128,7 @@ Use this structure as a starting point. Delete sections that do not add value.
128
128
 
129
129
  ## Inputs
130
130
  - Product vision: <path>
131
- - Product Context Map: <path>
131
+ - Deep Module Map: <path>
132
132
  - Feature brief: <path>
133
133
  - Delegated skills: <skills later implementation should apply>
134
134
 
@@ -141,7 +141,7 @@ Use this structure as a starting point. Delete sections that do not add value.
141
141
  ## Proposed Design
142
142
  <Concrete implementation decisions. Include command flows, file/module impact, state changes, and integration boundaries when relevant.>
143
143
 
144
- <Explain how the selected Product Contexts translate into architecture, module, command, file, or implementation boundaries when that affects downstream work.>
144
+ <Explain how the selected Deep Modules translate into architecture, module, command, file, or implementation boundaries when that affects downstream work.>
145
145
 
146
146
  ## Validation
147
147
  <Focused test/build/manual checks.>
@@ -30,7 +30,7 @@ Act as a senior UX/UI designer. Turn an approved product artifact into usable, e
30
30
 
31
31
  ### What this skill must not do
32
32
 
33
- - Do not create or update product visions, Product Context Maps, feature briefs, technical designs, Epics, User Stories, implementation plans, or production code.
33
+ - Do not create or update product visions, Deep Module Maps, feature briefs, technical designs, Epics, User Stories, implementation plans, or production code.
34
34
  - Do not make architecture, framework, API, data model, or file-path decisions.
35
35
  - Do not treat UX work as optional for UI-changing features; concrete mockups are required.
36
36
  - Do not require a final confirmation summary before writing once enough UX context is available.
@@ -1 +0,0 @@
1
- export { getSyncPreviews, isActionableSyncPreview, shouldAskForSyncAction } from '../../shared/sync-preview.js';
@@ -1,211 +0,0 @@
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.