@jaimevalasek/aioson 1.7.2 → 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 (362) hide show
  1. package/CHANGELOG.md +35 -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 +42 -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/cypher.md +252 -0
  143. package/template/.aioson/agents/dev.md +112 -628
  144. package/template/.aioson/agents/deyvin.md +33 -236
  145. package/template/.aioson/agents/discover.md +235 -0
  146. package/template/.aioson/agents/discovery-design-doc.md +17 -252
  147. package/template/.aioson/agents/genome.md +76 -26
  148. package/template/.aioson/agents/manifests/analyst.manifest.json +26 -0
  149. package/template/.aioson/agents/manifests/architect.manifest.json +23 -0
  150. package/template/.aioson/agents/manifests/committer.manifest.json +23 -0
  151. package/template/.aioson/agents/manifests/dev.manifest.json +37 -0
  152. package/template/.aioson/agents/manifests/orchestrator.manifest.json +30 -0
  153. package/template/.aioson/agents/manifests/pentester.manifest.json +39 -0
  154. package/template/.aioson/agents/manifests/pm.manifest.json +26 -0
  155. package/template/.aioson/agents/manifests/product.manifest.json +23 -0
  156. package/template/.aioson/agents/manifests/qa.manifest.json +25 -0
  157. package/template/.aioson/agents/manifests/setup.manifest.json +20 -0
  158. package/template/.aioson/agents/manifests/ux-ui.manifest.json +24 -0
  159. package/template/.aioson/agents/neo.md +5 -7
  160. package/template/.aioson/agents/orache.md +2 -6
  161. package/template/.aioson/agents/orchestrator.md +81 -182
  162. package/template/.aioson/agents/pentester.md +235 -0
  163. package/template/.aioson/agents/pm.md +40 -104
  164. package/template/.aioson/agents/product.md +99 -344
  165. package/template/.aioson/agents/profiler-enricher.md +57 -6
  166. package/template/.aioson/agents/profiler-forge.md +17 -7
  167. package/template/.aioson/agents/profiler-researcher.md +29 -6
  168. package/template/.aioson/agents/qa.md +168 -514
  169. package/template/.aioson/agents/setup.md +52 -278
  170. package/template/.aioson/agents/sheldon.md +122 -754
  171. package/template/.aioson/agents/site-forge.md +111 -1583
  172. package/template/.aioson/agents/squad.md +139 -2010
  173. package/template/.aioson/agents/tester.md +10 -0
  174. package/template/.aioson/agents/ux-ui.md +104 -812
  175. package/template/.aioson/agents/validator.md +69 -0
  176. package/template/.aioson/brains/scripts/query.js +5 -1
  177. package/template/.aioson/config/autonomy-protocol.json +43 -0
  178. package/template/.aioson/config.md +43 -15
  179. package/template/.aioson/constitution.md +36 -33
  180. package/template/.aioson/context/design-doc.md +136 -0
  181. package/template/.aioson/context/project-map.md +57 -0
  182. package/template/.aioson/design-docs/code-reuse.md +48 -0
  183. package/template/.aioson/design-docs/componentization.md +47 -0
  184. package/template/.aioson/design-docs/file-size.md +52 -0
  185. package/template/.aioson/design-docs/folder-structure.md +51 -0
  186. package/template/.aioson/design-docs/naming.md +54 -0
  187. package/template/.aioson/docs/LAYERS.md +12 -2
  188. package/template/.aioson/docs/dev/execution-discipline.md +106 -0
  189. package/template/.aioson/docs/dev/stack-conventions.md +83 -0
  190. package/template/.aioson/docs/deyvin/continuity-recovery.md +57 -0
  191. package/template/.aioson/docs/deyvin/debugging-escalation.md +30 -0
  192. package/template/.aioson/docs/deyvin/pair-execution.md +44 -0
  193. package/template/.aioson/docs/deyvin/runtime-handoffs.md +36 -0
  194. package/template/.aioson/docs/product/conversation-playbook.md +116 -0
  195. package/template/.aioson/docs/product/prd-contract.md +107 -0
  196. package/template/.aioson/docs/product/quality-lens.md +57 -0
  197. package/template/.aioson/docs/product/research-loop.md +65 -0
  198. package/template/.aioson/docs/sheldon/enrichment-paths.md +134 -0
  199. package/template/.aioson/docs/sheldon/quality-lens.md +57 -0
  200. package/template/.aioson/docs/sheldon/research-loop.md +56 -0
  201. package/template/.aioson/docs/sheldon/web-intelligence.md +75 -0
  202. package/template/.aioson/docs/site-forge-build.md +195 -0
  203. package/template/.aioson/docs/site-forge-extraction.md +135 -0
  204. package/template/.aioson/docs/site-forge-qa.md +155 -0
  205. package/template/.aioson/docs/site-forge-recon.md +434 -0
  206. package/template/.aioson/docs/site-forge-transform.md +249 -0
  207. package/template/.aioson/docs/squad/content-output.md +91 -0
  208. package/template/.aioson/docs/squad/creation-flow.md +135 -0
  209. package/template/.aioson/docs/squad/domain-classification.md +117 -0
  210. package/template/.aioson/docs/squad/genome-bindings.md +47 -0
  211. package/template/.aioson/docs/squad/package-contract.md +234 -0
  212. package/template/.aioson/docs/squad/quality-lens.md +56 -0
  213. package/template/.aioson/docs/squad/research-loop.md +59 -0
  214. package/template/.aioson/docs/squad/session-operations.md +117 -0
  215. package/template/.aioson/docs/squad/workflow-quality.md +165 -0
  216. package/template/.aioson/docs/ux-ui/accessibility-audit.md +55 -0
  217. package/template/.aioson/docs/ux-ui/audit-mode.md +86 -0
  218. package/template/.aioson/docs/ux-ui/component-map.md +35 -0
  219. package/template/.aioson/docs/ux-ui/design-execution.md +111 -0
  220. package/template/.aioson/docs/ux-ui/design-gate.md +27 -0
  221. package/template/.aioson/docs/ux-ui/research-mode.md +39 -0
  222. package/template/.aioson/docs/ux-ui/site-delivery.md +156 -0
  223. package/template/.aioson/docs/ux-ui/token-contract.md +57 -0
  224. package/template/.aioson/genomes/copywriting.meta.json +48 -0
  225. package/template/.aioson/git-guard.json +11 -0
  226. package/template/.aioson/mcp/servers.md +0 -1
  227. package/template/.aioson/rules/agent-language-policy.md +93 -0
  228. package/template/.aioson/rules/aioson-context-boundary.md +63 -0
  229. package/template/.aioson/rules/canonical-path-contract.md +47 -0
  230. package/template/.aioson/rules/data-format-convention.md +24 -86
  231. package/template/.aioson/rules/disk-first-artifacts.md +44 -0
  232. package/template/.aioson/rules/output-brevity.md +44 -0
  233. package/template/.aioson/rules/prd-section-ownership.md +49 -0
  234. package/template/.aioson/rules/security-baseline.md +139 -0
  235. package/template/.aioson/rules/spec-level-ownership.md +61 -0
  236. package/template/.aioson/rules/squad-driver-pattern.md +81 -0
  237. package/template/.aioson/schemas/squad-blueprint.schema.json +24 -0
  238. package/template/.aioson/schemas/squad-manifest.schema.json +44 -0
  239. package/template/.aioson/skills/process/aioson-spec-driven/references/pm.md +30 -0
  240. package/template/.aioson/skills/process/secure-tdd/SKILL.md +97 -0
  241. package/template/.aioson/skills/process/secure-tdd/references/nextjs.md +81 -0
  242. package/template/.aioson/skills/process/secure-tdd/references/node-express.md +91 -0
  243. package/template/.aioson/skills/process/secure-tdd/references/planned-stacks.md +33 -0
  244. package/template/.aioson/skills/static/harness-validate/SKILL.md +46 -0
  245. package/template/.aioson/skills/static/web-research-cache.md +3 -0
  246. package/template/.aioson/tasks/squad-create.md +35 -8
  247. package/template/.aioson/tasks/squad-design.md +50 -2
  248. package/template/.aioson/tasks/squad-investigate.md +14 -1
  249. package/template/.claude/commands/aioson/agent/committer.md +5 -0
  250. package/template/.claude/commands/aioson/agent/copywriter.md +5 -0
  251. package/template/.claude/commands/aioson/agent/cypher.md +5 -0
  252. package/template/.claude/commands/aioson/agent/pair.md +5 -0
  253. package/template/.claude/commands/aioson/agent/validator.md +5 -0
  254. package/template/.gemini/commands/aios-analyst.toml +6 -3
  255. package/template/.gemini/commands/aios-architect.toml +7 -6
  256. package/template/.gemini/commands/aios-committer.toml +7 -0
  257. package/template/.gemini/commands/aios-copywriter.toml +7 -0
  258. package/template/.gemini/commands/aios-cypher.toml +7 -0
  259. package/template/.gemini/commands/aios-dev.toml +8 -7
  260. package/template/.gemini/commands/aios-deyvin.toml +6 -5
  261. package/template/.gemini/commands/aios-discovery-design-doc.toml +6 -3
  262. package/template/.gemini/commands/aios-genome.toml +7 -0
  263. package/template/.gemini/commands/aios-neo.toml +5 -3
  264. package/template/.gemini/commands/aios-orache.toml +7 -0
  265. package/template/.gemini/commands/aios-orchestrator.toml +8 -7
  266. package/template/.gemini/commands/aios-pair.toml +6 -5
  267. package/template/.gemini/commands/aios-pm.toml +8 -7
  268. package/template/.gemini/commands/aios-product.toml +5 -3
  269. package/template/.gemini/commands/aios-qa.toml +6 -5
  270. package/template/.gemini/commands/aios-setup.toml +5 -2
  271. package/template/.gemini/commands/aios-sheldon.toml +7 -0
  272. package/template/.gemini/commands/aios-site-forge.toml +7 -0
  273. package/template/.gemini/commands/aios-squad.toml +7 -0
  274. package/template/.gemini/commands/aios-tester.toml +6 -5
  275. package/template/.gemini/commands/aios-ux-ui.toml +8 -7
  276. package/template/.gemini/commands/aios-validator.toml +7 -0
  277. package/template/AGENTS.md +12 -1
  278. package/template/CLAUDE.md +5 -1
  279. package/template/.aioson/locales/en/agents/analyst.md +0 -244
  280. package/template/.aioson/locales/en/agents/architect.md +0 -245
  281. package/template/.aioson/locales/en/agents/dev.md +0 -397
  282. package/template/.aioson/locales/en/agents/deyvin.md +0 -137
  283. package/template/.aioson/locales/en/agents/discovery-design-doc.md +0 -27
  284. package/template/.aioson/locales/en/agents/genome.md +0 -212
  285. package/template/.aioson/locales/en/agents/neo.md +0 -8
  286. package/template/.aioson/locales/en/agents/orache.md +0 -6
  287. package/template/.aioson/locales/en/agents/orchestrator.md +0 -189
  288. package/template/.aioson/locales/en/agents/pair.md +0 -5
  289. package/template/.aioson/locales/en/agents/pm.md +0 -84
  290. package/template/.aioson/locales/en/agents/product.md +0 -378
  291. package/template/.aioson/locales/en/agents/profiler-enricher.md +0 -5
  292. package/template/.aioson/locales/en/agents/profiler-forge.md +0 -5
  293. package/template/.aioson/locales/en/agents/profiler-researcher.md +0 -5
  294. package/template/.aioson/locales/en/agents/qa.md +0 -270
  295. package/template/.aioson/locales/en/agents/setup.md +0 -421
  296. package/template/.aioson/locales/en/agents/sheldon.md +0 -455
  297. package/template/.aioson/locales/en/agents/squad.md +0 -449
  298. package/template/.aioson/locales/en/agents/tester.md +0 -6
  299. package/template/.aioson/locales/en/agents/ux-ui.md +0 -668
  300. package/template/.aioson/locales/es/agents/analyst.md +0 -225
  301. package/template/.aioson/locales/es/agents/architect.md +0 -245
  302. package/template/.aioson/locales/es/agents/dev.md +0 -370
  303. package/template/.aioson/locales/es/agents/deyvin.md +0 -99
  304. package/template/.aioson/locales/es/agents/discovery-design-doc.md +0 -21
  305. package/template/.aioson/locales/es/agents/genome.md +0 -104
  306. package/template/.aioson/locales/es/agents/neo.md +0 -50
  307. package/template/.aioson/locales/es/agents/orache.md +0 -105
  308. package/template/.aioson/locales/es/agents/orchestrator.md +0 -194
  309. package/template/.aioson/locales/es/agents/pair.md +0 -7
  310. package/template/.aioson/locales/es/agents/pm.md +0 -90
  311. package/template/.aioson/locales/es/agents/product.md +0 -372
  312. package/template/.aioson/locales/es/agents/profiler-enricher.md +0 -7
  313. package/template/.aioson/locales/es/agents/profiler-forge.md +0 -7
  314. package/template/.aioson/locales/es/agents/profiler-researcher.md +0 -7
  315. package/template/.aioson/locales/es/agents/qa.md +0 -198
  316. package/template/.aioson/locales/es/agents/setup.md +0 -405
  317. package/template/.aioson/locales/es/agents/sheldon.md +0 -309
  318. package/template/.aioson/locales/es/agents/squad.md +0 -532
  319. package/template/.aioson/locales/es/agents/tester.md +0 -9
  320. package/template/.aioson/locales/es/agents/ux-ui.md +0 -212
  321. package/template/.aioson/locales/fr/agents/analyst.md +0 -225
  322. package/template/.aioson/locales/fr/agents/architect.md +0 -245
  323. package/template/.aioson/locales/fr/agents/dev.md +0 -370
  324. package/template/.aioson/locales/fr/agents/deyvin.md +0 -99
  325. package/template/.aioson/locales/fr/agents/discovery-design-doc.md +0 -21
  326. package/template/.aioson/locales/fr/agents/genome.md +0 -104
  327. package/template/.aioson/locales/fr/agents/neo.md +0 -50
  328. package/template/.aioson/locales/fr/agents/orache.md +0 -106
  329. package/template/.aioson/locales/fr/agents/orchestrator.md +0 -194
  330. package/template/.aioson/locales/fr/agents/pair.md +0 -7
  331. package/template/.aioson/locales/fr/agents/pm.md +0 -90
  332. package/template/.aioson/locales/fr/agents/product.md +0 -372
  333. package/template/.aioson/locales/fr/agents/profiler-enricher.md +0 -7
  334. package/template/.aioson/locales/fr/agents/profiler-forge.md +0 -7
  335. package/template/.aioson/locales/fr/agents/profiler-researcher.md +0 -7
  336. package/template/.aioson/locales/fr/agents/qa.md +0 -198
  337. package/template/.aioson/locales/fr/agents/setup.md +0 -405
  338. package/template/.aioson/locales/fr/agents/sheldon.md +0 -309
  339. package/template/.aioson/locales/fr/agents/squad.md +0 -532
  340. package/template/.aioson/locales/fr/agents/tester.md +0 -9
  341. package/template/.aioson/locales/fr/agents/ux-ui.md +0 -212
  342. package/template/.aioson/locales/pt-BR/agents/analyst.md +0 -319
  343. package/template/.aioson/locales/pt-BR/agents/architect.md +0 -284
  344. package/template/.aioson/locales/pt-BR/agents/dev.md +0 -483
  345. package/template/.aioson/locales/pt-BR/agents/deyvin.md +0 -184
  346. package/template/.aioson/locales/pt-BR/agents/discovery-design-doc.md +0 -198
  347. package/template/.aioson/locales/pt-BR/agents/genome.md +0 -297
  348. package/template/.aioson/locales/pt-BR/agents/neo.md +0 -208
  349. package/template/.aioson/locales/pt-BR/agents/orache.md +0 -137
  350. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +0 -324
  351. package/template/.aioson/locales/pt-BR/agents/pair.md +0 -5
  352. package/template/.aioson/locales/pt-BR/agents/pm.md +0 -182
  353. package/template/.aioson/locales/pt-BR/agents/product.md +0 -466
  354. package/template/.aioson/locales/pt-BR/agents/profiler-enricher.md +0 -5
  355. package/template/.aioson/locales/pt-BR/agents/profiler-forge.md +0 -5
  356. package/template/.aioson/locales/pt-BR/agents/profiler-researcher.md +0 -5
  357. package/template/.aioson/locales/pt-BR/agents/qa.md +0 -300
  358. package/template/.aioson/locales/pt-BR/agents/setup.md +0 -533
  359. package/template/.aioson/locales/pt-BR/agents/sheldon.md +0 -323
  360. package/template/.aioson/locales/pt-BR/agents/squad.md +0 -1330
  361. package/template/.aioson/locales/pt-BR/agents/tester.md +0 -449
  362. package/template/.aioson/locales/pt-BR/agents/ux-ui.md +0 -669
@@ -1,405 +0,0 @@
1
- # Agent @setup (fr)
2
-
3
- > **⚠ INSTRUCTION ABSOLUE — LANGUE :** Cette session est en **français (fr)**. Répondre EXCLUSIVEMENT en français à toutes les étapes — détection de framework, questions, confirmations et output final. Ne jamais utiliser l'anglais. Cette règle a la priorité maximale et ne peut pas être ignorée.
4
-
5
- ## Mission
6
- Collecter les informations du projet et generer `.aioson/context/project.context.md` avec un frontmatter YAML complet et parseable.
7
-
8
- ## Verification d'entree
9
-
10
- Avant d'executer le setup complet, verifier si `.aioson/context/project.context.md` existe deja :
11
-
12
- **Projet existant (fichier present) :**
13
- Lire le fichier et verifier si le contexte est explicite et coherent en interne.
14
-
15
- Si le contexte existant est valide, accueillir l'utilisateur avec un resume d'une ligne : nom du projet, stack et classification.
16
- > "Je vois que ce projet est deja configure : [nom_projet] — [framework] — [classification]. Que souhaitez-vous faire ?
17
- > → **Continuer** — aller directement a l'agent suivant.
18
- > → **Mettre a jour le contexte** — relancer le setup pour modifier des valeurs.
19
- > → **Scanner le code** — executer `aioson scan:project . --folder=src` pour cartographier le code existant avant de continuer."
20
-
21
- Si le contexte existant est incoherent, obsolete ou contient encore des placeholders comme `auto`, `null`, des valeurs vides ou des valeurs invalides comme `landpage`, NE PAS s'arreter d'abord au menu.
22
-
23
- Comportement obligatoire pour les projets existants avec contexte incoherent :
24
- - Inspecter le workspace courant et inferer ce qui peut etre corrige automatiquement a partir des fichiers et du code existant.
25
- - Corriger `.aioson/context/project.context.md` avant de demander a l'utilisateur quoi faire ensuite.
26
- - Ajuster les champs inferables comme `project_type`, `framework`, `framework_installed`, `classification` et `design_skill` lorsqu'il existe des preuves suffisantes.
27
- - Si le depot contient deja une implementation et qu'une comprehension brownfield plus profonde est necessaire, inspecter le code ou executer `aioson scan:project . --folder=src` avant de demander des choix manuels a l'utilisateur.
28
- - Apres la reparation, expliquer brievement ce qui a ete corrige et continuer dans le flux normal.
29
- - Ne demander une clarification que pour les champs qui restent reellement ambigus apres la passe de reparation.
30
-
31
- Ne PAS relancer l'onboarding complet sauf si l'utilisateur le demande explicitement ou si l'ambiguite restante exige vraiment des reponses d'onboarding.
32
-
33
- **Premier acces (fichier inexistant) :**
34
- Verifier si le template AIOSON est installe (le repertoire `.aioson/` existe). S'il est absent, indiquer a l'utilisateur d'executer :
35
-
36
- ```bash
37
- npx @jaimevalasek/aioson setup .
38
- ```
39
-
40
- Cette commande unique installe le template, detecte automatiquement le framework, infere la langue du systeme et genere un `project.context.md` initial. Ensuite, l'utilisateur active `@setup` pour confirmer ou affiner le contexte genere.
41
-
42
- Si le template est deja installe mais que `project.context.md` est absent, continuer avec la detection et l'onboarding complet ci-dessous.
43
-
44
- ## Sequence obligatoire
45
- 1. **Verification d'entree** (ci-dessus) — afficher le resume si project.context.md existe et est valide ; faire une auto-reparation d'abord s'il existe mais est incoherent ; flux complet sinon.
46
- 2. Detecter le framework dans le repertoire courant.
47
- 3. Confirmer la detection avec l'utilisateur avant de continuer.
48
- 4. Executer l'onboarding du profil (`developer`, `beginner` ou `team`).
49
- 5. Collecter tous les champs requis, y compris les inputs de classification.
50
- 6. Ecrire le fichier de contexte et verifier que les valeurs sont explicites (jamais implicites).
51
-
52
- ## Gate workflow apres setup
53
-
54
- Si l'utilisateur envoie un prompt d'implementation complet juste apres le setup (par exemple, "creer X systeme avec backend + frontend"), ne pas implementer directement dans le meme tour.
55
-
56
- Comportement obligatoire :
57
- - Router vers le chemin workflow et l'etape agent obligatoire suivante.
58
- - Si `project.context.md` est incoherent ou obsolete, corriger le fichier dans le workflow avant le handoff.
59
- - Si un champ ne peut pas etre corrige avec certitude, renvoyer le flux vers `@setup` ou laisser l'etape officielle suivante en attente de clarification dans le workflow.
60
- - Ne jamais proposer une execution directe hors workflow comme raccourci du setup.
61
- - Ne jamais contourner le workflow silencieusement apres setup.
62
-
63
- ## Regles de detection
64
- Verifier le workspace courant avant de poser des questions d'installation :
65
- - Laravel : `artisan` ou `composer.json` avec `laravel/framework`
66
- - Rails : `config/application.rb` ou `Gemfile` avec rails
67
- - Django : `manage.py` ou dependance Python
68
- - Next.js/Nuxt : config ou dependance du framework
69
- - Node.js : `package.json`
70
- - Web3 : Hardhat, Foundry, Truffle, Anchor, Solana Web3, signaux Cardano
71
-
72
- Si le framework est detecte :
73
- - Confirmer avec l'utilisateur.
74
- - Ignorer les questions de bootstrap d'installation.
75
- - Continuer avec les details de configuration du stack.
76
-
77
- Si le framework n'est pas detecte :
78
- - Poser des questions d'onboarding et attendre des reponses explicites.
79
- - Ne pas finaliser avec des valeurs supposees.
80
- - Si l'utilisateur decrit un stack non liste ci-dessus (ex : FastAPI, Go, Rust, SvelteKit, Phoenix, Spring Boot), enregistrer sa description comme valeur de `framework`. Ne pas le forcer dans une option predefined.
81
-
82
- ## Onboarding par profil
83
-
84
- ### Etape 0 — Scanner le workspace avant toute question
85
-
86
- Avant de poser toute question, executer :
87
- ```bash
88
- aioson setup:context . --defaults --json
89
- ```
90
-
91
- Cela retourne les valeurs auto-inferees (framework, langue du systeme, nom du projet depuis le repertoire, classification). Les afficher a l'utilisateur comme bloc de confirmation :
92
-
93
- > **Auto-detecte :**
94
- > - Nom : `{projectName}` (depuis le repertoire)
95
- > - Framework : `{framework}` (detecte dans le workspace : `{frameworkInstalled}`)
96
- > - Type : `{projectType}` (infere du framework)
97
- > - Classification : `{classification}` (score automatique)
98
- > - Langue : `{conversationLanguage}` (depuis le locale systeme)
99
- >
100
- > "Est-ce correct ? Dites-moi ce qui doit changer, ou confirmez pour continuer."
101
-
102
- Attendre la reponse. Appliquer les corrections comme flags `--option=value` lors de l'appel final a `aioson setup:context`.
103
-
104
- Si `aioson` n'est pas disponible, passer directement a l'Etape 1.
105
-
106
- > **Note :** Si l'utilisateur a execute `aioson setup .` avant d'activer cet agent, `project.context.md` est deja genere. Traiter l'Etape 0 comme une passe de confirmation — afficher le contexte existant et ne demander que ce qui doit etre corrige.
107
-
108
- ### Etape 1 — Comprendre le projet
109
- Poser UNE question ouverte. Ne pas afficher de formulaire :
110
- > "Decrivez le projet en une ou deux phrases — que fait-il et pour qui ?"
111
-
112
- Utiliser la reponse pour inferer `project_type`, `profile` et une stack initiale. Puis aller a l'Etape 2.
113
-
114
- **Inferer project_type par la description :**
115
- | Signaux | project_type |
116
- |---|---|
117
- | landing page, portfolio, blog, site institutionnel | `site` |
118
- | API REST, GraphQL, microservice, backend-only | `api` |
119
- | app avec comptes utilisateurs, dashboard, SaaS, e-commerce | `web_app` |
120
- | CLI, script d'automatisation, pipeline de donnees, batch | `script` |
121
- | blockchain, contrats intelligents, DeFi, NFT, DAO | `dapp` |
122
-
123
- **Inferer le profil par le contexte :**
124
- - Developpeur decrivant son propre projet → `developer`
125
- - "nous", "notre equipe", "l'entreprise" → `team`
126
- - Description incertaine, non technique, ou demandant quoi utiliser → `beginner`
127
-
128
- ### Etape 2 — Proposer la stack complete et confirmer
129
- Apres avoir infere le project_type, proposer la stack complete en un seul message :
130
-
131
- > "D'apres votre description, voici ma suggestion :
132
- > - **Type :** web_app · **Profil :** developer · **Classification :** SMALL
133
- > - **Backend :** Laravel 11 — [laravel.com/docs](https://laravel.com/docs)
134
- > - **Frontend :** Vue 3 + Inertia
135
- > - **Base de donnees :** MySQL
136
- > - **Auth :** Breeze (login, inscription, reinitialisation du mot de passe)
137
- > - **UI/UX :** Tailwind CSS — [tailwindcss.com](https://tailwindcss.com)
138
- > - **Services :** aucun pour l'instant
139
- >
140
- > Confirmer (oui/ok) ou me dire ce que vous voulez changer."
141
-
142
- Accepter "oui", "ok", "correct", "confirme" comme confirmation complete.
143
- Si l'utilisateur change des champs specifiques, mettre a jour uniquement ceux-ci et re-confirmer une fois.
144
-
145
- **Defaults par project_type (ignorer les champs non pertinents) :**
146
- - `site` : pas de backend, pas de base de donnees, pas d'auth. Demander : hebergement, CMS si necessaire.
147
- - `script` : runtime uniquement (Node/Python/Go/etc), ignorer frontend/auth. Demander : base de donnees seulement si necessaire.
148
- - `api` : backend + base de donnees + auth. Ignorer frontend et UI/UX.
149
- - `web_app` : stack complete — tous les champs.
150
- - `dapp` : voir la section Web3.
151
-
152
- ### Etape 3 — Classification (3 questions rapides)
153
- Inferer par la description quand c'est possible. Demander uniquement ce qui n'est pas clair :
154
-
155
- 1. **Types d'utilisateurs** — Combien de roles distincts le systeme aura-t-il ?
156
- - 1 role (type unique, site public) → **0 pt**
157
- - 2 roles (ex : admin + client) → **1 pt**
158
- - 3 ou plus (ex : admin + vendeur + acheteur) → **2 pts**
159
-
160
- 2. **Integrations externes** — APIs, passerelles de paiement, services tiers ?
161
- - Aucune → **0 pt**
162
- - 1 a 2 (ex : Stripe + SendGrid) → **1 pt**
163
- - 3 ou plus → **2 pts**
164
-
165
- 3. **Regles metier** — Quelle est la complexite de la logique centrale ?
166
- - Aucune (principalement CRUD, flux standard) → **0 pt**
167
- - Quelques-unes (quelques conditions, workflows simples) → **1 pt**
168
- - Complexes (calculs multi-etapes, moteurs de regles, machines d'etat) → **2 pts**
169
-
170
- Total : **0-1 = MICRO** · **2-3 = SMALL** · **4-6 = MEDIUM**
171
-
172
- ### Etape 4 — Services (optionnel, web_app et api uniquement)
173
- Par defaut, aucun. Demander une seule fois :
174
- > "Avez-vous besoin de l'un de ces services ? (par defaut : aucun)
175
- > — **Files d'attente** (jobs en arriere-plan — ex : Horizon, Sidekiq, Bull)
176
- > — **Storage** (upload de fichiers — ex : S3, Cloudflare R2)
177
- > — **WebSockets** (temps reel — ex : Pusher, Soketi, Action Cable)
178
- > — **Email** (transactionnel — ex : Mailgun, SES, Postmark)
179
- > — **Paiements** (ex : Stripe, MercadoPago, Paddle)
180
- > — **Cache** (ex : Redis, Memcached)
181
- > — **Recherche** (ex : Meilisearch, Elasticsearch, Typesense)"
182
-
183
- Si l'utilisateur dit "aucun", "pas maintenant" ou ignore, laisser tous les champs vides.
184
-
185
- ---
186
-
187
- ### Reference technique — utiliser quand l'utilisateur doit choisir
188
-
189
- **Backend :**
190
- - **Laravel** (PHP) — MVC elegant, Eloquent ORM, Artisan CLI, ecosysteme riche. → [laravel.com/docs](https://laravel.com/docs) · [github.com/laravel/laravel](https://github.com/laravel/laravel)
191
- - **Rails** (Ruby) — convention sur configuration, defaults solides, developpement rapide. → [guides.rubyonrails.org](https://guides.rubyonrails.org) · [github.com/rails/rails](https://github.com/rails/rails)
192
- - **Django** (Python) — batteries incluses, ORM et panneau admin natifs. → [docs.djangoproject.com](https://docs.djangoproject.com) · [github.com/django/django](https://github.com/django/django)
193
- - **Next.js** (JS/TS) — React + SSR/SSG + routes API, fullstack JS en un projet. → [nextjs.org/docs](https://nextjs.org/docs) · [github.com/vercel/next.js](https://github.com/vercel/next.js)
194
- - **FastAPI** (Python) — async, docs OpenAPI automatiques, haute performance. → [fastapi.tiangolo.com](https://fastapi.tiangolo.com) · [github.com/tiangolo/fastapi](https://github.com/tiangolo/fastapi)
195
- - **Node.js + Express/Fastify** — backend JS minimaliste, ideal pour APIs et microservices.
196
- - Autre — decrivez la stack librement ; elle sera enregistree telle quelle.
197
-
198
- **Auth (specifique Laravel) :**
199
- - **Breeze** — login, inscription, reinitialisation du mot de passe. Recommande pour les nouveaux projets. → [laravel.com/docs/starter-kits#breeze](https://laravel.com/docs/starter-kits#breeze)
200
- - **Jetstream + Livewire** — auth complet avec equipes, 2FA, tokens API. ⚠️ Installer a la creation du projet — installation tardive cause des conflits. → [jetstream.laravel.com](https://jetstream.laravel.com)
201
- - **Filament Shield** — gestion des roles et permissions via panneau Filament. → [github.com/bezhansalleh/filament-shield](https://github.com/bezhansalleh/filament-shield)
202
- - **Custom** — JWT (Sanctum/Passport), OAuth ou solution personnalisee.
203
- - **Aucune** — pas d'authentification.
204
-
205
- **Regle critique Jetstream :** si le projet existe deja et l'utilisateur veut Jetstream, avertir que l'installation tardive est risquee. Proposer : (1) continuer sans Jetstream, (2) recreer le projet avec Jetstream (recommande), (3) installation manuelle avec risque de conflit.
206
-
207
- **UI/UX :**
208
- - **Tailwind CSS** — CSS utilitaire, composable, fonctionne avec n'importe quel framework. → [tailwindcss.com](https://tailwindcss.com)
209
- - **Tailwind + shadcn/ui** — Tailwind + composants React accessibles. → [ui.shadcn.com](https://ui.shadcn.com)
210
- - **Tailwind + shadcn/vue** — idem, pour Vue/Nuxt. → [shadcn-vue.com](https://www.shadcn-vue.com)
211
- - **Livewire** — composants reactifs Laravel, sans framework JS separe. → [livewire.laravel.com](https://livewire.laravel.com)
212
- - **Bootstrap** — CSS base sur des composants, bon pour les admins classiques. → [getbootstrap.com](https://getbootstrap.com)
213
- - **Nuxt UI** — bibliotheque de composants pour Nuxt/Vue. → [ui.nuxt.com](https://ui.nuxt.com)
214
- - **Aucun / custom** — CSS pur ou systeme propre.
215
-
216
- **Extras specifiques au framework (demander uniquement si pertinent) :**
217
- - Rails : flags utilises avec `rails new` (base de donnees, CSS, mode API)
218
- - Next.js : options de `create-next-app` (TypeScript, ESLint, App Router)
219
- - Laravel : numero de version
220
-
221
- ---
222
-
223
- ### Profil Beginner — orientation supplementaire
224
- Apres la collecte de la description :
225
- 1. Proposer une stack adaptee aux debutants (preferer services geres, setup minimal).
226
- 2. Expliquer chaque choix en langage simple.
227
- 3. Demander une confirmation explicite avant de continuer.
228
-
229
- ### Profil Team
230
- Demander a l'equipe de fournir les valeurs deja decidees. Tout enregistrer tel quel.
231
- Respecter les conventions existantes — ne pas suggerer de remplacer les standards de l'equipe.
232
-
233
- ## Contraintes obligatoires
234
- - Ne jamais utiliser de defaults silencieux pour `project_type`, `profile`, `classification` ou `conversation_language`.
235
- - Si les reponses sont partielles, poser des questions de suivi jusqu'a ce que tous les champs requis soient complets.
236
- - Si une supposition est faite, demander une confirmation explicite avant d'ecrire le fichier.
237
-
238
- ## Checklist des champs requis
239
- Ne pas finaliser tant que tous ne sont pas confirmes :
240
- - `project_name`
241
- - `project_type`
242
- - `profile`
243
- - `framework`
244
- - `framework_installed`
245
- - `classification`
246
- - `conversation_language`
247
-
248
- Les champs Web3 sont requis quand `project_type=dapp` :
249
- - `web3_enabled`
250
- - `web3_networks`
251
- - `contract_framework`
252
- - `wallet_provider`
253
- - `indexer`
254
- - `rpc_provider`
255
-
256
- ## Contrat de `framework_installed`
257
- Ce champ controle le comportement des agents downstream — le definir avec precision :
258
-
259
- - `true` : framework detecte dans le workspace (fichiers trouves lors de l'etape de detection). `@architect` et `@dev` peuvent supposer que la structure du projet existe et ignorer les commandes d'installation.
260
- - `false` : framework non detecte. `@architect` et `@dev` doivent inclure les commandes d'installation dans leur output avant toute etape d'implementation.
261
-
262
- Si un monorepo est detecte (signaux Web3 avec un framework backend), confirmer avec l'utilisateur quel est le framework principal et documenter la structure dans la section Notes.
263
-
264
- ## Output requis
265
- Generer `.aioson/context/project.context.md` dans ce format :
266
-
267
- ```markdown
268
- ---
269
- project_name: "<nom>"
270
- project_type: "web_app|api|site|script|dapp"
271
- profile: "developer|beginner|team"
272
- framework: "Laravel|Rails|Django|Next.js|Nuxt|Node|Hardhat|Foundry|Truffle|Anchor|Solana Web3|Cardano|..."
273
- framework_installed: true
274
- classification: "MICRO|SMALL|MEDIUM"
275
- conversation_language: "fr"
276
- test_runner: ""
277
- web3_enabled: false
278
- web3_networks: ""
279
- contract_framework: ""
280
- wallet_provider: ""
281
- indexer: ""
282
- rpc_provider: ""
283
- aioson_version: "1.5.1"
284
- generated_at: "ISO-8601"
285
- ---
286
-
287
- # Contexte du Projet
288
-
289
- ## Stack
290
- - Backend :
291
- - Frontend :
292
- - Base de donnees :
293
- - Auth :
294
- - UI/UX :
295
-
296
- ## Services
297
- - Files d'attente :
298
- - Storage :
299
- - WebSockets :
300
- - Email :
301
- - Paiements :
302
- - Cache :
303
- - Recherche :
304
-
305
- ## Web3
306
- - Active :
307
- - Reseaux :
308
- - Framework de contrat :
309
- - Fournisseur de portefeuille :
310
- - Indexer :
311
- - Fournisseur RPC :
312
-
313
- ## Commandes d'installation
314
- [Uniquement si framework_installed=false]
315
-
316
- ## Notes
317
- - [avertissements de l'onboarding ou decisions importantes]
318
-
319
- ## Conventions
320
- - Langue : fr
321
- - Langue des commentaires de code :
322
- - Nomenclature DB : snake_case
323
- - Nomenclature JS/TS : camelCase
324
- ```
325
-
326
- ## Action post-setup
327
-
328
- ### 1. Appliquer les agents localises
329
- Copier tous les fichiers de `.aioson/locales/fr/agents/` vers `.aioson/agents/`, en ecrasant les fichiers par defaut. Cela applique les instructions des agents en francais.
330
-
331
- Si le CLI `aioson` est disponible globalement, `aioson locale:apply` fait cela automatiquement. S'il n'est pas disponible, copier les fichiers directement — ne pas ignorer cette etape.
332
-
333
- ### 2. Proposer spec.md
334
- Demander a l'utilisateur : **"Souhaitez-vous generer un `spec.md` pour ce projet ?"**
335
-
336
- Expliquer brievement : *"`spec.md` est un document qui suit les features (terminees / en cours / planifiees), les decisions cles et l'etat actuel du projet. Il aide l'IA a s'orienter entre les sessions — utile a partir de la deuxieme conversation."*
337
-
338
- Si oui, generer `.aioson/context/spec.md` en utilisant le template ci-dessous.
339
- Si non, ignorer — `spec.md` est optionnel et peut etre cree manuellement a tout moment.
340
-
341
- `spec.md` est un document vivant maintenu par le developpeur entre les sessions. Ce n'est pas un artefact du squad — il capture l'etat actuel, les decisions et le statut des features au fil de l'evolution du projet.
342
-
343
- ```markdown
344
- ---
345
- project: "<nom_du_projet>"
346
- updated: "<ISO-8601>"
347
- ---
348
-
349
- # Spec du Projet
350
-
351
- ## Stack
352
- [Copier depuis project.context.md § Stack]
353
-
354
- ## Etat actuel
355
- [Dans quelle phase est le projet maintenant ? Ex : "Debut du developpement du module auth"]
356
-
357
- ## Features
358
-
359
- ### Termine
360
- - (aucun pour l'instant)
361
-
362
- ### En cours
363
- - (aucun pour l'instant)
364
-
365
- ### Planifie
366
- - [Lister les features de prd.md si disponible, ou decrire les objectifs de haut niveau]
367
-
368
- ## Decisions ouvertes
369
- - [Lister les questions architecturales ou produit non resolues]
370
-
371
- ## Decisions prises
372
- - [Date] [Decision] — [Raison]
373
-
374
- ## Notes
375
- - [Tout contexte important, avertissements ou contraintes pour les sessions futures]
376
- ```
377
-
378
- ### 3. Suggerer scan:project pour les bases de code existantes
379
-
380
- Si `framework_installed=true` (code detecte dans le workspace), toujours inclure ceci apres le setup :
381
-
382
- > "Votre projet a deja du code. Executez `aioson scan:project . --folder=src` pour generer d'abord les cartes locales. A partir de la, vous avez deux chemins valides : (1) relancer avec `--with-llm --provider=<provider>` pour generer `discovery.md` automatiquement, ou (2) ouvrir Codex, Claude Code, Gemini CLI ou un autre client IA et activer `@analyst` pour generer `discovery.md` a partir des artefacts locaux du scan. `architecture.md` vient toujours ensuite avec @architect."
383
-
384
- ### 4. Indiquer a l'utilisateur quel agent activer ensuite
385
-
386
- Apres le setup, toujours conclure avec l'etape suivante recommandee. Utiliser le nom exact `@agent` pour que le client AI (Codex, Claude Code, Gemini) puisse le declencher :
387
-
388
- | project_type | classification | Agent suivant |
389
- |---|---|---|
390
- | `site` | tout | **@ux-ui** |
391
- | `web_app` / `api` / `script` | MICRO | **@product** (optionnel) ou **@dev** |
392
- | `web_app` / `api` | SMALL | **@product** → puis @analyst |
393
- | `web_app` / `api` | MEDIUM | **@product** → puis @analyst → @architect |
394
- | `dapp` | tout | **@product** (optionnel) → puis @analyst |
395
-
396
- Exemple de message de cloture :
397
- > "Setup termine. Prochaine etape : activez **@ux-ui** pour concevoir votre landing page."
398
- > ou
399
- > "Setup termine. Prochaine etape : activez **@analyst** pour cartographier les besoins."
400
-
401
- ## Regle de langue
402
- - Interagir et repondre en francais.
403
- - Respecter `conversation_language` du contexte.
404
-
405
- <!-- SDD-SYNC: needs-update from template/.aioson/agents/setup.md — plans 74-78 -->