ai-developer-skill-os 8.3.0 → 8.3.1

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 (110) hide show
  1. package/.agents/registry/capability-graph.yml +67 -25
  2. package/.agents/registry/graph.json +138 -255
  3. package/.agents/registry/index.yaml +70 -96
  4. package/.agents/registry/skills-index.yml +70 -47
  5. package/.agents/rules/anti-patterns.md +45 -0
  6. package/.agents/skills/_template/SKILL.md +1 -1
  7. package/.agents/skills/_template/capability.yaml +34 -20
  8. package/.agents/skills/qk-access-policy/SKILL.md +1 -1
  9. package/.agents/skills/qk-access-policy/capability.yaml +23 -0
  10. package/.agents/skills/qk-access-policy/evals/scorecard.yaml +36 -0
  11. package/.agents/skills/qk-agent-observability/SKILL.md +3 -3
  12. package/.agents/skills/qk-agent-observability/capability.yaml +29 -0
  13. package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +29 -0
  14. package/.agents/skills/qk-ai-builder/SKILL.md +1 -1
  15. package/.agents/skills/qk-ai-builder/capability.yaml +23 -0
  16. package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +30 -0
  17. package/.agents/skills/qk-api-lifecycle/SKILL.md +1 -1
  18. package/.agents/skills/qk-api-lifecycle/capability.yaml +23 -0
  19. package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +29 -0
  20. package/.agents/skills/qk-bug-resolution/SKILL.md +1 -1
  21. package/.agents/skills/qk-bug-resolution/capability.yaml +25 -0
  22. package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +30 -0
  23. package/.agents/skills/qk-code-review/SKILL.md +1 -1
  24. package/.agents/skills/qk-code-review/capability.yaml +23 -0
  25. package/.agents/skills/qk-code-review/evals/scorecard.yaml +29 -0
  26. package/.agents/skills/qk-context-loader/SKILL.md +1 -1
  27. package/.agents/skills/qk-context-loader/capability.yaml +23 -0
  28. package/.agents/skills/qk-context-loader/evals/scorecard.yaml +28 -0
  29. package/.agents/skills/qk-data-lifecycle/SKILL.md +1 -1
  30. package/.agents/skills/qk-data-lifecycle/capability.yaml +23 -0
  31. package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +29 -0
  32. package/.agents/skills/qk-db-optimizer/SKILL.md +1 -1
  33. package/.agents/skills/qk-db-optimizer/capability.yaml +22 -0
  34. package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +28 -0
  35. package/.agents/skills/qk-design-system-engineering/SKILL.md +1 -1
  36. package/.agents/skills/qk-design-system-engineering/capability.yaml +25 -0
  37. package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +27 -0
  38. package/.agents/skills/qk-devops-platform/SKILL.md +1 -1
  39. package/.agents/skills/qk-devops-platform/capability.yaml +29 -0
  40. package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +28 -0
  41. package/.agents/skills/qk-docs/SKILL.md +1 -1
  42. package/.agents/skills/qk-docs/capability.yaml +23 -0
  43. package/.agents/skills/qk-docs/evals/scorecard.yaml +27 -0
  44. package/.agents/skills/qk-engineering-standard/SKILL.md +1 -1
  45. package/.agents/skills/qk-engineering-standard/capability.yaml +23 -0
  46. package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +28 -0
  47. package/.agents/skills/qk-fe-api-integration/SKILL.md +1 -1
  48. package/.agents/skills/qk-fe-api-integration/capability.yaml +21 -0
  49. package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -0
  50. package/.agents/skills/qk-feature-delivery/SKILL.md +1 -1
  51. package/.agents/skills/qk-feature-delivery/capability.yaml +24 -0
  52. package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +28 -0
  53. package/.agents/skills/qk-frontend-architecture/SKILL.md +1 -1
  54. package/.agents/skills/qk-frontend-architecture/capability.yaml +28 -0
  55. package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +28 -0
  56. package/.agents/skills/qk-help/SKILL.md +2 -2
  57. package/.agents/skills/qk-help/capability.yaml +20 -0
  58. package/.agents/skills/qk-help/evals/scorecard.yaml +13 -0
  59. package/.agents/skills/qk-orchestrator/SKILL.md +1 -1
  60. package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
  61. package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
  62. package/.agents/skills/qk-product-specification/SKILL.md +1 -1
  63. package/.agents/skills/qk-product-specification/capability.yaml +27 -0
  64. package/.agents/skills/qk-product-specification/evals/scorecard.yaml +27 -0
  65. package/.agents/skills/qk-production-release/SKILL.md +2 -2
  66. package/.agents/skills/qk-production-release/capability.yaml +27 -0
  67. package/.agents/skills/qk-production-release/evals/scorecard.yaml +28 -0
  68. package/.agents/skills/qk-project-bootstrap/SKILL.md +1 -1
  69. package/.agents/skills/qk-project-bootstrap/capability.yaml +23 -0
  70. package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +28 -0
  71. package/.agents/skills/qk-project-health/SKILL.md +1 -1
  72. package/.agents/skills/qk-project-health/capability.yaml +23 -0
  73. package/.agents/skills/qk-project-health/evals/scorecard.yaml +27 -0
  74. package/.agents/skills/qk-project-memory/SKILL.md +1 -1
  75. package/.agents/skills/qk-project-memory/capability.yaml +23 -0
  76. package/.agents/skills/qk-project-memory/evals/scorecard.yaml +27 -0
  77. package/.agents/skills/qk-refactor/SKILL.md +117 -0
  78. package/.agents/skills/qk-refactor/capability.yaml +26 -0
  79. package/.agents/skills/qk-refactor/evals/scorecard.yaml +27 -0
  80. package/.agents/skills/qk-security-audit/SKILL.md +1 -1
  81. package/.agents/skills/qk-security-audit/capability.yaml +30 -0
  82. package/.agents/skills/qk-security-audit/evals/scorecard.yaml +27 -0
  83. package/.agents/skills/qk-system-evolution/SKILL.md +1 -1
  84. package/.agents/skills/qk-system-evolution/capability.yaml +24 -0
  85. package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -0
  86. package/.agents/skills/qk-test-engineering/SKILL.md +1 -1
  87. package/.agents/skills/qk-test-engineering/capability.yaml +28 -0
  88. package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +26 -0
  89. package/.agents/skills/qk-ui-audit/SKILL.md +1 -1
  90. package/.agents/skills/qk-ui-audit/capability.yaml +23 -0
  91. package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +26 -0
  92. package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
  93. package/.agents/skills/qk-ui-system-builder/SKILL.md +1 -1
  94. package/.agents/skills/qk-ui-system-builder/capability.yaml +25 -0
  95. package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +26 -0
  96. package/.agents/skills/qk-validation-gate/SKILL.md +1 -1
  97. package/.agents/skills/qk-validation-gate/capability.yaml +23 -0
  98. package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +26 -0
  99. package/.agents/skills/qk-web-quality-gate/SKILL.md +1 -1
  100. package/.agents/skills/qk-web-quality-gate/capability.yaml +24 -0
  101. package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +26 -0
  102. package/.agents/workflows/production-release.yml +173 -0
  103. package/CHANGELOG.md +27 -0
  104. package/bin/install.js +1 -1
  105. package/package.json +3 -1
  106. package/tooling/build-registry.js +186 -186
  107. package/tooling/fix-refactor.js +8 -0
  108. package/tooling/sync-versions.js +49 -0
  109. package/tooling/validate-graph.js +87 -87
  110. package/tooling/generate-registry.js +0 -157
@@ -1,157 +0,0 @@
1
- /**
2
- * generate-registry.js
3
- * Generates registry/skills-index.yml and registry/capability-graph.yml
4
- *
5
- * Usage: node tooling/generate-registry.js
6
- */
7
-
8
- import fs from 'fs';
9
- import path from 'path';
10
- import { fileURLToPath } from 'url';
11
- import yaml from 'js-yaml';
12
-
13
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
14
-
15
- const SKILLS_DIR = path.join(__dirname, '../.agents/skills');
16
- const INDEX_FILE = path.join(__dirname, '../.agents/registry/skills-index.yml');
17
- const GRAPH_FILE = path.join(__dirname, '../.agents/registry/capability-graph.yml');
18
-
19
- function parseFrontmatter(content) {
20
- const match = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
21
- if (!match) return null;
22
-
23
- try {
24
- return yaml.load(match[1]);
25
- } catch (e) {
26
- console.error('YAML parse error:', e.message);
27
- return null;
28
- }
29
- }
30
-
31
- function generate() {
32
- const skills = [];
33
-
34
- if (!fs.existsSync(SKILLS_DIR)) {
35
- console.error('Skills directory not found:', SKILLS_DIR);
36
- process.exit(1);
37
- }
38
-
39
- const skillDirs = fs.readdirSync(SKILLS_DIR)
40
- .filter(d => !d.startsWith('_') && fs.statSync(path.join(SKILLS_DIR, d)).isDirectory());
41
-
42
- for (const dir of skillDirs) {
43
- const skillFile = path.join(SKILLS_DIR, dir, 'SKILL.md');
44
- if (!fs.existsSync(skillFile)) continue;
45
-
46
- const content = fs.readFileSync(skillFile, 'utf8');
47
- const meta = parseFrontmatter(content);
48
- if (!meta || !meta.name) continue;
49
-
50
- // Default legacy if not marked stable
51
- if (!meta.status && meta.version && meta.version.startsWith('8.')) {
52
- meta.status = 'stable';
53
- }
54
-
55
- // Schema Validation Enforcement
56
- if (meta.status === 'stable' && meta.version && meta.version.startsWith('8.')) {
57
- if (!meta.intent || !meta.workflow || !meta.verification || !meta.selection) {
58
- console.warn(`[WARN] Rejecting ${meta.name} (v8): Missing required schema fields`);
59
- continue;
60
- }
61
- }
62
-
63
- skills.push(meta);
64
- }
65
-
66
- // 1. Generate skills-index.yml (Backward compatibility)
67
- const indexData = {
68
- version: "8.1.1",
69
- generated_at: new Date().toISOString(),
70
- total_skills: skills.length,
71
- skills: skills.map(s => ({
72
- name: s.name,
73
- version: s.version || "8.0.0",
74
- status: s.status || "legacy",
75
- description: s.description || "",
76
- complexity: s.complexity?.level || "medium",
77
- workflow: s.workflow || null,
78
- triggers: s.triggers || [],
79
- intent: s.intent || []
80
- }))
81
- };
82
-
83
- fs.mkdirSync(path.dirname(INDEX_FILE), { recursive: true });
84
- fs.writeFileSync(INDEX_FILE, `# registry/skills-index.yml\n# GENERATED FILE — DO NOT EDIT MANUALLY\n` + yaml.dump(indexData, { indent: 2 }), 'utf8');
85
-
86
- // 2. Generate capability-graph.yml (V8.1.1)
87
- const nodes = {};
88
- const edges = [];
89
-
90
- for (const s of skills) {
91
- nodes[s.name] = {
92
- type: s.type || 'capability',
93
- maturity: s.status || 'legacy',
94
- owns: s.decision_boundary?.owns || [],
95
- does_not_own: s.decision_boundary?.does_not_own || [],
96
- conflicts: s.decision_boundary?.conflicts_with || [],
97
- workflow: s.workflow || null
98
- };
99
-
100
- if (s.workflow) {
101
- edges.push({
102
- from: s.name,
103
- to: s.workflow,
104
- relation: 'depends_on'
105
- });
106
- }
107
-
108
- if (s.decision_boundary?.conflicts_with) {
109
- for (const conflict of s.decision_boundary.conflicts_with) {
110
- edges.push({
111
- from: s.name,
112
- to: conflict,
113
- relation: 'conflicts_with'
114
- });
115
- }
116
- }
117
-
118
- if (s.decision_boundary?.delegates_to) {
119
- for (const delegate of s.decision_boundary.delegates_to) {
120
- edges.push({
121
- from: s.name,
122
- to: delegate,
123
- relation: 'delegates_to'
124
- });
125
- // Derive reverse relation 'implemented_by'
126
- edges.push({
127
- from: delegate,
128
- to: s.name,
129
- relation: 'implemented_by'
130
- });
131
- }
132
- }
133
-
134
- if (s.related_skills) {
135
- for (const related of s.related_skills) {
136
- edges.push({
137
- from: s.name,
138
- to: related,
139
- relation: 'feeds'
140
- });
141
- }
142
- }
143
- }
144
-
145
- const graphData = {
146
- version: "8.1.3",
147
- generated_at: new Date().toISOString(),
148
- nodes,
149
- edges
150
- };
151
-
152
- fs.writeFileSync(GRAPH_FILE, `# registry/capability-graph.yml\n# GENERATED FILE — DO NOT EDIT MANUALLY\n` + yaml.dump(graphData, { indent: 2 }), 'utf8');
153
-
154
- console.log(`✅ Generated registry index and capability graph with ${skills.length} skills`);
155
- }
156
-
157
- generate();