@jaimevalasek/aioson 1.3.0 → 1.4.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 (213) hide show
  1. package/README.md +19 -2
  2. package/docs/pt/README.md +62 -2
  3. package/docs/pt/advisor-spec.md +5 -5
  4. package/docs/pt/agentes-customizados.md +670 -0
  5. package/docs/pt/agentes.md +111 -13
  6. package/docs/pt/automacao-squads.md +407 -0
  7. package/docs/pt/cenarios.md +3 -3
  8. package/docs/pt/clientes-ai.md +62 -0
  9. package/docs/pt/comandos-cli.md +167 -17
  10. package/docs/pt/deyvin.md +115 -0
  11. package/docs/pt/genome-3.0-spec.md +11 -11
  12. package/docs/pt/inicio-rapido.md +45 -0
  13. package/docs/pt/memoria-contexto.md +255 -0
  14. package/docs/pt/output-strategy-delivery.md +655 -0
  15. package/docs/pt/profiler-system.md +17 -17
  16. package/docs/pt/runtime-observability.md +5 -1
  17. package/docs/pt/skills.md +175 -0
  18. package/docs/pt/{squad-genoma.md → squad-genome.md} +81 -75
  19. package/docs/testing/genome-2.0-rollout.md +1 -1
  20. package/package.json +3 -3
  21. package/src/agents.js +21 -5
  22. package/src/backup-provider.js +303 -0
  23. package/src/cli.js +178 -2
  24. package/src/commands/agents.js +22 -4
  25. package/src/commands/backup.js +533 -0
  26. package/src/commands/cloud.js +17 -17
  27. package/src/commands/context-pack.js +45 -0
  28. package/src/commands/implementation-plan.js +340 -0
  29. package/src/commands/learning.js +134 -0
  30. package/src/commands/live.js +1583 -0
  31. package/src/commands/runtime.js +833 -2
  32. package/src/commands/scan-project.js +288 -24
  33. package/src/commands/setup-context.js +23 -0
  34. package/src/commands/skill.js +558 -0
  35. package/src/commands/squad-agent-create.js +788 -0
  36. package/src/commands/squad-doctor.js +51 -1
  37. package/src/commands/squad-investigate.js +261 -0
  38. package/src/commands/squad-learning.js +209 -0
  39. package/src/commands/squad-pipeline.js +247 -1
  40. package/src/commands/squad-plan.js +329 -0
  41. package/src/commands/squad-status.js +1 -1
  42. package/src/commands/squad-validate.js +57 -1
  43. package/src/commands/test-agents.js +6 -1
  44. package/src/commands/workflow-next.js +8 -1
  45. package/src/commands/workflow-status.js +250 -0
  46. package/src/constants.js +80 -16
  47. package/src/context-memory.js +837 -0
  48. package/src/context-writer.js +2 -0
  49. package/src/delivery-runner.js +319 -0
  50. package/src/genome-files.js +1 -1
  51. package/src/genome-format.js +1 -1
  52. package/src/i18n/messages/en.js +206 -7
  53. package/src/i18n/messages/es.js +123 -6
  54. package/src/i18n/messages/fr.js +122 -5
  55. package/src/i18n/messages/pt-BR.js +205 -12
  56. package/src/installer.js +30 -2
  57. package/src/lib/genomes/compat.js +1 -1
  58. package/src/runtime-store.js +780 -42
  59. package/src/session-handoff.js +77 -0
  60. package/template/.aioson/agents/analyst.md +36 -9
  61. package/template/.aioson/agents/architect.md +20 -5
  62. package/template/.aioson/agents/dev.md +135 -15
  63. package/template/.aioson/agents/deyvin.md +166 -0
  64. package/template/.aioson/agents/discovery-design-doc.md +25 -1
  65. package/template/.aioson/agents/{genoma.md → genome.md} +20 -20
  66. package/template/.aioson/agents/orache.md +371 -0
  67. package/template/.aioson/agents/orchestrator.md +37 -2
  68. package/template/.aioson/agents/pair.md +5 -0
  69. package/template/.aioson/agents/pm.md +17 -5
  70. package/template/.aioson/agents/product.md +58 -22
  71. package/template/.aioson/agents/profiler-enricher.md +1 -1
  72. package/template/.aioson/agents/profiler-forge.md +9 -9
  73. package/template/.aioson/agents/profiler-researcher.md +1 -1
  74. package/template/.aioson/agents/qa.md +17 -5
  75. package/template/.aioson/agents/setup.md +81 -5
  76. package/template/.aioson/agents/squad.md +675 -28
  77. package/template/.aioson/agents/ux-ui.md +277 -34
  78. package/template/.aioson/config.md +175 -0
  79. package/template/.aioson/context/spec.md.template +17 -0
  80. package/template/.aioson/genomes/.gitkeep +0 -0
  81. package/template/.aioson/installed-skills/.gitkeep +0 -0
  82. package/template/.aioson/locales/en/agents/analyst.md +26 -4
  83. package/template/.aioson/locales/en/agents/architect.md +10 -0
  84. package/template/.aioson/locales/en/agents/dev.md +89 -4
  85. package/template/.aioson/locales/en/agents/deyvin.md +129 -0
  86. package/template/.aioson/locales/en/agents/{genoma.md → genome.md} +14 -14
  87. package/template/.aioson/locales/en/agents/orchestrator.md +36 -2
  88. package/template/.aioson/locales/en/agents/pair.md +5 -0
  89. package/template/.aioson/locales/en/agents/pm.md +7 -0
  90. package/template/.aioson/locales/en/agents/product.md +35 -17
  91. package/template/.aioson/locales/en/agents/qa.md +7 -0
  92. package/template/.aioson/locales/en/agents/setup.md +51 -5
  93. package/template/.aioson/locales/en/agents/squad.md +203 -15
  94. package/template/.aioson/locales/en/agents/ux-ui.md +375 -35
  95. package/template/.aioson/locales/es/agents/analyst.md +16 -4
  96. package/template/.aioson/locales/es/agents/architect.md +10 -0
  97. package/template/.aioson/locales/es/agents/dev.md +70 -2
  98. package/template/.aioson/locales/es/agents/deyvin.md +89 -0
  99. package/template/.aioson/locales/es/agents/{genoma.md → genome.md} +13 -13
  100. package/template/.aioson/locales/es/agents/orache.md +103 -0
  101. package/template/.aioson/locales/es/agents/orchestrator.md +36 -2
  102. package/template/.aioson/locales/es/agents/pair.md +5 -0
  103. package/template/.aioson/locales/es/agents/pm.md +7 -0
  104. package/template/.aioson/locales/es/agents/product.md +13 -3
  105. package/template/.aioson/locales/es/agents/qa.md +7 -0
  106. package/template/.aioson/locales/es/agents/setup.md +28 -5
  107. package/template/.aioson/locales/es/agents/squad.md +221 -15
  108. package/template/.aioson/locales/es/agents/ux-ui.md +26 -25
  109. package/template/.aioson/locales/fr/agents/analyst.md +16 -4
  110. package/template/.aioson/locales/fr/agents/architect.md +10 -0
  111. package/template/.aioson/locales/fr/agents/dev.md +70 -2
  112. package/template/.aioson/locales/fr/agents/deyvin.md +89 -0
  113. package/template/.aioson/locales/fr/agents/{genoma.md → genome.md} +7 -7
  114. package/template/.aioson/locales/fr/agents/orache.md +104 -0
  115. package/template/.aioson/locales/fr/agents/orchestrator.md +36 -2
  116. package/template/.aioson/locales/fr/agents/pair.md +5 -0
  117. package/template/.aioson/locales/fr/agents/pm.md +7 -0
  118. package/template/.aioson/locales/fr/agents/product.md +13 -3
  119. package/template/.aioson/locales/fr/agents/qa.md +7 -0
  120. package/template/.aioson/locales/fr/agents/setup.md +28 -5
  121. package/template/.aioson/locales/fr/agents/squad.md +216 -10
  122. package/template/.aioson/locales/fr/agents/ux-ui.md +26 -25
  123. package/template/.aioson/locales/pt-BR/agents/analyst.md +26 -4
  124. package/template/.aioson/locales/pt-BR/agents/architect.md +10 -0
  125. package/template/.aioson/locales/pt-BR/agents/dev.md +93 -4
  126. package/template/.aioson/locales/pt-BR/agents/deyvin.md +129 -0
  127. package/template/.aioson/locales/pt-BR/agents/{genoma.md → genome.md} +49 -49
  128. package/template/.aioson/locales/pt-BR/agents/orache.md +137 -0
  129. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +36 -2
  130. package/template/.aioson/locales/pt-BR/agents/pair.md +5 -0
  131. package/template/.aioson/locales/pt-BR/agents/pm.md +7 -0
  132. package/template/.aioson/locales/pt-BR/agents/product.md +35 -17
  133. package/template/.aioson/locales/pt-BR/agents/qa.md +7 -0
  134. package/template/.aioson/locales/pt-BR/agents/setup.md +51 -5
  135. package/template/.aioson/locales/pt-BR/agents/squad.md +486 -47
  136. package/template/.aioson/locales/pt-BR/agents/ux-ui.md +361 -22
  137. package/template/.aioson/my-agents/.gitkeep +0 -0
  138. package/template/.aioson/rules/.gitkeep +0 -0
  139. package/template/.aioson/rules/squad/.gitkeep +0 -0
  140. package/template/.aioson/rules/squad/README.md +50 -0
  141. package/template/.aioson/schemas/genome-meta.schema.json +1 -1
  142. package/template/.aioson/schemas/genome.schema.json +1 -1
  143. package/template/.aioson/schemas/squad-blueprint.schema.json +11 -0
  144. package/template/.aioson/schemas/squad-manifest.schema.json +257 -1
  145. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +157 -0
  146. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +407 -0
  147. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +172 -0
  148. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +490 -0
  149. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +237 -0
  150. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +289 -0
  151. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +350 -0
  152. package/template/.aioson/skills/design/interface-design/SKILL.md +47 -0
  153. package/template/.aioson/skills/design/interface-design/references/components-and-states.md +105 -0
  154. package/template/.aioson/skills/design/interface-design/references/design-directions.md +101 -0
  155. package/template/.aioson/skills/design/interface-design/references/handoff-and-quality.md +71 -0
  156. package/template/.aioson/skills/design/interface-design/references/intent-and-domain.md +74 -0
  157. package/template/.aioson/skills/design/interface-design/references/tokens-and-depth.md +173 -0
  158. package/template/.aioson/skills/design/premium-command-center-ui/SKILL.md +62 -0
  159. package/template/.aioson/skills/design/premium-command-center-ui/references/operations.md +74 -0
  160. package/template/.aioson/skills/design/premium-command-center-ui/references/patterns.md +116 -0
  161. package/template/.aioson/skills/design/premium-command-center-ui/references/validation.md +47 -0
  162. package/template/.aioson/skills/design/premium-command-center-ui/references/visual-system.md +215 -0
  163. package/template/.aioson/skills/design-system/SKILL.md +92 -0
  164. package/template/.aioson/skills/design-system/cognitive-core-ui.skill +0 -0
  165. package/template/.aioson/skills/design-system/components/SKILL.md +274 -0
  166. package/template/.aioson/skills/design-system/components/SKILL.md:Zone.Identifier +0 -0
  167. package/template/.aioson/skills/design-system/dashboards/SKILL.md +184 -0
  168. package/template/.aioson/skills/design-system/dashboards/SKILL.md:Zone.Identifier +0 -0
  169. package/template/.aioson/skills/design-system/foundations/SKILL.md +250 -0
  170. package/template/.aioson/skills/design-system/foundations/SKILL.md:Zone.Identifier +0 -0
  171. package/template/.aioson/skills/design-system/motion/SKILL.md +197 -0
  172. package/template/.aioson/skills/design-system/motion/SKILL.md:Zone.Identifier +0 -0
  173. package/template/.aioson/skills/design-system/patterns/SKILL.md +231 -0
  174. package/template/.aioson/skills/design-system/patterns/SKILL.md:Zone.Identifier +0 -0
  175. package/template/.aioson/skills/squad/SKILL.md +58 -0
  176. package/template/.aioson/skills/squad/domains/.gitkeep +0 -0
  177. package/template/.aioson/skills/squad/formats/.gitkeep +0 -0
  178. package/template/.aioson/skills/squad/patterns/.gitkeep +0 -0
  179. package/template/.aioson/skills/squad/references/.gitkeep +0 -0
  180. package/template/.aioson/tasks/implementation-plan.md +288 -0
  181. package/template/.aioson/tasks/squad-create.md +1 -1
  182. package/template/.aioson/tasks/squad-execution-plan.md +279 -0
  183. package/template/.aioson/tasks/squad-export.md +1 -1
  184. package/template/.aioson/tasks/squad-investigate.md +44 -0
  185. package/template/.aioson/tasks/squad-learning-review.md +44 -0
  186. package/template/.aioson/tasks/squad-output-config.md +177 -0
  187. package/template/.aioson/tasks/squad-validate.md +1 -1
  188. package/template/.claude/commands/aioson/agent/deyvin.md +5 -0
  189. package/template/.claude/commands/aioson/agent/discovery-design-doc.md +5 -0
  190. package/template/.claude/commands/aioson/agent/genome.md +5 -0
  191. package/template/.claude/commands/aioson/agent/product.md +5 -0
  192. package/template/.claude/commands/aioson/agent/profiler-enricher.md +5 -0
  193. package/template/.claude/commands/aioson/agent/profiler-forge.md +5 -0
  194. package/template/.claude/commands/aioson/agent/profiler-researcher.md +5 -0
  195. package/template/.claude/commands/aioson/agent/squad.md +5 -0
  196. package/template/.gemini/GEMINI.md +2 -0
  197. package/template/.gemini/commands/aios-deyvin.toml +6 -0
  198. package/template/.gemini/commands/aios-pair.toml +6 -0
  199. package/template/AGENTS.md +34 -6
  200. package/template/CLAUDE.md +31 -4
  201. package/template/OPENCODE.md +6 -2
  202. package/template/squad-searches/.gitkeep +0 -0
  203. package/template/.aioson/skills/static/interface-design.md +0 -372
  204. package/template/.aioson/skills/static/premium-command-center-ui.md +0 -190
  205. /package/template/.aioson/{genomas → docs}/.gitkeep +0 -0
  206. /package/template/.claude/commands/aioson/{analyst.md → agent/analyst.md} +0 -0
  207. /package/template/.claude/commands/aioson/{architect.md → agent/architect.md} +0 -0
  208. /package/template/.claude/commands/aioson/{dev.md → agent/dev.md} +0 -0
  209. /package/template/.claude/commands/aioson/{orchestrator.md → agent/orchestrator.md} +0 -0
  210. /package/template/.claude/commands/aioson/{pm.md → agent/pm.md} +0 -0
  211. /package/template/.claude/commands/aioson/{qa.md → agent/qa.md} +0 -0
  212. /package/template/.claude/commands/aioson/{setup.md → agent/setup.md} +0 -0
  213. /package/template/.claude/commands/aioson/{ux-ui.md → agent/ux-ui.md} +0 -0
@@ -0,0 +1,279 @@
1
+ # Task: Squad Execution Plan
2
+
3
+ > Gera o plano de execução do squad após criação e validação.
4
+ > Define como os executors vão atacar o objetivo em sequência.
5
+ > Garante consistência entre executors, workflows, e checklists.
6
+
7
+ ## Quando usar
8
+ - Automaticamente após `@squad create` + `@squad validate` + warm-up (para squads qualificados)
9
+ - `@squad plan <slug>` — invocação direta
10
+ - Antes da primeira session produtiva do squad
11
+ - Quando o squad muda (novos executors, nova investigation, workflow redesign)
12
+
13
+ ## Entrada
14
+ - Squad manifest (`squad.manifest.json`)
15
+ - Blueprint (`.designs/{slug}.blueprint.json`)
16
+ - Investigation report (se existir em `squad-searches/`)
17
+ - Workflow definition (se existir em `workflows/`)
18
+ - Quality checklists (se existirem em `checklists/`)
19
+ - Loaded rules de `.aioson/rules/squad/`
20
+ - Loaded skills de `.aioson/skills/squad/`
21
+ - Learnings anteriores (se `learnings/index.md` existir)
22
+
23
+ ## Processo
24
+
25
+ ### Passo 1 — Re-análise cruzada
26
+
27
+ Ler o manifest completo e verificar consistência:
28
+
29
+ **Coverage analysis — cada executor:**
30
+ - O role cobre algo ÚNICO que nenhum outro executor cobre?
31
+ - Existe gap no coverage? (aspecto do goal que ninguém cobre)
32
+ - Existe overlap? (dois executors fazem a mesma coisa)
33
+ - As skills declaradas existem e são relevantes para o role?
34
+
35
+ **Workflow analysis — se workflow existe:**
36
+ - Cada phase tem executor atribuído que existe no manifest?
37
+ - O output de cada phase é o input esperado da próxima?
38
+ - Existem handoffs sem transformação clara?
39
+ - Human gates estão posicionados em pontos de risco real?
40
+ - Review loops (se configurados) apontam para phases que existem?
41
+
42
+ **Checklist analysis:**
43
+ - Os critérios do checklist cobrem os aspectos críticos do domínio?
44
+ - Existem critérios genéricos demais? (substituir por específicos)
45
+ - Existe critério que nenhum executor pode avaliar? (gap de competência)
46
+
47
+ **Investigation analysis — se investigation report existe:**
48
+ - Os anti-patterns descobertos estão refletidos como hard constraints nos executors?
49
+ - O vocabulário de domínio foi injetado nos executors relevantes?
50
+ - Os frameworks descobertos estão sendo usados na estrutura do squad?
51
+ - Os benchmarks de qualidade estão no checklist?
52
+
53
+ Para cada issue, classificar:
54
+ - **ADJUST** — corrigir antes de executar (ex: executor sem coverage)
55
+ - **WARN** — sinalizar mas pode prosseguir (ex: overlap parcial intencional)
56
+ - **INFO** — anotar para consciência do orquestrador (ex: dimension não coberta pela investigation)
57
+
58
+ ### Passo 2 — Sequência de ativação
59
+
60
+ Definir a ordem ideal de rounds para atingir o goal do squad.
61
+
62
+ **Se o squad tem workflow definido:**
63
+ - Usar as phases do workflow como base
64
+ - Mapear cada phase para um round no execution plan
65
+ - Adicionar rounds de review/synthesis entre phases críticas
66
+ - Respeitar o execution mode (sequential/parallel/mixed)
67
+
68
+ **Se o squad NÃO tem workflow:**
69
+ - Derivar a sequência do manifest + domain knowledge
70
+ - Heurística padrão:
71
+
72
+ ```
73
+ 1. Research / Analysis (executors com focus em pesquisa)
74
+ 2. Creation / Production (executors com focus em criação)
75
+ 3. Review / Quality (executors com focus em revisão)
76
+ 4. Synthesis / Delivery (@orquestrador)
77
+ ```
78
+
79
+ **Para cada round, definir:**
80
+
81
+ ```markdown
82
+ ### Round {N} — {título descritivo}
83
+ - **Executor:** @{slug} ({type})
84
+ - **Objective:** {o que este executor vai produzir neste round}
85
+ - **Input:** {o que precisa receber — de quem, qual artefato}
86
+ - **Output esperado:** {artefato concreto que será produzido}
87
+ - **Quality gate:** {critério de aceitação deste round}
88
+ - **Anti-patterns a evitar:** {do investigation report, se disponível}
89
+ - **Handoff:** output → Round {N+1} input
90
+ - **Parallel:** {true | false — se pode rodar junto com outro round}
91
+ ```
92
+
93
+ **Rounds especiais:**
94
+ - `Round 0 — Context Loading` (implícito, não um round real): o orquestrador carrega learnings e context
95
+ - `Round N — Synthesis` (sempre o último): @orquestrador sintetiza todos os outputs em deliverable final
96
+ - `Review Round` (após rounds críticos): se review loop está configurado, inserir round de review
97
+
98
+ ### Passo 3 — Context per executor
99
+
100
+ Para cada executor no plan, definir o "briefing package":
101
+
102
+ ```markdown
103
+ ## Briefing: @{executor-slug}
104
+
105
+ ### Deve ler antes de começar
106
+ - Seu agent file (`.aioson/squads/{slug}/agents/{executor}.md`)
107
+ - Output do round anterior (se houver)
108
+ - {artefato específico relevante para este executor}
109
+
110
+ ### Contexto injetado pelo orquestrador
111
+ - Goal do squad: {1 frase}
112
+ - Seu objetivo neste round: {1 frase}
113
+ - Anti-patterns a evitar: {lista curta}
114
+ - Vocabulário de domínio: {termos-chave, se da investigation}
115
+
116
+ ### O que NÃO precisa ler
117
+ - {artefatos de outros executors que não são input deste round}
118
+ - {investigation completa — só os excerpts relevantes}
119
+ ```
120
+
121
+ ### Passo 4 — Success criteria
122
+
123
+ Definir como saber que o squad cumpriu o objective:
124
+
125
+ ```markdown
126
+ ## Success Criteria
127
+
128
+ ### Output final esperado
129
+ - {descrição concreta do deliverable — não "conteúdo de qualidade" mas "3 scripts de vídeo com hook, body, e CTA"}
130
+
131
+ ### Quality gates que devem passar
132
+ - {checklist item 1 — do quality.md}
133
+ - {checklist item 2}
134
+ - {item do investigation report, se aplicável}
135
+
136
+ ### Definition of done
137
+ - [ ] Todos os rounds completados
138
+ - [ ] Output final salvo em `output/{squad-slug}/`
139
+ - [ ] Session HTML gerado em `output/{squad-slug}/{session-id}.html`
140
+ - [ ] Nenhum review loop pendente (se configurados)
141
+ - [ ] Checklists validados
142
+ ```
143
+
144
+ ### Passo 5 — Orchestration notes
145
+
146
+ Instruções específicas para o @orquestrador:
147
+
148
+ ```markdown
149
+ ## Orchestration Notes
150
+
151
+ ### Session management
152
+ - {como o orquestrador deve abrir a session}
153
+ - {quando escalar para o usuário vs. decidir autonomamente}
154
+ - {como lidar com review loops se configurados}
155
+
156
+ ### Round transitions
157
+ - Após cada round, verificar o quality gate ANTES de passar ao próximo
158
+ - Se quality gate falha: {retry strategy — do review loop config ou default}
159
+ - Se executor pede ajuda de outro: {routing rules}
160
+
161
+ ### Escalation policy
162
+ - Se um executor não consegue produzir output: escalar ao usuário
163
+ - Se dois executors conflitam: sintetizar a tensão e perguntar ao usuário
164
+ - Se o quality gate falha após max retries: {strategy}
165
+
166
+ ### Learning capture
167
+ - Ao final da session, detectar learnings (ver squad-learning)
168
+ - Registrar em `learnings/` antes de fechar a session
169
+ ```
170
+
171
+ ### Passo 6 — Gerar execution-plan.md
172
+
173
+ Salvar em `.aioson/squads/{slug}/docs/execution-plan.md`:
174
+
175
+ ```markdown
176
+ ---
177
+ squad: "{squad-slug}"
178
+ created: "{ISO-8601}"
179
+ status: "draft"
180
+ based_on_blueprint: "{blueprint path}"
181
+ based_on_investigation: "{investigation path ou null}"
182
+ rounds_total: {N}
183
+ source_artifacts:
184
+ - squad.manifest.json
185
+ - {blueprint path}
186
+ - {investigation path}
187
+ ---
188
+
189
+ # Execution Plan: {squad-name}
190
+
191
+ > Plano de como o squad vai atacar o objetivo.
192
+ > Gerado após criação, aprovado antes da primeira session.
193
+ > Status: draft → approved → in_progress → completed
194
+
195
+ ## Pre-flight check
196
+
197
+ ### Artefatos consolidados
198
+ {inventory do Passo 1}
199
+
200
+ ### Consistency check
201
+ {issues encontrados, classificados como ADJUST/WARN/INFO}
202
+
203
+ ### Squad readiness verdict
204
+ {READY | NEEDS_ADJUSTMENT | NOT_READY}
205
+
206
+ ## Execution Strategy
207
+
208
+ ### Sequência de rounds
209
+ {Rounds do Passo 2}
210
+
211
+ ## Executor Briefings
212
+ {Briefings do Passo 3}
213
+
214
+ ## Success Criteria
215
+ {Critérios do Passo 4}
216
+
217
+ ## Orchestration Notes
218
+ {Notas do Passo 5}
219
+
220
+ ## Context Package (para session ou novo chat)
221
+
222
+ ### O que o @orquestrador deve ler no início de cada session
223
+ 1. Este execution-plan.md
224
+ 2. squad.manifest.json
225
+ 3. Último session HTML (se não é a primeira session)
226
+ 4. learnings/index.md (se existe)
227
+
228
+ ### O que cada executor recebe
229
+ - Seu agent file + briefing deste plan
230
+ - Output do round anterior (se houver)
231
+ ```
232
+
233
+ ### Passo 7 — Apresentar ao usuário
234
+
235
+ ```
236
+ Execution Plan gerado para squad {name}.
237
+
238
+ Rounds: {N} ({M paralelos se houver)
239
+ Consistency: {N adjusts, M warns, P infos}
240
+ Readiness: {READY | NEEDS_ADJUSTMENT | NOT_READY}
241
+
242
+ Sequência:
243
+ 1. {round 1 — executor — 1 linha}
244
+ 2. {round 2 — executor — 1 linha}
245
+ [...]
246
+
247
+ Success criteria: {1 linha do deliverable final esperado}
248
+ ```
249
+
250
+ Perguntar:
251
+ > "Plano de execução pronto. Quer ajustar algo antes de iniciar a primeira session?"
252
+
253
+ Se NEEDS_ADJUSTMENT:
254
+ > "Encontrei {N} ajustes necessários. Quer que eu corrija antes de aprovar o plan?"
255
+
256
+ ## Quando gerar automaticamente (decision tree para squad.md)
257
+
258
+ ```
259
+ Squad criado e validado
260
+ ├── 4+ executors? → GERAR automaticamente
261
+ ├── Workflow definido? → GERAR automaticamente
262
+ ├── Investigation @orache foi feita? → GERAR automaticamente
263
+ ├── Mode = software ou mixed? → GERAR automaticamente
264
+ ├── 3 executors + goal simples? → OFERECER (não obrigar)
265
+ ├── Ephemeral squad? → PULAR
266
+ └── 2 executors + flow óbvio? → PULAR
267
+ ```
268
+
269
+ ## Regras
270
+
271
+ - NÃO execute nenhum round aqui — SÓ planeje
272
+ - NÃO ignore issues ADJUST — sinalize e ofereça correção
273
+ - NÃO gere rounds vagos como "produzir conteúdo" — detalhe O QUE, COMO, e COM QUAIS inputs
274
+ - O execution plan é PERSISTENTE — salvar em arquivo, não só no chat
275
+ - Se investigation existe, DEVE ser usada para enriquecer o plan
276
+ - Se learnings existem, DEVEM informar a sequência de rounds
277
+ - Rounds review são OPCIONAIS se não há review loop configurado, mas RECOMENDADOS para squads com 4+ executors
278
+ - Após aprovação do usuário, mudar status de `draft` para `approved`
279
+ - Se o squad é editado depois do plan ser aprovado, marcar plan como `stale`
@@ -11,7 +11,7 @@
11
11
  2. Se inválido: abortar com sugestão de correção
12
12
  3. Coletar todos os arquivos do pacote:
13
13
  - .aioson/squads/<slug>/ (tudo)
14
- - NÃO incluir: output/, aios-logs/, media/ (são dados de sessão)
14
+ - NÃO incluir: output/, aioson-logs/, media/ (são dados de sessão)
15
15
  4. Gerar archive: `.aioson/squads/exports/<slug>.aios-squad.tar.gz`
16
16
  5. Incluir um `import-instructions.md` no archive
17
17
 
@@ -0,0 +1,44 @@
1
+ # Task: Squad Investigate
2
+
3
+ > Fase de investigação do lifecycle. Enriquece o design com conhecimento real do domínio.
4
+
5
+ ## Quando usar
6
+ - `@squad investigate <domain>` — investigação standalone
7
+ - `@squad` flow quando o usuário aceita investigação
8
+ - `@squad design --investigate` — dispara investigação antes do design
9
+
10
+ ## Entrada
11
+ - Domínio ou tópico
12
+ - Goal do squad
13
+ - Output type esperado
14
+ - Opcional: dimensions específicas para focar
15
+
16
+ ## Processo
17
+
18
+ ### Passo 1 — Ativar @orache
19
+ Leia `.aioson/agents/orache.md` e execute como @orache.
20
+ Passe o contexto do domínio coletado pelo @squad.
21
+
22
+ ### Passo 2 — Aguardar investigação
23
+ @orache executa o processo de investigação (Steps 1-6 do agent).
24
+
25
+ ### Passo 3 — Receber relatório
26
+ @orache salva o relatório em `squad-searches/`.
27
+
28
+ ### Passo 4 — Validar completude
29
+ Verifique que o relatório cobre pelo menos 4 das 7 dimensões.
30
+ Se não cobrir, pergunte ao usuário se quer aprofundar.
31
+
32
+ ### Passo 5 — Integrar com design
33
+ Se esta task foi invocada do flow do @squad:
34
+ - Retorne o path do relatório para o @squad
35
+ - O @squad usa o relatório para enriquecer o blueprint
36
+
37
+ ## Saída
38
+ - Relatório de investigação salvo em `squad-searches/`
39
+ - Path do relatório disponível para o @squad design
40
+
41
+ ## Regras
42
+ - NÃO gere o squad aqui — isso é responsabilidade da task create
43
+ - NÃO fabrique descobertas — se não encontrou, diga
44
+ - SEMPRE salve o relatório em arquivo — nunca apenas no chat
@@ -0,0 +1,44 @@
1
+ # Task: Squad Learning Review
2
+
3
+ > Periodic review of accumulated squad learnings.
4
+
5
+ ## When to use
6
+ - `@squad learning review <slug>` — manual review
7
+ - Automatically when learnings > 15 (consolidation needed)
8
+ - Periodically suggested by @orquestrador after 10+ sessions
9
+
10
+ ## Process
11
+
12
+ ### Step 1 — Inventory
13
+ List all active learnings in `learnings/index.md`.
14
+
15
+ ### Step 2 — Consolidation
16
+ Identify redundant learnings and consolidate:
17
+ - Two learnings saying the same thing → merge into one with combined evidence
18
+ - Keep reference to originals in the consolidated learning
19
+
20
+ ### Step 3 — Promotion
21
+ Identify candidates for promotion (rules or skills):
22
+ - Quality learnings with frequency >= 3 → candidate for rule
23
+ - Domain learnings totaling >= 7 for same domain → candidate for domain skill
24
+ - Process learnings confirmed across 3+ sessions → candidate for rule
25
+
26
+ ### Step 4 — Archive
27
+ Move stale learnings to `learnings/archive/`:
28
+ - Learnings not reinforced in 90+ days
29
+ - Learnings contradicted by newer learnings
30
+ - Learnings that were promoted (keep original as historical record)
31
+
32
+ ### Step 5 — Report
33
+ Present summary:
34
+ - Learnings active: N
35
+ - Consolidated: M
36
+ - Promoted: P
37
+ - Archived: A
38
+
39
+ ## CLI support
40
+ - `aioson squad:learning list <slug>` — list active learnings
41
+ - `aioson squad:learning stats <slug>` — statistics by type and status
42
+ - `aioson squad:learning archive <slug>` — archive stale learnings
43
+ - `aioson squad:learning promote <slug> <id>` — promote learning to rule
44
+ - `aioson squad:learning export <slug>` — export learnings as JSON
@@ -0,0 +1,177 @@
1
+ # Task: Squad Output Configuration
2
+
3
+ > Loaded on-demand by `@squad` when configuring output strategy.
4
+ > Trigger: `@squad --config=output --squad={slug}` or auto-detected during creation.
5
+
6
+ ## Purpose
7
+
8
+ Guide the user through configuring how the squad stores, routes, and delivers its outputs.
9
+ Write the result into `outputStrategy` in `squad.manifest.json`.
10
+
11
+ ## Domain heuristics — auto-suggest the right mode
12
+
13
+ Before asking questions, infer the best strategy from the squad domain:
14
+
15
+ | Domain pattern | Suggested mode | Reasoning |
16
+ |---------------|---------------|-----------|
17
+ | Landing page, site, HTML standalone, presentation | `files` | Output IS the file |
18
+ | Copy for ads, social media, product descriptions | `sqlite` | Recurring data, dashboard + webhook |
19
+ | YouTube creator, editorial (scripts + thumbnails) | `hybrid` | Mix of structured data + media |
20
+ | Report/PDF generator | `files` + worker | Worker generates file |
21
+ | Blog, newsletter, editorial content | `hybrid` | Data in DB + HTML preview |
22
+ | Research, analysis, strategy | `files` | Document-oriented, not recurring |
23
+ | Data pipeline, ETL, structured extraction | `sqlite` | Structured data, API/webhook consumption |
24
+ | Image/video/media generation | `hybrid` | Media files + DB references |
25
+
26
+ ## Configuration wizard
27
+
28
+ Present the inferred suggestion and ask for confirmation:
29
+
30
+ > "Based on the domain **{domain}**, I suggest:
31
+ >
32
+ > **Output mode: {mode}**
33
+ > - {brief explanation of what this means}
34
+ >
35
+ > Does this fit your workflow, or do you want to adjust?"
36
+
37
+ If the user wants to adjust, walk through these questions:
38
+
39
+ ### Q1 — Output destination
40
+ > "Where should the squad outputs go?"
41
+ > - **Files only** — physical files in `output/{slug}/` (HTML, MD, etc.)
42
+ > - **Database only** — structured records in SQLite, viewable in dashboard
43
+ > - **Both** — files for preview + database for management and delivery
44
+
45
+ ### Q2 — Delivery (only if `sqlite` or `hybrid`)
46
+ > "Should finished content be delivered somewhere automatically?"
47
+ > - **No** — just store in database, publish manually from dashboard
48
+ > - **Cloud** — publish to aioson.com when I click publish
49
+ > - **Webhook** — POST to an external URL (website, CMS, API)
50
+ > - **Both** — cloud + webhook
51
+
52
+ ### Q3 — Webhook config (only if webhook selected)
53
+ > "Configure the webhook:"
54
+ > - **URL**: the endpoint to POST to (or use `{{ENV:WEBHOOK_URL}}` for env variable)
55
+ > - **Auth**: Bearer token? (or use `{{ENV:WEBHOOK_TOKEN}}`)
56
+ > - **Trigger**: on-publish (manual) or on-create (automatic)?
57
+
58
+ ### Q4 — Auto-publish (only if webhook or cloud selected)
59
+ > "Should content be published automatically after creation?"
60
+ > - **No** — I'll review and publish manually from dashboard
61
+ > - **Yes** — publish automatically when the agent finishes
62
+
63
+ ## Output — write to manifest
64
+
65
+ After collecting answers, write `outputStrategy` to `squad.manifest.json`:
66
+
67
+ ```json
68
+ {
69
+ "outputStrategy": {
70
+ "mode": "{files|sqlite|hybrid}",
71
+ "fileOutput": {
72
+ "enabled": true,
73
+ "dir": "output/{squad-slug}/",
74
+ "formats": ["html", "md"]
75
+ },
76
+ "dataOutput": {
77
+ "enabled": true,
78
+ "storage": "sqlite",
79
+ "table": "content_items",
80
+ "contentItems": true
81
+ },
82
+ "delivery": {
83
+ "webhooks": [
84
+ {
85
+ "slug": "{webhook-slug}",
86
+ "url": "{{ENV:WEBHOOK_URL}}",
87
+ "trigger": "on-publish",
88
+ "format": "json",
89
+ "headers": {
90
+ "Authorization": "Bearer {{ENV:WEBHOOK_TOKEN}}"
91
+ },
92
+ "worker": ".aioson/squads/{squad-slug}/workers/webhook-post.py"
93
+ }
94
+ ],
95
+ "cloudPublish": false,
96
+ "autoPublish": false
97
+ }
98
+ }
99
+ }
100
+ ```
101
+
102
+ ## Delivery worker generation
103
+
104
+ If webhook is configured, generate a delivery worker at `.aioson/squads/{squad-slug}/workers/webhook-post.py`:
105
+
106
+ ```python
107
+ #!/usr/bin/env python3
108
+ """Delivery worker: POST content items to configured webhook."""
109
+ import json, sys, os, urllib.request, urllib.error
110
+
111
+ def main():
112
+ if len(sys.argv) > 1:
113
+ with open(sys.argv[1], 'r') as f:
114
+ payload = json.load(f)
115
+ else:
116
+ payload = json.load(sys.stdin)
117
+
118
+ url = os.environ.get('WEBHOOK_URL')
119
+ token = os.environ.get('WEBHOOK_TOKEN', '')
120
+
121
+ if not url:
122
+ print('ERROR: WEBHOOK_URL not set', file=sys.stderr)
123
+ sys.exit(1)
124
+
125
+ headers = {'Content-Type': 'application/json'}
126
+ if token:
127
+ headers['Authorization'] = f'Bearer {token}'
128
+
129
+ data = json.dumps(payload).encode('utf-8')
130
+ req = urllib.request.Request(url, data=data, headers=headers, method='POST')
131
+
132
+ try:
133
+ with urllib.request.urlopen(req) as resp:
134
+ print(f'OK: {resp.status} {resp.reason}')
135
+ except urllib.error.HTTPError as e:
136
+ print(f'ERROR: {e.code} {e.reason}', file=sys.stderr)
137
+ sys.exit(1)
138
+
139
+ if __name__ == '__main__':
140
+ main()
141
+ ```
142
+
143
+ Register the worker in the manifest:
144
+ ```json
145
+ {
146
+ "slug": "webhook-post",
147
+ "title": "Webhook Delivery",
148
+ "type": "worker",
149
+ "role": "POST content to configured webhook endpoint",
150
+ "entrypoint": ".aioson/squads/{squad-slug}/workers/webhook-post.py",
151
+ "runtime": "python",
152
+ "deterministic": true,
153
+ "usesLLM": false
154
+ }
155
+ ```
156
+
157
+ ## Compatibility with storagePolicy
158
+
159
+ If the squad already has `storagePolicy` but no `outputStrategy`:
160
+ - `primary: "sqlite"` → infer `mode: "hybrid"` (preserve existing behavior)
161
+ - `exports.html: true` → `fileOutput.formats` includes `"html"`
162
+ - Do NOT remove `storagePolicy` — keep both for backward compatibility
163
+
164
+ ## After configuration
165
+
166
+ Show summary:
167
+ ```
168
+ Output strategy configured for **{squad-name}**:
169
+ - Mode: {mode}
170
+ - Files: {enabled/disabled} → {dir}
171
+ - Database: {enabled/disabled} → {table}
172
+ - Delivery: {none | cloud | webhook | cloud+webhook}
173
+ - Auto-publish: {yes/no}
174
+
175
+ {if webhook: Delivery worker created at `.aioson/squads/{slug}/workers/webhook-post.py`}
176
+ {Reminder: Set WEBHOOK_URL and WEBHOOK_TOKEN in your environment if using {{ENV:}} placeholders.}
177
+ ```
@@ -24,7 +24,7 @@ Verifique que existem:
24
24
  - `.aioson/squads/<slug>/agents/agents.md` (obrigatório)
25
25
  - `.aioson/squads/<slug>/agents/orquestrador.md` (obrigatório)
26
26
  - Para cada executor em manifest.executors: o arquivo referenciado existe
27
- - Diretórios: `output/<slug>/`, `aios-logs/<slug>/`
27
+ - Diretórios: `output/<slug>/`, `aioson-logs/<slug>/`
28
28
 
29
29
  ### Camada 3 — Validação semântica (básica nesta fase, aprofundada na Fase 2)
30
30
  - Slug do manifesto bate com o nome do diretório
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Pair programming partner (alias: pair)"
3
+ ---
4
+
5
+ Read `.aioson/agents/deyvin.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Discovery and design doc generation"
3
+ ---
4
+
5
+ Read `.aioson/agents/discovery-design-doc.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Domain genome creation and application"
3
+ ---
4
+
5
+ Read `.aioson/agents/genome.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Product vision, PRD and feature scoping"
3
+ ---
4
+
5
+ Read `.aioson/agents/product.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Clone profiler: enrichment phase"
3
+ ---
4
+
5
+ Read `.aioson/agents/profiler-enricher.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Clone profiler: forge and validate"
3
+ ---
4
+
5
+ Read `.aioson/agents/profiler-forge.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Clone profiler: research phase"
3
+ ---
4
+
5
+ Read `.aioson/agents/profiler-researcher.md` and follow all instructions. $ARGUMENTS
@@ -0,0 +1,5 @@
1
+ ---
2
+ description: "AIOSON — Squad assembly and management"
3
+ ---
4
+
5
+ Read `.aioson/agents/squad.md` and follow all instructions. $ARGUMENTS
@@ -8,3 +8,5 @@
8
8
  ## Commands
9
9
  Use command files in `.gemini/commands/` that point to the same agents in `.aioson/agents/`.
10
10
  - Include `aios-ux-ui` for frontend design specification when UI quality is critical.
11
+ - Include `aios-deyvin` when you want to continue recent work, inspect what changed, or implement a small slice together.
12
+ - `aios-pair` remains as a compatibility alias.
@@ -0,0 +1,6 @@
1
+ name = "aios-deyvin"
2
+ description = "Continuity pair programming"
3
+ instruction_file = ".aioson/agents/deyvin.md"
4
+ requires_context = [
5
+ ".aioson/context/project.context.md"
6
+ ]
@@ -0,0 +1,6 @@
1
+ name = "aios-pair"
2
+ description = "Compatibility alias for aios-deyvin"
3
+ instruction_file = ".aioson/agents/deyvin.md"
4
+ requires_context = [
5
+ ".aioson/context/project.context.md"
6
+ ]