@jaimevalasek/aioson 1.7.0 → 1.8.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 (383) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/README.md +153 -10
  3. package/docs/en/cli-reference.md +56 -1
  4. package/docs/en/i18n.md +18 -18
  5. package/docs/en/schemas/index.json +10 -0
  6. package/docs/en/schemas/parallel-assign.schema.json +9 -0
  7. package/docs/en/schemas/parallel-doctor.schema.json +36 -0
  8. package/docs/en/schemas/parallel-guard.schema.json +63 -0
  9. package/docs/en/schemas/parallel-merge.schema.json +84 -0
  10. package/docs/en/schemas/parallel-status.schema.json +91 -1
  11. package/docs/integrations/apps-publish-marketplace.md +94 -0
  12. package/docs/pt/README.md +9 -0
  13. package/docs/pt/agentes.md +324 -3
  14. package/docs/pt/clientes-ai.md +7 -3
  15. package/docs/pt/comandos-cli.md +160 -13
  16. package/docs/pt/compress-agents.md +304 -0
  17. package/docs/pt/design-docs-governance.md +59 -0
  18. package/docs/pt/feature-archive.md +191 -0
  19. package/docs/pt/genome-3.0-spec.md +115 -4
  20. package/docs/pt/genome-distribution.md +232 -0
  21. package/docs/pt/inicio-rapido.md +1 -0
  22. package/docs/pt/motor-hardening.md +492 -0
  23. package/docs/pt/runner-system.md +113 -0
  24. package/package.json +2 -1
  25. package/src/agent-manifests.js +66 -0
  26. package/src/agents.js +27 -7
  27. package/src/autonomy-policy.js +139 -0
  28. package/src/brain-query.js +161 -0
  29. package/src/cli.js +1377 -1099
  30. package/src/commands/agents.js +102 -7
  31. package/src/commands/artifact-validate.js +33 -4
  32. package/src/commands/auth.js +272 -0
  33. package/src/commands/brain-query.js +44 -0
  34. package/src/commands/briefing.js +344 -0
  35. package/src/commands/commit-prepare.js +547 -0
  36. package/src/commands/compress-agents.js +416 -0
  37. package/src/commands/context-health.js +4 -2
  38. package/src/commands/context-trim.js +17 -11
  39. package/src/commands/design-hybrid-options.js +3 -3
  40. package/src/commands/devlog-process.js +6 -4
  41. package/src/commands/dossier.js +423 -0
  42. package/src/commands/feature-archive.js +513 -0
  43. package/src/commands/feature-close.js +123 -18
  44. package/src/commands/gate-approve.js +198 -0
  45. package/src/commands/gate-check.js +24 -5
  46. package/src/commands/genome-doctor.js +166 -9
  47. package/src/commands/git-guard.js +170 -0
  48. package/src/commands/harness.js +121 -0
  49. package/src/commands/implementation-plan.js +47 -20
  50. package/src/commands/init.js +6 -2
  51. package/src/commands/install.js +6 -2
  52. package/src/commands/live.js +497 -56
  53. package/src/commands/locale-apply.js +9 -6
  54. package/src/commands/locale-diff.js +11 -112
  55. package/src/commands/mcp-doctor.js +2 -1
  56. package/src/commands/mcp-init.js +4 -10
  57. package/src/commands/memory.js +234 -0
  58. package/src/commands/parallel-assign.js +107 -27
  59. package/src/commands/parallel-doctor.js +416 -3
  60. package/src/commands/parallel-guard.js +241 -0
  61. package/src/commands/parallel-init.js +66 -4
  62. package/src/commands/parallel-merge.js +299 -0
  63. package/src/commands/parallel-status.js +147 -3
  64. package/src/commands/preflight.js +63 -4
  65. package/src/commands/qa-init.js +10 -5
  66. package/src/commands/revision.js +235 -0
  67. package/src/commands/scaffold-complete.js +188 -0
  68. package/src/commands/security-audit.js +275 -0
  69. package/src/commands/security-scan.js +376 -0
  70. package/src/commands/self-implement-loop.js +46 -2
  71. package/src/commands/setup-context.js +11 -10
  72. package/src/commands/squad-agent-create.js +51 -9
  73. package/src/commands/squad-investigate.js +53 -0
  74. package/src/commands/squad-plan.js +33 -1
  75. package/src/commands/squad-scaffold.js +4 -3
  76. package/src/commands/squad-score.js +71 -14
  77. package/src/commands/squad-status.js +22 -1
  78. package/src/commands/squad-validate.js +93 -2
  79. package/src/commands/store-genome.js +304 -0
  80. package/src/commands/store-skill.js +247 -0
  81. package/src/commands/store-squad.js +431 -0
  82. package/src/commands/store-system.js +392 -0
  83. package/src/commands/tool-capabilities.js +63 -0
  84. package/src/commands/update.js +3 -3
  85. package/src/commands/verify-gate.js +40 -0
  86. package/src/commands/workflow-execute.js +644 -155
  87. package/src/commands/workflow-harden.js +231 -0
  88. package/src/commands/workflow-heal.js +136 -0
  89. package/src/commands/workflow-next.js +460 -22
  90. package/src/commands/workflow-status.js +328 -138
  91. package/src/commands/workspace.js +144 -0
  92. package/src/constants.js +55 -75
  93. package/src/context-memory.js +133 -4
  94. package/src/context-writer.js +2 -1
  95. package/src/context.js +32 -2
  96. package/src/doctor.js +46 -6
  97. package/src/dossier/codemap-store.js +267 -0
  98. package/src/dossier/dossier-bootstrap.js +222 -0
  99. package/src/dossier/dossier-compact.js +159 -0
  100. package/src/dossier/lock.js +128 -0
  101. package/src/dossier/revision-store.js +313 -0
  102. package/src/dossier/schema.js +155 -0
  103. package/src/dossier/store.js +400 -0
  104. package/src/execution-gateway.js +3 -0
  105. package/src/friction-scanner.js +202 -0
  106. package/src/genome-schema.js +24 -1
  107. package/src/genomes.js +33 -0
  108. package/src/handoff-contract.js +363 -0
  109. package/src/handoff-validator.js +45 -0
  110. package/src/harness/circuit-breaker.js +135 -0
  111. package/src/i18n/messages/en.js +317 -22
  112. package/src/i18n/messages/es.js +259 -18
  113. package/src/i18n/messages/fr.js +260 -18
  114. package/src/i18n/messages/pt-BR.js +313 -22
  115. package/src/install-profile.js +0 -16
  116. package/src/installer.js +70 -6
  117. package/src/lib/git-commit-guard.js +691 -0
  118. package/src/lib/security/artifact-reader.js +167 -0
  119. package/src/lib/security/exit-codes.js +51 -0
  120. package/src/lib/security/findings-writer.js +176 -0
  121. package/src/lib/security/runtime-events.js +77 -0
  122. package/src/lib/security/secrets-regex.js +115 -0
  123. package/src/lib/store/security-scan.js +173 -0
  124. package/src/lib/terminal-checkbox.js +130 -0
  125. package/src/lib/tmux-launcher.js +163 -0
  126. package/src/lib/tool-capabilities.js +102 -0
  127. package/src/locales.js +12 -8
  128. package/src/parallel-workspace.js +756 -0
  129. package/src/parser.js +8 -1
  130. package/src/path-guard.js +47 -0
  131. package/src/preflight-engine.js +237 -26
  132. package/src/self-healing.js +142 -0
  133. package/src/session-handoff.js +111 -1
  134. package/src/squad/squad-scaffold.js +183 -19
  135. package/src/test-briefing.js +226 -0
  136. package/src/updater.js +1 -1
  137. package/src/utils.js +3 -0
  138. package/src/workflow-gates.js +185 -0
  139. package/template/.aioson/agents/analyst.md +76 -130
  140. package/template/.aioson/agents/architect.md +53 -86
  141. package/template/.aioson/agents/committer.md +161 -0
  142. package/template/.aioson/agents/copywriter.md +463 -0
  143. package/template/.aioson/agents/cypher.md +252 -0
  144. package/template/.aioson/agents/dev.md +112 -600
  145. package/template/.aioson/agents/deyvin.md +33 -235
  146. package/template/.aioson/agents/discover.md +235 -0
  147. package/template/.aioson/agents/discovery-design-doc.md +17 -252
  148. package/template/.aioson/agents/genome.md +76 -26
  149. package/template/.aioson/agents/manifests/analyst.manifest.json +26 -0
  150. package/template/.aioson/agents/manifests/architect.manifest.json +23 -0
  151. package/template/.aioson/agents/manifests/committer.manifest.json +23 -0
  152. package/template/.aioson/agents/manifests/dev.manifest.json +37 -0
  153. package/template/.aioson/agents/manifests/orchestrator.manifest.json +30 -0
  154. package/template/.aioson/agents/manifests/pentester.manifest.json +39 -0
  155. package/template/.aioson/agents/manifests/pm.manifest.json +26 -0
  156. package/template/.aioson/agents/manifests/product.manifest.json +23 -0
  157. package/template/.aioson/agents/manifests/qa.manifest.json +25 -0
  158. package/template/.aioson/agents/manifests/setup.manifest.json +20 -0
  159. package/template/.aioson/agents/manifests/ux-ui.manifest.json +24 -0
  160. package/template/.aioson/agents/neo.md +10 -8
  161. package/template/.aioson/agents/orache.md +2 -6
  162. package/template/.aioson/agents/orchestrator.md +81 -182
  163. package/template/.aioson/agents/pentester.md +235 -0
  164. package/template/.aioson/agents/pm.md +40 -104
  165. package/template/.aioson/agents/product.md +99 -344
  166. package/template/.aioson/agents/profiler-enricher.md +57 -6
  167. package/template/.aioson/agents/profiler-forge.md +17 -7
  168. package/template/.aioson/agents/profiler-researcher.md +29 -6
  169. package/template/.aioson/agents/qa.md +165 -410
  170. package/template/.aioson/agents/setup.md +52 -262
  171. package/template/.aioson/agents/sheldon.md +122 -754
  172. package/template/.aioson/agents/site-forge.md +111 -1583
  173. package/template/.aioson/agents/squad.md +139 -1820
  174. package/template/.aioson/agents/tester.md +10 -0
  175. package/template/.aioson/agents/ux-ui.md +103 -645
  176. package/template/.aioson/agents/validator.md +69 -0
  177. package/template/.aioson/brains/scripts/query.js +5 -1
  178. package/template/.aioson/config/autonomy-protocol.json +43 -0
  179. package/template/.aioson/config.md +43 -15
  180. package/template/.aioson/constitution.md +36 -33
  181. package/template/.aioson/context/design-doc.md +136 -0
  182. package/template/.aioson/context/project-map.md +57 -0
  183. package/template/.aioson/design-docs/code-reuse.md +48 -0
  184. package/template/.aioson/design-docs/componentization.md +47 -0
  185. package/template/.aioson/design-docs/file-size.md +52 -0
  186. package/template/.aioson/design-docs/folder-structure.md +51 -0
  187. package/template/.aioson/design-docs/naming.md +54 -0
  188. package/template/.aioson/docs/LAYERS.md +12 -2
  189. package/template/.aioson/docs/dev/execution-discipline.md +106 -0
  190. package/template/.aioson/docs/dev/stack-conventions.md +83 -0
  191. package/template/.aioson/docs/deyvin/continuity-recovery.md +57 -0
  192. package/template/.aioson/docs/deyvin/debugging-escalation.md +30 -0
  193. package/template/.aioson/docs/deyvin/pair-execution.md +44 -0
  194. package/template/.aioson/docs/deyvin/runtime-handoffs.md +36 -0
  195. package/template/.aioson/docs/product/conversation-playbook.md +116 -0
  196. package/template/.aioson/docs/product/prd-contract.md +107 -0
  197. package/template/.aioson/docs/product/quality-lens.md +57 -0
  198. package/template/.aioson/docs/product/research-loop.md +65 -0
  199. package/template/.aioson/docs/sheldon/enrichment-paths.md +134 -0
  200. package/template/.aioson/docs/sheldon/quality-lens.md +57 -0
  201. package/template/.aioson/docs/sheldon/research-loop.md +56 -0
  202. package/template/.aioson/docs/sheldon/web-intelligence.md +75 -0
  203. package/template/.aioson/docs/site-forge-build.md +195 -0
  204. package/template/.aioson/docs/site-forge-extraction.md +135 -0
  205. package/template/.aioson/docs/site-forge-qa.md +155 -0
  206. package/template/.aioson/docs/site-forge-recon.md +434 -0
  207. package/template/.aioson/docs/site-forge-transform.md +249 -0
  208. package/template/.aioson/docs/squad/content-output.md +91 -0
  209. package/template/.aioson/docs/squad/creation-flow.md +135 -0
  210. package/template/.aioson/docs/squad/domain-classification.md +117 -0
  211. package/template/.aioson/docs/squad/genome-bindings.md +47 -0
  212. package/template/.aioson/docs/squad/package-contract.md +234 -0
  213. package/template/.aioson/docs/squad/quality-lens.md +56 -0
  214. package/template/.aioson/docs/squad/research-loop.md +59 -0
  215. package/template/.aioson/docs/squad/session-operations.md +117 -0
  216. package/template/.aioson/docs/squad/workflow-quality.md +165 -0
  217. package/template/.aioson/docs/ux-ui/accessibility-audit.md +55 -0
  218. package/template/.aioson/docs/ux-ui/audit-mode.md +86 -0
  219. package/template/.aioson/docs/ux-ui/component-map.md +35 -0
  220. package/template/.aioson/docs/ux-ui/design-execution.md +111 -0
  221. package/template/.aioson/docs/ux-ui/design-gate.md +27 -0
  222. package/template/.aioson/docs/ux-ui/research-mode.md +39 -0
  223. package/template/.aioson/docs/ux-ui/site-delivery.md +156 -0
  224. package/template/.aioson/docs/ux-ui/token-contract.md +57 -0
  225. package/template/.aioson/genomes/copywriting.md +204 -0
  226. package/template/.aioson/genomes/copywriting.meta.json +48 -0
  227. package/template/.aioson/git-guard.json +11 -0
  228. package/template/.aioson/mcp/servers.md +0 -1
  229. package/template/.aioson/rules/agent-language-policy.md +93 -0
  230. package/template/.aioson/rules/aioson-context-boundary.md +63 -0
  231. package/template/.aioson/rules/canonical-path-contract.md +47 -0
  232. package/template/.aioson/rules/data-format-convention.md +24 -86
  233. package/template/.aioson/rules/disk-first-artifacts.md +44 -0
  234. package/template/.aioson/rules/output-brevity.md +44 -0
  235. package/template/.aioson/rules/prd-section-ownership.md +49 -0
  236. package/template/.aioson/rules/security-baseline.md +139 -0
  237. package/template/.aioson/rules/spec-level-ownership.md +61 -0
  238. package/template/.aioson/rules/squad-driver-pattern.md +81 -0
  239. package/template/.aioson/schemas/squad-blueprint.schema.json +24 -0
  240. package/template/.aioson/schemas/squad-manifest.schema.json +44 -0
  241. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +2 -0
  242. package/template/.aioson/skills/marketing/references/anti-patterns.md +254 -0
  243. package/template/.aioson/skills/marketing/references/fascinations.md +192 -0
  244. package/template/.aioson/skills/marketing/references/five-acts.md +248 -0
  245. package/template/.aioson/skills/marketing/references/market-intelligence.md +198 -0
  246. package/template/.aioson/skills/marketing/references/offer-structure.md +203 -0
  247. package/template/.aioson/skills/marketing/references/one-belief.md +149 -0
  248. package/template/.aioson/skills/marketing/references/patterns.md +218 -0
  249. package/template/.aioson/skills/marketing/references/pms-research.md +193 -0
  250. package/template/.aioson/skills/marketing/vsl-craft.md +385 -0
  251. package/template/.aioson/skills/process/aioson-spec-driven/references/pm.md +30 -0
  252. package/template/.aioson/skills/process/secure-tdd/SKILL.md +97 -0
  253. package/template/.aioson/skills/process/secure-tdd/references/nextjs.md +81 -0
  254. package/template/.aioson/skills/process/secure-tdd/references/node-express.md +91 -0
  255. package/template/.aioson/skills/process/secure-tdd/references/planned-stacks.md +33 -0
  256. package/template/.aioson/skills/static/harness-validate/SKILL.md +46 -0
  257. package/template/.aioson/skills/static/landing-page-deploy.md +192 -0
  258. package/template/.aioson/skills/static/landing-page-forge.md +730 -0
  259. package/template/.aioson/skills/static/ui-ux-modern.md +1 -0
  260. package/template/.aioson/skills/static/web-research-cache.md +3 -0
  261. package/template/.aioson/tasks/squad-create.md +56 -7
  262. package/template/.aioson/tasks/squad-design.md +80 -2
  263. package/template/.aioson/tasks/squad-investigate.md +14 -1
  264. package/template/.aioson/templates/squads/digital-marketing-agency/template.json +96 -0
  265. package/template/.claude/commands/aioson/agent/committer.md +5 -0
  266. package/template/.claude/commands/aioson/agent/copywriter.md +5 -0
  267. package/template/.claude/commands/aioson/agent/cypher.md +5 -0
  268. package/template/.claude/commands/aioson/agent/pair.md +5 -0
  269. package/template/.claude/commands/aioson/agent/validator.md +5 -0
  270. package/template/.gemini/commands/aios-analyst.toml +6 -3
  271. package/template/.gemini/commands/aios-architect.toml +7 -6
  272. package/template/.gemini/commands/aios-committer.toml +7 -0
  273. package/template/.gemini/commands/aios-copywriter.toml +7 -0
  274. package/template/.gemini/commands/aios-cypher.toml +7 -0
  275. package/template/.gemini/commands/aios-dev.toml +8 -7
  276. package/template/.gemini/commands/aios-deyvin.toml +6 -5
  277. package/template/.gemini/commands/aios-discovery-design-doc.toml +6 -3
  278. package/template/.gemini/commands/aios-genome.toml +7 -0
  279. package/template/.gemini/commands/aios-neo.toml +5 -3
  280. package/template/.gemini/commands/aios-orache.toml +7 -0
  281. package/template/.gemini/commands/aios-orchestrator.toml +8 -7
  282. package/template/.gemini/commands/aios-pair.toml +6 -5
  283. package/template/.gemini/commands/aios-pm.toml +8 -7
  284. package/template/.gemini/commands/aios-product.toml +5 -3
  285. package/template/.gemini/commands/aios-qa.toml +6 -5
  286. package/template/.gemini/commands/aios-setup.toml +5 -2
  287. package/template/.gemini/commands/aios-sheldon.toml +7 -0
  288. package/template/.gemini/commands/aios-site-forge.toml +7 -0
  289. package/template/.gemini/commands/aios-squad.toml +7 -0
  290. package/template/.gemini/commands/aios-tester.toml +6 -5
  291. package/template/.gemini/commands/aios-ux-ui.toml +8 -7
  292. package/template/.gemini/commands/aios-validator.toml +7 -0
  293. package/template/AGENTS.md +12 -1
  294. package/template/CLAUDE.md +6 -1
  295. package/template/.aioson/locales/en/agents/analyst.md +0 -244
  296. package/template/.aioson/locales/en/agents/architect.md +0 -245
  297. package/template/.aioson/locales/en/agents/dev.md +0 -397
  298. package/template/.aioson/locales/en/agents/deyvin.md +0 -137
  299. package/template/.aioson/locales/en/agents/discovery-design-doc.md +0 -27
  300. package/template/.aioson/locales/en/agents/genome.md +0 -212
  301. package/template/.aioson/locales/en/agents/neo.md +0 -8
  302. package/template/.aioson/locales/en/agents/orache.md +0 -6
  303. package/template/.aioson/locales/en/agents/orchestrator.md +0 -189
  304. package/template/.aioson/locales/en/agents/pair.md +0 -5
  305. package/template/.aioson/locales/en/agents/pm.md +0 -84
  306. package/template/.aioson/locales/en/agents/product.md +0 -378
  307. package/template/.aioson/locales/en/agents/profiler-enricher.md +0 -5
  308. package/template/.aioson/locales/en/agents/profiler-forge.md +0 -5
  309. package/template/.aioson/locales/en/agents/profiler-researcher.md +0 -5
  310. package/template/.aioson/locales/en/agents/qa.md +0 -270
  311. package/template/.aioson/locales/en/agents/setup.md +0 -421
  312. package/template/.aioson/locales/en/agents/sheldon.md +0 -455
  313. package/template/.aioson/locales/en/agents/squad.md +0 -449
  314. package/template/.aioson/locales/en/agents/tester.md +0 -6
  315. package/template/.aioson/locales/en/agents/ux-ui.md +0 -668
  316. package/template/.aioson/locales/es/agents/analyst.md +0 -225
  317. package/template/.aioson/locales/es/agents/architect.md +0 -245
  318. package/template/.aioson/locales/es/agents/dev.md +0 -370
  319. package/template/.aioson/locales/es/agents/deyvin.md +0 -99
  320. package/template/.aioson/locales/es/agents/discovery-design-doc.md +0 -21
  321. package/template/.aioson/locales/es/agents/genome.md +0 -104
  322. package/template/.aioson/locales/es/agents/neo.md +0 -50
  323. package/template/.aioson/locales/es/agents/orache.md +0 -105
  324. package/template/.aioson/locales/es/agents/orchestrator.md +0 -194
  325. package/template/.aioson/locales/es/agents/pair.md +0 -7
  326. package/template/.aioson/locales/es/agents/pm.md +0 -90
  327. package/template/.aioson/locales/es/agents/product.md +0 -372
  328. package/template/.aioson/locales/es/agents/profiler-enricher.md +0 -7
  329. package/template/.aioson/locales/es/agents/profiler-forge.md +0 -7
  330. package/template/.aioson/locales/es/agents/profiler-researcher.md +0 -7
  331. package/template/.aioson/locales/es/agents/qa.md +0 -198
  332. package/template/.aioson/locales/es/agents/setup.md +0 -405
  333. package/template/.aioson/locales/es/agents/sheldon.md +0 -309
  334. package/template/.aioson/locales/es/agents/squad.md +0 -532
  335. package/template/.aioson/locales/es/agents/tester.md +0 -9
  336. package/template/.aioson/locales/es/agents/ux-ui.md +0 -212
  337. package/template/.aioson/locales/fr/agents/analyst.md +0 -225
  338. package/template/.aioson/locales/fr/agents/architect.md +0 -245
  339. package/template/.aioson/locales/fr/agents/dev.md +0 -370
  340. package/template/.aioson/locales/fr/agents/deyvin.md +0 -99
  341. package/template/.aioson/locales/fr/agents/discovery-design-doc.md +0 -21
  342. package/template/.aioson/locales/fr/agents/genome.md +0 -104
  343. package/template/.aioson/locales/fr/agents/neo.md +0 -50
  344. package/template/.aioson/locales/fr/agents/orache.md +0 -106
  345. package/template/.aioson/locales/fr/agents/orchestrator.md +0 -194
  346. package/template/.aioson/locales/fr/agents/pair.md +0 -7
  347. package/template/.aioson/locales/fr/agents/pm.md +0 -90
  348. package/template/.aioson/locales/fr/agents/product.md +0 -372
  349. package/template/.aioson/locales/fr/agents/profiler-enricher.md +0 -7
  350. package/template/.aioson/locales/fr/agents/profiler-forge.md +0 -7
  351. package/template/.aioson/locales/fr/agents/profiler-researcher.md +0 -7
  352. package/template/.aioson/locales/fr/agents/qa.md +0 -198
  353. package/template/.aioson/locales/fr/agents/setup.md +0 -405
  354. package/template/.aioson/locales/fr/agents/sheldon.md +0 -309
  355. package/template/.aioson/locales/fr/agents/squad.md +0 -532
  356. package/template/.aioson/locales/fr/agents/tester.md +0 -9
  357. package/template/.aioson/locales/fr/agents/ux-ui.md +0 -212
  358. package/template/.aioson/locales/pt-BR/agents/analyst.md +0 -319
  359. package/template/.aioson/locales/pt-BR/agents/architect.md +0 -284
  360. package/template/.aioson/locales/pt-BR/agents/dev.md +0 -483
  361. package/template/.aioson/locales/pt-BR/agents/deyvin.md +0 -184
  362. package/template/.aioson/locales/pt-BR/agents/discovery-design-doc.md +0 -198
  363. package/template/.aioson/locales/pt-BR/agents/genome.md +0 -297
  364. package/template/.aioson/locales/pt-BR/agents/neo.md +0 -208
  365. package/template/.aioson/locales/pt-BR/agents/orache.md +0 -137
  366. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +0 -324
  367. package/template/.aioson/locales/pt-BR/agents/pair.md +0 -5
  368. package/template/.aioson/locales/pt-BR/agents/pm.md +0 -182
  369. package/template/.aioson/locales/pt-BR/agents/product.md +0 -466
  370. package/template/.aioson/locales/pt-BR/agents/profiler-enricher.md +0 -5
  371. package/template/.aioson/locales/pt-BR/agents/profiler-forge.md +0 -5
  372. package/template/.aioson/locales/pt-BR/agents/profiler-researcher.md +0 -5
  373. package/template/.aioson/locales/pt-BR/agents/qa.md +0 -300
  374. package/template/.aioson/locales/pt-BR/agents/setup.md +0 -533
  375. package/template/.aioson/locales/pt-BR/agents/sheldon.md +0 -323
  376. package/template/.aioson/locales/pt-BR/agents/squad.md +0 -1330
  377. package/template/.aioson/locales/pt-BR/agents/tester.md +0 -449
  378. package/template/.aioson/locales/pt-BR/agents/ux-ui.md +0 -669
  379. package/template/.aioson/skills/design-system/components/SKILL.md:Zone.Identifier +0 -0
  380. package/template/.aioson/skills/design-system/dashboards/SKILL.md:Zone.Identifier +0 -0
  381. package/template/.aioson/skills/design-system/foundations/SKILL.md:Zone.Identifier +0 -0
  382. package/template/.aioson/skills/design-system/motion/SKILL.md:Zone.Identifier +0 -0
  383. package/template/.aioson/skills/design-system/patterns/SKILL.md:Zone.Identifier +0 -0
@@ -7,104 +7,52 @@ version: 1.0.0
7
7
 
8
8
  # Data Format Convention
9
9
 
10
- Use the right format for the right consumer. The same data structure reads very differently depending on who (or what) will consume it next.
10
+ ## Decision rule (apply in order)
11
11
 
12
- ## The three formats and their consumers
12
+ ```
13
+ Will a machine (CLI, API, webhook, dashboard) consume this? → JSON
14
+ Will human/agent read top-to-bottom as narrative? → Markdown
15
+ Will an agent reference specific fields to make decisions? → YAML
16
+ ```
13
17
 
14
- ### YAML structured data consumed by agents
18
+ If uncertain: prefer Markdown. Only use YAML when structured fields are the point.
15
19
 
16
- Use `.yaml` when the output is structured reference data that **another agent or squad executor will read field-by-field** to make decisions or produce content.
20
+ ## The three formats
17
21
 
18
- LLMs read YAML more accurately than JSON for structured reference data because YAML allows comments, avoids excessive punctuation, and mirrors natural document structure.
22
+ ### YAML structured data for agent field-by-field consumption
19
23
 
20
- **Use YAML for:**
21
- - ICP definitions, persona profiles, audience segments
22
- - Offer sheets, product definitions, pricing structures
23
- - Brand guidelines (structured parts: tone, values, vocabulary, positioning)
24
- - Competitive analysis snapshots (structured fields)
25
- - Briefing data that a copy squad or design squad will consume
26
- - Entity catalogs referenced across multiple sessions
24
+ LLMs read YAML more accurately than JSON for reference data (comments allowed, less punctuation).
27
25
 
28
- **Naming:** `{slug}.yaml` in the relevant squad output or context directory.
26
+ Use for: ICP profiles, persona profiles, audience segments, offer sheets, pricing structures, brand guidelines (structured parts), competitive analysis (structured), briefing data for copy/design squads.
29
27
 
30
- **Example — ICP profile (`icp-primary.yaml`):**
28
+ **Example (`icp-primary.yaml`):**
31
29
  ```yaml
32
- # ICP — Primary Audience
33
- # Created by: @research-squad | Updated: 2026-04-02
34
-
35
30
  profile:
36
31
  name: "Empreendedor Refém"
37
32
  description: "Dono de negócio que depende de agências ou devs externos"
38
-
39
33
  pain_points:
40
34
  - Perda de controle sobre o produto
41
35
  - Atrasos e custos imprevisíveis
42
- - Não consegue validar qualidade do que recebe
43
-
44
- desired_outcome: "Autonomia e velocidade — entregar sem depender de terceiros"
45
-
36
+ desired_outcome: "Autonomia e velocidade"
46
37
  buying_trigger: "Prazo vencendo ou fatura chegando de dev que atrasou"
47
-
48
38
  messaging:
49
39
  primary: "Retome o controle do seu produto"
50
- objection_1: "Não preciso saber programar?"
51
- objection_1_answer: "Não. Você vai orquestrar, não digitar código."
52
-
53
40
  channels: [instagram, linkedin, youtube]
54
41
  ```
55
42
 
56
- ---
43
+ ### Markdown — narrative for humans and linear agent reading
57
44
 
58
- ### Markdown narrative content consumed by humans and agents linearly
45
+ Use for: reports, analyses, article drafts, scripts, agent instructions, specs, PRDs, discovery docs, README files, any output read top-to-bottom.
59
46
 
60
- Use `.md` when the output is narrative content that flows as text and benefits from headers, lists, and prose.
47
+ Never use YAML or JSON for: articles, scripts, agent instructions, PRDs, analysis narratives.
61
48
 
62
- **Use Markdown for:**
63
- - Reports, analyses, article drafts
64
- - Scripts, hooks, copy blocks
65
- - Agent instructions and rules (this file is an example)
66
- - Specs, PRDs, discovery documents
67
- - Any output meant to be read from top to bottom
49
+ ### JSON — structured data for machine consumption
68
50
 
69
- **Never use YAML or JSON for:** articles, scripts, agent instructions, PRDs, analysis narratives, README files.
51
+ Use for: `squad.manifest.json`, `content.json`, API payloads, webhook responses, CLI config files.
70
52
 
71
- ---
72
-
73
- ### JSON — structured data consumed by machines
74
-
75
- Use `.json` when the output is consumed by code — CLIs, APIs, webhooks, dashboards, or configuration parsers.
76
-
77
- **Use JSON for:**
78
- - `squad.manifest.json` — consumed by the AIOSON CLI and dashboard
79
- - `content.json` — consumed by the webhook server and dashboard
80
- - API payloads and webhook responses
81
- - CLI configuration files
82
- - Any file that `JSON.parse()` will read programmatically
53
+ Never change to YAML: `squad.manifest.json`, `content.json`, `squad.json`, `aioson-models.json` — machine-consumed, must stay JSON for CLI compatibility.
83
54
 
84
- **Never change to YAML:** `squad.manifest.json`, `content.json`, `squad.json`, `aioson-models.json`. These are machine-consumed and must stay JSON for CLI compatibility.
85
-
86
- ---
87
-
88
- ## Decision rule (apply in this order)
89
-
90
- ```
91
- Will a machine (CLI, API, webhook, dashboard) consume this file?
92
- YES → JSON
93
-
94
- Will a human or agent read this top-to-bottom as narrative?
95
- YES → Markdown
96
-
97
- Will an agent reference specific fields to make decisions or produce content?
98
- YES → YAML
99
- ```
100
-
101
- If uncertain: prefer Markdown. Only use YAML when the structured fields are the point — not the prose.
102
-
103
- ---
104
-
105
- ## Squad executor guidance
106
-
107
- When a squad executor produces output, choose the format based on what happens next:
55
+ ## Squad executor output format
108
56
 
109
57
  | Output type | Format | Example |
110
58
  |---|---|---|
@@ -116,21 +64,11 @@ When a squad executor produces output, choose the format based on what happens n
116
64
  | Webhook payload, API response | `.json` | handled by `content.json` convention |
117
65
  | Squad manifest, config | `.json` | `squad.manifest.json` (do not change) |
118
66
 
119
- **Cross-squad consumption:** when Squad A produces data that Squad B will consume, prefer YAML for structured reference data. The receiving squad's executor can reference `output/squad-a/{file}.yaml` directly and access fields with precision — more reliable than parsing a Markdown table.
120
-
121
- ---
67
+ **Cross-squad consumption:** when Squad A produces data for Squad B, prefer YAML for structured reference — more reliable than parsing a Markdown table.
122
68
 
123
69
  ## What NOT to change
124
70
 
125
- - Files with `.json` extension consumed by the AIOSON CLI or dashboard
71
+ - `.json` files consumed by AIOSON CLI or dashboard
126
72
  - Agent instruction files (`agents/*.md`) — narrative, not data
127
- - Existing specs and context files (`spec-*.md`, `discovery.md`, `architecture.md`) mixed narrative + structure, Markdown is correct
128
- - YAML frontmatter inside `.md` files — this is already the right pattern for metadata
129
-
130
- ---
131
-
132
- ## Why this matters
133
-
134
- The same structured content stored as JSON or Markdown loses precision when an agent reads it. A JSON blob requires the agent to mentally parse brackets and quotes while tracking field relationships. A Markdown table requires the agent to infer column semantics from headers. A YAML document makes field names, nesting, and relationships immediately legible — the LLM spends its attention on the content, not the syntax.
135
-
136
- For squads that pass structured data between executors across sessions, this compounds: each session starts fresh, and a YAML profile loads faster and more accurately into working context than an equivalent JSON or Markdown representation.
73
+ - Existing specs and context files — Markdown is correct
74
+ - YAML frontmatter inside `.md` files
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: disk-first-artifacts
3
+ description: Todo artefato gerado por um agente deve ser gravado em disco antes do fim da sessão — nunca apenas exibido no chat
4
+ priority: 10
5
+ version: 1.0.0
6
+ ---
7
+
8
+ # Disk-First: Artifacts Always on Disk
9
+
10
+ Every artifact produced by an AIOSON agent MUST be written to disk before session end. Showing in chat does not count as delivery — the next agent starts without context and the work is lost.
11
+
12
+ ## Mandatory artifacts by agent
13
+
14
+ | Agent | Mandatory artifact | Path |
15
+ |---|---|---|
16
+ | `@product` | PRD | `.aioson/context/prd.md` or `prd-{slug}.md` |
17
+ | `@product` | features.md | `.aioson/context/features.md` |
18
+ | `@analyst` | Discovery | `.aioson/context/discovery.md` |
19
+ | `@analyst` | Requirements | `.aioson/context/requirements-{slug}.md` |
20
+ | `@architect` | Architecture | `.aioson/context/architecture.md` |
21
+ | `@ux-ui` | UI Spec | `.aioson/context/ui-spec-{slug}.md` |
22
+ | `@sheldon` | Manifest | `.aioson/plans/{slug}/manifest.md` |
23
+ | `@pm` | Implementation Plan | `.aioson/context/implementation-plan-{slug}.md` |
24
+ | `@dev` | Feature spec | `.aioson/context/spec-{slug}.md` |
25
+ | `@qa` | QA report | `.aioson/context/qa-report-{slug}.md` |
26
+ | `@squad` | Squad manifest | `.aioson/squads/{slug}/squad.manifest.json` |
27
+ | `@squad` | Agent prompts | `.aioson/squads/{slug}/agents/{agent}.md` |
28
+
29
+ ## Correct delivery pattern
30
+
31
+ ```
32
+ ✅ Write artifact to disk → inform user of path.
33
+ ❌ Show in chat → ask "Can I save?" → Do NOT do this.
34
+ ```
35
+
36
+ Exceptions: drafts shown mid-session for validation (before final save), artifacts explicitly cancelled by user.
37
+
38
+ `project-pulse.md` must be updated at session end regardless of other artifacts.
39
+
40
+ ## On violation detected
41
+
42
+ 1. Write the artifact before closing — never defer to next session.
43
+ 2. If content was shown in chat, use it to write the file now.
44
+ 3. Update `project-pulse.md`.
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: output-brevity
3
+ description: All agents must produce terse, direct output — no preambles, no trailing summaries, no narration of actions
4
+ priority: 8
5
+ version: 1.0.0
6
+ ---
7
+
8
+ # Output Brevity
9
+
10
+ All agents produce direct output. No padding.
11
+
12
+ ## What to eliminate
13
+
14
+ - Preambles: "I will now...", "Let me...", "I'm going to..."
15
+ - Trailing summaries: "In summary, I have...", "To recap what was done..."
16
+ - Action narration: "Reading the file...", "Now I'll check..."
17
+ - Filler acknowledgements: "Great!", "Sure!", "Of course!", "Absolutely!"
18
+ - Restating the user's request before answering it
19
+
20
+ ## What to keep
21
+
22
+ - Artifact content — complete and uncompressed
23
+ - Technical explanations when genuinely non-obvious
24
+ - Questions when clarification is required
25
+ - Security warnings, irreversible action confirmations — revert to full prose for these
26
+
27
+ ## Pattern
28
+
29
+ ```
30
+ ❌ "I'll analyze the project structure and then provide my findings..."
31
+ ✅ [analysis output directly]
32
+
33
+ ❌ "In summary, I've created 3 files and updated the spec."
34
+ ✅ "Created: spec-auth.md, prd-auth.md, features.md"
35
+
36
+ ❌ "Great question! Let me explain how this works..."
37
+ ✅ [explanation directly]
38
+ ```
39
+
40
+ ## Exceptions — use full prose
41
+
42
+ - Security warnings or destructive action confirmations
43
+ - Multi-step sequences where brevity would cause ambiguity
44
+ - User appears confused or has contradictory requirements
@@ -0,0 +1,49 @@
1
+ ---
2
+ name: prd-section-ownership
3
+ description: Define qual agente é dono de cada seção do PRD — outros agentes não podem modificar seções que não são suas
4
+ priority: 9
5
+ version: 1.0.0
6
+ agents: [product, pm, analyst, architect, ux-ui, sheldon]
7
+ ---
8
+
9
+ # PRD Section Ownership
10
+
11
+ `prd.md` and `prd-{slug}.md` are shared documents. Each section has one owner — others may only read or append sub-sections, never replace.
12
+
13
+ ## Ownership table
14
+
15
+ | PRD Section | Owner | Others may |
16
+ |---|---|---|
17
+ | `## Objetivo` | `@product` | Read only |
18
+ | `## Problema` | `@product` | Read only |
19
+ | `## Usuários e Personas` | `@product` | Read only |
20
+ | `## Funcionalidades` | `@product` | Read only |
21
+ | `## Critérios de Aceite` | `@product` (structure) / `@pm` (enrichment) | `@analyst`, `@architect` add technical sub-items |
22
+ | `## Fases de Entrega` | `@pm` | Read only |
23
+ | `## Restrições Técnicas` | `@architect` | Read only |
24
+ | `## Considerações de UX` | `@ux-ui` | Read only |
25
+ | `## Riscos` | `@pm` | `@analyst`, `@architect` add new risks only |
26
+ | `## Decisões Registradas` | `@sheldon` (project) / `@pm` (feature) | Read only |
27
+
28
+ ## Modification rule
29
+
30
+ An agent may only modify sections it owns. Non-owners may only **add** a new sub-section at the end — never replace or rewrite existing content.
31
+
32
+ ## Safe addition pattern
33
+
34
+ ```markdown
35
+ ## Critérios de Aceite
36
+ <!-- @product: owner of this section -->
37
+
38
+ - CA-01: User can schedule an appointment
39
+ - CA-02: System sends confirmation email
40
+
41
+ ### Technical criteria (added by @analyst)
42
+ - CA-T01: Scheduling validates availability via DB query before confirming
43
+ - CA-T02: Email queue uses BullMQ with 3x retry
44
+ ```
45
+
46
+ ## On violation detected
47
+
48
+ 1. Do not overwrite the section.
49
+ 2. Create a sub-section with explicit attribution (`<!-- added by @{agent} -->`), OR create a separate artifact (`requirements-{slug}.md`, `architecture.md`, etc.).
@@ -0,0 +1,139 @@
1
+ ---
2
+ name: security-baseline
3
+ description: Secure by Default baseline controls for technical agents
4
+ priority: 10
5
+ version: 1.0.0
6
+ agents: [analyst, architect, dev, qa]
7
+ ---
8
+
9
+ # Security Baseline — Secure by Default
10
+
11
+ > Implements `Article VII — Zero Trust by Default` of the AIOSON constitution.
12
+ > Loaded by `@analyst`, `@architect`, `@dev`, and `@qa`. Other agents must not
13
+ > load this rule — product, copy, design and orchestration scopes are out of band.
14
+
15
+ This rule defines the minimum security baseline every technical agent must
16
+ respect. It does **not** promise absolute security. It declares concrete
17
+ controls, expected evidence and how each project classification consumes them.
18
+ Deviations are allowed only when recorded as an explicit decision in the
19
+ feature `spec-{slug}.md` with N/A rationale.
20
+
21
+ ## Classification policy
22
+
23
+ | Classification | Behavior |
24
+ |---|---|
25
+ | **MICRO** | **Advisory.** Controls are surfaced as recommendations. No automated blocking. `@qa` may still flag obviously dangerous patterns. |
26
+ | **SMALL** | **Scan-oriented.** Static checks and tool-first scans run automatically. `@pentester` is **not** mandatory. Open Medium+ findings are reported but do not block by default. |
27
+ | **MEDIUM** | **Audit-blocking.** Surface assessment runs against attack-surface map. **Open High or Critical findings block Gate D** until resolved or explicitly waived with rationale recorded in `spec-{slug}.md`. |
28
+
29
+ `@pentester` (`app_target` mode) may be invoked by `@qa` for any feature with
30
+ auth, money, ownership, file uploads, external URLs or suspicious audit
31
+ findings — regardless of classification. It is never required by classification
32
+ alone.
33
+
34
+ ## Severity scale
35
+
36
+ | Severity | Examples |
37
+ |---|---|
38
+ | `critical` | Ownership bypass, financial race condition, committed production secret. |
39
+ | `high` | Missing server-side validation, unsafe upload signature handling, missing rate limit on sensitive endpoint. |
40
+ | `medium` | Unsanitized external URL, low-impact tracker, storage boundary abuse surface. |
41
+ | `advisory` | MICRO recommendations or surfaces marked N/A with explicit rationale. |
42
+
43
+ ## Direct LLM mode (no CLI)
44
+
45
+ When the `aioson` CLI is unavailable, agents must fall back to **checklist-only
46
+ verification** of the controls below, record the limitation in the session
47
+ devlog, and **must not** fabricate runtime telemetry events. Findings still
48
+ land in `.aioson/context/security-findings-{slug}.json` (one of the few
49
+ machine-readable exceptions allowed under `.aioson/context/`).
50
+
51
+ ## Controls
52
+
53
+ ### SEC-SBD-01 — Server-side input limits
54
+
55
+ - Maps to: OWASP A03 / A04
56
+ - Default severity: `high`
57
+ - Owner agent: `@dev` (implements), `@analyst` (declares limits), `@qa` (verifies)
58
+ - Applies to: analyst, dev, qa
59
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking when feature accepts user input
60
+ - Required evidence: explicit field-length / type / range limits enforced server-side, plus negative tests asserting rejection on overflow or wrong type. N/A rationale required when feature has no user input.
61
+
62
+ ### SEC-SBD-02 — Upload file signature validation
63
+
64
+ - Maps to: OWASP A03 / A05
65
+ - Default severity: `high`
66
+ - Owner agent: `@dev` (implements), `@qa` (verifies)
67
+ - Applies to: analyst, dev, qa
68
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking when feature accepts uploads
69
+ - Required evidence: magic-byte / file-signature validation independent of MIME header and extension; rejection test for spoofed extension. N/A when no upload surface exists.
70
+
71
+ ### SEC-SBD-03 — Ownership / IDOR authorization
72
+
73
+ - Maps to: OWASP A01
74
+ - Default severity: `critical`
75
+ - Owner agent: `@dev` (implements), `@analyst` (maps surfaces), `@qa` (verifies)
76
+ - Applies to: analyst, architect, dev, qa
77
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking on every endpoint that returns or mutates per-user data
78
+ - Required evidence: ownership check at the data layer (not only route), and a negative test where user A attempts to access user B's resource and receives 403/404. N/A only when resource is intentionally public.
79
+
80
+ ### SEC-SBD-04 — Atomic critical state changes
81
+
82
+ - Maps to: OWASP A04
83
+ - Default severity: `critical`
84
+ - Owner agent: `@architect` (designs), `@dev` (implements), `@qa` (verifies)
85
+ - Applies to: architect, dev, qa
86
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking on money, inventory, quotas, ownership transfers, balance updates
87
+ - Required evidence: transactional boundary (DB transaction, row lock, or equivalent) plus a concurrency test or documented invariant proving no double-spend / lost update. N/A when feature has no shared mutable state.
88
+
89
+ ### SEC-SBD-05 — Secrets outside code
90
+
91
+ - Maps to: OWASP A02 / A05
92
+ - Default severity: `critical` (committed) / `high` (config drift)
93
+ - Owner agent: `@dev` (implements), `@qa` (verifies)
94
+ - Applies to: analyst, architect, dev, qa
95
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking on any commit
96
+ - Required evidence: secrets loaded from environment / vault / managed config; `.env` and equivalents in `.gitignore`; secret-scan pass on diff. Brownfield exception: pre-existing secret must be rotated and tracked, never silently kept.
97
+
98
+ ### SEC-SBD-06 — External URL sanitization
99
+
100
+ - Maps to: OWASP A03 / A10
101
+ - Default severity: `medium` (raises to `high` when URL is followed server-side)
102
+ - Owner agent: `@dev` (implements), `@qa` (verifies)
103
+ - Applies to: analyst, dev, qa
104
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking when feature accepts or follows external URLs
105
+ - Required evidence: scheme allowlist, host validation, SSRF protection (private-range block) when followed server-side, escaping when rendered. N/A when no external URL is accepted.
106
+
107
+ ### SEC-SBD-07 — Storage default-deny / RLS boundary
108
+
109
+ - Maps to: OWASP A01 / A05
110
+ - Default severity: `critical`
111
+ - Owner agent: `@architect` (designs), `@dev` (implements), `@qa` (verifies)
112
+ - Applies to: architect, dev, qa
113
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking on every multi-tenant or per-user store
114
+ - Required evidence: storage layer denies by default (RLS policies enabled, bucket private, queue ACL closed) plus a negative test from an unauthorized identity. N/A when storage is single-tenant and intentionally public.
115
+
116
+ ### SEC-SBD-08 — Auth enumeration / rate limiting
117
+
118
+ - Maps to: OWASP A07
119
+ - Default severity: `high`
120
+ - Owner agent: `@dev` (implements), `@qa` (verifies)
121
+ - Applies to: analyst, dev, qa
122
+ - Classification policy: MICRO advisory; SMALL scan-oriented; MEDIUM audit-blocking on login, password reset, signup, OTP and any auth-adjacent endpoint
123
+ - Required evidence: per-endpoint rate limit (per IP and per identifier), uniform error response for "user not found" vs "wrong password", lockout or backoff after N failures, and a negative test asserting enumeration is not possible. N/A when feature has no auth surface.
124
+
125
+ ## Out of scope (v1)
126
+
127
+ The following are explicitly **not** part of this baseline and require a future
128
+ PRD before adoption: deceptive endpoints (honeypots), jump-scare responses,
129
+ adversarial CAPTCHAs, and any technique whose primary purpose is to deceive
130
+ attackers. The baseline is preventive, not deceptive.
131
+
132
+ ## Maintenance
133
+
134
+ - Control IDs are stable. Adding a control means appending `SEC-SBD-09`, never
135
+ renumbering or repurposing an existing ID.
136
+ - Severity defaults can be raised per-feature in `spec-{slug}.md` with rationale; they cannot be silently lowered.
137
+ - Changes to this rule require an explicit decision recorded in the relevant
138
+ feature spec and a `last_amended`-style note in the constitution if they
139
+ alter Article VII semantics.
@@ -0,0 +1,61 @@
1
+ ---
2
+ name: spec-level-ownership
3
+ description: spec.md é de projeto, spec-{slug}.md é de feature — os dois níveis nunca se misturam
4
+ priority: 9
5
+ version: 1.0.0
6
+ agents: [dev, qa, pm, sheldon]
7
+ ---
8
+
9
+ # Spec Ownership: Project vs Feature Level
10
+
11
+ Two distinct levels — never mix them.
12
+
13
+ | File | Level | Owner | Content |
14
+ |---|---|---|---|
15
+ | `spec.md` | **Project** | `@dev` (full project) | Stack, global patterns, infrastructure — decisions affecting the whole project |
16
+ | `spec-{slug}.md` | **Feature** | `@dev` (specific feature) | Decisions, entities, dependencies, ACs for ONE feature |
17
+
18
+ ## Absolute rules
19
+
20
+ 1. `spec.md` never receives feature-specific content → create `spec-{slug}.md` for that.
21
+ 2. `spec-{slug}.md` never receives project decisions → stack decisions go in `spec.md` or `architecture.md`.
22
+ 3. `spec-{slug}.md` is created by `@dev` at feature implementation start. One file per slug. Slug must match `prd-{slug}.md` and `implementation-plan-{slug}.md`.
23
+ 4. No `spec-{slug}.md` without a corresponding `prd-{slug}.md`.
24
+
25
+ ## Mandatory structure: spec-{slug}.md
26
+
27
+ ```markdown
28
+ ---
29
+ feature: {slug}
30
+ status: in_progress | done
31
+ phase_gates:
32
+ requirements: approved | pending | skipped
33
+ design: approved | pending | skipped
34
+ plan: approved | pending | skipped
35
+ ---
36
+
37
+ # Spec — {feature name}
38
+
39
+ ## Implemented entities
40
+ ## Technical decisions
41
+ ## Dependencies
42
+ ## QA approval
43
+ (filled by @qa on feature close)
44
+ ```
45
+
46
+ ## Mandatory structure: spec.md (project level)
47
+
48
+ ```markdown
49
+ # Spec — {project name}
50
+
51
+ ## Stack and infrastructure
52
+ ## Global code patterns
53
+ ## External integrations
54
+ ## Cross-feature architecture decisions
55
+ ```
56
+
57
+ ## On violation detected
58
+
59
+ 1. Do not write to the wrong file.
60
+ 2. Identify the correct level.
61
+ 3. Write to the correct file (create if needed following mandatory structure above).
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: squad-driver-pattern
3
+ description: Territory boundaries and integration pattern for AIOSON squads — separates squad definitions (owned by @squad) from application driver code (owned by @dev)
4
+ priority: 9
5
+ version: 1.0.0
6
+ agents: [dev, sheldon, pm, qa, architect]
7
+ ---
8
+
9
+ # Squad Driver Pattern
10
+
11
+ Two distinct layers — never mixed:
12
+
13
+ ```
14
+ Layer 1 — Definition (owned by @squad)
15
+ .aioson/squads/{squad-slug}/
16
+ agents/greeting-agent.md ← prompt and personality
17
+ agents/orquestrador.md ← orchestration logic
18
+ squad.manifest.json ← configuration
19
+ workflows/main.md ← execution pipeline
20
+
21
+ Layer 2 — Driver (owned by @dev)
22
+ src/services/squadRunner.js ← loads and executes definitions
23
+ src/services/greetingService.js ← driver consuming greeting-agent.md
24
+ ```
25
+
26
+ ## Territory rules — absolute for all agents
27
+
28
+ | Agent | Can create/modify | Must never touch |
29
+ |---|---|---|
30
+ | `@squad` | `.aioson/squads/` | Application code (`src/`, `app/`, etc.) |
31
+ | `@dev` | Application code | `.aioson/squads/` |
32
+ | `@pm` | Implementation plan | Either layer |
33
+ | `@architect` | `architecture.md` | Squad files or agent code |
34
+
35
+ ## Correct integration pattern
36
+
37
+ The application service is a **driver** — loads the squad definition and sends it to the LLM. Never embeds prompts in code.
38
+
39
+ ```javascript
40
+ // CORRECT — driver consuming @squad definition
41
+ class GreetingService {
42
+ async respond(message) {
43
+ const agentDef = fs.readFileSync(
44
+ '.aioson/squads/squad-greeting/agents/greeting-agent.md', 'utf-8'
45
+ )
46
+ return await llm.call({ system: agentDef, user: message })
47
+ }
48
+ }
49
+
50
+ // WRONG — prompt embedded in code (@dev must not do this)
51
+ class GreetingService {
52
+ async respond(message) {
53
+ const prompt = "Voce e um atendente de farmacia..." // ← @squad territory
54
+ return await llm.call({ system: prompt, user: message })
55
+ }
56
+ }
57
+ ```
58
+
59
+ ## Per-agent responsibilities
60
+
61
+ **`@product` / `@sheldon`:** describe squad behavior and objective in PRDs — never literal prompts. Prompts are `@squad` territory.
62
+
63
+ **`@analyst` / `@architect`:** include the driver layer as explicit component in `architecture.md`:
64
+ ```
65
+ SquadRunner — loads definitions from .aioson/squads/ and executes via LLM API
66
+ dependencies: fs (read .md), llm-client (model call)
67
+ no domain logic — only orchestrates loading and execution
68
+ ```
69
+
70
+ **`@pm`:** separate squad phases from code phases in implementation plans:
71
+ - Squad phases → `executor: @squad`
72
+ - Driver phases → `executor: @dev` with task "create SquadRunner that loads `.aioson/squads/{slug}/`"
73
+
74
+ **`@dev`:** never write inline prompts. If a task requires creating/modifying files in `.aioson/squads/` — stop and redirect to `@squad`.
75
+
76
+ **`@squad`:** read `implementation-plan` and `prd` before asking anything — context is already in artifacts.
77
+
78
+ **`@qa`:** verify:
79
+ - [ ] Squad services are drivers (load `.md`, never embed prompts)
80
+ - [ ] No agent prompt is hardcoded in application code
81
+ - [ ] `.aioson/squads/` was not modified by `@dev`
@@ -31,6 +31,30 @@
31
31
  "enum": ["content", "software", "research", "mixed"]
32
32
  },
33
33
  "domain": { "type": "string" },
34
+ "locale_scope": {
35
+ "type": "string",
36
+ "description": "Universal or locale-specific scope for generated agent files",
37
+ "pattern": "^(universal|[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*)$"
38
+ },
39
+ "locale_rationale": { "type": "string" },
40
+ "domainClassification": {
41
+ "type": "object",
42
+ "properties": {
43
+ "tier": {
44
+ "type": "string",
45
+ "enum": ["tier-1-regulated", "tier-2-specialized", "tier-3-common"]
46
+ },
47
+ "rationale": { "type": "string" },
48
+ "regulations": {
49
+ "type": "array",
50
+ "items": { "type": "string" }
51
+ },
52
+ "investigationPolicy": {
53
+ "type": "string",
54
+ "enum": ["required", "recommended", "optional"]
55
+ }
56
+ }
57
+ },
34
58
  "executors": {
35
59
  "type": "array",
36
60
  "items": {
@@ -38,6 +38,34 @@
38
38
  "enum": ["private", "public"],
39
39
  "default": "private"
40
40
  },
41
+ "locale_scope": {
42
+ "type": "string",
43
+ "description": "Universal or locale-specific scope for agent prompt files",
44
+ "pattern": "^(universal|[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*)$"
45
+ },
46
+ "locale_rationale": {
47
+ "type": "string",
48
+ "description": "Why the squad is locale-specific when locale_scope is not universal"
49
+ },
50
+ "domainClassification": {
51
+ "type": "object",
52
+ "description": "Classification of the squad domain for research and safety routing",
53
+ "properties": {
54
+ "tier": {
55
+ "type": "string",
56
+ "enum": ["tier-1-regulated", "tier-2-specialized", "tier-3-common"]
57
+ },
58
+ "rationale": { "type": "string" },
59
+ "regulations": {
60
+ "type": "array",
61
+ "items": { "type": "string" }
62
+ },
63
+ "investigationPolicy": {
64
+ "type": "string",
65
+ "enum": ["required", "recommended", "optional"]
66
+ }
67
+ }
68
+ },
41
69
  "ephemeral": {
42
70
  "type": "boolean",
43
71
  "default": false,
@@ -48,6 +76,22 @@
48
76
  "description": "Time-to-live for ephemeral squads (e.g. '24h', '7d'). After TTL, squad files are eligible for cleanup."
49
77
  },
50
78
  "aiosLiteCompatibility": { "type": "string" },
79
+ "sourceDocs": {
80
+ "type": "array",
81
+ "items": { "type": "string" },
82
+ "description": "Project artifacts consumed during squad design"
83
+ },
84
+ "investigation": {
85
+ "type": "object",
86
+ "description": "Reference to a persisted @orache investigation report",
87
+ "properties": {
88
+ "slug": { "type": "string" },
89
+ "path": { "type": "string" },
90
+ "confidence": { "type": "number", "minimum": 0, "maximum": 1 },
91
+ "dimensionsCovered": { "type": "integer", "minimum": 0, "maximum": 7 },
92
+ "date": { "type": "string", "format": "date" }
93
+ }
94
+ },
51
95
  "storagePolicy": {
52
96
  "type": "object",
53
97
  "properties": {
@@ -4,6 +4,8 @@ Read after `design-tokens.md`. Add to context only when motion materially improv
4
4
 
5
5
  Motion is **purposeful and restrained**. Dashboards use minimal motion. Landing pages use more dramatic entrances and scroll effects.
6
6
 
7
+ > **For landing pages / sales pages / event pages:** also load `skills/static/landing-page-forge.md` — it provides GSAP and AnimeJS integration patterns for horizontal scroll, magnetic mouse effects, hero sequences, and the full performance + tracking checklist.
8
+
7
9
  ---
8
10
 
9
11
  ## Principles