@uoyo/mvtt 2.0.0-beta.1 → 2.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +194 -193
- package/dist/commands/migrate.d.ts +0 -2
- package/dist/commands/migrate.d.ts.map +1 -1
- package/dist/commands/migrate.js +0 -45
- package/dist/commands/migrate.js.map +1 -1
- package/package.json +1 -1
- package/registry.yaml +6 -0
- package/sources/sections/output-language-constraint.md +11 -11
- package/sources/sections/session-update.md +47 -47
- package/sources/skills/mvt-analyze/business.md +7 -7
- package/sources/skills/mvt-analyze-code/manifest.yaml +96 -96
- package/sources/skills/mvt-bug-detect/business.md +101 -0
- package/sources/skills/mvt-bug-detect/manifest.yaml +84 -0
- package/sources/skills/mvt-check-context/manifest.yaml +63 -63
- package/sources/skills/mvt-config/manifest.yaml +96 -96
- package/sources/skills/mvt-create-skill/business.md +81 -74
- package/sources/skills/mvt-create-skill/manifest.yaml +91 -95
- package/sources/skills/mvt-design/manifest.yaml +96 -96
- package/sources/skills/mvt-fix/business.md +37 -8
- package/sources/skills/mvt-fix/manifest.yaml +85 -72
- package/sources/skills/mvt-help/manifest.yaml +67 -67
- package/sources/skills/mvt-implement/manifest.yaml +80 -80
- package/sources/skills/mvt-init/manifest.yaml +101 -101
- package/sources/skills/mvt-manage-context/business.md +175 -175
- package/sources/skills/mvt-manage-context/manifest.yaml +123 -123
- package/sources/skills/mvt-plan-dev/manifest.yaml +91 -91
- package/sources/skills/mvt-quick-dev/manifest.yaml +69 -69
- package/sources/skills/mvt-refactor/manifest.yaml +86 -86
- package/sources/skills/mvt-resume/manifest.yaml +71 -71
- package/sources/skills/mvt-review/manifest.yaml +87 -87
- package/sources/skills/mvt-status/manifest.yaml +66 -66
- package/sources/skills/mvt-sync-context/business.md +150 -150
- package/sources/skills/mvt-sync-context/manifest.yaml +96 -96
- package/sources/skills/mvt-template/manifest.yaml +63 -63
- package/sources/skills/mvt-test/manifest.yaml +102 -102
- package/sources/skills/mvt-update-plan/business.md +72 -72
- package/sources/skills/mvt-update-plan/manifest.yaml +132 -132
- package/sources/templates/analyze-output/body.md +15 -15
- package/sources/templates/design-output/body.md +17 -17
- package/sources/templates/implement-output/body.md +11 -11
- package/sources/templates/review-output/body.md +11 -11
- package/sources/templates/test-output/body.md +7 -7
- package/dist/fs/protection.d.ts +0 -15
- package/dist/fs/protection.d.ts.map +0 -1
- package/dist/fs/protection.js +0 -16
- package/dist/fs/protection.js.map +0 -1
|
@@ -1,91 +1,91 @@
|
|
|
1
|
-
name: mvt-plan-dev
|
|
2
|
-
output: .claude/skills/mvt-plan-dev/SKILL.md
|
|
3
|
-
|
|
4
|
-
frontmatter:
|
|
5
|
-
name: mvt-plan-dev
|
|
6
|
-
description: "Generate a structured development plan (plan.yaml) for a large change. This skill should be used when a change is too big for a single implement pass and needs to be tracked across multiple sessions with task-level granularity."
|
|
7
|
-
|
|
8
|
-
sections:
|
|
9
|
-
- type: inline
|
|
10
|
-
content: |
|
|
11
|
-
# MVT Plan Dev
|
|
12
|
-
|
|
13
|
-
## Purpose
|
|
14
|
-
|
|
15
|
-
Decompose a large change into a structured `plan.yaml` so progress can survive across conversations. Each task carries status, dependencies, acceptance criteria, and a recommended skill, enabling `/mvt-resume` to land precisely on the next executable task in a future session.
|
|
16
|
-
|
|
17
|
-
- type: shared
|
|
18
|
-
source: sections/role-header.md
|
|
19
|
-
params:
|
|
20
|
-
role: Architect
|
|
21
|
-
role_desc: "a Development Planner"
|
|
22
|
-
decision_rules:
|
|
23
|
-
- rule: "active_change is set AND has_plan is false -> Generate a fresh plan.yaml"
|
|
24
|
-
- rule: "active_change is set AND has_plan is true -> Confirm before regenerating; default to /mvt-update-plan"
|
|
25
|
-
- rule: "Tasks would exceed 10 -> Stop, propose phasing the change into multiple plans"
|
|
26
|
-
- rule: "Dependencies form a cycle -> Reject and ask the user to resolve"
|
|
27
|
-
- rule: "active_change is empty -> Stop and request /mvt-analyze first"
|
|
28
|
-
boundaries:
|
|
29
|
-
- scope: "create or modify the active change itself"
|
|
30
|
-
skill: "/mvt-analyze"
|
|
31
|
-
- scope: "design architecture"
|
|
32
|
-
skill: "/mvt-design"
|
|
33
|
-
- scope: "advance task status after completion"
|
|
34
|
-
skill: "/mvt-update-plan"
|
|
35
|
-
- scope: "implement code"
|
|
36
|
-
skill: "/mvt-implement"
|
|
37
|
-
|
|
38
|
-
- type: shared
|
|
39
|
-
source: sections/activation-load-context.md
|
|
40
|
-
params:
|
|
41
|
-
extended_context:
|
|
42
|
-
- ".ai-agents/workspace/artifacts/{active_change.id}/ -- Existing analysis/design artifacts for this change"
|
|
43
|
-
- ".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml -- Existing plan, if any (regeneration mode)"
|
|
44
|
-
|
|
45
|
-
- type: shared
|
|
46
|
-
source: sections/activation-load-config.md
|
|
47
|
-
|
|
48
|
-
- type: shared
|
|
49
|
-
source: sections/output-language-constraint.md
|
|
50
|
-
|
|
51
|
-
- type: shared
|
|
52
|
-
source: sections/activation-preflight.md
|
|
53
|
-
params:
|
|
54
|
-
checks:
|
|
55
|
-
- order: "1"
|
|
56
|
-
field: "session.initialized_at"
|
|
57
|
-
level: "WARN"
|
|
58
|
-
message: 'Session not initialized. Run `/mvt-init` first.'
|
|
59
|
-
- order: "2"
|
|
60
|
-
field: "active_change.id"
|
|
61
|
-
level: "BLOCK"
|
|
62
|
-
message: 'No active change. Run `/mvt-analyze` to create one before planning.'
|
|
63
|
-
|
|
64
|
-
- type: file
|
|
65
|
-
source: ./business.md
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
- type: shared
|
|
69
|
-
source: sections/session-update.md
|
|
70
|
-
|
|
71
|
-
- type: inline
|
|
72
|
-
content: |
|
|
73
|
-
### Plan-Dev Specific State Updates
|
|
74
|
-
|
|
75
|
-
In addition to the mandatory updates above, this skill MUST update:
|
|
76
|
-
|
|
77
|
-
- `active_change.plan_path`: Set to `".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml"`
|
|
78
|
-
- `active_change.has_plan`: Set to `true`
|
|
79
|
-
- `recent_changes`: Append (or update if entry with same `id` exists) an entry:
|
|
80
|
-
```yaml
|
|
81
|
-
- id: "{active_change.id}"
|
|
82
|
-
title: "{active_change.title}"
|
|
83
|
-
plan_path: ".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml"
|
|
84
|
-
last_updated: "{current timestamp ISO 8601}"
|
|
85
|
-
```
|
|
86
|
-
Keep max 5 entries (drop the oldest by `last_updated` ascending).
|
|
87
|
-
|
|
88
|
-
- type: shared
|
|
89
|
-
source: sections/footer-next-steps.md
|
|
90
|
-
params:
|
|
91
|
-
current_skill: mvt-plan-dev
|
|
1
|
+
name: mvt-plan-dev
|
|
2
|
+
output: .claude/skills/mvt-plan-dev/SKILL.md
|
|
3
|
+
|
|
4
|
+
frontmatter:
|
|
5
|
+
name: mvt-plan-dev
|
|
6
|
+
description: "Generate a structured development plan (plan.yaml) for a large change. This skill should be used when a change is too big for a single implement pass and needs to be tracked across multiple sessions with task-level granularity."
|
|
7
|
+
|
|
8
|
+
sections:
|
|
9
|
+
- type: inline
|
|
10
|
+
content: |
|
|
11
|
+
# MVT Plan Dev
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
|
|
15
|
+
Decompose a large change into a structured `plan.yaml` so progress can survive across conversations. Each task carries status, dependencies, acceptance criteria, and a recommended skill, enabling `/mvt-resume` to land precisely on the next executable task in a future session.
|
|
16
|
+
|
|
17
|
+
- type: shared
|
|
18
|
+
source: sections/role-header.md
|
|
19
|
+
params:
|
|
20
|
+
role: Architect
|
|
21
|
+
role_desc: "a Development Planner"
|
|
22
|
+
decision_rules:
|
|
23
|
+
- rule: "active_change is set AND has_plan is false -> Generate a fresh plan.yaml"
|
|
24
|
+
- rule: "active_change is set AND has_plan is true -> Confirm before regenerating; default to /mvt-update-plan"
|
|
25
|
+
- rule: "Tasks would exceed 10 -> Stop, propose phasing the change into multiple plans"
|
|
26
|
+
- rule: "Dependencies form a cycle -> Reject and ask the user to resolve"
|
|
27
|
+
- rule: "active_change is empty -> Stop and request /mvt-analyze first"
|
|
28
|
+
boundaries:
|
|
29
|
+
- scope: "create or modify the active change itself"
|
|
30
|
+
skill: "/mvt-analyze"
|
|
31
|
+
- scope: "design architecture"
|
|
32
|
+
skill: "/mvt-design"
|
|
33
|
+
- scope: "advance task status after completion"
|
|
34
|
+
skill: "/mvt-update-plan"
|
|
35
|
+
- scope: "implement code"
|
|
36
|
+
skill: "/mvt-implement"
|
|
37
|
+
|
|
38
|
+
- type: shared
|
|
39
|
+
source: sections/activation-load-context.md
|
|
40
|
+
params:
|
|
41
|
+
extended_context:
|
|
42
|
+
- ".ai-agents/workspace/artifacts/{active_change.id}/ -- Existing analysis/design artifacts for this change"
|
|
43
|
+
- ".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml -- Existing plan, if any (regeneration mode)"
|
|
44
|
+
|
|
45
|
+
- type: shared
|
|
46
|
+
source: sections/activation-load-config.md
|
|
47
|
+
|
|
48
|
+
- type: shared
|
|
49
|
+
source: sections/output-language-constraint.md
|
|
50
|
+
|
|
51
|
+
- type: shared
|
|
52
|
+
source: sections/activation-preflight.md
|
|
53
|
+
params:
|
|
54
|
+
checks:
|
|
55
|
+
- order: "1"
|
|
56
|
+
field: "session.initialized_at"
|
|
57
|
+
level: "WARN"
|
|
58
|
+
message: 'Session not initialized. Run `/mvt-init` first.'
|
|
59
|
+
- order: "2"
|
|
60
|
+
field: "active_change.id"
|
|
61
|
+
level: "BLOCK"
|
|
62
|
+
message: 'No active change. Run `/mvt-analyze` to create one before planning.'
|
|
63
|
+
|
|
64
|
+
- type: file
|
|
65
|
+
source: ./business.md
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
- type: shared
|
|
69
|
+
source: sections/session-update.md
|
|
70
|
+
|
|
71
|
+
- type: inline
|
|
72
|
+
content: |
|
|
73
|
+
### Plan-Dev Specific State Updates
|
|
74
|
+
|
|
75
|
+
In addition to the mandatory updates above, this skill MUST update:
|
|
76
|
+
|
|
77
|
+
- `active_change.plan_path`: Set to `".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml"`
|
|
78
|
+
- `active_change.has_plan`: Set to `true`
|
|
79
|
+
- `recent_changes`: Append (or update if entry with same `id` exists) an entry:
|
|
80
|
+
```yaml
|
|
81
|
+
- id: "{active_change.id}"
|
|
82
|
+
title: "{active_change.title}"
|
|
83
|
+
plan_path: ".ai-agents/workspace/artifacts/{active_change.id}/plan.yaml"
|
|
84
|
+
last_updated: "{current timestamp ISO 8601}"
|
|
85
|
+
```
|
|
86
|
+
Keep max 5 entries (drop the oldest by `last_updated` ascending).
|
|
87
|
+
|
|
88
|
+
- type: shared
|
|
89
|
+
source: sections/footer-next-steps.md
|
|
90
|
+
params:
|
|
91
|
+
current_skill: mvt-plan-dev
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
name: mvt-quick-dev
|
|
2
|
-
output: .claude/skills/mvt-quick-dev/SKILL.md
|
|
3
|
-
|
|
4
|
-
frontmatter:
|
|
5
|
-
name: mvt-quick-dev
|
|
6
|
-
description: "Quickly implement simple, well-scoped changes without the full analyze-design-implement workflow. This skill should be used when the change is small (1-3 files), architecturally neutral, and clearly specified — such as adding a field, fixing a label, adjusting config, or making a targeted enhancement."
|
|
7
|
-
|
|
8
|
-
sections:
|
|
9
|
-
- type: inline
|
|
10
|
-
content: |
|
|
11
|
-
# MVT Quick Dev
|
|
12
|
-
|
|
13
|
-
## Purpose
|
|
14
|
-
|
|
15
|
-
Implement simple, well-scoped changes quickly, bypassing the full workflow. For changes that are small (1-3 files), architecturally neutral, and clearly specified. Produces no artifacts — results are conversation-only.
|
|
16
|
-
|
|
17
|
-
- type: shared
|
|
18
|
-
source: sections/role-header.md
|
|
19
|
-
params:
|
|
20
|
-
role: Developer
|
|
21
|
-
role_desc: "an Implementation Specialist"
|
|
22
|
-
decision_rules:
|
|
23
|
-
- rule: "Change is Trivial (1 file, ≤10 lines) -> Implement directly, conversation-only"
|
|
24
|
-
- rule: "Change is Simple (1-3 files, no module break) -> Implement, show plan first, conversation-only"
|
|
25
|
-
- rule: "Change is Complex -> STOP, recommend /mvt-analyze or /mvt-design"
|
|
26
|
-
- rule: "Ambiguous scope -> Ask user to confirm before proceeding"
|
|
27
|
-
- rule: "Implementation reveals unexpected complexity -> Revert and escalate"
|
|
28
|
-
- rule: "Existing tests cover changed code -> Suggest running them"
|
|
29
|
-
boundaries:
|
|
30
|
-
- scope: "analyze complex requirements"
|
|
31
|
-
skill: "/mvt-analyze"
|
|
32
|
-
- scope: "design architecture"
|
|
33
|
-
skill: "/mvt-design"
|
|
34
|
-
- scope: "review code"
|
|
35
|
-
skill: "/mvt-review"
|
|
36
|
-
|
|
37
|
-
- type: shared
|
|
38
|
-
source: sections/activation-load-context.md
|
|
39
|
-
params:
|
|
40
|
-
extended_context:
|
|
41
|
-
- ".ai-agents/knowledge/project/_generated/project-context.md -- Module/layer map (optional)"
|
|
42
|
-
- ".ai-agents/knowledge/principle/coding-standards.md -- Coding standards (optional)"
|
|
43
|
-
- "Target source files (load based on change description)"
|
|
44
|
-
|
|
45
|
-
- type: shared
|
|
46
|
-
source: sections/activation-load-config.md
|
|
47
|
-
|
|
48
|
-
- type: shared
|
|
49
|
-
source: sections/output-language-constraint.md
|
|
50
|
-
|
|
51
|
-
- type: inline
|
|
52
|
-
content: |
|
|
53
|
-
### Shortcut Operation Rules
|
|
54
|
-
- Can execute at any time without checking workflow prerequisites
|
|
55
|
-
- Do NOT update `progress` (this is a shortcut operation, not a workflow phase)
|
|
56
|
-
- Do NOT create an `active_change` if one doesn't already exist
|
|
57
|
-
- Do NOT write any artifact or document — results are conversation-only
|
|
58
|
-
- Do NOT interact with plan.yaml in any way — this skill is plan-independent
|
|
59
|
-
|
|
60
|
-
- type: file
|
|
61
|
-
source: ./business.md
|
|
62
|
-
|
|
63
|
-
- type: shared
|
|
64
|
-
source: sections/session-update.md
|
|
65
|
-
|
|
66
|
-
- type: shared
|
|
67
|
-
source: sections/footer-next-steps.md
|
|
68
|
-
params:
|
|
69
|
-
current_skill: mvt-quick-dev
|
|
1
|
+
name: mvt-quick-dev
|
|
2
|
+
output: .claude/skills/mvt-quick-dev/SKILL.md
|
|
3
|
+
|
|
4
|
+
frontmatter:
|
|
5
|
+
name: mvt-quick-dev
|
|
6
|
+
description: "Quickly implement simple, well-scoped changes without the full analyze-design-implement workflow. This skill should be used when the change is small (1-3 files), architecturally neutral, and clearly specified — such as adding a field, fixing a label, adjusting config, or making a targeted enhancement."
|
|
7
|
+
|
|
8
|
+
sections:
|
|
9
|
+
- type: inline
|
|
10
|
+
content: |
|
|
11
|
+
# MVT Quick Dev
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
|
|
15
|
+
Implement simple, well-scoped changes quickly, bypassing the full workflow. For changes that are small (1-3 files), architecturally neutral, and clearly specified. Produces no artifacts — results are conversation-only.
|
|
16
|
+
|
|
17
|
+
- type: shared
|
|
18
|
+
source: sections/role-header.md
|
|
19
|
+
params:
|
|
20
|
+
role: Developer
|
|
21
|
+
role_desc: "an Implementation Specialist"
|
|
22
|
+
decision_rules:
|
|
23
|
+
- rule: "Change is Trivial (1 file, ≤10 lines) -> Implement directly, conversation-only"
|
|
24
|
+
- rule: "Change is Simple (1-3 files, no module break) -> Implement, show plan first, conversation-only"
|
|
25
|
+
- rule: "Change is Complex -> STOP, recommend /mvt-analyze or /mvt-design"
|
|
26
|
+
- rule: "Ambiguous scope -> Ask user to confirm before proceeding"
|
|
27
|
+
- rule: "Implementation reveals unexpected complexity -> Revert and escalate"
|
|
28
|
+
- rule: "Existing tests cover changed code -> Suggest running them"
|
|
29
|
+
boundaries:
|
|
30
|
+
- scope: "analyze complex requirements"
|
|
31
|
+
skill: "/mvt-analyze"
|
|
32
|
+
- scope: "design architecture"
|
|
33
|
+
skill: "/mvt-design"
|
|
34
|
+
- scope: "review code"
|
|
35
|
+
skill: "/mvt-review"
|
|
36
|
+
|
|
37
|
+
- type: shared
|
|
38
|
+
source: sections/activation-load-context.md
|
|
39
|
+
params:
|
|
40
|
+
extended_context:
|
|
41
|
+
- ".ai-agents/knowledge/project/_generated/project-context.md -- Module/layer map (optional)"
|
|
42
|
+
- ".ai-agents/knowledge/principle/coding-standards.md -- Coding standards (optional)"
|
|
43
|
+
- "Target source files (load based on change description)"
|
|
44
|
+
|
|
45
|
+
- type: shared
|
|
46
|
+
source: sections/activation-load-config.md
|
|
47
|
+
|
|
48
|
+
- type: shared
|
|
49
|
+
source: sections/output-language-constraint.md
|
|
50
|
+
|
|
51
|
+
- type: inline
|
|
52
|
+
content: |
|
|
53
|
+
### Shortcut Operation Rules
|
|
54
|
+
- Can execute at any time without checking workflow prerequisites
|
|
55
|
+
- Do NOT update `progress` (this is a shortcut operation, not a workflow phase)
|
|
56
|
+
- Do NOT create an `active_change` if one doesn't already exist
|
|
57
|
+
- Do NOT write any artifact or document — results are conversation-only
|
|
58
|
+
- Do NOT interact with plan.yaml in any way — this skill is plan-independent
|
|
59
|
+
|
|
60
|
+
- type: file
|
|
61
|
+
source: ./business.md
|
|
62
|
+
|
|
63
|
+
- type: shared
|
|
64
|
+
source: sections/session-update.md
|
|
65
|
+
|
|
66
|
+
- type: shared
|
|
67
|
+
source: sections/footer-next-steps.md
|
|
68
|
+
params:
|
|
69
|
+
current_skill: mvt-quick-dev
|
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
name: mvt-refactor
|
|
2
|
-
output: .claude/skills/mvt-refactor/SKILL.md
|
|
3
|
-
|
|
4
|
-
frontmatter:
|
|
5
|
-
name: mvt-refactor
|
|
6
|
-
description: "Refactor existing code while preserving behavior. This skill should be used when user wants to improve code structure, rename symbols, extract methods or classes, or reorganize code without changing functionality."
|
|
7
|
-
|
|
8
|
-
sections:
|
|
9
|
-
- type: inline
|
|
10
|
-
content: |
|
|
11
|
-
# MVT Refactor
|
|
12
|
-
|
|
13
|
-
## Purpose
|
|
14
|
-
|
|
15
|
-
Refactor existing code while preserving observable behavior. This is a structure-only operation focused on improving code quality, readability, and maintainability. This is a shortcut operation that can run at any time.
|
|
16
|
-
|
|
17
|
-
- type: shared
|
|
18
|
-
source: sections/role-header.md
|
|
19
|
-
params:
|
|
20
|
-
role: Developer
|
|
21
|
-
role_desc: "an Implementation Specialist"
|
|
22
|
-
decision_rules:
|
|
23
|
-
- rule: "Refactoring target specified -> Analyze and plan the refactoring"
|
|
24
|
-
- rule: "No target specified -> Prompt user for refactoring target"
|
|
25
|
-
- rule: "Risk level is High -> Warn user and require explicit confirmation"
|
|
26
|
-
- rule: "Tests exist for target code -> Recommend running them after refactoring"
|
|
27
|
-
- rule: "No tests exist -> Describe how to verify behavior is unchanged"
|
|
28
|
-
- rule: "Change requires new module not in design -> Flag for Architect"
|
|
29
|
-
boundaries:
|
|
30
|
-
- scope: "re-analyze requirements"
|
|
31
|
-
skill: "/mvt-analyze"
|
|
32
|
-
- scope: "evaluate architecture"
|
|
33
|
-
skill: "/mvt-design"
|
|
34
|
-
- scope: "review own code"
|
|
35
|
-
skill: "/mvt-review"
|
|
36
|
-
|
|
37
|
-
- type: inline
|
|
38
|
-
content: |
|
|
39
|
-
### Constraints
|
|
40
|
-
- Do NOT change observable behavior -- refactoring is structure-only
|
|
41
|
-
- Do NOT introduce new features during refactoring
|
|
42
|
-
- Do NOT modify unrelated code outside the refactoring scope
|
|
43
|
-
|
|
44
|
-
## Refactoring Types
|
|
45
|
-
|
|
46
|
-
| Type | Risk Level | Examples |
|
|
47
|
-
|------|------------|----------|
|
|
48
|
-
| Rename | Low | Variable, function, file rename |
|
|
49
|
-
| Extract Method/Class | Low | Pull repeated logic into a helper |
|
|
50
|
-
| Inline | Low | Eliminate a thin wrapper |
|
|
51
|
-
| Move | Medium | Relocate code to appropriate module/layer |
|
|
52
|
-
| Decompose Conditional | Medium | Simplify complex if/switch logic |
|
|
53
|
-
| Replace Inheritance with Composition | High | Class-hierarchy redesign |
|
|
54
|
-
| Change Interface/API | High | Modify public contracts |
|
|
55
|
-
|
|
56
|
-
- type: shared
|
|
57
|
-
source: sections/activation-load-context.md
|
|
58
|
-
params:
|
|
59
|
-
extended_context:
|
|
60
|
-
- "Related source files to be refactored"
|
|
61
|
-
|
|
62
|
-
- type: shared
|
|
63
|
-
source: sections/activation-load-config.md
|
|
64
|
-
|
|
65
|
-
- type: shared
|
|
66
|
-
source: sections/output-language-constraint.md
|
|
67
|
-
|
|
68
|
-
- type: inline
|
|
69
|
-
content: |
|
|
70
|
-
### Step 3: Pre-flight Checks
|
|
71
|
-
- No blocking checks required (shortcut operation).
|
|
72
|
-
|
|
73
|
-
### Shortcut Operation Rules
|
|
74
|
-
- Can execute at any time without checking workflow prerequisites
|
|
75
|
-
|
|
76
|
-
- type: file
|
|
77
|
-
source: ./business.md
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- type: shared
|
|
81
|
-
source: sections/session-update.md
|
|
82
|
-
|
|
83
|
-
- type: shared
|
|
84
|
-
source: sections/footer-next-steps.md
|
|
85
|
-
params:
|
|
86
|
-
current_skill: mvt-refactor
|
|
1
|
+
name: mvt-refactor
|
|
2
|
+
output: .claude/skills/mvt-refactor/SKILL.md
|
|
3
|
+
|
|
4
|
+
frontmatter:
|
|
5
|
+
name: mvt-refactor
|
|
6
|
+
description: "Refactor existing code while preserving behavior. This skill should be used when user wants to improve code structure, rename symbols, extract methods or classes, or reorganize code without changing functionality."
|
|
7
|
+
|
|
8
|
+
sections:
|
|
9
|
+
- type: inline
|
|
10
|
+
content: |
|
|
11
|
+
# MVT Refactor
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
|
|
15
|
+
Refactor existing code while preserving observable behavior. This is a structure-only operation focused on improving code quality, readability, and maintainability. This is a shortcut operation that can run at any time.
|
|
16
|
+
|
|
17
|
+
- type: shared
|
|
18
|
+
source: sections/role-header.md
|
|
19
|
+
params:
|
|
20
|
+
role: Developer
|
|
21
|
+
role_desc: "an Implementation Specialist"
|
|
22
|
+
decision_rules:
|
|
23
|
+
- rule: "Refactoring target specified -> Analyze and plan the refactoring"
|
|
24
|
+
- rule: "No target specified -> Prompt user for refactoring target"
|
|
25
|
+
- rule: "Risk level is High -> Warn user and require explicit confirmation"
|
|
26
|
+
- rule: "Tests exist for target code -> Recommend running them after refactoring"
|
|
27
|
+
- rule: "No tests exist -> Describe how to verify behavior is unchanged"
|
|
28
|
+
- rule: "Change requires new module not in design -> Flag for Architect"
|
|
29
|
+
boundaries:
|
|
30
|
+
- scope: "re-analyze requirements"
|
|
31
|
+
skill: "/mvt-analyze"
|
|
32
|
+
- scope: "evaluate architecture"
|
|
33
|
+
skill: "/mvt-design"
|
|
34
|
+
- scope: "review own code"
|
|
35
|
+
skill: "/mvt-review"
|
|
36
|
+
|
|
37
|
+
- type: inline
|
|
38
|
+
content: |
|
|
39
|
+
### Constraints
|
|
40
|
+
- Do NOT change observable behavior -- refactoring is structure-only
|
|
41
|
+
- Do NOT introduce new features during refactoring
|
|
42
|
+
- Do NOT modify unrelated code outside the refactoring scope
|
|
43
|
+
|
|
44
|
+
## Refactoring Types
|
|
45
|
+
|
|
46
|
+
| Type | Risk Level | Examples |
|
|
47
|
+
|------|------------|----------|
|
|
48
|
+
| Rename | Low | Variable, function, file rename |
|
|
49
|
+
| Extract Method/Class | Low | Pull repeated logic into a helper |
|
|
50
|
+
| Inline | Low | Eliminate a thin wrapper |
|
|
51
|
+
| Move | Medium | Relocate code to appropriate module/layer |
|
|
52
|
+
| Decompose Conditional | Medium | Simplify complex if/switch logic |
|
|
53
|
+
| Replace Inheritance with Composition | High | Class-hierarchy redesign |
|
|
54
|
+
| Change Interface/API | High | Modify public contracts |
|
|
55
|
+
|
|
56
|
+
- type: shared
|
|
57
|
+
source: sections/activation-load-context.md
|
|
58
|
+
params:
|
|
59
|
+
extended_context:
|
|
60
|
+
- "Related source files to be refactored"
|
|
61
|
+
|
|
62
|
+
- type: shared
|
|
63
|
+
source: sections/activation-load-config.md
|
|
64
|
+
|
|
65
|
+
- type: shared
|
|
66
|
+
source: sections/output-language-constraint.md
|
|
67
|
+
|
|
68
|
+
- type: inline
|
|
69
|
+
content: |
|
|
70
|
+
### Step 3: Pre-flight Checks
|
|
71
|
+
- No blocking checks required (shortcut operation).
|
|
72
|
+
|
|
73
|
+
### Shortcut Operation Rules
|
|
74
|
+
- Can execute at any time without checking workflow prerequisites
|
|
75
|
+
|
|
76
|
+
- type: file
|
|
77
|
+
source: ./business.md
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
- type: shared
|
|
81
|
+
source: sections/session-update.md
|
|
82
|
+
|
|
83
|
+
- type: shared
|
|
84
|
+
source: sections/footer-next-steps.md
|
|
85
|
+
params:
|
|
86
|
+
current_skill: mvt-refactor
|
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
name: mvt-resume
|
|
2
|
-
output: .claude/skills/mvt-resume/SKILL.md
|
|
3
|
-
|
|
4
|
-
frontmatter:
|
|
5
|
-
name: mvt-resume
|
|
6
|
-
description: "Resume an in-progress development task in a new conversation. Reads session.yaml (active_change, skill_history, recent_actions) and recent artifacts to reconstruct context. Does not read git state."
|
|
7
|
-
|
|
8
|
-
sections:
|
|
9
|
-
- type: inline
|
|
10
|
-
content: |
|
|
11
|
-
# MVT Resume
|
|
12
|
-
|
|
13
|
-
## Purpose
|
|
14
|
-
|
|
15
|
-
Reconstruct an in-progress development task in a fresh conversation by replaying state from `session.yaml`, recent artifacts, and plan.yaml (if one exists). When multiple plans are in-flight, prompt the user to select which change to resume. Use this skill at the start of a new conversation to pick up exactly where the last session left off.
|
|
16
|
-
|
|
17
|
-
## Arguments
|
|
18
|
-
|
|
19
|
-
| Argument | Required | Description |
|
|
20
|
-
|----------|----------|-------------|
|
|
21
|
-
| `{change-id}` | No | Directly resume a specific change (skips candidate selection). Error if not found or not in_progress. |
|
|
22
|
-
|
|
23
|
-
- type: shared
|
|
24
|
-
source: sections/role-header.md
|
|
25
|
-
params:
|
|
26
|
-
role: Conductor
|
|
27
|
-
role_desc: "a Workflow Coordinator"
|
|
28
|
-
decision_rules:
|
|
29
|
-
- rule: "Multiple in_progress plans found -> Pause and display candidate table, wait for user selection"
|
|
30
|
-
- rule: "Exactly one in_progress plan found -> Auto-select it and proceed"
|
|
31
|
-
- rule: "No plans found BUT active_change is set -> Fall back to legacy skill_history-based resume"
|
|
32
|
-
- rule: "active_change is empty AND skill_history is empty AND no plans -> Recommend `/mvt-init` or `/mvt-status`"
|
|
33
|
-
- rule: "Plan exists and has current_task -> Use current_task's skill_hint as next-step recommendation"
|
|
34
|
-
- rule: "Plan's current_task has been in_progress for >5 days -> Surface stale warning"
|
|
35
|
-
- rule: "Last skill failed or was interrupted -> Surface the failure context, suggest retry"
|
|
36
|
-
boundaries:
|
|
37
|
-
- scope: "read git state (branch, diff, commits)"
|
|
38
|
-
skill: "(Out of scope -- this skill is session-state only)"
|
|
39
|
-
- scope: "modify any files"
|
|
40
|
-
skill: "(Read-only)"
|
|
41
|
-
- scope: "run analyses or tests"
|
|
42
|
-
skill: "(Use the recommended next skill)"
|
|
43
|
-
|
|
44
|
-
- type: shared
|
|
45
|
-
source: sections/activation-load-context.md
|
|
46
|
-
|
|
47
|
-
- type: shared
|
|
48
|
-
source: sections/activation-load-config.md
|
|
49
|
-
|
|
50
|
-
- type: shared
|
|
51
|
-
source: sections/output-language-constraint.md
|
|
52
|
-
|
|
53
|
-
- type: shared
|
|
54
|
-
source: sections/activation-preflight.md
|
|
55
|
-
params:
|
|
56
|
-
checks:
|
|
57
|
-
- order: "1"
|
|
58
|
-
field: "session.initialized_at"
|
|
59
|
-
level: "WARN"
|
|
60
|
-
message: "Session not initialized. Run `/mvt-init` first."
|
|
61
|
-
|
|
62
|
-
- type: file
|
|
63
|
-
source: ./business.md
|
|
64
|
-
|
|
65
|
-
- type: shared
|
|
66
|
-
source: sections/session-update.md
|
|
67
|
-
|
|
68
|
-
- type: shared
|
|
69
|
-
source: sections/footer-next-steps.md
|
|
70
|
-
params:
|
|
71
|
-
current_skill: mvt-resume
|
|
1
|
+
name: mvt-resume
|
|
2
|
+
output: .claude/skills/mvt-resume/SKILL.md
|
|
3
|
+
|
|
4
|
+
frontmatter:
|
|
5
|
+
name: mvt-resume
|
|
6
|
+
description: "Resume an in-progress development task in a new conversation. Reads session.yaml (active_change, skill_history, recent_actions) and recent artifacts to reconstruct context. Does not read git state."
|
|
7
|
+
|
|
8
|
+
sections:
|
|
9
|
+
- type: inline
|
|
10
|
+
content: |
|
|
11
|
+
# MVT Resume
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
|
|
15
|
+
Reconstruct an in-progress development task in a fresh conversation by replaying state from `session.yaml`, recent artifacts, and plan.yaml (if one exists). When multiple plans are in-flight, prompt the user to select which change to resume. Use this skill at the start of a new conversation to pick up exactly where the last session left off.
|
|
16
|
+
|
|
17
|
+
## Arguments
|
|
18
|
+
|
|
19
|
+
| Argument | Required | Description |
|
|
20
|
+
|----------|----------|-------------|
|
|
21
|
+
| `{change-id}` | No | Directly resume a specific change (skips candidate selection). Error if not found or not in_progress. |
|
|
22
|
+
|
|
23
|
+
- type: shared
|
|
24
|
+
source: sections/role-header.md
|
|
25
|
+
params:
|
|
26
|
+
role: Conductor
|
|
27
|
+
role_desc: "a Workflow Coordinator"
|
|
28
|
+
decision_rules:
|
|
29
|
+
- rule: "Multiple in_progress plans found -> Pause and display candidate table, wait for user selection"
|
|
30
|
+
- rule: "Exactly one in_progress plan found -> Auto-select it and proceed"
|
|
31
|
+
- rule: "No plans found BUT active_change is set -> Fall back to legacy skill_history-based resume"
|
|
32
|
+
- rule: "active_change is empty AND skill_history is empty AND no plans -> Recommend `/mvt-init` or `/mvt-status`"
|
|
33
|
+
- rule: "Plan exists and has current_task -> Use current_task's skill_hint as next-step recommendation"
|
|
34
|
+
- rule: "Plan's current_task has been in_progress for >5 days -> Surface stale warning"
|
|
35
|
+
- rule: "Last skill failed or was interrupted -> Surface the failure context, suggest retry"
|
|
36
|
+
boundaries:
|
|
37
|
+
- scope: "read git state (branch, diff, commits)"
|
|
38
|
+
skill: "(Out of scope -- this skill is session-state only)"
|
|
39
|
+
- scope: "modify any files"
|
|
40
|
+
skill: "(Read-only)"
|
|
41
|
+
- scope: "run analyses or tests"
|
|
42
|
+
skill: "(Use the recommended next skill)"
|
|
43
|
+
|
|
44
|
+
- type: shared
|
|
45
|
+
source: sections/activation-load-context.md
|
|
46
|
+
|
|
47
|
+
- type: shared
|
|
48
|
+
source: sections/activation-load-config.md
|
|
49
|
+
|
|
50
|
+
- type: shared
|
|
51
|
+
source: sections/output-language-constraint.md
|
|
52
|
+
|
|
53
|
+
- type: shared
|
|
54
|
+
source: sections/activation-preflight.md
|
|
55
|
+
params:
|
|
56
|
+
checks:
|
|
57
|
+
- order: "1"
|
|
58
|
+
field: "session.initialized_at"
|
|
59
|
+
level: "WARN"
|
|
60
|
+
message: "Session not initialized. Run `/mvt-init` first."
|
|
61
|
+
|
|
62
|
+
- type: file
|
|
63
|
+
source: ./business.md
|
|
64
|
+
|
|
65
|
+
- type: shared
|
|
66
|
+
source: sections/session-update.md
|
|
67
|
+
|
|
68
|
+
- type: shared
|
|
69
|
+
source: sections/footer-next-steps.md
|
|
70
|
+
params:
|
|
71
|
+
current_skill: mvt-resume
|