sinapse-ai 1.12.2 → 1.14.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 (244) hide show
  1. package/.claude/CLAUDE.md +2 -2
  2. package/.claude/rules/agent-memory-imports.md +4 -0
  3. package/.sinapse-ai/cli/commands/pro/index.js +8 -48
  4. package/.sinapse-ai/constitution.md +6 -2
  5. package/.sinapse-ai/data/entity-registry.yaml +63 -429
  6. package/.sinapse-ai/development/agents/analyst/MEMORY.md +19 -0
  7. package/.sinapse-ai/development/agents/architect/MEMORY.md +52 -0
  8. package/.sinapse-ai/development/agents/data-engineer/MEMORY.md +55 -0
  9. package/.sinapse-ai/development/agents/developer/MEMORY.md +53 -0
  10. package/.sinapse-ai/development/agents/devops/MEMORY.md +56 -0
  11. package/.sinapse-ai/development/agents/product-lead/MEMORY.md +53 -0
  12. package/.sinapse-ai/development/agents/project-lead/MEMORY.md +53 -0
  13. package/.sinapse-ai/development/agents/quality-gate/MEMORY.md +52 -0
  14. package/.sinapse-ai/development/agents/snps-orqx.md +15 -0
  15. package/.sinapse-ai/development/agents/sprint-lead/MEMORY.md +53 -0
  16. package/.sinapse-ai/development/agents/squad-creator.md +15 -0
  17. package/.sinapse-ai/development/agents/ux/MEMORY.md +21 -0
  18. package/.sinapse-ai/development/templates/chrome-brain/knowledge-base/chrome-brain.md +2 -2
  19. package/.sinapse-ai/infrastructure/scripts/ide-sync/index.js +15 -0
  20. package/.sinapse-ai/infrastructure/scripts/validate-agents.js +159 -8
  21. package/.sinapse-ai/install-manifest.yaml +16 -152
  22. package/AGENTS.md +13 -2
  23. package/CHANGELOG.md +135 -3
  24. package/README.en.md +1 -1
  25. package/README.md +6 -26
  26. package/bin/cli.js +2 -7
  27. package/bin/commands/install.js +19 -257
  28. package/bin/commands/update.js +18 -78
  29. package/bin/lib/command-generator.js +261 -0
  30. package/bin/lib/prompts.js +2 -65
  31. package/bin/modules/chrome-brain-installer.js +2 -1
  32. package/bin/postinstall.js +6 -6
  33. package/docs/getting-started.md +0 -1
  34. package/docs/pt/getting-started.md +1 -1
  35. package/docs/security/dependabot-triage.md +17 -17
  36. package/package.json +6 -3
  37. package/packages/installer/src/wizard/i18n.js +3 -204
  38. package/packages/installer/src/wizard/index.js +1 -1
  39. package/packages/installer/src/wizard/questions.js +5 -368
  40. package/packages/installer/src/wizard/wizard.js +0 -9
  41. package/scripts/generate-install-manifest.js +6 -0
  42. package/scripts/validate-changelog-tags.js +97 -0
  43. package/scripts/validate-no-personal-leaks.js +184 -28
  44. package/scripts/validate-schemas.js +55 -10
  45. package/scripts/validate-story-meta.js +25 -12
  46. package/squads/claude-code-mastery/agents/claude-mastery-chief.md +15 -1
  47. package/squads/claude-code-mastery/agents/config-engineer.md +15 -0
  48. package/squads/claude-code-mastery/agents/hooks-architect.md +27 -20
  49. package/squads/claude-code-mastery/agents/mcp-integrator.md +15 -0
  50. package/squads/claude-code-mastery/agents/project-integrator.md +15 -0
  51. package/squads/claude-code-mastery/agents/roadmap-sentinel.md +15 -0
  52. package/squads/claude-code-mastery/agents/skill-craftsman.md +15 -0
  53. package/squads/claude-code-mastery/agents/swarm-orqx.md +15 -0
  54. package/squads/claude-code-mastery/tasks/audit-setup.md +1 -1
  55. package/squads/squad-animations/agents/animation-interpreter.md +15 -0
  56. package/squads/squad-animations/agents/animation-performance-engineer.md +15 -0
  57. package/squads/squad-animations/agents/animations-orqx.md +13 -0
  58. package/squads/squad-animations/agents/css-motion-artist.md +15 -0
  59. package/squads/squad-animations/agents/generative-particle-engineer.md +15 -0
  60. package/squads/squad-animations/agents/motion-choreographer.md +15 -0
  61. package/squads/squad-animations/agents/scroll-narrative-engineer.md +15 -0
  62. package/squads/squad-animations/agents/shader-artist.md +15 -0
  63. package/squads/squad-animations/agents/threejs-architect.md +15 -0
  64. package/squads/squad-brand/agents/brand-archetype-strategist.md +13 -0
  65. package/squads/squad-brand/agents/brand-auditor.md +15 -0
  66. package/squads/squad-brand/agents/brand-collateral-designer.md +15 -0
  67. package/squads/squad-brand/agents/brand-compiler.md +13 -0
  68. package/squads/squad-brand/agents/brand-creative-engineer.md +15 -0
  69. package/squads/squad-brand/agents/brand-culture-architect.md +15 -0
  70. package/squads/squad-brand/agents/brand-growth-strategist.md +15 -0
  71. package/squads/squad-brand/agents/brand-identity-designer.md +15 -0
  72. package/squads/squad-brand/agents/brand-motion-vfx.md +15 -0
  73. package/squads/squad-brand/agents/brand-naming-specialist.md +15 -0
  74. package/squads/squad-brand/agents/brand-orqx.md +13 -0
  75. package/squads/squad-brand/agents/brand-positioning-strategist.md +15 -0
  76. package/squads/squad-brand/agents/brand-sonic-designer.md +15 -0
  77. package/squads/squad-brand/agents/brand-strategist.md +15 -0
  78. package/squads/squad-brand/agents/brand-system-architect.md +15 -0
  79. package/squads/squad-cloning/agents/agent-forger.md +15 -0
  80. package/squads/squad-cloning/agents/cloning-orqx.md +15 -0
  81. package/squads/squad-cloning/agents/cognitive-extractor.md +15 -0
  82. package/squads/squad-cloning/agents/content-capturer.md +15 -0
  83. package/squads/squad-cloning/agents/kb-architect.md +15 -0
  84. package/squads/squad-cloning/agents/mind-synthesizer.md +15 -0
  85. package/squads/squad-cloning/agents/sop-extractor.md +15 -0
  86. package/squads/squad-cloning/agents/source-hunter.md +13 -0
  87. package/squads/squad-cloning/agents/squad-assembler.md +15 -0
  88. package/squads/squad-commercial/agents/commercial-orqx.md +13 -0
  89. package/squads/squad-commercial/agents/cs-business-auditor.md +15 -0
  90. package/squads/squad-commercial/agents/cs-client-success.md +15 -0
  91. package/squads/squad-commercial/agents/cs-crm-specialist.md +15 -0
  92. package/squads/squad-commercial/agents/cs-funnel-architect.md +15 -0
  93. package/squads/squad-commercial/agents/cs-lead-generation-strategist.md +15 -0
  94. package/squads/squad-commercial/agents/cs-offer-designer.md +15 -0
  95. package/squads/squad-commercial/agents/cs-revops-analyst.md +15 -0
  96. package/squads/squad-commercial/agents/cs-sales-closer.md +13 -0
  97. package/squads/squad-commercial/agents/cs-sales-enablement.md +15 -0
  98. package/squads/squad-content/agents/content-analyst.md +13 -0
  99. package/squads/squad-content/agents/content-engineer.md +15 -0
  100. package/squads/squad-content/agents/content-governor.md +13 -0
  101. package/squads/squad-content/agents/content-orqx.md +13 -0
  102. package/squads/squad-content/agents/editorial-strategist.md +15 -0
  103. package/squads/squad-content/agents/platform-specialist.md +15 -0
  104. package/squads/squad-content/agents/signal-intelligence.md +13 -0
  105. package/squads/squad-copy/agents/ad-copywriter.md +13 -0
  106. package/squads/squad-copy/agents/brand-voice-writer.md +15 -0
  107. package/squads/squad-copy/agents/conversion-writer.md +13 -0
  108. package/squads/squad-copy/agents/copy-editor.md +15 -0
  109. package/squads/squad-copy/agents/copy-orqx.md +13 -0
  110. package/squads/squad-copy/agents/copy-strategist.md +15 -0
  111. package/squads/squad-copy/agents/direct-response-writer.md +15 -0
  112. package/squads/squad-copy/agents/email-sequence-strategist.md +15 -0
  113. package/squads/squad-copy/agents/funnel-copywriter.md +15 -0
  114. package/squads/squad-copy/agents/headline-specialist.md +13 -0
  115. package/squads/squad-copy/agents/long-form-writer.md +15 -0
  116. package/squads/squad-copy/agents/persuasion-psychologist.md +15 -0
  117. package/squads/squad-copy/agents/proof-architect.md +15 -0
  118. package/squads/squad-council/agents/brene-brown.md +13 -0
  119. package/squads/squad-council/agents/charlie-munger.md +13 -0
  120. package/squads/squad-council/agents/council-orqx.md +13 -0
  121. package/squads/squad-council/agents/derek-sivers.md +13 -0
  122. package/squads/squad-council/agents/naval-ravikant.md +13 -0
  123. package/squads/squad-council/agents/patrick-lencioni.md +15 -0
  124. package/squads/squad-council/agents/peter-thiel.md +13 -0
  125. package/squads/squad-council/agents/ray-dalio.md +13 -0
  126. package/squads/squad-council/agents/reid-hoffman.md +13 -0
  127. package/squads/squad-council/agents/simon-sinek.md +15 -0
  128. package/squads/squad-council/agents/yvon-chouinard.md +13 -0
  129. package/squads/squad-courses/agents/assessment-creator.md +15 -0
  130. package/squads/squad-courses/agents/content-writer.md +15 -0
  131. package/squads/squad-courses/agents/courses-orqx.md +15 -0
  132. package/squads/squad-courses/agents/curriculum-designer.md +15 -0
  133. package/squads/squad-courses/agents/launch-strategist.md +15 -0
  134. package/squads/squad-courses/agents/lesson-architect.md +15 -0
  135. package/squads/squad-courses/agents/production-director.md +13 -0
  136. package/squads/squad-courses/agents/slide-designer.md +15 -0
  137. package/squads/squad-cybersecurity/agents/cloud-security-engineer.md +15 -0
  138. package/squads/squad-cybersecurity/agents/compliance-officer.md +15 -0
  139. package/squads/squad-cybersecurity/agents/cyber-orqx.md +15 -0
  140. package/squads/squad-cybersecurity/agents/incident-responder.md +15 -0
  141. package/squads/squad-cybersecurity/agents/network-security-engineer.md +15 -0
  142. package/squads/squad-cybersecurity/agents/penetration-tester.md +15 -0
  143. package/squads/squad-cybersecurity/agents/soc-analyst.md +15 -0
  144. package/squads/squad-cybersecurity/agents/threat-analyst.md +15 -0
  145. package/squads/squad-design/agents/cro-persuasion.md +15 -0
  146. package/squads/squad-design/agents/design-orqx.md +13 -0
  147. package/squads/squad-design/agents/design-system.md +15 -0
  148. package/squads/squad-design/agents/dx-accessibility-specialist.md +15 -0
  149. package/squads/squad-design/agents/dx-design-system-architect.md +15 -0
  150. package/squads/squad-design/agents/dx-frontend-engineer.md +15 -0
  151. package/squads/squad-design/agents/dx-interaction-designer.md +15 -0
  152. package/squads/squad-design/agents/dx-performance-engineer.md +15 -0
  153. package/squads/squad-design/agents/dx-ui-designer.md +15 -0
  154. package/squads/squad-design/agents/dx-ux-strategist.md +15 -0
  155. package/squads/squad-design/agents/platform-aesthetic-director.md +15 -0
  156. package/squads/squad-design/agents/premium-packaging-strategist.md +15 -0
  157. package/squads/squad-design/agents/product-surface-director.md +15 -0
  158. package/squads/squad-design/agents/ux-designer.md +15 -0
  159. package/squads/squad-finance/agents/budget-controller.md +15 -0
  160. package/squads/squad-finance/agents/cost-optimizer.md +15 -0
  161. package/squads/squad-finance/agents/finance-orqx.md +15 -0
  162. package/squads/squad-finance/agents/fiscal-compliance-br.md +15 -0
  163. package/squads/squad-finance/agents/forecast-strategist.md +15 -0
  164. package/squads/squad-finance/agents/pricing-strategist.md +15 -0
  165. package/squads/squad-finance/agents/profitability-analyst.md +15 -0
  166. package/squads/squad-finance/agents/revenue-analyst.md +15 -0
  167. package/squads/squad-growth/agents/ga-analytics-engineer.md +15 -0
  168. package/squads/squad-growth/agents/ga-campaign-analyst.md +15 -0
  169. package/squads/squad-growth/agents/ga-cro-specialist.md +15 -0
  170. package/squads/squad-growth/agents/ga-data-analyst.md +13 -0
  171. package/squads/squad-growth/agents/ga-growth-hacker.md +15 -0
  172. package/squads/squad-growth/agents/ga-seo-strategist.md +15 -0
  173. package/squads/squad-growth/agents/growth-orqx.md +15 -0
  174. package/squads/squad-paidmedia/agents/campaign-analyst.md +15 -0
  175. package/squads/squad-paidmedia/agents/creative-strategist.md +15 -0
  176. package/squads/squad-paidmedia/agents/cro-specialist.md +15 -0
  177. package/squads/squad-paidmedia/agents/google-ads-specialist.md +15 -0
  178. package/squads/squad-paidmedia/agents/meta-ads-specialist.md +15 -0
  179. package/squads/squad-paidmedia/agents/paidmedia-orqx.md +15 -0
  180. package/squads/squad-paidmedia/agents/performance-engineer.md +15 -0
  181. package/squads/squad-paidmedia/agents/pm-creative-performance-analyst.md +15 -0
  182. package/squads/squad-paidmedia/agents/pm-youtube-ads-specialist.md +15 -0
  183. package/squads/squad-product/agents/product-orqx.md +13 -1
  184. package/squads/squad-product/agents/ps-client-product-manager.md +13 -1
  185. package/squads/squad-product/agents/ps-delivery-manager.md +13 -1
  186. package/squads/squad-product/agents/ps-discovery-lead.md +15 -1
  187. package/squads/squad-product/agents/ps-product-analyst.md +15 -1
  188. package/squads/squad-product/agents/ps-product-ops-specialist.md +15 -1
  189. package/squads/squad-product/agents/ps-product-strategist.md +15 -1
  190. package/squads/squad-research/agents/audience-intelligence.md +15 -0
  191. package/squads/squad-research/agents/competitive-intelligence.md +15 -0
  192. package/squads/squad-research/agents/data-synthesizer.md +15 -0
  193. package/squads/squad-research/agents/deep-researcher.md +15 -0
  194. package/squads/squad-research/agents/market-analyst.md +15 -0
  195. package/squads/squad-research/agents/research-orqx.md +15 -0
  196. package/squads/squad-research/agents/trend-forecaster.md +15 -0
  197. package/squads/squad-storytelling/agents/blake-snyder.md +13 -0
  198. package/squads/squad-storytelling/agents/dan-harmon.md +13 -0
  199. package/squads/squad-storytelling/agents/joseph-campbell.md +13 -0
  200. package/squads/squad-storytelling/agents/keith-johnstone.md +13 -0
  201. package/squads/squad-storytelling/agents/kindra-hall.md +15 -0
  202. package/squads/squad-storytelling/agents/marshall-ganz.md +15 -0
  203. package/squads/squad-storytelling/agents/nancy-duarte.md +15 -0
  204. package/squads/squad-storytelling/agents/oren-klaff.md +15 -0
  205. package/squads/squad-storytelling/agents/park-howell.md +13 -0
  206. package/squads/squad-storytelling/agents/storytelling-orqx.md +13 -0
  207. package/.sinapse-ai/core/grounding/README.md +0 -83
  208. package/.sinapse-ai/core/grounding/brand.cjs +0 -29
  209. package/.sinapse-ai/core/grounding/config-loader.cjs +0 -52
  210. package/.sinapse-ai/core/grounding/design-system.cjs +0 -29
  211. package/.sinapse-ai/core/grounding/vault.cjs +0 -36
  212. package/.sinapse-ai/development/scripts/approval-workflow.js +0 -643
  213. package/.sinapse-ai/development/scripts/backup-manager.js +0 -607
  214. package/.sinapse-ai/development/scripts/branch-manager.js +0 -390
  215. package/.sinapse-ai/development/scripts/code-quality-improver.js +0 -1329
  216. package/.sinapse-ai/development/scripts/commit-message-generator.js +0 -850
  217. package/.sinapse-ai/development/scripts/conflict-resolver.js +0 -675
  218. package/.sinapse-ai/development/scripts/dependency-analyzer.js +0 -638
  219. package/.sinapse-ai/development/scripts/diff-generator.js +0 -352
  220. package/.sinapse-ai/development/scripts/git-wrapper.js +0 -462
  221. package/.sinapse-ai/development/scripts/modification-validator.js +0 -555
  222. package/.sinapse-ai/development/scripts/performance-analyzer.js +0 -758
  223. package/.sinapse-ai/development/scripts/refactoring-suggester.js +0 -1148
  224. package/.sinapse-ai/development/scripts/rollback-handler.js +0 -531
  225. package/.sinapse-ai/development/scripts/security-checker.js +0 -359
  226. package/.sinapse-ai/development/scripts/template-engine.js +0 -240
  227. package/.sinapse-ai/development/scripts/template-validator.js +0 -279
  228. package/.sinapse-ai/development/scripts/test-generator.js +0 -844
  229. package/.sinapse-ai/development/scripts/transaction-manager.js +0 -590
  230. package/.sinapse-ai/development/scripts/yaml-validator.js +0 -397
  231. package/.sinapse-ai/hooks/sinapse-brand-grounding.cjs +0 -162
  232. package/.sinapse-ai/hooks/sinapse-ds-grounding.cjs +0 -211
  233. package/.sinapse-ai/hooks/sinapse-vault-grounding.cjs +0 -194
  234. package/bin/lib/register-grounding-hooks.js +0 -145
  235. package/docs/guides/agents/traces/execution-traces.zip +0 -0
  236. package/docs/guides/grounding-setup.md +0 -154
  237. package/docs/guides/workflows/SINAPSE-WORKFLOWS.zip +0 -0
  238. package/packages/installer/src/pro/pro-scaffolder.js +0 -449
  239. package/packages/installer/src/wizard/grounding-config.js +0 -131
  240. package/packages/installer/src/wizard/pro-setup.js +0 -1439
  241. package/packages/installer/templates/README.md +0 -16
  242. package/packages/installer/templates/brand-routing.example.json +0 -12
  243. package/packages/installer/templates/ds-routing.example.json +0 -12
  244. package/packages/installer/templates/vault-routing.example.json +0 -12
@@ -28,6 +28,10 @@ const yaml = require('js-yaml');
28
28
  // Paths
29
29
  const ROOT_DIR = path.join(__dirname, '..', '..');
30
30
  const AGENTS_DIR = path.join(ROOT_DIR, 'development', 'agents');
31
+ // Squad agents live in the repo root under squads/<squad>/agents/*.md.
32
+ // ROOT_DIR is .sinapse-ai/; the repo root is one level up.
33
+ const REPO_ROOT = path.join(ROOT_DIR, '..');
34
+ const SQUADS_DIR = path.join(REPO_ROOT, 'squads');
31
35
  const TASKS_DIR = path.join(ROOT_DIR, 'development', 'tasks');
32
36
  const TEMPLATES_DIR = path.join(ROOT_DIR, 'development', 'templates');
33
37
  const CHECKLISTS_DIR = path.join(ROOT_DIR, 'development', 'checklists');
@@ -93,9 +97,10 @@ function extractYamlFromMarkdown(content) {
93
97
  }
94
98
 
95
99
  /**
96
- * Load all agent files
100
+ * Load the 12 CORE agents (development/agents/*.md).
101
+ * Core agents are held to the STRICT schema (problems -> errors).
97
102
  */
98
- async function loadAllAgents() {
103
+ async function loadCoreAgents() {
99
104
  const agents = [];
100
105
 
101
106
  try {
@@ -115,6 +120,8 @@ async function loadAllAgents() {
115
120
  commands: parsed.commands || [],
116
121
  dependencies: parsed.dependencies || {},
117
122
  parsed,
123
+ isCore: true,
124
+ tier: 'core',
118
125
  });
119
126
  }
120
127
  }
@@ -126,6 +133,100 @@ async function loadAllAgents() {
126
133
  return agents;
127
134
  }
128
135
 
136
+ /**
137
+ * Load the SQUAD agents (squads/<squad>/agents/*.md).
138
+ *
139
+ * Non-breaking by design: squad agents carry KNOWN pre-existing debt (3
140
+ * different definition formats, malformed frontmatter, missing roster
141
+ * entries) that later waves will fix. Here they are classified as WARNINGS,
142
+ * never errors — the only thing that can ERROR is an unreadable file.
143
+ *
144
+ * Each record is tagged isCore:false so the validators downgrade their
145
+ * findings to warnings.
146
+ */
147
+ async function loadSquadAgents() {
148
+ const agents = [];
149
+
150
+ let squadDirs;
151
+ try {
152
+ const entries = await fs.readdir(SQUADS_DIR, { withFileTypes: true });
153
+ squadDirs = entries.filter((e) => e.isDirectory()).map((e) => e.name);
154
+ } catch {
155
+ // No squads/ dir (e.g. a stripped checkout) -> nothing to add, not fatal.
156
+ return agents;
157
+ }
158
+
159
+ for (const squad of squadDirs) {
160
+ const agentsDir = path.join(SQUADS_DIR, squad, 'agents');
161
+ let files;
162
+ try {
163
+ files = await fs.readdir(agentsDir);
164
+ } catch {
165
+ continue; // squad without an agents/ dir -> skip
166
+ }
167
+
168
+ for (const file of files) {
169
+ if (!file.endsWith('.md') || file.startsWith('_')) continue;
170
+ const filePath = path.join(agentsDir, file);
171
+
172
+ let content;
173
+ try {
174
+ content = await fs.readFile(filePath, 'utf-8');
175
+ } catch (error) {
176
+ // Unreadable file is the ONE critical issue allowed to error for squads.
177
+ agents.push({
178
+ file: `${squad}/agents/${file}`,
179
+ path: filePath,
180
+ id: file.replace('.md', ''),
181
+ name: undefined,
182
+ commands: [],
183
+ dependencies: {},
184
+ parsed: null,
185
+ isCore: false,
186
+ tier: 'squad',
187
+ squad,
188
+ readError: error.message,
189
+ });
190
+ continue;
191
+ }
192
+
193
+ let parsed = null;
194
+ try {
195
+ parsed = extractYamlFromMarkdown(content);
196
+ } catch {
197
+ // Malformed frontmatter -> parsed stays null; surfaced as a WARNING.
198
+ parsed = null;
199
+ }
200
+
201
+ const agentBlock = parsed && parsed.agent ? parsed.agent : {};
202
+ agents.push({
203
+ file: `${squad}/agents/${file}`,
204
+ path: filePath,
205
+ id: agentBlock.id || file.replace('.md', ''),
206
+ name: agentBlock.name,
207
+ commands: (parsed && parsed.commands) || [],
208
+ dependencies: (parsed && parsed.dependencies) || {},
209
+ parsed,
210
+ isCore: false,
211
+ tier: 'squad',
212
+ squad,
213
+ parseFailed: parsed === null,
214
+ });
215
+ }
216
+ }
217
+
218
+ return agents;
219
+ }
220
+
221
+ /**
222
+ * Load all agent files (core + squad).
223
+ */
224
+ async function loadAllAgents() {
225
+ const core = await loadCoreAgents();
226
+ const squad = await loadSquadAgents();
227
+ return [...core, ...squad];
228
+ }
229
+
129
230
  /**
130
231
  * Check if a file exists
131
232
  */
@@ -171,21 +272,32 @@ function validateCommandUniqueness(agents) {
171
272
  agent: agent.id,
172
273
  file: agent.file,
173
274
  hasVisibility: cmd.visibility !== undefined,
275
+ isCore: agent.isCore === true,
174
276
  });
175
277
  }
176
278
  }
177
279
 
178
- // Check for duplicates
280
+ // Check for duplicates.
281
+ // A collision is an ERROR only when it is entirely between CORE agents
282
+ // (the strict, long-standing guarantee). Any collision that involves a
283
+ // SQUAD agent is downgraded to a WARNING — squad agents carry pre-existing
284
+ // naming debt that later waves will reconcile, and they must not break CI.
179
285
  for (const [cmd, owners] of commandOwners) {
180
286
  if (owners.length > 1 && !SHARED_COMMANDS.has(cmd)) {
181
287
  const ownerList = owners.map((o) => `@${o.agent}`).join(', ');
182
- errors.push({
288
+ const allCore = owners.every((o) => o.isCore);
289
+ const finding = {
183
290
  type: 'DUPLICATE_COMMAND',
184
291
  command: cmd,
185
292
  owners: owners.map((o) => o.agent),
186
293
  message: `Command "*${cmd}" has multiple owners: ${ownerList}`,
187
294
  suggestion: `Keep "*${cmd}" only in the primary owner agent and remove from others, or add to SHARED_COMMANDS if intentionally shared.`,
188
- });
295
+ };
296
+ if (allCore) {
297
+ errors.push(finding);
298
+ } else {
299
+ warnings.push(finding);
300
+ }
189
301
  }
190
302
  }
191
303
 
@@ -282,9 +394,37 @@ function validateAgentFormat(agents) {
282
394
  for (const agent of agents) {
283
395
  const { parsed, file, id } = agent;
284
396
 
397
+ // SQUAD agents: known pre-existing debt. Every structural problem here is
398
+ // a WARNING (never an error) so the 160 squad agents never break CI. The
399
+ // single exception (unreadable file) is handled earlier in the loader.
400
+ // CORE agents keep the strict behavior — structural problems are errors.
401
+ const sink = agent.isCore ? errors : warnings;
402
+
403
+ // Unreadable file is the ONLY truly-critical squad issue -> error.
404
+ if (agent.readError) {
405
+ errors.push({
406
+ type: 'UNREADABLE_AGENT',
407
+ agent: id,
408
+ message: `Cannot read agent file ${file}: ${agent.readError}`,
409
+ });
410
+ continue;
411
+ }
412
+
413
+ // A squad agent whose YAML didn't parse at all -> one consolidated warning,
414
+ // then skip the field-by-field checks (parsed is null).
415
+ if (!parsed || !parsed.agent) {
416
+ warnings.push({
417
+ type: 'UNPARSEABLE_AGENT',
418
+ agent: id,
419
+ message: `Could not parse agent definition in ${file} (no agent block / malformed frontmatter) — squad debt, later wave`,
420
+ suggestion: 'Normalize the agent frontmatter to the standard schema (agent.id/name/title).',
421
+ });
422
+ continue;
423
+ }
424
+
285
425
  // Check required fields
286
426
  if (!parsed.agent.id) {
287
- errors.push({
427
+ sink.push({
288
428
  type: 'MISSING_FIELD',
289
429
  agent: id,
290
430
  field: 'agent.id',
@@ -293,7 +433,7 @@ function validateAgentFormat(agents) {
293
433
  }
294
434
 
295
435
  if (!parsed.agent.name) {
296
- errors.push({
436
+ sink.push({
297
437
  type: 'MISSING_FIELD',
298
438
  agent: id,
299
439
  field: 'agent.name',
@@ -302,7 +442,7 @@ function validateAgentFormat(agents) {
302
442
  }
303
443
 
304
444
  if (!parsed.agent.title) {
305
- errors.push({
445
+ sink.push({
306
446
  type: 'MISSING_FIELD',
307
447
  agent: id,
308
448
  field: 'agent.title',
@@ -443,6 +583,10 @@ function formatResults(results, showSuggestions = false) {
443
583
  lines.push(' Summary');
444
584
  lines.push('━'.repeat(60));
445
585
  lines.push(` Agents validated: ${summary.totalAgents}`);
586
+ if (summary.coreAgents !== undefined) {
587
+ lines.push(` Core (strict): ${summary.coreAgents}`);
588
+ lines.push(` Squad (warn): ${summary.squadAgents}`);
589
+ }
446
590
  lines.push(` Errors: ${summary.totalErrors}`);
447
591
  lines.push(` Warnings: ${summary.totalWarnings}`);
448
592
  lines.push('');
@@ -487,12 +631,17 @@ async function validateAgents(options = {}) {
487
631
  dependencyValidation.warnings.length +
488
632
  formatValidation.warnings.length;
489
633
 
634
+ const coreAgents = agents.filter((a) => a.isCore);
635
+ const squadAgents = agents.filter((a) => !a.isCore);
636
+
490
637
  const results = {
491
638
  commandValidation,
492
639
  dependencyValidation,
493
640
  formatValidation,
494
641
  summary: {
495
642
  totalAgents: agents.length,
643
+ coreAgents: coreAgents.length,
644
+ squadAgents: squadAgents.length,
496
645
  totalErrors,
497
646
  totalWarnings,
498
647
  valid: totalErrors === 0,
@@ -545,6 +694,8 @@ module.exports = {
545
694
  validateDependencies,
546
695
  validateAgentFormat,
547
696
  loadAllAgents,
697
+ loadCoreAgents,
698
+ loadSquadAgents,
548
699
  };
549
700
 
550
701
  // Run CLI if called directly
@@ -7,9 +7,9 @@
7
7
  # - SHA256 hashes for change detection
8
8
  # - File types for categorization
9
9
  #
10
- version: 1.12.2
10
+ version: 1.14.0
11
11
  generator: scripts/generate-install-manifest.js
12
- file_count: 1181
12
+ file_count: 1147
13
13
  files:
14
14
  - path: cli/commands/config/index.js
15
15
  hash: sha256:bfa83cb1dc111b0b30dd298dc0abc2150b73f939b6cd4458effa8e6d407bc9e2
@@ -108,9 +108,9 @@ files:
108
108
  type: cli
109
109
  size: 5039
110
110
  - path: cli/commands/pro/index.js
111
- hash: sha256:be706f637b3f54d882a8e1d3ee953a40c7ae7b94ca3bfcafdd4d6865d0526964
111
+ hash: sha256:3bf6709d9981201f3466fdf30f8f36e2a7585282d590550e44ef475248d01972
112
112
  type: cli
113
- size: 22145
113
+ size: 20545
114
114
  - path: cli/commands/qa/audit.js
115
115
  hash: sha256:e177f5eb9cbf3ce4b6decbc24b8c171633aa6cb8506d393a3d4b12d3cc475882
116
116
  type: cli
@@ -563,26 +563,6 @@ files:
563
563
  hash: sha256:3a171bf985b7deb1a30abd9c28f5d339cc3bc2f5c94f0efc444ee3597acc47c3
564
564
  type: core
565
565
  size: 3600
566
- - path: core/grounding/brand.cjs
567
- hash: sha256:05e1e8b8a7415885ba5709189aa26fe0bc0bd97478e3f87d685592427fa08c5f
568
- type: core
569
- size: 884
570
- - path: core/grounding/config-loader.cjs
571
- hash: sha256:bab7222b546570e124e8dd986b94b7cb3ddcbf3a9ab7d9c4c9e56ada5896ffc7
572
- type: core
573
- size: 1555
574
- - path: core/grounding/design-system.cjs
575
- hash: sha256:369bff34d0d507486ab4fa005b46a4c4f3f73e4ad35571241a6b9ad9d258fcc9
576
- type: core
577
- size: 938
578
- - path: core/grounding/README.md
579
- hash: sha256:ce4b0e0cef09f1eb337dd3aa321b5b48fe3c82dac0ea2dfa580edd9197cf7892
580
- type: core
581
- size: 3549
582
- - path: core/grounding/vault.cjs
583
- hash: sha256:9254360614fd3625479465a04e34f14a8e11cfe8adb5cea75386c0597ac9ae8d
584
- type: core
585
- size: 1259
586
566
  - path: core/health-check/base-check.js
587
567
  hash: sha256:1d322d1bd5cbb4cb4834165e795691fe761e0d84a208d4f4db1b839fa9b01dec
588
568
  type: core
@@ -1364,9 +1344,9 @@ files:
1364
1344
  type: data
1365
1345
  size: 9602
1366
1346
  - path: data/entity-registry.yaml
1367
- hash: sha256:4d8f1c23bf4240a845ab90b7b82092e7c5022ff0e1d583900b750d95f44ffe0b
1347
+ hash: sha256:8b5182998467ccf39613571300eb714e7bdd1f51e0f031582cadaf44fcdf555a
1368
1348
  type: data
1369
- size: 558883
1349
+ size: 547889
1370
1350
  - path: data/learned-patterns.yaml
1371
1351
  hash: sha256:1a4cd045c087b9dfd7046ff1464a9d2edb85fba77cf0b6fba14f4bb9004c741e
1372
1352
  type: data
@@ -1471,90 +1451,50 @@ files:
1471
1451
  hash: sha256:25c833e36babf8b227321d40105d069fca29e301a4ecedcd7a74ba8dace625b0
1472
1452
  type: agent
1473
1453
  size: 16361
1474
- - path: development/agents/analyst/MEMORY.md
1475
- hash: sha256:1c0f22927a27f6b4446b74253747db214e78456bde7343fe98300b7106858025
1476
- type: agent
1477
- size: 1257
1478
1454
  - path: development/agents/architect.md
1479
1455
  hash: sha256:43fa59df34a2cd7cc68c8496da7b41d6f65fe0a7a05bd1c0cee2395c0ec5aedb
1480
1456
  type: agent
1481
1457
  size: 25192
1482
- - path: development/agents/architect/MEMORY.md
1483
- hash: sha256:6ce3f0187f34b9d9cd97fbc744f9eb33efb08cff48b64528ffce2dd08d453c09
1484
- type: agent
1485
- size: 1395
1486
1458
  - path: development/agents/data-engineer.md
1487
1459
  hash: sha256:c411c75db1c8a67385af3ea1e46d862cfced843f38881004bca801b432f1b16a
1488
1460
  type: agent
1489
1461
  size: 24405
1490
- - path: development/agents/data-engineer/MEMORY.md
1491
- hash: sha256:91b84ee63dafd3fbeec8d00744752753d1a74acdd3a6b398f26db6662d2babf3
1492
- type: agent
1493
- size: 1110
1494
1462
  - path: development/agents/developer.md
1495
1463
  hash: sha256:05e2e6362f95eb66c80e4f01dcb25232e283666c2195ec070e1bb59cc486ecb2
1496
1464
  type: agent
1497
1465
  size: 29832
1498
- - path: development/agents/developer/MEMORY.md
1499
- hash: sha256:98e00ca0bd5b0b2fdfbcf8ad52256dd7f73df6236e2098618d63fae97652949a
1500
- type: agent
1501
- size: 2493
1502
1466
  - path: development/agents/devops.md
1503
1467
  hash: sha256:81144f100a7ea8ef339a51691d32e7c480e24fef6ab4c3276e927568ba6ba0e4
1504
1468
  type: agent
1505
1469
  size: 28149
1506
- - path: development/agents/devops/MEMORY.md
1507
- hash: sha256:c9c574566f3ab627135219eefb2e0039169016f4f0a8605b02593d0cfd38f071
1508
- type: agent
1509
- size: 1403
1510
1470
  - path: development/agents/product-lead.md
1511
1471
  hash: sha256:a6427801bc1ab8af034d7ca64a9992c918d340503e34105844c657f212b547e7
1512
1472
  type: agent
1513
1473
  size: 16213
1514
- - path: development/agents/product-lead/MEMORY.md
1515
- hash: sha256:148c843a490e35e89d5fac74cea9beafb2fc4055aa9bbf52505ab383b265360f
1516
- type: agent
1517
- size: 1398
1518
1474
  - path: development/agents/project-lead.md
1519
1475
  hash: sha256:be876cef505639e7cf4fdfd82028bb61be459f6a2fbca72ce8cb83836ef4c594
1520
1476
  type: agent
1521
1477
  size: 18587
1522
- - path: development/agents/project-lead/MEMORY.md
1523
- hash: sha256:b7b754e37419cb605871920283decde2c01125c5f641f90afe569491838cf5e3
1524
- type: agent
1525
- size: 1238
1526
1478
  - path: development/agents/quality-gate.md
1527
1479
  hash: sha256:bc99385b3aee34ed5234287f37b53dd57c1f59b7f4cf1bd401447da4562117d4
1528
1480
  type: agent
1529
1481
  size: 23745
1530
- - path: development/agents/quality-gate/MEMORY.md
1531
- hash: sha256:a17353257dc4dce493f6a87690c8ac8e8bbc1f0d71018f926277324c6a2869bb
1532
- type: agent
1533
- size: 1369
1534
1482
  - path: development/agents/snps-orqx.md
1535
- hash: sha256:ac7f931f107fe2adc020ef26f8ea0e1aba57dd0ba3d02bbff3b92e3ca6466368
1483
+ hash: sha256:313fd53fcb43bec1a0e0e1dc90867c6a6b3643e08a9a41e32e2fa86e090ce8ae
1536
1484
  type: agent
1537
- size: 41103
1485
+ size: 42694
1538
1486
  - path: development/agents/sprint-lead.md
1539
1487
  hash: sha256:572289b770cdbb0cff9ae2de4b2d19c38ce814fe978df397aa2794297f562c91
1540
1488
  type: agent
1541
1489
  size: 14441
1542
- - path: development/agents/sprint-lead/MEMORY.md
1543
- hash: sha256:12a5b03243b3dd6d8df71ae70cb74bd380f00ad892aa2aeffcd9ec6a447cebb0
1544
- type: agent
1545
- size: 2023
1546
1490
  - path: development/agents/squad-creator.md
1547
- hash: sha256:45326e5a21a8d0497f8164160c03db991ea8782300a8880ca46ec4df9835ac01
1491
+ hash: sha256:80fc6cdfd6d7102803a5c477d576cbfadf96990ffd8f6c7246047603f2a80d33
1548
1492
  type: agent
1549
- size: 16584
1493
+ size: 18180
1550
1494
  - path: development/agents/ux-design-expert.md
1551
1495
  hash: sha256:ef221c2ce9dc7b808feab65d04c80e5d0186fe3343e079404d761b1d9ff056a2
1552
1496
  type: agent
1553
1497
  size: 21931
1554
- - path: development/agents/ux/MEMORY.md
1555
- hash: sha256:315ac4d963d09f50c2686fdcb56fa4c34761b5097600f6a834a44cfacca12414
1556
- type: agent
1557
- size: 1078
1558
1498
  - path: development/checklists/agent-quality-gate.md
1559
1499
  hash: sha256:511d05a2df0e59f3503d882f61131703a5fcecb47d75f99b392086fc3a663433
1560
1500
  type: checklist
@@ -1663,10 +1603,6 @@ files:
1663
1603
  hash: sha256:e58ad5d52b329d335ee73245352ae545df19c8122e23f34750a6a75996ca9dc6
1664
1604
  type: script
1665
1605
  size: 5386
1666
- - path: development/scripts/approval-workflow.js
1667
- hash: sha256:3e0874ab55558dd39539dc1da7eea97c60f5797129165c385a01a699b1e98df0
1668
- type: script
1669
- size: 21560
1670
1606
  - path: development/scripts/audit-agent-config.js
1671
1607
  hash: sha256:fde7fba12b7b451109911d75ac7719c0c5f586bf81341fb0d79d4110be3750af
1672
1608
  type: script
@@ -1675,30 +1611,10 @@ files:
1675
1611
  hash: sha256:38cd58a782cc942481bcf1279bdb239c4ea760de0c6df7f5f09166110d6e8b19
1676
1612
  type: script
1677
1613
  size: 10019
1678
- - path: development/scripts/backup-manager.js
1679
- hash: sha256:04aee4ddce4943ae7457319cd57df9a4d592be641a007b79efde33273b0cdd90
1680
- type: script
1681
- size: 16666
1682
1614
  - path: development/scripts/batch-update-agents-session-context.js
1683
1615
  hash: sha256:5b301f24fd43c6054000cafae9e2457abd023aae1d80a6f65e43a1bf3ce07319
1684
1616
  type: script
1685
1617
  size: 2928
1686
- - path: development/scripts/branch-manager.js
1687
- hash: sha256:694c20fe8725e06e7f263a8d3ec19057aab1bfdf3820cf70c350e4c54523fffa
1688
- type: script
1689
- size: 11540
1690
- - path: development/scripts/code-quality-improver.js
1691
- hash: sha256:541d7028563a510020119967c3237dfcc84feb039d85bf790624a690c43c18e9
1692
- type: script
1693
- size: 40546
1694
- - path: development/scripts/commit-message-generator.js
1695
- hash: sha256:d97f1cac89c86dfc489a5327bf3e2583ebcceef3b090887002367ee440abcf33
1696
- type: script
1697
- size: 25379
1698
- - path: development/scripts/conflict-resolver.js
1699
- hash: sha256:f27bbf2ce203c74634064b5d369aa90d506b364cabf2a303c911a849218b5c5d
1700
- type: script
1701
- size: 19189
1702
1618
  - path: development/scripts/decision-context.js
1703
1619
  hash: sha256:e9bfb559fbd9732f5ba3d25564ddfaec41d7d6c3cc719ceba5c750a637df14dc
1704
1620
  type: script
@@ -1715,26 +1631,14 @@ files:
1715
1631
  hash: sha256:aaeefc65620010f8ad22213595c833228d1037d2775e96dd1708d198040ae6a7
1716
1632
  type: script
1717
1633
  size: 5137
1718
- - path: development/scripts/dependency-analyzer.js
1719
- hash: sha256:39880d23a840dcc06d2e235e5e04417b435497f87acae8a57104c130be74e718
1720
- type: script
1721
- size: 18035
1722
1634
  - path: development/scripts/dev-context-loader.js
1723
1635
  hash: sha256:6de474e8311aa8f7f19494b6bf81287592f8f577b0c1a345b2e1a28e94b28171
1724
1636
  type: script
1725
1637
  size: 8238
1726
- - path: development/scripts/diff-generator.js
1727
- hash: sha256:d55d4a61ad34053338b29ecfbcf1d2547980ba884318c0752f7a9e3b22389460
1728
- type: script
1729
- size: 10668
1730
1638
  - path: development/scripts/generate-greeting.js
1731
1639
  hash: sha256:052b669917fe0934942cc85f613af8fe7302a9b7d70187c9558337bef3f9ec92
1732
1640
  type: script
1733
1641
  size: 3221
1734
- - path: development/scripts/git-wrapper.js
1735
- hash: sha256:172aa10616b1fb98a685af9afa81c85b09db3546176dc4a83cfdb06ca1015588
1736
- type: script
1737
- size: 11890
1738
1642
  - path: development/scripts/greeting-builder.js
1739
1643
  hash: sha256:293b89379a558837cfab65893130b638d6207079cde2d5252578089bb25732be
1740
1644
  type: script
@@ -1763,34 +1667,14 @@ files:
1763
1667
  hash: sha256:d6f3a03f975b01e4bf86b185228833e965145e3be10ce8a1d4e6cfc54c85b3f4
1764
1668
  type: script
1765
1669
  size: 9455
1766
- - path: development/scripts/modification-validator.js
1767
- hash: sha256:0bce67d53b19243654626bf53d754019011e327d037fdc7ca06bb0e1e1889022
1768
- type: script
1769
- size: 16489
1770
1670
  - path: development/scripts/pattern-learner.js
1771
1671
  hash: sha256:8fc513199884abdc7ac011fac381ba1bb695d43fa7d08a655951bf55754749f4
1772
1672
  type: script
1773
1673
  size: 35071
1774
- - path: development/scripts/performance-analyzer.js
1775
- hash: sha256:a28eb3b242415f6bb4252c2b1579723cd8c6a5dbb59549783ef9150baaa259c4
1776
- type: script
1777
- size: 23414
1778
1674
  - path: development/scripts/populate-entity-registry.js
1779
1675
  hash: sha256:2232bebc783c13e222c7b80713eae016343406ab2a878b0c6950b0691202d8c1
1780
1676
  type: script
1781
1677
  size: 25928
1782
- - path: development/scripts/refactoring-suggester.js
1783
- hash: sha256:66bf0be38efb417619e652c690d41337202dae7defa454bec73b010b05bb6db4
1784
- type: script
1785
- size: 35228
1786
- - path: development/scripts/rollback-handler.js
1787
- hash: sha256:c79a84fa3b4bc86b6e26f994039555a854063c0f036b0b08d7ce2c32a2134c7e
1788
- type: script
1789
- size: 16563
1790
- - path: development/scripts/security-checker.js
1791
- hash: sha256:b1ccf2428b623bdb3bac364ed92092fe55a8ec8a4fb5f086a0ad1b140fe69d25
1792
- type: script
1793
- size: 9524
1794
1678
  - path: development/scripts/skill-validator.js
1795
1679
  hash: sha256:9e8decda5a7bf73f05772ba0a315931b55bc61e333efea16901c5170752fb297
1796
1680
  type: script
@@ -1859,26 +1743,10 @@ files:
1859
1743
  hash: sha256:c4c46498b93e3ddf268648735e8059edbc6c84b21ef7675ba1557fa8cc856bcb
1860
1744
  type: script
1861
1745
  size: 3986
1862
- - path: development/scripts/template-engine.js
1863
- hash: sha256:d4143c5ec5fb4238e4d86a7cdbae610787f7647117bd5ed76cf61cfd7792cdb7
1864
- type: script
1865
- size: 6961
1866
- - path: development/scripts/template-validator.js
1867
- hash: sha256:f08cc27cbcc2990df0eb48f0aa677f196949b5a6c82c1837d0fdff0c7684f39f
1868
- type: script
1869
- size: 8335
1870
- - path: development/scripts/test-generator.js
1871
- hash: sha256:55dc8708ad43492fa886dfb1bbb8f9c25138f49a1d4e3a310f30ee30574050aa
1872
- type: script
1873
- size: 24943
1874
1746
  - path: development/scripts/test-greeting-system.js
1875
1747
  hash: sha256:eb0379edc43f6a448138420cda25b1685caaa8e5d2884afee27766a525e92f5d
1876
1748
  type: script
1877
1749
  size: 5563
1878
- - path: development/scripts/transaction-manager.js
1879
- hash: sha256:4df7b626b5d29c0527e265451099e65ab2aa004534259cf094695f5d71eac620
1880
- type: script
1881
- size: 17614
1882
1750
  - path: development/scripts/unified-activation-pipeline.js
1883
1751
  hash: sha256:9ac8eabc4635500e9d10cebe52e2147f15366840b0a3f97313f17a61b95d1062
1884
1752
  type: script
@@ -1915,10 +1783,6 @@ files:
1915
1783
  hash: sha256:05226c7d3c27cf94ccd653686f3ce043c7b649fef753ce0f17ffb470cf01bd76
1916
1784
  type: script
1917
1785
  size: 25486
1918
- - path: development/scripts/yaml-validator.js
1919
- hash: sha256:b64ef84a6def84cc600aca2c04fedd1999be394cac017409231752ee9eb51f46
1920
- type: script
1921
- size: 10338
1922
1786
  - path: development/skills/captcha-handler.md
1923
1787
  hash: sha256:de3fcdf981a727a2b2efd532d4596bed50a0f2ba14c340bcd8b735ad7fab5876
1924
1788
  type: development
@@ -2836,9 +2700,9 @@ files:
2836
2700
  type: template
2837
2701
  size: 1106
2838
2702
  - path: development/templates/chrome-brain/knowledge-base/chrome-brain.md
2839
- hash: sha256:ed47917601edfe48153290ea57b3d367220ceba6b976e7222c2451af6b4a6566
2703
+ hash: sha256:4b73f2a5c680aa9260e7c66a0a222a6927a0032784ca803eb309816774a5de84
2840
2704
  type: template
2841
- size: 5923
2705
+ size: 5894
2842
2706
  - path: development/templates/chrome-brain/knowledge-base/claude-in-chrome.md
2843
2707
  hash: sha256:b91572e0ddf072f21546a8ee7b910c692e052ba87dc3a6eb829fe049d28180c2
2844
2708
  type: template
@@ -3440,9 +3304,9 @@ files:
3440
3304
  type: script
3441
3305
  size: 8847
3442
3306
  - path: infrastructure/scripts/ide-sync/index.js
3443
- hash: sha256:b2cb08dc1d0e7c6c22436c11f073cdaae9516b28a55ad5a454412e87aaf59bba
3307
+ hash: sha256:86578adee8ec6fd5cc7a38d70ea04984d4c7bdb717126c21e0cc32b044c4c5c9
3444
3308
  type: script
3445
- size: 18011
3309
+ size: 18770
3446
3310
  - path: infrastructure/scripts/ide-sync/persona-renderer.js
3447
3311
  hash: sha256:44f76be1e48c4a6271d8c721687d8788d2317a1163d74731abfe97f36775334d
3448
3312
  type: script
@@ -3684,9 +3548,9 @@ files:
3684
3548
  type: script
3685
3549
  size: 18249
3686
3550
  - path: infrastructure/scripts/validate-agents.js
3687
- hash: sha256:1fb818950cfa60c572cdc63b5f822ffe9b0a11d351d136f2373bffb24eef99e8
3551
+ hash: sha256:62f4f46fa2117f633b96b42be5fcf0448cf56408998affee6728e798c8014733
3688
3552
  type: script
3689
- size: 16777
3553
+ size: 21894
3690
3554
  - path: infrastructure/scripts/validate-claude-integration.js
3691
3555
  hash: sha256:fe5e85f257724ec86178d4ed0a4cc6ce4d98b5b093f707851852ae0d2469abad
3692
3556
  type: script
package/AGENTS.md CHANGED
@@ -29,8 +29,19 @@ SINAPSE is a meta-framework that orchestrates AI agents into specialized squads
29
29
 
30
30
  - **CLI First** -- All intelligence lives in the CLI. Dashboards observe, never control.
31
31
  - **4-Layer Boundary** -- L1 (core, immutable) / L2 (templates, extend-only) / L3 (config, mutable) / L4 (runtime, always modify).
32
- - **Documentation-First** -- No code without a validated story. Pipeline: Epic -> Story -> Validation -> Implementation.
33
- - **Constitution** -- 11 articles with automatic gates that block violations. See `.sinapse-ai/constitution.md`.
32
+ - **Documentation-First Development** -- No code without a validated story. Pipeline: Epic -> Story -> Validation -> Implementation.
33
+ - **Constitution** -- 11 articles with automatic gates that block violations (full text: `.sinapse-ai/constitution.md`):
34
+ - **I. CLI First** -- intelligence in the CLI; dashboards observe, never control.
35
+ - **II. Agent Authority** -- exclusive authorities (only @devops pushes/PRs/releases); no agent assumes another's role.
36
+ - **III. Documentation-First Development** -- no code without a validated story.
37
+ - **IV. No Invention** -- every spec statement traces to a requirement/research finding.
38
+ - **V. Quality First** -- lint, typecheck, tests and (when applicable) build must pass.
39
+ - **VI. Absolute Imports** -- prefer `@/` over relative paths.
40
+ - **VII. Ecosystem Metrics Accuracy** -- squad/agent counts must be exact across all docs.
41
+ - **VIII. Mandatory Delegation** -- orchestrators always delegate domain work to specialists.
42
+ - **IX. Safe Collaboration** -- branch + sync + secret-scan; never work directly on main.
43
+ - **X. Security & Data Protection** -- RLS, least privilege, secrets in env, LGPD compliance.
44
+ - **XI. Conservative Default** -- prefer the least-destructive action; deletions in protected paths need an explicit override.
34
45
 
35
46
  ### Project Structure
36
47