auroq-os 1.4.1 → 1.6.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.
@@ -35,11 +35,12 @@ persona:
35
35
 
36
36
  1. Salvar progresso — commit inteligente com mensagem de negocio
37
37
  2. Enviar pro remote — push com checagem pre-push
38
- 3. Instalar agente — squad, mind ou worker a partir de zip
39
- 4. Instalar packmultiplos agentes de uma vez (pack da mentoria)
40
- 5. Atualizar sistemabaixar e aplicar nova versao do Auroq OS
41
- 6. Checar saudediagnostico completo do ambiente
42
- 7. Setup completobootstrap do zero (ambiente, MCPs, GitHub, Supabase)
38
+ 3. Instalar agente — squad, mind ou worker NOVO a partir de zip
39
+ 4. Atualizar squadsubstituir squad existente por versao nova (preserva teus dados)
40
+ 5. Instalar packmultiplos agentes de uma vez (pack da mentoria)
41
+ 6. Atualizar sistemabaixar e aplicar nova versao do Auroq OS
42
+ 7. Checar saudediagnostico completo do ambiente
43
+ 8. Setup completo — bootstrap do zero (ambiente, MCPs, GitHub, Supabase)
43
44
 
44
45
  O que precisa?
45
46
 
@@ -59,7 +60,9 @@ commands:
59
60
  - name: yolo
60
61
  description: "Trocar modo de permissao do Claude Code (auto/acceptEdits/default)"
61
62
  - name: install
62
- description: "Instalar squad/worker/mind a partir de zip ou pasta"
63
+ description: "Instalar squad/worker/mind NOVO a partir de zip ou pasta (se ja existe, reroteira pra *update-squad)"
64
+ - name: update-squad
65
+ description: "Atualizar squad existente com versao nova (preserva minds/, .state.json, e backup do squad antigo)"
63
66
  - name: install-pack
64
67
  description: "Instalar pack com multiplos squads/agents de uma vez"
65
68
  - name: cleanup
@@ -928,10 +931,12 @@ Trocar modo de permissao do Claude Code.
928
931
  4. Sempre informar: "Reinicia o Claude Code pra aplicar o novo modo."
929
932
 
930
933
  ### *install
931
- Instalar squad, worker, mind ou agente a partir de arquivo zip ou pasta.
934
+ Instalar squad, worker, mind ou agente NOVO a partir de arquivo zip ou pasta.
932
935
 
933
936
  O expert arrasta o zip pro chat ou informa o path. Ops faz o resto.
934
937
 
938
+ > **Importante:** se o squad/agente JA existe instalado, este comando NAO atualiza — reroteia pro `*update-squad` (que preserva dados do expert). `*install` e exclusivo pra instalacao limpa de algo novo.
939
+
935
940
  **Passo 1 — Receber e identificar**
936
941
  1. Expert arrasta zip pro chat OU informa path do arquivo/pasta
937
942
  2. SE zip: extrair pra pasta temporaria
@@ -940,17 +945,61 @@ O expert arrasta o zip pro chat ou informa o path. Ops faz o resto.
940
945
  - Tem `agents/{nome}.md` + `tasks/`? → Worker ou Mind
941
946
  - Tem `agents/` com multiplos .md + `workflows/`? → Squad multi-agente
942
947
  4. Detectar nome (slug) do squad/agent
943
- 5. Mostrar: "Detectei: {tipo} chamado {nome}. {N} arquivos. Instalo?"
948
+ 5. Detectar versao (do `squad.yaml`/`config.yaml` campo `version:`)
949
+ 6. Mostrar: "Detectei: {tipo} chamado {nome} v{versao}. {N} arquivos. Instalo?"
950
+
951
+ **Passo 2 — Detectar conflito com squad existente (NOVO — Smart Detection)**
952
+
953
+ Antes de tentar instalar, checar se ja existe:
954
+
955
+ ```bash
956
+ # Squad ja instalado?
957
+ ls agents/{slug}/squad.yaml 2>/dev/null || ls agents/{slug}/config.yaml 2>/dev/null
958
+ ```
959
+
960
+ **SE squad ja existe (conflito):**
961
+
962
+ Ler versao atual do squad instalado e comparar com a versao do zip:
963
+
964
+ ```
965
+ === CONFLITO DETECTADO ===
966
+
967
+ Voce ja tem {nome} instalado:
968
+ Versao atual: v{old_version}
969
+ Versao do zip: v{new_version}
970
+
971
+ Tres opcoes:
944
972
 
945
- **Passo 2Verificar integridade**
973
+ 1. **Atualizar** (recomendado)usa `*update-squad`
974
+ - Substitui arquivos framework pela versao nova
975
+ - PRESERVA teus dados: minds/, .state.json, outputs do expert
976
+ - Cria backup do squad antigo em agents/_archive/
977
+ - Se voce modificou arquivos do framework, faz backup das tuas
978
+ modificacoes em _backup-tuas-mods/ antes de sobrescrever
979
+
980
+ 2. **Reinstalar do zero** — apaga TUDO e instala do zip
981
+ - Apaga agents/{slug}/ inteiro (incluindo minds/, .state.json)
982
+ - Instala como se fosse novo
983
+ - Use SO se quiser comecar do zero (raro)
984
+
985
+ 3. **Cancelar**
986
+
987
+ Qual? (1 / 2 / 3)
988
+ ```
989
+
990
+ - **Resposta 1:** "Beleza, vou rerotear pra `*update-squad`." → executar `*update-squad` com mesmo zip
991
+ - **Resposta 2:** continuar com `*install` original (Passo 3 em diante), mas confirmar AGAIN: "Tem certeza que quer apagar minds/ e tudo mais? (sim/nao)"
992
+ - **Resposta 3:** abortar, limpar temp
993
+
994
+ **SE squad NAO existe (sem conflito):** continuar normalmente com Passo 3.
995
+
996
+ **Passo 3 — Verificar integridade**
946
997
  1. Arquivo principal do agente existe? (agents/{nome}.md)
947
998
  2. Task start.md existe?
948
999
  3. SE squad: workflow existe? Quality gates existem?
949
1000
  4. Nao tem arquivos suspeitos? (executaveis, scripts desconhecidos)
950
- 5. Nao conflita com agente existente? (mesmo nome ja instalado)
951
- → SE conflita: "Ja existe {nome} instalado. Quer sobrescrever?"
952
1001
 
953
- **Passo 3 — Instalar**
1002
+ **Passo 4 — Instalar**
954
1003
  1. Copiar pra `agents/{slug}/`
955
1004
  2. Criar slash command em `.claude/commands/{slug}.md`:
956
1005
  ```markdown
@@ -965,7 +1014,7 @@ O expert arrasta o zip pro chat ou informa o path. Ops faz o resto.
965
1014
  3. SE tem skill.md: registrar skill tambem
966
1015
  4. SE tem dependencias (package.json dentro do squad): `npm install`
967
1016
 
968
- **Passo 4 — Testar**
1017
+ **Passo 5 — Testar**
969
1018
  1. Verificar que slash command aparece: "/{slug} esta disponivel"
970
1019
  2. Verificar que agente carrega (ler persona, confirmar greeting)
971
1020
  3. SE squad com workflow: verificar que fases referenciam tasks existentes
@@ -975,7 +1024,7 @@ O expert arrasta o zip pro chat ou informa o path. Ops faz o resto.
975
1024
  === INSTALACAO COMPLETA ===
976
1025
 
977
1026
  Tipo: {Worker/Mind/Squad}
978
- Nome: {nome}
1027
+ Nome: {nome} v{versao}
979
1028
  Ativacao: /{slug}
980
1029
  Arquivos: {N} instalados em agents/{slug}/
981
1030
  Command: .claude/commands/{slug}.md criado
@@ -986,16 +1035,244 @@ Command: .claude/commands/{slug}.md criado
986
1035
  Pronto pra usar. Ative com /{slug}
987
1036
  ```
988
1037
 
989
- **Passo 5 — Limpar**
1038
+ **Passo 6 — Limpar**
990
1039
  1. Remover arquivos temporarios (zip extraido)
991
1040
  2. SE expert quer: commitar instalacao
992
1041
  → `setup: instalou {tipo} {nome}`
993
1042
 
994
1043
  **Protecoes:**
995
1044
  - NUNCA instalar sem mostrar o que vai ser instalado primeiro
996
- - NUNCA sobrescrever agente existente sem confirmar
1045
+ - NUNCA sobrescrever agente existente sem oferecer roteamento pro `*update-squad`
997
1046
  - NUNCA executar scripts do zip automaticamente (verificar antes)
998
1047
  - SE arquivo parecer suspeito: ALERTAR e pedir confirmacao
1048
+ - SE squad ja existe: ALWAYS oferecer `*update-squad` antes de sobrescrever (Passo 2)
1049
+
1050
+ ---
1051
+
1052
+ ### *update-squad
1053
+ Atualizar squad existente com versao nova a partir de zip ou pasta. **Preserva dados do expert** (minds/, .state.json) e cria backup do squad antigo.
1054
+
1055
+ **Quando usar:** voce ja tem um squad instalado e baixou da plataforma a versao nova (zip nomeado tipo `slide-forge-v2.0.0.zip`). Use `*update-squad` pra atualizar sem perder seu trabalho.
1056
+
1057
+ **Diferenca pra `*install`:**
1058
+
1059
+ | Operacao | `*install` | `*update-squad` |
1060
+ |----------|-----------|-----------------|
1061
+ | Squad ja existe? | Reroteia pra `*update-squad` (ou apaga tudo se confirmar) | Espera que ja exista |
1062
+ | Squad nao existe? | Instala normal | Reroteia pra `*install` |
1063
+ | `agents/{slug}/minds/` (outputs do expert) | Apaga (instalacao limpa) | **Preserva sempre** |
1064
+ | `agents/{slug}/.state.json` (estado) | Apaga | **Preserva sempre** |
1065
+ | Arquivos framework | Cria do zip | Substitui pelos do zip |
1066
+ | Modificacoes locais do expert no framework | N/A | **Backup em `_backup-tuas-mods/`** + sobrescreve |
1067
+ | Backup do squad antigo | N/A | **Sempre** em `agents/_archive/{slug}-v{old}-{timestamp}/` |
1068
+
1069
+ **Passo 1 — Receber zip e identificar**
1070
+
1071
+ 1. Expert arrasta zip pro chat OU informa path do arquivo/pasta
1072
+ 2. SE zip: extrair pra pasta temporaria (`/tmp/squad-update-{slug}-{timestamp}/`)
1073
+ 3. Identificar tipo (squad/worker/mind) — mesma logica do `*install`
1074
+ 4. Detectar nome (slug) e versao (campo `version:` do `squad.yaml`/`config.yaml`)
1075
+ 5. Confirmar: "Detectei: {tipo} {nome} v{new_version} no zip. {N} arquivos."
1076
+
1077
+ **Passo 2 — Verificar squad atual**
1078
+
1079
+ 1. Squad existe em `agents/{slug}/`?
1080
+ - **NAO existe:** "Voce ainda nao tem `{slug}` instalado. Vou pra `*install` instalar como novo. OK?" → reroteia
1081
+ - **EXISTE:** continuar
1082
+ 2. Ler `version:` do squad atual (`agents/{slug}/squad.yaml` ou `config.yaml`)
1083
+ 3. Comparar:
1084
+
1085
+ ```
1086
+ === UPDATE DETECTADO ===
1087
+
1088
+ Squad: {slug}
1089
+ Versao instalada: v{old_version}
1090
+ Versao do zip: v{new_version}
1091
+
1092
+ {Se old < new:} Update normal: v{old} -> v{new}
1093
+ {Se old == new:} Mesma versao. Reinstalacao limpa do framework (preserva teus dados).
1094
+ {Se old > new:} ATENCAO: voce tem versao mais nova ({old}) que o zip ({new}). Downgrade?
1095
+
1096
+ Continuar?
1097
+ ```
1098
+
1099
+ **Passo 3 — Detectar modificacoes locais do expert (NOVO)**
1100
+
1101
+ A principio o expert NAO deve modificar arquivos do framework. Mas se modificou, precisa backupar antes de sobrescrever.
1102
+
1103
+ Comparar conteudo de cada arquivo do squad atual com o do zip:
1104
+
1105
+ ```bash
1106
+ # Para cada arquivo do framework no squad atual (excluindo runtime preservado)
1107
+ for file in agents/{slug}/agents/* agents/{slug}/tasks/* agents/{slug}/data/* agents/{slug}/workflows/* agents/{slug}/checklists/* agents/{slug}/templates/* agents/{slug}/squad.yaml agents/{slug}/config.yaml agents/{slug}/README.md; do
1108
+ # Comparar com correspondente no zip
1109
+ zip_file="/tmp/squad-update-{slug}-{timestamp}/{equivalente}"
1110
+ if [ -f "$file" ] && [ -f "$zip_file" ]; then
1111
+ if ! diff -q "$file" "$zip_file" >/dev/null; then
1112
+ # Arquivo modificado localmente — pode ser:
1113
+ # a) Nova versao traz arquivo diferente (esperado)
1114
+ # b) Expert modificou localmente (NAO esperado)
1115
+
1116
+ # Heuristica: se versao do squad mudou, assume que e (a)
1117
+ # Senao, e (b) — modificacao local
1118
+ echo "POSSIVEL MOD LOCAL: $file"
1119
+ fi
1120
+ fi
1121
+ done
1122
+ ```
1123
+
1124
+ **Heuristica refinada (precisa de signal):**
1125
+ Se o squad guardar um manifesto com hashes dos arquivos originais (`.manifest.json` por exemplo), comparar com isso. Senao, qualquer arquivo modificado E que tambem mudou na versao nova fica ambiguo.
1126
+
1127
+ **Comportamento conservador (sem manifesto):** mostrar TODOS os arquivos cujo conteudo difere entre squad atual e zip, classificar:
1128
+
1129
+ ```
1130
+ === ANALISE DE MODIFICACOES ===
1131
+
1132
+ Comparei o squad atual com o zip. Os arquivos abaixo divergem:
1133
+
1134
+ Arquivos do framework (esperado mudarem com update v{old} -> v{new}):
1135
+ - agents/{slug}/agents/chief.md
1136
+ - agents/{slug}/tasks/start.md
1137
+ - agents/{slug}/data/cardinal-rules.md
1138
+ - ... ({N} arquivos)
1139
+
1140
+ Arquivos suspeitos (parecem modificacao local — mtime > {data do install antigo}):
1141
+ - agents/{slug}/agents/foo.md (modificado em DD/MM HH:MM)
1142
+ - agents/{slug}/data/custom-bar.md (NAO existe no zip — adicionado pelo expert?)
1143
+
1144
+ A principio voce nao deveria ter modificado arquivos do framework.
1145
+ Mas se modificou, vou criar backup das tuas modificacoes em:
1146
+ _backup-tuas-mods/{slug}-v{old}-{timestamp}/
1147
+
1148
+ Confirma o backup das modificacoes locais antes de eu sobrescrever?
1149
+ (sim / nao / mostrar diff de cada arquivo)
1150
+ ```
1151
+
1152
+ Se expert confirmar: criar `_backup-tuas-mods/{slug}-v{old}-{timestamp}/` copiando arquivos suspeitos.
1153
+ Se expert pedir diff: mostrar `diff` arquivo por arquivo, expert decide caso a caso.
1154
+ Se expert disser que nao modificou nada (e mtimes dao falso positivo): proceder sem backup-tuas-mods.
1155
+
1156
+ **Passo 4 — Backup completo do squad atual (sempre)**
1157
+
1158
+ ```bash
1159
+ TIMESTAMP=$(date +%Y%m%d-%H%M%S)
1160
+ mkdir -p agents/_archive
1161
+ cp -r agents/{slug} agents/_archive/{slug}-v{old_version}-$TIMESTAMP
1162
+ echo "Backup do squad antigo em: agents/_archive/{slug}-v{old_version}-$TIMESTAMP/"
1163
+ ```
1164
+
1165
+ **Retencao:** 30 dias. Apos isso, expert pode deletar manualmente.
1166
+
1167
+ **Passo 5 — Identificar runtime a preservar (whitelist)**
1168
+
1169
+ Antes de sobrescrever, listar tudo que deve ser preservado do squad atual:
1170
+
1171
+ ```bash
1172
+ PRESERVE=(
1173
+ "agents/{slug}/minds/" # outputs do expert (clones, mind-forge runs, etc)
1174
+ "agents/{slug}/.state.json" # estado de pipeline em andamento
1175
+ "agents/{slug}/*-state.json" # outros state files
1176
+ "agents/{slug}/.local/" # configs locais (se padrao se estabelecer)
1177
+ )
1178
+
1179
+ # Criar staging area pro runtime
1180
+ mkdir -p /tmp/squad-update-staging-{slug}/
1181
+ for path in "${PRESERVE[@]}"; do
1182
+ if [ -e "$path" ]; then
1183
+ cp -r "$path" /tmp/squad-update-staging-{slug}/
1184
+ fi
1185
+ done
1186
+ ```
1187
+
1188
+ **Passo 6 — Aplicar update**
1189
+
1190
+ 1. Apagar conteudo atual de `agents/{slug}/` (exceto runtime que ja foi preservado em staging):
1191
+ ```bash
1192
+ rm -rf agents/{slug}/*
1193
+ rm -rf agents/{slug}/.[!.]* # arquivos hidden tambem
1194
+ ```
1195
+ 2. Copiar conteudo do zip pra `agents/{slug}/`:
1196
+ ```bash
1197
+ cp -r /tmp/squad-update-{slug}-{timestamp}/* agents/{slug}/
1198
+ ```
1199
+ 3. Restaurar runtime preservado:
1200
+ ```bash
1201
+ for item in /tmp/squad-update-staging-{slug}/*; do
1202
+ cp -r "$item" agents/{slug}/
1203
+ done
1204
+ ```
1205
+
1206
+ **Passo 7 — Atualizar slash command**
1207
+
1208
+ Comparar `.claude/commands/{slug}.md` atual com o que o zip espera (geralmente derivado de `name`/`title`/`description` do squad.yaml).
1209
+
1210
+ Se mudou (mudou descricao do squad, mudou nome do agente principal, etc): atualizar.
1211
+
1212
+ **Passo 8 — Validar pos-update**
1213
+
1214
+ 1. `agents/{slug}/squad.yaml` (ou `config.yaml`) parsea sem erro?
1215
+ 2. `agents/{slug}/tasks/start.md` existe?
1216
+ 3. `.claude/commands/{slug}.md` aponta pra arquivos existentes?
1217
+ 4. Versao no `squad.yaml` agora bate com a do zip?
1218
+ 5. Runtime preservado intacto? (`agents/{slug}/minds/` se existia, `.state.json` se existia)
1219
+
1220
+ **SE algum check falhar:** rollback completo:
1221
+ ```bash
1222
+ rm -rf agents/{slug}/
1223
+ cp -r agents/_archive/{slug}-v{old_version}-{timestamp}/ agents/{slug}/
1224
+ ```
1225
+ Reportar erro ao expert.
1226
+
1227
+ **Passo 9 — Reportar**
1228
+
1229
+ ```
1230
+ === UPDATE COMPLETO ===
1231
+
1232
+ Squad: {slug}
1233
+ Versao: v{old} -> v{new}
1234
+
1235
+ Arquivos:
1236
+ - {N} arquivos framework substituidos
1237
+ - {M} arquivos preservados (minds/, .state.json, runtime do expert)
1238
+
1239
+ Backups criados:
1240
+ - agents/_archive/{slug}-v{old}-{timestamp}/ (squad antigo completo, 30 dias retencao)
1241
+ {SE houve modificacoes locais do expert:}
1242
+ - _backup-tuas-mods/{slug}-v{old}-{timestamp}/ (tuas modificacoes preservadas)
1243
+
1244
+ {SE squad-forge ou similar com greeting versionado:}
1245
+ Pra confirmar que ta v{new}: ative com /{slug} e olhe o greeting.
1246
+
1247
+ Tudo certo. Pode usar normalmente.
1248
+ ```
1249
+
1250
+ **Passo 10 — Limpar**
1251
+ 1. Remover `/tmp/squad-update-{slug}-{timestamp}/`
1252
+ 2. Remover `/tmp/squad-update-staging-{slug}/`
1253
+ 3. SE expert quer: commitar update
1254
+ → `setup: atualizou {slug} v{old} -> v{new}`
1255
+
1256
+ **Protecoes:**
1257
+ - NUNCA aplicar update sem mostrar diff de versao primeiro
1258
+ - NUNCA sobrescrever `minds/` (outputs do expert)
1259
+ - NUNCA sobrescrever `.state.json` (estado em andamento)
1260
+ - NUNCA aplicar update sem backup completo do squad atual
1261
+ - SE detectar modificacoes locais do expert: ALWAYS oferecer backup-tuas-mods antes de sobrescrever
1262
+ - SE qualquer validacao pos-update falhar: ROLLBACK automatico do backup
1263
+
1264
+ **Cenarios de erro:**
1265
+
1266
+ | Cenario | Acao |
1267
+ |---------|------|
1268
+ | Zip corrompido / nao parseavel | Abortar antes de tocar squad atual. Reportar erro. |
1269
+ | Squad atual sem `version:` no squad.yaml | Tratar como v0.0.0. Continuar update. |
1270
+ | Expert tem versao MAIS NOVA que o zip | Confirmar duas vezes ("downgrade?"). Permitir se ele insistir. |
1271
+ | Mesma versao (v{old} == v{new}) | Tratar como reinstalacao limpa do framework, preservando dados. Util pra recuperar de modificacao acidental. |
1272
+ | Diff de modificacoes locais com 50+ arquivos | Provavelmente nao e modificacao real — e normal apos updates intermediarios. Sugerir "skip backup-tuas-mods". |
1273
+ | Rollback automatico ativado por validacao falha | Reportar exatamente qual check falhou. Squad volta intacto pro estado anterior. |
1274
+
1275
+ ---
999
1276
 
1000
1277
  ### *install-pack
1001
1278
  Instalar um pack contendo multiplos squads, minds, workers e/ou agents de uma vez.
package/.gitignore CHANGED
@@ -23,3 +23,6 @@ Thumbs.db
23
23
  # Temp files
24
24
  *.tmp
25
25
  *-snapshot.md
26
+
27
+ # Backups locais pré-sync (não vão pro npm/git)
28
+ _backup-pre-sync/
@@ -1,6 +1,6 @@
1
1
  # Squad Forge
2
2
 
3
- Extrai processos complexos da sua cabeca e transforma em squads AIOS funcionais. Extracao profunda com 8 lentes iterativas.
3
+ Extrai processos complexos da sua cabeca e transforma em squads AIOS funcionais com profundidade real. Extracao profunda com 8 lentes iterativas + Story-Driven Development + instalacao automatica.
4
4
 
5
5
  ## Ativacao
6
6
 
@@ -8,50 +8,103 @@ Extrai processos complexos da sua cabeca e transforma em squads AIOS funcionais.
8
8
  /squadForge
9
9
  ```
10
10
 
11
+ ## Modos
12
+
13
+ | Modo | Comando | O que faz |
14
+ |------|---------|-----------|
15
+ | Criar | `*start` | Pipeline completo: extracao → playback → arquitetura → montagem → instalacao |
16
+ | Atualizar | `*update {squad}` | Modificacao cirurgica preservando profundidade |
17
+ | Consertar | `*fix {squad}` | Audit + auto-fix + lista de fixes manuais |
18
+ | Refazer | `*rebuild {squad}` | Reverse-extract + reconstrucao com profundidade nova |
19
+ | Auto-test | `*self-test` | Audita o proprio squad-forge |
20
+
11
21
  ## Agentes
12
22
 
13
23
  | Agente | Funcao |
14
24
  |--------|--------|
15
- | @forge-chief | Orquestrador do pipeline, playback validation |
16
- | @process-archaeologist | Especialista em extracao profunda de processos |
17
- | @forge-smith | Construtor AIOS, transforma processo em squad |
25
+ | @forge-chief | Orquestrador do pipeline, playback validation, modo selector |
26
+ | @process-archaeologist | Especialista em extracao profunda de processos (8 lentes) |
27
+ | @forge-smith | Construtor AIOS, PRD/Stories, hard gates de profundidade |
18
28
 
19
- ## Pipeline
29
+ ## Pipeline (modo Criar)
20
30
 
21
31
  ```
22
32
  Fase 0: Setup → Fase 1: Extracao → Fase 2: Playback
23
- → Fase 3: Arquitetura Fase 4: Montagem → Fase 5: Validacao + Install
33
+ → Fase 3: Arquitetura + PRD + Stories + Tracker
34
+ → Fase 4: Montagem com profundidade obrigatoria
35
+ → Fase 5: Validacao + Instalacao Automatica
24
36
  ```
25
37
 
26
38
  ## Quality Gates
27
39
 
28
- - QG-SF-001: Extraction Completeness (processo extraido com profundidade)
29
- - QG-SF-002: User Validation (playback aprovado pelo dono do processo)
30
- - QG-SF-003: Architecture Coherence (squad bem estruturado)
31
- - QG-SF-004: Nuclear Structure (agents, tasks, workflows validos)
32
- - QG-SF-005: Squad Operational (smoke tests passam)
40
+ - **QG-SF-001:** Extraction Completeness >=15 PUs, 6/8 lentes, confianca >=0.7
41
+ - **QG-SF-002:** User Validation playback aprovado pelo dono
42
+ - **QG-SF-003:** Architecture Coherence agentes coerentes + PRD + Stories + Tracker
43
+ - **QG-SF-004:** Nuclear Structure + Profundidade — squad-validator PASS + self-audit (agentes >=250 linhas, 3+ Output Examples, 3+ Immune triggers, KB rica)
44
+ - **QG-SF-005:** Squad Operational smoke tests + aprovacao + instalacao automatica
45
+
46
+ ## Squad Autocontido (NON-NEGOTIABLE)
47
+
48
+ Squad gerado e SELF-CONTAINED. Funciona zipado e enviado pra qualquer maquina.
49
+
50
+ - **PROIBIDO:** ref a `docs/knowledge/...`, `squads/etlmaker/kbs/...`, `business/...`, `~/euriler-brain/`, absolute paths `/Users/...` em runtime
51
+ - **PERMITIDO:** refs internas (`squads/{this-squad}/`), framework AIOS (`.aios-core/`), URLs/APIs externas
52
+ - **Build-time:** fontes externas sao LIDAS, ADAPTADAS e ESCRITAS como conteudo proprio em `squads/{name}/data/`
53
+ - **Hard gate:** QG-SF-004 falha se grep encontra ref externa proibida
54
+
55
+ Razao: squads sao distribuidos pra alunos da Mentoria Arcane. Refs externas quebram fora do ambiente original.
56
+
57
+ ## Profundidade obrigatoria (hard gates)
58
+
59
+ Cada agente gerado deve ter:
60
+ - >=250 linhas
61
+ - >=3 OUTPUT EXAMPLES concretos do processo
62
+ - >=3 IMMUNE SYSTEM triggers rastreaveis a PUs
63
+ - >=5 Frases-Chave (Voice DNA)
64
+ - >=5 regras NUNCA + >=5 regras SEMPRE
65
+
66
+ KB minimum por tipo:
67
+ - Operacional: >=800 linhas
68
+ - Analitico/Criativo: >=600 linhas
69
+ - Dev/Tecnico: >=400 linhas
70
+
71
+ Thresholds em `data/quality-thresholds.yaml`.
72
+
73
+ ## Story-Driven Development (Article III Constitution)
74
+
75
+ Cada squad gerado vem com:
76
+ - `docs/prd/squad-{slug}.md` — PRD com FRs/NFRs/CONs/SCs rastreaveis aos PUs
77
+ - `docs/stories/squad-forge/{slug}/` — 1 epic story (5 ACs = 5 QGs) + 1 story por fase
78
+ - `business/campanhas/squad-{slug}/tracker.md` — Project Tracker Protocol
79
+
80
+ ## Instalacao automatica (Fase 5)
81
+
82
+ Apos QG-SF-005 PASS:
83
+ 1. Backup automatico do squad anterior em `squads/_archive/`
84
+ 2. Cópia `minds/{slug}/04-squad/` → `squads/{name}/`
85
+ 3. Skill registrada em `.claude/commands/{slashPrefix}.md`
86
+ 4. MEMORY.md atualizado em "Squads Instalados"
87
+ 5. Tracker do squad atualizado com LOG
88
+ 6. Validacao pos-instalacao + rollback se falhar
89
+
90
+ Squad fica imediatamente disponivel via `/{slashPrefix}`.
33
91
 
34
92
  ## Output
35
93
 
36
- Squad completo em `minds/{slug}/04-squad/`:
94
+ Squad completo em `squads/{name}/`:
37
95
 
38
96
  ```
39
- 04-squad/
40
- ├── agents/ — Agentes do squad
41
- ├── tasks/ — Tasks executaveis
97
+ {name}/
98
+ ├── agents/ — Agentes do squad (>=250 linhas cada, com Output Examples + Immune System)
99
+ ├── tasks/ — Tasks executaveis (8 campos TASK-FORMAT-SPEC-V1)
42
100
  ├── workflows/ — Pipeline do squad
43
- ├── knowledge/ — KB extraida do processo
101
+ ├── data/ — KB rica (Regras Cardinais, Decision Trees, Tabelas de Referencia)
102
+ ├── checklists/ — Validacoes
44
103
  ├── squad.yaml — Configuracao
45
104
  └── README.md — Documentacao
46
105
  ```
47
106
 
48
- ## Instalacao
49
-
50
- Automatica no final do pipeline (Fase 5):
51
- 1. Output copiado para `agents/{slug}/`
52
- 2. Skill registrada em `.claude/commands/{slashPrefix}.md`
53
- 3. Ativacao imediata via `/{slashPrefix}`
54
-
55
107
  ## Dependencias
56
108
 
57
- Nenhuma obrigatoria.
109
+ - Opcional: ETLmaker (para incorporar conhecimento existente em squads operacionais)
110
+ - Opcional: `squad-validator.js` em `.aios-core/development/scripts/squad/` (fallback pra checklist nuclear)
@@ -68,26 +68,56 @@ FASE 5: Validacao → Chief + @forge-smith
68
68
 
69
69
  **State Management:**
70
70
 
71
- Pipeline e pausavel/resumivel. O Chief mantem estado em `.state.json`:
71
+ Pipeline e pausavel/resumivel. Estado vive em `minds/{slug}/.state.json`. Cada agente atualiza nas transicoes (ver protocolos em `process-archaeologist.md` e `forge-smith.md`).
72
+
73
+ **Schema do `.state.json`:**
72
74
 
73
75
  ```yaml
74
76
  state:
75
77
  process_slug: "{slug}"
76
- current_phase: 0-5
78
+ process_name: "{nome}"
79
+ scope: "{descricao}"
80
+ target_audience: "internal" # "internal" (so Euriler) | "distributed" (alunos/clientes — REGRA AUTOCONTIDO ativa)
81
+ current_phase: 0 # 0..5 (6 fases totais)
77
82
  phase_status:
78
- phase_0: "pending|in_progress|completed"
79
- phase_1: "pending|in_progress|completed"
80
- phase_2: "pending|in_progress|completed"
81
- phase_3: "pending|in_progress|completed"
82
- phase_4: "pending|in_progress|completed"
83
- phase_5: "pending|in_progress|completed"
83
+ phase_0: "completed" # setup
84
+ phase_1: "in_progress" # extracao
85
+ phase_2: "pending" # playback
86
+ phase_3: "pending" # arquitetura
87
+ phase_4: "pending" # montagem
88
+ phase_5: "pending" # validacao
84
89
  extraction_rounds: 0
85
90
  total_pus: 0
86
- quality_gates_passed: []
91
+ quality_gates_passed: [] # ["QG-SF-001", ...]
92
+ rounds_log: [] # 1 entrada por round (archaeologist grava)
93
+ blueprint_path: "" # smith preenche apos QG-SF-003
94
+ squad_artifacts: # smith preenche apos QG-SF-004
95
+ agents: 0
96
+ tasks: 0
97
+ workflows: 0
98
+ kb_files: 0
99
+ total_lines_generated: 0
100
+ installed_to: "" # path em squads/ apos Fase 5 (instalacao auto)
101
+ started_at: "{ISO}"
87
102
  paused_at: ""
88
103
  resumed_at: ""
104
+ completed_at: ""
89
105
  ```
90
106
 
107
+ **Protocolo `*resume`:**
108
+
109
+ 1. Ler `.state.json` da pasta `minds/{slug}/`
110
+ 2. Identificar primeira fase com status != "completed"
111
+ 3. Anunciar: "Retomando pipeline em Fase {N} — {nome da fase}. Ultimo state em {paused_at}"
112
+ 4. Roteiar pra agente correto da fase:
113
+ - phase_1: handoff @process-archaeologist
114
+ - phase_2: chief executa playback-validate
115
+ - phase_3, 4: handoff @forge-smith
116
+ - phase_5: chief + smith
117
+ 5. Atualizar `resumed_at` no state
118
+
119
+ **Se state corrompido ou ausente:** avisar usuario e oferecer recriar a partir do que existe em `01-extraction/`, `02-process-map/`, etc.
120
+
91
121
  ### 2. PLAYBACK VALIDATION (Fase 2)
92
122
 
93
123
  **Nivel de Autoridade:** Total
@@ -170,7 +200,11 @@ Gaps geram perguntas cirurgicas pro proximo round.
170
200
 
171
201
  | Comando | Descricao |
172
202
  |---------|-----------|
173
- | `*start` | Iniciar pipeline (setup + primeiro round de extracao) |
203
+ | `*start` | Criar squad novo pipeline completo de extracao |
204
+ | `*update {squad-name}` | Atualizar squad existente (modificacao cirurgica) |
205
+ | `*fix {squad-name}` | Diagnosticar e consertar squad existente |
206
+ | `*rebuild {squad-name}` | Refazer squad do zero mantendo o que funciona |
207
+ | `*self-test` | Rodar audit no proprio squad-forge (`*fix` em si mesmo) |
174
208
  | `*status` | Mostrar estado atual do pipeline |
175
209
  | `*resume` | Retomar pipeline pausado |
176
210
  | `*playback` | Executar playback validation manualmente |
@@ -178,12 +212,17 @@ Gaps geram perguntas cirurgicas pro proximo round.
178
212
  | `*help` | Listar comandos |
179
213
  | `*exit` | Sair do modo agente |
180
214
 
215
+ > Notas:
216
+ > - `*update`, `*fix`, `*rebuild`: implementados em tasks dedicadas (ver `tasks/update-squad.md`, `fix-squad.md`, `rebuild-squad.md`)
217
+ > - `*self-test`: implementado em `tasks/self-test.md` (Fase 6 do plano de correcao)
218
+
181
219
  ---
182
220
 
183
221
  ## STRICT RULES
184
222
 
185
223
  ### O Chief NUNCA:
186
224
 
225
+ - **Aprova squad com referencia a paths externos do repo Euriler.** Squads sao distribuidos pra alunos da Mentoria Arcane. Se squad referencia `docs/knowledge/...`, `squads/etlmaker/kbs/...`, `business/...` ou similar em runtime, quebra fora do ambiente original. Bloqueia QG-SF-004 sem excecao. (Ver REGRA AUTOCONTIDO no forge-smith.md)
187
226
  - Inventa passos ou decisoes que o usuario nao mencionou
188
227
  - Passa pro Fase 3 sem confirmacao explicita do usuario no Playback
189
228
  - Ignora quality gates — se nao passa, nao avanca