sdd-cli 0.1.0 → 0.1.3

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 (66) hide show
  1. package/README.md +126 -89
  2. package/dist/cli.js +7 -3
  3. package/dist/commands/doctor.js +11 -2
  4. package/dist/commands/gen-architecture.js +14 -4
  5. package/dist/commands/gen-best-practices.js +12 -2
  6. package/dist/commands/gen-functional-spec.js +13 -3
  7. package/dist/commands/gen-project-readme.js +15 -5
  8. package/dist/commands/gen-technical-spec.js +13 -3
  9. package/dist/commands/gen-utils.js +9 -1
  10. package/dist/commands/hello.js +21 -3
  11. package/dist/commands/learn-deliver.js +17 -3
  12. package/dist/commands/learn-refine.js +32 -11
  13. package/dist/commands/learn-start.js +9 -2
  14. package/dist/commands/learn-utils.js +7 -4
  15. package/dist/commands/pr-audit.js +17 -3
  16. package/dist/commands/pr-finish.js +17 -3
  17. package/dist/commands/pr-report.js +17 -3
  18. package/dist/commands/pr-respond.js +17 -3
  19. package/dist/commands/pr-start.js +9 -2
  20. package/dist/commands/pr-utils.js +8 -5
  21. package/dist/commands/req-archive.js +14 -6
  22. package/dist/commands/req-create.js +71 -14
  23. package/dist/commands/req-export.js +11 -3
  24. package/dist/commands/req-finish.js +28 -13
  25. package/dist/commands/req-lint.js +10 -2
  26. package/dist/commands/req-list.js +10 -2
  27. package/dist/commands/req-plan.js +34 -12
  28. package/dist/commands/req-refine.js +54 -5
  29. package/dist/commands/req-report.js +10 -2
  30. package/dist/commands/req-start.js +29 -12
  31. package/dist/commands/req-status.js +10 -2
  32. package/dist/commands/test-plan.js +13 -5
  33. package/dist/context/flags.d.ts +2 -0
  34. package/dist/context/flags.js +5 -1
  35. package/dist/providers/codex.js +2 -2
  36. package/dist/router/prompt-map.js +17 -5
  37. package/dist/ui/prompt.d.ts +1 -0
  38. package/dist/ui/prompt.js +8 -0
  39. package/dist/validation/gates.d.ts +19 -0
  40. package/dist/validation/gates.js +41 -0
  41. package/dist/validation/validate.js +24 -4
  42. package/dist/workspace/index.d.ts +6 -0
  43. package/dist/workspace/index.js +41 -10
  44. package/flows/ADMISSIONS_ADMIN.md +34 -33
  45. package/flows/ART.md +34 -33
  46. package/flows/COURT_SYSTEM.md +34 -33
  47. package/flows/DATA_SCIENTIST.md +34 -33
  48. package/flows/ECOMMERCE.md +34 -33
  49. package/flows/ECONOMICS.md +34 -33
  50. package/flows/GRAPHIC_DESIGN.md +34 -33
  51. package/flows/HISTORY.md +34 -33
  52. package/flows/LAWYER.md +35 -34
  53. package/flows/PROGRAMMER.md +34 -33
  54. package/flows/RETAIL_STORE.md +34 -33
  55. package/flows/SOCIOLOGY.md +34 -33
  56. package/flows/STATE_ADMIN.md +34 -33
  57. package/flows/STUDENT_UNIVERSITY.md +34 -33
  58. package/flows/TAXES_ADMIN.md +34 -33
  59. package/flows/TEACHER.md +34 -33
  60. package/package.json +14 -4
  61. package/router/BUSINESS.flow.md +58 -57
  62. package/router/DATA_SCIENCE.flow.md +59 -58
  63. package/router/DESIGN.flow.md +59 -58
  64. package/router/HUMANITIES.flow.md +59 -58
  65. package/router/LEGAL.flow.md +59 -58
  66. package/router/SOFTWARE_FEATURE.flow.md +60 -59
package/flows/TEACHER.md CHANGED
@@ -1,33 +1,34 @@
1
- # Flow: Teacher (education)
2
-
3
- ## Goal
4
- Create a system for lesson planning, assessments, and feedback with clear learning outcomes.
5
-
6
- ## Discovery prompts
7
- - What grade levels and subjects are supported?
8
- - What is the grading model (rubrics, points, mastery)?
9
- - How are students and guardians notified?
10
- - Are there accessibility requirements?
11
- - What data privacy rules apply to students?
12
-
13
- ## Required artifacts
14
- - `requirement.md` with learning objectives and scope
15
- - `functional-spec.md` covering lesson, assignment, and grading flows
16
- - `technical-spec.md` for integrations (LMS, email, calendars)
17
- - `architecture.md` for content storage and versioning
18
- - `test-plan.md` with grading accuracy and accessibility checks
19
-
20
- ## Risk and compliance
21
- - Student data privacy
22
- - Accessibility standards
23
- - Content versioning and auditability
24
-
25
- ## Acceptance criteria examples
26
- - Teachers can reuse and version lessons.
27
- - Students receive feedback within configured SLAs.
28
- - Accessibility checks are enforced for uploaded content.
29
-
30
- ## Recommended outputs
31
- - Lesson plan templates
32
- - Grading rubric engine
33
- - Student progress analytics
1
+ # Flow: Teacher (education)
2
+
3
+ ## Goal
4
+ Create a system for lesson planning, assessments, and feedback with clear learning outcomes.
5
+
6
+ ## Discovery prompts
7
+ - What grade levels and subjects are supported?
8
+ - What is the grading model (rubrics, points, mastery)?
9
+ - How are students and guardians notified?
10
+ - Are there accessibility requirements?
11
+ - What data privacy rules apply to students?
12
+
13
+ ## Required artifacts
14
+ - `requirement.md` with learning objectives and scope
15
+ - `functional-spec.md` covering lesson, assignment, and grading flows
16
+ - `technical-spec.md` for integrations (LMS, email, calendars)
17
+ - `docs/ARCHITECTURE.md` for content storage and versioning
18
+ - `test-plan.md` with grading accuracy and accessibility checks
19
+
20
+ ## Risk and compliance
21
+ - Student data privacy
22
+ - Accessibility standards
23
+ - Content versioning and auditability
24
+
25
+ ## Acceptance criteria examples
26
+ - Teachers can reuse and version lessons.
27
+ - Students receive feedback within configured SLAs.
28
+ - Accessibility checks are enforced for uploaded content.
29
+
30
+ ## Recommended outputs
31
+ - Lesson plan templates
32
+ - Grading rubric engine
33
+ - Student progress analytics
34
+
package/package.json CHANGED
@@ -1,9 +1,17 @@
1
1
  {
2
- "name": "sdd-cli",
3
- "version": "0.1.0",
2
+ "name": "sdd-cli",
3
+ "version": "0.1.3",
4
4
  "description": "SDD-first, AI-native CLI for end-to-end delivery.",
5
+ "homepage": "https://github.com/jdsalasca/sdd-cli#readme",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/jdsalasca/sdd-cli.git"
9
+ },
10
+ "bugs": {
11
+ "url": "https://github.com/jdsalasca/sdd-cli/issues"
12
+ },
5
13
  "bin": {
6
- "sdd-tool": "dist/cli.js",
14
+ "sdd-cli": "dist/cli.js",
7
15
  "sdd": "dist/cli.js"
8
16
  },
9
17
  "main": "dist/cli.js",
@@ -18,7 +26,9 @@
18
26
  "scripts": {
19
27
  "build": "tsc -p tsconfig.json",
20
28
  "start": "node dist/cli.js",
21
- "dev": "ts-node src/cli.ts"
29
+ "dev": "ts-node src/cli.ts",
30
+ "pretest": "npm run build",
31
+ "test": "node --test tests/*.test.js"
22
32
  },
23
33
  "dependencies": {
24
34
  "ajv": "^8.17.1",
@@ -1,57 +1,58 @@
1
- # Router flow: Business / economics
2
-
3
- ## Entry signals
4
- - "market", "pricing", "policy", "forecast", "economics"
5
-
6
- ## Steps
7
- 1) Interview for objective, scope, and stakeholders.
8
- 2) Define assumptions and model approach.
9
- 3) Generate analysis plan and outputs.
10
- 4) Ask for approval or `--improve`.
11
- 5) Produce sensitivity checks and executive summary.
12
-
13
- ## Required questions
14
- - What decision will this analysis support?
15
- - What scope and timeframe apply?
16
- - What data sources are available?
17
- - What assumptions are acceptable?
18
- - What risk tolerance is required?
19
-
20
- ## Required outputs
21
- - `requirement.md`
22
- - `technical-spec.md`
23
- - `architecture.md`
24
- - `test-plan.md` (sensitivity checks)
25
-
26
- ## Scripted Q/A tree
27
-
28
- ### Q1: Decision
29
- Q: "What decision will this analysis support?"
30
- A: capture decision context
31
-
32
- ### Q2: Scope and timeline
33
- Q: "What scope and timeframe apply?"
34
- A: capture scope and horizon
35
-
36
- ### Q3: Data sources
37
- Q: "What data sources are available and trusted?"
38
- A: capture sources
39
-
40
- ### Q4: Assumptions
41
- Q: "What assumptions are acceptable?"
42
- A: capture assumptions
43
-
44
- ### Q5: Risk tolerance
45
- Q: "What level of risk or uncertainty is acceptable?"
46
- A: capture tolerance
47
-
48
- ### Q6: Approval gate
49
- Q: "Approve analysis plan and move to specs?"
50
- A: Yes -> generate specs
51
- A: No -> refine
52
-
53
- ## Gates
54
- - Assumptions must be explicit before analysis
55
-
56
- ## Agents
57
- - Analyst, Economist, Critic
1
+ # Router flow: Business / economics
2
+
3
+ ## Entry signals
4
+ - "market", "pricing", "policy", "forecast", "economics"
5
+
6
+ ## Steps
7
+ 1) Interview for objective, scope, and stakeholders.
8
+ 2) Define assumptions and model approach.
9
+ 3) Generate analysis plan and outputs.
10
+ 4) Ask for approval or `--improve`.
11
+ 5) Produce sensitivity checks and executive summary.
12
+
13
+ ## Required questions
14
+ - What decision will this analysis support?
15
+ - What scope and timeframe apply?
16
+ - What data sources are available?
17
+ - What assumptions are acceptable?
18
+ - What risk tolerance is required?
19
+
20
+ ## Required outputs
21
+ - `requirement.md`
22
+ - `technical-spec.md`
23
+ - `docs/ARCHITECTURE.md`
24
+ - `test-plan.md` (sensitivity checks)
25
+
26
+ ## Scripted Q/A tree
27
+
28
+ ### Q1: Decision
29
+ Q: "What decision will this analysis support?"
30
+ A: capture decision context
31
+
32
+ ### Q2: Scope and timeline
33
+ Q: "What scope and timeframe apply?"
34
+ A: capture scope and horizon
35
+
36
+ ### Q3: Data sources
37
+ Q: "What data sources are available and trusted?"
38
+ A: capture sources
39
+
40
+ ### Q4: Assumptions
41
+ Q: "What assumptions are acceptable?"
42
+ A: capture assumptions
43
+
44
+ ### Q5: Risk tolerance
45
+ Q: "What level of risk or uncertainty is acceptable?"
46
+ A: capture tolerance
47
+
48
+ ### Q6: Approval gate
49
+ Q: "Approve analysis plan and move to specs?"
50
+ A: Yes -> generate specs
51
+ A: No -> refine
52
+
53
+ ## Gates
54
+ - Assumptions must be explicit before analysis
55
+
56
+ ## Agents
57
+ - Analyst, Economist, Critic
58
+
@@ -1,58 +1,59 @@
1
- # Router flow: Data science
2
-
3
- ## Entry signals
4
- - "model", "prediction", "dataset", "ML", "analytics"
5
-
6
- ## Steps
7
- 1) Interview for objective, metrics, data sources, constraints.
8
- 2) Define evaluation criteria and monitoring needs.
9
- 3) Generate specs and architecture for pipelines.
10
- 4) Ask for approval or `--improve`.
11
- 5) Create test plan for data validation and model evaluation.
12
-
13
- ## Required questions
14
- - What is the success metric?
15
- - What data sources and quality risks exist?
16
- - What fairness or compliance rules apply?
17
- - What latency/cost constraints exist?
18
- - How will drift be monitored?
19
-
20
- ## Required outputs
21
- - `requirement.md`
22
- - `technical-spec.md`
23
- - `architecture.md`
24
- - `test-plan.md`
25
- - `quality.yml`
26
-
27
- ## Scripted Q/A tree
28
-
29
- ### Q1: Objective and metric
30
- Q: "What is the business or research objective and the primary metric?"
31
- A: capture target metric
32
-
33
- ### Q2: Data sources
34
- Q: "What data sources exist and what are the quality risks?"
35
- A: capture sources and gaps
36
-
37
- ### Q3: Constraints
38
- Q: "Any latency, cost, or compliance constraints?"
39
- A: capture constraints
40
-
41
- ### Q4: Fairness and bias
42
- Q: "Any fairness or bias concerns to monitor?"
43
- A: capture fairness criteria
44
-
45
- ### Q5: Monitoring
46
- Q: "How will we monitor drift post-release?"
47
- A: capture monitoring plan
48
-
49
- ### Q6: Approval gate
50
- Q: "Approve requirements and move to specs?"
51
- A: Yes -> generate specs
52
- A: No -> refine
53
-
54
- ## Gates
55
- - Metrics and validation criteria required before plan
56
-
57
- ## Agents
58
- - Data Scientist, MLOps, QA
1
+ # Router flow: Data science
2
+
3
+ ## Entry signals
4
+ - "model", "prediction", "dataset", "ML", "analytics"
5
+
6
+ ## Steps
7
+ 1) Interview for objective, metrics, data sources, constraints.
8
+ 2) Define evaluation criteria and monitoring needs.
9
+ 3) Generate specs and architecture for pipelines.
10
+ 4) Ask for approval or `--improve`.
11
+ 5) Create test plan for data validation and model evaluation.
12
+
13
+ ## Required questions
14
+ - What is the success metric?
15
+ - What data sources and quality risks exist?
16
+ - What fairness or compliance rules apply?
17
+ - What latency/cost constraints exist?
18
+ - How will drift be monitored?
19
+
20
+ ## Required outputs
21
+ - `requirement.md`
22
+ - `technical-spec.md`
23
+ - `docs/ARCHITECTURE.md`
24
+ - `test-plan.md`
25
+ - `quality.yml`
26
+
27
+ ## Scripted Q/A tree
28
+
29
+ ### Q1: Objective and metric
30
+ Q: "What is the business or research objective and the primary metric?"
31
+ A: capture target metric
32
+
33
+ ### Q2: Data sources
34
+ Q: "What data sources exist and what are the quality risks?"
35
+ A: capture sources and gaps
36
+
37
+ ### Q3: Constraints
38
+ Q: "Any latency, cost, or compliance constraints?"
39
+ A: capture constraints
40
+
41
+ ### Q4: Fairness and bias
42
+ Q: "Any fairness or bias concerns to monitor?"
43
+ A: capture fairness criteria
44
+
45
+ ### Q5: Monitoring
46
+ Q: "How will we monitor drift post-release?"
47
+ A: capture monitoring plan
48
+
49
+ ### Q6: Approval gate
50
+ Q: "Approve requirements and move to specs?"
51
+ A: Yes -> generate specs
52
+ A: No -> refine
53
+
54
+ ## Gates
55
+ - Metrics and validation criteria required before plan
56
+
57
+ ## Agents
58
+ - Data Scientist, MLOps, QA
59
+
@@ -1,58 +1,59 @@
1
- # Router flow: Design / creative
2
-
3
- ## Entry signals
4
- - "logo", "brand", "UI", "layout", "visual", "art"
5
-
6
- ## Steps
7
- 1) Interview for goals, audience, references, constraints.
8
- 2) Define deliverables and review cadence.
9
- 3) Generate requirements and design system structure.
10
- 4) Ask for approval or `--improve`.
11
- 5) Produce delivery checklist and accessibility checks.
12
-
13
- ## Required questions
14
- - What is the message or brand?
15
- - Who is the audience?
16
- - What formats are needed?
17
- - What constraints or references exist?
18
- - What is the approval process?
19
-
20
- ## Required outputs
21
- - `requirement.md`
22
- - `functional-spec.md`
23
- - `technical-spec.md`
24
- - `architecture.md`
25
- - `test-plan.md`
26
-
27
- ## Scripted Q/A tree
28
-
29
- ### Q1: Message and audience
30
- Q: "What is the message and who is the audience?"
31
- A: capture audience and goal
32
-
33
- ### Q2: Deliverables
34
- Q: "What formats are required (logo, web, print, social)?"
35
- A: capture deliverables
36
-
37
- ### Q3: References
38
- Q: "Any style references or inspirations?"
39
- A: capture references
40
-
41
- ### Q4: Constraints
42
- Q: "What constraints apply (timeline, budget, tools)?"
43
- A: capture constraints
44
-
45
- ### Q5: Approval cadence
46
- Q: "Who approves and how often should we review?"
47
- A: capture review cadence
48
-
49
- ### Q6: Approval gate
50
- Q: "Approve requirements and move to specs?"
51
- A: Yes -> generate specs
52
- A: No -> refine
53
-
54
- ## Gates
55
- - Deliverables and approval process must be defined
56
-
57
- ## Agents
58
- - Creative Lead, Design Systems, Critic
1
+ # Router flow: Design / creative
2
+
3
+ ## Entry signals
4
+ - "logo", "brand", "UI", "layout", "visual", "art"
5
+
6
+ ## Steps
7
+ 1) Interview for goals, audience, references, constraints.
8
+ 2) Define deliverables and review cadence.
9
+ 3) Generate requirements and design system structure.
10
+ 4) Ask for approval or `--improve`.
11
+ 5) Produce delivery checklist and accessibility checks.
12
+
13
+ ## Required questions
14
+ - What is the message or brand?
15
+ - Who is the audience?
16
+ - What formats are needed?
17
+ - What constraints or references exist?
18
+ - What is the approval process?
19
+
20
+ ## Required outputs
21
+ - `requirement.md`
22
+ - `functional-spec.md`
23
+ - `technical-spec.md`
24
+ - `docs/ARCHITECTURE.md`
25
+ - `test-plan.md`
26
+
27
+ ## Scripted Q/A tree
28
+
29
+ ### Q1: Message and audience
30
+ Q: "What is the message and who is the audience?"
31
+ A: capture audience and goal
32
+
33
+ ### Q2: Deliverables
34
+ Q: "What formats are required (logo, web, print, social)?"
35
+ A: capture deliverables
36
+
37
+ ### Q3: References
38
+ Q: "Any style references or inspirations?"
39
+ A: capture references
40
+
41
+ ### Q4: Constraints
42
+ Q: "What constraints apply (timeline, budget, tools)?"
43
+ A: capture constraints
44
+
45
+ ### Q5: Approval cadence
46
+ Q: "Who approves and how often should we review?"
47
+ A: capture review cadence
48
+
49
+ ### Q6: Approval gate
50
+ Q: "Approve requirements and move to specs?"
51
+ A: Yes -> generate specs
52
+ A: No -> refine
53
+
54
+ ## Gates
55
+ - Deliverables and approval process must be defined
56
+
57
+ ## Agents
58
+ - Creative Lead, Design Systems, Critic
59
+
@@ -1,58 +1,59 @@
1
- # Router flow: Humanities research
2
-
3
- ## Entry signals
4
- - "history", "sociology", "philosophy", "essay", "thesis"
5
-
6
- ## Steps
7
- 1) Interview for thesis, scope, sources, and format.
8
- 2) Define structure and methodology.
9
- 3) Generate plan and section outline.
10
- 4) Ask for approval or `--improve`.
11
- 5) Produce reading list and source checks.
12
-
13
- ## Required questions
14
- - What is the thesis or research question?
15
- - What scope and timeframe apply?
16
- - What source types are acceptable?
17
- - What format is required?
18
- - What perspectives must be included?
19
-
20
- ## Required outputs
21
- - `requirement.md`
22
- - `functional-spec.md`
23
- - `technical-spec.md` (citation rules)
24
- - `architecture.md` (structure)
25
- - `test-plan.md` (bias and source checks)
26
-
27
- ## Scripted Q/A tree
28
-
29
- ### Q1: Thesis
30
- Q: "What is the thesis or research question?"
31
- A: capture thesis
32
-
33
- ### Q2: Scope
34
- Q: "What period, region, or population is in scope?"
35
- A: capture scope boundaries
36
-
37
- ### Q3: Sources
38
- Q: "What sources are acceptable or required?"
39
- A: capture source types and citation style
40
-
41
- ### Q4: Format
42
- Q: "What output format is required?"
43
- A: capture format
44
-
45
- ### Q5: Perspectives
46
- Q: "Which perspectives must be included?"
47
- A: capture perspectives
48
-
49
- ### Q6: Approval gate
50
- Q: "Approve research plan and move to structure?"
51
- A: Yes -> generate specs
52
- A: No -> refine
53
-
54
- ## Gates
55
- - Thesis and scope required before deep research
56
-
57
- ## Agents
58
- - Researcher, Critic, Synthesizer
1
+ # Router flow: Humanities research
2
+
3
+ ## Entry signals
4
+ - "history", "sociology", "philosophy", "essay", "thesis"
5
+
6
+ ## Steps
7
+ 1) Interview for thesis, scope, sources, and format.
8
+ 2) Define structure and methodology.
9
+ 3) Generate plan and section outline.
10
+ 4) Ask for approval or `--improve`.
11
+ 5) Produce reading list and source checks.
12
+
13
+ ## Required questions
14
+ - What is the thesis or research question?
15
+ - What scope and timeframe apply?
16
+ - What source types are acceptable?
17
+ - What format is required?
18
+ - What perspectives must be included?
19
+
20
+ ## Required outputs
21
+ - `requirement.md`
22
+ - `functional-spec.md`
23
+ - `technical-spec.md` (citation rules)
24
+ - `docs/ARCHITECTURE.md` (structure)
25
+ - `test-plan.md` (bias and source checks)
26
+
27
+ ## Scripted Q/A tree
28
+
29
+ ### Q1: Thesis
30
+ Q: "What is the thesis or research question?"
31
+ A: capture thesis
32
+
33
+ ### Q2: Scope
34
+ Q: "What period, region, or population is in scope?"
35
+ A: capture scope boundaries
36
+
37
+ ### Q3: Sources
38
+ Q: "What sources are acceptable or required?"
39
+ A: capture source types and citation style
40
+
41
+ ### Q4: Format
42
+ Q: "What output format is required?"
43
+ A: capture format
44
+
45
+ ### Q5: Perspectives
46
+ Q: "Which perspectives must be included?"
47
+ A: capture perspectives
48
+
49
+ ### Q6: Approval gate
50
+ Q: "Approve research plan and move to structure?"
51
+ A: Yes -> generate specs
52
+ A: No -> refine
53
+
54
+ ## Gates
55
+ - Thesis and scope required before deep research
56
+
57
+ ## Agents
58
+ - Researcher, Critic, Synthesizer
59
+