ai-dev-analytics 1.0.4 → 1.1.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 (91) hide show
  1. package/README.md +25 -17
  2. package/README.zh-CN.md +25 -17
  3. package/dist/cli/commands/build.d.ts +2 -0
  4. package/dist/cli/commands/build.d.ts.map +1 -0
  5. package/dist/cli/commands/build.js +61 -0
  6. package/dist/cli/commands/build.js.map +1 -0
  7. package/dist/cli/commands/dashboard.js +1 -1
  8. package/dist/cli/commands/dashboard.js.map +1 -1
  9. package/dist/cli/commands/import.d.ts +2 -0
  10. package/dist/cli/commands/import.d.ts.map +1 -0
  11. package/dist/cli/commands/import.js +28 -0
  12. package/dist/cli/commands/import.js.map +1 -0
  13. package/dist/cli/commands/init.d.ts.map +1 -1
  14. package/dist/cli/commands/init.js +113 -249
  15. package/dist/cli/commands/init.js.map +1 -1
  16. package/dist/cli/commands/merge.d.ts +2 -0
  17. package/dist/cli/commands/merge.d.ts.map +1 -0
  18. package/dist/cli/commands/merge.js +47 -0
  19. package/dist/cli/commands/merge.js.map +1 -0
  20. package/dist/cli/commands/migrate-dir.d.ts +2 -0
  21. package/dist/cli/commands/migrate-dir.d.ts.map +1 -0
  22. package/dist/cli/commands/migrate-dir.js +85 -0
  23. package/dist/cli/commands/migrate-dir.js.map +1 -0
  24. package/dist/cli/commands/migrate.js +5 -5
  25. package/dist/cli/commands/migrate.js.map +1 -1
  26. package/dist/cli/commands/report.js +1 -1
  27. package/dist/cli/commands/report.js.map +1 -1
  28. package/dist/cli/commands/rules.d.ts +5 -0
  29. package/dist/cli/commands/rules.d.ts.map +1 -1
  30. package/dist/cli/commands/rules.js +143 -38
  31. package/dist/cli/commands/rules.js.map +1 -1
  32. package/dist/cli/commands/skills.d.ts +7 -0
  33. package/dist/cli/commands/skills.d.ts.map +1 -0
  34. package/dist/cli/commands/skills.js +180 -0
  35. package/dist/cli/commands/skills.js.map +1 -0
  36. package/dist/cli/commands/start.js +4 -4
  37. package/dist/cli/commands/start.js.map +1 -1
  38. package/dist/cli/commands/update.d.ts.map +1 -1
  39. package/dist/cli/commands/update.js +14 -7
  40. package/dist/cli/commands/update.js.map +1 -1
  41. package/dist/cli/index.js +30 -0
  42. package/dist/cli/index.js.map +1 -1
  43. package/dist/server/api.js +2 -2
  44. package/dist/server/api.js.map +1 -1
  45. package/dist/server/index.js +1 -1
  46. package/dist/server/index.js.map +1 -1
  47. package/dist/utils/ai-build.d.ts +19 -0
  48. package/dist/utils/ai-build.d.ts.map +1 -0
  49. package/dist/utils/ai-build.js +278 -0
  50. package/dist/utils/ai-build.js.map +1 -0
  51. package/dist/utils/fs.d.ts +9 -0
  52. package/dist/utils/fs.d.ts.map +1 -1
  53. package/dist/utils/fs.js +31 -0
  54. package/dist/utils/fs.js.map +1 -1
  55. package/dist/utils/guide.d.ts +5 -4
  56. package/dist/utils/guide.d.ts.map +1 -1
  57. package/dist/utils/guide.js +78 -11
  58. package/dist/utils/guide.js.map +1 -1
  59. package/dist/utils/import.d.ts +27 -0
  60. package/dist/utils/import.d.ts.map +1 -0
  61. package/dist/utils/import.js +298 -0
  62. package/dist/utils/import.js.map +1 -0
  63. package/dist/utils/paths.d.ts +2 -2
  64. package/dist/utils/paths.d.ts.map +1 -1
  65. package/dist/utils/paths.js +8 -8
  66. package/dist/utils/paths.js.map +1 -1
  67. package/dist/utils/rules.d.ts +6 -1
  68. package/dist/utils/rules.d.ts.map +1 -1
  69. package/dist/utils/rules.js +126 -6
  70. package/dist/utils/rules.js.map +1 -1
  71. package/dist/utils/run-data.d.ts +1 -1
  72. package/dist/utils/run-data.js +4 -4
  73. package/dist/utils/run-data.js.map +1 -1
  74. package/dist/utils/skills.d.ts +37 -0
  75. package/dist/utils/skills.d.ts.map +1 -0
  76. package/dist/utils/skills.js +228 -0
  77. package/dist/utils/skills.js.map +1 -0
  78. package/package.json +1 -1
  79. package/src/assets/skills/audit.md +6 -6
  80. package/src/assets/skills/bug-fixer.md +4 -4
  81. package/src/assets/skills/code-generator.md +4 -4
  82. package/src/assets/skills/dashboard-generator.md +2 -2
  83. package/src/assets/skills/dev-flower.md +3 -3
  84. package/src/assets/skills/deviation-recorder.md +7 -7
  85. package/src/assets/skills/mcp-reviewer.md +2 -2
  86. package/src/assets/skills/requirement-analyzer.md +4 -4
  87. package/src/assets/skills/rules-evolver.md +7 -7
  88. package/src/assets/skills/self-reviewer.md +4 -4
  89. package/src/assets/skills/task-splitter.md +5 -5
  90. package/src/assets/skills/workflow-orchestrator.md +11 -11
  91. package/src/assets/templates/demo-run.json +7 -7
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { resolve } from 'node:path';
8
8
  import { getBranchName, getDevName } from './git.js';
9
- import { runDir, branchDir, configPath, aidevosDir } from './paths.js';
9
+ import { runDir, branchDir, configPath, aidaDir } from './paths.js';
10
10
  import { ensureDir, fileExists, readJson, writeJson, writeText } from './fs.js';
11
11
  import { ensureGuide, syncGuideReference } from './guide.js';
12
12
  // ─── Helpers ─────────────────────────────────────────────
@@ -335,11 +335,11 @@ export function createInitialRunData(branch, dev, config) {
335
335
  let _guideSynced = false;
336
336
  /**
337
337
  * Ensure run.json exists (lazy init).
338
- * Creates .aidevos/, config.json, run.json, branch-level files if missing.
338
+ * Creates .aida/, config.json, run.json, branch-level files if missing.
339
339
  */
340
340
  export function ensureRunJson(projectRoot) {
341
- // Ensure .aidevos/config.json exists
342
- const dir = aidevosDir(projectRoot);
341
+ // Ensure .aida/config.json exists
342
+ const dir = aidaDir(projectRoot);
343
343
  if (!fileExists(resolve(dir, 'config.json'))) {
344
344
  ensureDir(dir);
345
345
  ensureDir(resolve(dir, 'rules'));
@@ -1 +1 @@
1
- {"version":3,"file":"run-data.js","sourceRoot":"","sources":["../../src/utils/run-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-data.js","sourceRoot":"","sources":["../../src/utils/run-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ export interface SkillRegistryEntry {
2
+ id: string;
3
+ name: string;
4
+ content: string;
5
+ fingerprint: string;
6
+ source: {
7
+ kind: 'bundled' | 'local';
8
+ path?: string;
9
+ };
10
+ updatedAt: string;
11
+ status: 'active' | 'deprecated';
12
+ }
13
+ export declare function skillsRegistryPath(projectRoot: string): string;
14
+ export declare function skillsViewDir(projectRoot: string): string;
15
+ export declare function skillFingerprint(content: string): string;
16
+ export declare function nextSkillId(entries: SkillRegistryEntry[]): string;
17
+ export declare function loadSkillRegistry(projectRoot: string): SkillRegistryEntry[];
18
+ export declare function saveSkillRegistry(projectRoot: string, entries: SkillRegistryEntry[]): void;
19
+ export declare function bundledSkillEntries(): SkillRegistryEntry[];
20
+ export declare function seedBundledSkillRegistry(projectRoot: string): SkillRegistryEntry[];
21
+ export declare function bootstrapSkillRegistry(projectRoot: string): SkillRegistryEntry[];
22
+ export declare function importSkillsFromViews(projectRoot: string): {
23
+ entries: SkillRegistryEntry[];
24
+ imported: number;
25
+ };
26
+ export declare function buildSkillViews(projectRoot: string): number;
27
+ export declare function getSkillContent(projectRoot: string, skillName: string): string | null;
28
+ export declare function updateSkillContent(projectRoot: string, skillName: string, content: string): SkillRegistryEntry | null;
29
+ export declare function mergeSkillRegistries(base: SkillRegistryEntry[], incoming: SkillRegistryEntry[]): {
30
+ merged: SkillRegistryEntry[];
31
+ added: number;
32
+ };
33
+ export declare function ensureBundledSkills(projectRoot: string): {
34
+ total: number;
35
+ added: number;
36
+ };
37
+ //# sourceMappingURL=skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/utils/skills.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE;QACN,IAAI,EAAE,SAAS,GAAG,OAAO,CAAA;QACzB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,QAAQ,GAAG,YAAY,CAAA;CAChC;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEzD;AASD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,MAAM,CASjE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAS3E;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAE1F;AASD,wBAAgB,mBAAmB,IAAI,kBAAkB,EAAE,CAiB1D;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAIlF;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAqChF;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAgE9G;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAe3D;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGrF;AAED,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,kBAAkB,GAAG,IAAI,CAU3B;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,kBAAkB,EAAE,EAC1B,QAAQ,EAAE,kBAAkB,EAAE,GAC7B;IAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAgBjD;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAazF"}
@@ -0,0 +1,228 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { readdirSync } from 'node:fs';
3
+ import { resolve } from 'node:path';
4
+ import { ensureDir, fileExists, listDirs, readJson, readText, writeJson, writeText } from './fs.js';
5
+ import { aidaDir, SKILLS_DIR } from './paths.js';
6
+ export function skillsRegistryPath(projectRoot) {
7
+ return resolve(aidaDir(projectRoot), 'skills.json');
8
+ }
9
+ export function skillsViewDir(projectRoot) {
10
+ return resolve(aidaDir(projectRoot), 'skills');
11
+ }
12
+ function normalize(content) {
13
+ return content
14
+ .toLowerCase()
15
+ .replace(/[\s\n\r\t]+/g, ' ')
16
+ .trim();
17
+ }
18
+ export function skillFingerprint(content) {
19
+ return createHash('sha256').update(normalize(content)).digest('hex').substring(0, 12);
20
+ }
21
+ export function nextSkillId(entries) {
22
+ const nums = entries
23
+ .map((entry) => {
24
+ const match = entry.id.match(/^SKILL-(\d+)$/);
25
+ return match ? parseInt(match[1], 10) : 0;
26
+ })
27
+ .filter((n) => n > 0);
28
+ const max = nums.length > 0 ? Math.max(...nums) : 0;
29
+ return `SKILL-${String(max + 1).padStart(3, '0')}`;
30
+ }
31
+ export function loadSkillRegistry(projectRoot) {
32
+ const p = skillsRegistryPath(projectRoot);
33
+ if (!fileExists(p))
34
+ return [];
35
+ try {
36
+ const data = readJson(p);
37
+ return Array.isArray(data) ? data : [];
38
+ }
39
+ catch {
40
+ return [];
41
+ }
42
+ }
43
+ export function saveSkillRegistry(projectRoot, entries) {
44
+ writeJson(skillsRegistryPath(projectRoot), entries);
45
+ }
46
+ function bundledSkillNames() {
47
+ return readdirSync(SKILLS_DIR)
48
+ .filter((name) => name.endsWith('.md'))
49
+ .map((name) => name.replace(/\.md$/, ''))
50
+ .sort();
51
+ }
52
+ export function bundledSkillEntries() {
53
+ const now = new Date().toISOString();
54
+ return bundledSkillNames().map((name, index) => {
55
+ const content = readText(resolve(SKILLS_DIR, `${name}.md`));
56
+ return {
57
+ id: `SKILL-${String(index + 1).padStart(3, '0')}`,
58
+ name,
59
+ content,
60
+ fingerprint: skillFingerprint(content),
61
+ source: {
62
+ kind: 'bundled',
63
+ path: `src/assets/skills/${name}.md`,
64
+ },
65
+ updatedAt: now,
66
+ status: 'active',
67
+ };
68
+ });
69
+ }
70
+ export function seedBundledSkillRegistry(projectRoot) {
71
+ const entries = bundledSkillEntries();
72
+ saveSkillRegistry(projectRoot, entries);
73
+ return entries;
74
+ }
75
+ export function bootstrapSkillRegistry(projectRoot) {
76
+ const existing = loadSkillRegistry(projectRoot);
77
+ if (existing.length > 0)
78
+ return existing;
79
+ const localSkillDir = skillsViewDir(projectRoot);
80
+ const localSkills = listDirs(localSkillDir)
81
+ .map((name) => ({
82
+ name,
83
+ path: resolve(localSkillDir, name, 'SKILL.md'),
84
+ }))
85
+ .filter((entry) => fileExists(entry.path));
86
+ if (localSkills.length === 0) {
87
+ return seedBundledSkillRegistry(projectRoot);
88
+ }
89
+ const now = new Date().toISOString();
90
+ const entries = localSkills
91
+ .sort((a, b) => a.name.localeCompare(b.name))
92
+ .map((entry, index) => {
93
+ const content = readText(entry.path);
94
+ return {
95
+ id: `SKILL-${String(index + 1).padStart(3, '0')}`,
96
+ name: entry.name,
97
+ content,
98
+ fingerprint: skillFingerprint(content),
99
+ source: {
100
+ kind: 'local',
101
+ path: `.aida/skills/${entry.name}/SKILL.md`,
102
+ },
103
+ updatedAt: now,
104
+ status: 'active',
105
+ };
106
+ });
107
+ saveSkillRegistry(projectRoot, entries);
108
+ return entries;
109
+ }
110
+ export function importSkillsFromViews(projectRoot) {
111
+ const existing = loadSkillRegistry(projectRoot);
112
+ const now = new Date().toISOString();
113
+ const byName = new Map(existing.map((entry) => [entry.name, entry]));
114
+ const byFingerprint = new Map(existing.map((entry) => [entry.fingerprint, entry]));
115
+ const localSkillDir = skillsViewDir(projectRoot);
116
+ const localSkills = listDirs(localSkillDir)
117
+ .map((name) => ({
118
+ name,
119
+ path: resolve(localSkillDir, name, 'SKILL.md'),
120
+ }))
121
+ .filter((entry) => fileExists(entry.path))
122
+ .sort((a, b) => a.name.localeCompare(b.name));
123
+ let imported = 0;
124
+ const merged = [...existing];
125
+ for (const skill of localSkills) {
126
+ const content = readText(skill.path);
127
+ const fp = skillFingerprint(content);
128
+ const named = byName.get(skill.name);
129
+ if (named) {
130
+ if (named.fingerprint !== fp || named.content !== content || named.status !== 'active') {
131
+ named.content = content;
132
+ named.fingerprint = fp;
133
+ named.updatedAt = now;
134
+ named.status = 'active';
135
+ named.source = {
136
+ kind: 'local',
137
+ path: `.aida/skills/${skill.name}/SKILL.md`,
138
+ };
139
+ imported++;
140
+ }
141
+ byFingerprint.set(fp, named);
142
+ continue;
143
+ }
144
+ const sameContent = byFingerprint.get(fp);
145
+ if (sameContent)
146
+ continue;
147
+ const entry = {
148
+ id: nextSkillId(merged),
149
+ name: skill.name,
150
+ content,
151
+ fingerprint: fp,
152
+ source: {
153
+ kind: 'local',
154
+ path: `.aida/skills/${skill.name}/SKILL.md`,
155
+ },
156
+ updatedAt: now,
157
+ status: 'active',
158
+ };
159
+ merged.push(entry);
160
+ byName.set(entry.name, entry);
161
+ byFingerprint.set(fp, entry);
162
+ imported++;
163
+ }
164
+ if (imported > 0 || existing.length === 0) {
165
+ saveSkillRegistry(projectRoot, merged);
166
+ }
167
+ return { entries: merged, imported };
168
+ }
169
+ export function buildSkillViews(projectRoot) {
170
+ const entries = bootstrapSkillRegistry(projectRoot);
171
+ const viewDir = skillsViewDir(projectRoot);
172
+ ensureDir(viewDir);
173
+ let written = 0;
174
+ for (const entry of entries) {
175
+ if (entry.status === 'deprecated')
176
+ continue;
177
+ const destDir = resolve(viewDir, entry.name);
178
+ ensureDir(destDir);
179
+ writeText(resolve(destDir, 'SKILL.md'), entry.content);
180
+ written++;
181
+ }
182
+ return written;
183
+ }
184
+ export function getSkillContent(projectRoot, skillName) {
185
+ const entry = bootstrapSkillRegistry(projectRoot).find((item) => item.name === skillName && item.status === 'active');
186
+ return entry?.content || null;
187
+ }
188
+ export function updateSkillContent(projectRoot, skillName, content) {
189
+ const entries = bootstrapSkillRegistry(projectRoot);
190
+ const entry = entries.find((item) => item.name === skillName);
191
+ if (!entry)
192
+ return null;
193
+ entry.content = content;
194
+ entry.fingerprint = skillFingerprint(content);
195
+ entry.updatedAt = new Date().toISOString();
196
+ saveSkillRegistry(projectRoot, entries);
197
+ return entry;
198
+ }
199
+ export function mergeSkillRegistries(base, incoming) {
200
+ const fpSet = new Set(base.map((entry) => entry.fingerprint));
201
+ const merged = [...base];
202
+ let added = 0;
203
+ for (const entry of incoming) {
204
+ if (fpSet.has(entry.fingerprint))
205
+ continue;
206
+ merged.push({
207
+ ...entry,
208
+ id: nextSkillId(merged),
209
+ });
210
+ fpSet.add(entry.fingerprint);
211
+ added++;
212
+ }
213
+ return { merged, added };
214
+ }
215
+ export function ensureBundledSkills(projectRoot) {
216
+ const existing = loadSkillRegistry(projectRoot);
217
+ if (existing.length === 0) {
218
+ const seeded = seedBundledSkillRegistry(projectRoot);
219
+ return { total: seeded.length, added: seeded.length };
220
+ }
221
+ const bundled = bundledSkillEntries();
222
+ const { merged, added } = mergeSkillRegistries(existing, bundled);
223
+ if (added > 0) {
224
+ saveSkillRegistry(projectRoot, merged);
225
+ }
226
+ return { total: merged.length, added };
227
+ }
228
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/utils/skills.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-dev-analytics",
3
- "version": "1.0.4",
3
+ "version": "1.1.0",
4
4
  "description": "AI Development Analytics Platform - Track what AI actually does in your codebase",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: audit
3
- description: 扫描项目代码,生成与项目完全匹配的 AI 开发规范,直接写入 .aidevos/rules/。
4
- globs: ['.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
3
+ description: 扫描项目代码,生成与项目完全匹配的 AI 开发规范,直接写入 .aida/rules/。
4
+ globs: ['.aida/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
5
5
  ---
6
6
 
7
7
  # audit (项目审计)
@@ -23,7 +23,7 @@ globs: ['.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
23
23
  ### 阶段一:加载现有规则
24
24
 
25
25
  读取并理解项目现有的所有规则来源:
26
- 1. **AIDevOS 规则**:`.aidevos/rules/*.md`
26
+ 1. **AIDevOS 规则**:`.aida/rules/*.md`
27
27
  2. **全局规则文件**:
28
28
  - Claude Code 用户:`CLAUDE.md`
29
29
  - Cursor 用户:`.cursor/rules/*/*.md`
@@ -43,7 +43,7 @@ globs: ['.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
43
43
 
44
44
  ### 阶段三:规则审计
45
45
 
46
- 对现有 `.aidevos/rules/` 进行审计:
46
+ 对现有 `.aida/rules/` 进行审计:
47
47
  - **重复检测**:语义重复、约束重复
48
48
  - **冲突检测**:A 强制 vs B 禁止
49
49
  - **失配检测**:引用不存在的组件/API
@@ -51,7 +51,7 @@ globs: ['.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
51
51
 
52
52
  ### 阶段四:生成规则并直接写入
53
53
 
54
- 基于真实代码生成或更新 `.aidevos/rules/` 下的规则文件:
54
+ 基于真实代码生成或更新 `.aida/rules/` 下的规则文件:
55
55
 
56
56
  | 文件 | 内容 |
57
57
  |------|------|
@@ -73,7 +73,7 @@ globs: ['.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
73
73
 
74
74
  生成完成后输出:
75
75
  ```
76
- ✓ 已生成/更新 .aidevos/rules/ 下的规则文件:
76
+ ✓ 已生成/更新 .aida/rules/ 下的规则文件:
77
77
  - code-style.md
78
78
  - component-usage.md
79
79
  - api-patterns.md
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: bug-fixer
3
3
  description: 处理自检不通过或测试产生的 Bug 缺陷。基于 review 结果或用户反馈进行专项修复,并将 Bug 记录写入 run.json.bugs[]。
4
- globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
4
+ globs: ['.aida/runs/*/*/run.json', '.aida/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
5
5
  ---
6
6
 
7
7
  # bug-fixer (缺陷修复器)
8
8
 
9
- > **铁律**:1) 修复后必须在 `run.json.bugs[]` 追加 Bug 记录并更新 `summary.bugCount` 2) 写入后输出 `✓ run.json updated: bugs[], summary` 3) 修复前必须回顾项目所有规范(`.aidevos/rules/`、`CLAUDE.md` 或 `.cursor/rules/*/*.md`)判断是否为规范偏离 4) 如属于 AI 偏差(非功能 Bug),建议用户使用 deviation-recorder 记录
9
+ > **铁律**:1) 修复后必须在 `run.json.bugs[]` 追加 Bug 记录并更新 `summary.bugCount` 2) 写入后输出 `✓ run.json updated: bugs[], summary` 3) 修复前必须回顾项目所有规范(`.aida/rules/`、`CLAUDE.md` 或 `.cursor/rules/*/*.md`)判断是否为规范偏离 4) 如属于 AI 偏差(非功能 Bug),建议用户使用 deviation-recorder 记录
10
10
 
11
11
  ## 角色
12
12
 
@@ -16,7 +16,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
16
16
 
17
17
  > **[run_id]**:当前需求/功能的唯一标识
18
18
  > **[dev_name]**:通过 `git config user.name` 获取,转全小写并用 `-` 替换空格。
19
- > **数据根目录**:`.aidevos/runs/[run_id]/[dev_name]/`
19
+ > **数据根目录**:`.aida/runs/[run_id]/[dev_name]/`
20
20
  > **数据文件**:`run.json`
21
21
 
22
22
  ## 执行指令
@@ -27,7 +27,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
27
27
  2. **定位与分析:**
28
28
  - 根据 Bug 的描述或错误堆栈,定位到具体的问题文件。
29
29
  - 回顾项目所有规范,以识别是不是架构偏离问题导致的:
30
- - **AIDevOS 规则**:`.aidevos/rules/` 下的所有 `.md` 文件
30
+ - **AIDevOS 规则**:`.aida/rules/` 下的所有 `.md` 文件
31
31
  - **全局规则文件**:`CLAUDE.md`(Claude Code 项目)或 `.cursor/rules/*/*.md`(Cursor 项目)
32
32
 
33
33
  3. **修复策略执行:**
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: code-generator
3
3
  description: 严格按照 run.json.tasks[] 和项目规范生成业务代码,并更新任务状态。
4
- globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
4
+ globs: ['.aida/runs/*/*/run.json', '.aida/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
5
5
  ---
6
6
 
7
7
  # code-generator (代码生成器)
8
8
 
9
- > **铁律**:1) 必须先读取项目所有规范再写代码(`.aidevos/rules/`、`CLAUDE.md` 或 `.cursor/rules/*/*.md`) 2) 完成后必须更新 `run.json.tasks[].status` 和 `summary.completedTasks` 3) 写入后输出 `✓ run.json updated: tasks[], summary, files[]` 4) 禁止臆想不存在的 API / 组件 5) 禁止魔法字符串,文案必须走 i18n
9
+ > **铁律**:1) 必须先读取项目所有规范再写代码(`.aida/rules/`、`CLAUDE.md` 或 `.cursor/rules/*/*.md`) 2) 完成后必须更新 `run.json.tasks[].status` 和 `summary.completedTasks` 3) 写入后输出 `✓ run.json updated: tasks[], summary, files[]` 4) 禁止臆想不存在的 API / 组件 5) 禁止魔法字符串,文案必须走 i18n
10
10
 
11
11
  ## 角色
12
12
 
@@ -16,7 +16,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
16
16
 
17
17
  > **[run_id]**:当前需求/功能的唯一标识
18
18
  > **[dev_name]**:通过 `git config user.name` 获取,转全小写并用 `-` 替换空格。
19
- > **数据根目录**:`.aidevos/runs/[run_id]/[dev_name]/`
19
+ > **数据根目录**:`.aida/runs/[run_id]/[dev_name]/`
20
20
  > **数据文件**:`run.json`
21
21
 
22
22
  ## 执行指令
@@ -32,7 +32,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
32
32
 
33
33
  **a) 读取项目规范(必须):**
34
34
  - 仔细阅读项目所有规范:
35
- - **AIDevOS 规则**:`.aidevos/rules/` 下的所有 `.md` 文件(从 `rules.json` 自动生成的分类视图)
35
+ - **AIDevOS 规则**:`.aida/rules/` 下的所有 `.md` 文件(从 `rules.json` 自动生成的分类视图)
36
36
  - **全局规则文件**:`CLAUDE.md`(Claude Code 项目)或 `.cursor/rules/*/*.md`(Cursor 项目)
37
37
  - 规范包括:编码风格、组件使用、API 封装、i18n、状态管理、架构约束等。
38
38
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: dashboard-generator
3
3
  description: 根据 run.json 数据自动生成/更新数据看板。现已由 `aida dashboard` CLI 命令替代(实时 Web Dashboard)。
4
- globs: ['.aidevos/runs/*/*/run.json']
4
+ globs: ['.aida/runs/*/*/run.json']
5
5
  ---
6
6
 
7
7
  # dashboard-generator (数据看板生成器)
@@ -16,7 +16,7 @@ globs: ['.aidevos/runs/*/*/run.json']
16
16
 
17
17
  > **[run_id]**:当前需求/功能的唯一标识
18
18
  > **[dev_name]**:通过 `git config user.name` 获取,转全小写并用 `-` 替换空格。
19
- > **数据根目录**:`.aidevos/runs/[run_id]/[dev_name]/`
19
+ > **数据根目录**:`.aida/runs/[run_id]/[dev_name]/`
20
20
  > **数据源**:`run.json`(单一数据源)
21
21
 
22
22
  ## 数据源 (run.json 字段映射)
@@ -39,13 +39,13 @@ globs: []
39
39
  - audit
40
40
 
41
41
  遍历列表:
42
- - 如果 `.aidevos/skills/[skill_name]/SKILL.md` 已存在 -> 跳过
42
+ - 如果 `.aida/skills/[skill_name]/SKILL.md` 已存在 -> 跳过
43
43
  - 如果不存在 -> 创建
44
44
 
45
45
  ### 3. 创建目录结构
46
46
 
47
47
  ```
48
- .aidevos/
48
+ .aida/
49
49
  skills/ # Skill 定义(14 个)
50
50
  rules/ # 项目规范
51
51
  iron-rules.md # 铁律(不可违反)
@@ -60,7 +60,7 @@ globs: []
60
60
 
61
61
  ### 4. 初始化 Rules 文件
62
62
 
63
- 在 `.aidevos/rules/` 下生成 `iron-rules.md`,包含 3 条铁律。
63
+ 在 `.aida/rules/` 下生成 `iron-rules.md`,包含 3 条铁律。
64
64
 
65
65
  ### 5. 初始化需求文件夹
66
66
 
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: deviation-recorder
3
3
  description: 记录 AI 代码生成产出与用户实际期望之间的偏差,修复代码并写入 run.json.deviations[],用于后续数据分析和规则优化。
4
- globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
4
+ globs: ['.aida/runs/*/*/run.json', '.aida/rules/*.md', 'CLAUDE.md', '.cursor/rules/*/*.md']
5
5
  ---
6
6
 
7
7
  # deviation-recorder (偏差记录器)
8
8
 
9
- > **铁律**:1) 必须在 `run.json.deviations[]` 追加偏差记录并更新 `summary.deviationCount`(不可跳过) 2) 写入后输出 `✓ run.json updated: deviations[], summary` 3) 偏差是无业务逻辑的技术规范时必须沉淀规则到 `.aidevos/rules/` 并记录到 `run.json.rules[]` 4) 必须明确 rootCauseCategory 和 deviationCategory(不能留空)
9
+ > **铁律**:1) 必须在 `run.json.deviations[]` 追加偏差记录并更新 `summary.deviationCount`(不可跳过) 2) 写入后输出 `✓ run.json updated: deviations[], summary` 3) 偏差是无业务逻辑的技术规范时必须沉淀规则到 `.aida/rules/` 并记录到 `run.json.rules[]` 4) 必须明确 rootCauseCategory 和 deviationCategory(不能留空)
10
10
 
11
11
  ## 角色
12
12
 
@@ -16,7 +16,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
16
16
 
17
17
  > **[run_id]**:当前需求/功能的唯一标识
18
18
  > **[dev_name]**:通过 `git config user.name` 获取,转全小写并用 `-` 替换空格。
19
- > **数据根目录**:`.aidevos/runs/[run_id]/[dev_name]/`
19
+ > **数据根目录**:`.aida/runs/[run_id]/[dev_name]/`
20
20
  > **数据文件**:`run.json`
21
21
 
22
22
  ## 提示
@@ -39,7 +39,7 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
39
39
  2. **定位与分析:**
40
40
  - 根据偏差描述,定位到具体的问题文件。
41
41
  - 回顾项目所有规范,判断是否为规则缺失或 AI 臆想导致:
42
- - **AIDevOS 规则**:`.aidevos/rules/` 下的所有 `.md` 文件
42
+ - **AIDevOS 规则**:`.aida/rules/` 下的所有 `.md` 文件
43
43
  - **全局规则文件**:`CLAUDE.md`(Claude Code 项目)或 `.cursor/rules/*/*.md`(Cursor 项目)
44
44
 
45
45
  3. **修复代码:**
@@ -74,10 +74,10 @@ globs: ['.aidevos/runs/*/*/run.json', '.aidevos/rules/*.md', 'CLAUDE.md', '.curs
74
74
  - `content`: 规则描述
75
75
  - `category`: 分类(可选值:`component`, `api`, `style`, `i18n`, `architecture`, `state-management`, `routing`, `testing`, `process`, `general`)
76
76
  - `sourceDeviation`: 关联的偏差 ID(如 DEV-XX)
77
- - 规则会自动写入 `.aidevos/rules.json`(项目级注册表),并通过 fingerprint 自动去重
78
- - 工具会自动重建 `.aidevos/rules/*.md` 视图文件
77
+ - 规则会自动写入 `.aida/rules.json`(项目级注册表),并通过 fingerprint 自动去重
78
+ - 工具会自动重建 `.aida/rules/*.md` 视图文件
79
79
 
80
80
  **c) 带业务逻辑 → 不创建规则:**
81
81
  - 如果是**业务逻辑**(特定功能需求),不创建规则,只记录偏差即可。
82
82
 
83
- **注意**:规则的 source of truth 是 `.aidevos/rules.json`(提交到 git),`.aidevos/rules/*.md` 是自动生成的只读视图(已 gitignore)。并行分支的规则通过 fingerprint 自动去重,合并冲突可用 `aida rules merge` 解决。
83
+ **注意**:规则的 source of truth 是 `.aida/rules.json`(提交到 git),`.aida/rules/*.md` 是自动生成的只读视图(已 gitignore)。并行分支的规则通过 fingerprint 自动去重,合并冲突可用 `aida rules merge` 解决。
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: mcp-reviewer
3
3
  description: 使用外部审查工具或人类代码审查结果进行更高安全级别的审计,结果写入 run.json.reviews[]。
4
- globs: ['.aidevos/runs/*/*/run.json']
4
+ globs: ['.aida/runs/*/*/run.json']
5
5
  ---
6
6
 
7
7
  # mcp-reviewer (高级审查员)
@@ -22,7 +22,7 @@ globs: ['.aidevos/runs/*/*/run.json']
22
22
 
23
23
  ## 路径约定
24
24
 
25
- > **数据根目录**:`.aidevos/runs/[run_id]/[dev_name]/`
25
+ > **数据根目录**:`.aida/runs/[run_id]/[dev_name]/`
26
26
  > **数据文件**:`run.json`
27
27
 
28
28
  ## 执行说明