@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,74 @@
1
+ name: mvt-check-context
2
+ output: .claude/skills/mvt-check-context/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-check-context
6
+ description: "Analyze context token load and give optimization recommendations. Use when user wants to check how much context MVTT loads, identify large files, or optimize workspace size for better performance."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Context Check
12
+
13
+ ## Purpose
14
+
15
+ Analyze the total context information that MVTT loads at runtime, estimate token consumption, assess health status, and provide actionable optimization recommendations.
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: "Total tokens < 5,000 -> Report as \"Good\""
24
+ - rule: "Total tokens 5,000-15,000 -> Report as \"Moderate\""
25
+ - rule: "Total tokens 15,000-30,000 -> Report as \"High\", suggest optimizations"
26
+ - rule: "Total tokens > 30,000 -> Report as \"Overloaded\", strongly recommend cleanup"
27
+ boundaries:
28
+ - scope: "modify any files"
29
+ skill: "(Only analyze and recommend)"
30
+ - scope: "clean up artifacts"
31
+ skill: "/mvt-cleanup"
32
+ - scope: "modify context"
33
+ skill: "/mvt-add-context"
34
+
35
+ - type: shared
36
+ source: sections/activation-load-context.md
37
+ params:
38
+ extended_context:
39
+ - ".ai-agents/config.yaml -- Framework configuration (to be scanned for size)"
40
+
41
+ - type: shared
42
+ source: sections/activation-load-config.md
43
+
44
+ - type: inline
45
+ content: |
46
+ ### Step 3: Pre-flight Checks
47
+ - No blocking checks required.
48
+
49
+ ### Step 4: Execute
50
+ Proceed to Execution Flow below.
51
+
52
+ - type: file
53
+ source: ./business.md
54
+
55
+ - type: inline
56
+ content: |
57
+ ## Output Format
58
+
59
+ Read and use the output template from: `.ai-agents/skills/_templates/context-check-output.md`
60
+
61
+ If a custom version exists at `.ai-agents/skills/_templates/custom/context-check-output.md`, use the custom version instead.
62
+
63
+ Fill the template with analysis results.
64
+
65
+ Every response MUST end with a Suggested Next Steps section.
66
+
67
+ - type: shared
68
+ source: sections/footer-next-steps.md
69
+ params:
70
+ next_primary: mvt-cleanup
71
+ next_primary_desc: "Clean up old artifacts to reduce context size"
72
+ next_alternatives:
73
+ - skill: mvt-add-context
74
+ when: "Update project context if information is outdated"
@@ -0,0 +1,31 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Scan Workspace State
4
+ - Read all files under `.ai-agents/workspace/artifacts/{change-id}/`
5
+ - Read `.ai-agents/workspace/session.yaml`
6
+ - Count total artifact files
7
+ - Estimate token footprint for each file (~characters / 4)
8
+
9
+ ### Step 2: Identify Cleanup Candidates
10
+ - Apply cleanup rules to identify candidates
11
+ - Calculate current size and projected savings for each
12
+
13
+ ### Step 3: Present Cleanup Plan
14
+ Show user what will be cleaned:
15
+
16
+ | Item | Current Size | Action | Result |
17
+ |------|-------------|--------|--------|
18
+ | {artifact} | ~{tokens} tokens | {action} | ~{reduced} tokens |
19
+ | **Total** | **{total}** | | **{new_total} ({savings} saved)** |
20
+
21
+ If `--dry-run` flag is set -> Stop here. Do not proceed.
22
+
23
+ ### Step 4: Execute (after user confirmation)
24
+ - Summarize identified artifacts (keep key decisions, remove details)
25
+ - Update `session.yaml` to reflect cleanup
26
+ - Output summary of actions taken
27
+
28
+ ### Step 5: Update Workspace
29
+ 1. Update `.ai-agents/workspace/session.yaml`:
30
+ - Set `session.last_command: "/mvt-cleanup"`
31
+ - Append one-line summary to `recent_actions` (keep max 3)
@@ -0,0 +1,93 @@
1
+ name: mvt-cleanup
2
+ output: .claude/skills/mvt-cleanup/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-cleanup
6
+ description: "Clean up workspace artifacts, summarize old changes, and maintain workspace health. Use when workspace has accumulated old artifacts or to reduce context token footprint."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Cleanup
12
+
13
+ ## Purpose
14
+
15
+ Clean up workspace artifacts, summarize completed changes, and maintain workspace health. Reduces token footprint by archiving old artifacts and removing stale data.
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 -> Interactive cleanup (review items before action)"
24
+ - rule: "`--dry-run` flag -> Show what would be cleaned without taking action"
25
+ - rule: "Completed changes found -> Summarize and archive"
26
+ - rule: "Orphaned artifacts found -> List for user review"
27
+ - rule: "Stale session data found -> Summarize into single entry"
28
+ boundaries:
29
+ - scope: "analyze requirements"
30
+ skill: "/mvt-analyze"
31
+ - scope: "design architecture"
32
+ skill: "/mvt-design"
33
+ - scope: "write implementation code"
34
+ skill: "/mvt-implement"
35
+
36
+ - type: inline
37
+ content: |
38
+ ## Variants
39
+
40
+ | Variant | Description |
41
+ |---------|-------------|
42
+ | `/mvt-cleanup` | Interactive cleanup (review before action) |
43
+ | `/mvt-cleanup --dry-run` | Preview what would be cleaned |
44
+
45
+ - type: shared
46
+ source: sections/activation-load-context.md
47
+ params:
48
+ extended_context:
49
+ - "Scan all files under `.ai-agents/workspace/artifacts/` (all change-id directories)"
50
+
51
+ - type: shared
52
+ source: sections/activation-load-config.md
53
+
54
+ - type: shared
55
+ source: sections/activation-preflight.md
56
+ params:
57
+ checks:
58
+ - order: "1"
59
+ field: "project not initialized"
60
+ level: "REQUIRED"
61
+ message: "Project must be initialized (session.yaml exists)"
62
+
63
+ - type: inline
64
+ content: |
65
+ ### Step 4: Execute
66
+ Proceed to Execution Flow below.
67
+
68
+ ## Cleanup Rules
69
+
70
+ | Category | Rule | Action |
71
+ |----------|------|--------|
72
+ | Completed changes | Change with `status: completed` older than current task | Summarize -> archive |
73
+ | Orphaned artifacts | Files in `artifacts/` not referenced by any active change | List for user review |
74
+ | Stale session data | Session history entries older than 5 phases ago | Summarize into single entry |
75
+
76
+ - type: file
77
+ source: ./business.md
78
+
79
+ - type: inline
80
+ content: |
81
+ ## Output Format
82
+
83
+ Read and use the output template from: `.ai-agents/skills/_templates/cleanup-output.md`
84
+
85
+ If a custom version exists at `.ai-agents/skills/_templates/custom/cleanup-output.md`, use the custom version instead.
86
+
87
+ Every response MUST end with a Suggested Next Steps section.
88
+
89
+ - type: shared
90
+ source: sections/footer-next-steps.md
91
+ params:
92
+ next_primary: mvt-status
93
+ next_primary_desc: "Verify workspace state"
@@ -0,0 +1,26 @@
1
+ ## Execution Flow
2
+
3
+ ### Interactive Menu (Default)
4
+ 1. Read current settings from `config.yaml`
5
+ 2. Display configuration menu with categories and current values
6
+ 3. Wait for user to select a category (1-5)
7
+ 4. Show category detail view with editable settings
8
+ 5. Apply changes after user confirmation
9
+
10
+ ### Direct Set (`set {key} {value}`)
11
+ 1. Validate key exists -- if not, show available keys
12
+ 2. Validate value type -- if wrong, show expected type
13
+ 3. Preview the change (old -> new)
14
+ 4. Ask user to confirm
15
+ 5. Apply and write `config.yaml`
16
+
17
+ ### Guided Wizard (`wizard`)
18
+ 1. Step 1: Language Preference
19
+ 2. Step 2: Output Style (emojis, data format)
20
+ 3. Step 3: Architecture Pattern
21
+ 4. Summary Preview -> User confirms -> Apply all changes
22
+
23
+ ### Reset (`reset`)
24
+ 1. Show all settings that will be reset
25
+ 2. Ask user confirmation
26
+ 3. Write default values to `config.yaml`
@@ -0,0 +1,108 @@
1
+ name: mvt-config
2
+ output: .claude/skills/mvt-config/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-config
6
+ description: "Interactive configuration management for framework settings. Use when user wants to change language, output format, architecture pattern, or other framework settings."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Config
12
+
13
+ ## Purpose
14
+
15
+ Interactive configuration management for MVTT framework settings. Provides guided setup, direct key-value setting, and a setup wizard for common configurations.
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 interactive configuration menu"
24
+ - rule: "`show` argument -> Display all current settings"
25
+ - rule: "`set {key} {value}` -> Validate and apply the specific setting"
26
+ - rule: "`wizard` argument -> Start guided setup flow"
27
+ - rule: "`reset` argument -> Reset all settings to defaults after confirmation"
28
+ - rule: "Invalid key -> Show available keys and exit"
29
+ - rule: "Invalid value type -> Show expected type and exit"
30
+ boundaries:
31
+ - scope: "analyze requirements"
32
+ skill: "/mvt-analyze"
33
+ - scope: "design architecture"
34
+ skill: "/mvt-design"
35
+ - scope: "write implementation code"
36
+ skill: "/mvt-implement"
37
+
38
+ - type: inline
39
+ content: |
40
+ ## Variants
41
+
42
+ | Variant | Description |
43
+ |---------|-------------|
44
+ | `/mvt-config` | Show interactive configuration menu |
45
+ | `/mvt-config show` | Display all current settings |
46
+ | `/mvt-config set {key} {value}` | Set a specific configuration value |
47
+ | `/mvt-config wizard` | Start guided setup wizard |
48
+ | `/mvt-config reset` | Reset all settings to defaults |
49
+
50
+ - type: shared
51
+ source: sections/activation-load-context.md
52
+ params:
53
+ extended_context:
54
+ - ".ai-agents/config.yaml -- Current configuration (this skill's primary target)"
55
+
56
+ - type: shared
57
+ source: sections/activation-load-config.md
58
+
59
+ - type: inline
60
+ content: |
61
+ ### Step 3: Pre-flight Checks
62
+ - No blocking checks required (config is always accessible)
63
+
64
+ ### Step 4: Execute
65
+ Proceed to Execution Flow below.
66
+
67
+ ## Configuration Keys
68
+
69
+ ### User Preferences
70
+
71
+ | Key | Type | Default | Description |
72
+ |-----|------|---------|-------------|
73
+ | `preferences.language` | enum | `en-US` | Output language for all responses and documents (en-US, zh-CN) |
74
+ | `preferences.output.no_emojis` | bool | `true` | Disable emojis in output |
75
+ | `preferences.output.data_format` | enum | `yaml` | Data output format (yaml, json) |
76
+
77
+ ### Pattern Settings
78
+
79
+ | Key | Type | Default | Description |
80
+ |-----|------|---------|-------------|
81
+ | `pattern.active` | enum | `` | Active architecture pattern |
82
+ | `pattern.selection.auto_detect` | bool | `true` | Auto-detect pattern on init |
83
+ | `pattern.selection.confirm_with_user` | bool | `true` | Confirm pattern with user |
84
+
85
+ - type: file
86
+ source: ./business.md
87
+
88
+ - type: inline
89
+ content: |
90
+ ## Output Format
91
+
92
+ Read and use the output template from: `.ai-agents/skills/_templates/config-output.md`
93
+
94
+ If a custom version exists at `.ai-agents/skills/_templates/custom/config-output.md`, use the custom version instead.
95
+
96
+ Every response MUST end with a Suggested Next Steps section.
97
+
98
+ - type: shared
99
+ source: sections/footer-next-steps.md
100
+ params:
101
+ next_primary: mvt-config
102
+ next_primary_desc: "`show` -- Verify changes"
103
+ next_alternatives:
104
+ - skill: mvt-init
105
+ when: "--refresh -- Re-analyze with new pattern"
106
+ always_show:
107
+ - skill: mvt-status
108
+ desc: "Check current project state"
@@ -0,0 +1,111 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Requirements Gathering
4
+ Ask the user for:
5
+ - **Skill name**: Suggest `mvt-` prefix for consistency, but also accept project-specific prefixes (e.g., `app-`, `proj-`)
6
+ - **Purpose**: What does this skill do?
7
+ - **Category**: workflow / utility / project-specific
8
+ - **Trigger keywords**: What phrases should invoke this skill? (used for `description` field)
9
+
10
+ ### Step 2: Skill Design
11
+ - Load an existing skill file as structural reference
12
+ - Load config.yaml for project configuration context
13
+ - Determine required input parameters
14
+ - Determine execution mode: interactive / automated / hybrid
15
+ - Determine output format needs
16
+
17
+ ### Step 3: Template Decision
18
+ - Does the skill need an output template?
19
+ - Yes -> Choose: adapt existing template or create new one
20
+ - No -> Skip template creation
21
+ - Does the skill need context loading beyond session + project-context?
22
+ - Yes -> Define the file list
23
+ - No -> Use only basic loading
24
+
25
+ ### Step 4: Generate Skill Files
26
+ 1. Create `.claude/skills/{name}/SKILL.md` with standard structure:
27
+ - YAML frontmatter (`name`, `description`)
28
+ - Purpose section
29
+ - Role section (Decision Rules + Boundaries)
30
+ - Context Loading section
31
+ - Execution Flow section
32
+ - State Update section (MANDATORY — see below)
33
+ - Output Format section
34
+ - Suggested Next Steps section
35
+ 2. If output template needed -> Create `.ai-agents/skills/_templates/{name}-output.md`
36
+ 3. Update registry if template was created
37
+
38
+ ### Step 4.5: Register in Registry (MANDATORY)
39
+ Append the new skill entry to `.ai-agents/registry.yaml` > `skills` section:
40
+ ```yaml
41
+ {name}:
42
+ agent: {agent}
43
+ path: .claude/skills/{name}/SKILL.md
44
+ template: {template_path_or_null}
45
+ category: {category}
46
+ mode: independent
47
+ custom: true
48
+ ```
49
+ The `custom: true` field is **required** for all user-created skills. It protects the skill from being overwritten during framework updates.
50
+
51
+ ### Step 5: Validation
52
+ - Verify SKILL.md format compliance (frontmatter has `name` + `description`)
53
+ - Confirm no naming conflicts with existing skills
54
+ - Verify `registry.yaml` entry includes `custom: true`
55
+ - Show the user how to invoke: `/{name}`
56
+
57
+ ## Generated Skill Structure
58
+
59
+ ```markdown
60
+ ---
61
+ name: mvt-{name}
62
+ description: '{trigger keyword description}'
63
+ ---
64
+
65
+ # MVT {Name}
66
+
67
+ ## Purpose
68
+ {user-defined purpose}
69
+
70
+ ## Role
71
+ You are the **Conductor** -- a Workflow Coordinator.
72
+
73
+ ### Decision Rules
74
+ {generated based on skill purpose}
75
+
76
+ ### Boundaries
77
+ {standard boundaries}
78
+
79
+ ## Activation Protocol
80
+
81
+ ### Step 1: Load Context (Context Foundation)
82
+ Load the following files as foundational context:
83
+ - `.ai-agents/workspace/session.yaml` -- Current workflow state
84
+ - `.ai-agents/workspace/project-context.yaml` -- Project domain data
85
+
86
+ ### Step 2: Load Config & Apply Preferences (Config Foundation)
87
+ Read `.ai-agents/config.yaml` and enforce the following throughout this entire session:
88
+ - `preferences.language` → Use this language for ALL output
89
+ - `preferences.output.no_emojis` → If true, never use emojis
90
+ - `preferences.output.data_format` → Use this format for data sections
91
+
92
+ ### Step 3: Pre-flight Checks
93
+ {skill-specific checks}
94
+
95
+ ### Step 4: Execute
96
+ Proceed to Execution Flow below.
97
+
98
+ ## Execution Flow
99
+ {generated based on user requirements}
100
+
101
+ ## State Update (Required)
102
+ After execution, update `.ai-agents/workspace/session.yaml`:
103
+ - Set `session.last_command: "/{name}"`
104
+ - Append one-line summary to `recent_actions` (keep max 3)
105
+
106
+ ## Output Format
107
+ {template reference or inline format}
108
+
109
+ ## Suggested Next Steps
110
+ {contextual suggestions}
111
+ ```
@@ -0,0 +1,79 @@
1
+ name: mvt-create-skill
2
+ output: .claude/skills/mvt-create-skill/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-create-skill
6
+ description: "Create custom MVTT skills through interactive guided workflow. Use when user wants to create a new skill, extend the framework with custom functionality, or build project-specific automation."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Custom Skill
12
+
13
+ ## Purpose
14
+
15
+ Guide users through designing and creating custom MVTT-compliant skills. Generates properly structured SKILL.md files with optional output templates, ensuring compatibility with the framework.
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: "User provides skill name -> Validate and proceed with design"
24
+ - rule: "Name conflicts with existing skill -> Warn and ask for alternative"
25
+ - rule: "Skill needs output template -> Create template in `_templates/` and update manifest"
26
+ - rule: "Skill needs state updates -> Include session.yaml update rules"
27
+ boundaries:
28
+ - scope: "Generated skills must follow MVTT SKILL.md standard structure"
29
+ skill: "(constraint)"
30
+ - scope: "Skill names may use `mvt-` prefix or a project-specific prefix (e.g., `app-`, `proj-`)"
31
+ skill: "(constraint)"
32
+ - scope: "All custom skills MUST be registered in `registry.yaml` with `custom: true`"
33
+ skill: "(to prevent overwrite during framework updates)"
34
+ - scope: "Description field must contain effective trigger keywords"
35
+ skill: "(constraint)"
36
+
37
+ - type: shared
38
+ source: sections/activation-load-context.md
39
+ params:
40
+ extended_context:
41
+ - "Load one existing SKILL.md as structural reference (e.g., `.claude/skills/mvt-status/SKILL.md`)"
42
+ - ".ai-agents/registry.yaml -- Registered skills list"
43
+
44
+ - type: shared
45
+ source: sections/activation-load-config.md
46
+
47
+ - type: inline
48
+ content: |
49
+ ### Step 3: Pre-flight Checks
50
+ - No blocking checks required.
51
+
52
+ ### Step 4: Execute
53
+ Proceed to Execution Flow below.
54
+
55
+ - type: file
56
+ source: ./business.md
57
+
58
+ - type: inline
59
+ content: |
60
+ ## Output Format
61
+
62
+ No external template -- output is the generated skill file itself plus a creation summary:
63
+
64
+ ```markdown
65
+ ## Custom Skill Created
66
+
67
+ - **Skill**: `/{name}`
68
+ - **Location**: `.claude/skills/{name}/SKILL.md`
69
+ - **Registry**: `registry.yaml` (custom: true)
70
+ - **Template**: {created/none}
71
+ - **Category**: {category}
72
+
73
+ You can now use `/{name}` to invoke your new skill.
74
+
75
+ ---
76
+ **Suggested Next Steps**:
77
+ - Test your new skill by running `/{name}`
78
+ - `/mvt-help` -- View updated skills list
79
+ ```
@@ -0,0 +1,34 @@
1
+ ## Execution Flow
2
+
3
+ ### Step 1: Review Requirements
4
+ - Load requirements from `project-context.yaml`
5
+ - Load analysis artifact if exists
6
+ - Identify key architectural concerns (scalability, security, performance, etc.)
7
+
8
+ ### Step 2: Select Architecture Approach
9
+ - Check active pattern in config
10
+ - Load pattern-specific knowledge
11
+ - If `--plan` flag -> Skip to high-level plan, omit detailed interfaces
12
+
13
+ ### Step 3: Design Module Structure
14
+ - Define modules with responsibilities and layers
15
+ - Define interfaces between modules
16
+ - Establish dependency direction rules
17
+
18
+ ### Step 4: Create Data Flow Design
19
+ - Design request/response flows
20
+ - Define service interactions
21
+ - Create sequence diagrams (Mermaid)
22
+
23
+ ### Step 5: Document Decisions
24
+ - Record Architecture Decision Records (ADRs)
25
+ - Include rationale, alternatives considered, and trade-offs
26
+
27
+ ### Step 6: Update Workspace
28
+ 1. Update `.ai-agents/workspace/session.yaml`:
29
+ - Set `progress.design: done`
30
+ - Set `session.last_command: "/mvt-design"`
31
+ - Append one-line summary to `recent_actions` (keep max 3)
32
+ 2. Update `.ai-agents/workspace/project-context.yaml`:
33
+ - Write to `architecture` section (modules, decisions, interfaces)
34
+ 3. Write artifact: `.ai-agents/workspace/artifacts/{change-id}/design.md`
@@ -0,0 +1,105 @@
1
+ name: mvt-design
2
+ output: .claude/skills/mvt-design/SKILL.md
3
+
4
+ frontmatter:
5
+ name: mvt-design
6
+ description: "Create architecture design based on analyzed requirements. Applies architectural patterns, defines module structure, and creates technical blueprints. Use when user wants to design system architecture."
7
+
8
+ sections:
9
+ - type: inline
10
+ content: |
11
+ # MVT Design
12
+
13
+ ## Purpose
14
+
15
+ Design system architecture based on analyzed requirements. Apply architectural patterns and create technical blueprints that guide implementation. This is the second phase in the full workflow: analyze -> design -> implement -> review -> test.
16
+
17
+ - type: shared
18
+ source: sections/role-header.md
19
+ params:
20
+ role: Architect
21
+ role_desc: "a System Architecture Expert"
22
+ decision_rules:
23
+ - rule: "Multiple valid patterns exist -> Present top 2-3 options with pros/cons table, recommend one"
24
+ - rule: "Trade-off affects performance vs maintainability -> Document as ADR, state the trade-off"
25
+ - rule: "User asks for technology choice -> Evaluate against: requirements fit, team familiarity, maintenance cost"
26
+ - rule: "Design needs breaking change -> Highlight impact scope, list affected files, propose migration"
27
+ - rule: "Requirements are ambiguous -> Stop and ask clarification before designing"
28
+ - rule: "Pattern conflicts with project structure -> Report conflict, suggest pattern change via `/mvt-config`"
29
+ boundaries:
30
+ - scope: "write implementation code"
31
+ skill: "/mvt-implement"
32
+ - scope: "re-analyze requirements"
33
+ skill: "/mvt-analyze"
34
+ - scope: "review code"
35
+ skill: "/mvt-review"
36
+
37
+ - type: inline
38
+ content: |
39
+ ## Variants
40
+
41
+ | Variant | Description |
42
+ |---------|-------------|
43
+ | `/mvt-design` | Full architecture design |
44
+ | `/mvt-design --plan` | High-level implementation plan only |
45
+
46
+ - type: shared
47
+ source: sections/activation-load-context.md
48
+ params:
49
+ extended_context:
50
+ - ".ai-agents/knowledge/patterns/{pattern.active}/ -- Active architecture pattern knowledge"
51
+ - ".ai-agents/knowledge/core/ -- Core knowledge files"
52
+ - ".ai-agents/workspace/artifacts/{active_change.id}/analysis.md -- Analysis from previous phase"
53
+
54
+ - type: shared
55
+ source: sections/activation-load-config.md
56
+
57
+ - type: shared
58
+ source: sections/activation-preflight.md
59
+ params:
60
+ checks:
61
+ - order: "1"
62
+ field: "session.initialized_at"
63
+ level: "BLOCK"
64
+ message: 'Session not initialized. Run `/mvt-init` first.'
65
+ - order: "2"
66
+ field: "project.name"
67
+ level: "BLOCK"
68
+ message: 'Project not initialized. Run `/mvt-init` first.'
69
+ - order: "3"
70
+ field: "pattern.active"
71
+ level: "BLOCK"
72
+ message: 'Architecture pattern required. Run `/mvt-init` to detect and set the pattern.'
73
+ - order: "4"
74
+ field: "requirements in project-context"
75
+ level: "WARN"
76
+ message: 'No requirements found. Run `/mvt-analyze` first." (allow user to proceed)'
77
+
78
+ - type: inline
79
+ content: |
80
+ ### Step 4: Execute
81
+ Proceed to Execution Flow below.
82
+
83
+ - type: file
84
+ source: ./business.md
85
+
86
+ - type: inline
87
+ content: |
88
+ ## Output Format
89
+
90
+ Read and use the output template from: `.ai-agents/skills/_templates/design-output.md`
91
+
92
+ If a custom version exists at `.ai-agents/skills/_templates/custom/design-output.md`, use the custom version instead.
93
+
94
+ Fill the template placeholders with the design results.
95
+
96
+ Every response MUST end with a Suggested Next Steps section.
97
+
98
+ - type: shared
99
+ source: sections/footer-next-steps.md
100
+ params:
101
+ next_primary: mvt-implement
102
+ next_primary_desc: "Start implementing this design"
103
+ always_show:
104
+ - skill: mvt-status
105
+ desc: "Check current workflow progress"