@uoyo/mvtt 2.0.0-beta.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 (163) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +209 -0
  3. package/dist/build/assembler.d.ts +6 -0
  4. package/dist/build/assembler.d.ts.map +1 -0
  5. package/dist/build/assembler.js +32 -0
  6. package/dist/build/assembler.js.map +1 -0
  7. package/dist/build/section-loader.d.ts +4 -0
  8. package/dist/build/section-loader.d.ts.map +1 -0
  9. package/dist/build/section-loader.js +55 -0
  10. package/dist/build/section-loader.js.map +1 -0
  11. package/dist/build/validator.d.ts +6 -0
  12. package/dist/build/validator.d.ts.map +1 -0
  13. package/dist/build/validator.js +77 -0
  14. package/dist/build/validator.js.map +1 -0
  15. package/dist/cli.d.ts +2 -0
  16. package/dist/cli.d.ts.map +1 -0
  17. package/dist/cli.js +49 -0
  18. package/dist/cli.js.map +1 -0
  19. package/dist/commands/build.d.ts +5 -0
  20. package/dist/commands/build.d.ts.map +1 -0
  21. package/dist/commands/build.js +46 -0
  22. package/dist/commands/build.js.map +1 -0
  23. package/dist/commands/doctor.d.ts +2 -0
  24. package/dist/commands/doctor.d.ts.map +1 -0
  25. package/dist/commands/doctor.js +79 -0
  26. package/dist/commands/doctor.js.map +1 -0
  27. package/dist/commands/install.d.ts +5 -0
  28. package/dist/commands/install.d.ts.map +1 -0
  29. package/dist/commands/install.js +63 -0
  30. package/dist/commands/install.js.map +1 -0
  31. package/dist/commands/shared.d.ts +2 -0
  32. package/dist/commands/shared.d.ts.map +1 -0
  33. package/dist/commands/shared.js +2 -0
  34. package/dist/commands/shared.js.map +1 -0
  35. package/dist/commands/uninstall.d.ts +2 -0
  36. package/dist/commands/uninstall.d.ts.map +1 -0
  37. package/dist/commands/uninstall.js +56 -0
  38. package/dist/commands/uninstall.js.map +1 -0
  39. package/dist/commands/update.d.ts +5 -0
  40. package/dist/commands/update.d.ts.map +1 -0
  41. package/dist/commands/update.js +59 -0
  42. package/dist/commands/update.js.map +1 -0
  43. package/dist/fs/hash.d.ts +3 -0
  44. package/dist/fs/hash.d.ts.map +1 -0
  45. package/dist/fs/hash.js +10 -0
  46. package/dist/fs/hash.js.map +1 -0
  47. package/dist/fs/install-manifest.d.ts +16 -0
  48. package/dist/fs/install-manifest.d.ts.map +1 -0
  49. package/dist/fs/install-manifest.js +29 -0
  50. package/dist/fs/install-manifest.js.map +1 -0
  51. package/dist/fs/materialize.d.ts +14 -0
  52. package/dist/fs/materialize.d.ts.map +1 -0
  53. package/dist/fs/materialize.js +116 -0
  54. package/dist/fs/materialize.js.map +1 -0
  55. package/dist/fs/protection.d.ts +15 -0
  56. package/dist/fs/protection.d.ts.map +1 -0
  57. package/dist/fs/protection.js +16 -0
  58. package/dist/fs/protection.js.map +1 -0
  59. package/dist/index.d.ts +3 -0
  60. package/dist/index.d.ts.map +1 -0
  61. package/dist/index.js +17 -0
  62. package/dist/index.js.map +1 -0
  63. package/dist/types/manifest.d.ts +21 -0
  64. package/dist/types/manifest.d.ts.map +1 -0
  65. package/dist/types/manifest.js +2 -0
  66. package/dist/types/manifest.js.map +1 -0
  67. package/dist/types/registry.d.ts +25 -0
  68. package/dist/types/registry.d.ts.map +1 -0
  69. package/dist/types/registry.js +2 -0
  70. package/dist/types/registry.js.map +1 -0
  71. package/dist/util/color.d.ts +9 -0
  72. package/dist/util/color.d.ts.map +1 -0
  73. package/dist/util/color.js +13 -0
  74. package/dist/util/color.js.map +1 -0
  75. package/dist/util/package.d.ts +3 -0
  76. package/dist/util/package.d.ts.map +1 -0
  77. package/dist/util/package.js +13 -0
  78. package/dist/util/package.js.map +1 -0
  79. package/install-manifest.yaml +27 -0
  80. package/package.json +57 -0
  81. package/registry.yaml +209 -0
  82. package/sources/defaults/config.yaml +30 -0
  83. package/sources/defaults/project-context.yaml +26 -0
  84. package/sources/defaults/session.yaml +23 -0
  85. package/sources/knowledge/core/manifest.yaml +47 -0
  86. package/sources/knowledge/core/review-principles.md +51 -0
  87. package/sources/knowledge/patterns/clean-architecture/manifest.yaml +66 -0
  88. package/sources/knowledge/patterns/clean-architecture/review-checklist.md +230 -0
  89. package/sources/knowledge/patterns/ddd/manifest.yaml +83 -0
  90. package/sources/knowledge/patterns/ddd/review-checklist.md +226 -0
  91. package/sources/knowledge/patterns/ddd/tactical-patterns.md +12 -0
  92. package/sources/knowledge/patterns/frontend-react/manifest.yaml +44 -0
  93. package/sources/knowledge/patterns/frontend-react/review-checklist.md +78 -0
  94. package/sources/knowledge/patterns/manifest.yaml +113 -0
  95. package/sources/sections/activation-load-config.md +5 -0
  96. package/sources/sections/activation-load-context.md +11 -0
  97. package/sources/sections/activation-preflight.md +4 -0
  98. package/sources/sections/footer-next-steps.md +9 -0
  99. package/sources/sections/role-header.md +13 -0
  100. package/sources/skills/mvt-add-context/business.md +47 -0
  101. package/sources/skills/mvt-add-context/manifest.yaml +83 -0
  102. package/sources/skills/mvt-analyze/business.md +33 -0
  103. package/sources/skills/mvt-analyze/manifest.yaml +89 -0
  104. package/sources/skills/mvt-analyze-code/business.md +35 -0
  105. package/sources/skills/mvt-analyze-code/manifest.yaml +88 -0
  106. package/sources/skills/mvt-check-context/business.md +42 -0
  107. package/sources/skills/mvt-check-context/manifest.yaml +74 -0
  108. package/sources/skills/mvt-cleanup/business.md +31 -0
  109. package/sources/skills/mvt-cleanup/manifest.yaml +93 -0
  110. package/sources/skills/mvt-config/business.md +26 -0
  111. package/sources/skills/mvt-config/manifest.yaml +108 -0
  112. package/sources/skills/mvt-create-skill/business.md +111 -0
  113. package/sources/skills/mvt-create-skill/manifest.yaml +79 -0
  114. package/sources/skills/mvt-design/business.md +34 -0
  115. package/sources/skills/mvt-design/manifest.yaml +105 -0
  116. package/sources/skills/mvt-fix/business.md +28 -0
  117. package/sources/skills/mvt-fix/manifest.yaml +86 -0
  118. package/sources/skills/mvt-help/business.md +70 -0
  119. package/sources/skills/mvt-help/manifest.yaml +61 -0
  120. package/sources/skills/mvt-implement/business.md +32 -0
  121. package/sources/skills/mvt-implement/manifest.yaml +96 -0
  122. package/sources/skills/mvt-init/business.md +49 -0
  123. package/sources/skills/mvt-init/manifest.yaml +93 -0
  124. package/sources/skills/mvt-refactor/business.md +33 -0
  125. package/sources/skills/mvt-refactor/manifest.yaml +101 -0
  126. package/sources/skills/mvt-review/business.md +49 -0
  127. package/sources/skills/mvt-review/manifest.yaml +106 -0
  128. package/sources/skills/mvt-status/business.md +24 -0
  129. package/sources/skills/mvt-status/manifest.yaml +74 -0
  130. package/sources/skills/mvt-sync-context/business.md +25 -0
  131. package/sources/skills/mvt-sync-context/manifest.yaml +84 -0
  132. package/sources/skills/mvt-template/business.md +49 -0
  133. package/sources/skills/mvt-template/manifest.yaml +71 -0
  134. package/sources/skills/mvt-test/business.md +36 -0
  135. package/sources/skills/mvt-test/manifest.yaml +111 -0
  136. package/sources/templates/analyze-code-output/body.md +44 -0
  137. package/sources/templates/analyze-code-output/manifest.yaml +11 -0
  138. package/sources/templates/analyze-output/body.md +38 -0
  139. package/sources/templates/analyze-output/manifest.yaml +11 -0
  140. package/sources/templates/cleanup-output/body.md +9 -0
  141. package/sources/templates/cleanup-output/manifest.yaml +11 -0
  142. package/sources/templates/config-output/body.md +11 -0
  143. package/sources/templates/config-output/manifest.yaml +11 -0
  144. package/sources/templates/context-check-output/body.md +32 -0
  145. package/sources/templates/context-check-output/manifest.yaml +11 -0
  146. package/sources/templates/design-output/body.md +50 -0
  147. package/sources/templates/design-output/manifest.yaml +11 -0
  148. package/sources/templates/fix-output/body.md +30 -0
  149. package/sources/templates/fix-output/manifest.yaml +11 -0
  150. package/sources/templates/implement-output/body.md +32 -0
  151. package/sources/templates/implement-output/manifest.yaml +11 -0
  152. package/sources/templates/init-output/body.md +34 -0
  153. package/sources/templates/init-output/manifest.yaml +11 -0
  154. package/sources/templates/refactor-output/body.md +32 -0
  155. package/sources/templates/refactor-output/manifest.yaml +11 -0
  156. package/sources/templates/review-output/body.md +45 -0
  157. package/sources/templates/review-output/manifest.yaml +11 -0
  158. package/sources/templates/status-output/body.md +36 -0
  159. package/sources/templates/status-output/manifest.yaml +11 -0
  160. package/sources/templates/sync-context-output/body.md +16 -0
  161. package/sources/templates/sync-context-output/manifest.yaml +11 -0
  162. package/sources/templates/test-output/body.md +31 -0
  163. package/sources/templates/test-output/manifest.yaml +11 -0
@@ -0,0 +1,49 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Identify Review Target
4
+ - Latest implementation files from current change
5
+ - Files specified by user
6
+ - Files in current change artifacts
7
+
8
+ ### Step 2: Load Context
9
+ - Read target files
10
+ - Read project-context for architecture expectations
11
+ - Load review checklist for active pattern (if available)
12
+
13
+ ### Step 3: Analyze Code
14
+ - Check architecture compliance (layer assignments, dependencies)
15
+ - Check code quality (functions small/focused, naming, duplication)
16
+ - Check error handling
17
+ - Check edge cases
18
+ - Check readability
19
+ - If `--aspect` specified -> Focus on that aspect
20
+
21
+ ### Step 4: Categorize Issues
22
+ Classify each finding by severity:
23
+
24
+ | Level | Description | Action Required |
25
+ |-------|-------------|-----------------|
26
+ | **Critical** | Bugs, security issues, breaks functionality | Must fix before merge |
27
+ | **Warning** | Code quality issues, potential bugs | Should fix |
28
+ | **Suggestion** | Improvements, best practices | Nice to have |
29
+
30
+ ### Step 5: Update Workspace
31
+ 1. Update `.ai-agents/workspace/session.yaml`:
32
+ - Set `progress.review: done`
33
+ - Set `session.last_command: "/mvt-review"`
34
+ - Append one-line summary to `recent_actions` (keep max 3)
35
+ 2. Write artifact: `.ai-agents/workspace/artifacts/{change-id}/review.md`
36
+
37
+ ## Review Checklist
38
+
39
+ ### Architecture Compliance
40
+ - [ ] Follows established architecture pattern
41
+ - [ ] Correct layer assignment
42
+ - [ ] Proper dependency direction
43
+ - [ ] Module boundaries respected
44
+
45
+ ### Code Quality
46
+ - [ ] Functions are small and focused
47
+ - [ ] Naming is clear and consistent
48
+ - [ ] No code duplication
49
+ - [ ] Proper error handling
@@ -0,0 +1,106 @@
1
+ name: mvt-review
2
+ output: .claude/skills/mvt-review/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-review
6
+ description: "Perform code review for quality, standards compliance, and best practices. Identifies issues by severity and suggests improvements. Use when user wants code reviewed or quality checked."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Review
12
+
13
+ ## Purpose
14
+
15
+ Review code for quality, standards compliance, and best practices. Identify issues by severity, suggest improvements, and ensure architecture compliance. This is the fourth phase in the full workflow: analyze -> design -> implement -> review -> test.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Reviewer
21
+ role_desc: "a Code Quality Guardian"
22
+ decision_rules:
23
+ - rule: "Critical issue found (security, data loss, crash) -> Mark as CRITICAL, require fix before merge"
24
+ - rule: "Architecture violation found -> Flag for Architect, suggest `/mvt-design`"
25
+ - rule: "Minor style issue -> Note as suggestion, don't block"
26
+ - rule: "Subjective preference -> Mark as \"non-blocking\" optional improvement"
27
+ - rule: "Good code pattern found -> Highlight positively"
28
+ - rule: "Bug found -> Document with reproduction steps, suggest `/mvt-fix`"
29
+ - rule: "Insufficient test coverage -> Recommend specific scenarios, suggest `/mvt-test`"
30
+ boundaries:
31
+ - scope: "fix code directly"
32
+ skill: "/mvt-fix"
33
+ - scope: "make architecture decisions"
34
+ skill: "/mvt-design"
35
+ - scope: "modify source code"
36
+ skill: "(This is a read-only review)"
37
+
38
+ - type: inline
39
+ content: |
40
+ ## Aspect Options
41
+
42
+ | Aspect | Focus Areas |
43
+ |--------|-------------|
44
+ | `architecture` | Pattern compliance, module boundaries, dependency direction |
45
+ | `security` | Input validation, injection prevention, authentication |
46
+ | `performance` | N+1 queries, memory leaks, caching |
47
+ | `style` | Naming conventions, formatting, documentation |
48
+
49
+ Usage: `/mvt-review` or `/mvt-review --aspect {type}`
50
+
51
+ - type: shared
52
+ source: sections/activation-load-context.md
53
+ params:
54
+ extended_context:
55
+ - ".ai-agents/knowledge/core/review-principles.md -- Universal review principles"
56
+ - ".ai-agents/knowledge/principle/coding-standards.md -- Project coding standards"
57
+ - ".ai-agents/knowledge/patterns/{pattern.active}/review-checklist.md -- Pattern-specific checklist"
58
+
59
+ - type: shared
60
+ source: sections/activation-load-config.md
61
+
62
+ - type: shared
63
+ source: sections/activation-preflight.md
64
+ params:
65
+ checks:
66
+ - order: "1"
67
+ field: "session.initialized_at"
68
+ level: "WARN"
69
+ message: 'Session not initialized. Run `/mvt-init` first.'
70
+ - order: "2"
71
+ field: "no code to review"
72
+ level: "WARN"
73
+ message: 'No code to review. Run `/mvt-implement` first or specify files.'
74
+ - order: "3"
75
+ field: "pattern.active"
76
+ level: "WARN"
77
+ message: 'Architecture pattern not set. Suggest `/mvt-init`." (allow user to proceed)'
78
+
79
+ - type: inline
80
+ content: |
81
+ ### Step 4: Execute
82
+ Proceed to Execution Flow below.
83
+
84
+ - type: file
85
+ source: ./business.md
86
+
87
+ - type: inline
88
+ content: |
89
+ ## Output Format
90
+
91
+ Read and use the output template from: `.ai-agents/skills/_templates/review-output.md`
92
+
93
+ If a custom version exists at `.ai-agents/skills/_templates/custom/review-output.md`, use the custom version instead.
94
+
95
+ Fill the template placeholders with the review results.
96
+
97
+ Every response MUST end with a Suggested Next Steps section.
98
+
99
+ - type: shared
100
+ source: sections/footer-next-steps.md
101
+ params:
102
+ next_primary: mvt-fix
103
+ next_primary_desc: "Address critical issues"
104
+ next_alternatives:
105
+ - skill: mvt-test
106
+ when: "Add missing tests"
@@ -0,0 +1,24 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Load State
4
+ - Read `session.yaml` for progress, active change, recent actions
5
+ - Read `project-context.yaml` for project info, tech stack, architecture
6
+
7
+ ### Step 2: Determine Current Phase
8
+ - Check `progress` fields (analyze, design, implement, review, test)
9
+ - Identify which phases are `done`, `pending`, or `in-progress`
10
+ - Determine the current active phase
11
+
12
+ ### Step 3: Build Workflow Visualization
13
+ - Generate Mermaid flowchart showing phase progression
14
+ - Color-code phases: green (done), yellow (current), gray (pending)
15
+
16
+ ### Step 4: Compile Status Report
17
+ - Project info summary
18
+ - Progress table with phase status
19
+ - Active change details (if any)
20
+ - Recent actions history
21
+
22
+ ### Step 5: Suggest Next Step
23
+ - Based on current progress, recommend the logical next command
24
+ - If all phases done -> Suggest `/mvt-cleanup` or starting a new feature
@@ -0,0 +1,74 @@
1
+ name: mvt-status
2
+ output: .claude/skills/mvt-status/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-status
6
+ description: "Show current project and workflow status including progress through phases, active changes, and session state. Use when user wants to check project status or see where they are in the workflow."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Status
12
+
13
+ ## Purpose
14
+
15
+ Display comprehensive project and workflow status, showing progress through development phases, active changes, and current session state.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Conductor
21
+ role_desc: "a Workflow Coordinator"
22
+ decision_rules:
23
+ - rule: "If project not initialized -> Warn and suggest `/mvt-init`"
24
+ - rule: "If no active change -> Show project info only, suggest starting a workflow"
25
+ - rule: "If workflow in progress -> Highlight current phase and next recommended step"
26
+ boundaries:
27
+ - scope: "analyze requirements"
28
+ skill: "/mvt-analyze"
29
+ - scope: "design architecture"
30
+ skill: "/mvt-design"
31
+ - scope: "write implementation code"
32
+ skill: "/mvt-implement"
33
+
34
+ - type: shared
35
+ source: sections/activation-load-context.md
36
+
37
+ - type: shared
38
+ source: sections/activation-load-config.md
39
+
40
+ - type: shared
41
+ source: sections/activation-preflight.md
42
+ params:
43
+ checks:
44
+ - order: "1"
45
+ field: "session.initialized_at"
46
+ level: "WARN"
47
+ message: 'Session not initialized. Run `/mvt-init` first.'
48
+ - order: "2"
49
+ field: "project.name"
50
+ level: "WARN"
51
+ message: 'Project not initialized. Run `/mvt-init` first.'
52
+
53
+ - type: inline
54
+ content: |
55
+ ### Step 4: Execute
56
+ Proceed to Execution Flow below.
57
+
58
+ - type: file
59
+ source: ./business.md
60
+
61
+ - type: inline
62
+ content: |
63
+ ## Output Format
64
+
65
+ Read and use the output template from: `.ai-agents/skills/_templates/status-output.md`
66
+
67
+ If a custom version exists at `.ai-agents/skills/_templates/custom/status-output.md`, use the custom version instead.
68
+
69
+ Fill the template placeholders with the current state data.
70
+
71
+ Every response MUST end with a Suggested Next Steps section.
72
+
73
+ ## Suggested Next Steps
74
+ After completion, suggest the logical next workflow step based on current progress.
@@ -0,0 +1,25 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Detect Changes
4
+ - If git available:
5
+ - Run `git diff --name-only` (unstaged changes)
6
+ - Run `git diff --name-only --cached` (staged changes)
7
+ - Run `git diff --name-only HEAD~1` (last commit changes)
8
+ - Merge results and deduplicate
9
+ - If git not available:
10
+ - Scan for recently modified files in source directories
11
+
12
+ ### Step 2: Analyze Changed Files
13
+ - Read each changed file
14
+ - Extract entities (classes, models, types)
15
+ - Extract services (service classes, API handlers)
16
+ - Extract keywords and topics
17
+
18
+ ### Step 3: Update Workspace
19
+ 1. Update `.ai-agents/workspace/project-context.yaml`:
20
+ - Add new entities to architecture section
21
+ - Add new services
22
+ - Update module mappings
23
+ 2. Update `.ai-agents/workspace/session.yaml`:
24
+ - Set `session.last_command: "/mvt-sync-context"`
25
+ - Append one-line summary to `recent_actions` (keep max 3)
@@ -0,0 +1,84 @@
1
+ name: mvt-sync-context
2
+ output: .claude/skills/mvt-sync-context/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-sync-context
6
+ description: "Synchronize workspace context with code changes after manual modifications or git operations. Use when context seems out of sync with code, after manual edits, or after git merge/rebase."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Sync Context
12
+
13
+ ## Purpose
14
+
15
+ Synchronize the MVTT workspace context with code changes made outside the workflow. This is a code-driven, automatic synchronization that scans git diffs and file changes to update project context.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Conductor
21
+ role_desc: "a Workflow Coordinator"
22
+ decision_rules:
23
+ - rule: "Git available -> Use git diff to detect changes"
24
+ - rule: "Git not available -> Scan for recently modified files"
25
+ - rule: "Changes detected -> Analyze and update context"
26
+ - rule: "No changes detected -> Report context is already in sync"
27
+ boundaries:
28
+ - scope: "analyze requirements"
29
+ skill: "/mvt-analyze"
30
+ - scope: "design architecture"
31
+ skill: "/mvt-design"
32
+ - scope: "write implementation code"
33
+ skill: "/mvt-implement"
34
+
35
+ - type: inline
36
+ content: |
37
+ ### When to Use
38
+ - After manual code changes outside the workflow
39
+ - When context seems out of sync with code
40
+ - After git operations (merge, rebase, etc.)
41
+
42
+ - type: shared
43
+ source: sections/activation-load-context.md
44
+
45
+ - type: shared
46
+ source: sections/activation-load-config.md
47
+
48
+ - type: shared
49
+ source: sections/activation-preflight.md
50
+ params:
51
+ checks:
52
+ - order: "1"
53
+ field: "project-context is empty"
54
+ level: "WARN"
55
+ message: 'Project not initialized. Run `/mvt-init` first.'
56
+
57
+ - type: inline
58
+ content: |
59
+ ### Step 4: Execute
60
+ Proceed to Execution Flow below.
61
+
62
+ - type: file
63
+ source: ./business.md
64
+
65
+ - type: inline
66
+ content: |
67
+ ## Output Format
68
+
69
+ Read and use the output template from: `.ai-agents/skills/_templates/sync-context-output.md`
70
+
71
+ If a custom version exists at `.ai-agents/skills/_templates/custom/sync-context-output.md`, use the custom version instead.
72
+
73
+ Fill the template placeholders with the sync results.
74
+
75
+ Every response MUST end with a Suggested Next Steps section.
76
+
77
+ - type: shared
78
+ source: sections/footer-next-steps.md
79
+ params:
80
+ next_primary: mvt-status
81
+ next_primary_desc: "Verify context state after sync"
82
+ next_alternatives:
83
+ - skill: "(continue)"
84
+ when: "Continue with your current task"
@@ -0,0 +1,49 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Load Template Inventory
4
+ - Read registry to get all registered templates
5
+ - Scan `custom/` directory for existing custom versions
6
+ - Build status list: default / customized for each template
7
+
8
+ ### Step 2: Display Template List
9
+ Show all templates with their status:
10
+
11
+ ```markdown
12
+ ## Output Templates
13
+
14
+ | # | Template | Skill | Status |
15
+ |---|---------|-------|--------|
16
+ | 1 | analyze-output.md | mvt-analyze | Default |
17
+ | 2 | design-output.md | mvt-design | Customized |
18
+ | ... | ... | ... | ... |
19
+
20
+ **Actions**: `view {#}`, `customize {#}`, `reset {#}`, `export {#}`
21
+ ```
22
+
23
+ ### Step 3: Execute Action (based on user choice)
24
+
25
+ **View**:
26
+ - Display full template content
27
+ - If custom version exists, show that; otherwise show default
28
+ - Indicate which version is being shown
29
+
30
+ **Customize**:
31
+ 1. Show current default template
32
+ 2. Ask user to describe desired modifications
33
+ 3. Generate new template based on modifications
34
+ 4. Preview the customized template
35
+ 5. Save to `custom/{template-name}` after user confirmation
36
+ 6. Custom template must retain frontmatter (`id`, `version`, `skill`)
37
+
38
+ **Reset**:
39
+ 1. Confirm user wants to reset to default
40
+ 2. Delete the custom version from `custom/`
41
+ 3. Confirm reset complete
42
+
43
+ **Export**:
44
+ - Output template content to user-specified location
45
+ - Or display in a code block for manual copy
46
+
47
+ ### Step 4: Confirmation
48
+ - Show result of the action taken
49
+ - Confirm files modified
@@ -0,0 +1,71 @@
1
+ name: mvt-template
2
+ output: .claude/skills/mvt-template/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-template
6
+ description: "View, customize, and manage output templates for MVTT skills. Use when user wants to see available templates, create custom template versions, reset to defaults, or export templates."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Custom Template
12
+
13
+ ## Purpose
14
+
15
+ Provide an interactive tool for viewing, customizing, and managing MVTT output templates. Users can inspect default templates, create custom versions that override defaults, reset customizations, and export templates.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Conductor
21
+ role_desc: "a Workflow Coordinator"
22
+ decision_rules:
23
+ - rule: "No arguments -> Show template list with status"
24
+ - rule: "User selects \"view\" -> Display full template content (custom version if exists)"
25
+ - rule: "User selects \"customize\" -> Guide through modification process"
26
+ - rule: "User selects \"reset\" -> Delete custom version, restore default"
27
+ - rule: "User selects \"export\" -> Output template to specified location"
28
+ - rule: "Custom template must preserve frontmatter format"
29
+ boundaries:
30
+ - scope: "modify default templates in `_templates/` root"
31
+ skill: "(Only create/modify in `custom/`)"
32
+ - scope: "modify skill logic"
33
+ skill: "(Only change output formatting)"
34
+
35
+ - type: shared
36
+ source: sections/activation-load-context.md
37
+ params:
38
+ extended_context:
39
+ - ".ai-agents/registry.yaml -- Template registry"
40
+ - "Scan `.ai-agents/skills/_templates/custom/` for existing customizations"
41
+
42
+ - type: shared
43
+ source: sections/activation-load-config.md
44
+
45
+ - type: inline
46
+ content: |
47
+ ### Step 3: Pre-flight Checks
48
+ - No blocking checks required.
49
+
50
+ ### Step 4: Execute
51
+ Proceed to Execution Flow below.
52
+
53
+ - type: file
54
+ source: ./business.md
55
+
56
+ - type: inline
57
+ content: |
58
+ ## Output Format
59
+
60
+ No external template -- output is inline based on the action:
61
+
62
+ ```markdown
63
+ ## Template Manager
64
+
65
+ {Action-specific content}
66
+
67
+ ---
68
+ **Suggested Next Steps**:
69
+ - `/mvt-template` -- Manage more templates
70
+ - `/mvt-help` -- View all available skills
71
+ ```
@@ -0,0 +1,36 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Load Context
4
+ - Read implementation files
5
+ - Read project-context for tech stack and test framework
6
+ - Identify test framework conventions
7
+
8
+ ### Step 2: Analyze Test Scenarios
9
+ - Identify happy path scenarios
10
+ - Identify edge cases and boundary conditions
11
+ - Identify error scenarios
12
+ - Identify security test cases (if applicable)
13
+
14
+ ### Step 3: Design Test Cases
15
+ - Create test case table with IDs, scenarios, inputs, expected outputs
16
+ - Define preconditions for each test
17
+ - Prioritize by type (happy path and edge cases first)
18
+
19
+ ### Step 4: Write Test Code
20
+ - Follow project's test framework conventions
21
+ - Write clear, descriptive test names
22
+ - Include setup, action, and assertion sections
23
+ - Use mocks/stubs for external dependencies
24
+
25
+ ### Step 5: Coverage Analysis (with --coverage)
26
+ - Map test cases to requirements
27
+ - Identify coverage gaps
28
+ - Recommend additional tests for missing coverage
29
+
30
+ ### Step 6: Update Workspace
31
+ 1. Update `.ai-agents/workspace/session.yaml`:
32
+ - Set `progress.test: done`
33
+ - Set `session.last_command: "/mvt-test"`
34
+ - Append one-line summary to `recent_actions` (keep max 3)
35
+ 2. Write test files to the project
36
+ 3. Write artifact: `.ai-agents/workspace/artifacts/{change-id}/tests/`
@@ -0,0 +1,111 @@
1
+ name: mvt-test
2
+ output: .claude/skills/mvt-test/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-test
6
+ description: "Generate and design tests to validate implementations. Creates test cases covering happy paths, edge cases, negative scenarios, and security. Use when user wants to write tests or validate code."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Test
12
+
13
+ ## Purpose
14
+
15
+ Design and write tests to validate implementations against requirements. Ensure code works correctly with comprehensive coverage of happy paths, edge cases, and error scenarios. This is the fifth phase in the full workflow: analyze -> design -> implement -> review -> test.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Tester
21
+ role_desc: "a Quality Assurance Specialist"
22
+ decision_rules:
23
+ - rule: "Happy path works -> Add edge case and boundary tests"
24
+ - rule: "Bug found during testing -> Document with reproduction steps, suggest `/mvt-fix`"
25
+ - rule: "Coverage gap found -> Add tests focused on that area"
26
+ - rule: "Flaky test detected -> Flag for investigation"
27
+ - rule: "Test requires external service -> Use mocks/stubs, document the dependency"
28
+ - rule: "Security constraints in requirements -> Add security-focused test cases"
29
+ - rule: "Existing tests conflict with new implementation -> Flag the conflict"
30
+ boundaries:
31
+ - scope: "modify the code being tested"
32
+ skill: "/mvt-fix"
33
+ - scope: "make architecture decisions"
34
+ skill: "(Test against existing design)"
35
+ - scope: "skip edge cases or negative tests"
36
+ skill: "(Never)"
37
+
38
+ - type: inline
39
+ content: |
40
+ ## Variants
41
+
42
+ | Variant | Description |
43
+ |---------|-------------|
44
+ | `/mvt-test` | Generate tests for recent implementation |
45
+ | `/mvt-test {feature}` | Generate tests for specific feature |
46
+ | `/mvt-test --coverage` | Generate tests with coverage analysis |
47
+
48
+ - type: shared
49
+ source: sections/activation-load-context.md
50
+ params:
51
+ extended_context:
52
+ - ".ai-agents/knowledge/core/review-principles.md -- Code quality principles"
53
+ - ".ai-agents/knowledge/patterns/{pattern.active}/ -- Active pattern knowledge"
54
+ - ".ai-agents/knowledge/principle/coding-standards.md -- Project coding standards"
55
+ - "Implementation files to be tested"
56
+
57
+ - type: shared
58
+ source: sections/activation-load-config.md
59
+
60
+ - type: shared
61
+ source: sections/activation-preflight.md
62
+ params:
63
+ checks:
64
+ - order: "1"
65
+ field: "session.initialized_at"
66
+ level: "WARN"
67
+ message: 'Session not initialized. Run `/mvt-init` first.'
68
+ - order: "2"
69
+ field: "no implementation files"
70
+ level: "WARN"
71
+ message: 'No implementation found. Run `/mvt-implement` first.'
72
+ - order: "3"
73
+ field: "pattern.active"
74
+ level: "WARN"
75
+ message: 'Architecture pattern not set. Suggest `/mvt-init`." (allow user to proceed)'
76
+
77
+ - type: inline
78
+ content: |
79
+ ### Step 4: Execute
80
+ Proceed to Execution Flow below.
81
+
82
+ ## Test Case Types
83
+
84
+ | Type | Description | Priority |
85
+ |------|-------------|----------|
86
+ | Happy Path | Normal successful flow | High |
87
+ | Edge Case | Boundary conditions | High |
88
+ | Negative | Invalid inputs, errors | High |
89
+ | Security | Authentication, injection | Medium |
90
+ | Performance | Load, stress | Low |
91
+
92
+ - type: file
93
+ source: ./business.md
94
+
95
+ - type: inline
96
+ content: |
97
+ ## Output Format
98
+
99
+ Read and use the output template from: `.ai-agents/skills/_templates/test-output.md`
100
+
101
+ If a custom version exists at `.ai-agents/skills/_templates/custom/test-output.md`, use the custom version instead.
102
+
103
+ Fill the template placeholders with the test design results.
104
+
105
+ Every response MUST end with a Suggested Next Steps section.
106
+
107
+ - type: shared
108
+ source: sections/footer-next-steps.md
109
+ params:
110
+ next_primary: mvt-fix
111
+ next_primary_desc: "Run tests with the appropriate command; if tests fail, use this"
@@ -0,0 +1,44 @@
1
+ ## Codebase Analysis Report
2
+
3
+ ### Project: {name}
4
+ - **Root**: `{root_path}`
5
+ - **Primary Language**: {language}
6
+ - **Detected Framework**: {framework}
7
+
8
+ ### Architecture Discovery
9
+
10
+ #### Module Structure
11
+ | Module | Path | Responsibility | Type |
12
+ |--------|------|----------------|------|
13
+ | {module} | `{path}` | {description} | {Domain/Application/Infrastructure/Interface} |
14
+
15
+ #### Entity Inventory
16
+ | Entity | Location | Relationships |
17
+ |--------|----------|---------------|
18
+ | {entity} | `{file}` | {related_entities} |
19
+
20
+ #### Service Inventory
21
+ | Service | Location | Dependencies | Methods |
22
+ |---------|----------|--------------|---------|
23
+ | {service} | `{file}` | {deps} | {methods} |
24
+
25
+ ### Dependency Analysis
26
+ ```mermaid
27
+ graph TD
28
+ A[Module A] --> B[Module B]
29
+ B --> C[Module C]
30
+ ```
31
+
32
+ ### Key Findings
33
+ | # | Finding | Type | Severity |
34
+ |---|---------|------|----------|
35
+ | 1 | {finding} | {architecture/code-quality/dependency} | {info/warning/concern} |
36
+
37
+ ### Workspace Updated
38
+ - [x] project-context.yaml updated with discovered structure
39
+ - [x] session.yaml updated
40
+
41
+ ---
42
+ **Suggested Next Steps**:
43
+ - `/mvt-analyze {requirements}` to add requirements on top of discovered structure
44
+ - `/mvt-design` to design new features for existing architecture