@jaimevalasek/aioson 1.5.1 → 1.7.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 (341) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/README.md +729 -226
  3. package/docs/design-previews/aurora-command-ui-website.html +884 -0
  4. package/docs/design-previews/aurora-command-ui.html +682 -0
  5. package/docs/design-previews/bold-editorial-ui-website.html +658 -0
  6. package/docs/design-previews/bold-editorial-ui.html +717 -0
  7. package/docs/design-previews/clean-saas-ui-website.html +1202 -0
  8. package/docs/design-previews/clean-saas-ui.html +549 -0
  9. package/docs/design-previews/cognitive-core-ui-website.html +1009 -0
  10. package/docs/design-previews/cognitive-core-ui.html +463 -0
  11. package/docs/design-previews/glassmorphism-ui-website.html +572 -0
  12. package/docs/design-previews/glassmorphism-ui.html +886 -0
  13. package/docs/design-previews/index.html +699 -0
  14. package/docs/design-previews/interface-design-website.html +1187 -0
  15. package/docs/design-previews/interface-design.html +513 -0
  16. package/docs/design-previews/neo-brutalist-ui-website.html +621 -0
  17. package/docs/design-previews/neo-brutalist-ui.html +797 -0
  18. package/docs/design-previews/premium-command-center-ui-website.html +1217 -0
  19. package/docs/design-previews/premium-command-center-ui.html +552 -0
  20. package/docs/design-previews/pt.squarespace.com-homepage.html +889 -0
  21. package/docs/design-previews/warm-craft-ui-website.html +684 -0
  22. package/docs/design-previews/warm-craft-ui.html +739 -0
  23. package/docs/en/cli-reference.md +20 -9
  24. package/docs/integrations/sdlc-genius-boundary.md +76 -0
  25. package/docs/integrations/sdlc-genius-eval-matrix.md +75 -0
  26. package/docs/integrations/sdlc-genius-install-checklist.md +93 -0
  27. package/docs/integrations/sdlc-genius-review-samples.md +86 -0
  28. package/docs/pt/README.md +10 -0
  29. package/docs/pt/agent-sharding.md +132 -0
  30. package/docs/pt/agentes.md +9 -2
  31. package/docs/pt/busca-de-contexto.md +129 -0
  32. package/docs/pt/cache-de-contexto.md +156 -0
  33. package/docs/pt/comandos-cli.md +915 -1
  34. package/docs/pt/design-hybrid-forge.md +356 -0
  35. package/docs/pt/devlog-pipeline.md +270 -0
  36. package/docs/pt/fluxo-artefatos.md +178 -0
  37. package/docs/pt/hooks-session-guard.md +454 -0
  38. package/docs/pt/inicio-rapido.md +54 -3
  39. package/docs/pt/inteligencia-adaptativa.md +324 -0
  40. package/docs/pt/monitor-de-contexto.md +158 -0
  41. package/docs/pt/recuperacao-de-sessao.md +125 -0
  42. package/docs/pt/sandbox.md +125 -0
  43. package/docs/pt/sdd-automation-scripts.md +557 -0
  44. package/docs/pt/site-forge.md +309 -0
  45. package/docs/pt/skills.md +98 -6
  46. package/docs/pt/spec-learnings-pipeline.md +265 -0
  47. package/package.json +1 -1
  48. package/src/a2a/client.js +165 -0
  49. package/src/a2a/server.js +223 -0
  50. package/src/agent-loader.js +280 -0
  51. package/src/cli.js +329 -1
  52. package/src/commands/agent-audit.js +397 -0
  53. package/src/commands/agent-export-skill.js +229 -0
  54. package/src/commands/agent-loader.js +85 -0
  55. package/src/commands/artifact-validate.js +189 -0
  56. package/src/commands/brief-gen.js +405 -0
  57. package/src/commands/brief-validate.js +65 -0
  58. package/src/commands/classify.js +256 -0
  59. package/src/commands/context-cache.js +90 -0
  60. package/src/commands/context-compact.js +49 -0
  61. package/src/commands/context-health.js +175 -0
  62. package/src/commands/context-monitor.js +163 -0
  63. package/src/commands/context-search.js +66 -0
  64. package/src/commands/context-trim.js +177 -0
  65. package/src/commands/design-hybrid-options.js +385 -0
  66. package/src/commands/detect-test-runner.js +55 -0
  67. package/src/commands/devlog-export-brains.js +27 -0
  68. package/src/commands/devlog-process.js +292 -0
  69. package/src/commands/devlog-watch.js +131 -0
  70. package/src/commands/feature-close.js +165 -0
  71. package/src/commands/gate-check.js +228 -0
  72. package/src/commands/health.js +214 -0
  73. package/src/commands/hooks-emit.js +253 -0
  74. package/src/commands/hooks-install.js +347 -0
  75. package/src/commands/init.js +54 -13
  76. package/src/commands/install.js +52 -13
  77. package/src/commands/learning-auto-promote.js +195 -0
  78. package/src/commands/learning-evolve.js +364 -0
  79. package/src/commands/learning-export.js +103 -0
  80. package/src/commands/learning-rollback.js +164 -0
  81. package/src/commands/live.js +59 -1
  82. package/src/commands/pattern-detect.js +33 -0
  83. package/src/commands/preflight-context.js +30 -0
  84. package/src/commands/preflight.js +208 -0
  85. package/src/commands/pulse-update.js +130 -0
  86. package/src/commands/recovery.js +43 -0
  87. package/src/commands/runner-daemon.js +274 -0
  88. package/src/commands/runner-plan.js +70 -0
  89. package/src/commands/runner-queue-from-plan.js +166 -0
  90. package/src/commands/runner-queue.js +189 -0
  91. package/src/commands/runner-run.js +129 -0
  92. package/src/commands/runtime.js +47 -1
  93. package/src/commands/sandbox.js +37 -0
  94. package/src/commands/self-implement-loop.js +256 -0
  95. package/src/commands/session-guard.js +218 -0
  96. package/src/commands/setup-context.js +22 -2
  97. package/src/commands/setup.js +178 -0
  98. package/src/commands/sizing.js +165 -0
  99. package/src/commands/skill.js +144 -32
  100. package/src/commands/spec-checkpoint.js +177 -0
  101. package/src/commands/spec-status.js +79 -0
  102. package/src/commands/spec-sync.js +190 -0
  103. package/src/commands/spec-tasks.js +288 -0
  104. package/src/commands/squad-autorun.js +1220 -0
  105. package/src/commands/squad-bus.js +217 -0
  106. package/src/commands/squad-card.js +149 -0
  107. package/src/commands/squad-daemon.js +134 -0
  108. package/src/commands/squad-dependency-graph.js +164 -0
  109. package/src/commands/squad-review.js +106 -0
  110. package/src/commands/squad-scaffold.js +55 -0
  111. package/src/commands/squad-tool-register.js +157 -0
  112. package/src/commands/state-save.js +122 -0
  113. package/src/commands/tool-registry-cmd.js +232 -0
  114. package/src/commands/update.js +9 -0
  115. package/src/commands/verify-gate.js +572 -0
  116. package/src/commands/workflow-execute.js +241 -0
  117. package/src/constants.js +18 -0
  118. package/src/context-cache.js +159 -0
  119. package/src/context-search.js +326 -0
  120. package/src/design-variation-catalog.js +503 -0
  121. package/src/i18n/messages/en.js +32 -2
  122. package/src/i18n/messages/es.js +30 -2
  123. package/src/i18n/messages/fr.js +30 -2
  124. package/src/i18n/messages/pt-BR.js +32 -2
  125. package/src/install-animation.js +260 -0
  126. package/src/install-profile.js +143 -0
  127. package/src/install-wizard.js +475 -0
  128. package/src/installer.js +44 -10
  129. package/src/lib/health-check.js +158 -0
  130. package/src/lib/hook-protocol.js +76 -0
  131. package/src/mcp/apps/squad-dashboard/app.js +163 -0
  132. package/src/mcp/apps/squad-dashboard/index.html +261 -0
  133. package/src/mcp/apps/squad-dashboard/mcp-manifest.json +23 -0
  134. package/src/mcp/resources/squad-state.js +130 -0
  135. package/src/parser.js +7 -1
  136. package/src/preflight-engine.js +443 -0
  137. package/src/recovery-context-session.js +154 -0
  138. package/src/runner/cascade.js +97 -0
  139. package/src/runner/cli-launcher.js +109 -0
  140. package/src/runner/plan-importer.js +63 -0
  141. package/src/runner/queue-store.js +159 -0
  142. package/src/runtime-store.js +158 -4
  143. package/src/sandbox.js +177 -0
  144. package/src/squad/agent-teams-adapter.js +264 -0
  145. package/src/squad/brief-validator.js +350 -0
  146. package/src/squad/bus-bridge.js +140 -0
  147. package/src/squad/context-compactor.js +265 -0
  148. package/src/squad/cross-ai-synthesizer.js +250 -0
  149. package/src/squad/hooks-generator.js +196 -0
  150. package/src/squad/inter-squad-events.js +175 -0
  151. package/src/squad/intra-bus.js +345 -0
  152. package/src/squad/learning-extractor.js +213 -0
  153. package/src/squad/pattern-detector.js +365 -0
  154. package/src/squad/preflight-context.js +296 -0
  155. package/src/squad/recovery-context.js +242 -71
  156. package/src/squad/reflection.js +365 -0
  157. package/src/squad/squad-scaffold.js +177 -0
  158. package/src/squad/state-manager.js +310 -0
  159. package/src/squad/task-decomposer.js +652 -0
  160. package/src/squad/verify-gate.js +303 -0
  161. package/src/tool-executor.js +94 -0
  162. package/src/updater.js +10 -3
  163. package/src/worker-runner.js +186 -1
  164. package/template/.aioson/agents/analyst.md +119 -3
  165. package/template/.aioson/agents/architect.md +98 -0
  166. package/template/.aioson/agents/design-hybrid-forge.md +141 -0
  167. package/template/.aioson/agents/dev.md +335 -14
  168. package/template/.aioson/agents/deyvin.md +117 -2
  169. package/template/.aioson/agents/discovery-design-doc.md +44 -0
  170. package/template/.aioson/agents/genome.md +14 -0
  171. package/template/.aioson/agents/neo.md +78 -1
  172. package/template/.aioson/agents/orache.md +50 -4
  173. package/template/.aioson/agents/orchestrator.md +197 -1
  174. package/template/.aioson/agents/pm.md +93 -0
  175. package/template/.aioson/agents/product.md +77 -4
  176. package/template/.aioson/agents/profiler-enricher.md +14 -0
  177. package/template/.aioson/agents/profiler-forge.md +14 -0
  178. package/template/.aioson/agents/profiler-researcher.md +14 -0
  179. package/template/.aioson/agents/qa.md +249 -19
  180. package/template/.aioson/agents/setup.md +144 -12
  181. package/template/.aioson/agents/sheldon.md +237 -11
  182. package/template/.aioson/agents/site-forge.md +1753 -0
  183. package/template/.aioson/agents/squad.md +162 -0
  184. package/template/.aioson/agents/tester.md +209 -0
  185. package/template/.aioson/agents/ux-ui.md +34 -1
  186. package/template/.aioson/brains/README.md +128 -0
  187. package/template/.aioson/brains/_index.json +16 -0
  188. package/template/.aioson/brains/scripts/query.js +103 -0
  189. package/template/.aioson/brains/site-forge/visual-patterns.brain.json +205 -0
  190. package/template/.aioson/config.md +158 -13
  191. package/template/.aioson/constitution.md +33 -0
  192. package/template/.aioson/context/forensics/.gitkeep +0 -0
  193. package/template/.aioson/context/project-pulse.md +34 -0
  194. package/template/.aioson/context/seeds/seed-example.md +27 -0
  195. package/template/.aioson/context/user-profile.md +42 -0
  196. package/template/.aioson/docs/LAYERS.md +79 -0
  197. package/template/.aioson/docs/README.md +76 -0
  198. package/template/.aioson/docs/example-external-api-context.md +72 -0
  199. package/template/.aioson/locales/en/agents/architect.md +17 -0
  200. package/template/.aioson/locales/en/agents/dev.md +79 -13
  201. package/template/.aioson/locales/en/agents/orache.md +6 -0
  202. package/template/.aioson/locales/en/agents/orchestrator.md +24 -0
  203. package/template/.aioson/locales/en/agents/product.md +50 -0
  204. package/template/.aioson/locales/en/agents/setup.md +33 -1
  205. package/template/.aioson/locales/en/agents/sheldon.md +115 -0
  206. package/template/.aioson/locales/en/agents/squad.md +14 -0
  207. package/template/.aioson/locales/en/agents/tester.md +6 -0
  208. package/template/.aioson/locales/es/agents/analyst.md +2 -0
  209. package/template/.aioson/locales/es/agents/architect.md +19 -0
  210. package/template/.aioson/locales/es/agents/dev.md +64 -4
  211. package/template/.aioson/locales/es/agents/deyvin.md +2 -0
  212. package/template/.aioson/locales/es/agents/discovery-design-doc.md +2 -0
  213. package/template/.aioson/locales/es/agents/genome.md +2 -0
  214. package/template/.aioson/locales/es/agents/neo.md +2 -0
  215. package/template/.aioson/locales/es/agents/orache.md +2 -0
  216. package/template/.aioson/locales/es/agents/orchestrator.md +26 -0
  217. package/template/.aioson/locales/es/agents/pair.md +2 -0
  218. package/template/.aioson/locales/es/agents/pm.md +2 -0
  219. package/template/.aioson/locales/es/agents/product.md +52 -0
  220. package/template/.aioson/locales/es/agents/profiler-enricher.md +2 -0
  221. package/template/.aioson/locales/es/agents/profiler-forge.md +2 -0
  222. package/template/.aioson/locales/es/agents/profiler-researcher.md +2 -0
  223. package/template/.aioson/locales/es/agents/qa.md +2 -0
  224. package/template/.aioson/locales/es/agents/setup.md +35 -1
  225. package/template/.aioson/locales/es/agents/sheldon.md +117 -0
  226. package/template/.aioson/locales/es/agents/squad.md +16 -0
  227. package/template/.aioson/locales/es/agents/tester.md +9 -0
  228. package/template/.aioson/locales/es/agents/ux-ui.md +2 -0
  229. package/template/.aioson/locales/fr/agents/analyst.md +2 -0
  230. package/template/.aioson/locales/fr/agents/architect.md +19 -0
  231. package/template/.aioson/locales/fr/agents/dev.md +64 -4
  232. package/template/.aioson/locales/fr/agents/deyvin.md +2 -0
  233. package/template/.aioson/locales/fr/agents/discovery-design-doc.md +2 -0
  234. package/template/.aioson/locales/fr/agents/genome.md +2 -0
  235. package/template/.aioson/locales/fr/agents/neo.md +2 -0
  236. package/template/.aioson/locales/fr/agents/orache.md +2 -0
  237. package/template/.aioson/locales/fr/agents/orchestrator.md +26 -0
  238. package/template/.aioson/locales/fr/agents/pair.md +2 -0
  239. package/template/.aioson/locales/fr/agents/pm.md +2 -0
  240. package/template/.aioson/locales/fr/agents/product.md +52 -0
  241. package/template/.aioson/locales/fr/agents/profiler-enricher.md +2 -0
  242. package/template/.aioson/locales/fr/agents/profiler-forge.md +2 -0
  243. package/template/.aioson/locales/fr/agents/profiler-researcher.md +2 -0
  244. package/template/.aioson/locales/fr/agents/qa.md +2 -0
  245. package/template/.aioson/locales/fr/agents/setup.md +35 -1
  246. package/template/.aioson/locales/fr/agents/sheldon.md +117 -0
  247. package/template/.aioson/locales/fr/agents/squad.md +16 -0
  248. package/template/.aioson/locales/fr/agents/tester.md +9 -0
  249. package/template/.aioson/locales/fr/agents/ux-ui.md +2 -0
  250. package/template/.aioson/locales/pt-BR/agents/analyst.md +64 -3
  251. package/template/.aioson/locales/pt-BR/agents/architect.md +42 -0
  252. package/template/.aioson/locales/pt-BR/agents/dev.md +147 -14
  253. package/template/.aioson/locales/pt-BR/agents/deyvin.md +47 -0
  254. package/template/.aioson/locales/pt-BR/agents/neo.md +62 -1
  255. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +158 -2
  256. package/template/.aioson/locales/pt-BR/agents/pm.md +95 -1
  257. package/template/.aioson/locales/pt-BR/agents/product.md +145 -18
  258. package/template/.aioson/locales/pt-BR/agents/qa.md +16 -0
  259. package/template/.aioson/locales/pt-BR/agents/setup.md +134 -19
  260. package/template/.aioson/locales/pt-BR/agents/sheldon.md +132 -1
  261. package/template/.aioson/locales/pt-BR/agents/squad.md +14 -0
  262. package/template/.aioson/locales/pt-BR/agents/tester.md +449 -0
  263. package/template/.aioson/rules/README.md +69 -0
  264. package/template/.aioson/rules/data-format-convention.md +136 -0
  265. package/template/.aioson/rules/example-monetary-values.md +30 -0
  266. package/template/.aioson/schemas/squad-manifest.schema.json +124 -3
  267. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +243 -0
  268. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -0
  269. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -0
  270. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -0
  271. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -0
  272. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -0
  273. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +482 -0
  274. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +387 -0
  275. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +222 -0
  276. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -0
  277. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -0
  278. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -0
  279. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -0
  280. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -0
  281. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -0
  282. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -0
  283. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +213 -0
  284. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -0
  285. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -0
  286. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -0
  287. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -0
  288. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -0
  289. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -0
  290. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -0
  291. package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -0
  292. package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +66 -0
  293. package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +368 -0
  294. package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -0
  295. package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -0
  296. package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -0
  297. package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +165 -0
  298. package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +46 -0
  299. package/template/.aioson/skills/process/aioson-spec-driven/references/analyst.md +30 -0
  300. package/template/.aioson/skills/process/aioson-spec-driven/references/approval-gates.md +109 -0
  301. package/template/.aioson/skills/process/aioson-spec-driven/references/architect.md +23 -0
  302. package/template/.aioson/skills/process/aioson-spec-driven/references/artifact-map.md +44 -0
  303. package/template/.aioson/skills/process/aioson-spec-driven/references/classification-map.md +37 -0
  304. package/template/.aioson/skills/process/aioson-spec-driven/references/dev.md +47 -0
  305. package/template/.aioson/skills/process/aioson-spec-driven/references/deyvin.md +27 -0
  306. package/template/.aioson/skills/process/aioson-spec-driven/references/hardening-lane.md +49 -0
  307. package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +101 -0
  308. package/template/.aioson/skills/process/aioson-spec-driven/references/product.md +25 -0
  309. package/template/.aioson/skills/process/aioson-spec-driven/references/qa.md +30 -0
  310. package/template/.aioson/skills/process/aioson-spec-driven/references/sheldon.md +25 -0
  311. package/template/.aioson/skills/process/aioson-spec-driven/references/ui-language.md +75 -0
  312. package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +147 -0
  313. package/template/.aioson/skills/process/design-hybrid-forge/references/crossover-protocol.md +221 -0
  314. package/template/.aioson/skills/process/design-hybrid-forge/references/naming-registry.md +88 -0
  315. package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +306 -0
  316. package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +149 -0
  317. package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +208 -0
  318. package/template/.aioson/skills/process/design-hybrid-forge/references/variation-library.md +125 -0
  319. package/template/.aioson/skills/process/simplify/SKILL.md +173 -0
  320. package/template/.aioson/skills/static/context-budget-guide.md +46 -0
  321. package/template/.aioson/skills/static/harness-sensors.md +74 -0
  322. package/template/.aioson/skills/static/multi-agent-patterns.md +43 -0
  323. package/template/.aioson/skills/static/react-motion-patterns.md +22 -0
  324. package/template/.aioson/skills/static/static-html-patterns/checklists.md +43 -0
  325. package/template/.aioson/skills/static/static-html-patterns/css-tokens.md +609 -0
  326. package/template/.aioson/skills/static/static-html-patterns/motion.md +193 -0
  327. package/template/.aioson/skills/static/static-html-patterns/premium.md +711 -0
  328. package/template/.aioson/skills/static/static-html-patterns/structure.md +209 -0
  329. package/template/.aioson/skills/static/static-html-patterns/utilities.md +190 -0
  330. package/template/.aioson/skills/static/static-html-patterns.md +58 -1913
  331. package/template/.aioson/skills/static/threejs-patterns.md +929 -0
  332. package/template/.aioson/skills/static/web-research-cache.md +112 -0
  333. package/template/.aioson/tasks/implementation-plan.md +21 -1
  334. package/template/.claude/commands/aioson/agent/design-hybrid-forge.md +5 -0
  335. package/template/.claude/commands/aioson/agent/orache.md +5 -0
  336. package/template/.claude/commands/aioson/agent/sheldon.md +5 -0
  337. package/template/.claude/commands/aioson/agent/site-forge.md +5 -0
  338. package/template/AGENTS.md +75 -1
  339. package/template/CLAUDE.md +31 -0
  340. package/template/OPENCODE.md +4 -0
  341. package/template/researchs/.gitkeep +0 -0
@@ -0,0 +1,178 @@
1
+ # Fluxo de artefatos entre agentes
2
+
3
+ > Como os artefatos produzidos por @product e @sheldon chegam ao @analyst e ao @dev — e o que cada agente lê de fato.
4
+
5
+ ---
6
+
7
+ ## Visão geral
8
+
9
+ Cada agente produz arquivos que os agentes subsequentes leem. Nenhum agente lê tudo de uma vez — cada um carrega apenas o que precisa. Este documento mapeia o que é criado, onde é salvo e quem consome o quê.
10
+
11
+ ```
12
+ @product → prd.md / prd-{slug}.md
13
+
14
+ @sheldon (N rodadas) → enriquece PRD + gera sheldon-enrichment-{slug}.md
15
+ pode criar .aioson/plans/{slug}/manifest.md + plan-{fase}.md
16
+
17
+ @analyst → lê sheldon-enrichment → discovery.md / requirements-{slug}.md + spec-{slug}.md
18
+
19
+ @dev → carrega minimum context package → implementa fase por fase
20
+ ```
21
+
22
+ ---
23
+
24
+ ## O que @product gera
25
+
26
+ | Artefato | Onde | Quando |
27
+ |---|---|---|
28
+ | `prd.md` | `.aioson/context/` | Projeto novo |
29
+ | `prd-{slug}.md` | `.aioson/context/` | Feature nova |
30
+ | `features.md` | `.aioson/context/` | Sempre que uma feature é aberta |
31
+ | `plans/source-manifest.md` | raiz do projeto | Se usou `plans/*.md` ou `prds/*.md` como fonte |
32
+
33
+ O PRD produzido pelo @product é o **documento base vivo** — nenhum agente downstream reescreve Vision, Problem ou Users. Eles só adicionam.
34
+
35
+ ---
36
+
37
+ ## O que @sheldon gera (pode rodar N vezes)
38
+
39
+ @sheldon avalia o escopo total do PRD e decide como organizar o trabalho com base em um **score de complexidade**:
40
+
41
+ | Score | Decisão | O que é criado |
42
+ |---|---|---|
43
+ | 0–3 | Enriquecimento in-place | Expande o próprio `prd-{slug}.md` diretamente |
44
+ | 4–6 | In-place + Delivery plan | Expande o PRD e adiciona `## Delivery plan` com fases numeradas dentro do arquivo |
45
+ | 7+ | Plano externo | Cria `.aioson/plans/{slug}/manifest.md` + `plan-{slug-fase}.md` por fase |
46
+
47
+ **Em todos os casos**, @sheldon gera:
48
+ - `sheldon-enrichment-{slug}.md` (ou `sheldon-enrichment.md`) em `.aioson/context/` — log de cada rodada, decisões de gray areas, score e readiness
49
+
50
+ **No Modo C (validação completa)**, gera adicionalmente:
51
+ - `sheldon-validation.md` — relatório de auditoria com gate por agente (🟢/🟡/🔴)
52
+ - `.aioson/plans/{slug}/checklist.md` — checklist de implementação por fase
53
+
54
+ **Pesquisas web (RF-WEB)** ficam em:
55
+ - `researchs/{slug}/summary.md` — cache de 7 dias, compartilhado com outros agentes
56
+
57
+ O campo `readiness` em `sheldon-enrichment-{slug}.md` define se o PRD está pronto:
58
+ - `ready_for_downstream` → pode avançar para @analyst
59
+ - `needs_work` → itens bloqueantes ainda abertos
60
+ - `needs_enrichment` → sessão iniciada mas não concluída
61
+
62
+ ---
63
+
64
+ ## Como @analyst consome esses artefatos
65
+
66
+ @analyst lê o arquivo de enrichment **silenciosamente** antes de iniciar qualquer pergunta:
67
+
68
+ ```
69
+ Se sheldon-enrichment-{slug}.md existir:
70
+ → ler — não re-perguntar o que já está documentado
71
+ → se plan_path estiver setado: ler manifest e scopar discovery para Fase 1 primeiro
72
+ ```
73
+
74
+ **Em modo feature**, @analyst produz:
75
+ - `requirements-{slug}.md` — regras de negócio com IDs (`REQ-{slug}-N`), acceptance criteria verificáveis (`AC-{slug}-N`), edge cases e out-of-scope explícito
76
+ - `spec-{slug}.md` — esqueleto de memória da feature com `phase_gates` no frontmatter
77
+
78
+ O `spec-{slug}.md` é o **artefato de handoff para @dev** — ele inclui as decisões já tomadas, dependências e o status de cada gate (`requirements`, `design`, `plan`).
79
+
80
+ ---
81
+
82
+ ## Como @dev consome tudo isso
83
+
84
+ @dev usa um **minimum context package** — nunca carrega mais de 5 arquivos antes do primeiro código.
85
+
86
+ | Modo | O que @dev carrega |
87
+ |---|---|
88
+ | Feature MICRO | `project.context.md` + `prd-{slug}.md` |
89
+ | Feature SMALL/MEDIUM | `project.context.md` + `spec-{slug}.md` + `implementation-plan-{slug}.md` |
90
+ | Feature com plano do Sheldon | `project.context.md` + `spec-{slug}.md` + `.aioson/plans/{slug}/manifest.md` + arquivo da fase atual |
91
+ | Modo projeto | `project.context.md` + `spec.md` + `skeleton-system.md` |
92
+
93
+ ### Como o plano do Sheldon chega ao @dev
94
+
95
+ Quando @sheldon criou um plano externo (score 7+):
96
+
97
+ 1. @dev detecta `.aioson/plans/*/manifest.md` antes de qualquer implementação
98
+ 2. Lê o `manifest.md` para saber qual fase está com `status: pending`
99
+ 3. Carrega **apenas o arquivo dessa fase** (ex: `plan-autenticacao.md`)
100
+ 4. Implementa a fase, marca como `done` no manifest
101
+ 5. Na próxima sessão, pega a próxima fase
102
+
103
+ Decisões marcadas como `pre-tomadas` no manifest são **finais** — @dev não re-discute. Decisões `adiadas` são dele para tomar e registrar em `spec-{slug}.md`.
104
+
105
+ ### O controlador de estado entre sessões: `dev-state.md`
106
+
107
+ `.aioson/context/dev-state.md` é o primeiro arquivo que @dev lê em cada sessão:
108
+
109
+ ```markdown
110
+ ---
111
+ active_feature: {slug}
112
+ active_phase: 2
113
+ active_plan: .aioson/plans/{slug}/manifest.md
114
+ context_package:
115
+ - .aioson/context/project.context.md
116
+ - .aioson/context/spec-{slug}.md
117
+ - .aioson/plans/{slug}/manifest.md
118
+ - .aioson/plans/{slug}/plan-autenticacao.md
119
+ next_step: "Implementar migration da tabela users + teste RED"
120
+ status: in_progress
121
+ ---
122
+ ```
123
+
124
+ Se `dev-state.md` existe, @dev carrega **exatamente** o `context_package` listado e começa no `next_step` — sem exploração, sem leitura extra. É o ponteiro preciso entre sessões.
125
+
126
+ ---
127
+
128
+ ## O que @dev nunca carrega
129
+
130
+ Regras duras — sem exceções:
131
+
132
+ - Qualquer arquivo em `.aioson/agents/` — arquivos de agente nunca são contexto de @dev
133
+ - `spec-{outro-slug}.md` — specs de features que não são a ativa
134
+ - PRDs de features marcadas como `done` em `features.md`
135
+ - `discovery.md` ou `architecture.md` a menos que estejam explicitamente no plano ou no `dev-state.md`
136
+ - Mais de 5 arquivos antes do primeiro código (auto-verificação: se leu 5 arquivos sem escrever nada → para e reporta)
137
+
138
+ ---
139
+
140
+ ## Por que @analyst é o elo entre @sheldon e @dev
141
+
142
+ Quando @sheldon cria um plano externo, **@analyst é obrigatório** antes de @dev para projetos SMALL/MEDIUM. O motivo:
143
+
144
+ - O manifest do Sheldon define **o quê** (fases, escopo, sequência)
145
+ - O @analyst produz **como** (entidades concretas, campos, regras de negócio com IDs, ACs verificáveis)
146
+ - O @dev precisa de `requirements-{slug}.md` e `spec-{slug}.md` para implementar com qualidade — sem eles, há uma hard constraint no próprio agente: `NEVER write production code for SMALL/MEDIUM projects without approved spec artifacts`
147
+
148
+ Se você pular @analyst e ir direto para @dev com um plano do Sheldon, @dev entende a estrutura do plano via `manifest.md`, mas vai parar e avisar que faltam os artefatos de spec.
149
+
150
+ ---
151
+
152
+ ## Arquivos que @dev pode ler — universo completo
153
+
154
+ Esta é a lista completa de arquivos que @dev pode consultar em qualquer sessão. Na prática, ele carrega apenas o subconjunto necessário para o step atual:
155
+
156
+ | Arquivo | Quando carregar |
157
+ |---|---|
158
+ | `project.context.md` | Sempre |
159
+ | `dev-state.md` | Sempre (se existir — define o restante) |
160
+ | `features.md` | Cold start apenas |
161
+ | `spec-{slug}.md` | Feature ativa |
162
+ | `implementation-plan-{slug}.md` | Se plano existe |
163
+ | `.aioson/plans/{slug}/manifest.md` + fase atual | Se plano Sheldon existe |
164
+ | `skeleton-system.md` | Só ao navegar estrutura do projeto |
165
+ | `design-doc.md` | Só se listado no plano |
166
+ | `readiness.md` | Só na primeira sessão de uma feature nova |
167
+ | `architecture.md` | SMALL/MEDIUM, só se listado no plano |
168
+ | `discovery.md` | SMALL/MEDIUM, só se listado no plano |
169
+ | `prd-{slug}.md` | Só na primeira sessão de uma feature nova |
170
+ | `ui-spec.md` | Só ao implementar componentes de UI |
171
+
172
+ ---
173
+
174
+ ## Veja também
175
+
176
+ - [Guia de Agentes](./agentes.md) — quando usar cada agente e o que ele entrega
177
+ - [Cenários completos com exemplos práticos](./cenarios.md)
178
+ - [Recuperação de sessão](./recuperacao-de-sessao.md)
@@ -0,0 +1,454 @@
1
+ # Hooks & Session Guard
2
+
3
+ > Visibilidade automática no dashboard sem nenhuma chamada manual ao CLI durante a sessão.
4
+
5
+ Por padrão, o dashboard só vê o que o CLI registrou explicitamente. Com o sistema de hooks, cada vez que o agente escreve um arquivo, roda um comando ou termina a sessão, um evento é automaticamente gravado no SQLite — sem o agente precisar chamar `aioson` manualmente.
6
+
7
+ ---
8
+
9
+ ## Como funciona
10
+
11
+ ```
12
+ Claude Code / Antigravity / Codex
13
+ └─ agente escreve src/cart.ts (PostToolUse: Write)
14
+ └─ hook dispara → aioson hooks:emit
15
+ └─ verifica se live session existe
16
+ └─ se não: auto-inicia sessão (session:guard ou auto-start inline)
17
+ └─ grava evento "artifact" no SQLite + events.ndjson
18
+ └─ dashboard atualiza em tempo real
19
+
20
+ └─ agente roda npm test (PostToolUse: Bash)
21
+ └─ hook dispara → aioson hooks:emit
22
+ └─ grava evento "step_done" no SQLite
23
+
24
+ └─ sessão termina (Stop / SessionEnd)
25
+ └─ hook dispara → aioson agent:done
26
+ └─ fecha a run, registra completion
27
+ ```
28
+
29
+ O `session:guard` é opcional — o `hooks:emit` já inicia a sessão automaticamente na primeira chamada se não houver uma ativa.
30
+
31
+ ---
32
+
33
+ ## Passo a passo: Claude Code
34
+
35
+ ### 1. Instalar os hooks
36
+
37
+ ```bash
38
+ # Instalar hooks para o agente dev (padrão)
39
+ aioson hooks:install . --agent=dev --tool=claude
40
+
41
+ # Para outro agente (ex: qa)
42
+ aioson hooks:install . --agent=qa --tool=claude
43
+
44
+ # Preview sem modificar nada
45
+ aioson hooks:install . --agent=dev --tool=claude --dry-run
46
+ ```
47
+
48
+ Saída:
49
+
50
+ ```
51
+ Hooks Install — agent: @dev
52
+ ──────────────────────────────────────────────────
53
+ ✓ Claude Code — /home/user/.claude/settings.json
54
+
55
+ Hooks installed. From now on:
56
+ • Every file write/edit → logged as artifact event
57
+ • Every bash command → logged as step_done event
58
+ • Session end → logged as agent:done
59
+
60
+ To verify: aioson live:status . --agent=dev
61
+ To uninstall: aioson hooks:uninstall --tool=claude
62
+ ```
63
+
64
+ ### 2. O que é adicionado em `~/.claude/settings.json`
65
+
66
+ ```json
67
+ {
68
+ "hooks": {
69
+ "PostToolUse": [
70
+ {
71
+ "matcher": "Write|Edit|MultiEdit",
72
+ "hooks": [{
73
+ "type": "command",
74
+ "command": "aioson hooks:emit \"$PWD\" --agent=dev --source=claude 2>/dev/null || true"
75
+ }]
76
+ },
77
+ {
78
+ "matcher": "Bash",
79
+ "hooks": [{
80
+ "type": "command",
81
+ "command": "aioson hooks:emit \"$PWD\" --agent=dev --source=claude 2>/dev/null || true"
82
+ }]
83
+ },
84
+ {
85
+ "matcher": "Task|TodoWrite",
86
+ "hooks": [{
87
+ "type": "command",
88
+ "command": "aioson hooks:emit \"$PWD\" --agent=dev --source=claude 2>/dev/null || true"
89
+ }]
90
+ }
91
+ ],
92
+ "Stop": [
93
+ {
94
+ "hooks": [{
95
+ "type": "command",
96
+ "command": "aioson agent:done \"$PWD\" --agent=dev --summary=\"Session ended via dev hook\" 2>/dev/null || true"
97
+ }]
98
+ }
99
+ ]
100
+ }
101
+ }
102
+ ```
103
+
104
+ O `2>/dev/null || true` garante que o hook nunca bloqueia o agente mesmo que o AIOSON falhe.
105
+
106
+ ### 3. Verificar que está funcionando
107
+
108
+ ```bash
109
+ # Abrir Claude Code e fazer qualquer edição de arquivo
110
+ # Depois, checar o status:
111
+ aioson live:status . --agent=dev
112
+
113
+ # Ou ver eventos recentes:
114
+ aioson runtime:status . --json | jq '.recentEvents'
115
+ ```
116
+
117
+ ### 4. Remover os hooks
118
+
119
+ ```bash
120
+ aioson hooks:uninstall . --agent=dev --tool=claude
121
+ ```
122
+
123
+ ---
124
+
125
+ ## Passo a passo: Antigravity (Google)
126
+
127
+ Antigravity tem um sistema de hooks mais rico — inclui `SessionStart` e `SessionEnd`, o que elimina a necessidade do `session:guard`.
128
+
129
+ ### 1. Instalar os hooks
130
+
131
+ ```bash
132
+ aioson hooks:install . --agent=dev --tool=antigravity
133
+ ```
134
+
135
+ Saída:
136
+
137
+ ```
138
+ Hooks Install — agent: @dev
139
+ ──────────────────────────────────────────────────
140
+ ✓ Antigravity global — /home/user/.gemini/antigravity/hooks.json
141
+ ✓ Antigravity workspace — .agents/hooks.json
142
+ ```
143
+
144
+ ### 2. O que é configurado
145
+
146
+ **Global** (`~/.gemini/antigravity/hooks.json`):
147
+
148
+ ```json
149
+ {
150
+ "hooks": {
151
+ "SessionStart": [{
152
+ "type": "command",
153
+ "command": "aioson live:start \"$PWD\" --agent=dev --tool=antigravity --no-launch 2>/dev/null || true"
154
+ }],
155
+ "PostToolUse": [
156
+ {
157
+ "matcher": "Write|Edit|MultiEdit",
158
+ "hooks": [{ "type": "command", "command": "aioson hooks:emit \"$PWD\" --agent=dev --source=antigravity 2>/dev/null || true" }]
159
+ },
160
+ {
161
+ "matcher": "Bash",
162
+ "hooks": [{ "type": "command", "command": "aioson hooks:emit \"$PWD\" --agent=dev --source=antigravity 2>/dev/null || true" }]
163
+ }
164
+ ],
165
+ "SessionEnd": [{ "type": "command", "command": "aioson agent:done \"$PWD\" --agent=dev --summary=\"Session ended via dev hook\" 2>/dev/null || true" }],
166
+ "Stop": [{ "type": "command", "command": "aioson agent:done \"$PWD\" --agent=dev --summary=\"Session ended via dev hook\" 2>/dev/null || true" }]
167
+ }
168
+ }
169
+ ```
170
+
171
+ **Workspace** (`.agents/hooks.json` na pasta do projeto — sobrescreve global):
172
+
173
+ Mesma estrutura, mas scoped para o projeto. Útil quando o agente varia por projeto.
174
+
175
+ ### 3. Diferença do Claude Code
176
+
177
+ | Feature | Claude Code | Antigravity |
178
+ |---|---|---|
179
+ | `SessionStart` hook | ✗ Não tem | ✓ Disponível |
180
+ | `SessionEnd` hook | ✗ Apenas `Stop` | ✓ Disponível |
181
+ | `SubagentStop` hook | ✗ Não tem | ✓ Disponível |
182
+ | Config location | `~/.claude/settings.json` | `~/.gemini/antigravity/` + `.agents/` |
183
+ | Workspace override | `~/.claude/projects/` | `.agents/hooks.json` |
184
+
185
+ Com Antigravity, a sessão é aberta no `SessionStart` (limpo) e fechada no `SessionEnd` (limpo). Com Claude Code, o `hooks:emit` auto-inicia a sessão na primeira tool call.
186
+
187
+ ---
188
+
189
+ ## Passo a passo: Codex (OpenAI)
190
+
191
+ Codex CLI **não tem sistema de hooks nativo**. A solução é um wrapper shell que envolve o comando `codex`.
192
+
193
+ ### 1. Gerar o wrapper
194
+
195
+ ```bash
196
+ aioson hooks:install . --agent=dev --tool=codex
197
+ ```
198
+
199
+ Saída:
200
+
201
+ ```
202
+ Hooks Install — agent: @dev
203
+ ──────────────────────────────────────────────────
204
+ ✓ Codex wrapper — /home/user/.codex/aioson-wrapper.sh
205
+ ⚠ Codex has no native hooks. Add this to ~/.bashrc:
206
+ alias codex='/home/user/.codex/aioson-wrapper.sh'
207
+ Or rename: mv $(which codex) $(which codex)-bin
208
+ ```
209
+
210
+ ### 2. Ativar o wrapper
211
+
212
+ **Opção A — Alias (recomendado):**
213
+
214
+ ```bash
215
+ echo "alias codex='~/.codex/aioson-wrapper.sh'" >> ~/.bashrc
216
+ source ~/.bashrc
217
+ ```
218
+
219
+ **Opção B — Rename:**
220
+
221
+ ```bash
222
+ mv $(which codex) $(which codex)-bin
223
+ cp ~/.codex/aioson-wrapper.sh $(which codex)-bin/../codex
224
+ chmod +x $(which codex)-bin/../codex
225
+ ```
226
+
227
+ ### 3. O que o wrapper faz
228
+
229
+ ```bash
230
+ # Quando você roda: codex "implemente o cart"
231
+ # O wrapper executa:
232
+ aioson live:start "$PWD" --agent=dev --tool=codex --no-launch # abre sessão
233
+ codex-bin "implemente o cart" # roda Codex
234
+ aioson agent:done "$PWD" --agent=dev --summary="..." # fecha sessão
235
+ ```
236
+
237
+ **Limitação:** sem hooks nativos, não há eventos intermediários (só abertura e fechamento de sessão). Para eventos durante a sessão com Codex, use `devlog:watch` em paralelo.
238
+
239
+ ---
240
+
241
+ ## Instalar para todos os tools detectados
242
+
243
+ ```bash
244
+ # Detecta automaticamente o que está instalado e configura tudo
245
+ aioson hooks:install . --agent=dev --tool=all
246
+ ```
247
+
248
+ Saída se Claude Code e Antigravity estiverem instalados:
249
+
250
+ ```
251
+ Detected tools: claude, antigravity
252
+ Hooks Install — agent: @dev
253
+ ──────────────────────────────────────────────────
254
+ ✓ Claude Code — /home/user/.claude/settings.json
255
+ ✓ Antigravity global — /home/user/.gemini/antigravity/hooks.json
256
+ ✓ Antigravity workspace — .agents/hooks.json
257
+ ```
258
+
259
+ ---
260
+
261
+ ## session:guard — supervisor de sessão
262
+
263
+ O `session:guard` é um processo de fundo que garante que uma live session esteja sempre ativa. Útil quando você quer que a sessão apareça no dashboard **antes** da primeira tool call.
264
+
265
+ ```bash
266
+ # Iniciar em background
267
+ aioson session:guard . --agent=dev --tool=claude &
268
+
269
+ # Com idle timeout customizado (padrão: 60 minutos)
270
+ aioson session:guard . --agent=dev --tool=claude --idle-minutes=30 &
271
+
272
+ # Verificação única (sem loop — útil para scripts)
273
+ aioson session:guard . --agent=dev --tool=claude --once
274
+ ```
275
+
276
+ Saída durante operação:
277
+
278
+ ```
279
+ [session:guard] Watching: /meu-projeto
280
+ [session:guard] Agent: @dev | Tool: claude | Idle timeout: 60m
281
+ [session:guard] Press Ctrl+C to stop.
282
+ [session:guard] Session started: guard-dev-1711234567 (run: dev-run-xxx)
283
+ ... (silencioso até próximo evento)
284
+ [session:guard] Idle for 62m — closing session
285
+ [session:guard] Session closed: dev-run-xxx (Idle for 62 minutes)
286
+ ```
287
+
288
+ Para parar: `Ctrl+C` ou `kill %1`.
289
+
290
+ ### Quando usar session:guard
291
+
292
+ | Cenário | Recomendação |
293
+ |---|---|
294
+ | Usando Claude Code com hooks instalados | `session:guard` é opcional — `hooks:emit` auto-inicia |
295
+ | Quer que a sessão apareça no dashboard antes de começar | Use `session:guard --once` antes de abrir o Claude Code |
296
+ | Sessões longas com pausas > 60 min | Use `session:guard --idle-minutes=120` |
297
+ | Antigravity | Não precisa — `SessionStart` hook cuida disso |
298
+
299
+ ---
300
+
301
+ ## hooks:emit — o que cada tool registra
302
+
303
+ | Tool call | Tipo de evento | Exemplo de mensagem |
304
+ |---|---|---|
305
+ | `Write` (criar arquivo) | `artifact` | `Write: cart.ts` |
306
+ | `Edit` / `MultiEdit` | `artifact` | `Edit: src/cart.ts` |
307
+ | `Bash` (rodar comando) | `step_done` | `$ npm test -- --filter=cart` |
308
+ | `Task` (sub-agente) | `note` | `Task launched` |
309
+ | `TodoWrite` | `note` | `Task list updated` |
310
+ | `Read`, `Glob`, `Grep` | *(ignorado)* | Ferramentas somente-leitura não geram eventos |
311
+
312
+ ### Emissão manual durante sessão
313
+
314
+ Mesmo com hooks instalados, você pode emitir eventos adicionais manualmente:
315
+
316
+ ```bash
317
+ # Checkpoint de plano com progresso
318
+ aioson runtime:emit . --agent=dev \
319
+ --type=plan_checkpoint \
320
+ --plan-step=FASE-1 \
321
+ --summary="Migration criada e testada" \
322
+ --progress-pct=40
323
+
324
+ # Blocker
325
+ aioson runtime:emit . --agent=dev \
326
+ --type=task_blocked \
327
+ --summary="Aguardando schema de pagamentos"
328
+ ```
329
+
330
+ ---
331
+
332
+ ## Fluxo completo recomendado
333
+
334
+ ### Setup inicial (uma vez)
335
+
336
+ ```bash
337
+ # Instalar hooks para a ferramenta que você usa
338
+ aioson hooks:install . --agent=dev --tool=claude # ou --tool=antigravity ou --tool=all
339
+ ```
340
+
341
+ ### Início de cada sessão de trabalho
342
+
343
+ ```bash
344
+ # Opcional — garante sessão visível antes da primeira tool call
345
+ aioson session:guard . --agent=dev --tool=claude --once
346
+
347
+ # Abrir Claude Code / Antigravity normalmente
348
+ claude # ou agy (Antigravity)
349
+ ```
350
+
351
+ ### Durante a sessão
352
+
353
+ Nada precisa ser feito — os hooks capturam automaticamente:
354
+ - Cada arquivo criado/editado → evento `artifact`
355
+ - Cada comando bash → evento `step_done`
356
+ - Tarefas no TodoWrite → evento `note`
357
+
358
+ ### Fim da sessão
359
+
360
+ ```bash
361
+ # Verificar o que foi registrado
362
+ aioson live:status . --agent=dev
363
+
364
+ # Acompanhar no dashboard
365
+ # abrir o aioson-dashboard e navegar até o projeto
366
+ ```
367
+
368
+ ---
369
+
370
+ ## Verificação e diagnóstico
371
+
372
+ ```bash
373
+ # Ver se a sessão está ativa
374
+ aioson live:status . --agent=dev
375
+
376
+ # Ver últimos eventos registrados
377
+ aioson runtime:status . --json | jq '.recentEvents[:5]'
378
+
379
+ # Ver se os hooks estão configurados (inspecionar settings.json)
380
+ cat ~/.claude/settings.json | jq '.hooks'
381
+
382
+ # Testar manualmente o hooks:emit (simula uma tool call Write)
383
+ echo '{"tool_name":"Write","tool_input":{"file_path":"src/test.ts"},"session_id":"test-123"}' | \
384
+ aioson hooks:emit . --agent=dev --source=claude
385
+
386
+ # Ver se o evento chegou
387
+ aioson runtime:status . --json | jq '.recentEvents[0]'
388
+ ```
389
+
390
+ ---
391
+
392
+ ## Troubleshooting
393
+
394
+ ### "Nenhum evento aparece no dashboard"
395
+
396
+ 1. Verificar se os hooks estão configurados: `cat ~/.claude/settings.json | jq '.hooks'`
397
+ 2. Verificar se `aioson` está no PATH: `which aioson`
398
+ 3. Testar manualmente: `aioson hooks:emit . --agent=dev --source=claude` (sem stdin — deve retornar `{ok:true,skipped:true}`)
399
+
400
+ ### "Session not found quando rodo hooks:emit"
401
+
402
+ O `hooks:emit` cria a sessão automaticamente na primeira chamada. Se isso não está acontecendo:
403
+
404
+ ```bash
405
+ # Verificar se existe banco SQLite
406
+ ls .aioson/runtime/aios.sqlite
407
+
408
+ # Se não existe, inicializar
409
+ aioson runtime:init .
410
+ ```
411
+
412
+ ### "Hook está bloqueando o Claude Code"
413
+
414
+ O hook usa `2>/dev/null || true` — nunca deve bloquear. Se estiver bloqueando:
415
+
416
+ ```bash
417
+ # Verificar se o hooks:emit está travando
418
+ time echo '{}' | aioson hooks:emit . --agent=dev --source=claude
419
+ # Deve completar em < 200ms
420
+ ```
421
+
422
+ ### "Quero hooks só para o projeto atual, não global"
423
+
424
+ Para Claude Code, a configuração é sempre global (`~/.claude/settings.json`). Para limitar a um projeto específico, adicione uma condição no hook command:
425
+
426
+ ```bash
427
+ # Hook condicional: só emite se estiver na pasta do projeto
428
+ [ "$PWD" = "/caminho/do/projeto" ] && aioson hooks:emit "$PWD" --agent=dev --source=claude 2>/dev/null; true
429
+ ```
430
+
431
+ Para Antigravity, use `.agents/hooks.json` na pasta do projeto em vez do global.
432
+
433
+ ---
434
+
435
+ ## Referência rápida
436
+
437
+ ```bash
438
+ # Instalar hooks
439
+ aioson hooks:install . --agent=dev --tool=claude
440
+ aioson hooks:install . --agent=dev --tool=antigravity
441
+ aioson hooks:install . --agent=dev --tool=all
442
+
443
+ # Remover hooks
444
+ aioson hooks:uninstall . --agent=dev --tool=claude
445
+
446
+ # Supervisor de sessão
447
+ aioson session:guard . --agent=dev --tool=claude &
448
+ aioson session:guard . --agent=dev --tool=claude --once
449
+ aioson session:guard . --agent=dev --tool=claude --idle-minutes=30 &
450
+
451
+ # Emissão manual (chamada pelo hook — raramente precisa chamar direto)
452
+ echo '{"tool_name":"Write","tool_input":{"file_path":"src/foo.ts"}}' | \
453
+ aioson hooks:emit . --agent=dev --source=claude
454
+ ```
@@ -12,11 +12,20 @@
12
12
 
13
13
  ## 1. Instalação
14
14
 
15
+ Ao rodar o `init` ou `install`, um **wizard interativo** aparece para você escolher:
16
+
17
+ 1. **Quais ferramentas AI** usar (Claude Code, Codex, Gemini, OpenCode)
18
+ 2. **Qual modo** (Development ou Development + Squads)
19
+ 3. **Design system** (opcional) — Clean SaaS UI, Aurora Command UI, Cognitive Core UI, etc.
20
+ 4. **Idioma dos agentes** — English, Português, Español, Français
21
+
22
+ Só os arquivos relevantes são copiados. Nenhuma dependência extra é instalada.
23
+
15
24
  ### Novo projeto (recomendado)
16
25
 
17
26
  ```bash
18
- mkdir meu-projeto && cd meu-projeto
19
- npx @jaimevalasek/aioson init
27
+ npx @jaimevalasek/aioson init meu-projeto
28
+ cd meu-projeto
20
29
  ```
21
30
 
22
31
  ### Projeto existente
@@ -26,7 +35,49 @@ cd meu-projeto
26
35
  npx @jaimevalasek/aioson install
27
36
  ```
28
37
 
29
- Isso cria a pasta `.aioson/` com todos os arquivos de configuração, agentes e contexto.
38
+ ### Instalar tudo de uma vez (`--all`)
39
+
40
+ Use `--all` para pular o wizard e instalar imediatamente com todas as ferramentas e squads ativados:
41
+
42
+ ```bash
43
+ # Cria projeto e instala tudo (sem wizard)
44
+ npx @jaimevalasek/aioson init meu-projeto --all
45
+
46
+ # Instala em projeto existente (todas as ferramentas + squads)
47
+ npx @jaimevalasek/aioson install --all
48
+ ```
49
+
50
+ **O que o `--all` instala:**
51
+ - Ferramentas: Claude Code, Codex, Gemini, OpenCode
52
+ - Modo: Development + Squads
53
+ - Design: nenhum
54
+ - Idioma: English
55
+
56
+ ### Re-configurar depois (adicionar ferramentas/modos)
57
+
58
+ Se precisar adicionar uma ferramenta ou ativar Squads depois:
59
+
60
+ ```bash
61
+ npx @jaimevalasek/aioson install --reconfigure
62
+ ```
63
+
64
+ Isso roda o wizard novamente — só os arquivos relevantes ao novo perfil são atualizados.
65
+
66
+ ### CI / automação (sem wizard)
67
+
68
+ ```bash
69
+ npx @jaimevalasek/aioson install --no-interactive
70
+ ```
71
+
72
+ Instala todos os arquivos sem perguntar (comportamento padrão antes do wizard).
73
+
74
+ ### Atualizar para nova versão
75
+
76
+ ```bash
77
+ npx @jaimevalasek/aioson update
78
+ ```
79
+
80
+ O update respeita o perfil salvo — só atualiza os arquivos que foram instalados originalmente.
30
81
 
31
82
  Se o projeto já for brownfield e você quiser gerar um panorama inicial da base, rode depois:
32
83