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
package/CHANGELOG.md CHANGED
@@ -1,8 +1,12 @@
1
- ## [1.12.2](https://github.com/caioimori/sinapse-ai/compare/1.12.1...1.12.2) (2026-06-21)
1
+ ## [1.14.0](https://github.com/caioimori/sinapse-ai/compare/1.13.0...1.14.0) (2026-06-24)
2
2
 
3
- ### Bug Fixes
3
+ ### Features
4
+
5
+ * **agents:** potencializa 170 agentes com a base de engenharia de software ([#278](https://github.com/caioimori/sinapse-ai/issues/278)) ([86a1578](https://github.com/caioimori/sinapse-ai/commit/86a15781a704ee809ed444224b0aefbb02d57f06)), closes [#264](https://github.com/caioimori/sinapse-ai/issues/264)
6
+
7
+ ### Maintenance
4
8
 
5
- * **agents:** zera warnings (3→0) + corrige ide-sync clobberando ponteiros codex ([#262](https://github.com/caioimori/sinapse-ai/issues/262)) ([05501e1](https://github.com/caioimori/sinapse-ai/commit/05501e1f7758d831e33030e3946ff728e4dfc230))
9
+ * **release:** sincroniza main com a v1.13.0 publicada (package.json + CHANGELOG) ([#277](https://github.com/caioimori/sinapse-ai/issues/277)) ([0c64e27](https://github.com/caioimori/sinapse-ai/commit/0c64e273dfe31ca06c4c72c91064f2a0e87b59ad))
6
10
 
7
11
  # Changelog
8
12
 
@@ -13,6 +17,61 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
13
17
 
14
18
  ## [Unreleased]
15
19
 
20
+ ## [1.13.0] — 2026-06-22 — 🧹 Limpeza profunda (varredura de 6 ondas) + munição de engenharia nos agents
21
+
22
+ > Minor release. Atualização segura via `npx sinapse-ai update`.
23
+
24
+ ### Features
25
+
26
+ - Injeta munição de engenharia de software nos 8 agents técnicos (#264).
27
+
28
+ ### Bug Fixes
29
+
30
+ - **Onda 1** — remove grounding público do install, corrige leaks pessoais, unifica wordmark "SINAPSE AI" (#266).
31
+ - **Onda 2** — torna os portões do framework reais (cobertura honesta) (#267).
32
+ - **Onda 3** — remove ~1.900 linhas de código morto (assistente "Pro") e conserta a regeneração de agents no `update` (#268).
33
+ - **Onda 4** — pacote enxuto (dist/sourcemap/zips fora do npm), config de release e footprint honesto no README (#269).
34
+ - **Onda 5 (segura)** — frontmatter de squad-product, hard-skip do Codex no ide-sync, gitignore defensivo (#270).
35
+ - **test** — conserta `test:health-check` (mocha→jest) e remove `mocha` órfão (#274).
36
+ - **release** — remove `@semantic-release/git` (incompatível com branch protection) (#276).
37
+
38
+ ### Refactoring
39
+
40
+ - **Onda 5-pesada** — remove ~11.6k linhas de cluster git duplicado morto em `development/scripts` (#271).
41
+
42
+ ### Documentation
43
+
44
+ - **Onda 6** — alinha a Constituição à realidade (build condicional, branch-protection solo, enforcement honesto) e religa 11 testes válidos (#272).
45
+ - Conserta o doctor `constitution-consistency` (CLAUDE.md + AGENTS.md citam os 10 artigos canônicos) (#273).
46
+ - README (PT+EN): badge de testes e contagem de health checks atualizados (#275).
47
+ - Atualiza triagem Dependabot — undici (#265).
48
+
49
+ ## [1.12.2] — 2026-06-21 — 🧹 Zera warnings de validação + conserta ponteiros Codex
50
+
51
+ > Patch de higiene. Atualização segura via `npx sinapse-ai update`.
52
+
53
+ ### Fixed
54
+
55
+ - **`validate:agents` 3 → 0 warnings**: artefatos residuais resolvidos em todos os homes canônicos.
56
+ - **`ide-sync` clobberando ponteiros Codex**: o sync de IDE sobrescrevia os ponteiros `.codex` indevidamente — corrigido para tocar apenas o espelho `.claude`.
57
+
58
+ ## [1.12.1] — 2026-06-20 — 📝 Higiene de validação + ortografia do README
59
+
60
+ > Patch de polimento. Atualização segura via `npx sinapse-ai update`.
61
+
62
+ ### Fixed
63
+
64
+ - **`validate-agents` 98 → 3 warnings**: resolução de artefatos em todos os homes canônicos.
65
+
66
+ ### Changed
67
+
68
+ - **README**: ortografia PT-BR completa + contagem de hooks consistente.
69
+ - **Guard de refs externas**: referência interna genericizada.
70
+
71
+ ### Documentation
72
+
73
+ - Entrada da v1.12.0 (hardening + conformidade) adicionada ao changelog.
74
+
16
75
  ## [1.12.0] — 2026-06-20 — 🛡️ Hardening + Conformidade
17
76
 
18
77
  > Maior release de robustez do framework até aqui: ~1 mês de hardening (auditoria clínica de 8 frentes + conformidade às diretrizes) entregue de uma vez. Sem breaking changes — atualização segura via `npx sinapse-ai update`.
@@ -44,6 +103,79 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
44
103
 
45
104
  - `undici` (dev) atualizado para corrigir vulnerabilidade HIGH dev-only. **0 vulnerabilidades em produção.**
46
105
 
106
+ ## [1.11.3] — 2026-06-19 — 🌐 Chrome Brain não abre mais a cada sessão
107
+
108
+ > Patch de UX. Atualização segura via `npx sinapse-ai update`.
109
+
110
+ ### Fixed
111
+
112
+ - **Chrome Brain**: removido o hook `SessionStart` que abria o browser em toda sessão.
113
+
114
+ ## [1.11.2] — 2026-06-18 — 🧼 Saída do install limpa
115
+
116
+ > Patch de UX. Atualização segura via `npx sinapse-ai update`.
117
+
118
+ ### Fixed
119
+
120
+ - **Install**: saída limpa — sem dumps, sem duplicação, branding calmo.
121
+
122
+ ## [1.11.1] — 2026-06-18 — 🔧 Dependabot + ide-sync + greeting
123
+
124
+ > Patch de manutenção. Atualização segura via `npx sinapse-ai update`.
125
+
126
+ ### Fixed
127
+
128
+ - **Greeting**: normalização de id longo do agente na sugestão de próximo-passo e no gating do modo assistido.
129
+ - **ide-sync**: commit do espelho `.claude` (squad orqx) para destravar o gate de paridade.
130
+
131
+ ### Security
132
+
133
+ - **Dependabot**: 9 alertas resolvidos (prod + dev) sem quebra de comportamento.
134
+
135
+ ## [1.11.0] — 2026-06-18 — 🚦 Pré-check de Node + mensagens honestas
136
+
137
+ > Atualização segura via `npx sinapse-ai update`.
138
+
139
+ ### Added
140
+
141
+ - **Pré-check de versão do Node** antes do install/init (falha rápido em runtime incompatível).
142
+
143
+ ### Fixed
144
+
145
+ - **Install**: mensagem de conclusão honesta (deps instaladas + contagem real de agentes).
146
+ - **Secret-scanner**: deixa de falso-positivar em labels de UI com a palavra "password".
147
+
148
+ ## [1.10.0] — 2026-06-18 — 🧭 CLI descobrível + guardas de drift
149
+
150
+ > Atualização segura via `npx sinapse-ai update`.
151
+
152
+ ### Added
153
+
154
+ - **`--help` completo**: todos os comandos do CLI ficam descobríveis, com guard de regressão.
155
+ - **Guard do Artigo VII**: protege a contagem de artigos da Constitution contra drift.
156
+
157
+ ### Fixed
158
+
159
+ - **Reinstall preserva arquivos L3 user-owned** (`core-config`, `MEMORY.md`).
160
+ - **Segurança**: eliminada interpolação de shell no `setx PATH` do install (Windows); 2 vulns moderadas corrigidas (`js-yaml`, `tar`).
161
+
162
+ ### Changed
163
+
164
+ - **README**: contagem da Constitution corrigida (10→11 artigos, 6→7 NON-NEGOTIABLE).
165
+
166
+ ### Tests
167
+
168
+ - Flakiness eliminado nos testes de orçamento de tempo do UAP bridge e do seed-metrics.
169
+
170
+ ## [1.9.1] — 2026-06-18 — 🩹 Correções pós-1.9.0
171
+
172
+ > Patch de correção da auditoria adversarial pós-1.9.0. Atualização segura via `npx sinapse-ai update`.
173
+
174
+ ### Fixed
175
+
176
+ - **Release**: `@semantic-release/git` removido temporariamente (a branch protegida rejeitava o push direto na main).
177
+ - Correções pontuais da auditoria adversarial pós-1.9.0.
178
+
47
179
  ## [1.9.0] — 2026-06-17 — 🧭 Refino Macro (E1–E9) + Paridade Codex
48
180
 
49
181
  > **Refino macro do framework em 9 etapas.** Invocação unificada `@sinapse`/`@snps`; remoção dos editores extras (foco Claude + Codex); medidor de tasks honesto; instalação/update reais; fusão `squad-artdir`→`squad-design` + aposentadoria de 7 chiefs (→ 17 squads · 172 agentes · 1200 tasks); feedback visual de orquestração na statusline; trava de git reativada; paridade Codex de fachada para real; pente-fino de segurança.
package/README.en.md CHANGED
@@ -391,7 +391,7 @@ npx sinapse-ai uninstall # Remove the framework from the project
391
391
 
392
392
  # Diagnostics
393
393
  npx sinapse-ai status # Installation state + list of squads
394
- npx sinapse-ai doctor # 12 health checks against the environment
394
+ npx sinapse-ai doctor # 16 health checks against the environment
395
395
  npx sinapse-ai doctor --fix # Auto-fix detected issues
396
396
  npx sinapse-ai doctor --json # Machine-readable output for CI
397
397
  npx sinapse-ai doctor --dry-run # Show what `--fix` would do without applying
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
3
3
  [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D18-green.svg)](https://nodejs.org/)
4
4
  [![CI](https://github.com/caioimori/sinapse-ai/actions/workflows/ci.yml/badge.svg)](https://github.com/caioimori/sinapse-ai/actions/workflows/ci.yml)
5
- [![Tests](https://img.shields.io/badge/tests-11014%20passed-success)](https://github.com/caioimori/sinapse-ai/actions/workflows/ci.yml)
5
+ [![Tests](https://img.shields.io/badge/tests-11397%20passed-success)](https://github.com/caioimori/sinapse-ai/actions/workflows/ci.yml)
6
6
  [![Constitution](https://img.shields.io/badge/Constitution-11%20articles-blueviolet)](.sinapse-ai/constitution.md)
7
7
 
8
8
  ```
@@ -39,26 +39,6 @@ O diferencial não é apenas a quantidade de agentes. É **governança real**: 1
39
39
 
40
40
  ---
41
41
 
42
- <!-- BEGIN GROUNDING (Story 10.47) -->
43
- ## Grounding semântico (opt-in, foundation pré-GA)
44
-
45
- Frameworks de agente assumem que o LLM já sabe o que importa no seu projeto. O SINAPSE-AI inverte: oferece **três canais opcionais** para ancorar o agente no seu contexto real — vault de notas, design system, brandbook. Configuração zero-overhead agora; injeção semântica completa entra nas próximas releases da linha 1.x.
46
-
47
- | Canal | Função na release atual | Injeção semântica |
48
- |-------|------------------------|-------------------|
49
- | **Vault** | Detecta `~/.claude/sinapse-ai-config.yaml`, valida schema e expõe o path do seu vault aos hooks shipados | Roadmap — próxima minor 1.x |
50
- | **Design System** | Mesma foundation: detecta DS configurado, expõe path. Quando ausente, agentes seguem defaults de alta qualidade | Roadmap — próxima minor 1.x |
51
- | **Brand** | Mesma foundation: detecta brandbook, expõe path. Quando ausente, agentes seguem tom neutro | Roadmap — próxima minor 1.x |
52
-
53
- **Por que configurar agora:** os 3 hooks já são shipados zero-overhead — sem config, `no-op` completo, zero ruído. Você define os paths uma vez via `npx sinapse-ai install`, e quando a injeção semântica entrar, ativa automaticamente. Nada de reconfigurar, nada de migrar.
54
-
55
- **Por que isso é diferencial:** outros frameworks de agente acoplam o grounding ao runtime do framework (te forçam a entrar no ecossistema deles). O SINAPSE-AI mantém o grounding como **camada opt-in declarativa** — você escolhe quando e o que ativar, em arquivo próprio, sem lock-in.
56
-
57
- Configuração detalhada: [`docs/guides/grounding-setup.md`](docs/guides/grounding-setup.md).
58
- <!-- END GROUNDING (Story 10.47) -->
59
-
60
- ---
61
-
62
42
  ## Quick Start
63
43
 
64
44
  ### 1. Instale
@@ -73,7 +53,7 @@ O wizard detecta seu ambiente, escolhe a IDE (Claude Code ou Codex) e instala os
73
53
 
74
54
  ```bash
75
55
  npx sinapse-ai status # Lista de squads + agentes instalados
76
- npx sinapse-ai doctor # 12 health checks contra o ambiente
56
+ npx sinapse-ai doctor # 16 health checks contra o ambiente
77
57
  ```
78
58
 
79
59
  Se algo estiver fora do lugar, `doctor --fix` corrige automaticamente.
@@ -87,7 +67,7 @@ Se algo estiver fora do lugar, `doctor --fix` corrige automaticamente.
87
67
 
88
68
  Pronto. Você tem 17 squads operando no seu terminal.
89
69
 
90
- > **Nota sobre `npm install`:** A partir da v10.0.0-rc.4, o SINAPSE roda um postinstall automático que sincroniza agents para o Claude Code, cria os diretórios de runtime (`.sinapse/handoffs/`, `.sinapse/scratchpad/`) e executa um health check rápido. Para desabilitar (CI, pipelines avançadas), defina `SINAPSE_SKIP_POSTINSTALL=1` antes do `npm install`, ou rode `npm install --ignore-scripts` (comportamento nativo do npm — nenhum postinstall é executado). Nesse caso, rode `sinapse doctor --fix` após a instalação para garantir que o ambiente esteja pronto.
70
+ > **Nota sobre `npm install`:** O SINAPSE roda um postinstall automático que sincroniza agents para o Claude Code, cria os diretórios de runtime (`.sinapse/handoffs/`, `.sinapse/scratchpad/`) e executa um health check rápido. Para desabilitar (CI, pipelines avançadas), defina `SINAPSE_SKIP_POSTINSTALL=1` antes do `npm install`, ou rode `npm install --ignore-scripts` (comportamento nativo do npm — nenhum postinstall é executado). Nesse caso, rode `sinapse doctor --fix` após a instalação para garantir que o ambiente esteja pronto.
91
71
 
92
72
  ---
93
73
 
@@ -99,7 +79,7 @@ Toda primeira instalação levanta objeções. Todas legítimas. Respondidas aqu
99
79
 
100
80
  Não. Cada projeto tem seu próprio `.sinapse-ai/` — assim como tem seu próprio `package.json` ou `node_modules/`. E isso **não é desperdício, é isolamento**.
101
81
 
102
- Tamanho real: `.sinapse-ai/` pesa ~500KB. Vinte projetos = 10MB. Menor que um único `node_modules/` de um projeto Next.js típico (300MB+). O custo de espaço é marginal. O ganho de isolamento é essencial.
82
+ Tamanho real: `.sinapse-ai/` pesa ~16MB. Vinte projetos 320MB equivalente a um único `node_modules/` de um projeto Next.js típico (300MB+), só que distribuído entre vinte projetos isolados. O custo de espaço é marginal. O ganho de isolamento é essencial.
103
83
 
104
84
  ### "Por que não instalar uma vez global e pronto?"
105
85
 
@@ -113,7 +93,7 @@ Porque projetos open source precisam ser **autocontidos**. Quando você comparti
113
93
 
114
94
  | Aspecto | Global | Local (recomendado) |
115
95
  |---------|:------:|:-------------------:|
116
- | Espaço em disco | Menor (1 cópia) | Maior (~500KB/projeto) |
96
+ | Espaço em disco | Menor (1 cópia) | Maior (~16MB/projeto) |
117
97
  | Versionamento per-project | Não | Sim |
118
98
  | Clone e funcionando | Não | Sim |
119
99
  | Rules customizadas por projeto | Não | Sim |
@@ -432,7 +412,7 @@ npx sinapse-ai uninstall # Remove o framework do projeto
432
412
 
433
413
  # Diagnóstico
434
414
  npx sinapse-ai status # Estado da instalação + lista de squads
435
- npx sinapse-ai doctor # 12 health checks contra o ambiente
415
+ npx sinapse-ai doctor # 16 health checks contra o ambiente
436
416
  npx sinapse-ai doctor --fix # Auto-corrige problemas detectados
437
417
  npx sinapse-ai doctor --json # Saída machine-readable para CI
438
418
  npx sinapse-ai doctor --dry-run # Mostra o que `--fix` faria sem aplicar
package/bin/cli.js CHANGED
@@ -40,10 +40,7 @@ const {
40
40
  detectInteractiveMode,
41
41
  isFirstRun,
42
42
  } = require('./lib/detection');
43
- const {
44
- promptLlmChoice,
45
- promptGroundingSections,
46
- } = require('./lib/prompts');
43
+ const { promptLlmChoice } = require('./lib/prompts');
47
44
  const { header } = require('./lib/header');
48
45
  const { cmdHelp } = require('./commands/help');
49
46
  const { cmdStatus, cmdList } = require('./commands/status');
@@ -86,8 +83,6 @@ module.exports = {
86
83
  // Story 10.46 — exported for tests
87
84
  detectInteractiveMode,
88
85
  isFirstRun,
89
- // Story 10.47 — exported for tests
90
- promptGroundingSections,
91
86
  };
92
87
 
93
88
  if (require.main === module) {
@@ -187,7 +182,7 @@ function runRouter() {
187
182
  // Story 10.46 — friendly hint on bare `npx sinapse-ai` for a fresh machine.
188
183
  header();
189
184
  const { BOLD, DIM } = require('./lib/constants');
190
- logger.always(`${BOLD} Bem-vindo ao SNPS AI!${NC}`);
185
+ logger.always(`${BOLD} Bem-vindo ao SINAPSE AI!${NC}`);
191
186
  logger.always(`${DIM} Detectei que ainda nao ha instalacao nesta maquina.${NC}`);
192
187
  logger.always('');
193
188
  logger.always(' Pra comecar, rode:');
@@ -22,7 +22,7 @@ const {
22
22
  NC,
23
23
  } = require('../lib/constants');
24
24
  const { header } = require('../lib/header');
25
- const { getSquads, getAgentFiles, extractAgentMeta } = require('../lib/squads');
25
+ const { getSquads, getAgentFiles } = require('../lib/squads');
26
26
  const {
27
27
  copyDirSync,
28
28
  rmDirSync,
@@ -34,13 +34,15 @@ const {
34
34
  detectInteractiveMode,
35
35
  warnNonInteractive,
36
36
  } = require('../lib/detection');
37
- const {
38
- promptLlmChoice,
39
- promptGroundingSections,
40
- } = require('../lib/prompts');
37
+ const { promptLlmChoice } = require('../lib/prompts');
41
38
  const { recordInstalledAgents } = require('./uninstall');
42
39
  const { verifyInstall } = require('./status');
43
- const { registerGroundingHooks, HOOK_FILENAMES } = require('../lib/register-grounding-hooks');
40
+ // generateCommandMd is re-exported below for backward-compat (update.js imports it
41
+ // from ./install). regenerateAgentCommands is the shared Phase 2 helper.
42
+ const {
43
+ generateCommandMd,
44
+ regenerateAgentCommands,
45
+ } = require('../lib/command-generator');
44
46
 
45
47
  // ── Global Install ───────────────────────────────────────────────────────────
46
48
 
@@ -63,7 +65,7 @@ async function cmdInstallGlobal(opts = {}) {
63
65
  logger.always(`${DIM} Use --force to wipe and reinstall fresh. Use --reconfigure to re-prompt language/LLM.${NC}`);
64
66
  logger.always('');
65
67
  } else {
66
- logger.always(`${BOLD} Bem-vindo ao SNPS AI!${NC}`);
68
+ logger.always(`${BOLD} Bem-vindo ao SINAPSE AI!${NC}`);
67
69
  logger.always(`${DIM} Vamos configurar seu copiloto de inteligencia artificial.${NC}`);
68
70
  logger.always('');
69
71
  }
@@ -144,11 +146,6 @@ async function cmdInstallGlobal(opts = {}) {
144
146
  }
145
147
  if (languageWasReused || llmWasReused) logger.always('');
146
148
 
147
- // Story 10.47 — grounding (vault / design system / brand) opt-in BYO.
148
- // Each section is independently optional; empty answer = skip = no-op hook.
149
- // Honors upsert + --reconfigure semantics established by Stories 10.20/10.35.
150
- await promptGroundingSections({ isUpsert, reconfigure });
151
-
152
149
  // Validate package + compute what will be installed (squads live in squads/).
153
150
  const squadsDir = path.join(ROOT, 'squads');
154
151
  const squads = getSquads(fs.existsSync(squadsDir) ? squadsDir : ROOT);
@@ -216,7 +213,7 @@ async function cmdInstallGlobal(opts = {}) {
216
213
  }
217
214
  }
218
215
 
219
- logger.always(`\n${BOLD}Instalando Sinapse globalmente...${NC}\n`);
216
+ logger.always(`\n${BOLD}Instalando SINAPSE AI globalmente...${NC}\n`);
220
217
 
221
218
  // Phase 1: Copy squads to ~/.sinapse/
222
219
  logger.always(`${CYAN}Phase 1:${NC} ${isUpsert ? 'Refreshing' : 'Copying'} squads to ~/.sinapse/`);
@@ -266,72 +263,14 @@ async function cmdInstallGlobal(opts = {}) {
266
263
  logger.always(` ${GREEN}OK${NC} sinapse (master, ${masterAgents} agents)`);
267
264
  }
268
265
 
269
- // Phase 2: Generate orqx commands
266
+ // Phase 2: Generate agent commands (shared with `update` via command-generator).
270
267
  logger.always(`\n${CYAN}Phase 2:${NC} Generating agent commands`);
271
- fs.mkdirSync(CLAUDE_COMMANDS_DIR, { recursive: true });
272
-
273
- // Clear old commands
274
- try {
275
- for (const f of fs.readdirSync(CLAUDE_COMMANDS_DIR)) {
276
- fs.unlinkSync(path.join(CLAUDE_COMMANDS_DIR, f));
277
- }
278
- } catch { /* dir may not exist on a fresh install */ }
279
-
280
- const sinapseBase = toForwardSlash(SINAPSE_HOME);
281
- const writtenAgents = new Set();
282
-
283
- // Generate commands for orqx agents from squads (dynamic paths, always correct)
284
- for (const squad of squads) {
285
- const squadPath = `${sinapseBase}/${squad.name}`;
286
- const agentsDir = path.join(SINAPSE_HOME, squad.name, 'agents');
287
- if (!fs.existsSync(agentsDir)) continue;
288
-
289
- // agent-invocation fix: generate a command/subagent for EVERY agent (not only -orqx),
290
- // so every specialist is invokable via @agent and /SINAPSE:agents:agent.
291
- const squadAgents = fs.readdirSync(agentsDir).filter(f => f.endsWith('.md'));
292
- for (const file of squadAgents) {
293
- const agentId = file.replace('.md', '');
294
- const meta = extractAgentMeta(path.join(agentsDir, file));
295
- const cmdContent = generateCommandMd(agentId, meta.name, meta.icon, squad.name, squadPath, file);
296
- fs.writeFileSync(path.join(CLAUDE_COMMANDS_DIR, `${agentId}.md`), cmdContent);
297
- writtenAgents.add(file);
298
- }
299
- }
300
-
301
- // Generate commands for sinapse/ orqx squad agents
302
- if (fs.existsSync(sinapseMasterDest)) {
303
- const masterAgentsDir = path.join(sinapseMasterDest, 'agents');
304
- if (fs.existsSync(masterAgentsDir)) {
305
- for (const file of fs.readdirSync(masterAgentsDir).filter(f => f.endsWith('.md'))) {
306
- if (writtenAgents.has(file)) continue;
307
- const agentId = file.replace('.md', '');
308
- const meta = extractAgentMeta(path.join(masterAgentsDir, file));
309
- const squadPath = `${sinapseBase}/sinapse`;
310
- const cmdContent = generateCommandMd(agentId, meta.name, meta.icon, 'sinapse', squadPath, file);
311
- fs.writeFileSync(path.join(CLAUDE_COMMANDS_DIR, `${agentId}.md`), cmdContent);
312
- writtenAgents.add(file);
313
- }
314
- }
315
- }
316
-
317
- // Master entry points (@sinapse, @snps, @sinapse-orqx, @snps-orqx) → rich Imperator stub.
318
- // Overwrites the generic command file for the orqx names and adds the short aliases the
319
- // user actually types. All four carry the baked-in greeting + auto-plan mandate.
320
- if (fs.existsSync(sinapseMasterDest)) {
321
- const masterSquadPath = `${sinapseBase}/sinapse`;
322
- const masterEntryPoints = [
323
- ['sinapse-orqx', 'sinapse-orqx.md'],
324
- ['snps-orqx', 'snps-orqx.md'],
325
- ['sinapse', 'sinapse-orqx.md'],
326
- ['snps', 'snps-orqx.md'],
327
- ];
328
- for (const [id, personaFile] of masterEntryPoints) {
329
- const personaPath = `${masterSquadPath}/agents/${personaFile}`;
330
- const stub = generateMasterStub(id, personaPath, masterSquadPath, squads);
331
- fs.writeFileSync(path.join(CLAUDE_COMMANDS_DIR, `${id}.md`), stub);
332
- writtenAgents.add(`${id}.md`);
333
- }
334
- }
268
+ const { writtenAgents } = regenerateAgentCommands({
269
+ sinapseHome: SINAPSE_HOME,
270
+ commandsDir: CLAUDE_COMMANDS_DIR,
271
+ squads,
272
+ sinapseMasterDest,
273
+ });
335
274
  logger.always(` ${GREEN}OK${NC} ${writtenAgents.size} total command files`);
336
275
 
337
276
  // Phase 2b: Install global agents based on LLM choice
@@ -407,39 +346,6 @@ async function cmdInstallGlobal(opts = {}) {
407
346
  logger.always(` ${CYAN}Last updated:${NC} ${meta.updatedAt}`);
408
347
  }
409
348
 
410
- // Phase 6b — Story GA-1.6: copy framework grounding hooks to a stable
411
- // location and register them in ~/.claude/settings.json. Idempotent and
412
- // non-destructive: existing personal hooks (user's vault-grounding,
413
- // terminal-bus, etc.) are preserved.
414
- if (llmChoice === 'claude-code' || llmChoice === 'both') {
415
- try {
416
- logger.always(`\n${CYAN}Phase 6b:${NC} Grounding hooks (vault / DS / brand)`);
417
- const srcHooksDir = path.join(ROOT, '.sinapse-ai', 'hooks');
418
- const destHooksDir = path.join(SINAPSE_HOME, 'hooks');
419
- fs.mkdirSync(destHooksDir, { recursive: true });
420
- let copied = 0;
421
- for (const hookName of HOOK_FILENAMES) {
422
- const src = path.join(srcHooksDir, hookName);
423
- if (!fs.existsSync(src)) continue;
424
- fs.copyFileSync(src, path.join(destHooksDir, hookName));
425
- copied++;
426
- }
427
- const settingsPath = path.join(HOME, '.claude', 'settings.json');
428
- const result = registerGroundingHooks({
429
- settingsPath,
430
- hooksDir: destHooksDir,
431
- notify: (msg) => logger.always(` ${DIM}${msg}${NC}`),
432
- });
433
- const summary = `${result.added.length} added, ${result.skipped.length} already present`;
434
- logger.always(` ${GREEN}OK${NC} ${copied} hook files copied — ${summary}`);
435
- if (result.errors.length > 0) {
436
- for (const err of result.errors) logger.always(` ${YELLOW}WARN${NC} ${err}`);
437
- }
438
- } catch (error) {
439
- logger.always(` ${YELLOW}SKIP${NC} Grounding hooks: ${error.message}`);
440
- }
441
- }
442
-
443
349
  // Chrome Brain: Auto-install browser automation
444
350
  if (llmChoice === 'claude-code' || llmChoice === 'both') {
445
351
  try {
@@ -528,10 +434,10 @@ async function cmdInstallGlobal(opts = {}) {
528
434
 
529
435
  logger.always('');
530
436
  logger.always(`${GREEN}══════════════════════════════════════════════════════════════${NC}`);
531
- logger.always(`${GREEN} Sinapse installed successfully!${NC}`);
437
+ logger.always(`${GREEN} SINAPSE AI installed successfully!${NC}`);
532
438
  logger.always(`${GREEN}══════════════════════════════════════════════════════════════${NC}`);
533
439
  logger.always('');
534
- logger.always(` ${BOLD}${squads.length} squads${NC} | ${BOLD}${totalAgents} agents${NC} | ${BOLD}${writtenAgents.size} orqx commands${NC}`);
440
+ logger.always(` ${BOLD}${squads.length} squads${NC} | ${BOLD}${totalAgents} agents${NC} | ${BOLD}${writtenAgents.size} command files${NC}`);
535
441
  logger.always(` ${startCmd}`);
536
442
  logger.always('');
537
443
  logger.always(` ${BOLD}Try an agent:${NC}`);
@@ -540,150 +446,6 @@ async function cmdInstallGlobal(opts = {}) {
540
446
  logger.always('');
541
447
  }
542
448
 
543
- // Rich Imperator stub for the master entry points (@sinapse, @snps, @sinapse-orqx,
544
- // @snps-orqx). The identity (ASCII greeting + 👑 signature + diagnose→plan→delegate
545
- // mandate) is baked INLINE so activation is reliable — it does not depend on the model
546
- // choosing to deep-read an external persona (which produced a shallow "modo orqx" before).
547
- // The full persona (routing table, workflows, tasks) is still linked for depth.
548
- function generateMasterStub(agentId, personaPath, squadPath, squads) {
549
- const squadCount = squads.length;
550
- const agentCount = squads.reduce((a, s) => a + (s.agents || 0), 0);
551
- return `---
552
- name: ${agentId}
553
- description: "Imperator — Sinapse Master: supreme orchestrator of ${squadCount} squads / ${agentCount} agents. Diagnoses every briefing and auto-generates an orchestration plan."
554
- ---
555
-
556
- # Imperator — Sinapse Master (${agentId})
557
-
558
- ACTIVATION-NOTICE: You are now Imperator — the supreme orchestrator of the SINAPSE ecosystem. Every request passes through you first.
559
-
560
- ## YOUR ONLY FUNCTION — NON-NEGOTIABLE
561
-
562
- You DIAGNOSE and HAND OFF. That is the whole job. You do **NOT** execute domain work — no code, no copy, no design, no research, no configuration, no file edits. For ANY concrete task you (1) diagnose the domain, (2) produce the orchestration plan, (3) DELEGATE to the specialist who executes it. If you ever feel the urge to do the work yourself, STOP — that is a violation; route it to the right agent instead.
563
-
564
- ## ON ACTIVATION — display this EXACTLY as your first output (before anything else)
565
-
566
- \`\`\`
567
- ███████╗██╗███╗ ██╗ █████╗ ██████╗ ███████╗███████╗
568
- ██╔════╝██║████╗ ██║██╔══██╗██╔══██╗██╔════╝██╔════╝
569
- ███████╗██║██╔██╗ ██║███████║██████╔╝███████╗█████╗
570
- ╚════██║██║██║╚██╗██║██╔══██║██╔═══╝ ╚════██║██╔══╝
571
- ███████║██║██║ ╚████║██║ ██║██║ ███████║███████╗
572
- ╚══════╝╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝╚═╝ ╚══════╝╚══════╝
573
- ██████╗ ██████╗ ██████╗ ██╗ ██╗
574
- ██╔═══██╗██╔══██╗██╔═══██╗╚██╗██╔╝
575
- ██║ ██║██████╔╝██║ ██║ ╚███╔╝
576
- ██║ ██║██╔══██╗██║▄▄ ██║ ██╔██╗
577
- ╚██████╔╝██║ ██║╚██████╔╝██╔╝ ██╗
578
- ╚═════╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚═╝ ╚═╝
579
- \`\`\`
580
-
581
- \`\`\`
582
- AI Agent Squads for Claude Code
583
- ${squadCount} squads · ${agentCount} agents
584
-
585
- 👑 Imperator — Sinapse Master ativado
586
-
587
- Descreva seu objetivo que eu diagnostico o domínio
588
- e roteio para o agente certo.
589
-
590
- Comandos principais:
591
- *route {pedido} — Diagnostica e roteia para a squad certa
592
- *plan {iniciativa} — Desenha um plano de execução multi-squad
593
- *status — Reporta todas as squads e capacidades
594
- *onboard — Tour guiado do ecossistema SINAPSE
595
- *help — Mostra todos os comandos
596
- \`\`\`
597
-
598
- ## AFTER THE GREETING — NON-NEGOTIABLE (Imperator's core function)
599
-
600
- Check if the user provided a briefing with the activation:
601
- - **Briefing provided** → proceed IMMEDIATELY: run the Initial State Audit → classify the request → produce an ORCHESTRATION PLAN (phases + squads + specific agents assigned + handoffs) → delegate to the specialists. NEVER ask "do you want me to plan?" — for Imperator the answer is always YES.
602
- - **Bare activation** → await the briefing, then apply the same flow automatically on receipt.
603
-
604
- You diagnose and DELEGATE — never execute domain work yourself. Route simple, well-defined requests directly to @specialist; complex ones to @{domain}-orqx; cross-domain ones by coordinating multiple orchestrators.
605
-
606
- ## FULL OPERATING PARAMETERS
607
-
608
- For your complete persona — the routing table of all squads, the Initial State Audit, the Documentation-First gate, NSN enforcement, and every workflow and task — read and ADOPT:
609
- \`${personaPath}\`
610
- Tasks: \`${squadPath}/tasks/\` · Workflows: \`${squadPath}/workflows/\` · Manifest: \`${squadPath}/squad.yaml\`
611
-
612
- — Imperator, orchestrating SINAPSE
613
- `;
614
- }
615
-
616
- function generateCommandMd(agentId, agentName, agentIcon, squadName, squadPath, agentFile) {
617
- // Detecta se é orquestrador: id termina em -orqx OU é Imperator (snps-orqx/sinapse-orqx)
618
- // ou um dos apelidos curtos do master (sinapse/snps).
619
- const isOrchestrator = /-orqx$/.test(agentId) || agentId === 'snps-orqx' || agentId === 'sinapse-orqx' || agentId === 'sinapse' || agentId === 'snps';
620
-
621
- const step4 = isOrchestrator
622
- ? `4. Briefing-on-activation check (this agent is an ORCHESTRATOR):
623
- - If user provided briefing/context with the activation → proceed IMMEDIATELY: absorb → diagnose → plan with phases + agents + handoffs → execute (YOLO). NEVER ask "do you want me to plan?".
624
- - If bare activation only → await briefing. On receipt, apply same flow automatically.`
625
- : '4. HALT and await user input';
626
-
627
- const step6 = isOrchestrator
628
- ? `6. Briefing-on-activation check (ORCHESTRATOR):
629
- - If user provided briefing → proceed IMMEDIATELY: absorb → diagnose → plan → execute
630
- - If bare activation → await briefing, then plan automatically. NEVER ask "do you want me to plan?".`
631
- : '6. HALT and await user input';
632
-
633
- // Frontmatter (name + description) is REQUIRED so the file resolves as a Claude Code
634
- // subagent (@id) — without it, @id matches nothing. The same file doubles as a slash
635
- // command (/SINAPSE:agents:id); extra frontmatter is harmless there.
636
- const fmDesc = (isOrchestrator
637
- ? `${agentName || agentId} — orchestrator for ${squadName}; diagnoses, routes to specialists and auto-generates an orchestration plan`
638
- : `${agentName || agentId} — ${squadName} specialist`).replace(/["\n\r]/g, ' ').trim();
639
-
640
- return `---
641
- name: ${agentId}
642
- description: "${fmDesc}"
643
- ---
644
-
645
- # ${agentId}
646
-
647
- ACTIVATION-NOTICE: This command activates an agent from ${squadName}.
648
-
649
- CRITICAL: Read the agent definition file at \`${squadPath}/agents/${agentFile}\` to understand your full operating parameters. Then:
650
- 1. Adopt the persona defined in that file (name: ${agentName}, icon: ${agentIcon})
651
- 2. Load the squad manifest at \`${squadPath}/squad.yaml\` for context
652
- 3. Display a greeting showing your agent name, role, and available commands
653
- ${step4}
654
-
655
- ## Agent Reference
656
- - **Agent ID:** ${agentId}
657
- - **Squad:** ${squadName}
658
- - **Definition:** \`${squadPath}/agents/${agentFile}\`
659
- - **Squad Manifest:** \`${squadPath}/squad.yaml\`
660
- - **Tasks:** \`${squadPath}/tasks/\`
661
- - **Knowledge Bases:** \`${squadPath}/knowledge-base/\`
662
- - **Workflows:** \`${squadPath}/workflows/\`
663
-
664
- ## Activation Instructions
665
- 1. Read the full agent definition: \`${squadPath}/agents/${agentFile}\`
666
- 2. Adopt the persona (name, icon, communication style, principles)
667
- 3. Show greeting: "{icon} {name} — {role} ativado"
668
- 4. Show: "Squad: ${squadName} | Invoke: /SINAPSE:agents:${agentId}"
669
- 5. List your key tasks from the agent definition
670
- ${step6}
671
-
672
- ## How to Execute Tasks
673
- When the user requests a task:
674
- 1. Find the matching task in \`${squadPath}/tasks/\`
675
- 2. Read the task file completely
676
- 3. Execute following the task checklist step by step
677
- 4. Consult knowledge bases in \`${squadPath}/knowledge-base/\` as needed
678
-
679
- ## Cross-Squad Handoff
680
- If the task requires expertise outside this squad:
681
- 1. Identify which squad covers the needed domain
682
- 2. Recommend: /SINAPSE:agents:{appropriate-agent}
683
- 3. Provide handoff context
684
- `;
685
- }
686
-
687
449
  function generateSquadAwareness(sinapseDir, squads) {
688
450
  const rulesDir = path.join(sinapseDir, '.claude', 'rules');
689
451
  fs.mkdirSync(rulesDir, { recursive: true });