@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
package/README.md
CHANGED
|
@@ -1,193 +1,194 @@
|
|
|
1
|
-
# My Virtual Tech Team (MVTT)
|
|
2
|
-
|
|
3
|
-
> A prompt orchestration framework for [Claude Code](https://claude.ai/claude-code) —
|
|
4
|
-
|
|
5
|
-
[](https://www.npmjs.com/package/@uoyo/mvtt) [](LICENSE)
|
|
6
|
-
|
|
7
|
-
## What is MVTT
|
|
8
|
-
|
|
9
|
-
MVTT turns Claude Code into a coordinated engineering team — Analyst, Architect, Developer, Reviewer, and Tester — each with a distinct role but sharing the same persistent workspace. Every skill reads from and writes to a file-based context layer that lives in your repository, so knowledge accumulates across conversations instead of being lost.
|
|
10
|
-
|
|
11
|
-
## Highlights
|
|
12
|
-
|
|
13
|
-
### Persistent Context That Grows With Your Project
|
|
14
|
-
|
|
15
|
-
```
|
|
16
|
-
.ai-agents/
|
|
17
|
-
├── workspace/
|
|
18
|
-
│ ├── session.yaml # Who did what, what's in progress
|
|
19
|
-
│ ├── project-context.yaml # Tech stack, domain model, conventions
|
|
20
|
-
│ └── artifacts/ # Analysis docs, design specs, review logs
|
|
21
|
-
└── knowledge/
|
|
22
|
-
├── core/ # Framework principles & architecture patterns
|
|
23
|
-
├── principle/ # Your team's coding standards
|
|
24
|
-
└── project/ # Domain-specific knowledge
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
Context is **never lost between conversations**. Start a new Claude Code session tomorrow and it picks up exactly where you left off — your domain model, architecture decisions, in-progress tasks, and team conventions are all there.
|
|
28
|
-
|
|
29
|
-
### Save, Resume, and Sync
|
|
30
|
-
|
|
31
|
-
| Capability | How |
|
|
32
|
-
|---|---|
|
|
33
|
-
| **Save progress** | Every skill automatically updates `session.yaml` with what was done |
|
|
34
|
-
| **Resume anywhere** | `/mvt-resume` restores full context in a new conversation |
|
|
35
|
-
| **Sync after changes** | `/mvt-sync-context` updates context when code evolves outside the workflow |
|
|
36
|
-
| **Check context health** | `/mvt-check-context` analyzes token load and suggests optimizations |
|
|
37
|
-
|
|
38
|
-
You can close your IDE, switch machines, or come back days later — the context persists in version-controlled files that travel with your repo.
|
|
39
|
-
|
|
40
|
-
### One Shared Truth, Zero Drift
|
|
41
|
-
|
|
42
|
-
Every skill operates against the **same context source**:
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
┌─────────────────────────────────────────────────────┐
|
|
46
|
-
│ Shared Context Layer │
|
|
47
|
-
│ session.yaml + project-context.yaml + knowledge/ │
|
|
48
|
-
└───────────┬───────────┬───────────┬─────────────────┘
|
|
49
|
-
│ │ │
|
|
50
|
-
┌─────┴──┐ ┌────┴────┐ ┌──┴──────┐
|
|
51
|
-
│Analyst │ │Architect│ │Developer│ ...
|
|
52
|
-
└────────┘ └─────────┘ └─────────┘
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
When the Analyst discovers a new domain concept, the Architect sees it. When the Architect makes a design decision, the Developer follows it. No skill can "go rogue" because they all read the same ground truth before acting.
|
|
56
|
-
|
|
57
|
-
### Complete Development Lifecycle
|
|
58
|
-
|
|
59
|
-
MVTT covers the full engineering workflow — not just code generation:
|
|
60
|
-
|
|
61
|
-
```
|
|
62
|
-
Analyze Design Plan Implement Review Test
|
|
63
|
-
┌────────┐ ┌────────┐ ┌────────┐ ┌──────────┐ ┌────────┐ ┌──────┐
|
|
64
|
-
│Extract │ │Define │ │Break │ │Write code│ │Check │ │Write │
|
|
65
|
-
│domain │──▶│arch & │──▶│into │──▶│following │──▶│quality │──▶│tests │
|
|
66
|
-
│concepts│ │patterns│ │tasks │ │the design│ │& style │ │ │
|
|
67
|
-
└────────┘ └────────┘ └────────┘ └──────────┘ └────────┘ └──────┘
|
|
68
|
-
│ │
|
|
69
|
-
└──────────────── Context flows through every phase ───────────────┘
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Each phase produces artifacts that become input for the next. The context accumulates — it doesn't reset.
|
|
73
|
-
|
|
74
|
-
## Quick Start
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
# Install into any project
|
|
78
|
-
npx @uoyo/mvtt install
|
|
79
|
-
|
|
80
|
-
# Open in Claude Code, then:
|
|
81
|
-
/mvt-init # Detect tech stack, initialize context
|
|
82
|
-
/mvt-analyze # Start with requirements analysis
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## All Skills (
|
|
86
|
-
|
|
87
|
-
### Workflow — Full Development Lifecycle
|
|
88
|
-
|
|
89
|
-
| Skill | Role | What It Does |
|
|
90
|
-
|-------|------|--------------|
|
|
91
|
-
| `/mvt-analyze` | Analyst | Extract requirements, domain concepts, acceptance criteria |
|
|
92
|
-
| `/mvt-analyze-code` | Analyst | Reverse-analyze existing code into structured context |
|
|
93
|
-
| `/mvt-design` | Architect | Define architecture, component boundaries, data flow |
|
|
94
|
-
| `/mvt-plan-dev` | Architect | Break design into ordered implementation tasks |
|
|
95
|
-
| `/mvt-update-plan` | Architect | Update plan as tasks complete or scope changes |
|
|
96
|
-
| `/mvt-implement` | Developer | Write code following the design and plan |
|
|
97
|
-
| `/mvt-review` | Reviewer | Check quality, standards compliance, potential issues |
|
|
98
|
-
| `/mvt-test` | Tester | Generate tests that validate the implementation |
|
|
99
|
-
|
|
100
|
-
### Shortcuts — Skip the Ceremony
|
|
101
|
-
|
|
102
|
-
| Skill | Description |
|
|
103
|
-
|-------|-------------|
|
|
104
|
-
| `/mvt-
|
|
105
|
-
| `/mvt-
|
|
106
|
-
| `/mvt-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
| `/mvt-
|
|
114
|
-
| `/mvt-
|
|
115
|
-
| `/mvt-
|
|
116
|
-
| `/mvt-
|
|
117
|
-
| `/mvt-
|
|
118
|
-
| `/mvt-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
| `/mvt-
|
|
126
|
-
| `/mvt-
|
|
127
|
-
| `/mvt-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
mvtt
|
|
145
|
-
mvtt
|
|
146
|
-
mvtt
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
- **`
|
|
155
|
-
- **`
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
- **
|
|
163
|
-
- **
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
npm
|
|
188
|
-
npm
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
1
|
+
# My Virtual Tech Team (MVTT)
|
|
2
|
+
|
|
3
|
+
> A prompt orchestration framework for [Claude Code](https://claude.ai/claude-code) — 23 AI skills that share persistent context and cover the full development lifecycle from requirements to testing.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@uoyo/mvtt) [](LICENSE)
|
|
6
|
+
|
|
7
|
+
## What is MVTT
|
|
8
|
+
|
|
9
|
+
MVTT turns Claude Code into a coordinated engineering team — Analyst, Architect, Developer, Reviewer, and Tester — each with a distinct role but sharing the same persistent workspace. Every skill reads from and writes to a file-based context layer that lives in your repository, so knowledge accumulates across conversations instead of being lost.
|
|
10
|
+
|
|
11
|
+
## Highlights
|
|
12
|
+
|
|
13
|
+
### Persistent Context That Grows With Your Project
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
.ai-agents/
|
|
17
|
+
├── workspace/
|
|
18
|
+
│ ├── session.yaml # Who did what, what's in progress
|
|
19
|
+
│ ├── project-context.yaml # Tech stack, domain model, conventions
|
|
20
|
+
│ └── artifacts/ # Analysis docs, design specs, review logs
|
|
21
|
+
└── knowledge/
|
|
22
|
+
├── core/ # Framework principles & architecture patterns
|
|
23
|
+
├── principle/ # Your team's coding standards
|
|
24
|
+
└── project/ # Domain-specific knowledge
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Context is **never lost between conversations**. Start a new Claude Code session tomorrow and it picks up exactly where you left off — your domain model, architecture decisions, in-progress tasks, and team conventions are all there.
|
|
28
|
+
|
|
29
|
+
### Save, Resume, and Sync
|
|
30
|
+
|
|
31
|
+
| Capability | How |
|
|
32
|
+
|---|---|
|
|
33
|
+
| **Save progress** | Every skill automatically updates `session.yaml` with what was done |
|
|
34
|
+
| **Resume anywhere** | `/mvt-resume` restores full context in a new conversation |
|
|
35
|
+
| **Sync after changes** | `/mvt-sync-context` updates context when code evolves outside the workflow |
|
|
36
|
+
| **Check context health** | `/mvt-check-context` analyzes token load and suggests optimizations |
|
|
37
|
+
|
|
38
|
+
You can close your IDE, switch machines, or come back days later — the context persists in version-controlled files that travel with your repo.
|
|
39
|
+
|
|
40
|
+
### One Shared Truth, Zero Drift
|
|
41
|
+
|
|
42
|
+
Every skill operates against the **same context source**:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
┌─────────────────────────────────────────────────────┐
|
|
46
|
+
│ Shared Context Layer │
|
|
47
|
+
│ session.yaml + project-context.yaml + knowledge/ │
|
|
48
|
+
└───────────┬───────────┬───────────┬─────────────────┘
|
|
49
|
+
│ │ │
|
|
50
|
+
┌─────┴──┐ ┌────┴────┐ ┌──┴──────┐
|
|
51
|
+
│Analyst │ │Architect│ │Developer│ ...
|
|
52
|
+
└────────┘ └─────────┘ └─────────┘
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
When the Analyst discovers a new domain concept, the Architect sees it. When the Architect makes a design decision, the Developer follows it. No skill can "go rogue" because they all read the same ground truth before acting.
|
|
56
|
+
|
|
57
|
+
### Complete Development Lifecycle
|
|
58
|
+
|
|
59
|
+
MVTT covers the full engineering workflow — not just code generation:
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
Analyze Design Plan Implement Review Test
|
|
63
|
+
┌────────┐ ┌────────┐ ┌────────┐ ┌──────────┐ ┌────────┐ ┌──────┐
|
|
64
|
+
│Extract │ │Define │ │Break │ │Write code│ │Check │ │Write │
|
|
65
|
+
│domain │──▶│arch & │──▶│into │──▶│following │──▶│quality │──▶│tests │
|
|
66
|
+
│concepts│ │patterns│ │tasks │ │the design│ │& style │ │ │
|
|
67
|
+
└────────┘ └────────┘ └────────┘ └──────────┘ └────────┘ └──────┘
|
|
68
|
+
│ │
|
|
69
|
+
└──────────────── Context flows through every phase ───────────────┘
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Each phase produces artifacts that become input for the next. The context accumulates — it doesn't reset.
|
|
73
|
+
|
|
74
|
+
## Quick Start
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Install into any project
|
|
78
|
+
npx @uoyo/mvtt install
|
|
79
|
+
|
|
80
|
+
# Open in Claude Code, then:
|
|
81
|
+
/mvt-init # Detect tech stack, initialize context
|
|
82
|
+
/mvt-analyze # Start with requirements analysis
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## All Skills (23)
|
|
86
|
+
|
|
87
|
+
### Workflow — Full Development Lifecycle
|
|
88
|
+
|
|
89
|
+
| Skill | Role | What It Does |
|
|
90
|
+
|-------|------|--------------|
|
|
91
|
+
| `/mvt-analyze` | Analyst | Extract requirements, domain concepts, acceptance criteria |
|
|
92
|
+
| `/mvt-analyze-code` | Analyst | Reverse-analyze existing code into structured context |
|
|
93
|
+
| `/mvt-design` | Architect | Define architecture, component boundaries, data flow |
|
|
94
|
+
| `/mvt-plan-dev` | Architect | Break design into ordered implementation tasks |
|
|
95
|
+
| `/mvt-update-plan` | Architect | Update plan as tasks complete or scope changes |
|
|
96
|
+
| `/mvt-implement` | Developer | Write code following the design and plan |
|
|
97
|
+
| `/mvt-review` | Reviewer | Check quality, standards compliance, potential issues |
|
|
98
|
+
| `/mvt-test` | Tester | Generate tests that validate the implementation |
|
|
99
|
+
|
|
100
|
+
### Shortcuts — Skip the Ceremony
|
|
101
|
+
|
|
102
|
+
| Skill | Description |
|
|
103
|
+
|-------|-------------|
|
|
104
|
+
| `/mvt-bug-detect` | Analyze and detect bugs: investigate root cause, assess severity and impact without fixing |
|
|
105
|
+
| `/mvt-fix` | Diagnose and fix bugs (reads context to understand the system) |
|
|
106
|
+
| `/mvt-refactor` | Refactor with full awareness of architecture decisions |
|
|
107
|
+
| `/mvt-quick-dev` | Fast implementation for simple, well-scoped changes |
|
|
108
|
+
|
|
109
|
+
### Context Management
|
|
110
|
+
|
|
111
|
+
| Skill | Description |
|
|
112
|
+
|-------|-------------|
|
|
113
|
+
| `/mvt-init` | Initialize project context, detect tech stack |
|
|
114
|
+
| `/mvt-sync-context` | Update context after code changes made outside MVTT |
|
|
115
|
+
| `/mvt-resume` | Restore full context in a new conversation |
|
|
116
|
+
| `/mvt-status` | Show what's in progress, what context is loaded |
|
|
117
|
+
| `/mvt-manage-context` | Add, remove, or reorganize knowledge entries |
|
|
118
|
+
| `/mvt-check-context` | Analyze context token usage and optimize |
|
|
119
|
+
| `/mvt-cleanup` | Archive stale artifacts, maintain context health |
|
|
120
|
+
|
|
121
|
+
### Utility
|
|
122
|
+
|
|
123
|
+
| Skill | Description |
|
|
124
|
+
|-------|-------------|
|
|
125
|
+
| `/mvt-help` | Overview of skills and workflow guidance |
|
|
126
|
+
| `/mvt-config` | Change language, output format, and preferences |
|
|
127
|
+
| `/mvt-create-skill` | Create custom skills for your team's workflows |
|
|
128
|
+
| `/mvt-template` | View and customize output templates |
|
|
129
|
+
|
|
130
|
+
## How Context Stays in Sync
|
|
131
|
+
|
|
132
|
+
A common fear: "what if the context becomes outdated?" MVTT handles this at multiple levels:
|
|
133
|
+
|
|
134
|
+
1. **Auto-update on skill execution** — Every skill writes its results back to session and artifacts
|
|
135
|
+
2. **Explicit sync** — `/mvt-sync-context` reconciles context with actual code changes
|
|
136
|
+
3. **Context health checks** — `/mvt-check-context` identifies stale or bloated entries
|
|
137
|
+
4. **Artifact cleanup** — `/mvt-cleanup` archives old artifacts that no longer reflect reality
|
|
138
|
+
|
|
139
|
+
The context is designed to be a **living document**, not a snapshot.
|
|
140
|
+
|
|
141
|
+
## CLI Commands
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
mvtt install # First-time install (interactive language selection)
|
|
145
|
+
mvtt update [--check] # Upgrade to latest (user data preserved)
|
|
146
|
+
mvtt doctor # Check installation health
|
|
147
|
+
mvtt uninstall # Remove generated files (user data preserved)
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Architecture Patterns
|
|
151
|
+
|
|
152
|
+
MVTT ships knowledge for three patterns that workflow skills automatically consume:
|
|
153
|
+
|
|
154
|
+
- **`ddd`** — Domain-Driven Design (bounded contexts, aggregates, domain events)
|
|
155
|
+
- **`clean-architecture`** — Layered boundaries, dependency inversion
|
|
156
|
+
- **`frontend-react`** — React-specific structural conventions
|
|
157
|
+
|
|
158
|
+
Detected automatically by `/mvt-init` or configured via `/mvt-config`.
|
|
159
|
+
|
|
160
|
+
## Extending MVTT
|
|
161
|
+
|
|
162
|
+
- **Add team knowledge** — Drop markdown files into `.ai-agents/knowledge/principle/` for coding standards, or `project/` for domain knowledge. All skills load them automatically.
|
|
163
|
+
- **Create custom skills** — `/mvt-create-skill` scaffolds project-specific skills (e.g., `/mvt-test-e2e` for your E2E conventions).
|
|
164
|
+
- **Customize templates** — Override output formats in `.ai-agents/skills/_templates/custom/`.
|
|
165
|
+
|
|
166
|
+
## Configuration
|
|
167
|
+
|
|
168
|
+
Edit `.ai-agents/config.yaml` or use `/mvt-config`:
|
|
169
|
+
|
|
170
|
+
```yaml
|
|
171
|
+
version: "2.0"
|
|
172
|
+
preferences:
|
|
173
|
+
interaction_language: en-US # en-US | zh-CN
|
|
174
|
+
document_output_language: en-US # Language for generated artifacts
|
|
175
|
+
output:
|
|
176
|
+
no_emojis: true
|
|
177
|
+
data_format: yaml # yaml | json
|
|
178
|
+
context_routing:
|
|
179
|
+
relevance_threshold: 70
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
## Development
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
git clone https://github.com/uoyoCsharp/My-Virtual-TechTeam.git
|
|
186
|
+
cd My-Virtual-TechTeam
|
|
187
|
+
npm install
|
|
188
|
+
npm run build # Compile TypeScript
|
|
189
|
+
npm test # Run test suite
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
## License
|
|
193
|
+
|
|
194
|
+
MIT
|
|
@@ -7,12 +7,10 @@ export interface MigrationResult {
|
|
|
7
7
|
export declare function migrateManifests(projectRoot: string): MigrationResult;
|
|
8
8
|
export declare function migratePaths(projectRoot: string): MigrationResult;
|
|
9
9
|
export declare function migrateConfig(projectRoot: string): MigrationResult;
|
|
10
|
-
export declare function migrateRegistry(projectRoot: string): MigrationResult;
|
|
11
10
|
export interface MigrateAllResult {
|
|
12
11
|
manifests: MigrationResult;
|
|
13
12
|
paths: MigrationResult;
|
|
14
13
|
config: MigrationResult;
|
|
15
|
-
registry: MigrationResult;
|
|
16
14
|
}
|
|
17
15
|
export declare function migrateAll(projectRoot: string): MigrateAllResult;
|
|
18
16
|
//# sourceMappingURL=migrate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAeD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA8CrE;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA2BjE;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA0ClE;AAED,
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAeD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA8CrE;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA2BjE;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA0ClE;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAMhE"}
|
package/dist/commands/migrate.js
CHANGED
|
@@ -108,56 +108,11 @@ export function migrateConfig(projectRoot) {
|
|
|
108
108
|
changes.push("set document_output_language fallback");
|
|
109
109
|
return { skipped: false, backup, changes };
|
|
110
110
|
}
|
|
111
|
-
export function migrateRegistry(projectRoot) {
|
|
112
|
-
const registryPath = path.join(projectRoot, ".ai-agents/registry.yaml");
|
|
113
|
-
if (!existsSync(registryPath)) {
|
|
114
|
-
return { skipped: true, reason: "no registry.yaml" };
|
|
115
|
-
}
|
|
116
|
-
const raw = readFileSync(registryPath, "utf-8");
|
|
117
|
-
const registry = parseYaml(raw);
|
|
118
|
-
let stripped = 0;
|
|
119
|
-
const sharedKnowledge = registry.knowledge?.shared;
|
|
120
|
-
if (Array.isArray(sharedKnowledge)) {
|
|
121
|
-
for (const entry of sharedKnowledge) {
|
|
122
|
-
if (entry && typeof entry === "object" && "type" in entry) {
|
|
123
|
-
delete entry.type;
|
|
124
|
-
stripped++;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
const skills = registry.skills;
|
|
129
|
-
if (skills && typeof skills === "object") {
|
|
130
|
-
for (const skill of Object.values(skills)) {
|
|
131
|
-
if (!skill || typeof skill !== "object")
|
|
132
|
-
continue;
|
|
133
|
-
const skillKnowledge = skill.knowledge;
|
|
134
|
-
if (!Array.isArray(skillKnowledge))
|
|
135
|
-
continue;
|
|
136
|
-
for (const entry of skillKnowledge) {
|
|
137
|
-
if (entry && typeof entry === "object" && "type" in entry) {
|
|
138
|
-
delete entry.type;
|
|
139
|
-
stripped++;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
if (stripped === 0) {
|
|
145
|
-
return { skipped: true, reason: "no legacy `type` fields in knowledge entries" };
|
|
146
|
-
}
|
|
147
|
-
const backup = backupFile(projectRoot, registryPath, "registry");
|
|
148
|
-
writeFileSync(registryPath, stringifyYaml(registry), "utf-8");
|
|
149
|
-
return {
|
|
150
|
-
skipped: false,
|
|
151
|
-
backup,
|
|
152
|
-
changes: [`stripped ${stripped} legacy \`type\` field(s) from knowledge entries`],
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
111
|
export function migrateAll(projectRoot) {
|
|
156
112
|
return {
|
|
157
113
|
manifests: migrateManifests(projectRoot),
|
|
158
114
|
paths: migratePaths(projectRoot),
|
|
159
115
|
config: migrateConfig(projectRoot),
|
|
160
|
-
registry: migrateRegistry(projectRoot),
|
|
161
116
|
};
|
|
162
117
|
}
|
|
163
118
|
//# sourceMappingURL=migrate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/registry.yaml
CHANGED
|
@@ -100,6 +100,12 @@ skills:
|
|
|
100
100
|
category: project
|
|
101
101
|
|
|
102
102
|
# --- Developer Skills ---
|
|
103
|
+
mvt-bug-detect:
|
|
104
|
+
agent: analyst
|
|
105
|
+
description: "Analyze and detect bugs by investigating root cause, assessing severity and impact scope. Produces a structured diagnosis in conversation without applying fixes. This skill should be used when user suspects a bug, wants to understand a problem before fixing, or needs impact analysis."
|
|
106
|
+
path: .claude/skills/mvt-bug-detect/SKILL.md
|
|
107
|
+
template: null
|
|
108
|
+
category: shortcut
|
|
103
109
|
mvt-implement:
|
|
104
110
|
agent: developer
|
|
105
111
|
description: "Implement features based on architecture design. This skill should be used when user wants to implement a feature, write production code, or translate design blueprints into working code."
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
## Output Language Constraint (Mandatory)
|
|
2
|
-
|
|
3
|
-
All persisted document output (files written to disk) MUST be written in the language specified by `preferences.document_output_language` from config.yaml.
|
|
4
|
-
|
|
5
|
-
**Scope**: artifact files, generated reports, plans, and any markdown written to disk.
|
|
6
|
-
|
|
7
|
-
**Rules**:
|
|
8
|
-
- Section headings defined in templates may remain in their original language, but all generated **content** MUST use the configured language
|
|
9
|
-
- If `document_output_language` is not set, fall back to `interaction_language`
|
|
10
|
-
- Do NOT infer output language from template headings, user prompt language, or source code comments
|
|
11
|
-
- This constraint is NON-NEGOTIABLE and overrides any other language signals
|
|
1
|
+
## Output Language Constraint (Mandatory)
|
|
2
|
+
|
|
3
|
+
All persisted document output (files written to disk) MUST be written in the language specified by `preferences.document_output_language` from config.yaml.
|
|
4
|
+
|
|
5
|
+
**Scope**: artifact files, generated reports, plans, and any markdown written to disk.
|
|
6
|
+
|
|
7
|
+
**Rules**:
|
|
8
|
+
- Section headings defined in templates may remain in their original language, but all generated **content** MUST use the configured language
|
|
9
|
+
- If `document_output_language` is not set, fall back to `interaction_language`
|
|
10
|
+
- Do NOT infer output language from template headings, user prompt language, or source code comments
|
|
11
|
+
- This constraint is NON-NEGOTIABLE and overrides any other language signals
|