@jaimevalasek/aioson 1.8.0 → 1.9.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 (967) hide show
  1. package/CHANGELOG.md +595 -595
  2. package/CODE_OF_CONDUCT.md +12 -12
  3. package/CONTRIBUTING.md +13 -13
  4. package/LICENSE +661 -661
  5. package/README.md +919 -919
  6. package/bin/aioson.js +4 -4
  7. package/docs/design-previews/aurora-command-ui-website.html +884 -884
  8. package/docs/design-previews/aurora-command-ui.html +682 -682
  9. package/docs/design-previews/bold-editorial-ui-website.html +658 -658
  10. package/docs/design-previews/bold-editorial-ui.html +717 -717
  11. package/docs/design-previews/clean-saas-ui-website.html +1202 -1202
  12. package/docs/design-previews/clean-saas-ui.html +549 -549
  13. package/docs/design-previews/cognitive-core-ui-website.html +1009 -1009
  14. package/docs/design-previews/cognitive-core-ui.html +463 -463
  15. package/docs/design-previews/glassmorphism-ui-website.html +572 -572
  16. package/docs/design-previews/glassmorphism-ui.html +886 -886
  17. package/docs/design-previews/index.html +699 -699
  18. package/docs/design-previews/interface-design-website.html +1187 -1187
  19. package/docs/design-previews/interface-design.html +513 -513
  20. package/docs/design-previews/neo-brutalist-ui-website.html +621 -621
  21. package/docs/design-previews/neo-brutalist-ui.html +797 -797
  22. package/docs/design-previews/premium-command-center-ui-website.html +1217 -1217
  23. package/docs/design-previews/premium-command-center-ui.html +552 -552
  24. package/docs/design-previews/pt.squarespace.com-homepage.html +889 -889
  25. package/docs/design-previews/warm-craft-ui-website.html +684 -684
  26. package/docs/design-previews/warm-craft-ui.html +739 -739
  27. package/docs/en/1-understand/ecosystem-map.md +228 -0
  28. package/docs/en/1-understand/glossary.md +288 -0
  29. package/docs/en/1-understand/what-is-aioson.md +94 -0
  30. package/docs/en/1-understand/why-it-exists.md +106 -0
  31. package/docs/en/2-start/existing-project.md +246 -0
  32. package/docs/en/2-start/first-project.md +307 -0
  33. package/docs/en/2-start/initial-decisions.md +223 -0
  34. package/docs/en/3-recipes/README.md +28 -0
  35. package/docs/en/3-recipes/continuity-between-sessions.md +303 -0
  36. package/docs/en/3-recipes/from-idea-to-prd-via-briefing.md +235 -0
  37. package/docs/en/3-recipes/full-feature-with-sheldon.md +338 -0
  38. package/docs/en/4-agents/README.md +56 -0
  39. package/docs/en/5-reference/README.md +60 -0
  40. package/docs/en/{cli-reference.md → 5-reference/cli-reference.md} +639 -464
  41. package/docs/en/{i18n.md → 5-reference/i18n.md} +52 -52
  42. package/docs/en/{json-schemas.md → 5-reference/json-schemas.md} +41 -41
  43. package/docs/en/{mcp.md → 5-reference/mcp.md} +56 -56
  44. package/docs/en/{parallel.md → 5-reference/parallel.md} +82 -82
  45. package/docs/en/{qa-browser.md → 5-reference/qa-browser.md} +339 -339
  46. package/docs/en/{release-flow.md → 5-reference/release-flow.md} +22 -22
  47. package/docs/en/{release-notes-template.md → 5-reference/release-notes-template.md} +41 -41
  48. package/docs/en/{release.md → 5-reference/release.md} +28 -28
  49. package/docs/en/{schemas → 5-reference/schemas}/agent-prompt.schema.json +17 -17
  50. package/docs/en/{schemas → 5-reference/schemas}/agents.schema.json +32 -32
  51. package/docs/en/{schemas → 5-reference/schemas}/context-validate.schema.json +36 -36
  52. package/docs/en/{schemas → 5-reference/schemas}/doctor.schema.json +89 -89
  53. package/docs/en/{schemas → 5-reference/schemas}/error.schema.json +24 -24
  54. package/docs/en/{schemas → 5-reference/schemas}/i18n-add.schema.json +15 -15
  55. package/docs/en/{schemas → 5-reference/schemas}/index.json +126 -126
  56. package/docs/en/{schemas → 5-reference/schemas}/info.schema.json +39 -39
  57. package/docs/en/{schemas → 5-reference/schemas}/init.schema.json +48 -48
  58. package/docs/en/{schemas → 5-reference/schemas}/install.schema.json +60 -60
  59. package/docs/en/{schemas → 5-reference/schemas}/locale-apply.schema.json +30 -30
  60. package/docs/en/{schemas → 5-reference/schemas}/mcp-doctor.schema.json +95 -95
  61. package/docs/en/{schemas → 5-reference/schemas}/mcp-init.schema.json +122 -122
  62. package/docs/en/{schemas → 5-reference/schemas}/package-test.schema.json +24 -24
  63. package/docs/en/{schemas → 5-reference/schemas}/parallel-assign.schema.json +66 -66
  64. package/docs/en/{schemas → 5-reference/schemas}/parallel-doctor.schema.json +122 -122
  65. package/docs/en/{schemas → 5-reference/schemas}/parallel-guard.schema.json +63 -63
  66. package/docs/en/{schemas → 5-reference/schemas}/parallel-init.schema.json +53 -53
  67. package/docs/en/{schemas → 5-reference/schemas}/parallel-merge.schema.json +84 -84
  68. package/docs/en/{schemas → 5-reference/schemas}/parallel-status.schema.json +184 -184
  69. package/docs/en/{schemas → 5-reference/schemas}/setup-context.schema.json +39 -39
  70. package/docs/en/{schemas → 5-reference/schemas}/smoke.schema.json +23 -23
  71. package/docs/en/{schemas → 5-reference/schemas}/update.schema.json +48 -48
  72. package/docs/en/{schemas → 5-reference/schemas}/workflow-plan.schema.json +30 -30
  73. package/docs/en/{squad-dashboard.md → 5-reference/squad-dashboard.md} +372 -372
  74. package/docs/en/{web3.md → 5-reference/web3.md} +54 -54
  75. package/docs/en/README.md +115 -0
  76. package/docs/en/active-learning-loop/README.md +117 -0
  77. package/docs/en/active-learning-loop/active-learning-loop.md +117 -0
  78. package/docs/en/active-learning-loop/cli-commands.md +320 -0
  79. package/docs/en/active-learning-loop/diagrams.md +225 -0
  80. package/docs/en/active-learning-loop/doctor-checks.md +151 -0
  81. package/docs/en/active-learning-loop/how-to-use.md +313 -0
  82. package/docs/en/active-learning-loop/troubleshooting.md +283 -0
  83. package/docs/en/deyvin-subtask-scout/README.md +109 -0
  84. package/docs/en/deyvin-subtask-scout/cli-commands.md +248 -0
  85. package/docs/en/deyvin-subtask-scout/diagrams.md +124 -0
  86. package/docs/en/deyvin-subtask-scout/how-to-use.md +221 -0
  87. package/docs/en/deyvin-subtask-scout/sub-task-scout.md +115 -0
  88. package/docs/en/deyvin-subtask-scout/troubleshooting.md +184 -0
  89. package/docs/integrations/apps-publish-marketplace.md +94 -94
  90. package/docs/integrations/sdlc-genius-boundary.md +76 -76
  91. package/docs/integrations/sdlc-genius-eval-matrix.md +75 -75
  92. package/docs/integrations/sdlc-genius-install-checklist.md +93 -93
  93. package/docs/integrations/sdlc-genius-review-samples.md +86 -86
  94. package/docs/openclaw-bridge.md +308 -308
  95. package/docs/pt/1-entender/glossario.md +288 -0
  96. package/docs/pt/1-entender/mapa-do-ecossistema.md +228 -0
  97. package/docs/pt/1-entender/o-que-e-aioson.md +94 -0
  98. package/docs/pt/1-entender/por-que-existe.md +107 -0
  99. package/docs/pt/2-comecar/decisoes-iniciais.md +223 -0
  100. package/docs/pt/2-comecar/primeiro-projeto.md +307 -0
  101. package/docs/pt/2-comecar/projeto-existente.md +245 -0
  102. package/docs/pt/3-receitas/README.md +28 -0
  103. package/docs/pt/3-receitas/app-saas-do-zero.md +324 -0
  104. package/docs/pt/3-receitas/auditoria-seguranca.md +254 -0
  105. package/docs/pt/3-receitas/clonar-design-de-site.md +211 -0
  106. package/docs/pt/3-receitas/continuidade-entre-sessoes.md +303 -0
  107. package/docs/pt/3-receitas/da-ideia-ao-prd-via-briefing.md +234 -0
  108. package/docs/pt/3-receitas/feature-completa-com-sheldon.md +338 -0
  109. package/docs/pt/3-receitas/integracao-em-codebase-grande.md +243 -0
  110. package/docs/pt/3-receitas/landing-page.md +281 -0
  111. package/docs/pt/3-receitas/plans-externos-para-product.md +191 -0
  112. package/docs/pt/3-receitas/publicar-no-aioson-com.md +219 -0
  113. package/docs/pt/3-receitas/refatoracao-grande.md +251 -0
  114. package/docs/pt/4-agentes/README.md +65 -0
  115. package/docs/pt/4-agentes/analyst.md +111 -0
  116. package/docs/pt/4-agentes/architect.md +113 -0
  117. package/docs/pt/4-agentes/briefing.md +95 -0
  118. package/docs/pt/4-agentes/committer.md +108 -0
  119. package/docs/pt/4-agentes/copywriter.md +279 -0
  120. package/docs/pt/4-agentes/design-hybrid-forge.md +116 -0
  121. package/docs/pt/4-agentes/dev.md +136 -0
  122. package/docs/pt/4-agentes/deyvin.md +99 -0
  123. package/docs/pt/4-agentes/discover.md +122 -0
  124. package/docs/pt/4-agentes/discovery-design-doc.md +91 -0
  125. package/docs/pt/4-agentes/genome.md +115 -0
  126. package/docs/pt/4-agentes/neo.md +93 -0
  127. package/docs/pt/4-agentes/orache.md +107 -0
  128. package/docs/pt/4-agentes/orchestrator.md +118 -0
  129. package/docs/pt/4-agentes/pentester.md +131 -0
  130. package/docs/pt/4-agentes/pm.md +97 -0
  131. package/docs/pt/4-agentes/product.md +114 -0
  132. package/docs/pt/4-agentes/profiler-enricher.md +93 -0
  133. package/docs/pt/4-agentes/profiler-forge.md +93 -0
  134. package/docs/pt/4-agentes/profiler-researcher.md +98 -0
  135. package/docs/pt/4-agentes/qa.md +124 -0
  136. package/docs/pt/4-agentes/setup.md +104 -0
  137. package/docs/pt/4-agentes/sheldon.md +95 -0
  138. package/docs/pt/4-agentes/site-forge.md +104 -0
  139. package/docs/pt/4-agentes/squad.md +127 -0
  140. package/docs/pt/4-agentes/tester.md +105 -0
  141. package/docs/pt/4-agentes/ux-ui.md +110 -0
  142. package/docs/pt/4-agentes/validator.md +118 -0
  143. package/docs/pt/5-referencia/README.md +88 -0
  144. package/docs/pt/5-referencia/agent-chain-continuity.md +124 -0
  145. package/docs/pt/{agent-sharding.md → 5-referencia/agent-sharding.md} +132 -132
  146. package/docs/pt/5-referencia/aioson-com-store.md +119 -0
  147. package/docs/pt/{automacao-squads.md → 5-referencia/automacao-squads.md} +407 -407
  148. package/docs/pt/{clientes-ai.md → 5-referencia/clientes-ai.md} +300 -290
  149. package/docs/pt/{comandos-cli.md → 5-referencia/comandos-cli.md} +1823 -1781
  150. package/docs/pt/{compress-agents.md → 5-referencia/compress-agents.md} +304 -304
  151. package/docs/pt/{design-docs-governance.md → 5-referencia/design-docs-governance.md} +59 -59
  152. package/docs/pt/{devlog-pipeline.md → 5-referencia/devlog-pipeline.md} +270 -270
  153. package/docs/pt/{feature-archive.md → 5-referencia/feature-archive.md} +199 -191
  154. package/docs/pt/5-referencia/feature-dossier.md +121 -0
  155. package/docs/pt/{fluxo-artefatos.md → 5-referencia/fluxo-artefatos.md} +179 -178
  156. package/docs/pt/{genome-3.0-spec.md → 5-referencia/genome-4.0-spec.md} +407 -407
  157. package/docs/pt/{genome-distribution.md → 5-referencia/genome-distribution.md} +232 -232
  158. package/docs/pt/{hooks-session-guard.md → 5-referencia/hooks-session-guard.md} +454 -454
  159. package/docs/pt/{inteligencia-adaptativa.md → 5-referencia/inteligencia-adaptativa.md} +324 -324
  160. package/docs/pt/5-referencia/live-sessions.md +144 -0
  161. package/docs/pt/5-referencia/memoria-e-contexto.md +340 -0
  162. package/docs/pt/{motor-hardening.md → 5-referencia/motor-hardening.md} +493 -492
  163. package/docs/pt/{output-strategy-delivery.md → 5-referencia/output-strategy-delivery.md} +655 -655
  164. package/docs/pt/{runner-system.md → 5-referencia/runner-system.md} +113 -113
  165. package/docs/pt/{runtime-observability.md → 5-referencia/runtime-observability.md} +76 -76
  166. package/docs/pt/{sandbox.md → 5-referencia/sandbox.md} +125 -125
  167. package/docs/pt/{sdd-automation-scripts.md → 5-referencia/sdd-automation-scripts.md} +559 -557
  168. package/docs/pt/5-referencia/sdd-framework.md +115 -0
  169. package/docs/pt/5-referencia/sdd-planos-e-estrutura.md +321 -0
  170. package/docs/pt/5-referencia/secure-by-default.md +117 -0
  171. package/docs/pt/{skills.md → 5-referencia/skills.md} +275 -267
  172. package/docs/pt/{spec-learnings-pipeline.md → 5-referencia/spec-learnings-pipeline.md} +265 -265
  173. package/docs/pt/{squad-dashboard.md → 5-referencia/squad-dashboard.md} +373 -373
  174. package/docs/pt/{web3.md → 5-referencia/web3.md} +797 -797
  175. package/docs/pt/README.md +111 -125
  176. package/docs/pt/_arquivo/README.md +130 -0
  177. package/docs/pt/{advisor-spec.md → _arquivo/advisor-spec.md} +343 -335
  178. package/docs/pt/{agentes-customizados.md → _arquivo/agentes-customizados.md} +678 -670
  179. package/docs/pt/{busca-de-contexto.md → _arquivo/busca-de-contexto.md} +136 -129
  180. package/docs/pt/{cache-de-contexto.md → _arquivo/cache-de-contexto.md} +163 -156
  181. package/docs/pt/{cenarios.md → _arquivo/cenarios.md} +1282 -1274
  182. package/docs/pt/{design-hybrid-forge.md → _arquivo/design-hybrid-forge.md} +365 -356
  183. package/docs/pt/{deyvin.md → _arquivo/deyvin.md} +123 -115
  184. package/docs/pt/{guia-engineer.md → _arquivo/guia-engineer.md} +234 -226
  185. package/docs/pt/{inicio-rapido.md → _arquivo/inicio-rapido.md} +261 -251
  186. package/docs/pt/{memoria-contexto.md → _arquivo/memoria-contexto.md} +262 -255
  187. package/docs/pt/{monitor-de-contexto.md → _arquivo/monitor-de-contexto.md} +165 -158
  188. package/docs/pt/{profiler-system.md → _arquivo/profiler-system.md} +222 -214
  189. package/docs/pt/{recuperacao-de-sessao.md → _arquivo/recuperacao-de-sessao.md} +134 -125
  190. package/docs/pt/{site-forge.md → _arquivo/site-forge.md} +318 -309
  191. package/docs/pt/{squad-genome.md → _arquivo/squad-genome.md} +793 -783
  192. package/docs/pt/active-learning-loop/README.md +117 -0
  193. package/docs/pt/active-learning-loop/ativo-learning-loop.md +117 -0
  194. package/docs/pt/active-learning-loop/comandos-cli.md +320 -0
  195. package/docs/pt/active-learning-loop/como-usar.md +313 -0
  196. package/docs/pt/active-learning-loop/diagramas.md +225 -0
  197. package/docs/pt/active-learning-loop/doctor-checks.md +151 -0
  198. package/docs/pt/active-learning-loop/troubleshooting.md +283 -0
  199. package/docs/pt/agentes.md +996 -993
  200. package/docs/pt/deyvin-subtask-scout/README.md +109 -0
  201. package/docs/pt/deyvin-subtask-scout/comandos-cli.md +248 -0
  202. package/docs/pt/deyvin-subtask-scout/como-usar.md +221 -0
  203. package/docs/pt/deyvin-subtask-scout/diagramas.md +124 -0
  204. package/docs/pt/deyvin-subtask-scout/sub-task-scout.md +113 -0
  205. package/docs/pt/deyvin-subtask-scout/troubleshooting.md +184 -0
  206. package/docs/pt/living-memory/README.md +81 -0
  207. package/docs/pt/living-memory/autonomy-contract.md +206 -0
  208. package/docs/pt/living-memory/diagramas.md +365 -0
  209. package/docs/pt/living-memory/memoria-viva.md +141 -0
  210. package/docs/pt/living-memory/notificacoes-info.md +142 -0
  211. package/docs/pt/living-memory/reflexao-in-harness.md +218 -0
  212. package/docs/pt/living-memory/troubleshooting.md +286 -0
  213. package/docs/testing/genome-2.0-manual-regression.md +23 -23
  214. package/docs/testing/genome-2.0-matrix.md +36 -36
  215. package/docs/testing/genome-2.0-rollout.md +184 -184
  216. package/package.json +51 -51
  217. package/src/a2a/client.js +165 -165
  218. package/src/a2a/server.js +223 -223
  219. package/src/agent-loader.js +280 -280
  220. package/src/agent-manifests.js +86 -66
  221. package/src/agents.js +92 -92
  222. package/src/autonomy-policy.js +163 -139
  223. package/src/backup-local.js +74 -74
  224. package/src/backup-provider.js +303 -303
  225. package/src/brain-query.js +171 -161
  226. package/src/cli.js +77 -4
  227. package/src/commands/agent-audit.js +397 -397
  228. package/src/commands/agent-export-skill.js +229 -229
  229. package/src/commands/agent-loader.js +85 -85
  230. package/src/commands/agents.js +273 -255
  231. package/src/commands/artifact-validate.js +218 -218
  232. package/src/commands/auth.js +298 -272
  233. package/src/commands/backup-local-cmd.js +25 -25
  234. package/src/commands/backup.js +533 -533
  235. package/src/commands/brain-query.js +44 -44
  236. package/src/commands/brief-gen.js +405 -405
  237. package/src/commands/brief-validate.js +65 -65
  238. package/src/commands/briefing.js +344 -344
  239. package/src/commands/classify.js +256 -256
  240. package/src/commands/cloud.js +1767 -1767
  241. package/src/commands/commit-prepare.js +610 -547
  242. package/src/commands/compress-agents.js +416 -416
  243. package/src/commands/config.js +90 -90
  244. package/src/commands/context-cache.js +90 -90
  245. package/src/commands/context-compact.js +49 -49
  246. package/src/commands/context-health.js +187 -177
  247. package/src/commands/context-load.js +219 -0
  248. package/src/commands/context-monitor.js +163 -163
  249. package/src/commands/context-pack.js +45 -45
  250. package/src/commands/context-search.js +66 -66
  251. package/src/commands/context-trim.js +183 -183
  252. package/src/commands/context-validate.js +91 -91
  253. package/src/commands/design-hybrid-options.js +385 -385
  254. package/src/commands/detect-test-runner.js +55 -55
  255. package/src/commands/dev-resume.js +32 -0
  256. package/src/commands/devlog-export-brains.js +27 -27
  257. package/src/commands/devlog-process.js +294 -294
  258. package/src/commands/devlog-watch.js +131 -131
  259. package/src/commands/doctor.js +123 -123
  260. package/src/commands/dossier-add-research.js +114 -0
  261. package/src/commands/dossier-audit.js +222 -0
  262. package/src/commands/dossier.js +423 -423
  263. package/src/commands/feature-archive.js +513 -513
  264. package/src/commands/feature-close.js +554 -270
  265. package/src/commands/gate-approve.js +198 -198
  266. package/src/commands/gate-check.js +247 -247
  267. package/src/commands/genome-doctor.js +489 -198
  268. package/src/commands/genome-migrate.js +49 -49
  269. package/src/commands/git-guard.js +170 -170
  270. package/src/commands/harness.js +307 -121
  271. package/src/commands/health.js +214 -214
  272. package/src/commands/hooks-emit.js +253 -253
  273. package/src/commands/hooks-install.js +347 -347
  274. package/src/commands/i18n-add.js +56 -56
  275. package/src/commands/implementation-plan.js +367 -367
  276. package/src/commands/info.js +41 -41
  277. package/src/commands/init.js +120 -120
  278. package/src/commands/install.js +162 -111
  279. package/src/commands/learning-auto-promote.js +197 -195
  280. package/src/commands/learning-evolve.js +364 -364
  281. package/src/commands/learning-export.js +103 -103
  282. package/src/commands/learning-rollback.js +164 -164
  283. package/src/commands/learning.js +134 -134
  284. package/src/commands/live.js +2101 -2082
  285. package/src/commands/locale-apply.js +54 -54
  286. package/src/commands/locale-diff.js +25 -25
  287. package/src/commands/mcp-doctor.js +407 -407
  288. package/src/commands/mcp-init.js +373 -373
  289. package/src/commands/memory-archive.js +193 -0
  290. package/src/commands/memory-reflect-commit.js +148 -0
  291. package/src/commands/memory-reflect-prepare.js +97 -0
  292. package/src/commands/memory-restore.js +177 -0
  293. package/src/commands/memory-search.js +135 -0
  294. package/src/commands/memory.js +299 -234
  295. package/src/commands/notify.js +68 -0
  296. package/src/commands/package-e2e.js +273 -273
  297. package/src/commands/parallel-assign.js +483 -483
  298. package/src/commands/parallel-doctor.js +850 -850
  299. package/src/commands/parallel-guard.js +241 -241
  300. package/src/commands/parallel-init.js +311 -311
  301. package/src/commands/parallel-merge.js +299 -299
  302. package/src/commands/parallel-status.js +434 -434
  303. package/src/commands/pattern-detect.js +33 -33
  304. package/src/commands/preflight-context.js +30 -30
  305. package/src/commands/preflight.js +267 -267
  306. package/src/commands/pulse-update.js +130 -130
  307. package/src/commands/qa-doctor.js +185 -185
  308. package/src/commands/qa-init.js +166 -166
  309. package/src/commands/qa-report.js +58 -58
  310. package/src/commands/qa-run.js +873 -873
  311. package/src/commands/qa-scan.js +337 -337
  312. package/src/commands/recovery.js +43 -43
  313. package/src/commands/revision.js +235 -235
  314. package/src/commands/runner-daemon.js +274 -274
  315. package/src/commands/runner-plan.js +70 -70
  316. package/src/commands/runner-queue-from-plan.js +166 -166
  317. package/src/commands/runner-queue.js +189 -189
  318. package/src/commands/runner-run.js +129 -129
  319. package/src/commands/runtime.js +2086 -2067
  320. package/src/commands/sandbox.js +37 -37
  321. package/src/commands/scaffold-complete.js +188 -188
  322. package/src/commands/scan-project.js +1371 -1371
  323. package/src/commands/scout-commit.js +163 -0
  324. package/src/commands/scout-prep.js +214 -0
  325. package/src/commands/scout-validate.js +112 -0
  326. package/src/commands/security-audit.js +275 -275
  327. package/src/commands/security-scan.js +376 -376
  328. package/src/commands/self-implement-loop.js +306 -300
  329. package/src/commands/session-guard.js +218 -218
  330. package/src/commands/setup-context.js +699 -699
  331. package/src/commands/setup.js +178 -178
  332. package/src/commands/sizing.js +165 -165
  333. package/src/commands/skill.js +670 -670
  334. package/src/commands/smoke.js +426 -426
  335. package/src/commands/spec-checkpoint.js +177 -177
  336. package/src/commands/spec-status.js +79 -79
  337. package/src/commands/spec-sync.js +190 -190
  338. package/src/commands/spec-tasks.js +288 -288
  339. package/src/commands/squad-agent-create.js +830 -830
  340. package/src/commands/squad-autorun.js +1220 -1220
  341. package/src/commands/squad-bus.js +217 -217
  342. package/src/commands/squad-card.js +149 -149
  343. package/src/commands/squad-daemon.js +343 -343
  344. package/src/commands/squad-dashboard.js +39 -39
  345. package/src/commands/squad-dependency-graph.js +164 -164
  346. package/src/commands/squad-deploy.js +64 -64
  347. package/src/commands/squad-doctor.js +460 -460
  348. package/src/commands/squad-export.js +77 -46
  349. package/src/commands/squad-investigate.js +314 -314
  350. package/src/commands/squad-learning.js +209 -209
  351. package/src/commands/squad-mcp.js +270 -270
  352. package/src/commands/squad-pipeline.js +343 -343
  353. package/src/commands/squad-plan.js +361 -361
  354. package/src/commands/squad-processes.js +56 -56
  355. package/src/commands/squad-recovery.js +42 -42
  356. package/src/commands/squad-repair-genomes.js +39 -39
  357. package/src/commands/squad-review.js +106 -106
  358. package/src/commands/squad-roi.js +291 -291
  359. package/src/commands/squad-scaffold.js +56 -56
  360. package/src/commands/squad-score.js +311 -307
  361. package/src/commands/squad-status.js +481 -481
  362. package/src/commands/squad-tool-register.js +157 -157
  363. package/src/commands/squad-validate.js +438 -438
  364. package/src/commands/squad-webhook.js +160 -160
  365. package/src/commands/squad-worker.js +191 -191
  366. package/src/commands/squad-worktrees.js +75 -75
  367. package/src/commands/state-save.js +122 -122
  368. package/src/commands/store-genome.js +667 -304
  369. package/src/commands/store-skill.js +247 -247
  370. package/src/commands/store-squad.js +431 -431
  371. package/src/commands/store-system.js +392 -392
  372. package/src/commands/sync-agents-preflight.js +176 -0
  373. package/src/commands/test-agents.js +199 -199
  374. package/src/commands/tool-capabilities.js +63 -63
  375. package/src/commands/tool-registry-cmd.js +232 -232
  376. package/src/commands/update.js +64 -64
  377. package/src/commands/verify-gate.js +612 -612
  378. package/src/commands/web-map.js +70 -70
  379. package/src/commands/web-scrape.js +71 -71
  380. package/src/commands/workflow-execute.js +730 -730
  381. package/src/commands/workflow-harden.js +231 -231
  382. package/src/commands/workflow-heal.js +136 -136
  383. package/src/commands/workflow-next.js +1279 -1039
  384. package/src/commands/workflow-plan.js +108 -108
  385. package/src/commands/workflow-status.js +440 -440
  386. package/src/commands/workspace.js +144 -144
  387. package/src/constants.js +413 -384
  388. package/src/context-cache.js +159 -159
  389. package/src/context-memory.js +975 -966
  390. package/src/context-parse-reason.js +22 -22
  391. package/src/context-search.js +326 -326
  392. package/src/context-writer.js +197 -197
  393. package/src/context.js +247 -247
  394. package/src/delivery-runner.js +319 -319
  395. package/src/design-variation-catalog.js +503 -503
  396. package/src/detector.js +261 -261
  397. package/src/doctor.js +760 -329
  398. package/src/dossier/codemap-store.js +267 -267
  399. package/src/dossier/dossier-bootstrap.js +222 -222
  400. package/src/dossier/dossier-compact.js +159 -159
  401. package/src/dossier/lock.js +128 -128
  402. package/src/dossier/research-index-store.js +233 -0
  403. package/src/dossier/revision-store.js +313 -313
  404. package/src/dossier/schema.js +162 -155
  405. package/src/dossier/scout-section.js +127 -0
  406. package/src/dossier/store.js +406 -400
  407. package/src/execution-gateway.js +464 -464
  408. package/src/friction-scanner.js +202 -202
  409. package/src/genome-files.js +198 -198
  410. package/src/genome-format.js +442 -442
  411. package/src/genome-schema.js +238 -238
  412. package/src/genomes/bindings.js +281 -281
  413. package/src/genomes.js +500 -500
  414. package/src/handoff-contract.js +417 -363
  415. package/src/handoff-validator.js +45 -45
  416. package/src/harness/circuit-breaker.js +135 -135
  417. package/src/i18n/index.js +103 -103
  418. package/src/i18n/messages/en.js +1541 -1434
  419. package/src/i18n/messages/es.js +1325 -1221
  420. package/src/i18n/messages/fr.js +1333 -1229
  421. package/src/i18n/messages/pt-BR.js +1561 -1457
  422. package/src/i18n/scaffold.js +64 -64
  423. package/src/install-animation.js +260 -260
  424. package/src/install-profile.js +127 -127
  425. package/src/install-wizard.js +475 -475
  426. package/src/installer-config-merge.js +207 -0
  427. package/src/installer.js +449 -358
  428. package/src/learning-loop-archive.js +595 -0
  429. package/src/learning-loop-doctor.js +217 -0
  430. package/src/learning-loop-engine.js +254 -0
  431. package/src/learning-loop-fts5.js +132 -0
  432. package/src/learning-loop-migration.js +163 -0
  433. package/src/lib/dev-resume.js +140 -0
  434. package/src/lib/dossier-telemetry.js +36 -0
  435. package/src/lib/genomes/compat.js +206 -206
  436. package/src/lib/genomes/migrate.js +90 -90
  437. package/src/lib/git-commit-guard.js +751 -691
  438. package/src/lib/health-check.js +158 -158
  439. package/src/lib/hook-protocol.js +76 -76
  440. package/src/lib/llm-content-sanitizer.js +44 -0
  441. package/src/lib/security/artifact-reader.js +167 -167
  442. package/src/lib/security/exit-codes.js +51 -51
  443. package/src/lib/security/findings-writer.js +176 -176
  444. package/src/lib/security/runtime-events.js +77 -77
  445. package/src/lib/security/secrets-regex.js +115 -115
  446. package/src/lib/squads/genome-repair.js +49 -49
  447. package/src/lib/store/security-scan.js +175 -173
  448. package/src/lib/terminal-checkbox.js +135 -130
  449. package/src/lib/terminal-picker.js +447 -0
  450. package/src/lib/tmux-launcher.js +163 -163
  451. package/src/lib/tool-capabilities.js +102 -102
  452. package/src/lib/webhook-server.js +328 -328
  453. package/src/locales.js +88 -88
  454. package/src/mcp/apps/squad-dashboard/app.js +163 -163
  455. package/src/mcp/apps/squad-dashboard/index.html +261 -261
  456. package/src/mcp/apps/squad-dashboard/mcp-manifest.json +23 -23
  457. package/src/mcp/resources/squad-state.js +130 -130
  458. package/src/mcp-connectors/registry.js +602 -602
  459. package/src/memory-reflect-engine.js +359 -0
  460. package/src/notify-renderer.js +32 -0
  461. package/src/onboarding.js +305 -305
  462. package/src/parallel-workspace.js +756 -756
  463. package/src/parser.js +66 -66
  464. package/src/path-guard.js +47 -47
  465. package/src/permissions-generator.js +400 -0
  466. package/src/preflight-engine.js +654 -654
  467. package/src/prompt-tool.js +20 -20
  468. package/src/qa-html-report.js +472 -472
  469. package/src/recovery-context-session.js +154 -154
  470. package/src/runner/cascade.js +97 -97
  471. package/src/runner/cli-launcher.js +109 -109
  472. package/src/runner/plan-importer.js +63 -63
  473. package/src/runner/queue-store.js +159 -159
  474. package/src/runtime-store.js +2720 -2676
  475. package/src/sandbox.js +194 -177
  476. package/src/self-healing.js +142 -142
  477. package/src/session-handoff.js +295 -187
  478. package/src/squad/agent-teams-adapter.js +270 -264
  479. package/src/squad/brief-validator.js +350 -350
  480. package/src/squad/bus-bridge.js +140 -140
  481. package/src/squad/context-compactor.js +265 -265
  482. package/src/squad/cross-ai-synthesizer.js +250 -250
  483. package/src/squad/external-session.js +180 -180
  484. package/src/squad/hooks-generator.js +196 -196
  485. package/src/squad/inter-squad-events.js +175 -175
  486. package/src/squad/inter-squad.js +74 -74
  487. package/src/squad/intra-bus.js +345 -345
  488. package/src/squad/learning-extractor.js +213 -213
  489. package/src/squad/pattern-detector.js +365 -365
  490. package/src/squad/preflight-context.js +296 -296
  491. package/src/squad/recovery-context.js +372 -372
  492. package/src/squad/reflection.js +365 -365
  493. package/src/squad/squad-scaffold.js +341 -341
  494. package/src/squad/state-manager.js +310 -310
  495. package/src/squad/task-decomposer.js +652 -652
  496. package/src/squad/verify-gate.js +303 -303
  497. package/src/squad/worktree-manager.js +114 -114
  498. package/src/squad-daemon.js +490 -490
  499. package/src/squad-dashboard/api.js +223 -223
  500. package/src/squad-dashboard/attachment-handler.js +93 -93
  501. package/src/squad-dashboard/context-monitor.js +157 -157
  502. package/src/squad-dashboard/execution-logs.js +115 -115
  503. package/src/squad-dashboard/hunk-review.js +209 -209
  504. package/src/squad-dashboard/metrics.js +133 -133
  505. package/src/squad-dashboard/process-monitor.js +125 -125
  506. package/src/squad-dashboard/renderer.js +858 -858
  507. package/src/squad-dashboard/server.js +232 -232
  508. package/src/squad-dashboard/styles.js +525 -525
  509. package/src/squad-dashboard/token-tracker.js +99 -99
  510. package/src/squads/apply-genome.js +21 -21
  511. package/src/squads/genome-binding-service.js +154 -154
  512. package/src/sub-task-engine.js +415 -0
  513. package/src/sub-task-schemas.js +150 -0
  514. package/src/sub-task-state.js +152 -0
  515. package/src/sub-task-telemetry.js +69 -0
  516. package/src/test-briefing.js +226 -226
  517. package/src/tool-executor.js +94 -94
  518. package/src/updater.js +39 -39
  519. package/src/utils.js +49 -49
  520. package/src/version.js +50 -50
  521. package/src/web.js +284 -284
  522. package/src/worker-runner.js +541 -524
  523. package/src/workflow-gates.js +185 -185
  524. package/template/.aioson/advisors/.gitkeep +1 -1
  525. package/template/.aioson/agents/analyst.md +333 -318
  526. package/template/.aioson/agents/architect.md +325 -305
  527. package/template/.aioson/agents/{cypher.md → briefing.md} +264 -252
  528. package/template/.aioson/agents/committer.md +161 -161
  529. package/template/.aioson/agents/copywriter.md +937 -463
  530. package/template/.aioson/agents/design-hybrid-forge.md +141 -141
  531. package/template/.aioson/agents/dev.md +295 -263
  532. package/template/.aioson/agents/deyvin.md +198 -87
  533. package/template/.aioson/agents/discover.md +235 -235
  534. package/template/.aioson/agents/discovery-design-doc.md +56 -29
  535. package/template/.aioson/agents/genome.md +1904 -364
  536. package/template/.aioson/agents/manifests/analyst.manifest.json +26 -26
  537. package/template/.aioson/agents/manifests/architect.manifest.json +23 -23
  538. package/template/.aioson/agents/manifests/committer.manifest.json +23 -23
  539. package/template/.aioson/agents/manifests/dev.manifest.json +54 -37
  540. package/template/.aioson/agents/manifests/deyvin.manifest.json +41 -0
  541. package/template/.aioson/agents/manifests/orchestrator.manifest.json +30 -30
  542. package/template/.aioson/agents/manifests/pentester.manifest.json +39 -39
  543. package/template/.aioson/agents/manifests/pm.manifest.json +26 -26
  544. package/template/.aioson/agents/manifests/product.manifest.json +23 -23
  545. package/template/.aioson/agents/manifests/qa.manifest.json +41 -25
  546. package/template/.aioson/agents/manifests/setup.manifest.json +20 -20
  547. package/template/.aioson/agents/manifests/ux-ui.manifest.json +24 -24
  548. package/template/.aioson/agents/neo.md +341 -231
  549. package/template/.aioson/agents/orache.md +430 -430
  550. package/template/.aioson/agents/orchestrator.md +274 -263
  551. package/template/.aioson/agents/pair.md +5 -5
  552. package/template/.aioson/agents/pentester.md +289 -235
  553. package/template/.aioson/agents/pm.md +141 -130
  554. package/template/.aioson/agents/product.md +351 -273
  555. package/template/.aioson/agents/profiler-enricher.md +331 -331
  556. package/template/.aioson/agents/profiler-forge.md +212 -212
  557. package/template/.aioson/agents/profiler-researcher.md +282 -282
  558. package/template/.aioson/agents/qa.md +432 -342
  559. package/template/.aioson/agents/setup.md +423 -423
  560. package/template/.aioson/agents/sheldon.md +259 -197
  561. package/template/.aioson/agents/site-forge.md +281 -281
  562. package/template/.aioson/agents/squad.md +160 -156
  563. package/template/.aioson/agents/tester.md +536 -473
  564. package/template/.aioson/agents/ux-ui.md +195 -162
  565. package/template/.aioson/agents/validator.md +101 -69
  566. package/template/.aioson/brains/README.md +132 -128
  567. package/template/.aioson/brains/_archived/.gitkeep +0 -0
  568. package/template/.aioson/brains/_index.json +34 -16
  569. package/template/.aioson/brains/dev/patterns.brain.json +79 -0
  570. package/template/.aioson/brains/scripts/query.js +107 -107
  571. package/template/.aioson/brains/sheldon/architecture-decisions.brain.json +79 -0
  572. package/template/.aioson/brains/site-forge/visual-patterns.brain.json +205 -205
  573. package/template/.aioson/config/autonomy-protocol.json +125 -43
  574. package/template/.aioson/config/learning-loop.json +10 -0
  575. package/template/.aioson/config/scout-engine.json +1 -0
  576. package/template/.aioson/config.md +410 -410
  577. package/template/.aioson/context/_archived/.gitkeep +0 -0
  578. package/template/.aioson/context/design-doc.md +136 -136
  579. package/template/.aioson/context/project-map.md +57 -57
  580. package/template/.aioson/context/project-pulse.md +34 -34
  581. package/template/.aioson/context/seeds/seed-example.md +27 -27
  582. package/template/.aioson/context/spec.md.template +54 -54
  583. package/template/.aioson/context/user-profile.md +42 -42
  584. package/template/.aioson/design-docs/code-reuse.md +48 -48
  585. package/template/.aioson/design-docs/componentization.md +47 -47
  586. package/template/.aioson/design-docs/file-size.md +52 -52
  587. package/template/.aioson/design-docs/folder-structure.md +51 -51
  588. package/template/.aioson/design-docs/naming.md +54 -54
  589. package/template/.aioson/docs/LAYERS.md +89 -89
  590. package/template/.aioson/docs/README.md +76 -76
  591. package/template/.aioson/docs/autonomy-protocol.md +80 -0
  592. package/template/.aioson/docs/briefing/briefing-craft.md +237 -0
  593. package/template/.aioson/docs/dev/execution-discipline.md +106 -106
  594. package/template/.aioson/docs/dev/stack-conventions.md +83 -83
  595. package/template/.aioson/docs/deyvin/continuity-recovery.md +57 -57
  596. package/template/.aioson/docs/deyvin/debugging-escalation.md +30 -30
  597. package/template/.aioson/docs/deyvin/pair-execution.md +44 -44
  598. package/template/.aioson/docs/deyvin/runtime-handoffs.md +36 -36
  599. package/template/.aioson/docs/example-external-api-context.md +72 -72
  600. package/template/.aioson/docs/pentester/app-playbooks.md +206 -0
  601. package/template/.aioson/docs/pentester/llm-supplychain.md +165 -0
  602. package/template/.aioson/docs/product/conversation-playbook.md +116 -116
  603. package/template/.aioson/docs/product/prd-contract.md +107 -107
  604. package/template/.aioson/docs/product/quality-lens.md +57 -57
  605. package/template/.aioson/docs/product/research-loop.md +65 -65
  606. package/template/.aioson/docs/sheldon/enrichment-paths.md +134 -134
  607. package/template/.aioson/docs/sheldon/harness-contract.md +118 -0
  608. package/template/.aioson/docs/sheldon/quality-lens.md +57 -57
  609. package/template/.aioson/docs/sheldon/research-loop.md +56 -56
  610. package/template/.aioson/docs/sheldon/web-intelligence.md +75 -75
  611. package/template/.aioson/docs/site-forge-build.md +195 -195
  612. package/template/.aioson/docs/site-forge-extraction.md +135 -135
  613. package/template/.aioson/docs/site-forge-qa.md +155 -155
  614. package/template/.aioson/docs/site-forge-recon.md +434 -434
  615. package/template/.aioson/docs/site-forge-transform.md +249 -249
  616. package/template/.aioson/docs/squad/content-output.md +91 -91
  617. package/template/.aioson/docs/squad/creation-flow.md +149 -135
  618. package/template/.aioson/docs/squad/domain-breadth.md +322 -0
  619. package/template/.aioson/docs/squad/domain-classification.md +117 -117
  620. package/template/.aioson/docs/squad/genome-bindings.md +47 -47
  621. package/template/.aioson/docs/squad/package-contract.md +260 -234
  622. package/template/.aioson/docs/squad/quality-lens.md +60 -56
  623. package/template/.aioson/docs/squad/research-loop.md +59 -59
  624. package/template/.aioson/docs/squad/session-operations.md +117 -117
  625. package/template/.aioson/docs/squad/workflow-quality.md +165 -165
  626. package/template/.aioson/docs/tester/coverage-quality.md +351 -0
  627. package/template/.aioson/docs/ux-ui/accessibility-audit.md +55 -55
  628. package/template/.aioson/docs/ux-ui/audit-mode.md +86 -86
  629. package/template/.aioson/docs/ux-ui/component-map.md +35 -35
  630. package/template/.aioson/docs/ux-ui/design-execution.md +111 -111
  631. package/template/.aioson/docs/ux-ui/design-gate.md +27 -27
  632. package/template/.aioson/docs/ux-ui/research-mode.md +39 -39
  633. package/template/.aioson/docs/ux-ui/site-delivery.md +156 -156
  634. package/template/.aioson/docs/ux-ui/token-contract.md +57 -57
  635. package/template/.aioson/genomes/INDEX.md +195 -0
  636. package/template/.aioson/genomes/copywriting/SKILL.md +137 -0
  637. package/template/.aioson/genomes/copywriting/manifest.json +140 -0
  638. package/template/.aioson/genomes/copywriting/references/application-notes.md +145 -0
  639. package/template/.aioson/genomes/copywriting/references/decision-weights.md +45 -0
  640. package/template/.aioson/genomes/copywriting/references/frameworks/5-act-narrative.md +184 -0
  641. package/template/.aioson/genomes/copywriting/references/frameworks/classical-formulas.md +164 -0
  642. package/template/.aioson/genomes/copywriting/references/frameworks/offer-stack.md +195 -0
  643. package/template/.aioson/genomes/copywriting/references/frameworks/one-belief.md +135 -0
  644. package/template/.aioson/genomes/copywriting/references/frameworks/pms-research.md +211 -0
  645. package/template/.aioson/genomes/copywriting/references/frameworks/two-paths-close.md +190 -0
  646. package/template/.aioson/genomes/copywriting/references/heuristics.md +114 -0
  647. package/template/.aioson/genomes/copywriting/references/meta-axioms.md +68 -0
  648. package/template/.aioson/genomes/copywriting/references/methodology.md +115 -0
  649. package/template/.aioson/genomes/copywriting-brunson/SKILL.md +133 -0
  650. package/template/.aioson/genomes/copywriting-brunson/manifest.json +152 -0
  651. package/template/.aioson/genomes/copywriting-brunson/references/application-notes.md +113 -0
  652. package/template/.aioson/genomes/copywriting-brunson/references/decision-weights.md +33 -0
  653. package/template/.aioson/genomes/copywriting-brunson/references/evidence-and-attribution.md +81 -0
  654. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/6-part-structure.md +136 -0
  655. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/origin-story.md +121 -0
  656. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/perfect-webinar-script.md +139 -0
  657. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/persuasive-storytelling-5-structures.md +164 -0
  658. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/value-stack.md +136 -0
  659. package/template/.aioson/genomes/copywriting-brunson/references/frameworks/who-what-why-how.md +110 -0
  660. package/template/.aioson/genomes/copywriting-brunson/references/meta-axioms.md +36 -0
  661. package/template/.aioson/genomes/copywriting-brunson/references/methodology.md +112 -0
  662. package/template/.aioson/git-guard.json +12 -11
  663. package/template/.aioson/mcp/servers.md +23 -23
  664. package/template/.aioson/profiler-reports/.gitkeep +1 -1
  665. package/template/.aioson/rules/README.md +69 -69
  666. package/template/.aioson/rules/_archived/.gitkeep +0 -0
  667. package/template/.aioson/rules/agent-language-policy.md +93 -93
  668. package/template/.aioson/rules/aioson-context-boundary.md +63 -63
  669. package/template/.aioson/rules/canonical-path-contract.md +47 -47
  670. package/template/.aioson/rules/data-format-convention.md +74 -74
  671. package/template/.aioson/rules/disk-first-artifacts.md +44 -44
  672. package/template/.aioson/rules/example-monetary-values.md +30 -30
  673. package/template/.aioson/rules/output-brevity.md +44 -44
  674. package/template/.aioson/rules/prd-section-ownership.md +49 -49
  675. package/template/.aioson/rules/security-baseline.md +139 -139
  676. package/template/.aioson/rules/spec-level-ownership.md +61 -61
  677. package/template/.aioson/rules/squad/README.md +50 -50
  678. package/template/.aioson/rules/squad-driver-pattern.md +81 -81
  679. package/template/.aioson/schemas/content-blueprint.schema.json +30 -30
  680. package/template/.aioson/schemas/genome-meta.schema.json +150 -150
  681. package/template/.aioson/schemas/genome.schema.json +115 -115
  682. package/template/.aioson/schemas/readiness.schema.json +27 -27
  683. package/template/.aioson/schemas/squad-blueprint.schema.json +228 -228
  684. package/template/.aioson/schemas/squad-manifest.schema.json +874 -874
  685. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +243 -243
  686. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -293
  687. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -827
  688. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -250
  689. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -585
  690. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -365
  691. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +482 -482
  692. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +387 -387
  693. package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +205 -205
  694. package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -338
  695. package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -977
  696. package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -218
  697. package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -326
  698. package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -461
  699. package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -293
  700. package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -352
  701. package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +210 -210
  702. package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -319
  703. package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -365
  704. package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -196
  705. package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -244
  706. package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -235
  707. package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -215
  708. package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -295
  709. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +203 -203
  710. package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -339
  711. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +407 -407
  712. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +272 -272
  713. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +524 -524
  714. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +279 -279
  715. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +289 -289
  716. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +437 -437
  717. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +222 -222
  718. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -159
  719. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -498
  720. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -236
  721. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -274
  722. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -355
  723. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -198
  724. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -307
  725. package/template/.aioson/skills/design/interface-design/SKILL.md +47 -47
  726. package/template/.aioson/skills/design/interface-design/references/components-and-states.md +105 -105
  727. package/template/.aioson/skills/design/interface-design/references/design-directions.md +101 -101
  728. package/template/.aioson/skills/design/interface-design/references/handoff-and-quality.md +71 -71
  729. package/template/.aioson/skills/design/interface-design/references/intent-and-domain.md +74 -74
  730. package/template/.aioson/skills/design/interface-design/references/tokens-and-depth.md +173 -173
  731. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +213 -213
  732. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -228
  733. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -855
  734. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -334
  735. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -342
  736. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -286
  737. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -458
  738. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -723
  739. package/template/.aioson/skills/design/premium-command-center-ui/SKILL.md +62 -62
  740. package/template/.aioson/skills/design/premium-command-center-ui/references/operations.md +74 -74
  741. package/template/.aioson/skills/design/premium-command-center-ui/references/patterns.md +116 -116
  742. package/template/.aioson/skills/design/premium-command-center-ui/references/validation.md +47 -47
  743. package/template/.aioson/skills/design/premium-command-center-ui/references/visual-system.md +215 -215
  744. package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -31
  745. package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +66 -66
  746. package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +368 -368
  747. package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -150
  748. package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -270
  749. package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -189
  750. package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +165 -165
  751. package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +209 -209
  752. package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -324
  753. package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -508
  754. package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -223
  755. package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -374
  756. package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -356
  757. package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -288
  758. package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -289
  759. package/template/.aioson/skills/design-system/SKILL.md +92 -92
  760. package/template/.aioson/skills/design-system/components/SKILL.md +274 -274
  761. package/template/.aioson/skills/design-system/dashboards/SKILL.md +184 -184
  762. package/template/.aioson/skills/design-system/foundations/SKILL.md +250 -250
  763. package/template/.aioson/skills/design-system/motion/SKILL.md +197 -197
  764. package/template/.aioson/skills/design-system/patterns/SKILL.md +231 -231
  765. package/template/.aioson/skills/dynamic/README.md +30 -30
  766. package/template/.aioson/skills/dynamic/cardano-docs.md +16 -16
  767. package/template/.aioson/skills/dynamic/ethereum-docs.md +17 -17
  768. package/template/.aioson/skills/dynamic/flux-ui-docs.md +13 -13
  769. package/template/.aioson/skills/dynamic/laravel-docs.md +41 -41
  770. package/template/.aioson/skills/dynamic/npm-packages.md +16 -16
  771. package/template/.aioson/skills/dynamic/solana-docs.md +16 -16
  772. package/template/.aioson/skills/marketing/references/anti-patterns.md +254 -254
  773. package/template/.aioson/skills/marketing/references/cta-matrix.md +361 -0
  774. package/template/.aioson/skills/marketing/references/fascinations.md +192 -192
  775. package/template/.aioson/skills/marketing/references/five-acts.md +248 -248
  776. package/template/.aioson/skills/marketing/references/headline-matrix.md +358 -0
  777. package/template/.aioson/skills/marketing/references/market-intelligence.md +198 -198
  778. package/template/.aioson/skills/marketing/references/offer-structure.md +203 -203
  779. package/template/.aioson/skills/marketing/references/one-belief.md +149 -149
  780. package/template/.aioson/skills/marketing/references/patterns.md +218 -218
  781. package/template/.aioson/skills/marketing/references/platform-constraints.md +337 -0
  782. package/template/.aioson/skills/marketing/references/pms-research.md +193 -193
  783. package/template/.aioson/skills/marketing/vsl-craft.md +385 -385
  784. package/template/.aioson/skills/premium-visual-design/SKILL.md +83 -83
  785. package/template/.aioson/skills/premium-visual-design/components/agent-badge.md +92 -92
  786. package/template/.aioson/skills/premium-visual-design/components/dependency-node.md +102 -102
  787. package/template/.aioson/skills/premium-visual-design/components/mention-autocomplete.md +136 -136
  788. package/template/.aioson/skills/premium-visual-design/components/notification-center.md +136 -136
  789. package/template/.aioson/skills/premium-visual-design/components/review-action-bar.md +188 -188
  790. package/template/.aioson/skills/premium-visual-design/components/team-switcher.md +131 -131
  791. package/template/.aioson/skills/premium-visual-design/patterns/agent-message-thread.md +198 -198
  792. package/template/.aioson/skills/premium-visual-design/patterns/notification-panel.md +275 -275
  793. package/template/.aioson/skills/premium-visual-design/patterns/review-workflow-ui.md +234 -234
  794. package/template/.aioson/skills/premium-visual-design/patterns/task-dependency-graph.md +147 -147
  795. package/template/.aioson/skills/premium-visual-design/tokens/status-extended.md +142 -142
  796. package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +46 -46
  797. package/template/.aioson/skills/process/aioson-spec-driven/references/analyst.md +30 -30
  798. package/template/.aioson/skills/process/aioson-spec-driven/references/approval-gates.md +109 -109
  799. package/template/.aioson/skills/process/aioson-spec-driven/references/architect.md +23 -23
  800. package/template/.aioson/skills/process/aioson-spec-driven/references/artifact-map.md +44 -44
  801. package/template/.aioson/skills/process/aioson-spec-driven/references/classification-map.md +37 -37
  802. package/template/.aioson/skills/process/aioson-spec-driven/references/dev.md +47 -47
  803. package/template/.aioson/skills/process/aioson-spec-driven/references/deyvin.md +27 -27
  804. package/template/.aioson/skills/process/aioson-spec-driven/references/hardening-lane.md +49 -49
  805. package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +101 -101
  806. package/template/.aioson/skills/process/aioson-spec-driven/references/pm.md +30 -30
  807. package/template/.aioson/skills/process/aioson-spec-driven/references/product.md +25 -25
  808. package/template/.aioson/skills/process/aioson-spec-driven/references/qa.md +30 -30
  809. package/template/.aioson/skills/process/aioson-spec-driven/references/sheldon.md +25 -25
  810. package/template/.aioson/skills/process/aioson-spec-driven/references/ui-language.md +75 -75
  811. package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +147 -147
  812. package/template/.aioson/skills/process/design-hybrid-forge/references/crossover-protocol.md +221 -221
  813. package/template/.aioson/skills/process/design-hybrid-forge/references/naming-registry.md +88 -88
  814. package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +306 -306
  815. package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +149 -149
  816. package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +208 -208
  817. package/template/.aioson/skills/process/design-hybrid-forge/references/variation-library.md +125 -125
  818. package/template/.aioson/skills/process/secure-tdd/SKILL.md +97 -97
  819. package/template/.aioson/skills/process/simplify/SKILL.md +173 -173
  820. package/template/.aioson/skills/references/premium-command-center-ui/master-application-prompt.md +79 -79
  821. package/template/.aioson/skills/references/premium-command-center-ui/operational-ux-playbook.md +253 -253
  822. package/template/.aioson/skills/references/premium-command-center-ui/quality-validation-checklist.md +82 -82
  823. package/template/.aioson/skills/references/premium-command-center-ui/visual-system-and-component-patterns.md +270 -270
  824. package/template/.aioson/skills/squad/SKILL.md +58 -58
  825. package/template/.aioson/skills/squad/formats/catalog.json +15 -15
  826. package/template/.aioson/skills/squad/formats/content/blog-post.md +47 -47
  827. package/template/.aioson/skills/squad/formats/content/newsletter.md +47 -47
  828. package/template/.aioson/skills/squad/formats/creative/podcast-script.md +43 -43
  829. package/template/.aioson/skills/squad/formats/creative/video-script.md +41 -41
  830. package/template/.aioson/skills/squad/formats/social/instagram-feed.md +42 -42
  831. package/template/.aioson/skills/squad/formats/social/linkedin-post.md +42 -42
  832. package/template/.aioson/skills/squad/formats/social/tiktok.md +39 -39
  833. package/template/.aioson/skills/squad/formats/social/twitter-thread.md +39 -39
  834. package/template/.aioson/skills/squad/formats/social/youtube-long.md +47 -47
  835. package/template/.aioson/skills/squad/formats/social/youtube-shorts.md +39 -39
  836. package/template/.aioson/skills/squad/patterns/multi-platform-pattern.md +108 -108
  837. package/template/.aioson/skills/squad/patterns/persona-based-pattern.md +98 -98
  838. package/template/.aioson/skills/squad/patterns/pipeline-pattern.md +106 -106
  839. package/template/.aioson/skills/squad/patterns/review-loop-pattern.md +81 -81
  840. package/template/.aioson/skills/squad/references/checklist-templates.md +122 -122
  841. package/template/.aioson/skills/squad/references/executor-archetypes.md +123 -123
  842. package/template/.aioson/skills/squad/references/workflow-templates.md +169 -169
  843. package/template/.aioson/skills/static/context-budget-guide.md +46 -46
  844. package/template/.aioson/skills/static/debugging-protocol.md +42 -42
  845. package/template/.aioson/skills/static/django-patterns.md +342 -342
  846. package/template/.aioson/skills/static/fastapi-patterns.md +344 -344
  847. package/template/.aioson/skills/static/filament-patterns.md +267 -267
  848. package/template/.aioson/skills/static/flux-ui-components.md +262 -262
  849. package/template/.aioson/skills/static/git-conventions.md +227 -227
  850. package/template/.aioson/skills/static/git-worktrees.md +36 -36
  851. package/template/.aioson/skills/static/harness-sensors.md +74 -74
  852. package/template/.aioson/skills/static/harness-validate/SKILL.md +46 -46
  853. package/template/.aioson/skills/static/jetstream-setup.md +200 -200
  854. package/template/.aioson/skills/static/landing-page-deploy.md +192 -192
  855. package/template/.aioson/skills/static/landing-page-forge.md +730 -730
  856. package/template/.aioson/skills/static/laravel-conventions.md +491 -491
  857. package/template/.aioson/skills/static/multi-agent-patterns.md +43 -43
  858. package/template/.aioson/skills/static/nextjs-patterns.md +321 -321
  859. package/template/.aioson/skills/static/node-express-patterns.md +317 -317
  860. package/template/.aioson/skills/static/node-typescript-patterns.md +282 -282
  861. package/template/.aioson/skills/static/rails-conventions.md +307 -307
  862. package/template/.aioson/skills/static/react-motion-patterns.md +599 -599
  863. package/template/.aioson/skills/static/static-html-patterns/checklists.md +43 -43
  864. package/template/.aioson/skills/static/static-html-patterns/css-tokens.md +609 -609
  865. package/template/.aioson/skills/static/static-html-patterns/motion.md +193 -193
  866. package/template/.aioson/skills/static/static-html-patterns/premium.md +711 -711
  867. package/template/.aioson/skills/static/static-html-patterns/structure.md +209 -209
  868. package/template/.aioson/skills/static/static-html-patterns/utilities.md +190 -190
  869. package/template/.aioson/skills/static/static-html-patterns.md +80 -80
  870. package/template/.aioson/skills/static/tall-stack-patterns.md +286 -286
  871. package/template/.aioson/skills/static/threejs-patterns.md +929 -929
  872. package/template/.aioson/skills/static/ui-ux-modern.md +76 -76
  873. package/template/.aioson/skills/static/web-research-cache.md +115 -115
  874. package/template/.aioson/skills/static/web3-cardano-patterns.md +337 -337
  875. package/template/.aioson/skills/static/web3-ethereum-patterns.md +310 -310
  876. package/template/.aioson/skills/static/web3-security-checklist.md +284 -284
  877. package/template/.aioson/skills/static/web3-solana-patterns.md +324 -324
  878. package/template/.aioson/squads/memory.md +5 -5
  879. package/template/.aioson/tasks/implementation-plan.md +327 -327
  880. package/template/.aioson/tasks/squad-analyze.md +83 -83
  881. package/template/.aioson/tasks/squad-create.md +148 -148
  882. package/template/.aioson/tasks/squad-design.md +206 -206
  883. package/template/.aioson/tasks/squad-execution-plan.md +279 -279
  884. package/template/.aioson/tasks/squad-export.md +20 -20
  885. package/template/.aioson/tasks/squad-extend.md +68 -68
  886. package/template/.aioson/tasks/squad-investigate.md +57 -57
  887. package/template/.aioson/tasks/squad-learning-review.md +44 -44
  888. package/template/.aioson/tasks/squad-output-config.md +177 -177
  889. package/template/.aioson/tasks/squad-pipeline.md +122 -122
  890. package/template/.aioson/tasks/squad-profile.md +48 -48
  891. package/template/.aioson/tasks/squad-refresh.md +236 -0
  892. package/template/.aioson/tasks/squad-repair.md +85 -85
  893. package/template/.aioson/tasks/squad-review.md +61 -61
  894. package/template/.aioson/tasks/squad-task-decompose.md +66 -66
  895. package/template/.aioson/tasks/squad-validate.md +58 -58
  896. package/template/.aioson/templates/reflect-prompts/current-state.md +36 -0
  897. package/template/.aioson/templates/reflect-prompts/how-it-works.md +23 -0
  898. package/template/.aioson/templates/reflect-prompts/what-it-does.md +21 -0
  899. package/template/.aioson/templates/squads/content-basic/template.json +21 -21
  900. package/template/.aioson/templates/squads/digital-marketing-agency/template.json +96 -96
  901. package/template/.aioson/templates/squads/media-channel/template.json +24 -24
  902. package/template/.aioson/templates/squads/research-analysis/template.json +22 -22
  903. package/template/.aioson/templates/squads/software-delivery/template.json +21 -21
  904. package/template/.claude/commands/aioson/agent/analyst.md +5 -5
  905. package/template/.claude/commands/aioson/agent/architect.md +5 -5
  906. package/template/.claude/commands/aioson/agent/briefing.md +5 -0
  907. package/template/.claude/commands/aioson/agent/committer.md +5 -5
  908. package/template/.claude/commands/aioson/agent/copywriter.md +5 -5
  909. package/template/.claude/commands/aioson/agent/design-hybrid-forge.md +5 -5
  910. package/template/.claude/commands/aioson/agent/dev.md +5 -5
  911. package/template/.claude/commands/aioson/agent/deyvin.md +5 -5
  912. package/template/.claude/commands/aioson/agent/discover.md +5 -0
  913. package/template/.claude/commands/aioson/agent/discovery-design-doc.md +5 -5
  914. package/template/.claude/commands/aioson/agent/genome.md +5 -5
  915. package/template/.claude/commands/aioson/agent/neo.md +5 -5
  916. package/template/.claude/commands/aioson/agent/orache.md +5 -5
  917. package/template/.claude/commands/aioson/agent/orchestrator.md +5 -5
  918. package/template/.claude/commands/aioson/agent/pair.md +5 -5
  919. package/template/.claude/commands/aioson/agent/pentester.md +5 -0
  920. package/template/.claude/commands/aioson/agent/pm.md +5 -5
  921. package/template/.claude/commands/aioson/agent/product.md +5 -5
  922. package/template/.claude/commands/aioson/agent/profiler-enricher.md +5 -5
  923. package/template/.claude/commands/aioson/agent/profiler-forge.md +5 -5
  924. package/template/.claude/commands/aioson/agent/profiler-researcher.md +5 -5
  925. package/template/.claude/commands/aioson/agent/qa.md +5 -5
  926. package/template/.claude/commands/aioson/agent/setup.md +5 -5
  927. package/template/.claude/commands/aioson/agent/sheldon.md +5 -5
  928. package/template/.claude/commands/aioson/agent/site-forge.md +5 -5
  929. package/template/.claude/commands/aioson/agent/squad.md +5 -5
  930. package/template/.claude/commands/aioson/agent/tester.md +5 -5
  931. package/template/.claude/commands/aioson/agent/ux-ui.md +5 -5
  932. package/template/.claude/commands/aioson/agent/validator.md +5 -5
  933. package/template/.gemini/GEMINI.md +13 -13
  934. package/template/.gemini/commands/aios-analyst.toml +7 -7
  935. package/template/.gemini/commands/aios-architect.toml +8 -8
  936. package/template/.gemini/commands/aios-committer.toml +7 -7
  937. package/template/.gemini/commands/aios-copywriter.toml +7 -7
  938. package/template/.gemini/commands/aios-cypher.toml +7 -7
  939. package/template/.gemini/commands/aios-dev.toml +9 -9
  940. package/template/.gemini/commands/aios-deyvin.toml +7 -7
  941. package/template/.gemini/commands/aios-discover.toml +6 -0
  942. package/template/.gemini/commands/aios-discovery-design-doc.toml +7 -7
  943. package/template/.gemini/commands/aios-genome.toml +7 -7
  944. package/template/.gemini/commands/aios-neo.toml +6 -6
  945. package/template/.gemini/commands/aios-orache.toml +7 -7
  946. package/template/.gemini/commands/aios-orchestrator.toml +9 -9
  947. package/template/.gemini/commands/aios-pair.toml +7 -7
  948. package/template/.gemini/commands/aios-pm.toml +9 -9
  949. package/template/.gemini/commands/aios-product.toml +6 -6
  950. package/template/.gemini/commands/aios-qa.toml +7 -7
  951. package/template/.gemini/commands/aios-setup.toml +6 -6
  952. package/template/.gemini/commands/aios-sheldon.toml +7 -7
  953. package/template/.gemini/commands/aios-site-forge.toml +7 -7
  954. package/template/.gemini/commands/aios-squad.toml +7 -7
  955. package/template/.gemini/commands/aios-tester.toml +7 -7
  956. package/template/.gemini/commands/aios-ux-ui.toml +9 -9
  957. package/template/.gemini/commands/aios-validator.toml +7 -7
  958. package/template/AGENTS.md +184 -183
  959. package/template/CLAUDE.md +98 -97
  960. package/template/OPENCODE.md +35 -34
  961. package/template/aioson-models.json +40 -40
  962. package/template/.aioson/genomes/copywriting.md +0 -204
  963. package/template/.aioson/genomes/copywriting.meta.json +0 -48
  964. package/template/.aioson/skills/process/secure-tdd/references/nextjs.md +0 -81
  965. package/template/.aioson/skills/process/secure-tdd/references/node-express.md +0 -91
  966. package/template/.aioson/skills/process/secure-tdd/references/planned-stacks.md +0 -33
  967. package/template/.claude/commands/aioson/agent/cypher.md +0 -5
@@ -1,1457 +1,1561 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- cli: {
5
- title: 'CLI do AIOSON',
6
- title_line: '{title}\n',
7
- usage: 'Uso:',
8
- help_item_line: ' {text}',
9
- help_init:
10
- 'aioson init <project-name> [--force] [--dry-run] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
11
- help_install:
12
- 'aioson install [path] [--force] [--dry-run] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
13
- help_setup:
14
- 'aioson setup [path] [--defaults] [--framework=<nome>] [--lang=<bcp47-tag>] [--project-name=<nome>] [--force] [--dry-run] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
15
- help_update:
16
- 'aioson update [path] [--dry-run] [--lang=<bcp47-tag>] [--locale=pt-BR]',
17
- help_info: 'aioson info [path] [--json] [--locale=pt-BR]',
18
- help_doctor: 'aioson doctor [path] [--fix] [--dry-run] [--json] [--locale=pt-BR]',
19
- help_i18n_add: 'aioson i18n:add <locale> [--force] [--dry-run] [--locale=pt-BR]',
20
- help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=pt-BR]',
21
- help_agent_prompt:
22
- 'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=pt-BR]',
23
- help_agent_invoke:
24
- 'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=pt-BR]',
25
- help_context_validate: 'aioson context:validate [path] [--json] [--locale=pt-BR]',
26
- help_context_pack:
27
- 'aioson context:pack [path] [--agent=<agente>] [--goal=<texto>] [--module=<modulo-ou-pasta>] [--max-files=8] [--json] [--locale=pt-BR]',
28
- help_memory_status: 'aioson memory:status [path] [--json] [--locale=pt-BR]',
29
- help_memory_summary: 'aioson memory:summary [path] [--last=5] [--json] [--locale=pt-BR]',
30
- help_brain_query:
31
- 'aioson brain:query [path] [--tags=<csv>] [--agent=<agente>] [--min-quality=4] [--format=compact|json|ids] [--json] [--locale=pt-BR]',
32
- help_setup_context:
33
- 'aioson setup:context [path] [--defaults] [--project-type=web_app|api|site|script|dapp|desktop_app] [--framework=<name>] [--backend=<name>] [--frontend=<name>] [--database=<name>] [--auth=<name>] [--uiux=<name>] [--language=<bcp47-tag>] [--web3-enabled=true|false] [--locale=pt-BR]',
34
- help_locale_apply:
35
- 'aioson locale:apply [path] [--lang=<bcp47-tag>] [--dry-run] [--locale=pt-BR]',
36
- help_locale_diff: 'aioson locale:diff [agent] [--lang=<bcp47-tag>] [--json] [--locale=en]',
37
- help_test_agents: 'aioson test:agents [--json] [--locale=en]',
38
- help_test_smoke:
39
- 'aioson test:smoke [workspace-path] [--lang=<bcp47-tag>] [--web3=ethereum|solana|cardano] [--profile=standard|mixed|parallel] [--keep] [--json] [--locale=pt-BR]',
40
- help_test_package:
41
- 'aioson test:package [source-path] [--keep] [--dry-run] [--json] [--locale=pt-BR]',
42
- help_dossier_init:
43
- 'aioson dossier:init [path] --slug=<slug-da-feature> [--classification=MICRO|SMALL|MEDIUM] [--json] [--locale=pt-BR]',
44
- help_dossier_show:
45
- 'aioson dossier:show [path] --slug=<slug-da-feature> [--json] [--locale=pt-BR]',
46
- dossier_created: 'Dossier criado em {path} (classification={classification}).',
47
- dossier_already_exists: 'Dossier existe em {path}. Abortando (init atômico, sem --force).',
48
- dossier_not_found: 'Dossier não encontrado para o slug "{slug}" (esperado em {path}).',
49
- help_workflow_plan:
50
- 'aioson workflow:plan [path] [--classification=MICRO|SMALL|MEDIUM] [--json] [--locale=pt-BR]',
51
- help_workflow_next:
52
- 'aioson workflow:next [path] [--complete[=<agente>]] [--agent=<agente>] [--skip=<agente>] [--status] [--suggest] [--tool=codex|claude|gemini|opencode] [--json] [--locale=pt-BR]',
53
- help_workflow_status:
54
- 'aioson workflow:status [path] [--suggest] [--tool=codex|claude|gemini|opencode] [--json] [--locale=pt-BR]',
55
- help_workflow_execute:
56
- 'aioson workflow:execute [path] [--steps=<n>] [--dry-run] [--lane=<n>] [--json] [--locale=pt-BR]',
57
- help_parallel_init:
58
- 'aioson parallel:init [path] [--workers=2..6] [--force] [--dry-run] [--json] [--locale=pt-BR]',
59
- help_parallel_doctor:
60
- 'aioson parallel:doctor [path] [--workers=2..6] [--fix] [--force] [--dry-run] [--json] [--locale=pt-BR]',
61
- help_parallel_assign:
62
- 'aioson parallel:assign [path] [--source=auto|prd|architecture|discovery|<file>] [--workers=2..6] [--force] [--dry-run] [--json] [--locale=pt-BR]',
63
- help_parallel_status:
64
- 'aioson parallel:status [path] [--json] [--locale=pt-BR]',
65
- help_parallel_merge:
66
- 'aioson parallel:merge [path] [--apply] [--json] [--locale=pt-BR]',
67
- help_parallel_guard:
68
- 'aioson parallel:guard [path] --lane=<n> --paths=<path[,path2]> [--json] [--locale=pt-BR]',
69
- help_mcp_init:
70
- 'aioson mcp:init [path] [--tool=claude|codex|gemini|opencode] [--dry-run] [--json] [--locale=pt-BR]',
71
- help_mcp_doctor:
72
- 'aioson mcp:doctor [path] [--strict-env] [--json] [--locale=pt-BR]',
73
- help_qa_doctor:
74
- 'aioson qa:doctor [path] [--json] [--locale=pt-BR]',
75
- help_qa_init:
76
- 'aioson qa:init [path] [--url=<app-url>] [--dry-run] [--json] [--locale=pt-BR]',
77
- help_qa_run:
78
- 'aioson qa:run [path] [--url=<app-url>] [--persona=naive|hacker|power|mobile] [--headed] [--html] [--json] [--locale=pt-BR]',
79
- help_qa_scan:
80
- 'aioson qa:scan [path] [--url=<app-url>] [--depth=3] [--max-pages=50] [--headed] [--html] [--json] [--locale=pt-BR]',
81
- help_qa_report:
82
- 'aioson qa:report [path] [--html] [--json] [--locale=pt-BR]',
83
- help_harness_init:
84
- 'aioson harness:init [path] --slug=<slug> [--mode=BALANCED|URGENT|ECONOMICAL] [--locale=pt-BR]',
85
- help_harness_validate:
86
- 'aioson harness:validate [path] --slug=<slug> [--artifact=<path>] [--locale=pt-BR]',
87
- help_web_map:
88
- 'aioson web:map [path] --url=<url> [--depth=<N>] [--max-pages=<N>] [--include-external] [--json] [--locale=pt-BR]',
89
- help_web_scrape:
90
- 'aioson web:scrape [path] --url=<url> [--format=markdown|text|html|links] [--json] [--locale=pt-BR]',
91
- help_scan_project:
92
- 'aioson scan:project [path] --folder=<pasta[,pasta2]> [--summary-mode=titles|summaries|raw] [--context-mode=merge|rewrite] [--with-llm] [--provider=<name>] [--llm-model=<name>] [--dry-run] [--json] [--locale=pt-BR]',
93
- help_config:
94
- 'aioson config <set KEY=value|show|get KEY> [--json] [--locale=pt-BR]',
95
- help_genome_doctor:
96
- 'aioson genome:doctor <arquivo> [--json] [--locale=pt-BR]',
97
- help_genome_migrate:
98
- 'aioson genome:migrate <arquivo-ou-diretorio> [--write] [--no-backup] [--json] [--locale=pt-BR]',
99
- help_squad_status:
100
- 'aioson squad:status [path] [--json] [--locale=pt-BR]',
101
- help_squad_doctor:
102
- 'aioson squad:doctor [path] [--squad=<slug>] [--stale-minutes=5] [--json] [--locale=pt-BR]',
103
- help_squad_repair_genomes:
104
- 'aioson squad:repair-genomes <manifest.json> [--write] [--no-backup] [--json] [--locale=pt-BR]',
105
- help_squad_validate:
106
- 'aioson squad:validate [path] --squad=<slug> [--locale=pt-BR]',
107
- help_squad_export:
108
- 'aioson squad:export [path] --squad=<slug> [--locale=pt-BR]',
109
- help_squad_pipeline:
110
- 'aioson squad:pipeline [path] [--sub=list|show|status] [--pipeline=<slug>] [--locale=pt-BR]',
111
- help_squad_agent_create:
112
- 'aioson squad:agent-create [path] --name=<nome> [--scope=my-agents|squad] [--squad=<slug>] [--type=agent|assistant|clone|worker] [--tier=0|1|2|3] [--disc=<perfil>] [--mission=<texto>] [--domain=<texto>] [--specialist=<nome>] [--with-infra] [--locale=pt-BR]',
113
- help_squad_investigate:
114
- 'aioson squad:investigate [path] [--sub=list|show|score|link|register] [--investigation=<slug>] [--squad=<slug>] [--locale=pt-BR]',
115
- help_squad_learning:
116
- 'aioson squad:learning [path] [--sub=list|stats|archive|promote|export] [--squad=<slug>] [--status=<status>] [--locale=pt-BR]',
117
- help_squad_dashboard:
118
- 'aioson squad:dashboard [path] [--port=4180] [--squad=<slug>] [--locale=pt-BR]',
119
- help_squad_worker:
120
- 'aioson squad:worker [path] [--sub=list|run|test|logs|scaffold] [--squad=<slug>] [--worker=<slug>] [--input=<json>] [--locale=pt-BR]',
121
- help_squad_daemon:
122
- 'aioson squad:daemon [path] [--sub=start|status|stop|logs] [--squad=<slug>] [--port=<N>] [--locale=pt-BR]',
123
- help_squad_mcp:
124
- 'aioson squad:mcp [path] [--sub=status|connectors|configure|test] [--squad=<slug>] [--mcp=<slug>] [--connector=<id>]',
125
- help_squad_roi:
126
- 'aioson squad:roi [path] [--sub=config|metric|report|export] [--squad=<slug>] [--key=<metrica>] [--value=<N>]',
127
- help_squad_score:
128
- 'aioson squad:score [path] --squad=<slug> [--locale=pt-BR]',
129
- help_commit_prepare:
130
- 'aioson commit:prepare [path] [--staged-only] [--agent-safe] [--mode=guarded|trusted|headless] [--json] [--locale=pt-BR]',
131
- help_learning:
132
- 'aioson learning [path] [--sub=list|stats|promote] [--status=<status>] [--id=<learning-id>] [--locale=pt-BR]',
133
- help_runtime_init:
134
- 'aioson runtime:init [path] [--json] [--locale=pt-BR]',
135
- help_runtime_ingest:
136
- 'aioson runtime:ingest [path] [--squad=<slug>] [--agent=<nome>] [--session=<chave>] [--task=<chave>] [--json] [--locale=pt-BR]',
137
- help_runtime_task_start:
138
- 'aioson runtime:task:start [path] --title=<texto> [--squad=<slug>] [--session=<chave>] [--goal=<texto>] [--by=<agente>] [--task=<chave>] [--json] [--locale=pt-BR]',
139
- help_runtime_start:
140
- 'aioson runtime:start [path] --agent=<nome> [--squad=<slug>] [--session=<chave>] [--title=<texto>] [--run=<chave>] [--json] [--locale=pt-BR]',
141
- help_runtime_update:
142
- 'aioson runtime:update [path] --run=<chave> [--message=<texto>] [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
143
- help_runtime_task_finish:
144
- 'aioson runtime:task:finish [path] --task=<chave> [--goal=<texto>] [--json] [--locale=pt-BR]',
145
- help_runtime_finish:
146
- 'aioson runtime:finish [path] --run=<chave> [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
147
- help_runtime_task_fail:
148
- 'aioson runtime:task:fail [path] --task=<chave> [--goal=<texto>] [--json] [--locale=pt-BR]',
149
- help_runtime_fail:
150
- 'aioson runtime:fail [path] --run=<chave> [--message=<texto>] [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
151
- help_runtime_status:
152
- 'aioson runtime:status [path] [--json] [--locale=pt-BR]',
153
- help_runtime_log:
154
- 'aioson runtime:log [path] --agent=<nome> --message=<texto> [--type=<evento>] [--finish] [--status=completed|failed] [--summary=<texto>] [--title=<titulo-task>] [--json] [--locale=pt-BR]',
155
- help_runtime_session_start:
156
- 'aioson runtime:session:start [path] --agent=<nome> [--title=<texto>] [--message=<texto>] [--session=<chave>] [--json] [--locale=pt-BR]',
157
- help_runtime_session_log:
158
- 'aioson runtime:session:log [path] --agent=<nome> --message=<texto> [--type=<evento>] [--title=<texto>] [--json] [--locale=pt-BR]',
159
- help_runtime_session_finish:
160
- 'aioson runtime:session:finish [path] --agent=<nome> [--message=<texto>] [--summary=<texto>] [--status=completed|failed] [--json] [--locale=pt-BR]',
161
- help_runtime_session_status:
162
- 'aioson runtime:session:status [path] --agent=<nome> [--limit=8] [--watch=2] [--json] [--locale=pt-BR]',
163
- help_runtime_emit:
164
- 'aioson runtime:emit [path] --agent=<nome> [--type=<evento>] [--summary=<texto>] [--title=<texto>] [--refs=<arquivo[,arquivo2]>] [--plan-step=<id>] [--meta=<json>] [--json] [--locale=pt-BR]',
165
- help_live_start:
166
- 'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<nome> [--tool-bin=<binario>] [--tool-args=<args>] [--title=<texto>] [--goal=<texto>] [--plan=<arquivo>] [--session=<chave>] [--message=<texto>] [--attach] [--no-launch] [--tmux] [--json] [--locale=pt-BR]',
167
- help_live_status:
168
- 'aioson live:status [path] [--agent=<nome>] [--limit=8] [--watch=2] [--format=compact|tmux-bar] [--json] [--locale=pt-BR]',
169
- help_live_handoff:
170
- 'aioson live:handoff [path] --agent=<nome> --to=<nome> [--reason=<texto>] [--summary=<texto>] [--message=<texto>] [--json] [--locale=pt-BR]',
171
- help_live_close:
172
- 'aioson live:close [path] [--agent=<nome>] [--summary=<texto>] [--message=<texto>] [--status=completed|failed] [--json] [--locale=pt-BR]',
173
- help_live_list:
174
- 'aioson live:list [path] [--json] [--locale=pt-BR]',
175
- help_runtime_backup:
176
- 'aioson runtime:backup [caminho] [--tables=tasks,runs,...] [--force] [--dry-run] [--json] [--locale=pt-BR]',
177
- help_runtime_restore:
178
- 'aioson runtime:restore [caminho] [--tables=tasks,runs,...] [--dry-run] [--json] [--locale=pt-BR]',
179
- help_skill_install:
180
- 'aioson skill:install [caminho] --slug=<nome> [--from=npm|cloud|./caminho] [--force] [--json] [--locale=pt-BR]',
181
- help_skill_list:
182
- 'aioson skill:list [caminho] [--json] [--locale=pt-BR]',
183
- help_skill_remove:
184
- 'aioson skill:remove [caminho] --slug=<nome> [--json] [--locale=pt-BR]',
185
- help_design_hybrid_options:
186
- 'aioson design-hybrid:options [caminho] [--advanced] [--json] [--locale=pt-BR]',
187
- help_cloud_import_squad:
188
- 'aioson cloud:import:squad [path] --url=<snapshot-url> [--force] [--snapshots-only] [--dry-run] [--json] [--locale=pt-BR]',
189
- help_cloud_import_genome:
190
- 'aioson cloud:import:genome [path] --url=<snapshot-url> [--force] [--snapshots-only] [--dry-run] [--json] [--locale=pt-BR]',
191
- help_cloud_publish_squad:
192
- 'aioson cloud:publish:squad [path] --slug=<slug> --resource-version=<versao> [--url=<publish-url>|--base-url=<site>] [--title=<texto>] [--summary=<texto>] [--compatibility-min=<versao>] [--compatibility-max=<versao>] [--linked-genome-version=<versao>] [--dry-run] [--json] [--locale=pt-BR]',
193
- help_cloud_publish_genome:
194
- 'aioson cloud:publish:genome [path] --slug=<slug> --resource-version=<versao> [--url=<publish-url>|--base-url=<site>] [--title=<texto>] [--summary=<texto>] [--source-kind=LOCAL|AIOSLITE|IMPORTED|REMOTE_PROVIDER] [--dry-run] [--json] [--locale=pt-BR]',
195
- dashboard_moved:
196
- 'O fluxo `{command}` foi removido do CLI. O dashboard do AIOSON agora e instalado separadamente. Abra o app do dashboard no seu computador, crie ou adicione um projeto e selecione a pasta que ja contem `.aioson/`.',
197
- dashboard_moved_line: '{message}\n',
198
- unknown_command: 'Comando desconhecido: {command}',
199
- unknown_command_line: '{message}\n',
200
- error_prefix: 'Erro: {message}'
201
- },
202
- cloud: {
203
- project_missing: 'Diretorio do projeto nao encontrado: {path}',
204
- url_required: 'Informe --url com o endpoint JSON do snapshot do squad.',
205
- import_squad_dry_run: 'Dry run: squad {slug}@{version} pronto para import cloud.',
206
- import_squad_done: 'Snapshot do squad {slug}@{version} importado.',
207
- import_genome_dry_run: 'Dry run: genome {slug}@{version} pronto para import cloud.',
208
- import_genome_done: 'Snapshot do genome {slug}@{version} importado.',
209
- publish_squad_dry_run: 'Dry run: squad {slug}@{version} pronto para publish cloud.',
210
- publish_squad_done: 'Squad {slug}@{version} publicado no cloud.',
211
- publish_genome_dry_run: 'Dry run: genome {slug}@{version} pronto para publish cloud.',
212
- publish_genome_done: 'Genome {slug}@{version} publicado no cloud.'
213
- },
214
- init: {
215
- usage_error:
216
- 'Uso: aioson init <project-name> [--force] [--dry-run] [--all] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
217
- non_empty_dir: 'Diretorio nao esta vazio: {targetDir}. Use --force para continuar.',
218
- created_at: 'Projeto criado em: {targetDir}',
219
- files_copied: 'Arquivos copiados: {count}',
220
- files_skipped: 'Arquivos ignorados: {count}',
221
- next_steps: 'Proximos passos:',
222
- step_cd: '1. cd {projectName}',
223
- step_setup: '2. Abra na sua AI CLI e execute @setup',
224
- step_agents: '3. Se nao aparecer seletor visual, execute: aioson agents',
225
- step_agent_prompt:
226
- '4. Gere o prompt de setup para sua ferramenta: aioson agent:prompt setup --tool={tool}'
227
- },
228
- init_all: {
229
- installing_full: 'Instalacao completa (todas as ferramentas + squads) — wizard ignorado via --all'
230
- },
231
- install: {
232
- framework_detected: 'Framework detectado: {framework} ({evidence})',
233
- framework_not_detected: 'Nenhum framework detectado. Instalando em modo generico.',
234
- done_at: 'Instalacao concluida em: {targetDir}',
235
- files_copied: 'Arquivos copiados: {count}',
236
- files_skipped: 'Arquivos ignorados: {count}',
237
- next_steps: 'Proximos passos:',
238
- step_setup_context: '1. Gere/atualize o contexto do projeto: aioson setup:context --defaults',
239
- step_agents: '2. Se nao aparecer seletor visual, execute: aioson agents',
240
- step_agent_prompt:
241
- '3. Gere o prompt de setup para sua ferramenta: aioson agent:prompt setup --tool={tool}',
242
- existing_project_detected:
243
- ' Projeto existente detectado ({count} arquivos). Rode o scanner antes de comecar:',
244
- existing_project_scan_hint:
245
- ' aioson scan:project . --folder=src --with-llm --provider=<provider> (gera discovery.md + skeleton-system.md; sem --with-llm gera apenas os mapas locais)'
246
- },
247
- install_wizard: {
248
- ready_to_install: 'Pronto para instalar:',
249
- press_enter_to_install: 'Pressione enter para instalar ou q para cancelar.',
250
- deselected_warning: '⚠ Itens desmarcados NAO serao removidos automaticamente.',
251
- deselected_hint: ' Remova manualmente se necessario.'
252
- },
253
- update: {
254
- not_installed: 'Nenhuma instalacao do AIOSON encontrada em {targetDir}.',
255
- done_at: 'Atualizacao concluida em: {targetDir}',
256
- files_updated: 'Arquivos atualizados: {count}',
257
- backups_created: 'Backups criados: {count}',
258
- reconfigure_hint: 'Novas opcoes podem estar disponiveis. Execute: aioson install --reconfigure'
259
- },
260
- info: {
261
- cli_version: 'AIOSON CLI: v{version}',
262
- directory: 'Diretorio: {targetDir}',
263
- installed_here: 'Instalado neste diretorio: {value}',
264
- framework_detected: 'Framework detectado: {framework}',
265
- evidence: 'Evidencia: {evidence}',
266
- yes: 'sim',
267
- no: 'nao',
268
- none: 'nenhum'
269
- },
270
- doctor: {
271
- ok: 'OK',
272
- fail: 'FALHA',
273
- diagnosis_ok: 'Diagnostico: instalacao saudavel.',
274
- diagnosis_fail: 'Diagnostico: {count} problema(s) encontrado(s).',
275
- hint_prefix: '-> {hint}',
276
- check_line: '[{icon}] {message}',
277
- hint_line: ' Dica: {hint}',
278
- fix_action_line: '- Acao: {action}',
279
- detail_line: ' Detalhe: {text}',
280
- required_file: 'Arquivo obrigatorio: {rel}',
281
- context_generated: 'Contexto principal gerado',
282
- context_hint: 'Execute @setup para gerar .aioson/context/project.context.md',
283
- context_frontmatter_valid: 'Frontmatter do contexto do projeto esta valido',
284
- context_frontmatter_valid_hint:
285
- 'Garanta que project.context.md comeca com frontmatter YAML delimitado por ---',
286
- context_frontmatter_invalid: 'Frontmatter do contexto do projeto esta invalido ({reason})',
287
- context_frontmatter_invalid_hint:
288
- 'Reescreva project.context.md usando o formato de saida do @setup.',
289
- context_required_field: 'Campo obrigatorio ausente no contexto: {field}',
290
- context_required_field_hint:
291
- 'Execute novamente @setup e confirme que todos os campos obrigatorios estao presentes.',
292
- context_framework_installed_type: '`framework_installed` deve ser booleano (true/false)',
293
- context_framework_installed_type_hint:
294
- 'Defina framework_installed como true ou false sem aspas.',
295
- context_classification_value: '`classification` deve ser um de {expected}',
296
- context_classification_value_hint: 'Use MICRO, SMALL ou MEDIUM exatamente.',
297
- context_project_type_value: '`project_type` deve ser um de {expected}',
298
- context_project_type_value_hint: 'Use web_app, api, site, script, dapp ou desktop_app exatamente.',
299
- context_profile_value: '`profile` deve ser um de {expected}',
300
- context_profile_value_hint: 'Use developer, beginner ou team exatamente.',
301
- context_interaction_language_format:
302
- '`interaction_language` nao e uma tag BCP-47 valida',
303
- context_interaction_language_format_hint: 'Use valores como en, en-US, pt-BR.',
304
- context_conversation_language_format:
305
- '`conversation_language` nao e uma tag BCP-47 valida',
306
- context_conversation_language_format_hint: 'Use valores como en, en-US, pt-BR.',
307
- node_version: 'Node.js >= 18 (atual: {version})',
308
- gateway_claude_pointer: 'Gateway do CLAUDE referencia arquivos compartilhados do AIOSON',
309
- gateway_claude_pointer_hint:
310
- 'Garanta que CLAUDE.md referencie .aioson/config.md e .aioson/agents/setup.md.',
311
- gateway_codex_pointer: 'Gateway do Codex referencia arquivos compartilhados do AIOSON',
312
- gateway_codex_pointer_hint:
313
- 'Garanta que AGENTS.md referencie .aioson/config.md e .aioson/agents/.',
314
- gateway_gemini_pointer: 'Gateway do Gemini referencia caminhos compartilhados de comandos e agentes',
315
- gateway_gemini_pointer_hint:
316
- 'Garanta que .gemini/GEMINI.md referencie .gemini/commands/ e .aioson/agents/.',
317
- gateway_gemini_command_pointer:
318
- 'Arquivo de comando Gemini mapeia para agente compartilhado: {file}',
319
- gateway_gemini_command_pointer_hint:
320
- 'Garanta que {file} inclua @{ .aioson/agents/{agent}.md } no campo prompt.',
321
- gateway_opencode_pointer: 'Gateway do OpenCode referencia arquivos compartilhados do AIOSON',
322
- gateway_opencode_pointer_hint:
323
- 'Garanta que OPENCODE.md referencie .aioson/config.md e .aioson/agents/.',
324
- fix_start: 'Modo de correcao segura habilitado.',
325
- fix_start_dry_run: 'Modo de correcao segura habilitado (dry-run).',
326
- fix_action_required_files: 'Restaurar arquivos gerenciados ausentes a partir do template',
327
- fix_action_gateway_contracts:
328
- 'Restaurar arquivos de contrato de gateway quebrados a partir do template',
329
- fix_action_locale_sync: 'Sincronizar prompts ativos dos agentes com o idioma do contexto',
330
- fix_not_applicable: 'Nao aplicavel para o estado atual.',
331
- fix_target_count: 'Alvos identificados: {count}',
332
- fix_applied_count: 'Mudancas aplicadas: {count}',
333
- fix_planned_count: 'Mudancas planejadas: {count}',
334
- fix_locale: 'Locale resolvido: {locale}',
335
- fix_summary: 'Mudancas de correcao segura aplicadas: {count}',
336
- fix_summary_dry_run: '[dry-run] Mudancas de correcao segura planejadas: {count}'
337
- },
338
- i18n_add: {
339
- usage_error: 'Uso: aioson i18n:add <locale> [--force] [--dry-run] [--locale=pt-BR]',
340
- invalid_locale: 'Codigo de locale invalido: {locale}. Formatos esperados como en, fr, pt-br.',
341
- base_locale: 'O locale "en" e o dicionario base e nao pode ser gerado.',
342
- locale_exists: 'Arquivo de locale ja existe: {path}. Use --force para sobrescrever.',
343
- dry_run_created: '[dry-run] O scaffold de locale seria criado: {locale}',
344
- dry_run_overwritten: '[dry-run] O scaffold de locale seria sobrescrito: {locale}',
345
- created: 'Scaffold de locale criado: {locale}',
346
- overwritten: 'Scaffold de locale sobrescrito: {locale}',
347
- file_path: 'Arquivo de locale: {path}',
348
- next_steps: 'Proximos passos:',
349
- step_translate: '1. Substitua as strings em ingles pelos textos traduzidos nesse arquivo.',
350
- step_try: '2. Execute a CLI com --locale={locale} para validar o novo dicionario.'
351
- },
352
- agents: {
353
- list_title: 'Agentes disponiveis (locale resolvido: {locale}):',
354
- path: 'Caminho',
355
- active_path: 'Caminho ativo',
356
- depends: 'Depende de',
357
- output: 'Saida',
358
- agent_line: '- Agente: {label} - {command} ({id})',
359
- path_line: ' Caminho: {path}',
360
- active_path_line: ' Caminho ativo: {path}',
361
- depends_line: ' Depende de: {value}',
362
- output_line: ' Saida: {value}',
363
- none: 'nenhum',
364
- prompt_usage_error:
365
- 'Uso: aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=en|pt-BR|es|fr] [--locale=pt-BR]',
366
- prompt_unknown_agent: 'Agente desconhecido: {agent}',
367
- prompt_invalid_target_mode:
368
- 'Modo de target do pentester invalido: {mode}. Use framework_target ou app_target.',
369
- prompt_missing_feature_for_app_target:
370
- 'Pentester app_target exige --feature=<slug> (ou --slug=<slug>).',
371
- prompt_missing_scope_for_app_target:
372
- 'Pentester app_target exige --scope=<area>.',
373
- prompt_title: 'Prompt para o agente "{agent}" na ferramenta "{tool}" (locale: {locale}):'
374
- },
375
- context_validate: {
376
- missing_file: 'Arquivo de contexto nao encontrado: {path}',
377
- hint_setup: 'Execute @setup para gerar o arquivo primeiro.',
378
- invalid_frontmatter: 'O arquivo de contexto tem frontmatter YAML invalido.',
379
- file_path: 'Arquivo de contexto: {path}',
380
- parse_reason_unknown: 'desconhecido',
381
- parse_reason_missing_frontmatter: 'delimitador inicial do frontmatter ausente',
382
- parse_reason_unclosed_frontmatter: 'bloco de frontmatter nao fechado',
383
- parse_reason_invalid_frontmatter_line: 'sintaxe invalida em linha do frontmatter',
384
- parse_reason: 'Motivo do parse: {reason}',
385
- hint_fix_frontmatter: 'Use @setup para regenerar um arquivo de contexto valido.',
386
- invalid_fields: 'O arquivo de contexto foi lido, mas tem problemas de validacao:',
387
- issue_line: '- {issue}',
388
- valid: 'O arquivo de contexto esta valido.'
389
- },
390
- context_pack: {
391
- generated: 'Context pack escrito em: {path}',
392
- no_matches: 'Nenhum arquivo de contexto relevante foi selecionado ainda. Gere setup/contexto/scan antes de empacotar.',
393
- selected_title: 'Arquivos incluidos no pack:',
394
- selected_line: ' {index}. {path} {reason}',
395
- hint_use: 'Use {path} como contexto minimo inicial na sua sessao de IA.'
396
- },
397
- setup: {
398
- installing: 'Instalando template AIOSON...',
399
- installed: 'Template instalado ({count} arquivos).',
400
- no_framework_detected: 'Nenhum framework detectado neste diretorio (projeto novo).',
401
- framework_detected: 'Framework detectado: {framework} (instalado={installed})',
402
- writing_context: 'Escrevendo contexto do projeto...',
403
- done: 'Setup concluido.',
404
- step_agents: ' Proximo: abra seu cliente de IA e ative @setup para confirmar ou ajustar o contexto.',
405
- step_agent_prompt: ' Ou execute: aioson agent:prompt setup . --tool={tool}',
406
- q_project_name: 'Nome do projeto',
407
- q_framework: 'Framework / stack principal (ex: Python, Node, Laravel, Django)',
408
- q_lang: 'Idioma para respostas dos agentes (ex: en, pt-BR, es, fr)',
409
- q_confirm_framework: 'Usar framework detectado? (true/false)',
410
- q_override_framework: 'Framework',
411
- q_framework_installed: 'Framework instalado? (true/false)'
412
- },
413
- setup_context: {
414
- detected: 'Framework detectado: {framework} (installed={installed})',
415
- q_project_name: 'Nome do projeto',
416
- q_project_type: 'Tipo do projeto (web_app|api|site|script|dapp|desktop_app)',
417
- q_profile: 'Perfil: [1] developer [2] beginner [3] team',
418
- q_use_detected_framework: 'Usar framework detectado? (true/false)',
419
- q_framework: 'Framework',
420
- q_framework_installed: 'Framework instalado? (true/false)',
421
- q_language: 'Idioma da conversa (por exemplo en ou pt-BR)',
422
- q_backend_menu:
423
- 'Backend: [1] Laravel [2] Rails [3] Django [4] Node/Express [5] Next.js [6] Nuxt [7] Hardhat [8] Foundry [9] Truffle [10] Anchor [11] Solana Web3 [12] Cardano [13] Other',
424
- q_backend_text: 'Backend (texto livre)',
425
- q_laravel_version: 'Versao do Laravel (por exemplo 11, 10)',
426
- q_frontend_menu:
427
- 'Frontend: [1] TALL Stack [2] VILT Stack [3] Blade [4] Next.js [5] Nuxt [6] React [7] Vue [8] Other',
428
- q_frontend_text: 'Frontend (texto livre)',
429
- q_auth_menu:
430
- 'Auth (Laravel): [1] Breeze [2] Jetstream + Livewire [3] Filament Shield [4] Custom',
431
- q_web3_enabled: 'Web3 habilitado? (true/false)',
432
- q_web3_networks: 'Redes Web3 (por exemplo ethereum, solana, cardano)',
433
- q_contract_framework: 'Framework de contratos (por exemplo Hardhat, Foundry, Anchor, Aiken)',
434
- q_wallet_provider: 'Wallet provider (por exemplo wagmi, RainbowKit, Phantom, Lace)',
435
- q_indexer: 'Indexer (por exemplo The Graph, Helius, Blockfrost)',
436
- q_rpc_provider: 'RPC provider (por exemplo Alchemy, Infura, QuickNode)',
437
- q_jetstream_teams: 'Jetstream com teams habilitado? (true/false)',
438
- q_jetstream_existing_action:
439
- 'Projeto Laravel existente sem Jetstream detectado. Acao: [1] continuar sem Jetstream [2] recriar com Jetstream (recomendado) [3] instalacao manual (risco)',
440
- q_auth_text: 'Estrategia de autenticacao (texto livre)',
441
- q_uiux_menu: 'UI/UX: [1] Tailwind [2] Flux UI [3] shadcn/ui [4] Filament',
442
- q_uiux_text: 'Abordagem de UI/UX (texto livre)',
443
- q_database_menu:
444
- 'Banco de dados: [1] MySQL [2] PostgreSQL [3] SQLite [4] MongoDB [5] Supabase [6] PlanetScale',
445
- q_database_text: 'Banco de dados (texto livre)',
446
- q_services_list:
447
- 'Servicos adicionais (lista separada por virgula): queues, storage, websockets, payments, email, cache, search',
448
- q_rails_options:
449
- 'Opcoes usadas no Rails (lista por virgula, ex: --database=postgresql,--css=tailwind,--api)',
450
- q_next_options:
451
- 'Opcoes do create-next-app (lista por virgula, ex: TypeScript,ESLint,Tailwind CSS,App Router,src/ directory)',
452
- q_beginner_summary: 'Descreva seu projeto em uma frase',
453
- q_beginner_users:
454
- 'Usuarios esperados: [1] pessoal/pequeno ate 10 [2] time pequeno ate 100 [3] clientes externos',
455
- q_beginner_mobile: 'Requisito mobile: [1] app mobile [2] web responsiva [3] apenas desktop',
456
- q_beginner_hosting: 'Preferencia de hospedagem: [1] gerenciado simples [2] VPS [3] cloud provider',
457
- q_beginner_accept_recommendation: 'Aceitar recomendacao inicial? (true/false)',
458
- beginner_recommendation:
459
- 'Recomendacao inicial -> framework: {framework}, frontend: {frontend}, database: {database}, auth: {auth}',
460
- q_user_types: 'Quantos tipos de usuario?',
461
- q_integrations: 'Quantas integracoes externas?',
462
- q_rules_complexity: 'Complexidade de regras (none|some|complex)',
463
- note_status_enabled: 'habilitado',
464
- note_status_disabled: 'desabilitado',
465
- note_jetstream_teams: 'Jetstream teams: {status}',
466
- note_selected_services: 'Servicos selecionados: {services}',
467
- note_rails_setup_flags: 'Flags de setup do Rails: {flags}',
468
- note_next_setup_flags: 'Flags de setup do Next.js: {flags}',
469
- note_next_create_flags: 'Flags do create-next-app: {flags}',
470
- note_jetstream_existing_action: 'Acao para projeto existente com Jetstream: {action}',
471
- note_mobile_first:
472
- 'Requisito mobile-first detectado; considere React Native/Expo como proximo passo.',
473
- note_vps_preference:
474
- 'Preferencia por VPS detectada; mantenha scripts de deploy simples e reproduziveis.',
475
- note_cloud_profile:
476
- 'Perfil cloud detectado; use banco gerenciado e object storage desde o inicio.',
477
- note_web3_terms: 'Termos Web3 detectados; recomendacao inicial de dApp aplicada.',
478
- note_starter_profile:
479
- 'Esta recomendacao e um perfil inicial; ajuste quando os requisitos ficarem mais claros.',
480
- note_team_profile:
481
- 'Perfil de time selecionado; preserve convencoes explicitas de equipe e regras de CI.',
482
- note_beginner_declined:
483
- 'Recomendacao inicial recusada; usando stack customizada do onboarding.',
484
- note_monorepo:
485
- 'Monorepo detectado: framework Web3 e framework de aplicacao coexistem. Confirmar framework primario com o usuario e documentar estrutura em Notes.',
486
- written: 'Arquivo de contexto escrito: {path}',
487
- classification_result: 'Classificacao: {classification} (score={score}/6)',
488
- locale_applied: 'Idioma de interacao sincronizado: {locale} ({count} prompts de agente restaurados)'
489
- },
490
- locale_apply: {
491
- applied: 'Idioma de interacao sincronizado: {locale}',
492
- dry_run_applied: '[dry-run] Idioma de interacao seria sincronizado: {locale}',
493
- copied_count: 'Arquivos copiados: {count}',
494
- missing_count: 'Arquivos de locale ausentes: {count}',
495
- copy_line: ' Arquivo: {source} -> {target}'
496
- },
497
- smoke: {
498
- start: 'Executando smoke test em: {projectDir}',
499
- using_web3_profile: 'Usando perfil Web3 de smoke: {target}',
500
- using_mixed_profile: 'Usando perfil misto Web2+Web3 para smoke test.',
501
- using_parallel_profile: 'Usando perfil de smoke para orquestracao paralela.',
502
- seeded_web3_workspace: 'Workspace inicializado para alvo Web3: {target}',
503
- seeded_mixed_workspace: 'Workspace inicializado para perfil misto Web2+Web3.',
504
- seeded_parallel_context: 'Contexto discovery/architecture/prd inicializado para perfil paralelo.',
505
- step_ok: 'OK: {step}',
506
- web3_detected: 'Framework Web3 detectado: {framework} ({network})',
507
- web3_context_verified: 'Contexto Web3 verificado para rede: {network}',
508
- mixed_context_verified: 'Contexto do perfil misto verificado (framework: {framework}).',
509
- parallel_status_verified: 'Status paralelo verificado para lanes: {count}',
510
- invalid_web3_target: 'Alvo --web3 invalido: {target}. Use ethereum, solana ou cardano.',
511
- invalid_profile: 'Valor invalido para --profile: {profile}. Use standard, mixed ou parallel.',
512
- profile_conflict: 'Nao combine --profile=mixed com --web3. Escolha um modo de perfil.',
513
- assert_install_files: 'install copiou zero arquivos',
514
- assert_web3_framework: 'deteccao de framework web3 inesperada: {framework}',
515
- assert_setup_written: 'setup:context nao gravou o arquivo de contexto',
516
- assert_setup_project_type_dapp: 'setup nao inferiu project_type=dapp',
517
- assert_setup_web3_network: 'setup nao inferiu a rede web3 esperada',
518
- assert_setup_web3_framework: 'setup nao manteve o framework web3 esperado',
519
- assert_mixed_project_type_dapp: 'perfil mixed nao inferiu project_type=dapp',
520
- assert_mixed_web3_enabled: 'perfil mixed nao inferiu web3_enabled=true',
521
- assert_mixed_framework: 'perfil mixed nao priorizou o framework web3 esperado',
522
- assert_locale_apply_files: 'locale:apply copiou zero arquivos',
523
- assert_agents_count: 'comando agents retornou contagem inesperada',
524
- assert_prompt_path: 'agent:prompt nao incluiu o caminho esperado',
525
- assert_context_validate: 'context:validate falhou',
526
- assert_web3_context_valid: 'falha ao validar parse do contexto web3',
527
- assert_web3_context_project_type: 'project_type do contexto nao e dapp',
528
- assert_web3_context_enabled: 'web3_enabled do contexto nao e true',
529
- assert_web3_context_network: 'web3_networks do contexto nao inclui o alvo esperado',
530
- assert_doctor_ok: 'checagem doctor falhou',
531
- assert_parallel_init_ok: 'parallel:init falhou',
532
- assert_parallel_init_workers: 'workers de parallel:init nao conferem',
533
- assert_parallel_assign_ok: 'parallel:assign falhou',
534
- assert_parallel_assign_scope: 'parallel:assign nao gerou escopos',
535
- assert_parallel_status_ok: 'parallel:status falhou',
536
- assert_parallel_status_lanes: 'quantidade de lanes em parallel:status nao confere',
537
- assert_parallel_doctor_ok: 'parallel:doctor falhou',
538
- assert_parallel_doctor_summary: 'parallel:doctor reportou falhas',
539
- completed: 'Smoke test concluido com sucesso.',
540
- steps_count: 'Etapas validadas: {count}',
541
- workspace_kept: 'Workspace mantido: {path}',
542
- workspace_removed: 'Workspace removido: {path}'
543
- },
544
- package_test: {
545
- start: 'Executando teste de pacote a partir da origem: {sourceDir}',
546
- pack_done: 'Tarball do pacote criado: {tarball}',
547
- completed: 'Teste de pacote concluido com {count} etapas validadas.',
548
- workspace: 'Workspace do teste de pacote: {path}',
549
- error_unknown_detail: 'erro desconhecido',
550
- error_npm_pack: 'Falha no npm pack: {detail}',
551
- error_tarball_missing: 'npm pack nao retornou o nome do tarball',
552
- error_npx_init: 'Falha no npx init: {detail}',
553
- error_npx_setup_context: 'Falha no npx setup:context: {detail}',
554
- error_npx_doctor: 'Falha no npx doctor: {detail}',
555
- error_doctor_not_ok: 'doctor retornou ok=false durante o teste de pacote',
556
- error_npx_mcp_init: 'Falha no npx mcp:init: {detail}',
557
- error_mcp_not_ok: 'mcp:init retornou ok=false durante o teste de pacote'
558
- },
559
- workflow_plan: {
560
- context_missing:
561
- 'Arquivo de contexto nao encontrado. Usando workflow de fallback com base na classificacao informada/padrao.',
562
- title: 'Workflow recomendado para classificacao {classification}:',
563
- notes: 'Notas:',
564
- command_line: ' Comando: {command}',
565
- note_line: ' Nota: {note}',
566
- note_framework_not_installed:
567
- 'Framework ainda nao esta instalado; conclua a instalacao da stack antes de @dev.',
568
- note_dapp_context:
569
- 'Contexto dApp detectado; inclua skills Web3 durante @architect e @dev.',
570
- note_micro_scope:
571
- 'Mantenha o escopo de implementacao minimo e evite agentes opcionais.',
572
- note_product_optional:
573
- '@product e opcional para MICRO — pule e va direto ao @dev se a ideia ja esta clara.',
574
- note_feature_flow:
575
- 'Fluxo para nova feature (apos configuracao inicial): @product → @analyst → @dev → @qa. Sem @setup.'
576
- },
577
- workflow_next: {
578
- title: 'Handoff do workflow para {mode} ({classification}):',
579
- completed: 'Etapa concluida: {agent}',
580
- detour: 'Desvio ativo: {agent} (retorna para {returnTo})',
581
- current_agent: 'Agente atual: {agent}',
582
- next_agent: 'Proximo/retorno: {agent}',
583
- done: 'Workflow concluido. Nao ha proximo agente.',
584
- state_file: 'Arquivo de estado: {path}'
585
- },
586
- workflow_heal: {
587
- title: '🩹 Auto-cura ativada para {stage} (tentativa {count}/3):'
588
- },
589
- parallel_init: {
590
- context_missing:
591
- 'Arquivo de contexto nao encontrado: {path}. Execute setup:context primeiro.',
592
- context_invalid: 'Arquivo de contexto invalido ou nao parseavel: {path}.',
593
- classification_unknown: 'desconhecida',
594
- requires_medium:
595
- 'Inicializacao paralela so e suportada para classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
596
- invalid_workers:
597
- 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
598
- already_exists:
599
- 'Arquivos de contexto paralelo ja existem ({count}). Use --force para sobrescrever.',
600
- prepared: 'Workspace paralelo inicializado em: {path}',
601
- dry_run_prepared: '[dry-run] Workspace paralelo seria inicializado em: {path}',
602
- workers_count: 'Workers: {count}',
603
- files_count: 'Arquivos preparados: {count}',
604
- missing_prereq_count: 'Arquivos de contexto prerequisitos ausentes: {count}',
605
- file_line: ' Arquivo: {file}'
606
- },
607
- parallel_doctor: {
608
- prefix_ok: 'OK',
609
- prefix_warn: 'AVISO',
610
- prefix_fail: 'FALHA',
611
- check_line: '[{prefix}] {id} - {message}',
612
- hint_line: ' Dica: {hint}',
613
- invalid_workers:
614
- 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
615
- classification_unknown: 'desconhecida',
616
- requires_medium:
617
- 'Modo de correcao do parallel doctor requer classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
618
- report_title: 'Relatorio do parallel doctor: {path}',
619
- summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.',
620
- fix_summary: 'Mudancas de correcao paralela aplicadas: {count}',
621
- fix_summary_dry_run: '[dry-run] Mudancas de correcao paralela planejadas: {count}',
622
- check_context_exists_ok: 'project.context.md existe.',
623
- check_context_exists_missing: 'project.context.md esta ausente.',
624
- check_context_exists_hint: 'Execute setup:context antes do parallel doctor.',
625
- check_context_parsed_ok: 'project.context.md esta parseavel.',
626
- check_context_parsed_invalid: 'project.context.md esta invalido.',
627
- check_context_parsed_hint:
628
- 'Corrija o frontmatter do contexto antes de executar parallel doctor.',
629
- check_context_classification_ok:
630
- 'Modo paralelo permitido para classificacao {classification}.',
631
- check_context_classification_invalid:
632
- 'Modo paralelo requer classificacao MEDIUM (atual: {classification}).',
633
- check_context_classification_hint: 'Use --force para sobrescrever a regra de classificacao.',
634
- check_parallel_dir_ok: 'Diretorio .aioson/context/parallel existe.',
635
- check_parallel_dir_missing: 'Diretorio .aioson/context/parallel esta ausente.',
636
- check_parallel_dir_hint: 'Execute parallel:init ou parallel:doctor --fix.',
637
- check_parallel_shared_ok: 'shared-decisions.md esta presente.',
638
- check_parallel_shared_missing: 'shared-decisions.md esta ausente.',
639
- check_parallel_shared_hint:
640
- 'Execute parallel:doctor --fix para restaurar os arquivos base.',
641
- check_parallel_manifest_ok: 'workspace.manifest.json esta presente.',
642
- check_parallel_manifest_missing: 'workspace.manifest.json esta ausente.',
643
- check_parallel_manifest_hint:
644
- 'Execute parallel:doctor --fix para restaurar o manifest do workspace.',
645
- check_parallel_ownership_ok: 'ownership-map.json esta presente.',
646
- check_parallel_ownership_missing: 'ownership-map.json esta ausente.',
647
- check_parallel_ownership_hint:
648
- 'Execute parallel:doctor --fix para restaurar o mapa de ownership.',
649
- check_parallel_merge_ok: 'merge-plan.json esta presente.',
650
- check_parallel_merge_missing: 'merge-plan.json esta ausente.',
651
- check_parallel_merge_hint:
652
- 'Execute parallel:doctor --fix para restaurar o plano de merge.',
653
- check_machine_sync_ok:
654
- 'Os artefatos paralelos machine-readable estao sincronizados com os arquivos de lane.',
655
- check_machine_sync_stale:
656
- 'Os artefatos paralelos machine-readable estao stale: {files}.',
657
- check_machine_sync_hint:
658
- 'Execute parallel:doctor --fix para reconstruir os artefatos stale.',
659
- check_ownership_conflicts_ok:
660
- 'Nenhum conflito de ownership foi detectado entre os escopos das lanes.',
661
- check_ownership_conflicts_found:
662
- '{count} conflito(s) de ownership foi/foram detectado(s) entre os escopos das lanes.',
663
- check_ownership_conflicts_hint:
664
- 'Ajuste o ownership para que cada scope key pertenca a apenas uma lane.',
665
- check_write_scope_present_ok:
666
- 'Todas as lanes com escopo atribuido tambem declaram write_paths.',
667
- check_write_scope_present_missing:
668
- '{count} lane(s) com escopo atribuido ainda nao declaram write_paths.',
669
- check_write_scope_present_hint:
670
- 'Declare caminhos relativos ao projeto ou prefixos recursivos (por exemplo src/auth/**) no bloco Ownership de cada lane.',
671
- check_write_scope_valid_ok:
672
- 'Todos os write_paths declarados usam padroes suportados.',
673
- check_write_scope_valid_invalid:
674
- '{count} padrao(oes) invalido(s) de write_paths foi/foram detectado(s).',
675
- check_write_scope_valid_hint:
676
- 'Use caminhos relativos exatos ao projeto ou padroes recursivos terminando com /**.',
677
- check_write_scope_conflicts_ok:
678
- 'Nenhuma sobreposicao de write_paths foi detectada entre as lanes.',
679
- check_write_scope_conflicts_found:
680
- '{count} sobreposicao(oes) de write_paths foi/foram detectada(s) entre as lanes.',
681
- check_write_scope_conflicts_hint:
682
- 'Separe o ownership para que cada padrao de caminho pertenca a apenas uma lane.',
683
- check_dependencies_valid_ok:
684
- 'Todas as dependencias declaradas entre lanes apontam para lanes validas.',
685
- check_dependencies_valid_invalid:
686
- '{count} referencia(s) invalida(s) de dependencia entre lanes foi/foram detectada(s).',
687
- check_dependencies_valid_hint:
688
- 'Use referencias lane-N apenas para lanes existentes ou mova a coordenacao compartilhada para shared-decisions.',
689
- check_dependencies_blocked_ok:
690
- 'Nenhuma lane esta bloqueada neste momento por dependencia incompleta.',
691
- check_dependencies_blocked_found:
692
- '{count} bloqueio(s) por dependencia entre lanes foi/foram detectado(s) com base no status atual.',
693
- check_dependencies_blocked_hint:
694
- 'Conclua as lanes upstream ou retorne a lane dependente para pending antes da execucao.',
695
- check_merge_order_ok:
696
- 'A ordem de merge respeita as dependencias declaradas entre lanes.',
697
- check_merge_order_invalid:
698
- '{count} violacao(oes) de ordem de merge contra dependencias declaradas foi/foram detectada(s).',
699
- check_merge_order_hint:
700
- 'Ajuste merge ranks ou dependencias para que as lanes upstream sejam mescladas primeiro.',
701
- check_lanes_present_ok: '{count} arquivo(s) de lane detectado(s).',
702
- check_lanes_present_missing: 'Nenhum arquivo de status de lane foi encontrado.',
703
- check_lanes_present_hint: 'Execute parallel:init ou parallel:doctor --fix.',
704
- check_lanes_sequence_ok: 'Sequencia de lanes e continua (1..{workers}).',
705
- check_lanes_sequence_missing: 'Arquivos de lane ausentes na sequencia: {lanes}',
706
- check_lanes_sequence_hint:
707
- 'Execute parallel:doctor --fix para restaurar as lanes ausentes.',
708
- check_workers_option: 'Opcao de workers solicitada: {workers}.',
709
- check_prereq_ok: 'Todos os arquivos de contexto prerequisitos estao presentes.',
710
- check_prereq_missing: '{count} arquivo(s) de contexto prerequisito ausente(s).',
711
- check_prereq_hint:
712
- 'Crie os arquivos discovery/architecture/prd antes da orquestracao.'
713
- },
714
- parallel_assign: {
715
- invalid_workers:
716
- 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
717
- context_missing: 'Arquivo de contexto nao encontrado: {path}.',
718
- context_invalid: 'Arquivo de contexto invalido ou nao parseavel: {path}.',
719
- classification_unknown: 'desconhecida',
720
- requires_medium:
721
- 'A atribuicao paralela requer classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
722
- parallel_missing:
723
- 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
724
- no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
725
- missing_lanes: 'Arquivos de lane ausentes para os workers solicitados: {lanes}.',
726
- source_missing: 'Nao foi possivel resolver o documento de origem com --source={source}.',
727
- applied: 'Atribuicao de escopo paralelo aplicada ({count} item(ns) de escopo).',
728
- dry_run_applied:
729
- '[dry-run] Atribuicao de escopo paralelo planejada ({count} item(ns) de escopo).',
730
- source_info: 'Documento de origem: {source}',
731
- workers_count: 'Workers: {count}',
732
- files_count: 'Arquivos atualizados: {count}',
733
- lane_scope_line: '- lane {lane}: {count} item(ns) de escopo'
734
- },
735
- parallel_status: {
736
- parallel_missing:
737
- 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
738
- no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
739
- title: 'Relatorio de status paralelo: {path}',
740
- lanes_count: 'Lanes: {count}',
741
- statuses_title: 'Status:',
742
- status_line: '- {status}: {count}',
743
- status_pending: 'pendente',
744
- status_in_progress: 'em_andamento',
745
- status_completed: 'concluido',
746
- status_merged: 'mesclado',
747
- status_blocked: 'bloqueado',
748
- status_other: 'outro',
749
- scopes_count: 'Total de itens de escopo: {count}',
750
- deliverables_progress: 'Entregaveis: {completed}/{total} concluidos',
751
- blockers_count: 'Bloqueios em aberto: {count}',
752
- shared_decisions: 'Entradas no log de decisoes compartilhadas: {count}',
753
- ownership_conflicts: 'Conflitos de ownership: {count}',
754
- write_scope_summary:
755
- 'Write scope: lanes_com_paths={lanes}, caminhos={paths}, lanes_com_escopo_sem_path={uncovered}, conflitos={conflicts}, invalidos={invalid}',
756
- dependencies_summary:
757
- 'Dependencias: declaradas={declared}, invalidas={invalid}, bloqueadas={blocked}, violacoes_de_ordem={orderViolations}',
758
- sync_summary: 'Drift dos arquivos machine-readable: {count}',
759
- sync_stale_line: '- stale: {file}',
760
- lane_line: '- lane {lane}: status={status}, escopo={scope}, bloqueios={blockers}'
761
- },
762
- parallel_merge: {
763
- parallel_missing:
764
- 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
765
- no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
766
- ready: 'O merge deterministico esta pronto para {count} lane(s).',
767
- applied: 'O merge deterministico foi aplicado em {count} lane(s).',
768
- blocked: 'O merge deterministico esta bloqueado para {count} lane(s).',
769
- order: 'Ordem de merge: {order}',
770
- structural_summary:
771
- 'Checagens estruturais: stale={stale}, conflitos_de_ownership={conflicts}, conflitos_de_write_scope={writeConflicts}, write_paths_invalidos={invalidWritePaths}, dependencias_invalidas={invalid}, dependencias_bloqueadas={blocked}, violacoes_de_ordem={orderViolations}',
772
- lane_line: '- lane {lane}: acao={action}, status={status}'
773
- },
774
- parallel_guard: {
775
- invalid_lane: 'Valor invalido para --lane. Use um inteiro positivo.',
776
- paths_required:
777
- 'Falta o valor de --paths. Informe um ou mais caminhos relativos ao projeto separados por virgula.',
778
- parallel_missing:
779
- 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
780
- no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
781
- lane_missing: 'A lane {lane} nao existe no workspace paralelo atual.',
782
- allowed: 'O guard de escrita liberou a lane {lane} para {count} caminho(s).',
783
- blocked: 'O guard de escrita bloqueou a lane {lane} para {count} caminho(s).',
784
- write_scope_summary:
785
- 'Resumo do write scope: caminhos={paths}, conflitos={conflicts}, invalidos={invalid}',
786
- path_line: '- path {path}: status={status}, owners={owners}'
787
- },
788
- mcp_init: {
789
- context_missing:
790
- 'Arquivo de contexto nao encontrado. Gerando plano MCP base com suposicoes genericas.',
791
- invalid_tool: 'Valor invalido para --tool: {tool}. Use um de: {expected}.',
792
- reason_filesystem: 'Acesso local obrigatorio ao workspace.',
793
- reason_context7: 'Use documentacao oficial atualizada no momento da implementacao.',
794
- reason_database_none: 'Nenhuma stack de banco de dados foi detectada ainda.',
795
- reason_database_enabled:
796
- 'O contexto indica recursos com banco de dados (endpoint MCP remoto recomendado).',
797
- reason_web_search: 'Util para avaliacao de pacotes e verificacao de release notes.',
798
- reason_chain_rpc_disabled: 'Web3 esta desabilitado para este projeto.',
799
- reason_chain_rpc_enabled: 'Contexto dApp detectado; acesso RPC de chain e necessario.',
800
- note_workspace_local: 'Este e um preset local de workspace gerado pelo AIOSON.',
801
- note_replace_placeholders:
802
- 'Substitua comandos placeholder pelos servidores MCP que voce realmente usa.',
803
- note_keep_secrets_env:
804
- 'Mantenha segredos em variaveis de ambiente, nunca inline tokens.',
805
- generated: 'Plano MCP escrito: {path}',
806
- dry_run_generated: '[dry-run] Plano MCP seria escrito: {path}',
807
- server_count: 'Servidores MCP no plano: {count}',
808
- preset_count: 'Presets de ferramentas gerados: {count}',
809
- preset_written: 'Preset escrito ({tool}): {path}',
810
- preset_dry_run: '[dry-run] Preset seria escrito ({tool}): {path}'
811
- },
812
- mcp_doctor: {
813
- prefix_ok: 'OK',
814
- prefix_warn: 'AVISO',
815
- prefix_fail: 'FALHA',
816
- check_line: '[{prefix}] {id} - {message}',
817
- hint_line: ' Dica: {hint}',
818
- context_missing: 'project.context.md nao foi encontrado.',
819
- context_missing_hint: 'Execute setup primeiro para validacao MCP orientada por contexto.',
820
- context_parse_invalid: 'project.context.md nao pode ser parseado ({reason}).',
821
- context_parse_invalid_hint:
822
- 'Corrija a formatacao do contexto para habilitar validacao MCP por stack.',
823
- context_ok: 'project.context.md esta disponivel e parseavel.',
824
- plan_missing: 'Arquivo do plano MCP nao encontrado (.aioson/mcp/servers.local.json).',
825
- plan_missing_hint: 'Execute: aioson mcp:init',
826
- plan_invalid: 'JSON do plano MCP invalido: {error}',
827
- plan_invalid_hint: 'Regenere o plano com: aioson mcp:init',
828
- plan_ok: 'Arquivo do plano MCP presente e com JSON valido.',
829
- plan_servers_ok: 'Plano MCP declara {count} definicao(oes) de servidor.',
830
- plan_servers_missing: 'Plano MCP nao possui definicoes de servidor.',
831
- plan_servers_hint: 'Regenere com: aioson mcp:init',
832
- core_enabled: 'Servidor MCP core "{server}" esta habilitado.',
833
- core_missing: 'Servidor MCP core "{server}" esta ausente ou desabilitado.',
834
- core_missing_hint: 'Regenere e mantenha os servidores core basicos habilitados.',
835
- presets_any_ok: '{count} arquivo(s) de preset MCP encontrado(s).',
836
- presets_any_missing: 'Nenhum arquivo de preset MCP foi encontrado.',
837
- presets_any_hint: 'Execute: aioson mcp:init',
838
- presets_coverage_partial: 'Apenas {existing}/{total} presets de ferramentas estao presentes.',
839
- presets_coverage_partial_hint:
840
- 'Execute: aioson mcp:init (sem --tool) para gerar todos os presets.',
841
- presets_coverage_full:
842
- 'Todos os presets de ferramentas estao presentes (claude, codex, gemini, opencode).',
843
- env_none_required: 'Nenhuma variavel de ambiente obrigatoria nos servidores MCP habilitados.',
844
- env_missing: '{missing}/{total} variavel(is) de ambiente obrigatoria(s) ausente(s): {vars}',
845
- env_missing_hint_strict: 'Defina as variaveis ausentes antes da execucao.',
846
- env_missing_hint_relaxed:
847
- 'Defina variaveis para prontidao total de runtime. Use --strict-env para falhar nesta checagem.',
848
- env_all_present: 'Todas as variaveis obrigatorias estao disponiveis ({count}).',
849
- compat_database_ok: 'Database MCP corresponde ao engine da stack de contexto ({engine}).',
850
- compat_database_mismatch:
851
- 'Database MCP nao corresponde completamente a stack de contexto ({engine}).',
852
- compat_database_hint:
853
- 'Regenere com: aioson mcp:init, ou ajuste manualmente o servidor de database.',
854
- compat_web3_ok: 'MCP chain-rpc esta habilitado para contexto Web3.',
855
- compat_web3_missing: 'Contexto Web3 detectado, mas chain-rpc MCP esta ausente ou desabilitado.',
856
- compat_web3_missing_hint: 'Regenere com: aioson mcp:init',
857
- compat_web3_unneeded: 'chain-rpc MCP esta habilitado, mas o contexto nao e Web3.',
858
- compat_web3_unneeded_hint: 'Desabilite chain-rpc se nao for necessario.',
859
- report_title: 'Relatorio MCP doctor: {path}',
860
- summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.'
861
- },
862
- qa_doctor: {
863
- prefix_ok: 'OK',
864
- prefix_warn: 'AVISO',
865
- prefix_fail: 'FALHA',
866
- check_line: '[{prefix}] {id} - {message}',
867
- hint_line: ' Dica: {hint}',
868
- report_title: 'Relatorio QA doctor: {path}',
869
- summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.',
870
- playwright_ok: 'Playwright esta instalado.',
871
- playwright_missing: 'Pacote Playwright nao encontrado.',
872
- playwright_missing_hint: 'Execute: npm install -g playwright && npx playwright install chromium',
873
- chromium_ok: 'Binario do Chromium encontrado.',
874
- chromium_missing: 'Binario do Chromium nao encontrado.',
875
- chromium_missing_hint: 'Execute: npx playwright install chromium',
876
- config_ok: 'aios-qa.config.json encontrado e valido.',
877
- config_missing: 'aios-qa.config.json nao encontrado.',
878
- config_missing_hint: 'Execute: aioson qa:init --url=<url-da-sua-app>',
879
- config_invalid: 'aios-qa.config.json nao e um JSON valido: {error}',
880
- url_ok: 'URL de destino acessivel ({url}).',
881
- url_missing: 'Nenhuma URL configurada em aios-qa.config.json.',
882
- url_missing_hint: 'Execute: aioson qa:init --url=<url-da-sua-app>',
883
- url_unreachable: 'URL de destino inacessivel ({url}): {error}',
884
- url_unreachable_hint: 'Inicie sua aplicacao antes de executar qa:run ou qa:scan.',
885
- context_ok: 'project.context.md encontrado testes serao enriquecidos com o contexto do projeto.',
886
- context_missing: 'project.context.md nao encontrado — executando em modo generico.',
887
- prd_ok: 'prd.md encontrado {count} criterios de aceite mapeados como cenarios de teste.',
888
- prd_missing: 'prd.md nao encontrado mapeamento de cobertura AC sera ignorado.'
889
- },
890
- qa_init: {
891
- context_found: 'Contexto encontrado: projeto={name}, url={url}',
892
- prd_found: 'prd.md encontrado — {count} criterios de aceite extraidos como cenarios de teste.',
893
- prd_missing: 'prd.md nao encontrado nenhum cenario AC gerado. Adicione prd.md para enriquecer os testes.',
894
- generated: 'Configuracao QA escrita: {path}',
895
- dry_run_generated: '[dry-run] Configuracao QA seria escrita: {path}',
896
- scenarios_count: 'Cenarios de teste do prd.md: {count}',
897
- personas_count: 'Personas habilitadas: {count} (naive, hacker, power, mobile)',
898
- probes_count: 'Sondas de seguranca habilitadas: {count}',
899
- next_steps: 'Proximos passos:',
900
- step_doctor: '1. Verificar pre-requisitos: aioson qa:doctor',
901
- step_run: '2. Executar testes no browser: aioson qa:run'
902
- },
903
- qa_run: {
904
- playwright_missing: 'Playwright nao instalado. Execute: npm install -g playwright && npx playwright install chromium',
905
- config_missing: 'aios-qa.config.json nao encontrado. Execute: aioson qa:init --url=<url-da-sua-app>',
906
- url_missing: 'Nenhuma URL configurada. Adicione url ao aios-qa.config.json ou use --url=<app-url>.',
907
- starting: 'Iniciando sessao de QA no browser: {url}',
908
- persona_start: 'Executando persona: {persona}',
909
- persona_done: 'Persona "{persona}" concluida — {count} finding(s)',
910
- accessibility: 'Executando auditoria de acessibilidade...',
911
- performance: 'Capturando metricas de performance...',
912
- ac_scenarios: 'Documentando cobertura de AC...',
913
- done: 'Sessao de QA concluida.',
914
- report_written: 'Relatorio escrito: {path}',
915
- json_written: 'Relatorio JSON escrito: {path}',
916
- screenshots_dir: 'Screenshots salvos em: {path}',
917
- findings_summary: 'Findings: {critical} critico(s), {high} alto(s), {medium} medio(s), {low} baixo(s)',
918
- html_report_written: 'Relatorio HTML escrito: {path}'
919
- },
920
- qa_scan: {
921
- playwright_missing: 'Playwright nao instalado. Execute: npm install -g playwright && npx playwright install chromium',
922
- config_missing: 'aios-qa.config.json nao encontrado. Execute: aioson qa:init --url=<url-da-sua-app>',
923
- url_missing: 'Nenhuma URL configurada. Adicione url ao aios-qa.config.json ou use --url=<app-url>.',
924
- starting: 'Iniciando scan autonomo: {url}',
925
- crawling: 'Rastreando rotas (profundidade max {depth}, max {pages} paginas)...',
926
- routes_found: 'Rotas descobertas: {count}',
927
- scanning_route: 'Escaneando: {route}',
928
- done: 'Scan autonomo concluido.',
929
- report_written: 'Relatorio escrito: {path}',
930
- findings_summary: 'Findings: {critical} critico(s), {high} alto(s), {medium} medio(s), {low} baixo(s)',
931
- html_report_written: 'Relatorio HTML escrito: {path}'
932
- },
933
- qa_report: {
934
- not_found: 'Nenhum relatorio QA encontrado. Execute: aioson qa:run ou aioson qa:scan',
935
- html_report_written: 'Relatorio HTML escrito: {path}'
936
- },
937
- harness: {
938
- init_success: 'Harness inicializado para a feature: {slug}',
939
- init_exists: 'Harness ja inicializado em {path}',
940
- contract_not_found: 'Contrato nao encontrado para o slug: {slug}',
941
- validating: 'Validando harness para {slug}...',
942
- blocked: 'Execucao pausada: {reason}',
943
- init_dry_run: '[dry-run] Inicializaria harness para {slug}'
944
- },
945
- web_map: {
946
- url_missing: 'Opcao obrigatoria ausente: --url=<url>.',
947
- starting: 'Mapeando site: {url}',
948
- pages_found: 'Paginas descobertas: {count}',
949
- page_line: '- {url} | profundidade={depth} | status={status} | links={links}',
950
- done: 'Mapa web concluido.',
951
- failed: 'Falha no mapa web: {error}'
952
- },
953
- web_scrape: {
954
- url_missing: 'Opcao obrigatoria ausente: --url=<url>.',
955
- invalid_format: 'Valor invalido para --format: {format}. Use markdown, text, html ou links.',
956
- fetching: 'Buscando pagina: {url}',
957
- title_line: 'Titulo: {title}',
958
- status_line: 'Status: {status} | Content-Type: {type}',
959
- done: 'Web scrape concluido ({format}).',
960
- failed: 'Falha no web scrape: {error}'
961
- },
962
- config: {
963
- usage_error:
964
- 'Uso: aioson config <set KEY=value|show|get KEY> [--json] [--locale=pt-BR]',
965
- set_ok: 'Chave configurada: {key} (salva em {path})',
966
- show_header: 'Config global: {path}',
967
- show_empty: ' (nenhuma chave configurada)',
968
- show_line: ' {key} = {value}',
969
- get_line: '{key} = {value}',
970
- key_not_found: 'Chave nao encontrada: {key}'
971
- },
972
- runtime: {
973
- option_required: 'Opcao obrigatoria ausente: {option}',
974
- store_missing:
975
- 'Runtime store nao encontrado: {path}. Execute: aioson runtime:init',
976
- init_ok: 'Runtime store inicializado: {path}',
977
- ingest_ok: 'Conteudos indexados no runtime: {indexed} | ignorados: {skipped} ({path})',
978
- task_start_ok: 'Task iniciada: {task} ({path})',
979
- start_ok: 'Execucao iniciada: {run} ({path})',
980
- update_ok: 'Execucao atualizada: {run} ({path})',
981
- task_finish_ok: 'Task concluida: {task} ({path})',
982
- finish_ok: 'Execucao concluida: {run} ({path})',
983
- task_fail_ok: 'Task marcada como falha: {task} ({path})',
984
- fail_ok: 'Execucao marcada como falha: {run} ({path})',
985
- log_ok: 'Evento registrado: {agent} / {run} ({path})',
986
- log_finish_ok: 'Execucao encerrada: {agent} / {run} ({path})',
987
- log_agent_required: 'Opcao obrigatoria ausente: --agent',
988
- status_title: 'Status do runtime: {path}',
989
- status_db: 'Banco: {path}',
990
- status_task_counts:
991
- 'Tasks -> Fila: {queued} | Rodando: {running} | Concluidas: {completed} | Falhas: {failed}',
992
- status_counts:
993
- 'Runs -> Fila: {queued} | Rodando: {running} | Concluidas: {completed} | Falhas: {failed}',
994
- status_no_active_tasks: 'Nenhuma task ativa.',
995
- status_active_tasks_title: 'Tasks ativas:',
996
- status_active_task_line: '- {task} | squad: {squad} | status: {status} | trabalho: {title}',
997
- status_no_active: 'Nenhuma execucao ativa de agente.',
998
- status_active_title: 'Execucoes ativas:',
999
- status_active_line: '- {agent} | squad: {squad} | status: {status} | trabalho: {title}',
1000
- status_live_sessions_title: 'Sessoes vivas ativas:',
1001
- status_live_session_line: '- {task} | agente: {agent} | status: {status} | plano: {plan} | micro: {micro} | handoffs: {handoffs} | trabalho: {title}',
1002
- status_micro_tasks_title: 'Micro-tarefas ativas:',
1003
- status_micro_task_line: '- {task} | pai: {parent} | status: {status} | trabalho: {title}',
1004
- status_handoffs_title: 'Handoffs recentes:',
1005
- status_handoff_line: '- {created} | {from} -> {to} | sessao: {session} | {message}'
1006
- },
1007
- live: {
1008
- unsupported_tool: 'Ferramenta live nao suportada: {tool}. Ferramentas suportadas: {supported}',
1009
- plan_not_found: 'Arquivo de plano nao encontrado: {plan}',
1010
- no_active_session: 'Nenhuma sessao live ativa encontrada para {agent}.',
1011
- session_not_active: 'A sessao live de {agent} nao esta ativa.',
1012
- json_requires_no_launch: '--json requer --no-launch para live:start porque o lancamento em primeiro plano e interativo.',
1013
- tool_binary_not_found: 'Binario da ferramenta nao encontrado no PATH: {binary}',
1014
- tool_mismatch: 'A sessao ativa usa a ferramenta "{existing}" mas --tool={requested} foi informado. Encerre a sessao primeiro ou use a mesma ferramenta.',
1015
- micro_task_already_open: 'Uma micro-tarefa live ja esta aberta para {agent}. Emita task_completed antes de task_started novamente.',
1016
- handoff_same_agent: 'live:handoff requer valores diferentes para --agent e --to.',
1017
- handoff_agent_mismatch: 'Nenhuma sessao live ativa encontrada para {agent}.',
1018
- watch_json_conflict: '--watch nao pode ser combinado com --json.',
1019
- no_session_found: 'Nenhuma sessao live encontrada.',
1020
- no_session_for_agent: 'Nenhuma sessao live encontrada para {agent}.',
1021
- session_already_closed: 'A sessao live {session} ja esta encerrada.',
1022
- session_already_active: 'Sessao live ja ativa: {agent} | sessao: {session} | run: {runKey} ({dbPath})',
1023
- session_started: 'Sessao live iniciada: {agent} | ferramenta: {tool} | sessao: {session} ({dbPath})',
1024
- event_recorded: 'Evento live registrado: {agent} | {eventType} | {session} ({dbPath})',
1025
- handoff_recorded: 'Handoff live registrado: {from} -> {to} | {session} ({dbPath})',
1026
- session_closed: 'Sessao live encerrada: {agent} | {session} ({dbPath})',
1027
- process_dead_warning: 'O processo morreu enquanto a sessao live ainda esta aberta. Encerre manualmente com `aioson live:close . --status=failed`.',
1028
- tmux_not_found: 'tmux nao encontrado. Instale tmux para usar --tmux, ou remova a flag para continuar sem split de terminal.',
1029
- tmux_starting: 'Iniciando sessao tmux: agente {agent} | ferramenta {tool} ...',
1030
- tmux_recreate: 'Sessao tmux anterior encerrada. Recriando sessao live para {agent} ({session})...',
1031
- tmux_reattach: 'Sessao tmux ainda ativa. Reanexando a {agent} ({session})...',
1032
- list_title: 'Sessoes live ({count}):',
1033
- list_empty: 'Nenhuma sessao live encontrada.',
1034
- list_line: '- {session} | {agent} | {tool} | {phase} | {updatedAt}'
1035
- },
1036
- squad_status: {
1037
- no_squad: 'Nenhum squad encontrado.',
1038
- hint: 'Use @squad na sua sessao de IA para montar um squad.',
1039
- squads_found: '{count} squad(s) encontrados:',
1040
- most_recent: '(mais recente)',
1041
- squad_item: ' [{file}]{marker}',
1042
- name: ' Squad : {value}',
1043
- mode: ' Modo : {value}',
1044
- goal: ' Objetivo : {value}',
1045
- agents: ' Agentes : {specialists} especialistas / {total} total ({path})',
1046
- sessions: ' Sessoes : {count} ({path})',
1047
- latest_html: ' Latest HTML : {value}',
1048
- logs: ' Logs : {count} ({path})',
1049
- genomes: ' Genomes : {count} no squad / {agent_count} vinculos por agente',
1050
- model_tiers: ' Model Tiers : {value}',
1051
- estimated_cost: ' Custo Est. : ~${value}/run'
1052
- },
1053
- squad_agent_create: {
1054
- no_name: 'Uso: aioson squad:agent-create [path] --name=<nome-agente> [--type=agent|assistant|clone|worker] [--scope=my-agents|squad] [--squad=<slug>]',
1055
- invalid_scope: 'Escopo inválido: "{scope}". Use "my-agents" ou "squad".',
1056
- invalid_type: 'Tipo inválido: "{type}". Use: agent, assistant, clone, worker.',
1057
- invalid_tier: 'Tier inválido: "{tier}". Use: 0 (foundation), 1 (master), 2 (systematizer), 3 (specialist).',
1058
- invalid_disc: 'Perfil DISC inválido: "{disc}".',
1059
- no_squads: 'Nenhuma squad encontrada. Crie uma squad com @squad ou forneça --squad=<slug>.',
1060
- squad_required: '--squad=<slug> obrigatório quando scope é "squad".',
1061
- squad_not_found: 'Squad "{squad}" não encontrada.',
1062
- already_exists: 'Agente já existe: {path}'
1063
- },
1064
- squad_doctor: {
1065
- prefix_ok: 'OK',
1066
- prefix_warn: 'AVISO',
1067
- prefix_fail: 'FALHA',
1068
- report_title: 'Relatorio da squad {squad}: {path}',
1069
- check_line: '[{prefix}] {message}',
1070
- check_metadata: 'Metadata da squad presente: {path}',
1071
- check_manifest: 'Manifesto da squad presente: {path}',
1072
- check_rules: 'Rules/agents.md presente: {path}',
1073
- check_design_doc: 'Design doc da squad: {path}',
1074
- check_readiness: 'Readiness da squad: {path}',
1075
- check_executors: 'Executores declarados: {count} | arquivos ausentes: {missing}',
1076
- check_output_dir: 'Diretorio de output da squad: {path}',
1077
- check_media_dir: 'Diretorio de media da squad: {path}',
1078
- check_runtime_missing: 'Runtime store ausente. Execute aioson runtime:init.',
1079
- check_active_runs: 'Runs ativas: {count} | possivelmente travadas (> {minutes} min): {stale}',
1080
- check_content_indexing: 'Conteudos indexados: {indexed} | arquivos pendentes de indexacao: {pending}',
1081
- summary: 'Resumo -> checks OK: {passed} | avisos: {warned} | falhas: {failed}'
1082
- },
1083
- scan_project: {
1084
- scanning: 'aioson scan:project escaneando {dir}',
1085
- folder_required:
1086
- 'Informe --folder=<pasta[,pasta2]> para gerar o mapa completo das pastas desejadas. Exemplo: --folder=src ou --folder=app.',
1087
- folder_required_examples_title: '\x1b[33mGuia rapido:\x1b[0m',
1088
- folder_required_example_local:
1089
- ' Mapas locais : aioson scan:project . --folder=src',
1090
- folder_required_example_multi:
1091
- ' Varias pastas : aioson scan:project . --folder=src,app',
1092
- folder_required_example_llm:
1093
- ' API automatica : aioson scan:project . --folder=src --with-llm --provider=openai',
1094
- folder_required_example_cli:
1095
- ' Sem API LLM : aioson scan:project . --folder=src -> depois execute @analyst no seu Codex/Claude/Gemini',
1096
- folder_required_example_prompt:
1097
- ' Prompt pronto : aioson agent:prompt analyst --tool=codex',
1098
- folder_required_example_next:
1099
- ' Workflow apos scan completo: @analyst -> @architect -> @dev',
1100
- folder_not_found: 'A pasta "{folder}" nao foi encontrada neste projeto. Pastas de nivel superior detectadas: {available}',
1101
- config_missing: '{file} nao encontrado. Para usar o modo com LLM, copie aioson-models.json e preencha suas chaves de API.',
1102
- config_invalid: 'JSON invalido em aioson-models.json: {error}',
1103
- provider_missing: 'Provider de LLM "{provider}" nao encontrado em aioson-models.json. Disponiveis: {available}',
1104
- provider_info: ' Provider : {provider}',
1105
- model_info: ' Modelo : {model}',
1106
- context_found: ' Contexto : project.context.md encontrado',
1107
- context_missing: ' Contexto : project.context.md nao encontrado (execute aioson setup:context primeiro)',
1108
- spec_found: ' Spec : spec.md encontrado memoria de desenvolvimento incluida',
1109
- existing_discovery_found: ' Contexto : discovery.md existente encontrado em {path}',
1110
- existing_skeleton_found: ' Contexto : skeleton-system.md existente encontrado em {path}',
1111
- context_update_mode: ' Modo : update/merge do contexto existente ativado para discovery.md + skeleton-system.md',
1112
- context_mode: ' Contexto : context-mode={mode} (padrao recomendado para brownfield: merge)',
1113
- local_only: ' LLM : desativada por padrao scan local apenas (use --with-llm para gerar discovery.md + skeleton-system.md)',
1114
- walking: ' Escaneando estrutura do projeto...',
1115
- walk_done: ' Arquivos : {files} entradas mapeadas | Arquivos chave: {keys} lidos',
1116
- index_written: ' Indice : scan local escrito em {path} (modo: {mode})',
1117
- folders_written: ' Pastas : mapa de pastas escrito em {path}',
1118
- folder_written: ' Pasta : mapa completo de {folder} escrito em {path}',
1119
- forge_written: ' AIOS : mapa util do .aioson escrito em {path}',
1120
- memory_index_written: ' Memoria : memory-index.md escrito em {path}',
1121
- spec_current_written: ' Memoria : spec-current.md escrito em {path}',
1122
- spec_history_written: ' Memoria : spec-history.md escrito em {path}',
1123
- module_memory_written: ' Modulo : memoria focada de {folder} escrita em {path}',
1124
- dry_run_done: '[dry-run] Escanearia {treeCount} entradas e {keyCount} arquivos chave — nenhuma chamada LLM feita.',
1125
- local_done: ' Resultado: scan local concluido index, mapa de pastas, scans solicitados e .aioson estao prontos.',
1126
- local_missing: ' Falta : discovery.md + skeleton-system.md ainda nao foram gerados neste scan local.',
1127
- architecture_note: ' Nota : architecture.md nao e gerado pelo scan:project; esse arquivo vem depois com @architect.',
1128
- local_paths_title: '\n\x1b[33m Como gerar o discovery agora:\x1b[0m',
1129
- local_path_api: ' \x1b[32mCaminho A API automatica\x1b[0m',
1130
- calling_llm: ' Chamando {provider} ({model})...',
1131
- llm_missing_api_key:
1132
- 'A chave de API do provider "{provider}" ainda nao foi configurada em {file}. Preencha providers.{provider}.api_key ou escolha outro provider com --provider=...',
1133
- llm_error: 'Chamada LLM falhou: {error}',
1134
- gitignore_policy_written:
1135
- ' Gitignore: politica do AIOSON atualizada em {path} para ignorar arquivos gerenciados do framework',
1136
- gitignore_tracked_note:
1137
- ' Gitignore: se esses arquivos ja estavam rastreados pelo Git antes, ainda sera preciso remover do indice uma vez com git rm --cached para eles pararem de aparecer no status',
1138
- invalid_llm_output_discovery_empty:
1139
- 'A LLM retornou discovery.md vazio. Nenhum arquivo existente foi sobrescrito. Mantenha o backup atual e tente um modelo mais forte ou menos pastas por execucao.',
1140
- invalid_llm_output_skeleton_empty:
1141
- 'A LLM retornou skeleton-system.md vazio apos o delimitador. Nenhum arquivo existente foi sobrescrito. Tente novamente com um modelo mais forte ou um escopo menor.',
1142
- gitignore_backups_written: ' Gitignore: backup local garantido em {path}',
1143
- backups_written: ' Backup : {count} arquivo(s) salvo(s) em {path}',
1144
- discovery_written: 'discovery.md escrito: {path} ({chars} chars)',
1145
- skeleton_written: 'skeleton-system.md escrito: {path} ({chars} chars)',
1146
- skeleton_missing: 'Delimitador skeleton nao encontrado na resposta LLM — skeleton-system.md nao escrito.',
1147
- local_next_steps: ' 1. Rode: aioson scan:project {target} --folder={folders} --with-llm --provider=<provider>',
1148
- local_path_cli: ' \x1b[36mCaminho B Seu AI CLI (sem API no aioson)\x1b[0m',
1149
- local_cli_step_analyst: ' 2. No Codex, Claude Code ou outro cliente, execute @analyst — ele pode usar scan-index.md + scan-folders.md + scan-<pasta>.md para escrever discovery.md',
1150
- local_cli_step_prompt_codex: ' 3. Se o cliente nao entender @analyst, gere um prompt pronto: aioson agent:prompt analyst --tool=codex',
1151
- local_cli_step_prompt_claude: ' 4. Troque --tool=codex por --tool=claude ou --tool=gemini quando necessario',
1152
- local_cli_step_model_hint: ' 5. Se seu cliente permitir escolher modelo, prefira um modelo rapido/barato para esta etapa de discovery',
1153
- local_workflow_title: '\n\x1b[33m Depois do discovery:\x1b[0m',
1154
- local_step_architect: ' 3. Execute @architect — gera architecture.md a partir do discovery consolidado',
1155
- local_step_dev: ' 4. Execute @dev — use codigo somente depois de discovery.md + architecture.md estarem prontos',
1156
- next_steps: '\n Proximos passos:',
1157
- step_analyst: ' 1. Abra sua sessao de IA e execute @analyst — revisa discovery.md + skeleton-system.md e consolida o escopo atual',
1158
- step_architect: ' 2. Execute @architect — gera architecture.md a partir do discovery consolidado',
1159
- step_dev: ' 3. Execute @dev le skeleton-system.md primeiro, depois discovery.md + architecture.md + spec.md'
1160
- },
1161
- squad_investigate: {
1162
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1163
- no_investigations: 'Nenhuma investigacao encontrada.',
1164
- not_found: 'Investigacao nao encontrada: {slug}',
1165
- no_report: 'Investigacao "{slug}" nao possui arquivo de relatorio.',
1166
- report_missing: 'Arquivo de relatorio nao encontrado: {path}',
1167
- show_usage: 'Uso: aioson squad:investigate [path] --sub=show --investigation=<slug>',
1168
- score_usage: 'Uso: aioson squad:investigate [path] --sub=score --investigation=<slug>',
1169
- link_usage: 'Uso: aioson squad:investigate [path] --sub=link --investigation=<slug> --squad=<slug>',
1170
- register_usage: 'Uso: aioson squad:investigate [path] --sub=register --report=<caminho> [--domain=<nome>] [--squad=<slug>]',
1171
- linked: 'Investigacao "{investigation}" vinculada ao squad "{squad}".',
1172
- registered: 'Investigacao registrada: {slug} ({path})',
1173
- unknown_sub: 'Subcomando desconhecido: {sub}. Use: list, show, score, link, register.'
1174
- },
1175
- squad_daemon: {
1176
- squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1177
- started: 'Daemon iniciado para squad "{squad}" na porta {port} ({workers} workers, {cron} cron jobs)',
1178
- webhook_hint: 'Endpoint webhook: POST http://127.0.0.1:{port}/webhook/<worker-slug>',
1179
- stop_hint: 'Pressione Ctrl+C para parar.',
1180
- stopping: 'Parando daemon...',
1181
- start_failed: 'Falha ao iniciar daemon: {error}',
1182
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1183
- no_daemons: 'Nenhum registro de daemon encontrado.',
1184
- not_found: 'Nenhum registro de daemon para o squad: {squad}',
1185
- not_running: 'O daemon do squad "{squad}" nao esta rodando.',
1186
- signal_sent: 'SIGTERM enviado ao daemon de "{squad}" (pid {pid}).',
1187
- process_gone: 'O processo do daemon de "{squad}" nao esta mais rodando.',
1188
- no_logs: 'Nenhum log de atividade do daemon encontrado.',
1189
- unknown_sub: 'Subcomando desconhecido: {sub}. Use: start, status, stop, logs.'
1190
- },
1191
-
1192
- squad_mcp: {
1193
- squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1194
- connectors_title: 'Conectores MCP Integrados:',
1195
- actions: 'Acoes',
1196
- required_config: 'Obrigatorio',
1197
- no_integrations: 'Nenhuma integracao configurada para o squad "{squad}".',
1198
- missing_config: 'Config ausente',
1199
- calls: 'Chamadas',
1200
- mcp_required: 'Slug do MCP e obrigatorio. Use --mcp=<slug>.',
1201
- connector_required: 'ID do conector e obrigatorio. Use --connector=<id>.',
1202
- unknown_connector: 'Conector desconhecido: {connector}. Use --sub=connectors para listar.',
1203
- configured: 'Integracao "{mcp}" configurada com conector "{connector}" (status: {status}).',
1204
- still_missing: 'Ainda faltam env/config: {keys}',
1205
- not_configured: 'Integracao "{mcp}" nao esta configurada.',
1206
- test_missing: 'Integracao "{mcp}" tem config ausente: {keys}',
1207
- test_ok: 'Integracao "{mcp}" ({connector}) — config OK.',
1208
- health_url: 'URL de health check: {url}',
1209
- testing_connection: 'Testando conexao...',
1210
- health_ok: 'Conexao OK (HTTP {statusCode})',
1211
- health_error: 'Erro na conexao: {error}',
1212
- health_skipped: 'Verificacao de saude nao disponivel para este connector',
1213
- action_required: 'Slug da acao e obrigatorio. Use --action=<slug>.',
1214
- invalid_input: 'JSON invalido. Forneca JSON valido com --input.',
1215
- unknown_sub: 'Subcomando desconhecido: {sub}. Use: status, connectors, configure, test, call.'
1216
- },
1217
-
1218
- squad_roi: {
1219
- squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1220
- config_saved: 'Config de ROI salva para o squad "{squad}".',
1221
- pricing_model: 'Modelo de precificacao',
1222
- setup_fee: 'Taxa de implantacao',
1223
- monthly_fee: 'Mensalidade',
1224
- percentage: 'Percentual',
1225
- contract: 'Contrato',
1226
- metric_required: 'Chave e valor da metrica sao obrigatorios. Use --key=<nome> --value=<N>.',
1227
- metric_saved: 'Metrica "{key}" = {value} salva para o squad "{squad}".',
1228
- no_metrics: 'Nenhuma metrica encontrada para o squad "{squad}".',
1229
- report_title: 'Relatorio de ROI — {squad}',
1230
- baseline: 'Baseline',
1231
- actual: 'Atual',
1232
- target: 'Meta',
1233
- period: 'Periodo',
1234
- cost_section: 'Resumo de Custos:',
1235
- monthly_cost: 'Custo mensal efetivo',
1236
- exported: 'Relatorio exportado para {file} ({format}).',
1237
- unknown_sub: 'Subcomando desconhecido: {sub}. Use: config, metric, report, export.'
1238
- },
1239
-
1240
- squad_worker: {
1241
- squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1242
- no_workers: 'Nenhum worker encontrado para este squad.',
1243
- run_usage: 'Uso: aioson squad:worker --sub=run --squad=<slug> --worker=<slug> [--input=<json>]',
1244
- test_usage: 'Uso: aioson squad:worker --sub=test --squad=<slug> --worker=<slug>',
1245
- scaffold_usage: 'Uso: aioson squad:worker --sub=scaffold --squad=<slug> --worker=<slug> [--trigger=manual|event|scheduled]',
1246
- not_found: 'Worker nao encontrado: {worker}',
1247
- invalid_input: 'JSON invalido. Forneca JSON valido com --input.',
1248
- run_success: 'Worker "{worker}" concluido com sucesso.',
1249
- run_failed: 'Worker "{worker}" falhou: {error}',
1250
- test_passed: 'Worker "{worker}" teste aprovado.',
1251
- test_failed: 'Worker "{worker}" teste falhou: {error}',
1252
- scaffold_created: 'Worker "{worker}" criado em {path}',
1253
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1254
- no_logs: 'Nenhuma execucao de worker encontrada.',
1255
- unknown_sub: 'Subcomando desconhecido: {sub}. Use: list, run, test, logs, scaffold.'
1256
- },
1257
-
1258
- squad_dashboard: {
1259
- started: 'Squad Dashboard rodando em {url} (porta {port})',
1260
- filtered: 'Filtrando para squad: {squad}',
1261
- stop_hint: 'Pressione Ctrl+C para parar.',
1262
- stopping: 'Parando Squad Dashboard...',
1263
- port_in_use: 'Porta {port} ja esta em uso. Tente --port=<outra>'
1264
- },
1265
- implementation_plan: {
1266
- not_found: 'Plano de implementacao nao encontrado: {file}',
1267
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1268
- no_plans: 'Nenhum plano de implementacao registrado.',
1269
- no_created_date: 'Plano nao possui data de criacao no frontmatter — nao e possivel verificar obsolescencia.',
1270
- is_stale: 'Plano esta OBSOLETO — artefatos fonte foram alterados apos a criacao do plano.',
1271
- is_fresh: 'Plano esta atualizado.',
1272
- checkpoint_usage: 'Uso: aioson plan [path] --sub=checkpoint --feature=<slug> --phase=<N>',
1273
- phase_completed: 'Fase {phase} marcada como concluida.',
1274
- phase_not_found: 'Fase {phase} nao encontrada no plano.',
1275
- registered: 'Plano de implementacao registrado: {planId} ({phases} fases)'
1276
- },
1277
- squad_plan: {
1278
- slug_required: 'Slug do squad e obrigatorio.',
1279
- not_found: 'Plano de execucao nao encontrado para o squad: {slug}',
1280
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1281
- no_plan: 'Nenhum plano de execucao registrado para o squad: {slug}',
1282
- no_created_date: 'Plano nao possui data de criacao no frontmatter — nao e possivel verificar obsolescencia.',
1283
- is_stale: 'Plano de execucao esta OBSOLETO — artefatos do squad foram alterados apos a criacao do plano.',
1284
- is_fresh: 'Plano de execucao esta atualizado.',
1285
- checkpoint_usage: 'Uso: aioson squad:plan [path] --sub=checkpoint --squad=<slug> --round=<N>',
1286
- round_completed: 'Round {round} marcado como concluido.',
1287
- round_not_found: 'Round {round} nao encontrado no plano.',
1288
- registered: 'Plano de execucao registrado: {planSlug} ({rounds} rounds)'
1289
- },
1290
-
1291
- squad_learning: {
1292
- slug_required: 'Slug do squad e obrigatorio.',
1293
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1294
- no_learnings: 'Nenhum learning encontrado para o squad: {slug}',
1295
- not_found: 'Learning nao encontrado: {id}',
1296
- archived_count: '{count} learning(s) marcado(s) como obsoleto(s) para o squad: {slug}',
1297
- promote_usage: 'Uso: aioson squad:learning [path] --sub=promote --squad=<slug> --id=<learning-id> [--to=<caminho-regra>]',
1298
- promoted: 'Learning {id} promovido a regra em {path}'
1299
- },
1300
-
1301
- learning: {
1302
- no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1303
- no_learnings: 'Nenhum learning de projeto encontrado.',
1304
- not_found: 'Learning nao encontrado: {id}',
1305
- promote_usage: 'Uso: aioson learning [path] --sub=promote --id=<learning-id> [--to=<caminho-regra>]',
1306
- promoted: 'Learning {id} promovido a regra em {path}'
1307
- },
1308
-
1309
- auth: {
1310
- login_no_token: 'Nenhum token informado. Obtenha o seu em: {url}',
1311
- login_hint: 'Execute: aioson auth:login',
1312
- login_hint_token: 'Ou obtenha um token manualmente em: {url}',
1313
- login_verifying: 'Verificando token...',
1314
- login_ok: '✓ Autenticado como {username}. Token salvo em {path}.',
1315
- login_saved: '✓ Token salvo em {path}. (Nao foi possivel verificar — API pode estar offline.)',
1316
- logout_ok: 'Logout realizado. Token removido.',
1317
- status_not_authenticated: 'Nao autenticado.',
1318
- status_checking: 'Verificando token...',
1319
- status_ok: 'Autenticado como {username}.',
1320
- status_token_offline: 'Token salvo (ultimo usuario conhecido: {username}). API offline ou inacessivel.',
1321
- // Fluxo browser (callback — Mac/Windows nativos)
1322
- browser_opening: 'Abrindo o browser...',
1323
- browser_waiting: 'Aguardando autenticacao no browser... (Ctrl+C para cancelar)',
1324
- browser_timeout: 'Tempo esgotado. Tente novamente.',
1325
- browser_state_mismatch: 'Falha de seguranca: state invalido.',
1326
- browser_no_token: 'Nenhum token recebido do browser.',
1327
- browser_failed: 'Login via browser falhou: {error}',
1328
- browser_server_error: 'Erro ao iniciar servidor local de callback',
1329
- // Fluxo paste (WSL2, SSH, headless)
1330
- paste_open_browser: 'Abra o link abaixo no seu navegador:',
1331
- paste_instruction: 'Apos fazer login, a pagina exibira um token. Copie-o e cole aqui.',
1332
- paste_token_prompt: 'Cole o token aqui:',
1333
- paste_no_token: 'Nenhum token informado.',
1334
- },
1335
-
1336
- workspace: {
1337
- registering: 'Registrando workspace no aioson.com...',
1338
- init_ok: 'Workspace "{slug}" vinculado.\n Local: {path}\n Online: {url}',
1339
- already_linked: 'Workspace ja vinculado: {slug}\n Online: {url}',
1340
- not_linked: 'Nenhum workspace vinculado a este projeto.',
1341
- init_hint: 'Execute: aioson workspace:init',
1342
- status_slug: 'Workspace: {slug}',
1343
- status_id: 'ID: {id}',
1344
- status_url: 'URL: {url}',
1345
- status_created: 'Criado em: {date}',
1346
- open_url: 'Abra no navegador: {url}'
1347
- },
1348
-
1349
- store: {
1350
- error_not_authenticated: 'Nao autenticado. Execute: aioson auth:login',
1351
- error_missing_slug: 'Informe --slug.',
1352
- error_missing_code_or_slug: 'Informe um slug (--slug=X) ou um codigo de instalacao.',
1353
- error_invalid_response: 'Resposta invalida do aioson.com.',
1354
- error_genome_not_found: 'Genome "{slug}" nao encontrado em {path}.',
1355
- error_skill_not_found: 'Skill "{slug}" nao encontrada em .aioson/skills/ ou .aioson/installed-skills/.',
1356
- error_skill_missing_skillmd: 'Skill "{slug}" nao tem SKILL.md.',
1357
- error_squad_not_found: 'Squad "{slug}" nao encontrado em {path}.',
1358
-
1359
- publish_dry_run: '[dry-run] Publicaria {type} "{slug}" (visibilidade: {visibility}).',
1360
- publish_genome_validating: 'Validando genome...',
1361
- publish_genome_sending: 'Enviando para aioson.com...',
1362
- publish_genome_done: 'Publicado: aioson.com/store/genomes/{slug}\n Instalar: aioson genome:install --slug={slug}',
1363
- publish_skill_collecting: 'Coletando arquivos da skill...',
1364
- publish_skill_files: ' Arquivos: {count}',
1365
- publish_skill_sending: 'Enviando {count} arquivo(s) para aioson.com...',
1366
- publish_skill_done: 'Publicado: aioson.com/store/skills/{slug}\n Instalar: aioson skill:install --slug={slug}',
1367
- publish_squad_analyzing_agents: 'Analisando agentes...',
1368
- publish_squad_agents_found: ' Agentes: {count}',
1369
- publish_squad_analyzing_deps: 'Analisando dependencias...',
1370
- publish_squad_bundling_skill: ' Empacotando skill: {slug}',
1371
- publish_squad_skill_missing: ' Skill nao encontrada (ignorada): {slug}',
1372
- publish_squad_bundling_genome: ' Empacotando genome: {slug}',
1373
- publish_squad_genome_missing: ' Genome nao encontrado (ignorado): {slug}',
1374
- publish_squad_sending: 'Enviando para aioson.com...',
1375
- publish_squad_done: 'Publicado: aioson.com/store/squads/{slug}\n Instalar: aioson squad:install --slug={slug}',
1376
- publish_squad_summary: ' Agentes: {agents} | Skills empacotadas: {skills} | Genomes empacotados: {genomes}',
1377
-
1378
- install_skill_fetching: 'Buscando skill "{ref}" no aioson.com...',
1379
- install_skill_done: 'Skill "{slug}" instalada em {path}.',
1380
- install_genome_fetching:'Buscando genome "{ref}" no aioson.com...',
1381
- install_genome_done: 'Genome "{slug}" instalado em {path}.',
1382
- install_backing_up: ' Backup salvo: {path}',
1383
- install_squad_fetching: 'Buscando squad "{ref}" no aioson.com...',
1384
- install_squad_writing: 'Instalando arquivos...',
1385
- install_squad_dep_skip: ' {type} "{slug}" ja instalado ignorando (use --force para substituir).',
1386
- install_squad_done: 'Squad "{slug}" instalado em {path}.',
1387
-
1388
- list_genome_empty: 'Nenhum genome instalado neste projeto.',
1389
- list_genome_header: '{count} genome(s) instalado(s):',
1390
- list_genome_item: ' {slug}{version}',
1391
- remove_genome_done: 'Genome "{slug}" removido.',
1392
- list_remote_fetching: 'Buscando {type} no aioson.com...',
1393
- list_remote_empty: 'Nenhum(a) {type} publicado(a) ainda.',
1394
- list_remote_header: '{count} {type} publicado(s):',
1395
- list_remote_item: ' {slug} [{visibility}] {name}',
1396
- list_squad_empty: 'Nenhum squad neste projeto.',
1397
- list_squad_header: '{count} squad(s):',
1398
- list_squad_item: ' {slug} [{visibility}]',
1399
-
1400
- grant_error_missing_code: 'Codigo ausente. Uso: aioson squad:grant <codigo> <email>',
1401
- grant_error_missing_email: 'Email ausente. Uso: aioson squad:grant <codigo> <email>',
1402
- grant_sending: 'Concedendo acesso a {email} para o codigo {code}...',
1403
- grant_ok: '{email} agora pode instalar usando o codigo {code}.',
1404
-
1405
- publish_scanning: 'Executando varredura de seguranca...',
1406
- publish_scan_ok: 'Varredura de seguranca aprovada. Hash do pacote: {hash}...',
1407
- error_scan_failed: 'Publicacao bloqueada: a varredura de seguranca encontrou erros. Corrija-os ou entre em contato com o suporte.',
1408
- error_scan_warnings: 'Publicacao bloqueada: {count} padrao(oes) suspeito(s) detectado(s). Revise os avisos acima. Use --force se tiver certeza de que o pacote e seguro.',
1409
-
1410
- install_scanning: 'Verificando integridade do pacote...',
1411
- error_install_scan_failed: 'Instalacao bloqueada: o pacote "{slug}" falhou na varredura de seguranca. Pode ter sido adulterado.',
1412
- error_hash_mismatch: 'Instalacao bloqueada: hash divergente para "{slug}". O pacote pode ter sido alterado em transito.',
1413
-
1414
- install_preview_header: 'Pacote: {slug} v{version} por {publisher}',
1415
- install_preview_trusted: ' Status: Publisher verificado',
1416
- install_preview_unverified: ' Status: Publisher nao verificado \u2014 revise os arquivos antes de usar',
1417
- install_preview_downloads: ' Downloads: {count}',
1418
- install_preview_rating: ' Avaliacao: {rating}',
1419
- install_preview_hash: ' Hash: {hash}...',
1420
- install_inspect_files: 'Arquivos neste pacote ({count} no total):',
1421
- install_inspect_hint: 'Execute sem --inspect para instalar.',
1422
- install_unverified_hint: ' Dica: Use --inspect para revisar os arquivos antes de instalar, ou --force para ignorar este aviso.'
1423
- },
1424
-
1425
- system: {
1426
- error_no_manifest: 'system.json nao encontrado em {path}. Crie um system.json no diretorio raiz do sistema.',
1427
- error_invalid_manifest: 'system.json invalido — verifique se e um JSON valido.',
1428
- error_manifest_missing_slug: 'system.json deve conter o campo "slug".',
1429
- error_manifest_missing_version: 'system.json deve conter o campo "version".',
1430
- error_manifest_missing_name: 'system.json deve conter o campo "name".',
1431
- error_missing_package_json: 'package.json nao encontrado. Um sistema deve ser um projeto Node.js valido.',
1432
-
1433
- package_reading_manifest: 'Lendo system.json...',
1434
- package_manifest_ok: 'Sistema: {name} ({slug} v{version})',
1435
- package_collecting_files: 'Coletando arquivos fonte...',
1436
- package_files_found: ' {count} arquivos ({kb} KB)',
1437
- package_dry_run: '[dry-run] Pacotaria {slug} v{version} — nenhum arquivo gravado.',
1438
- package_saved: 'Pacote salvo em: {path}',
1439
-
1440
- publish_reading_manifest: 'Lendo system.json...',
1441
- publish_dry_run: '[dry-run] Publicaria sistema "{slug}" v{version} (visibilidade: {visibility}).',
1442
- publish_sending: 'Enviando para aioson.com...',
1443
- publish_done: 'Publicado: aioson.com/store/systems/{slug}\n Instalar no aioson-play usando o slug: {slug}',
1444
- publish_summary: ' Arquivos: {files} ({kb} KB)',
1445
-
1446
- list_remote_empty: 'Nenhum sistema publicado ainda.',
1447
- list_remote_header: '{count} sistema(s) publicado(s):',
1448
- list_remote_item: ' {slug} v{version} [{visibility}] {name}',
1449
- list_local_empty: 'Nenhum sistema em cache neste projeto.',
1450
- list_local_header: '{count} sistema(s) em cache:',
1451
- list_local_item: ' {slug}',
1452
-
1453
- install_fetching: 'Buscando sistema "{ref}" no aioson.com...',
1454
- install_writing: 'Gravando arquivos...',
1455
- install_done: 'Sistema "{slug}" instalado em {path}.'
1456
- }
1457
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ cli: {
5
+ title: 'CLI do AIOSON',
6
+ title_line: '{title}\n',
7
+ usage: 'Uso:',
8
+ help_item_line: ' {text}',
9
+ help_init:
10
+ 'aioson init <project-name> [--force] [--dry-run] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
11
+ help_install:
12
+ 'aioson install [path] [--force] [--dry-run] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
13
+ help_setup:
14
+ 'aioson setup [path] [--defaults] [--framework=<nome>] [--lang=<bcp47-tag>] [--project-name=<nome>] [--force] [--dry-run] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
15
+ help_update:
16
+ 'aioson update [path] [--dry-run] [--lang=<bcp47-tag>] [--locale=pt-BR]',
17
+ help_info: 'aioson info [path] [--json] [--locale=pt-BR]',
18
+ help_doctor: 'aioson doctor [path] [--fix] [--dry-run] [--json] [--locale=pt-BR]',
19
+ help_i18n_add: 'aioson i18n:add <locale> [--force] [--dry-run] [--locale=pt-BR]',
20
+ help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=pt-BR]',
21
+ help_agent_prompt:
22
+ 'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=pt-BR]',
23
+ help_agent_invoke:
24
+ 'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=pt-BR]',
25
+ help_context_validate: 'aioson context:validate [path] [--json] [--locale=pt-BR]',
26
+ help_context_pack:
27
+ 'aioson context:pack [path] [--agent=<agente>] [--goal=<texto>] [--module=<modulo-ou-pasta>] [--max-files=8] [--json] [--locale=pt-BR]',
28
+ help_context_load:
29
+ 'aioson context:load [path] --target=<rule|brain>:<slug> --agent=<nome> [--batch="slug1,slug2"] [--feature=<slug>] [--classification=<MICRO|SMALL|MEDIUM>] [--verbose] [--json] [--locale=pt-BR]',
30
+ context_load: {
31
+ target_required: 'context:load exige --target=<rule|brain>:<slug>.',
32
+ agent_required: 'context:load exige --agent=<nome>.',
33
+ target_invalid: 'context:load valor inválido para --target: {target}. Esperado rule:<slug> ou brain:<slug>.',
34
+ success: 'context:load emitiu {count} evento(s) para o agente {agent}.'
35
+ },
36
+ help_memory_status: 'aioson memory:status [path] [--json] [--locale=pt-BR]',
37
+ help_memory_summary: 'aioson memory:summary [path] [--last=5] [--json] [--locale=pt-BR]',
38
+ help_memory_search:
39
+ 'aioson memory:search "<consulta>" [path] [--limit=5] [--surface=rules|learnings|all] [--include-archived] [--json] [--locale=pt-BR]',
40
+ help_memory_archive:
41
+ 'aioson memory:archive [path] --id=<rule|learning|brain>:<slug> --reason="<texto>" [--feature=<slug>] [--dry-run] [--json] [--locale=pt-BR]',
42
+ help_memory_restore:
43
+ 'aioson memory:restore [path] --id=<rule|learning|brain>:<slug> [--reason="<texto>"] [--feature=<slug>] [--dry-run] [--json] [--locale=pt-BR]',
44
+ memory_archive: {
45
+ id_required: 'memory:archive exige --id=<rule|learning|brain>:<slug>.',
46
+ reason_required: 'memory:archive exige --reason="<texto>".',
47
+ invalid_id: 'memory:archive valor inválido para --id: "{value}". Esperado rule|learning|brain:<slug>.',
48
+ hook_blocked: 'memory:archive não pode ser invocado por hook (BR-ALL-01: tier-2 exige ação humana).',
49
+ target_not_found: 'memory:archive: {kind} "{slug}" não encontrado em estado ativo.',
50
+ already_archived: 'memory:archive: "{path}" está arquivado. No-op.',
51
+ notify_template: 'arquivando {kind} "{slug}": {reason}',
52
+ dry_run_summary: 'memory:archive [dry-run]: moveria {source} {dest} (entry ativa: {has_active}).',
53
+ archived_success: 'memory:archive ✓ {kind} "{slug}" arquivado em {dest}.'
54
+ },
55
+ memory_restore: {
56
+ id_required: 'memory:restore exige --id=<rule|learning|brain>:<slug>.',
57
+ invalid_id: 'memory:restore valor inválido para --id: "{value}". Esperado rule|learning|brain:<slug>.',
58
+ hook_blocked: 'memory:restore não pode ser invocado por hook (BR-ALL-01: tier-2 exige ação humana).',
59
+ target_not_archived: 'memory:restore: {kind} "{slug}" não encontrado no arquivo.',
60
+ target_already_active: 'memory:restore: {kind} "{slug}" está ativo. No-op.',
61
+ target_not_found: 'memory:restore: {kind} "{slug}" não encontrado.',
62
+ notify_template: 'restaurando {kind} "{slug}": {reason}',
63
+ dry_run_summary: 'memory:restore [dry-run]: moveria {source} → {dest}.',
64
+ restored_success: 'memory:restore {kind} "{slug}" restaurado para {dest}.'
65
+ },
66
+ memory_search: {
67
+ query_empty: 'memory:search requer uma consulta não-vazia.',
68
+ query_too_long: 'memory:search consulta excede {max} caracteres.',
69
+ query_unparseable: 'memory:search consulta "{value}" fica vazia após sanitização (somente operadores / aspas).',
70
+ invalid_surface: 'memory:search valor inválido para --surface: {value}. Esperado rules, learnings ou all.',
71
+ no_results: 'Nenhum resultado para "{query}".',
72
+ results_header: 'Top {count} resultados para "{query}":',
73
+ snippet_truncated: 'Trecho truncado.'
74
+ },
75
+ help_brain_query:
76
+ 'aioson brain:query [path] [--tags=<csv>] [--agent=<agente>] [--min-quality=4] [--format=compact|json|ids] [--json] [--locale=pt-BR]',
77
+ help_setup_context:
78
+ 'aioson setup:context [path] [--defaults] [--project-type=web_app|api|site|script|dapp|desktop_app] [--framework=<name>] [--backend=<name>] [--frontend=<name>] [--database=<name>] [--auth=<name>] [--uiux=<name>] [--language=<bcp47-tag>] [--web3-enabled=true|false] [--locale=pt-BR]',
79
+ help_locale_apply:
80
+ 'aioson locale:apply [path] [--lang=<bcp47-tag>] [--dry-run] [--locale=pt-BR]',
81
+ help_locale_diff: 'aioson locale:diff [agent] [--lang=<bcp47-tag>] [--json] [--locale=en]',
82
+ help_test_agents: 'aioson test:agents [--json] [--locale=en]',
83
+ help_test_smoke:
84
+ 'aioson test:smoke [workspace-path] [--lang=<bcp47-tag>] [--web3=ethereum|solana|cardano] [--profile=standard|mixed|parallel] [--keep] [--json] [--locale=pt-BR]',
85
+ help_test_package:
86
+ 'aioson test:package [source-path] [--keep] [--dry-run] [--json] [--locale=pt-BR]',
87
+ help_dossier_init:
88
+ 'aioson dossier:init [path] --slug=<slug-da-feature> [--classification=MICRO|SMALL|MEDIUM] [--json] [--locale=pt-BR]',
89
+ help_dossier_show:
90
+ 'aioson dossier:show [path] --slug=<slug-da-feature> [--json] [--locale=pt-BR]',
91
+ dossier_created: 'Dossier criado em {path} (classification={classification}).',
92
+ dossier_already_exists: 'Dossier existe em {path}. Abortando (init atômico, sem --force).',
93
+ dossier_not_found: 'Dossier não encontrado para o slug "{slug}" (esperado em {path}).',
94
+ help_workflow_plan:
95
+ 'aioson workflow:plan [path] [--classification=MICRO|SMALL|MEDIUM] [--json] [--locale=pt-BR]',
96
+ help_workflow_next:
97
+ 'aioson workflow:next [path] [--complete[=<agente>]] [--agent=<agente>] [--skip=<agente>] [--status] [--suggest] [--tool=codex|claude|gemini|opencode] [--json] [--locale=pt-BR]',
98
+ help_workflow_status:
99
+ 'aioson workflow:status [path] [--suggest] [--tool=codex|claude|gemini|opencode] [--json] [--locale=pt-BR]',
100
+ help_workflow_execute:
101
+ 'aioson workflow:execute [path] [--steps=<n>] [--dry-run] [--lane=<n>] [--json] [--locale=pt-BR]',
102
+ help_parallel_init:
103
+ 'aioson parallel:init [path] [--workers=2..6] [--force] [--dry-run] [--json] [--locale=pt-BR]',
104
+ help_parallel_doctor:
105
+ 'aioson parallel:doctor [path] [--workers=2..6] [--fix] [--force] [--dry-run] [--json] [--locale=pt-BR]',
106
+ help_parallel_assign:
107
+ 'aioson parallel:assign [path] [--source=auto|prd|architecture|discovery|<file>] [--workers=2..6] [--force] [--dry-run] [--json] [--locale=pt-BR]',
108
+ help_parallel_status:
109
+ 'aioson parallel:status [path] [--json] [--locale=pt-BR]',
110
+ help_parallel_merge:
111
+ 'aioson parallel:merge [path] [--apply] [--json] [--locale=pt-BR]',
112
+ help_parallel_guard:
113
+ 'aioson parallel:guard [path] --lane=<n> --paths=<path[,path2]> [--json] [--locale=pt-BR]',
114
+ help_mcp_init:
115
+ 'aioson mcp:init [path] [--tool=claude|codex|gemini|opencode] [--dry-run] [--json] [--locale=pt-BR]',
116
+ help_mcp_doctor:
117
+ 'aioson mcp:doctor [path] [--strict-env] [--json] [--locale=pt-BR]',
118
+ help_qa_doctor:
119
+ 'aioson qa:doctor [path] [--json] [--locale=pt-BR]',
120
+ help_qa_init:
121
+ 'aioson qa:init [path] [--url=<app-url>] [--dry-run] [--json] [--locale=pt-BR]',
122
+ help_qa_run:
123
+ 'aioson qa:run [path] [--url=<app-url>] [--persona=naive|hacker|power|mobile] [--headed] [--html] [--json] [--locale=pt-BR]',
124
+ help_qa_scan:
125
+ 'aioson qa:scan [path] [--url=<app-url>] [--depth=3] [--max-pages=50] [--headed] [--html] [--json] [--locale=pt-BR]',
126
+ help_qa_report:
127
+ 'aioson qa:report [path] [--html] [--json] [--locale=pt-BR]',
128
+ help_harness_init:
129
+ 'aioson harness:init [path] --slug=<slug> [--mode=BALANCED|URGENT|ECONOMICAL] [--locale=pt-BR]',
130
+ help_harness_validate:
131
+ 'aioson harness:validate [path] --slug=<slug> [--artifact=<path>] [--locale=pt-BR]',
132
+ help_web_map:
133
+ 'aioson web:map [path] --url=<url> [--depth=<N>] [--max-pages=<N>] [--include-external] [--json] [--locale=pt-BR]',
134
+ help_web_scrape:
135
+ 'aioson web:scrape [path] --url=<url> [--format=markdown|text|html|links] [--json] [--locale=pt-BR]',
136
+ help_scan_project:
137
+ 'aioson scan:project [path] --folder=<pasta[,pasta2]> [--summary-mode=titles|summaries|raw] [--context-mode=merge|rewrite] [--with-llm] [--provider=<name>] [--llm-model=<name>] [--dry-run] [--json] [--locale=pt-BR]',
138
+ help_config:
139
+ 'aioson config <set KEY=value|show|get KEY> [--json] [--locale=pt-BR]',
140
+ help_genome_doctor:
141
+ 'aioson genome:doctor <arquivo> [--json] [--locale=pt-BR]',
142
+ help_genome_migrate:
143
+ 'aioson genome:migrate <arquivo-ou-diretorio> [--write] [--no-backup] [--json] [--locale=pt-BR]',
144
+ help_squad_status:
145
+ 'aioson squad:status [path] [--json] [--locale=pt-BR]',
146
+ help_squad_doctor:
147
+ 'aioson squad:doctor [path] [--squad=<slug>] [--stale-minutes=5] [--json] [--locale=pt-BR]',
148
+ help_squad_repair_genomes:
149
+ 'aioson squad:repair-genomes <manifest.json> [--write] [--no-backup] [--json] [--locale=pt-BR]',
150
+ help_squad_validate:
151
+ 'aioson squad:validate [path] --squad=<slug> [--locale=pt-BR]',
152
+ help_squad_export:
153
+ 'aioson squad:export [path] --squad=<slug> [--locale=pt-BR]',
154
+ help_squad_pipeline:
155
+ 'aioson squad:pipeline [path] [--sub=list|show|status] [--pipeline=<slug>] [--locale=pt-BR]',
156
+ help_squad_agent_create:
157
+ 'aioson squad:agent-create [path] --name=<nome> [--scope=my-agents|squad] [--squad=<slug>] [--type=agent|assistant|clone|worker] [--tier=0|1|2|3] [--disc=<perfil>] [--mission=<texto>] [--domain=<texto>] [--specialist=<nome>] [--with-infra] [--locale=pt-BR]',
158
+ help_squad_investigate:
159
+ 'aioson squad:investigate [path] [--sub=list|show|score|link|register] [--investigation=<slug>] [--squad=<slug>] [--locale=pt-BR]',
160
+ help_squad_learning:
161
+ 'aioson squad:learning [path] [--sub=list|stats|archive|promote|export] [--squad=<slug>] [--status=<status>] [--locale=pt-BR]',
162
+ help_squad_dashboard:
163
+ 'aioson squad:dashboard [path] [--port=4180] [--squad=<slug>] [--locale=pt-BR]',
164
+ help_squad_worker:
165
+ 'aioson squad:worker [path] [--sub=list|run|test|logs|scaffold] [--squad=<slug>] [--worker=<slug>] [--input=<json>] [--locale=pt-BR]',
166
+ help_squad_daemon:
167
+ 'aioson squad:daemon [path] [--sub=start|status|stop|logs] [--squad=<slug>] [--port=<N>] [--locale=pt-BR]',
168
+ help_squad_mcp:
169
+ 'aioson squad:mcp [path] [--sub=status|connectors|configure|test] [--squad=<slug>] [--mcp=<slug>] [--connector=<id>]',
170
+ help_squad_roi:
171
+ 'aioson squad:roi [path] [--sub=config|metric|report|export] [--squad=<slug>] [--key=<metrica>] [--value=<N>]',
172
+ help_squad_score:
173
+ 'aioson squad:score [path] --squad=<slug> [--locale=pt-BR]',
174
+ help_commit_prepare:
175
+ 'aioson commit:prepare [path] [--staged-only] [--agent-safe] [--mode=guarded|trusted|headless] [--json] [--locale=pt-BR]',
176
+ help_learning:
177
+ 'aioson learning [path] [--sub=list|stats|promote] [--status=<status>] [--id=<learning-id>] [--locale=pt-BR]',
178
+ help_runtime_init:
179
+ 'aioson runtime:init [path] [--json] [--locale=pt-BR]',
180
+ help_runtime_ingest:
181
+ 'aioson runtime:ingest [path] [--squad=<slug>] [--agent=<nome>] [--session=<chave>] [--task=<chave>] [--json] [--locale=pt-BR]',
182
+ help_runtime_task_start:
183
+ 'aioson runtime:task:start [path] --title=<texto> [--squad=<slug>] [--session=<chave>] [--goal=<texto>] [--by=<agente>] [--task=<chave>] [--json] [--locale=pt-BR]',
184
+ help_runtime_start:
185
+ 'aioson runtime:start [path] --agent=<nome> [--squad=<slug>] [--session=<chave>] [--title=<texto>] [--run=<chave>] [--json] [--locale=pt-BR]',
186
+ help_runtime_update:
187
+ 'aioson runtime:update [path] --run=<chave> [--message=<texto>] [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
188
+ help_runtime_task_finish:
189
+ 'aioson runtime:task:finish [path] --task=<chave> [--goal=<texto>] [--json] [--locale=pt-BR]',
190
+ help_runtime_finish:
191
+ 'aioson runtime:finish [path] --run=<chave> [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
192
+ help_runtime_task_fail:
193
+ 'aioson runtime:task:fail [path] --task=<chave> [--goal=<texto>] [--json] [--locale=pt-BR]',
194
+ help_runtime_fail:
195
+ 'aioson runtime:fail [path] --run=<chave> [--message=<texto>] [--summary=<texto>] [--output=<path>] [--json] [--locale=pt-BR]',
196
+ help_runtime_status:
197
+ 'aioson runtime:status [path] [--json] [--locale=pt-BR]',
198
+ help_runtime_log:
199
+ 'aioson runtime:log [path] --agent=<nome> --message=<texto> [--type=<evento>] [--finish] [--status=completed|failed] [--summary=<texto>] [--title=<titulo-task>] [--json] [--locale=pt-BR]',
200
+ help_runtime_session_start:
201
+ 'aioson runtime:session:start [path] --agent=<nome> [--title=<texto>] [--message=<texto>] [--session=<chave>] [--json] [--locale=pt-BR]',
202
+ help_runtime_session_log:
203
+ 'aioson runtime:session:log [path] --agent=<nome> --message=<texto> [--type=<evento>] [--title=<texto>] [--json] [--locale=pt-BR]',
204
+ help_runtime_session_finish:
205
+ 'aioson runtime:session:finish [path] --agent=<nome> [--message=<texto>] [--summary=<texto>] [--status=completed|failed] [--json] [--locale=pt-BR]',
206
+ help_runtime_session_status:
207
+ 'aioson runtime:session:status [path] --agent=<nome> [--limit=8] [--watch=2] [--json] [--locale=pt-BR]',
208
+ help_runtime_emit:
209
+ 'aioson runtime:emit [path] --agent=<nome> [--type=<evento>] [--summary=<texto>] [--title=<texto>] [--refs=<arquivo[,arquivo2]>] [--plan-step=<id>] [--meta=<json>] [--json] [--locale=pt-BR]',
210
+ help_live_start:
211
+ 'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<nome> [--tool-bin=<binario>] [--tool-args=<args>] [--title=<texto>] [--goal=<texto>] [--plan=<arquivo>] [--session=<chave>] [--message=<texto>] [--attach] [--no-launch] [--tmux] [--json] [--locale=pt-BR]',
212
+ help_live_status:
213
+ 'aioson live:status [path] [--agent=<nome>] [--limit=8] [--watch=2] [--format=compact|tmux-bar] [--json] [--locale=pt-BR]',
214
+ help_live_handoff:
215
+ 'aioson live:handoff [path] --agent=<nome> --to=<nome> [--reason=<texto>] [--summary=<texto>] [--message=<texto>] [--json] [--locale=pt-BR]',
216
+ help_live_close:
217
+ 'aioson live:close [path] [--agent=<nome>] [--summary=<texto>] [--message=<texto>] [--status=completed|failed] [--json] [--locale=pt-BR]',
218
+ help_live_list:
219
+ 'aioson live:list [path] [--json] [--locale=pt-BR]',
220
+ help_runtime_backup:
221
+ 'aioson runtime:backup [caminho] [--tables=tasks,runs,...] [--force] [--dry-run] [--json] [--locale=pt-BR]',
222
+ help_runtime_restore:
223
+ 'aioson runtime:restore [caminho] [--tables=tasks,runs,...] [--dry-run] [--json] [--locale=pt-BR]',
224
+ help_skill_install:
225
+ 'aioson skill:install [caminho] --slug=<nome> [--from=npm|cloud|./caminho] [--force] [--json] [--locale=pt-BR]',
226
+ help_skill_list:
227
+ 'aioson skill:list [caminho] [--json] [--locale=pt-BR]',
228
+ help_skill_remove:
229
+ 'aioson skill:remove [caminho] --slug=<nome> [--json] [--locale=pt-BR]',
230
+ help_design_hybrid_options:
231
+ 'aioson design-hybrid:options [caminho] [--advanced] [--json] [--locale=pt-BR]',
232
+ help_cloud_import_squad:
233
+ 'aioson cloud:import:squad [path] --url=<snapshot-url> [--force] [--snapshots-only] [--dry-run] [--json] [--locale=pt-BR]',
234
+ help_cloud_import_genome:
235
+ 'aioson cloud:import:genome [path] --url=<snapshot-url> [--force] [--snapshots-only] [--dry-run] [--json] [--locale=pt-BR]',
236
+ help_cloud_publish_squad:
237
+ 'aioson cloud:publish:squad [path] --slug=<slug> --resource-version=<versao> [--url=<publish-url>|--base-url=<site>] [--title=<texto>] [--summary=<texto>] [--compatibility-min=<versao>] [--compatibility-max=<versao>] [--linked-genome-version=<versao>] [--dry-run] [--json] [--locale=pt-BR]',
238
+ help_cloud_publish_genome:
239
+ 'aioson cloud:publish:genome [path] --slug=<slug> --resource-version=<versao> [--url=<publish-url>|--base-url=<site>] [--title=<texto>] [--summary=<texto>] [--source-kind=LOCAL|AIOSLITE|IMPORTED|REMOTE_PROVIDER] [--dry-run] [--json] [--locale=pt-BR]',
240
+ dashboard_moved:
241
+ 'O fluxo `{command}` foi removido do CLI. O dashboard do AIOSON agora e instalado separadamente. Abra o app do dashboard no seu computador, crie ou adicione um projeto e selecione a pasta que ja contem `.aioson/`.',
242
+ dashboard_moved_line: '{message}\n',
243
+ unknown_command: 'Comando desconhecido: {command}',
244
+ unknown_command_line: '{message}\n',
245
+ error_prefix: 'Erro: {message}'
246
+ },
247
+ cloud: {
248
+ project_missing: 'Diretorio do projeto nao encontrado: {path}',
249
+ url_required: 'Informe --url com o endpoint JSON do snapshot do squad.',
250
+ import_squad_dry_run: 'Dry run: squad {slug}@{version} pronto para import cloud.',
251
+ import_squad_done: 'Snapshot do squad {slug}@{version} importado.',
252
+ import_genome_dry_run: 'Dry run: genome {slug}@{version} pronto para import cloud.',
253
+ import_genome_done: 'Snapshot do genome {slug}@{version} importado.',
254
+ publish_squad_dry_run: 'Dry run: squad {slug}@{version} pronto para publish cloud.',
255
+ publish_squad_done: 'Squad {slug}@{version} publicado no cloud.',
256
+ publish_genome_dry_run: 'Dry run: genome {slug}@{version} pronto para publish cloud.',
257
+ publish_genome_done: 'Genome {slug}@{version} publicado no cloud.'
258
+ },
259
+ init: {
260
+ usage_error:
261
+ 'Uso: aioson init <project-name> [--force] [--dry-run] [--all] [--lang=<bcp47-tag>] [--tool=codex|claude|gemini|opencode] [--locale=pt-BR]',
262
+ non_empty_dir: 'Diretorio nao esta vazio: {targetDir}. Use --force para continuar.',
263
+ created_at: 'Projeto criado em: {targetDir}',
264
+ files_copied: 'Arquivos copiados: {count}',
265
+ files_skipped: 'Arquivos ignorados: {count}',
266
+ next_steps: 'Proximos passos:',
267
+ step_cd: '1. cd {projectName}',
268
+ step_setup: '2. Abra na sua AI CLI e execute @setup',
269
+ step_agents: '3. Se nao aparecer seletor visual, execute: aioson agents',
270
+ step_agent_prompt:
271
+ '4. Gere o prompt de setup para sua ferramenta: aioson agent:prompt setup --tool={tool}'
272
+ },
273
+ init_all: {
274
+ installing_full: 'Instalacao completa (todas as ferramentas + squads) — wizard ignorado via --all'
275
+ },
276
+ install: {
277
+ framework_detected: 'Framework detectado: {framework} ({evidence})',
278
+ framework_not_detected: 'Nenhum framework detectado. Instalando em modo generico.',
279
+ done_at: 'Instalacao concluida em: {targetDir}',
280
+ files_copied: 'Arquivos copiados: {count}',
281
+ files_skipped: 'Arquivos ignorados: {count}',
282
+ dry_run_header: '⚠ DRY RUN nenhum arquivo foi escrito. Mostrando o que o install faria:',
283
+ dry_run_done_at: 'DRY RUN: nada foi escrito em {targetDir}',
284
+ dry_run_files_copied: 'Arquivos que seriam copiados (would be copied): {count}',
285
+ dry_run_files_skipped: 'Arquivos que seriam ignorados (would be skipped): {count}',
286
+ next_steps: 'Proximos passos:',
287
+ step_setup_context: '1. Gere/atualize o contexto do projeto: aioson setup:context --defaults',
288
+ step_agents: '2. Se nao aparecer seletor visual, execute: aioson agents',
289
+ step_agent_prompt:
290
+ '3. Gere o prompt de setup para sua ferramenta: aioson agent:prompt setup --tool={tool}',
291
+ existing_project_detected:
292
+ ' Projeto existente detectado ({count} arquivos). Rode o scanner antes de comecar:',
293
+ existing_project_scan_hint:
294
+ ' aioson scan:project . --folder=src --with-llm --provider=<provider> (gera discovery.md + skeleton-system.md; sem --with-llm gera apenas os mapas locais)',
295
+ using_saved_profile: 'Usando perfil de instalacao salvo em .aioson/install.json.',
296
+ fallback_no_saved_profile: '⚠ Sem perfil salvo e sem wizard interativo disponivel — fallback para install-all (todos os arquivos do template serao copiados).',
297
+ reconfigure_needs_tty: '--reconfigure requer um terminal interativo (bloqueado por: {reason}). Rode novamente em um TTY real, sem --no-interactive/--dry-run.',
298
+ opening_wizard: ' Abrindo wizard de instalacao (↑/↓ navega, espaco marca, enter confirma, q/Ctrl+C cancela)...',
299
+ wizard_cancelled_using_saved: '⚠ Wizard cancelado usando perfil de instalacao salvo.',
300
+ wizard_cancelled_install_all: '⚠ Wizard cancelado e sem perfil salvo — fallback para install-all.'
301
+ },
302
+ install_wizard: {
303
+ ready_to_install: 'Pronto para instalar:',
304
+ press_enter_to_install: 'Pressione enter para instalar ou q para cancelar.',
305
+ deselected_warning: '⚠ Itens desmarcados NAO serao removidos automaticamente.',
306
+ deselected_hint: ' Remova manualmente se necessario.'
307
+ },
308
+ update: {
309
+ not_installed: 'Nenhuma instalacao do AIOSON encontrada em {targetDir}.',
310
+ done_at: 'Atualizacao concluida em: {targetDir}',
311
+ files_updated: 'Arquivos atualizados: {count}',
312
+ backups_created: 'Backups criados: {count}',
313
+ reconfigure_hint: 'Novas opcoes podem estar disponiveis. Execute: aioson install --reconfigure'
314
+ },
315
+ info: {
316
+ cli_version: 'AIOSON CLI: v{version}',
317
+ directory: 'Diretorio: {targetDir}',
318
+ installed_here: 'Instalado neste diretorio: {value}',
319
+ framework_detected: 'Framework detectado: {framework}',
320
+ evidence: 'Evidencia: {evidence}',
321
+ yes: 'sim',
322
+ no: 'nao',
323
+ none: 'nenhum'
324
+ },
325
+ doctor: {
326
+ ok: 'OK',
327
+ fail: 'FALHA',
328
+ diagnosis_ok: 'Diagnostico: instalacao saudavel.',
329
+ diagnosis_fail: 'Diagnostico: {count} problema(s) encontrado(s).',
330
+ hint_prefix: '-> {hint}',
331
+ check_line: '[{icon}] {message}',
332
+ hint_line: ' Dica: {hint}',
333
+ fix_action_line: '- Acao: {action}',
334
+ detail_line: ' Detalhe: {text}',
335
+ required_file: 'Arquivo obrigatorio: {rel}',
336
+ context_generated: 'Contexto principal gerado',
337
+ context_hint: 'Execute @setup para gerar .aioson/context/project.context.md',
338
+ context_frontmatter_valid: 'Frontmatter do contexto do projeto esta valido',
339
+ context_frontmatter_valid_hint:
340
+ 'Garanta que project.context.md comeca com frontmatter YAML delimitado por ---',
341
+ context_frontmatter_invalid: 'Frontmatter do contexto do projeto esta invalido ({reason})',
342
+ context_frontmatter_invalid_hint:
343
+ 'Reescreva project.context.md usando o formato de saida do @setup.',
344
+ context_required_field: 'Campo obrigatorio ausente no contexto: {field}',
345
+ context_required_field_hint:
346
+ 'Execute novamente @setup e confirme que todos os campos obrigatorios estao presentes.',
347
+ context_framework_installed_type: '`framework_installed` deve ser booleano (true/false)',
348
+ context_framework_installed_type_hint:
349
+ 'Defina framework_installed como true ou false sem aspas.',
350
+ context_classification_value: '`classification` deve ser um de {expected}',
351
+ context_classification_value_hint: 'Use MICRO, SMALL ou MEDIUM exatamente.',
352
+ context_project_type_value: '`project_type` deve ser um de {expected}',
353
+ context_project_type_value_hint: 'Use web_app, api, site, script, dapp ou desktop_app exatamente.',
354
+ context_profile_value: '`profile` deve ser um de {expected}',
355
+ context_profile_value_hint: 'Use developer, beginner ou team exatamente.',
356
+ context_interaction_language_format:
357
+ '`interaction_language` nao e uma tag BCP-47 valida',
358
+ context_interaction_language_format_hint: 'Use valores como en, en-US, pt-BR.',
359
+ context_conversation_language_format:
360
+ '`conversation_language` nao e uma tag BCP-47 valida',
361
+ context_conversation_language_format_hint: 'Use valores como en, en-US, pt-BR.',
362
+ node_version: 'Node.js >= 18 (atual: {version})',
363
+ gateway_claude_pointer: 'Gateway do CLAUDE referencia arquivos compartilhados do AIOSON',
364
+ gateway_claude_pointer_hint:
365
+ 'Garanta que CLAUDE.md referencie .aioson/config.md e .aioson/agents/setup.md.',
366
+ gateway_codex_pointer: 'Gateway do Codex referencia arquivos compartilhados do AIOSON',
367
+ gateway_codex_pointer_hint:
368
+ 'Garanta que AGENTS.md referencie .aioson/config.md e .aioson/agents/.',
369
+ gateway_gemini_pointer: 'Gateway do Gemini referencia caminhos compartilhados de comandos e agentes',
370
+ gateway_gemini_pointer_hint:
371
+ 'Garanta que .gemini/GEMINI.md referencie .gemini/commands/ e .aioson/agents/.',
372
+ gateway_gemini_command_pointer:
373
+ 'Arquivo de comando Gemini mapeia para agente compartilhado: {file}',
374
+ gateway_gemini_command_pointer_hint:
375
+ 'Garanta que {file} inclua @{ .aioson/agents/{agent}.md } no campo prompt.',
376
+ gateway_opencode_pointer: 'Gateway do OpenCode referencia arquivos compartilhados do AIOSON',
377
+ gateway_opencode_pointer_hint:
378
+ 'Garanta que OPENCODE.md referencie .aioson/config.md e .aioson/agents/.',
379
+ fix_start: 'Modo de correcao segura habilitado.',
380
+ fix_start_dry_run: 'Modo de correcao segura habilitado (dry-run).',
381
+ fix_action_required_files: 'Restaurar arquivos gerenciados ausentes a partir do template',
382
+ fix_action_gateway_contracts:
383
+ 'Restaurar arquivos de contrato de gateway quebrados a partir do template',
384
+ fix_action_locale_sync: 'Sincronizar prompts ativos dos agentes com o idioma do contexto',
385
+ fix_action_claude_commands: 'Restaurar slashes ausentes em .claude/commands/aioson/agent/* a partir do template',
386
+ fix_action_features_dir: 'Criar o diretorio .aioson/context/features/',
387
+ fix_action_permissions_in_sync: 'Regenerar arquivos nativos de permissao a partir de autonomy-protocol.json',
388
+ fix_action_bootstrap_coverage: 'Rode /discover para popular os arquivos de bootstrap (semantico — nao aplicado automaticamente)',
389
+ fix_action_version_drift: 'Atualize o CLI (npm i -g @jaimevalasek/aioson) ou ajuste project.context.md aioson_version (manual)',
390
+ fix_not_applicable: 'Nao aplicavel para o estado atual.',
391
+ fix_target_count: 'Alvos identificados: {count}',
392
+ fix_applied_count: 'Mudancas aplicadas: {count}',
393
+ fix_planned_count: 'Mudancas planejadas: {count}',
394
+ fix_locale: 'Locale resolvido: {locale}',
395
+ fix_summary: 'Mudancas de correcao segura aplicadas: {count}',
396
+ fix_summary_dry_run: '[dry-run] Mudancas de correcao segura planejadas: {count}',
397
+ bootstrap_coverage: 'Cobertura do bootstrap: {present}/{required}',
398
+ bootstrap_coverage_hint: 'Rode /discover para atualizar os arquivos de bootstrap.',
399
+ bootstrap_coverage_hint_seed: 'Rode /discover para criar .aioson/context/bootstrap/{what-is,how-it-works,what-it-does,current-state}.md',
400
+ features_dir_present: 'Diretorio de features presente (.aioson/context/features/)',
401
+ features_dir_present_hint: 'Crie .aioson/context/features/ para hospedar dossies por feature (doctor --fix cria automaticamente).',
402
+ claude_commands_present: 'Slash commands do Claude presentes ({missing} ausentes de {required})',
403
+ claude_commands_present_hint: 'Ausentes: {paths}. Rode `aioson doctor . --fix` para restaurar a partir do template.',
404
+ version_drift: 'Versao do CLI bate com project.context.md (contexto: {context}, CLI: {cli})',
405
+ version_drift_hint: 'project.context.md aioson_version ({context}) difere do CLI ({cli}). Atualize manualmente.',
406
+ permissions_in_sync: 'Permissoes nativas sincronizadas com autonomy-protocol.json ({drifted} drift, {missing} ausentes)',
407
+ permissions_in_sync_hint: 'Rode `aioson doctor . --fix` para regenerar: {paths}.',
408
+ permissions_protocol_missing_hint: 'autonomy-protocol.json esta ausente rode `aioson update .` para reinstalar.',
409
+ learning_loop: {
410
+ distillation_complete: 'distillation: {promoted} promovidos, {review} para revisão, {merge} candidatos a merge ({duration}ms)',
411
+ distillation_failed_silent: 'distillation falhou silenciosamente para feature "{slug}" — fase: {phase}',
412
+ skipped_micro: 'distillation ignorada: classificação da feature é MICRO',
413
+ skipped_no_distill: 'distillation ignorada: flag --no-distill ativa',
414
+ lock_held: 'distillation ignorada: outra instância em progresso para "{slug}"',
415
+ notify_template: 'distillation: {promoted} promovidos, {review} para revisão, {merge} candidatos a merge'
416
+ },
417
+ living_memory: {
418
+ rule_staleness: 'Rules estagnadas: {stale} de {total} sem load nas últimas {threshold} features fechadas',
419
+ rule_staleness_hint: 'Rules estagnadas (primeiras 5): {slugs}. Proposta: {propose}',
420
+ rule_staleness_skipped_micro: 'Check de rule_staleness ignorado: classificação do projeto é MICRO (BR-ALL-11)',
421
+ learning_orphans: 'Learnings órfãos: {orphans} learnings promovidos para rules que nunca foram carregadas',
422
+ learning_orphans_hint: 'learning_ids órfãos (primeiros 5): {ids}. Use `aioson memory:why --id=<id>` para inspecionar.',
423
+ learning_orphans_skipped_micro: 'Check de learning_orphans ignorado: classificação do projeto é MICRO (BR-ALL-11)',
424
+ distillation_lag: 'Lag de distillation: {closed} features fechadas mas apenas {distillations} têm evento auto_distillation (limite {threshold})',
425
+ distillation_lag_hint: 'Features sem distillation (primeiras 5): {missing_slugs}. Verifique o hook da Phase 5.',
426
+ distillation_lag_skipped_micro: 'Check de distillation_lag ignorado: classificação do projeto é MICRO (BR-ALL-11)'
427
+ }
428
+ },
429
+ i18n_add: {
430
+ usage_error: 'Uso: aioson i18n:add <locale> [--force] [--dry-run] [--locale=pt-BR]',
431
+ invalid_locale: 'Codigo de locale invalido: {locale}. Formatos esperados como en, fr, pt-br.',
432
+ base_locale: 'O locale "en" e o dicionario base e nao pode ser gerado.',
433
+ locale_exists: 'Arquivo de locale ja existe: {path}. Use --force para sobrescrever.',
434
+ dry_run_created: '[dry-run] O scaffold de locale seria criado: {locale}',
435
+ dry_run_overwritten: '[dry-run] O scaffold de locale seria sobrescrito: {locale}',
436
+ created: 'Scaffold de locale criado: {locale}',
437
+ overwritten: 'Scaffold de locale sobrescrito: {locale}',
438
+ file_path: 'Arquivo de locale: {path}',
439
+ next_steps: 'Proximos passos:',
440
+ step_translate: '1. Substitua as strings em ingles pelos textos traduzidos nesse arquivo.',
441
+ step_try: '2. Execute a CLI com --locale={locale} para validar o novo dicionario.'
442
+ },
443
+ agents: {
444
+ list_title: 'Agentes disponiveis (locale resolvido: {locale}):',
445
+ path: 'Caminho',
446
+ active_path: 'Caminho ativo',
447
+ depends: 'Depende de',
448
+ output: 'Saida',
449
+ agent_line: '- Agente: {label} - {command} ({id})',
450
+ path_line: ' Caminho: {path}',
451
+ active_path_line: ' Caminho ativo: {path}',
452
+ depends_line: ' Depende de: {value}',
453
+ output_line: ' Saida: {value}',
454
+ none: 'nenhum',
455
+ prompt_usage_error:
456
+ 'Uso: aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=en|pt-BR|es|fr] [--locale=pt-BR]',
457
+ prompt_unknown_agent: 'Agente desconhecido: {agent}',
458
+ prompt_invalid_target_mode:
459
+ 'Modo de target do pentester invalido: {mode}. Use framework_target ou app_target.',
460
+ prompt_missing_feature_for_app_target:
461
+ 'Pentester app_target exige --feature=<slug> (ou --slug=<slug>).',
462
+ prompt_missing_scope_for_app_target:
463
+ 'Pentester app_target exige --scope=<area>.',
464
+ prompt_title: 'Prompt para o agente "{agent}" na ferramenta "{tool}" (locale: {locale}):'
465
+ },
466
+ context_validate: {
467
+ missing_file: 'Arquivo de contexto nao encontrado: {path}',
468
+ hint_setup: 'Execute @setup para gerar o arquivo primeiro.',
469
+ invalid_frontmatter: 'O arquivo de contexto tem frontmatter YAML invalido.',
470
+ file_path: 'Arquivo de contexto: {path}',
471
+ parse_reason_unknown: 'desconhecido',
472
+ parse_reason_missing_frontmatter: 'delimitador inicial do frontmatter ausente',
473
+ parse_reason_unclosed_frontmatter: 'bloco de frontmatter nao fechado',
474
+ parse_reason_invalid_frontmatter_line: 'sintaxe invalida em linha do frontmatter',
475
+ parse_reason: 'Motivo do parse: {reason}',
476
+ hint_fix_frontmatter: 'Use @setup para regenerar um arquivo de contexto valido.',
477
+ invalid_fields: 'O arquivo de contexto foi lido, mas tem problemas de validacao:',
478
+ issue_line: '- {issue}',
479
+ valid: 'O arquivo de contexto esta valido.'
480
+ },
481
+ context_pack: {
482
+ generated: 'Context pack escrito em: {path}',
483
+ no_matches: 'Nenhum arquivo de contexto relevante foi selecionado ainda. Gere setup/contexto/scan antes de empacotar.',
484
+ selected_title: 'Arquivos incluidos no pack:',
485
+ selected_line: ' {index}. {path} {reason}',
486
+ hint_use: 'Use {path} como contexto minimo inicial na sua sessao de IA.'
487
+ },
488
+ setup: {
489
+ installing: 'Instalando template AIOSON...',
490
+ installed: 'Template instalado ({count} arquivos).',
491
+ no_framework_detected: 'Nenhum framework detectado neste diretorio (projeto novo).',
492
+ framework_detected: 'Framework detectado: {framework} (instalado={installed})',
493
+ writing_context: 'Escrevendo contexto do projeto...',
494
+ done: 'Setup concluido.',
495
+ step_agents: ' Proximo: abra seu cliente de IA e ative @setup para confirmar ou ajustar o contexto.',
496
+ step_agent_prompt: ' Ou execute: aioson agent:prompt setup . --tool={tool}',
497
+ q_project_name: 'Nome do projeto',
498
+ q_framework: 'Framework / stack principal (ex: Python, Node, Laravel, Django)',
499
+ q_lang: 'Idioma para respostas dos agentes (ex: en, pt-BR, es, fr)',
500
+ q_confirm_framework: 'Usar framework detectado? (true/false)',
501
+ q_override_framework: 'Framework',
502
+ q_framework_installed: 'Framework instalado? (true/false)'
503
+ },
504
+ setup_context: {
505
+ detected: 'Framework detectado: {framework} (installed={installed})',
506
+ q_project_name: 'Nome do projeto',
507
+ q_project_type: 'Tipo do projeto (web_app|api|site|script|dapp|desktop_app)',
508
+ q_profile: 'Perfil: [1] developer [2] beginner [3] team',
509
+ q_use_detected_framework: 'Usar framework detectado? (true/false)',
510
+ q_framework: 'Framework',
511
+ q_framework_installed: 'Framework instalado? (true/false)',
512
+ q_language: 'Idioma da conversa (por exemplo en ou pt-BR)',
513
+ q_backend_menu:
514
+ 'Backend: [1] Laravel [2] Rails [3] Django [4] Node/Express [5] Next.js [6] Nuxt [7] Hardhat [8] Foundry [9] Truffle [10] Anchor [11] Solana Web3 [12] Cardano [13] Other',
515
+ q_backend_text: 'Backend (texto livre)',
516
+ q_laravel_version: 'Versao do Laravel (por exemplo 11, 10)',
517
+ q_frontend_menu:
518
+ 'Frontend: [1] TALL Stack [2] VILT Stack [3] Blade [4] Next.js [5] Nuxt [6] React [7] Vue [8] Other',
519
+ q_frontend_text: 'Frontend (texto livre)',
520
+ q_auth_menu:
521
+ 'Auth (Laravel): [1] Breeze [2] Jetstream + Livewire [3] Filament Shield [4] Custom',
522
+ q_web3_enabled: 'Web3 habilitado? (true/false)',
523
+ q_web3_networks: 'Redes Web3 (por exemplo ethereum, solana, cardano)',
524
+ q_contract_framework: 'Framework de contratos (por exemplo Hardhat, Foundry, Anchor, Aiken)',
525
+ q_wallet_provider: 'Wallet provider (por exemplo wagmi, RainbowKit, Phantom, Lace)',
526
+ q_indexer: 'Indexer (por exemplo The Graph, Helius, Blockfrost)',
527
+ q_rpc_provider: 'RPC provider (por exemplo Alchemy, Infura, QuickNode)',
528
+ q_jetstream_teams: 'Jetstream com teams habilitado? (true/false)',
529
+ q_jetstream_existing_action:
530
+ 'Projeto Laravel existente sem Jetstream detectado. Acao: [1] continuar sem Jetstream [2] recriar com Jetstream (recomendado) [3] instalacao manual (risco)',
531
+ q_auth_text: 'Estrategia de autenticacao (texto livre)',
532
+ q_uiux_menu: 'UI/UX: [1] Tailwind [2] Flux UI [3] shadcn/ui [4] Filament',
533
+ q_uiux_text: 'Abordagem de UI/UX (texto livre)',
534
+ q_database_menu:
535
+ 'Banco de dados: [1] MySQL [2] PostgreSQL [3] SQLite [4] MongoDB [5] Supabase [6] PlanetScale',
536
+ q_database_text: 'Banco de dados (texto livre)',
537
+ q_services_list:
538
+ 'Servicos adicionais (lista separada por virgula): queues, storage, websockets, payments, email, cache, search',
539
+ q_rails_options:
540
+ 'Opcoes usadas no Rails (lista por virgula, ex: --database=postgresql,--css=tailwind,--api)',
541
+ q_next_options:
542
+ 'Opcoes do create-next-app (lista por virgula, ex: TypeScript,ESLint,Tailwind CSS,App Router,src/ directory)',
543
+ q_beginner_summary: 'Descreva seu projeto em uma frase',
544
+ q_beginner_users:
545
+ 'Usuarios esperados: [1] pessoal/pequeno ate 10 [2] time pequeno ate 100 [3] clientes externos',
546
+ q_beginner_mobile: 'Requisito mobile: [1] app mobile [2] web responsiva [3] apenas desktop',
547
+ q_beginner_hosting: 'Preferencia de hospedagem: [1] gerenciado simples [2] VPS [3] cloud provider',
548
+ q_beginner_accept_recommendation: 'Aceitar recomendacao inicial? (true/false)',
549
+ beginner_recommendation:
550
+ 'Recomendacao inicial -> framework: {framework}, frontend: {frontend}, database: {database}, auth: {auth}',
551
+ q_user_types: 'Quantos tipos de usuario?',
552
+ q_integrations: 'Quantas integracoes externas?',
553
+ q_rules_complexity: 'Complexidade de regras (none|some|complex)',
554
+ note_status_enabled: 'habilitado',
555
+ note_status_disabled: 'desabilitado',
556
+ note_jetstream_teams: 'Jetstream teams: {status}',
557
+ note_selected_services: 'Servicos selecionados: {services}',
558
+ note_rails_setup_flags: 'Flags de setup do Rails: {flags}',
559
+ note_next_setup_flags: 'Flags de setup do Next.js: {flags}',
560
+ note_next_create_flags: 'Flags do create-next-app: {flags}',
561
+ note_jetstream_existing_action: 'Acao para projeto existente com Jetstream: {action}',
562
+ note_mobile_first:
563
+ 'Requisito mobile-first detectado; considere React Native/Expo como proximo passo.',
564
+ note_vps_preference:
565
+ 'Preferencia por VPS detectada; mantenha scripts de deploy simples e reproduziveis.',
566
+ note_cloud_profile:
567
+ 'Perfil cloud detectado; use banco gerenciado e object storage desde o inicio.',
568
+ note_web3_terms: 'Termos Web3 detectados; recomendacao inicial de dApp aplicada.',
569
+ note_starter_profile:
570
+ 'Esta recomendacao e um perfil inicial; ajuste quando os requisitos ficarem mais claros.',
571
+ note_team_profile:
572
+ 'Perfil de time selecionado; preserve convencoes explicitas de equipe e regras de CI.',
573
+ note_beginner_declined:
574
+ 'Recomendacao inicial recusada; usando stack customizada do onboarding.',
575
+ note_monorepo:
576
+ 'Monorepo detectado: framework Web3 e framework de aplicacao coexistem. Confirmar framework primario com o usuario e documentar estrutura em Notes.',
577
+ written: 'Arquivo de contexto escrito: {path}',
578
+ classification_result: 'Classificacao: {classification} (score={score}/6)',
579
+ locale_applied: 'Idioma de interacao sincronizado: {locale} ({count} prompts de agente restaurados)'
580
+ },
581
+ locale_apply: {
582
+ applied: 'Idioma de interacao sincronizado: {locale}',
583
+ dry_run_applied: '[dry-run] Idioma de interacao seria sincronizado: {locale}',
584
+ copied_count: 'Arquivos copiados: {count}',
585
+ missing_count: 'Arquivos de locale ausentes: {count}',
586
+ copy_line: ' Arquivo: {source} -> {target}'
587
+ },
588
+ smoke: {
589
+ start: 'Executando smoke test em: {projectDir}',
590
+ using_web3_profile: 'Usando perfil Web3 de smoke: {target}',
591
+ using_mixed_profile: 'Usando perfil misto Web2+Web3 para smoke test.',
592
+ using_parallel_profile: 'Usando perfil de smoke para orquestracao paralela.',
593
+ seeded_web3_workspace: 'Workspace inicializado para alvo Web3: {target}',
594
+ seeded_mixed_workspace: 'Workspace inicializado para perfil misto Web2+Web3.',
595
+ seeded_parallel_context: 'Contexto discovery/architecture/prd inicializado para perfil paralelo.',
596
+ step_ok: 'OK: {step}',
597
+ web3_detected: 'Framework Web3 detectado: {framework} ({network})',
598
+ web3_context_verified: 'Contexto Web3 verificado para rede: {network}',
599
+ mixed_context_verified: 'Contexto do perfil misto verificado (framework: {framework}).',
600
+ parallel_status_verified: 'Status paralelo verificado para lanes: {count}',
601
+ invalid_web3_target: 'Alvo --web3 invalido: {target}. Use ethereum, solana ou cardano.',
602
+ invalid_profile: 'Valor invalido para --profile: {profile}. Use standard, mixed ou parallel.',
603
+ profile_conflict: 'Nao combine --profile=mixed com --web3. Escolha um modo de perfil.',
604
+ assert_install_files: 'install copiou zero arquivos',
605
+ assert_web3_framework: 'deteccao de framework web3 inesperada: {framework}',
606
+ assert_setup_written: 'setup:context nao gravou o arquivo de contexto',
607
+ assert_setup_project_type_dapp: 'setup nao inferiu project_type=dapp',
608
+ assert_setup_web3_network: 'setup nao inferiu a rede web3 esperada',
609
+ assert_setup_web3_framework: 'setup nao manteve o framework web3 esperado',
610
+ assert_mixed_project_type_dapp: 'perfil mixed nao inferiu project_type=dapp',
611
+ assert_mixed_web3_enabled: 'perfil mixed nao inferiu web3_enabled=true',
612
+ assert_mixed_framework: 'perfil mixed nao priorizou o framework web3 esperado',
613
+ assert_locale_apply_files: 'locale:apply copiou zero arquivos',
614
+ assert_agents_count: 'comando agents retornou contagem inesperada',
615
+ assert_prompt_path: 'agent:prompt nao incluiu o caminho esperado',
616
+ assert_context_validate: 'context:validate falhou',
617
+ assert_web3_context_valid: 'falha ao validar parse do contexto web3',
618
+ assert_web3_context_project_type: 'project_type do contexto nao e dapp',
619
+ assert_web3_context_enabled: 'web3_enabled do contexto nao e true',
620
+ assert_web3_context_network: 'web3_networks do contexto nao inclui o alvo esperado',
621
+ assert_doctor_ok: 'checagem doctor falhou',
622
+ assert_parallel_init_ok: 'parallel:init falhou',
623
+ assert_parallel_init_workers: 'workers de parallel:init nao conferem',
624
+ assert_parallel_assign_ok: 'parallel:assign falhou',
625
+ assert_parallel_assign_scope: 'parallel:assign nao gerou escopos',
626
+ assert_parallel_status_ok: 'parallel:status falhou',
627
+ assert_parallel_status_lanes: 'quantidade de lanes em parallel:status nao confere',
628
+ assert_parallel_doctor_ok: 'parallel:doctor falhou',
629
+ assert_parallel_doctor_summary: 'parallel:doctor reportou falhas',
630
+ completed: 'Smoke test concluido com sucesso.',
631
+ steps_count: 'Etapas validadas: {count}',
632
+ workspace_kept: 'Workspace mantido: {path}',
633
+ workspace_removed: 'Workspace removido: {path}'
634
+ },
635
+ package_test: {
636
+ start: 'Executando teste de pacote a partir da origem: {sourceDir}',
637
+ pack_done: 'Tarball do pacote criado: {tarball}',
638
+ completed: 'Teste de pacote concluido com {count} etapas validadas.',
639
+ workspace: 'Workspace do teste de pacote: {path}',
640
+ error_unknown_detail: 'erro desconhecido',
641
+ error_npm_pack: 'Falha no npm pack: {detail}',
642
+ error_tarball_missing: 'npm pack nao retornou o nome do tarball',
643
+ error_npx_init: 'Falha no npx init: {detail}',
644
+ error_npx_setup_context: 'Falha no npx setup:context: {detail}',
645
+ error_npx_doctor: 'Falha no npx doctor: {detail}',
646
+ error_doctor_not_ok: 'doctor retornou ok=false durante o teste de pacote',
647
+ error_npx_mcp_init: 'Falha no npx mcp:init: {detail}',
648
+ error_mcp_not_ok: 'mcp:init retornou ok=false durante o teste de pacote'
649
+ },
650
+ workflow_plan: {
651
+ context_missing:
652
+ 'Arquivo de contexto nao encontrado. Usando workflow de fallback com base na classificacao informada/padrao.',
653
+ title: 'Workflow recomendado para classificacao {classification}:',
654
+ notes: 'Notas:',
655
+ command_line: ' Comando: {command}',
656
+ note_line: ' Nota: {note}',
657
+ note_framework_not_installed:
658
+ 'Framework ainda nao esta instalado; conclua a instalacao da stack antes de @dev.',
659
+ note_dapp_context:
660
+ 'Contexto dApp detectado; inclua skills Web3 durante @architect e @dev.',
661
+ note_micro_scope:
662
+ 'Mantenha o escopo de implementacao minimo e evite agentes opcionais.',
663
+ note_product_optional:
664
+ '@product e opcional para MICRO pule e va direto ao @dev se a ideia ja esta clara.',
665
+ note_feature_flow:
666
+ 'Fluxo para nova feature (apos configuracao inicial): @product → @analyst → @dev → @qa. Sem @setup.'
667
+ },
668
+ workflow_next: {
669
+ title: 'Handoff do workflow para {mode} ({classification}):',
670
+ completed: 'Etapa concluida: {agent}',
671
+ detour: 'Desvio ativo: {agent} (retorna para {returnTo})',
672
+ current_agent: 'Agente atual: {agent}',
673
+ next_agent: 'Proximo/retorno: {agent}',
674
+ done: 'Workflow concluido. Nao ha proximo agente.',
675
+ state_file: 'Arquivo de estado: {path}'
676
+ },
677
+ workflow_heal: {
678
+ title: '🩹 Auto-cura ativada para {stage} (tentativa {count}/3):'
679
+ },
680
+ parallel_init: {
681
+ context_missing:
682
+ 'Arquivo de contexto nao encontrado: {path}. Execute setup:context primeiro.',
683
+ context_invalid: 'Arquivo de contexto invalido ou nao parseavel: {path}.',
684
+ classification_unknown: 'desconhecida',
685
+ requires_medium:
686
+ 'Inicializacao paralela so e suportada para classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
687
+ invalid_workers:
688
+ 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
689
+ already_exists:
690
+ 'Arquivos de contexto paralelo ja existem ({count}). Use --force para sobrescrever.',
691
+ prepared: 'Workspace paralelo inicializado em: {path}',
692
+ dry_run_prepared: '[dry-run] Workspace paralelo seria inicializado em: {path}',
693
+ workers_count: 'Workers: {count}',
694
+ files_count: 'Arquivos preparados: {count}',
695
+ missing_prereq_count: 'Arquivos de contexto prerequisitos ausentes: {count}',
696
+ file_line: ' Arquivo: {file}'
697
+ },
698
+ parallel_doctor: {
699
+ prefix_ok: 'OK',
700
+ prefix_warn: 'AVISO',
701
+ prefix_fail: 'FALHA',
702
+ check_line: '[{prefix}] {id} - {message}',
703
+ hint_line: ' Dica: {hint}',
704
+ invalid_workers:
705
+ 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
706
+ classification_unknown: 'desconhecida',
707
+ requires_medium:
708
+ 'Modo de correcao do parallel doctor requer classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
709
+ report_title: 'Relatorio do parallel doctor: {path}',
710
+ summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.',
711
+ fix_summary: 'Mudancas de correcao paralela aplicadas: {count}',
712
+ fix_summary_dry_run: '[dry-run] Mudancas de correcao paralela planejadas: {count}',
713
+ check_context_exists_ok: 'project.context.md existe.',
714
+ check_context_exists_missing: 'project.context.md esta ausente.',
715
+ check_context_exists_hint: 'Execute setup:context antes do parallel doctor.',
716
+ check_context_parsed_ok: 'project.context.md esta parseavel.',
717
+ check_context_parsed_invalid: 'project.context.md esta invalido.',
718
+ check_context_parsed_hint:
719
+ 'Corrija o frontmatter do contexto antes de executar parallel doctor.',
720
+ check_context_classification_ok:
721
+ 'Modo paralelo permitido para classificacao {classification}.',
722
+ check_context_classification_invalid:
723
+ 'Modo paralelo requer classificacao MEDIUM (atual: {classification}).',
724
+ check_context_classification_hint: 'Use --force para sobrescrever a regra de classificacao.',
725
+ check_parallel_dir_ok: 'Diretorio .aioson/context/parallel existe.',
726
+ check_parallel_dir_missing: 'Diretorio .aioson/context/parallel esta ausente.',
727
+ check_parallel_dir_hint: 'Execute parallel:init ou parallel:doctor --fix.',
728
+ check_parallel_shared_ok: 'shared-decisions.md esta presente.',
729
+ check_parallel_shared_missing: 'shared-decisions.md esta ausente.',
730
+ check_parallel_shared_hint:
731
+ 'Execute parallel:doctor --fix para restaurar os arquivos base.',
732
+ check_parallel_manifest_ok: 'workspace.manifest.json esta presente.',
733
+ check_parallel_manifest_missing: 'workspace.manifest.json esta ausente.',
734
+ check_parallel_manifest_hint:
735
+ 'Execute parallel:doctor --fix para restaurar o manifest do workspace.',
736
+ check_parallel_ownership_ok: 'ownership-map.json esta presente.',
737
+ check_parallel_ownership_missing: 'ownership-map.json esta ausente.',
738
+ check_parallel_ownership_hint:
739
+ 'Execute parallel:doctor --fix para restaurar o mapa de ownership.',
740
+ check_parallel_merge_ok: 'merge-plan.json esta presente.',
741
+ check_parallel_merge_missing: 'merge-plan.json esta ausente.',
742
+ check_parallel_merge_hint:
743
+ 'Execute parallel:doctor --fix para restaurar o plano de merge.',
744
+ check_machine_sync_ok:
745
+ 'Os artefatos paralelos machine-readable estao sincronizados com os arquivos de lane.',
746
+ check_machine_sync_stale:
747
+ 'Os artefatos paralelos machine-readable estao stale: {files}.',
748
+ check_machine_sync_hint:
749
+ 'Execute parallel:doctor --fix para reconstruir os artefatos stale.',
750
+ check_ownership_conflicts_ok:
751
+ 'Nenhum conflito de ownership foi detectado entre os escopos das lanes.',
752
+ check_ownership_conflicts_found:
753
+ '{count} conflito(s) de ownership foi/foram detectado(s) entre os escopos das lanes.',
754
+ check_ownership_conflicts_hint:
755
+ 'Ajuste o ownership para que cada scope key pertenca a apenas uma lane.',
756
+ check_write_scope_present_ok:
757
+ 'Todas as lanes com escopo atribuido tambem declaram write_paths.',
758
+ check_write_scope_present_missing:
759
+ '{count} lane(s) com escopo atribuido ainda nao declaram write_paths.',
760
+ check_write_scope_present_hint:
761
+ 'Declare caminhos relativos ao projeto ou prefixos recursivos (por exemplo src/auth/**) no bloco Ownership de cada lane.',
762
+ check_write_scope_valid_ok:
763
+ 'Todos os write_paths declarados usam padroes suportados.',
764
+ check_write_scope_valid_invalid:
765
+ '{count} padrao(oes) invalido(s) de write_paths foi/foram detectado(s).',
766
+ check_write_scope_valid_hint:
767
+ 'Use caminhos relativos exatos ao projeto ou padroes recursivos terminando com /**.',
768
+ check_write_scope_conflicts_ok:
769
+ 'Nenhuma sobreposicao de write_paths foi detectada entre as lanes.',
770
+ check_write_scope_conflicts_found:
771
+ '{count} sobreposicao(oes) de write_paths foi/foram detectada(s) entre as lanes.',
772
+ check_write_scope_conflicts_hint:
773
+ 'Separe o ownership para que cada padrao de caminho pertenca a apenas uma lane.',
774
+ check_dependencies_valid_ok:
775
+ 'Todas as dependencias declaradas entre lanes apontam para lanes validas.',
776
+ check_dependencies_valid_invalid:
777
+ '{count} referencia(s) invalida(s) de dependencia entre lanes foi/foram detectada(s).',
778
+ check_dependencies_valid_hint:
779
+ 'Use referencias lane-N apenas para lanes existentes ou mova a coordenacao compartilhada para shared-decisions.',
780
+ check_dependencies_blocked_ok:
781
+ 'Nenhuma lane esta bloqueada neste momento por dependencia incompleta.',
782
+ check_dependencies_blocked_found:
783
+ '{count} bloqueio(s) por dependencia entre lanes foi/foram detectado(s) com base no status atual.',
784
+ check_dependencies_blocked_hint:
785
+ 'Conclua as lanes upstream ou retorne a lane dependente para pending antes da execucao.',
786
+ check_merge_order_ok:
787
+ 'A ordem de merge respeita as dependencias declaradas entre lanes.',
788
+ check_merge_order_invalid:
789
+ '{count} violacao(oes) de ordem de merge contra dependencias declaradas foi/foram detectada(s).',
790
+ check_merge_order_hint:
791
+ 'Ajuste merge ranks ou dependencias para que as lanes upstream sejam mescladas primeiro.',
792
+ check_lanes_present_ok: '{count} arquivo(s) de lane detectado(s).',
793
+ check_lanes_present_missing: 'Nenhum arquivo de status de lane foi encontrado.',
794
+ check_lanes_present_hint: 'Execute parallel:init ou parallel:doctor --fix.',
795
+ check_lanes_sequence_ok: 'Sequencia de lanes e continua (1..{workers}).',
796
+ check_lanes_sequence_missing: 'Arquivos de lane ausentes na sequencia: {lanes}',
797
+ check_lanes_sequence_hint:
798
+ 'Execute parallel:doctor --fix para restaurar as lanes ausentes.',
799
+ check_workers_option: 'Opcao de workers solicitada: {workers}.',
800
+ check_prereq_ok: 'Todos os arquivos de contexto prerequisitos estao presentes.',
801
+ check_prereq_missing: '{count} arquivo(s) de contexto prerequisito ausente(s).',
802
+ check_prereq_hint:
803
+ 'Crie os arquivos discovery/architecture/prd antes da orquestracao.'
804
+ },
805
+ parallel_assign: {
806
+ invalid_workers:
807
+ 'Valor invalido para --workers. Use um inteiro entre {min} e {max}.',
808
+ context_missing: 'Arquivo de contexto nao encontrado: {path}.',
809
+ context_invalid: 'Arquivo de contexto invalido ou nao parseavel: {path}.',
810
+ classification_unknown: 'desconhecida',
811
+ requires_medium:
812
+ 'A atribuicao paralela requer classificacao MEDIUM (atual: {classification}). Use --force para sobrescrever.',
813
+ parallel_missing:
814
+ 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
815
+ no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
816
+ missing_lanes: 'Arquivos de lane ausentes para os workers solicitados: {lanes}.',
817
+ source_missing: 'Nao foi possivel resolver o documento de origem com --source={source}.',
818
+ applied: 'Atribuicao de escopo paralelo aplicada ({count} item(ns) de escopo).',
819
+ dry_run_applied:
820
+ '[dry-run] Atribuicao de escopo paralelo planejada ({count} item(ns) de escopo).',
821
+ source_info: 'Documento de origem: {source}',
822
+ workers_count: 'Workers: {count}',
823
+ files_count: 'Arquivos atualizados: {count}',
824
+ lane_scope_line: '- lane {lane}: {count} item(ns) de escopo'
825
+ },
826
+ parallel_status: {
827
+ parallel_missing:
828
+ 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
829
+ no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
830
+ title: 'Relatorio de status paralelo: {path}',
831
+ lanes_count: 'Lanes: {count}',
832
+ statuses_title: 'Status:',
833
+ status_line: '- {status}: {count}',
834
+ status_pending: 'pendente',
835
+ status_in_progress: 'em_andamento',
836
+ status_completed: 'concluido',
837
+ status_merged: 'mesclado',
838
+ status_blocked: 'bloqueado',
839
+ status_other: 'outro',
840
+ scopes_count: 'Total de itens de escopo: {count}',
841
+ deliverables_progress: 'Entregaveis: {completed}/{total} concluidos',
842
+ blockers_count: 'Bloqueios em aberto: {count}',
843
+ shared_decisions: 'Entradas no log de decisoes compartilhadas: {count}',
844
+ ownership_conflicts: 'Conflitos de ownership: {count}',
845
+ write_scope_summary:
846
+ 'Write scope: lanes_com_paths={lanes}, caminhos={paths}, lanes_com_escopo_sem_path={uncovered}, conflitos={conflicts}, invalidos={invalid}',
847
+ dependencies_summary:
848
+ 'Dependencias: declaradas={declared}, invalidas={invalid}, bloqueadas={blocked}, violacoes_de_ordem={orderViolations}',
849
+ sync_summary: 'Drift dos arquivos machine-readable: {count}',
850
+ sync_stale_line: '- stale: {file}',
851
+ lane_line: '- lane {lane}: status={status}, escopo={scope}, bloqueios={blockers}'
852
+ },
853
+ parallel_merge: {
854
+ parallel_missing:
855
+ 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
856
+ no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
857
+ ready: 'O merge deterministico esta pronto para {count} lane(s).',
858
+ applied: 'O merge deterministico foi aplicado em {count} lane(s).',
859
+ blocked: 'O merge deterministico esta bloqueado para {count} lane(s).',
860
+ order: 'Ordem de merge: {order}',
861
+ structural_summary:
862
+ 'Checagens estruturais: stale={stale}, conflitos_de_ownership={conflicts}, conflitos_de_write_scope={writeConflicts}, write_paths_invalidos={invalidWritePaths}, dependencias_invalidas={invalid}, dependencias_bloqueadas={blocked}, violacoes_de_ordem={orderViolations}',
863
+ lane_line: '- lane {lane}: acao={action}, status={status}'
864
+ },
865
+ parallel_guard: {
866
+ invalid_lane: 'Valor invalido para --lane. Use um inteiro positivo.',
867
+ paths_required:
868
+ 'Falta o valor de --paths. Informe um ou mais caminhos relativos ao projeto separados por virgula.',
869
+ parallel_missing:
870
+ 'Diretorio paralelo nao encontrado: {path}. Execute parallel:init primeiro.',
871
+ no_lanes: 'Nenhum arquivo de lane foi encontrado em .aioson/context/parallel.',
872
+ lane_missing: 'A lane {lane} nao existe no workspace paralelo atual.',
873
+ allowed: 'O guard de escrita liberou a lane {lane} para {count} caminho(s).',
874
+ blocked: 'O guard de escrita bloqueou a lane {lane} para {count} caminho(s).',
875
+ write_scope_summary:
876
+ 'Resumo do write scope: caminhos={paths}, conflitos={conflicts}, invalidos={invalid}',
877
+ path_line: '- path {path}: status={status}, owners={owners}'
878
+ },
879
+ mcp_init: {
880
+ context_missing:
881
+ 'Arquivo de contexto nao encontrado. Gerando plano MCP base com suposicoes genericas.',
882
+ invalid_tool: 'Valor invalido para --tool: {tool}. Use um de: {expected}.',
883
+ reason_filesystem: 'Acesso local obrigatorio ao workspace.',
884
+ reason_context7: 'Use documentacao oficial atualizada no momento da implementacao.',
885
+ reason_database_none: 'Nenhuma stack de banco de dados foi detectada ainda.',
886
+ reason_database_enabled:
887
+ 'O contexto indica recursos com banco de dados (endpoint MCP remoto recomendado).',
888
+ reason_web_search: 'Util para avaliacao de pacotes e verificacao de release notes.',
889
+ reason_chain_rpc_disabled: 'Web3 esta desabilitado para este projeto.',
890
+ reason_chain_rpc_enabled: 'Contexto dApp detectado; acesso RPC de chain e necessario.',
891
+ note_workspace_local: 'Este e um preset local de workspace gerado pelo AIOSON.',
892
+ note_replace_placeholders:
893
+ 'Substitua comandos placeholder pelos servidores MCP que voce realmente usa.',
894
+ note_keep_secrets_env:
895
+ 'Mantenha segredos em variaveis de ambiente, nunca inline tokens.',
896
+ generated: 'Plano MCP escrito: {path}',
897
+ dry_run_generated: '[dry-run] Plano MCP seria escrito: {path}',
898
+ server_count: 'Servidores MCP no plano: {count}',
899
+ preset_count: 'Presets de ferramentas gerados: {count}',
900
+ preset_written: 'Preset escrito ({tool}): {path}',
901
+ preset_dry_run: '[dry-run] Preset seria escrito ({tool}): {path}'
902
+ },
903
+ mcp_doctor: {
904
+ prefix_ok: 'OK',
905
+ prefix_warn: 'AVISO',
906
+ prefix_fail: 'FALHA',
907
+ check_line: '[{prefix}] {id} - {message}',
908
+ hint_line: ' Dica: {hint}',
909
+ context_missing: 'project.context.md nao foi encontrado.',
910
+ context_missing_hint: 'Execute setup primeiro para validacao MCP orientada por contexto.',
911
+ context_parse_invalid: 'project.context.md nao pode ser parseado ({reason}).',
912
+ context_parse_invalid_hint:
913
+ 'Corrija a formatacao do contexto para habilitar validacao MCP por stack.',
914
+ context_ok: 'project.context.md esta disponivel e parseavel.',
915
+ plan_missing: 'Arquivo do plano MCP nao encontrado (.aioson/mcp/servers.local.json).',
916
+ plan_missing_hint: 'Execute: aioson mcp:init',
917
+ plan_invalid: 'JSON do plano MCP invalido: {error}',
918
+ plan_invalid_hint: 'Regenere o plano com: aioson mcp:init',
919
+ plan_ok: 'Arquivo do plano MCP presente e com JSON valido.',
920
+ plan_servers_ok: 'Plano MCP declara {count} definicao(oes) de servidor.',
921
+ plan_servers_missing: 'Plano MCP nao possui definicoes de servidor.',
922
+ plan_servers_hint: 'Regenere com: aioson mcp:init',
923
+ core_enabled: 'Servidor MCP core "{server}" esta habilitado.',
924
+ core_missing: 'Servidor MCP core "{server}" esta ausente ou desabilitado.',
925
+ core_missing_hint: 'Regenere e mantenha os servidores core basicos habilitados.',
926
+ presets_any_ok: '{count} arquivo(s) de preset MCP encontrado(s).',
927
+ presets_any_missing: 'Nenhum arquivo de preset MCP foi encontrado.',
928
+ presets_any_hint: 'Execute: aioson mcp:init',
929
+ presets_coverage_partial: 'Apenas {existing}/{total} presets de ferramentas estao presentes.',
930
+ presets_coverage_partial_hint:
931
+ 'Execute: aioson mcp:init (sem --tool) para gerar todos os presets.',
932
+ presets_coverage_full:
933
+ 'Todos os presets de ferramentas estao presentes (claude, codex, gemini, opencode).',
934
+ env_none_required: 'Nenhuma variavel de ambiente obrigatoria nos servidores MCP habilitados.',
935
+ env_missing: '{missing}/{total} variavel(is) de ambiente obrigatoria(s) ausente(s): {vars}',
936
+ env_missing_hint_strict: 'Defina as variaveis ausentes antes da execucao.',
937
+ env_missing_hint_relaxed:
938
+ 'Defina variaveis para prontidao total de runtime. Use --strict-env para falhar nesta checagem.',
939
+ env_all_present: 'Todas as variaveis obrigatorias estao disponiveis ({count}).',
940
+ compat_database_ok: 'Database MCP corresponde ao engine da stack de contexto ({engine}).',
941
+ compat_database_mismatch:
942
+ 'Database MCP nao corresponde completamente a stack de contexto ({engine}).',
943
+ compat_database_hint:
944
+ 'Regenere com: aioson mcp:init, ou ajuste manualmente o servidor de database.',
945
+ compat_web3_ok: 'MCP chain-rpc esta habilitado para contexto Web3.',
946
+ compat_web3_missing: 'Contexto Web3 detectado, mas chain-rpc MCP esta ausente ou desabilitado.',
947
+ compat_web3_missing_hint: 'Regenere com: aioson mcp:init',
948
+ compat_web3_unneeded: 'chain-rpc MCP esta habilitado, mas o contexto nao e Web3.',
949
+ compat_web3_unneeded_hint: 'Desabilite chain-rpc se nao for necessario.',
950
+ report_title: 'Relatorio MCP doctor: {path}',
951
+ summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.'
952
+ },
953
+ qa_doctor: {
954
+ prefix_ok: 'OK',
955
+ prefix_warn: 'AVISO',
956
+ prefix_fail: 'FALHA',
957
+ check_line: '[{prefix}] {id} - {message}',
958
+ hint_line: ' Dica: {hint}',
959
+ report_title: 'Relatorio QA doctor: {path}',
960
+ summary: 'Resumo: {passed} aprovados, {failed} falhas, {warnings} avisos.',
961
+ playwright_ok: 'Playwright esta instalado.',
962
+ playwright_missing: 'Pacote Playwright nao encontrado.',
963
+ playwright_missing_hint: 'Execute: npm install -g playwright && npx playwright install chromium',
964
+ chromium_ok: 'Binario do Chromium encontrado.',
965
+ chromium_missing: 'Binario do Chromium nao encontrado.',
966
+ chromium_missing_hint: 'Execute: npx playwright install chromium',
967
+ config_ok: 'aios-qa.config.json encontrado e valido.',
968
+ config_missing: 'aios-qa.config.json nao encontrado.',
969
+ config_missing_hint: 'Execute: aioson qa:init --url=<url-da-sua-app>',
970
+ config_invalid: 'aios-qa.config.json nao e um JSON valido: {error}',
971
+ url_ok: 'URL de destino acessivel ({url}).',
972
+ url_missing: 'Nenhuma URL configurada em aios-qa.config.json.',
973
+ url_missing_hint: 'Execute: aioson qa:init --url=<url-da-sua-app>',
974
+ url_unreachable: 'URL de destino inacessivel ({url}): {error}',
975
+ url_unreachable_hint: 'Inicie sua aplicacao antes de executar qa:run ou qa:scan.',
976
+ context_ok: 'project.context.md encontrado testes serao enriquecidos com o contexto do projeto.',
977
+ context_missing: 'project.context.md nao encontrado executando em modo generico.',
978
+ prd_ok: 'prd.md encontrado {count} criterios de aceite mapeados como cenarios de teste.',
979
+ prd_missing: 'prd.md nao encontrado — mapeamento de cobertura AC sera ignorado.'
980
+ },
981
+ qa_init: {
982
+ context_found: 'Contexto encontrado: projeto={name}, url={url}',
983
+ prd_found: 'prd.md encontrado {count} criterios de aceite extraidos como cenarios de teste.',
984
+ prd_missing: 'prd.md nao encontrado nenhum cenario AC gerado. Adicione prd.md para enriquecer os testes.',
985
+ generated: 'Configuracao QA escrita: {path}',
986
+ dry_run_generated: '[dry-run] Configuracao QA seria escrita: {path}',
987
+ scenarios_count: 'Cenarios de teste do prd.md: {count}',
988
+ personas_count: 'Personas habilitadas: {count} (naive, hacker, power, mobile)',
989
+ probes_count: 'Sondas de seguranca habilitadas: {count}',
990
+ next_steps: 'Proximos passos:',
991
+ step_doctor: '1. Verificar pre-requisitos: aioson qa:doctor',
992
+ step_run: '2. Executar testes no browser: aioson qa:run'
993
+ },
994
+ qa_run: {
995
+ playwright_missing: 'Playwright nao instalado. Execute: npm install -g playwright && npx playwright install chromium',
996
+ config_missing: 'aios-qa.config.json nao encontrado. Execute: aioson qa:init --url=<url-da-sua-app>',
997
+ url_missing: 'Nenhuma URL configurada. Adicione url ao aios-qa.config.json ou use --url=<app-url>.',
998
+ starting: 'Iniciando sessao de QA no browser: {url}',
999
+ persona_start: 'Executando persona: {persona}',
1000
+ persona_done: 'Persona "{persona}" concluida — {count} finding(s)',
1001
+ accessibility: 'Executando auditoria de acessibilidade...',
1002
+ performance: 'Capturando metricas de performance...',
1003
+ ac_scenarios: 'Documentando cobertura de AC...',
1004
+ done: 'Sessao de QA concluida.',
1005
+ report_written: 'Relatorio escrito: {path}',
1006
+ json_written: 'Relatorio JSON escrito: {path}',
1007
+ screenshots_dir: 'Screenshots salvos em: {path}',
1008
+ findings_summary: 'Findings: {critical} critico(s), {high} alto(s), {medium} medio(s), {low} baixo(s)',
1009
+ html_report_written: 'Relatorio HTML escrito: {path}'
1010
+ },
1011
+ qa_scan: {
1012
+ playwright_missing: 'Playwright nao instalado. Execute: npm install -g playwright && npx playwright install chromium',
1013
+ config_missing: 'aios-qa.config.json nao encontrado. Execute: aioson qa:init --url=<url-da-sua-app>',
1014
+ url_missing: 'Nenhuma URL configurada. Adicione url ao aios-qa.config.json ou use --url=<app-url>.',
1015
+ starting: 'Iniciando scan autonomo: {url}',
1016
+ crawling: 'Rastreando rotas (profundidade max {depth}, max {pages} paginas)...',
1017
+ routes_found: 'Rotas descobertas: {count}',
1018
+ scanning_route: 'Escaneando: {route}',
1019
+ done: 'Scan autonomo concluido.',
1020
+ report_written: 'Relatorio escrito: {path}',
1021
+ findings_summary: 'Findings: {critical} critico(s), {high} alto(s), {medium} medio(s), {low} baixo(s)',
1022
+ html_report_written: 'Relatorio HTML escrito: {path}'
1023
+ },
1024
+ qa_report: {
1025
+ not_found: 'Nenhum relatorio QA encontrado. Execute: aioson qa:run ou aioson qa:scan',
1026
+ html_report_written: 'Relatorio HTML escrito: {path}'
1027
+ },
1028
+ harness: {
1029
+ init_success: 'Harness inicializado para a feature: {slug}',
1030
+ init_exists: 'Harness ja inicializado em {path}',
1031
+ contract_not_found: 'Contrato nao encontrado para o slug: {slug}',
1032
+ validating: 'Validando harness para {slug}...',
1033
+ blocked: 'Execucao pausada: {reason}',
1034
+ init_dry_run: '[dry-run] Inicializaria harness para {slug}'
1035
+ },
1036
+ web_map: {
1037
+ url_missing: 'Opcao obrigatoria ausente: --url=<url>.',
1038
+ starting: 'Mapeando site: {url}',
1039
+ pages_found: 'Paginas descobertas: {count}',
1040
+ page_line: '- {url} | profundidade={depth} | status={status} | links={links}',
1041
+ done: 'Mapa web concluido.',
1042
+ failed: 'Falha no mapa web: {error}'
1043
+ },
1044
+ web_scrape: {
1045
+ url_missing: 'Opcao obrigatoria ausente: --url=<url>.',
1046
+ invalid_format: 'Valor invalido para --format: {format}. Use markdown, text, html ou links.',
1047
+ fetching: 'Buscando pagina: {url}',
1048
+ title_line: 'Titulo: {title}',
1049
+ status_line: 'Status: {status} | Content-Type: {type}',
1050
+ done: 'Web scrape concluido ({format}).',
1051
+ failed: 'Falha no web scrape: {error}'
1052
+ },
1053
+ config: {
1054
+ usage_error:
1055
+ 'Uso: aioson config <set KEY=value|show|get KEY> [--json] [--locale=pt-BR]',
1056
+ set_ok: 'Chave configurada: {key} (salva em {path})',
1057
+ show_header: 'Config global: {path}',
1058
+ show_empty: ' (nenhuma chave configurada)',
1059
+ show_line: ' {key} = {value}',
1060
+ get_line: '{key} = {value}',
1061
+ key_not_found: 'Chave nao encontrada: {key}'
1062
+ },
1063
+ runtime: {
1064
+ option_required: 'Opcao obrigatoria ausente: {option}',
1065
+ store_missing:
1066
+ 'Runtime store nao encontrado: {path}. Execute: aioson runtime:init',
1067
+ init_ok: 'Runtime store inicializado: {path}',
1068
+ ingest_ok: 'Conteudos indexados no runtime: {indexed} | ignorados: {skipped} ({path})',
1069
+ task_start_ok: 'Task iniciada: {task} ({path})',
1070
+ start_ok: 'Execucao iniciada: {run} ({path})',
1071
+ update_ok: 'Execucao atualizada: {run} ({path})',
1072
+ task_finish_ok: 'Task concluida: {task} ({path})',
1073
+ finish_ok: 'Execucao concluida: {run} ({path})',
1074
+ task_fail_ok: 'Task marcada como falha: {task} ({path})',
1075
+ fail_ok: 'Execucao marcada como falha: {run} ({path})',
1076
+ log_ok: 'Evento registrado: {agent} / {run} ({path})',
1077
+ log_finish_ok: 'Execucao encerrada: {agent} / {run} ({path})',
1078
+ log_agent_required: 'Opcao obrigatoria ausente: --agent',
1079
+ status_title: 'Status do runtime: {path}',
1080
+ status_db: 'Banco: {path}',
1081
+ status_task_counts:
1082
+ 'Tasks -> Fila: {queued} | Rodando: {running} | Concluidas: {completed} | Falhas: {failed}',
1083
+ status_counts:
1084
+ 'Runs -> Fila: {queued} | Rodando: {running} | Concluidas: {completed} | Falhas: {failed}',
1085
+ status_no_active_tasks: 'Nenhuma task ativa.',
1086
+ status_active_tasks_title: 'Tasks ativas:',
1087
+ status_active_task_line: '- {task} | squad: {squad} | status: {status} | trabalho: {title}',
1088
+ status_no_active: 'Nenhuma execucao ativa de agente.',
1089
+ status_active_title: 'Execucoes ativas:',
1090
+ status_active_line: '- {agent} | squad: {squad} | status: {status} | trabalho: {title}',
1091
+ status_live_sessions_title: 'Sessoes vivas ativas:',
1092
+ status_live_session_line: '- {task} | agente: {agent} | status: {status} | plano: {plan} | micro: {micro} | handoffs: {handoffs} | trabalho: {title}',
1093
+ status_micro_tasks_title: 'Micro-tarefas ativas:',
1094
+ status_micro_task_line: '- {task} | pai: {parent} | status: {status} | trabalho: {title}',
1095
+ status_handoffs_title: 'Handoffs recentes:',
1096
+ status_handoff_line: '- {created} | {from} -> {to} | sessao: {session} | {message}'
1097
+ },
1098
+ live: {
1099
+ unsupported_tool: 'Ferramenta live nao suportada: {tool}. Ferramentas suportadas: {supported}',
1100
+ plan_not_found: 'Arquivo de plano nao encontrado: {plan}',
1101
+ no_active_session: 'Nenhuma sessao live ativa encontrada para {agent}.',
1102
+ session_not_active: 'A sessao live de {agent} nao esta ativa.',
1103
+ json_requires_no_launch: '--json requer --no-launch para live:start porque o lancamento em primeiro plano e interativo.',
1104
+ tool_binary_not_found: 'Binario da ferramenta nao encontrado no PATH: {binary}',
1105
+ tool_mismatch: 'A sessao ativa usa a ferramenta "{existing}" mas --tool={requested} foi informado. Encerre a sessao primeiro ou use a mesma ferramenta.',
1106
+ micro_task_already_open: 'Uma micro-tarefa live ja esta aberta para {agent}. Emita task_completed antes de task_started novamente.',
1107
+ handoff_same_agent: 'live:handoff requer valores diferentes para --agent e --to.',
1108
+ handoff_agent_mismatch: 'Nenhuma sessao live ativa encontrada para {agent}.',
1109
+ watch_json_conflict: '--watch nao pode ser combinado com --json.',
1110
+ no_session_found: 'Nenhuma sessao live encontrada.',
1111
+ no_session_for_agent: 'Nenhuma sessao live encontrada para {agent}.',
1112
+ session_already_closed: 'A sessao live {session} ja esta encerrada.',
1113
+ session_already_active: 'Sessao live ja ativa: {agent} | sessao: {session} | run: {runKey} ({dbPath})',
1114
+ session_started: 'Sessao live iniciada: {agent} | ferramenta: {tool} | sessao: {session} ({dbPath})',
1115
+ event_recorded: 'Evento live registrado: {agent} | {eventType} | {session} ({dbPath})',
1116
+ handoff_recorded: 'Handoff live registrado: {from} -> {to} | {session} ({dbPath})',
1117
+ session_closed: 'Sessao live encerrada: {agent} | {session} ({dbPath})',
1118
+ process_dead_warning: 'O processo morreu enquanto a sessao live ainda esta aberta. Encerre manualmente com `aioson live:close . --status=failed`.',
1119
+ tmux_not_found: 'tmux nao encontrado. Instale tmux para usar --tmux, ou remova a flag para continuar sem split de terminal.',
1120
+ tmux_starting: 'Iniciando sessao tmux: agente {agent} | ferramenta {tool} ...',
1121
+ tmux_recreate: 'Sessao tmux anterior encerrada. Recriando sessao live para {agent} ({session})...',
1122
+ tmux_reattach: 'Sessao tmux ainda ativa. Reanexando a {agent} ({session})...',
1123
+ list_title: 'Sessoes live ({count}):',
1124
+ list_empty: 'Nenhuma sessao live encontrada.',
1125
+ list_line: '- {session} | {agent} | {tool} | {phase} | {updatedAt}'
1126
+ },
1127
+ squad_status: {
1128
+ no_squad: 'Nenhum squad encontrado.',
1129
+ hint: 'Use @squad na sua sessao de IA para montar um squad.',
1130
+ squads_found: '{count} squad(s) encontrados:',
1131
+ most_recent: '(mais recente)',
1132
+ squad_item: ' [{file}]{marker}',
1133
+ name: ' Squad : {value}',
1134
+ mode: ' Modo : {value}',
1135
+ goal: ' Objetivo : {value}',
1136
+ agents: ' Agentes : {specialists} especialistas / {total} total ({path})',
1137
+ sessions: ' Sessoes : {count} ({path})',
1138
+ latest_html: ' Latest HTML : {value}',
1139
+ logs: ' Logs : {count} ({path})',
1140
+ genomes: ' Genomes : {count} no squad / {agent_count} vinculos por agente',
1141
+ model_tiers: ' Model Tiers : {value}',
1142
+ estimated_cost: ' Custo Est. : ~${value}/run'
1143
+ },
1144
+ squad_agent_create: {
1145
+ no_name: 'Uso: aioson squad:agent-create [path] --name=<nome-agente> [--type=agent|assistant|clone|worker] [--scope=my-agents|squad] [--squad=<slug>]',
1146
+ invalid_scope: 'Escopo inválido: "{scope}". Use "my-agents" ou "squad".',
1147
+ invalid_type: 'Tipo inválido: "{type}". Use: agent, assistant, clone, worker.',
1148
+ invalid_tier: 'Tier inválido: "{tier}". Use: 0 (foundation), 1 (master), 2 (systematizer), 3 (specialist).',
1149
+ invalid_disc: 'Perfil DISC inválido: "{disc}".',
1150
+ no_squads: 'Nenhuma squad encontrada. Crie uma squad com @squad ou forneça --squad=<slug>.',
1151
+ squad_required: '--squad=<slug> obrigatório quando scope é "squad".',
1152
+ squad_not_found: 'Squad "{squad}" não encontrada.',
1153
+ already_exists: 'Agente existe: {path}'
1154
+ },
1155
+ squad_doctor: {
1156
+ prefix_ok: 'OK',
1157
+ prefix_warn: 'AVISO',
1158
+ prefix_fail: 'FALHA',
1159
+ report_title: 'Relatorio da squad {squad}: {path}',
1160
+ check_line: '[{prefix}] {message}',
1161
+ check_metadata: 'Metadata da squad presente: {path}',
1162
+ check_manifest: 'Manifesto da squad presente: {path}',
1163
+ check_rules: 'Rules/agents.md presente: {path}',
1164
+ check_design_doc: 'Design doc da squad: {path}',
1165
+ check_readiness: 'Readiness da squad: {path}',
1166
+ check_executors: 'Executores declarados: {count} | arquivos ausentes: {missing}',
1167
+ check_output_dir: 'Diretorio de output da squad: {path}',
1168
+ check_media_dir: 'Diretorio de media da squad: {path}',
1169
+ check_runtime_missing: 'Runtime store ausente. Execute aioson runtime:init.',
1170
+ check_active_runs: 'Runs ativas: {count} | possivelmente travadas (> {minutes} min): {stale}',
1171
+ check_content_indexing: 'Conteudos indexados: {indexed} | arquivos pendentes de indexacao: {pending}',
1172
+ summary: 'Resumo -> checks OK: {passed} | avisos: {warned} | falhas: {failed}'
1173
+ },
1174
+ scan_project: {
1175
+ scanning: 'aioson scan:project — escaneando {dir}',
1176
+ folder_required:
1177
+ 'Informe --folder=<pasta[,pasta2]> para gerar o mapa completo das pastas desejadas. Exemplo: --folder=src ou --folder=app.',
1178
+ folder_required_examples_title: '\x1b[33mGuia rapido:\x1b[0m',
1179
+ folder_required_example_local:
1180
+ ' Mapas locais : aioson scan:project . --folder=src',
1181
+ folder_required_example_multi:
1182
+ ' Varias pastas : aioson scan:project . --folder=src,app',
1183
+ folder_required_example_llm:
1184
+ ' API automatica : aioson scan:project . --folder=src --with-llm --provider=openai',
1185
+ folder_required_example_cli:
1186
+ ' Sem API LLM : aioson scan:project . --folder=src -> depois execute @analyst no seu Codex/Claude/Gemini',
1187
+ folder_required_example_prompt:
1188
+ ' Prompt pronto : aioson agent:prompt analyst --tool=codex',
1189
+ folder_required_example_next:
1190
+ ' Workflow apos scan completo: @analyst -> @architect -> @dev',
1191
+ folder_not_found: 'A pasta "{folder}" nao foi encontrada neste projeto. Pastas de nivel superior detectadas: {available}',
1192
+ config_missing: '{file} nao encontrado. Para usar o modo com LLM, copie aioson-models.json e preencha suas chaves de API.',
1193
+ config_invalid: 'JSON invalido em aioson-models.json: {error}',
1194
+ provider_missing: 'Provider de LLM "{provider}" nao encontrado em aioson-models.json. Disponiveis: {available}',
1195
+ provider_info: ' Provider : {provider}',
1196
+ model_info: ' Modelo : {model}',
1197
+ context_found: ' Contexto : project.context.md encontrado',
1198
+ context_missing: ' Contexto : project.context.md nao encontrado (execute aioson setup:context primeiro)',
1199
+ spec_found: ' Spec : spec.md encontrado — memoria de desenvolvimento incluida',
1200
+ existing_discovery_found: ' Contexto : discovery.md existente encontrado em {path}',
1201
+ existing_skeleton_found: ' Contexto : skeleton-system.md existente encontrado em {path}',
1202
+ context_update_mode: ' Modo : update/merge do contexto existente ativado para discovery.md + skeleton-system.md',
1203
+ context_mode: ' Contexto : context-mode={mode} (padrao recomendado para brownfield: merge)',
1204
+ local_only: ' LLM : desativada por padrao — scan local apenas (use --with-llm para gerar discovery.md + skeleton-system.md)',
1205
+ walking: ' Escaneando estrutura do projeto...',
1206
+ walk_done: ' Arquivos : {files} entradas mapeadas | Arquivos chave: {keys} lidos',
1207
+ index_written: ' Indice : scan local escrito em {path} (modo: {mode})',
1208
+ folders_written: ' Pastas : mapa de pastas escrito em {path}',
1209
+ folder_written: ' Pasta : mapa completo de {folder} escrito em {path}',
1210
+ forge_written: ' AIOS : mapa util do .aioson escrito em {path}',
1211
+ memory_index_written: ' Memoria : memory-index.md escrito em {path}',
1212
+ spec_current_written: ' Memoria : spec-current.md escrito em {path}',
1213
+ spec_history_written: ' Memoria : spec-history.md escrito em {path}',
1214
+ module_memory_written: ' Modulo : memoria focada de {folder} escrita em {path}',
1215
+ dry_run_done: '[dry-run] Escanearia {treeCount} entradas e {keyCount} arquivos chave — nenhuma chamada LLM feita.',
1216
+ local_done: ' Resultado: scan local concluido — index, mapa de pastas, scans solicitados e .aioson estao prontos.',
1217
+ local_missing: ' Falta : discovery.md + skeleton-system.md ainda nao foram gerados neste scan local.',
1218
+ architecture_note: ' Nota : architecture.md nao e gerado pelo scan:project; esse arquivo vem depois com @architect.',
1219
+ local_paths_title: '\n\x1b[33m Como gerar o discovery agora:\x1b[0m',
1220
+ local_path_api: ' \x1b[32mCaminho A API automatica\x1b[0m',
1221
+ calling_llm: ' Chamando {provider} ({model})...',
1222
+ llm_missing_api_key:
1223
+ 'A chave de API do provider "{provider}" ainda nao foi configurada em {file}. Preencha providers.{provider}.api_key ou escolha outro provider com --provider=...',
1224
+ llm_error: 'Chamada LLM falhou: {error}',
1225
+ gitignore_policy_written:
1226
+ ' Gitignore: politica do AIOSON atualizada em {path} para ignorar arquivos gerenciados do framework',
1227
+ gitignore_tracked_note:
1228
+ ' Gitignore: se esses arquivos ja estavam rastreados pelo Git antes, ainda sera preciso remover do indice uma vez com git rm --cached para eles pararem de aparecer no status',
1229
+ invalid_llm_output_discovery_empty:
1230
+ 'A LLM retornou discovery.md vazio. Nenhum arquivo existente foi sobrescrito. Mantenha o backup atual e tente um modelo mais forte ou menos pastas por execucao.',
1231
+ invalid_llm_output_skeleton_empty:
1232
+ 'A LLM retornou skeleton-system.md vazio apos o delimitador. Nenhum arquivo existente foi sobrescrito. Tente novamente com um modelo mais forte ou um escopo menor.',
1233
+ gitignore_backups_written: ' Gitignore: backup local garantido em {path}',
1234
+ backups_written: ' Backup : {count} arquivo(s) salvo(s) em {path}',
1235
+ discovery_written: 'discovery.md escrito: {path} ({chars} chars)',
1236
+ skeleton_written: 'skeleton-system.md escrito: {path} ({chars} chars)',
1237
+ skeleton_missing: 'Delimitador skeleton nao encontrado na resposta LLM — skeleton-system.md nao escrito.',
1238
+ local_next_steps: ' 1. Rode: aioson scan:project {target} --folder={folders} --with-llm --provider=<provider>',
1239
+ local_path_cli: ' \x1b[36mCaminho B — Seu AI CLI (sem API no aioson)\x1b[0m',
1240
+ local_cli_step_analyst: ' 2. No Codex, Claude Code ou outro cliente, execute @analyst — ele pode usar scan-index.md + scan-folders.md + scan-<pasta>.md para escrever discovery.md',
1241
+ local_cli_step_prompt_codex: ' 3. Se o cliente nao entender @analyst, gere um prompt pronto: aioson agent:prompt analyst --tool=codex',
1242
+ local_cli_step_prompt_claude: ' 4. Troque --tool=codex por --tool=claude ou --tool=gemini quando necessario',
1243
+ local_cli_step_model_hint: ' 5. Se seu cliente permitir escolher modelo, prefira um modelo rapido/barato para esta etapa de discovery',
1244
+ local_workflow_title: '\n\x1b[33m Depois do discovery:\x1b[0m',
1245
+ local_step_architect: ' 3. Execute @architect gera architecture.md a partir do discovery consolidado',
1246
+ local_step_dev: ' 4. Execute @dev — use codigo somente depois de discovery.md + architecture.md estarem prontos',
1247
+ next_steps: '\n Proximos passos:',
1248
+ step_analyst: ' 1. Abra sua sessao de IA e execute @analyst — revisa discovery.md + skeleton-system.md e consolida o escopo atual',
1249
+ step_architect: ' 2. Execute @architect — gera architecture.md a partir do discovery consolidado',
1250
+ step_dev: ' 3. Execute @dev — le skeleton-system.md primeiro, depois discovery.md + architecture.md + spec.md'
1251
+ },
1252
+ squad_investigate: {
1253
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1254
+ no_investigations: 'Nenhuma investigacao encontrada.',
1255
+ not_found: 'Investigacao nao encontrada: {slug}',
1256
+ no_report: 'Investigacao "{slug}" nao possui arquivo de relatorio.',
1257
+ report_missing: 'Arquivo de relatorio nao encontrado: {path}',
1258
+ show_usage: 'Uso: aioson squad:investigate [path] --sub=show --investigation=<slug>',
1259
+ score_usage: 'Uso: aioson squad:investigate [path] --sub=score --investigation=<slug>',
1260
+ link_usage: 'Uso: aioson squad:investigate [path] --sub=link --investigation=<slug> --squad=<slug>',
1261
+ register_usage: 'Uso: aioson squad:investigate [path] --sub=register --report=<caminho> [--domain=<nome>] [--squad=<slug>]',
1262
+ linked: 'Investigacao "{investigation}" vinculada ao squad "{squad}".',
1263
+ registered: 'Investigacao registrada: {slug} ({path})',
1264
+ unknown_sub: 'Subcomando desconhecido: {sub}. Use: list, show, score, link, register.'
1265
+ },
1266
+ squad_daemon: {
1267
+ squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1268
+ started: 'Daemon iniciado para squad "{squad}" na porta {port} ({workers} workers, {cron} cron jobs)',
1269
+ webhook_hint: 'Endpoint webhook: POST http://127.0.0.1:{port}/webhook/<worker-slug>',
1270
+ stop_hint: 'Pressione Ctrl+C para parar.',
1271
+ stopping: 'Parando daemon...',
1272
+ start_failed: 'Falha ao iniciar daemon: {error}',
1273
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1274
+ no_daemons: 'Nenhum registro de daemon encontrado.',
1275
+ not_found: 'Nenhum registro de daemon para o squad: {squad}',
1276
+ not_running: 'O daemon do squad "{squad}" nao esta rodando.',
1277
+ signal_sent: 'SIGTERM enviado ao daemon de "{squad}" (pid {pid}).',
1278
+ process_gone: 'O processo do daemon de "{squad}" nao esta mais rodando.',
1279
+ no_logs: 'Nenhum log de atividade do daemon encontrado.',
1280
+ unknown_sub: 'Subcomando desconhecido: {sub}. Use: start, status, stop, logs.'
1281
+ },
1282
+
1283
+ squad_mcp: {
1284
+ squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1285
+ connectors_title: 'Conectores MCP Integrados:',
1286
+ actions: 'Acoes',
1287
+ required_config: 'Obrigatorio',
1288
+ no_integrations: 'Nenhuma integracao configurada para o squad "{squad}".',
1289
+ missing_config: 'Config ausente',
1290
+ calls: 'Chamadas',
1291
+ mcp_required: 'Slug do MCP e obrigatorio. Use --mcp=<slug>.',
1292
+ connector_required: 'ID do conector e obrigatorio. Use --connector=<id>.',
1293
+ unknown_connector: 'Conector desconhecido: {connector}. Use --sub=connectors para listar.',
1294
+ configured: 'Integracao "{mcp}" configurada com conector "{connector}" (status: {status}).',
1295
+ still_missing: 'Ainda faltam env/config: {keys}',
1296
+ not_configured: 'Integracao "{mcp}" nao esta configurada.',
1297
+ test_missing: 'Integracao "{mcp}" tem config ausente: {keys}',
1298
+ test_ok: 'Integracao "{mcp}" ({connector}) config OK.',
1299
+ health_url: 'URL de health check: {url}',
1300
+ testing_connection: 'Testando conexao...',
1301
+ health_ok: 'Conexao OK (HTTP {statusCode})',
1302
+ health_error: 'Erro na conexao: {error}',
1303
+ health_skipped: 'Verificacao de saude nao disponivel para este connector',
1304
+ action_required: 'Slug da acao e obrigatorio. Use --action=<slug>.',
1305
+ invalid_input: 'JSON invalido. Forneca JSON valido com --input.',
1306
+ unknown_sub: 'Subcomando desconhecido: {sub}. Use: status, connectors, configure, test, call.'
1307
+ },
1308
+
1309
+ squad_roi: {
1310
+ squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1311
+ config_saved: 'Config de ROI salva para o squad "{squad}".',
1312
+ pricing_model: 'Modelo de precificacao',
1313
+ setup_fee: 'Taxa de implantacao',
1314
+ monthly_fee: 'Mensalidade',
1315
+ percentage: 'Percentual',
1316
+ contract: 'Contrato',
1317
+ metric_required: 'Chave e valor da metrica sao obrigatorios. Use --key=<nome> --value=<N>.',
1318
+ metric_saved: 'Metrica "{key}" = {value} salva para o squad "{squad}".',
1319
+ no_metrics: 'Nenhuma metrica encontrada para o squad "{squad}".',
1320
+ report_title: 'Relatorio de ROI {squad}',
1321
+ baseline: 'Baseline',
1322
+ actual: 'Atual',
1323
+ target: 'Meta',
1324
+ period: 'Periodo',
1325
+ cost_section: 'Resumo de Custos:',
1326
+ monthly_cost: 'Custo mensal efetivo',
1327
+ exported: 'Relatorio exportado para {file} ({format}).',
1328
+ unknown_sub: 'Subcomando desconhecido: {sub}. Use: config, metric, report, export.'
1329
+ },
1330
+
1331
+ squad_worker: {
1332
+ squad_required: 'Slug do squad e obrigatorio. Use --squad=<slug>.',
1333
+ no_workers: 'Nenhum worker encontrado para este squad.',
1334
+ run_usage: 'Uso: aioson squad:worker --sub=run --squad=<slug> --worker=<slug> [--input=<json>]',
1335
+ test_usage: 'Uso: aioson squad:worker --sub=test --squad=<slug> --worker=<slug>',
1336
+ scaffold_usage: 'Uso: aioson squad:worker --sub=scaffold --squad=<slug> --worker=<slug> [--trigger=manual|event|scheduled]',
1337
+ not_found: 'Worker nao encontrado: {worker}',
1338
+ invalid_input: 'JSON invalido. Forneca JSON valido com --input.',
1339
+ run_success: 'Worker "{worker}" concluido com sucesso.',
1340
+ run_failed: 'Worker "{worker}" falhou: {error}',
1341
+ test_passed: 'Worker "{worker}" teste aprovado.',
1342
+ test_failed: 'Worker "{worker}" teste falhou: {error}',
1343
+ scaffold_created: 'Worker "{worker}" criado em {path}',
1344
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1345
+ no_logs: 'Nenhuma execucao de worker encontrada.',
1346
+ unknown_sub: 'Subcomando desconhecido: {sub}. Use: list, run, test, logs, scaffold.'
1347
+ },
1348
+
1349
+ squad_dashboard: {
1350
+ started: 'Squad Dashboard rodando em {url} (porta {port})',
1351
+ filtered: 'Filtrando para squad: {squad}',
1352
+ stop_hint: 'Pressione Ctrl+C para parar.',
1353
+ stopping: 'Parando Squad Dashboard...',
1354
+ port_in_use: 'Porta {port} ja esta em uso. Tente --port=<outra>'
1355
+ },
1356
+ implementation_plan: {
1357
+ not_found: 'Plano de implementacao nao encontrado: {file}',
1358
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1359
+ no_plans: 'Nenhum plano de implementacao registrado.',
1360
+ no_created_date: 'Plano nao possui data de criacao no frontmatter — nao e possivel verificar obsolescencia.',
1361
+ is_stale: 'Plano esta OBSOLETO — artefatos fonte foram alterados apos a criacao do plano.',
1362
+ is_fresh: 'Plano esta atualizado.',
1363
+ checkpoint_usage: 'Uso: aioson plan [path] --sub=checkpoint --feature=<slug> --phase=<N>',
1364
+ phase_completed: 'Fase {phase} marcada como concluida.',
1365
+ phase_not_found: 'Fase {phase} nao encontrada no plano.',
1366
+ registered: 'Plano de implementacao registrado: {planId} ({phases} fases)'
1367
+ },
1368
+ squad_plan: {
1369
+ slug_required: 'Slug do squad e obrigatorio.',
1370
+ not_found: 'Plano de execucao nao encontrado para o squad: {slug}',
1371
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1372
+ no_plan: 'Nenhum plano de execucao registrado para o squad: {slug}',
1373
+ no_created_date: 'Plano nao possui data de criacao no frontmatter — nao e possivel verificar obsolescencia.',
1374
+ is_stale: 'Plano de execucao esta OBSOLETO — artefatos do squad foram alterados apos a criacao do plano.',
1375
+ is_fresh: 'Plano de execucao esta atualizado.',
1376
+ checkpoint_usage: 'Uso: aioson squad:plan [path] --sub=checkpoint --squad=<slug> --round=<N>',
1377
+ round_completed: 'Round {round} marcado como concluido.',
1378
+ round_not_found: 'Round {round} nao encontrado no plano.',
1379
+ registered: 'Plano de execucao registrado: {planSlug} ({rounds} rounds)'
1380
+ },
1381
+
1382
+ squad_learning: {
1383
+ slug_required: 'Slug do squad e obrigatorio.',
1384
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1385
+ no_learnings: 'Nenhum learning encontrado para o squad: {slug}',
1386
+ not_found: 'Learning nao encontrado: {id}',
1387
+ archived_count: '{count} learning(s) marcado(s) como obsoleto(s) para o squad: {slug}',
1388
+ promote_usage: 'Uso: aioson squad:learning [path] --sub=promote --squad=<slug> --id=<learning-id> [--to=<caminho-regra>]',
1389
+ promoted: 'Learning {id} promovido a regra em {path}'
1390
+ },
1391
+
1392
+ learning: {
1393
+ no_runtime: 'Runtime store nao encontrado. Execute aioson runtime:init primeiro.',
1394
+ no_learnings: 'Nenhum learning de projeto encontrado.',
1395
+ not_found: 'Learning nao encontrado: {id}',
1396
+ promote_usage: 'Uso: aioson learning [path] --sub=promote --id=<learning-id> [--to=<caminho-regra>]',
1397
+ promoted: 'Learning {id} promovido a regra em {path}'
1398
+ },
1399
+
1400
+ auth: {
1401
+ login_no_token: 'Nenhum token informado. Obtenha o seu em: {url}',
1402
+ login_hint: 'Execute: aioson auth:login',
1403
+ login_hint_token: 'Ou obtenha um token manualmente em: {url}',
1404
+ login_verifying: 'Verificando token...',
1405
+ login_ok: ' Autenticado como {username}. Token salvo em {path}.',
1406
+ login_saved: ' Token salvo em {path}. (Nao foi possivel verificar — API pode estar offline.)',
1407
+ logout_ok: 'Logout realizado. Token removido.',
1408
+ status_not_authenticated: 'Nao autenticado.',
1409
+ status_checking: 'Verificando token...',
1410
+ status_ok: 'Autenticado como {username}.',
1411
+ status_token_offline: 'Token salvo (ultimo usuario conhecido: {username}). API offline ou inacessivel.',
1412
+ // Fluxo browser (callback Mac/Windows nativos)
1413
+ browser_opening: 'Abrindo o browser...',
1414
+ browser_waiting: 'Aguardando autenticacao no browser... (Ctrl+C para cancelar)',
1415
+ browser_timeout: 'Tempo esgotado. Tente novamente.',
1416
+ browser_state_mismatch: 'Falha de seguranca: state invalido.',
1417
+ browser_no_token: 'Nenhum token recebido do browser.',
1418
+ browser_failed: 'Login via browser falhou: {error}',
1419
+ browser_server_error: 'Erro ao iniciar servidor local de callback',
1420
+ // Fluxo paste (WSL2, SSH, headless)
1421
+ paste_open_browser: 'Abra o link abaixo no seu navegador:',
1422
+ paste_instruction: 'Apos fazer login, a pagina exibira um token. Copie-o e cole aqui.',
1423
+ paste_token_prompt: 'Cole o token aqui:',
1424
+ paste_no_token: 'Nenhum token informado.',
1425
+ },
1426
+
1427
+ workspace: {
1428
+ registering: 'Registrando workspace no aioson.com...',
1429
+ init_ok: 'Workspace "{slug}" vinculado.\n Local: {path}\n Online: {url}',
1430
+ already_linked: 'Workspace ja vinculado: {slug}\n Online: {url}',
1431
+ not_linked: 'Nenhum workspace vinculado a este projeto.',
1432
+ init_hint: 'Execute: aioson workspace:init',
1433
+ status_slug: 'Workspace: {slug}',
1434
+ status_id: 'ID: {id}',
1435
+ status_url: 'URL: {url}',
1436
+ status_created: 'Criado em: {date}',
1437
+ open_url: 'Abra no navegador: {url}'
1438
+ },
1439
+
1440
+ store: {
1441
+ error_not_authenticated: 'Nao autenticado. Execute: aioson auth:login',
1442
+ error_missing_slug: 'Informe --slug.',
1443
+ error_missing_code_or_slug: 'Informe um slug (--slug=X) ou um codigo de instalacao.',
1444
+ error_invalid_response: 'Resposta invalida do aioson.com.',
1445
+ error_genome_not_found: 'Genome "{slug}" nao encontrado em {path}.',
1446
+ error_skill_not_found: 'Skill "{slug}" nao encontrada em .aioson/skills/ ou .aioson/installed-skills/.',
1447
+ error_skill_missing_skillmd: 'Skill "{slug}" nao tem SKILL.md.',
1448
+ error_squad_not_found: 'Squad "{slug}" nao encontrado em {path}.',
1449
+
1450
+ publish_dry_run: '[dry-run] Publicaria {type} "{slug}" (visibilidade: {visibility}).',
1451
+ publish_genome_validating: 'Validando genome...',
1452
+ publish_genome_sending: 'Enviando para aioson.com...',
1453
+ publish_genome_done: 'Publicado: aioson.com/store/genomes/{slug}\n Instalar: aioson genome:install --slug={slug}',
1454
+ publish_skill_collecting: 'Coletando arquivos da skill...',
1455
+ publish_skill_files: ' Arquivos: {count}',
1456
+ publish_skill_sending: 'Enviando {count} arquivo(s) para aioson.com...',
1457
+ publish_skill_done: 'Publicado: aioson.com/store/skills/{slug}\n Instalar: aioson skill:install --slug={slug}',
1458
+ publish_squad_analyzing_agents: 'Analisando agentes...',
1459
+ publish_squad_agents_found: ' Agentes: {count}',
1460
+ publish_squad_analyzing_deps: 'Analisando dependencias...',
1461
+ publish_squad_bundling_skill: ' Empacotando skill: {slug}',
1462
+ publish_squad_skill_missing: ' Skill nao encontrada (ignorada): {slug}',
1463
+ publish_squad_bundling_genome: ' Empacotando genome: {slug}',
1464
+ publish_squad_genome_missing: ' Genome nao encontrado (ignorado): {slug}',
1465
+ publish_squad_sending: 'Enviando para aioson.com...',
1466
+ publish_squad_done: 'Publicado: aioson.com/store/squads/{slug}\n Instalar: aioson squad:install --slug={slug}',
1467
+ publish_squad_summary: ' Agentes: {agents} | Skills empacotadas: {skills} | Genomes empacotados: {genomes}',
1468
+
1469
+ install_skill_fetching: 'Buscando skill "{ref}" no aioson.com...',
1470
+ install_skill_done: 'Skill "{slug}" instalada em {path}.',
1471
+ install_genome_fetching:'Buscando genome "{ref}" no aioson.com...',
1472
+ install_genome_done: 'Genome "{slug}" instalado em {path}.',
1473
+ install_backing_up: ' Backup salvo: {path}',
1474
+ install_squad_fetching: 'Buscando squad "{ref}" no aioson.com...',
1475
+ install_squad_writing: 'Instalando arquivos...',
1476
+ install_squad_dep_skip: ' {type} "{slug}" ja instalado — ignorando (use --force para substituir).',
1477
+ install_squad_done: 'Squad "{slug}" instalado em {path}.',
1478
+
1479
+ list_genome_empty: 'Nenhum genome instalado neste projeto.',
1480
+ list_genome_header: '{count} genome(s) instalado(s):',
1481
+ list_genome_item: ' {slug}{version}',
1482
+ list_genome_item_v2: ' {folderMarker} {advisorMarker} {slug} {name} {track}{fidelity}{advisor}',
1483
+ list_genome_conflict_warn: '⚠️ {slug}: ambos os formatos (pasta e arquivo único) existem; pasta tem precedência (rode "aioson genome:remove --slug={slug}" para limpar).',
1484
+ publish_genome_folder_collecting: 'Coletando arquivos do genome (Track 4.2/4.3 modular)...',
1485
+ publish_genome_folder_files: ' Arquivos: {count}',
1486
+ publish_genome_folder_track: ' Track: {track} · Fidelity: {fidelity} · Advisor-ready: {advisor}',
1487
+ publish_genome_folder_sending: 'Enviando {count} arquivo(s) para aioson.com (formato pasta)...',
1488
+ publish_genome_conflict_warn: '⚠️ {slug}: ambos os formatos existem localmente; pasta tem precedência no publish.',
1489
+ install_backing_up_legacy: ' Conflito com formato antigo detectado; backup em: {path}',
1490
+ install_folder_exists: ' Pasta existente em {path} será sobrescrita (use --force para suprimir este aviso).',
1491
+ install_genome_folder_done: 'Genome "{slug}" instalado em {path} ({count} arquivos, formato pasta).',
1492
+ error_genome_missing_skillmd: 'Pasta do genome "{slug}" não tem SKILL.md.',
1493
+ error_genome_missing_manifest: 'Pasta do genome "{slug}" não tem manifest.json.',
1494
+ error_genome_invalid_manifest: 'manifest.json do genome "{slug}" é inválido: {detail}',
1495
+ remove_genome_done: 'Genome "{slug}" removido.',
1496
+ list_remote_fetching: 'Buscando {type} no aioson.com...',
1497
+ list_remote_empty: 'Nenhum(a) {type} publicado(a) ainda.',
1498
+ list_remote_header: '{count} {type} publicado(s):',
1499
+ list_remote_item: ' {slug} [{visibility}] {name}',
1500
+ list_squad_empty: 'Nenhum squad neste projeto.',
1501
+ list_squad_header: '{count} squad(s):',
1502
+ list_squad_item: ' {slug} [{visibility}]',
1503
+
1504
+ grant_error_missing_code: 'Codigo ausente. Uso: aioson squad:grant <codigo> <email>',
1505
+ grant_error_missing_email: 'Email ausente. Uso: aioson squad:grant <codigo> <email>',
1506
+ grant_sending: 'Concedendo acesso a {email} para o codigo {code}...',
1507
+ grant_ok: '{email} agora pode instalar usando o codigo {code}.',
1508
+
1509
+ publish_scanning: 'Executando varredura de seguranca...',
1510
+ publish_scan_ok: 'Varredura de seguranca aprovada. Hash do pacote: {hash}...',
1511
+ error_scan_failed: 'Publicacao bloqueada: a varredura de seguranca encontrou erros. Corrija-os ou entre em contato com o suporte.',
1512
+ error_scan_warnings: 'Publicacao bloqueada: {count} padrao(oes) suspeito(s) detectado(s). Revise os avisos acima. Use --force se tiver certeza de que o pacote e seguro.',
1513
+
1514
+ install_scanning: 'Verificando integridade do pacote...',
1515
+ error_install_scan_failed: 'Instalacao bloqueada: o pacote "{slug}" falhou na varredura de seguranca. Pode ter sido adulterado.',
1516
+ error_hash_mismatch: 'Instalacao bloqueada: hash divergente para "{slug}". O pacote pode ter sido alterado em transito.',
1517
+
1518
+ install_preview_header: 'Pacote: {slug} v{version} por {publisher}',
1519
+ install_preview_trusted: ' Status: Publisher verificado',
1520
+ install_preview_unverified: ' Status: Publisher nao verificado \u2014 revise os arquivos antes de usar',
1521
+ install_preview_downloads: ' Downloads: {count}',
1522
+ install_preview_rating: ' Avaliacao: {rating}',
1523
+ install_preview_hash: ' Hash: {hash}...',
1524
+ install_inspect_files: 'Arquivos neste pacote ({count} no total):',
1525
+ install_inspect_hint: 'Execute sem --inspect para instalar.',
1526
+ install_unverified_hint: ' Dica: Use --inspect para revisar os arquivos antes de instalar, ou --force para ignorar este aviso.'
1527
+ },
1528
+
1529
+ system: {
1530
+ error_no_manifest: 'system.json nao encontrado em {path}. Crie um system.json no diretorio raiz do sistema.',
1531
+ error_invalid_manifest: 'system.json invalido — verifique se e um JSON valido.',
1532
+ error_manifest_missing_slug: 'system.json deve conter o campo "slug".',
1533
+ error_manifest_missing_version: 'system.json deve conter o campo "version".',
1534
+ error_manifest_missing_name: 'system.json deve conter o campo "name".',
1535
+ error_missing_package_json: 'package.json nao encontrado. Um sistema deve ser um projeto Node.js valido.',
1536
+
1537
+ package_reading_manifest: 'Lendo system.json...',
1538
+ package_manifest_ok: 'Sistema: {name} ({slug} v{version})',
1539
+ package_collecting_files: 'Coletando arquivos fonte...',
1540
+ package_files_found: ' {count} arquivos ({kb} KB)',
1541
+ package_dry_run: '[dry-run] Pacotaria {slug} v{version} — nenhum arquivo gravado.',
1542
+ package_saved: 'Pacote salvo em: {path}',
1543
+
1544
+ publish_reading_manifest: 'Lendo system.json...',
1545
+ publish_dry_run: '[dry-run] Publicaria sistema "{slug}" v{version} (visibilidade: {visibility}).',
1546
+ publish_sending: 'Enviando para aioson.com...',
1547
+ publish_done: 'Publicado: aioson.com/store/systems/{slug}\n Instalar no aioson-play usando o slug: {slug}',
1548
+ publish_summary: ' Arquivos: {files} ({kb} KB)',
1549
+
1550
+ list_remote_empty: 'Nenhum sistema publicado ainda.',
1551
+ list_remote_header: '{count} sistema(s) publicado(s):',
1552
+ list_remote_item: ' {slug} v{version} [{visibility}] {name}',
1553
+ list_local_empty: 'Nenhum sistema em cache neste projeto.',
1554
+ list_local_header: '{count} sistema(s) em cache:',
1555
+ list_local_item: ' {slug}',
1556
+
1557
+ install_fetching: 'Buscando sistema "{ref}" no aioson.com...',
1558
+ install_writing: 'Gravando arquivos...',
1559
+ install_done: 'Sistema "{slug}" instalado em {path}.'
1560
+ }
1561
+ };