mvc-kit 2.12.1 → 2.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -21,7 +21,7 @@ if (resolve(projectRoot) === ownPackageRoot) {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
// If the developer previously opted in (files exist), auto-update them
|
|
24
|
-
const skillFile = join(projectRoot, '.claude', '
|
|
24
|
+
const skillFile = join(projectRoot, '.claude', 'skills', 'mvc-kit.md');
|
|
25
25
|
// Also detect legacy rules file from older versions
|
|
26
26
|
const legacyRulesFile = join(projectRoot, '.claude', 'rules', 'mvc-kit.md');
|
|
27
27
|
|
|
@@ -24,7 +24,7 @@ function ensureDir(dir) {
|
|
|
24
24
|
* Install Claude Code integration files into a project's .claude/ directory.
|
|
25
25
|
*
|
|
26
26
|
* Creates:
|
|
27
|
-
* .claude/
|
|
27
|
+
* .claude/skills/mvc-kit.md — Framework reference skill (on-demand, model-invocable)
|
|
28
28
|
* .claude/agents/mvc-kit-architect.md — Architecture planning agent
|
|
29
29
|
*
|
|
30
30
|
* @param {string} projectRoot — Absolute path to the consuming project's root
|
|
@@ -32,21 +32,30 @@ function ensureDir(dir) {
|
|
|
32
32
|
*/
|
|
33
33
|
export function installClaude(projectRoot) {
|
|
34
34
|
const claudeDir = join(projectRoot, '.claude');
|
|
35
|
-
const
|
|
35
|
+
const skillsDir = join(claudeDir, 'skills');
|
|
36
36
|
const agentsDir = join(claudeDir, 'agents');
|
|
37
37
|
|
|
38
|
-
ensureDir(
|
|
38
|
+
ensureDir(skillsDir);
|
|
39
39
|
ensureDir(agentsDir);
|
|
40
40
|
|
|
41
41
|
const files = [];
|
|
42
42
|
|
|
43
|
-
// 1. Guide skill — framework reference (on-demand,
|
|
43
|
+
// 1. Guide skill — framework reference (on-demand, model-invocable)
|
|
44
44
|
const guideSkill = readFileSync(join(SKILLS_DIR, 'guide', 'SKILL.md'), 'utf-8');
|
|
45
45
|
const guideBody = stripFrontmatter(guideSkill)
|
|
46
46
|
// Remove the "Supporting Files" section — replaced by "Detailed Reference" below
|
|
47
47
|
.replace(/\n## Supporting Files[\s\S]*$/, '');
|
|
48
48
|
|
|
49
|
-
const
|
|
49
|
+
const SKILL_FRONTMATTER = `---
|
|
50
|
+
name: mvc-kit
|
|
51
|
+
description: "mvc-kit framework reference — class roles, architecture rules, React hooks, and decision framework. Loaded on-demand when working with mvc-kit code."
|
|
52
|
+
invocable_by:
|
|
53
|
+
- model
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
`;
|
|
57
|
+
|
|
58
|
+
const skillContent = SKILL_FRONTMATTER + AUTO_HEADER + guideBody + `
|
|
50
59
|
|
|
51
60
|
## Detailed Reference
|
|
52
61
|
|
|
@@ -61,8 +70,8 @@ For detailed per-class documentation, read the \`.md\` files colocated with sour
|
|
|
61
70
|
\`node_modules/mvc-kit/src/\`
|
|
62
71
|
`;
|
|
63
72
|
|
|
64
|
-
writeFileSync(join(
|
|
65
|
-
files.push('.claude/
|
|
73
|
+
writeFileSync(join(skillsDir, 'mvc-kit.md'), skillContent, 'utf-8');
|
|
74
|
+
files.push('.claude/skills/mvc-kit.md');
|
|
66
75
|
|
|
67
76
|
// 2. Architect agent
|
|
68
77
|
const architectAgent = readFileSync(join(AGENTS_DIR, 'mvc-kit-architect.md'), 'utf-8');
|