Create SOP & Create Squad Pro
Dois fluxos reais que mostram o que o AIOX adiciona sobre o Claude Code cru — e o que isso custa. Evidência em file:line, comparativo lado a lado, sem teoria.
O que tem aqui
- Premissa e metodologia
- Caso 1 · Create SOP (
/SquadCreator:create-from-sop) - Arquitetura em camadas do Caso 1
- SINKRA_TASK_METADATA & Contract
- Veto Conditions (5 blocks)
- Pipeline 5 steps
- Outputs canônicos & Quality Gate
- Sem AIOX vs Com AIOX (Caso 1)
- Caso 2 · Create Squad Pro
- Minds: extração de personas
- Sem AIOX vs Com AIOX (Caso 2)
- Reflexão: ganho, custo, quando usar
Premissa e metodologia
Tudo nesta parte é inferência a partir dos arquivos do repo. Eu vou citar file:line em EVIDENCE sempre que possível, e marcar com (inferência) quando estou colando pontos sem uma afirmação explícita no código. Se você ler só a primeira parte de cada callout, já vê qual é a diferença prática. O resto é aprofundamento.
/Users/italo/italo_gustavo/. O artefato primário deste caso é
squads/squad-creator-pro/tasks/create-from-sop.md +
.claude/commands/SquadCreator/create-from-sop.md.
Note que eu pesquei os dois fluxos sem olhar squads de produção (o copy, por exemplo). Se algum comportamento divergir do runtime real, é porque o runtime tem lógica extra (dynamic greeting via scripts/generate-squad-greeting.js, AI-FIRST-GOVERNANCE protocols) que não aparece só lendo as tasks.
Caso 1 · Create SOP (/SquadCreator:create-from-sop)
O comando transforma SOPs YAML canônicos do workspace em artefatos de squad: tasks candidatas, mapa de workflow, guardrails e open questions marcadas como gaps. Ele não inventa processo — ele lê YAMLs já estruturados que moram em workspace/businesses/{slug}/ e destila o que virou executável, o que virou contexto de suporte, e o que virou sinal de governança.
*extract-sop primeiro, ou o Create Squad Pro (Caso 2).
Disparo pelo usuário
# Forma mínima (vai perguntar selectors)
/SquadCreator:create-from-sop
# Forma completa
*create-from-sop --business=aiox --namespace=operations
*create-from-sop --business=italo_gustavo --namespace=L1-strategy --paths=L1-strategy/team-structure.yaml
Arquitetura em camadas
O comando é propositalmente magro. O que parece ser um fluxo linear é na verdade uma cadeia de 4 camadas onde cada uma aponta pra próxima:
Cada camada tem responsabilidade clara:
| Camada | Arquivo | Papel | Tamanho |
|---|---|---|---|
| 1 · Harness | .claude/commands/SquadCreator/ | registrar o slash command no Claude Code | dir |
| 2 · Command | .claude/commands/SquadCreator/create-from-sop.md | wrapper pro usuário, descreve quando usar | 78 linhas |
| 3 · Task | squads/squad-creator-pro/tasks/create-from-sop.md | metadata, vetos, ordem de sub-tasks | 131 linhas |
| 4 · Sub-tasks | tasks/create-from-sop-{load-classify,map-workflow,brief}.md | execução atômica, output contracts | 3 arquivos |
Orchestrator obrigatório & model tier
@pedro-valerio (Process Absolutist — o agente que “nunca deixa um card voltar num fluxo”). Citação direta do agent: squads/squad-creator-pro/agents/pedro-valerio.md:14.
Model:
Opus (cross-file synthesis), Haiku Eligible: NO.
squads/squad-creator-pro/tasks/create-from-sop.md:50-52.
Metadata estruturada: SINKRA_TASK_METADATA + SINKRA_CONTRACT
Toda task do Pro tem duas caixas YAML marcadas com tags HTML no topo do arquivo. Isso não é documentação: é contrato estruturado que workers (Python/JS) podem parsear sem precisar de LLM. Olhar só o YAML já diz tudo que você precisa saber pra saber se a task tá bem formada.
<!-- SINKRA_TASK_METADATA:START -->
sinkra_task_metadata:
task_id: create-from-sop
task_name: Create Squad Artifacts From Workspace SOPs (Stub)
status: pending
responsible_executor: '@pedro-valerio'
execution_type: Agent
estimated_time: 30m
domain: Tactical
input: [# referência circular — ver corpo da task]
output: [# idem]
action_items:
- Executar os passos documentados no corpo da task
acceptance_criteria:
- Loader executado com `business` explicito e seletores explicitos
- Nenhuma fonte fora de `workspace/businesses/{slug}` foi considerada valida
- `runtime_mode` validado como `full_workspace_mode`
- `source_of_truth` validado como `workspace_canonical`
- Cada processo executavel virou task candidate com executor + guardrails
output_persistence: canonical_workspace
accountable_id: Human:Squad_Operator
accountability_scope: review_only
escalation_priority: medium
<!-- SINKRA_TASK_METADATA:END -->
Abaixo da metadata vem o Sinkra Contract — pre/post conditions + SLA:
sinkra_contract:
Domain: Strategic
atomic_layer: Atom
executor: Agent
pre_condition: "inputs, dependências e artefatos prévios resolvidos antes de iniciar a execução."
post_condition: "output principal gerado, validado e pronto para handoff da próxima fase."
performance: "executar dentro do SLA declarado, registrar erro explicitamente e escalar via handoff sem falha silenciosa."
Por que importa? Porque o campo accountable_id: Human:Squad_Operator diz que se o output der ruim, é um humano específico quem responde — não o modelo, não o squad, não “o AI”. Isso é audit trail embutido no arquivo.
Função de cada campo (leitura rápida)
| Campo | Função prática |
|---|---|
task_id | chave primária em registries e graphify |
responsible_executor | handoff automático — quem atende *create-from-sop |
execution_type | Agent (LLM) | Worker (Python) | Hybrid — usado pelo Executor Decision Tree pra rotear |
estimated_time | SLA pra agent-lifecycle-guard (Art. VIII): se excedeu » hook pode terminar |
domain | Tactical (Atom), Operational (Molecule), Strategic (Squad) — taxonomia de camada |
acceptance_criteria | checklist verificável antes de marcar como done |
output_persistence | canonical_workspace = grava em workspace/; transient_output = só em memória entre steps |
accountable_id | audit trail — quem assina o artefato gerado |
escalation_priority | low/medium/high — usado em pipeline-guardian do Support Squad |
Veto Conditions — os 5 bloqueios
A peça central do Create SOP são os vetos. Cada um é um pre-check que bloqueia a execução se falhar. Não é warning, não é “nota” — é BLOCK. O agente desliga e devolve o controle.
| ID | Condição | Como checar | Resultado |
|---|---|---|---|
VETO-CFS-001 |
Business slug must be explicit | verifica se --business=<slug> foi passado |
VETO · BLOCK |
VETO-CFS-002 |
Environment contract must resolve to full_workspace_mode |
roda load-business-sops.cjs e checa runtime_mode |
VETO · BLOCK |
VETO-CFS-003 |
Source of truth must be workspace_canonical |
loader output: source_of_truth == workspace_canonical |
VETO · BLOCK |
VETO-CFS-004 |
At least one SOP selector | --namespace= e/ou --paths= presentes |
VETO · BLOCK |
VETO-CFS-005 |
Every selector resolves inside workspace/businesses/{slug} |
missing_requested_sources == [] |
VETO · BLOCK |
VETO - BLOCK.
Por que 5 vetos e não 1 genérico?
Cada veto cobre uma falha específica que já aconteceu em operação (inferência, baseado no fato de ter ID único por falha — tipicamente isso surge depois de ver o modo de falha no wild):
- 001 evita o modo “cria squad genérico pra business inexistente”
- 002 evita rodar o comando no repo errado (
full_workspace_modesó existe quando o workspace tá configurado) - 003 evita o modo “vou usar SOPs de outro lugar” — SSOT é
workspace_canonical - 004 evita processar todo o business (o usuário tem que escolher o escopo)
- 005 evita fallback silencioso pra paths inexistentes (o loader lista
missing_requested_sourcese se houver qualquer item, bloqueia)
Pipeline — 5 steps determinísticos
Depois que os 5 vetos passam, entram 5 steps. A ordem é fixa — cada step recebe o output do anterior como input (contract chaining):
Environment + Source Package (loader determinístico)
# Rodado pelo Hybrid executor — zero LLM tokens
node squads/squad-creator-pro/scripts/load-business-sops.cjs \
--business={slug} \
--namespace={namespace} \
--paths={paths} \
--format=yaml
Retorna um pacote determinístico com 4 campos obrigatórios. Se qualquer um falhar, STOP:
coo_readiness_status == readyruntime_mode == full_workspace_modesource_of_truth == workspace_canonicalmissing_requested_sources == []
Source Classification
Cada YAML carregado cai em exatamente uma das 3 classes:
| Classe | O que é | Exemplo típico |
|---|---|---|
| executable_process | descreve processo, rotina, operação, scorecard, estrutura ou fluxo que vira task/workflow | L1-strategy/*.yaml |
| supporting_context | contexto de negócio, positioning, offer, narrativa, constraint | L3-product/*/offerbook.yaml |
| governance_signal | ownership, status, score, version, evidence, sources | metadata · evidence · sources |
Process Mapping
Para cada executable_process, extrai:
mapped_process:
source_path: string
task_name: string
executor: Human | Agent | Hybrid | Worker
inputs: []
outputs: []
checkpoints: []
guardrails: []
dependencies: []
Regras anti-invenção (literal em create-from-sop-map-workflow.md:89-93):
- Não transformar contexto em step operacional sem evidência no YAML
- Não merjar processos distintos só porque moram no mesmo namespace
- Não perder ownership — cada output precisa de owner ou guardian
Workflow Synthesis
- Agrupa processos por fase
- Desenha fluxo unidirecional (Pedro Valério axiom: “Nada volta num fluxo. NUNCA.”)
- Declara checkpoints obrigatórios
- Converte metadata/status signals em guardrails ou quality gates
Gap Surface
Gera open_questions com tags obrigatórias sempre que:
- processo depende de info que não existe em nenhum YAML selecionado → [MISSING]
- ambiguidade de owner/responsável → [AMBIGUOUS]
- YAML descreve estado mas não ação → [AMBIGUOUS]
- conflito entre sources selecionados → [CONFLICT]
Creation Brief
Assembly final — junta tudo num squad_creation_brief canônico:
create_from_sop:
business_slug: "{slug}"
selectors:
namespaces: []
explicit_paths: []
source_package:
runtime_mode: full_workspace_mode
source_of_truth: workspace_canonical
loaded_sources: []
missing_requested_sources: []
creation_brief:
objective: "{objective derived from SOPs}"
canonical_sources:
- path: "{path}"
class: "executable_process|supporting_context|governance_signal"
executable_processes:
- task_name: "{name}"
executor: "Human|Agent|Hybrid|Worker"
inputs: []
outputs: []
guardrails: []
supporting_context: [...]
guardrails: [...]
open_questions:
- type: "MISSING|AMBIGUOUS|CONFLICT"
description: "{what is unclear}"
impact: "{what it blocks}"
Outputs canônicos & Quality Gate
Os 5 steps produzem 5 outputs — todos com path + formato fixos. Isso é crucial: a próxima sessão do Claude Code pode continuar de onde parou só lendo os arquivos.
| Output | Tipo | Descrição | Consumer downstream |
|---|---|---|---|
business_sops_package | YAML/JSON | pacote determinístico do loader | Step 1 |
source_classification | YAML | classes atribuídas por path | Step 2 |
task_inventory | YAML | tasks candidatas com executor + guardrails | Step 3, 5 |
workflow_map | YAML | fases, checkpoints, handoffs | Step 5 |
open_questions | MD | gaps marcados com tags | humano · Step 5 |
squad_creation_brief | MD/YAML | tese final de criação (output canônico) | próximo comando (ex: *create-squad) |
create-from-sop-load-classify.md:122-144, create-from-sop-map-workflow.md:115-142, create-from-sop-brief.md:84-118).
Quality Gate como trava final
A task 0 (create-from-sop.md) aponta explicitamente pro quality gate:
## Checklist Reference
Before marking this task complete, verify against: checklists/quality-gate-checklist.md
O quality-gate-checklist define 10 campos obrigatórios por gate, 4 tipos válidos (manual | automated | hybrid | external), 3 severidades (blocking | warning | info), 3 placements (entry | transition | exit), tudo com checklist verificável. Não é opinião — é spec.
Comparativo: SEM AIOX vs COM AIOX (Caso 1)
Agora o lado a lado. Mesmo objetivo: “tenho SOPs YAML do meu negócio, quero transformar em squad.”
Sem AIOX · Claude Code cru
- Prompt livre: “claude, olha meus YAMLs em workspace/ e me monta um squad”
- Sem veto: se o business slug não existe, o modelo infere, chuta nome, segue
- Ordem variável: cada sessão pode começar pela brief, pelo map, ou pular classification
- Classificação implícita: modelo decide sozinho o que é processo vs contexto — sem as 3 classes canônicas
- Outputs ad-hoc: vira um .md narrativo, não YAML parseável
- Sem gap tagging: gaps ficam em prosa — “acho que precisamos saber mais sobre X” — impossível grepar
- Sem audit trail: quem é o
accountable_id? Não existe - Model drift: se você tiver um router Haiku, pode rodar em Haiku e perder a síntese cross-file
- Sem handoff: o resultado fica na sessão; continuar depois = reexplicar tudo
- Invenção silenciosa: modelo cria campos que não existem no YAML porque “parecia fazer sentido”
Com AIOX · /SquadCreator:create-from-sop
- Comando específico com args obrigatórios validados por veto
- 5 VETOs bloqueiam antes de qualquer LLM call — se falta slug, para
- Ordem fixa: Step 0 → 1 → 2 → 3 → 4 → 5, determinístico
- 3 classes canônicas explícitas: executable / supporting / governance
- Outputs YAML estruturados com Output Contract em cada step
- Tags obrigatórias
[MISSING] [AMBIGUOUS] [CONFLICT]— scriptável - Audit trail:
accountable_id: Human:Squad_Operator· accountability_scope: full - Model forçado: Opus,
Haiku Eligible: NO - Handoff via contract: próximo step lê o YAML do anterior
- Anti-invenção explícita: regras literais em 2 sub-tasks
Diff dimensional
| Dimensão | Sem AIOX | Com AIOX |
|---|---|---|
| Entrada | prompt livre em português | *create-from-sop --business=X --namespace=Y |
| Pré-validação | nenhuma | 5 VETOs bloqueantes rodam antes do LLM |
| Orchestrator | modelo decide tools livremente | @pedro-valerio fixo, com Thinking DNA |
| Model | o que tiver configurado (pode ser Haiku) | Opus obrigatório, Haiku Eligible: NO |
| Pipeline | emergent (o modelo improvisa a ordem) | 5 steps fixos, cada um com output contract YAML |
| Outputs | um markdown narrativo | 6 artefatos tipados (YAML + MD) |
| Invenção | modelo preenche gaps com plausível | gap obrigatoriamente tagado, nunca inventado |
| Accountability | nenhuma (quem responde pelo output?) | campo accountable_id na metadata |
| Reuso / retomada | perde ao sair da sessão | próximo comando lê o YAML e continua |
| Quality gate | inexistente | checklists/quality-gate-checklist.md obrigatório |
Caso 2 · Create Squad Pro
O Create Squad Pro (squad-creator-pro) é um animal bem diferente. Enquanto o Create SOP consome SOPs prontos, o Create Squad Pro cria squads a partir de personas/minds reais — gente com framework documentado, skin in the game, voice/thinking DNA extraível.
squads/squad-creator-pro/), compartilham alguns agents (squad-chief) e diferem no que é a fonte de verdade: para Create SOP é YAML canônico; para Create Squad Pro é pessoa real + materiais (livros, transcrições, posts).
Arquitetura
Create Squad Pro é uma constelação de 4 architects especializados, cada um com mind extraída e artefatos próprios:
Os 4 agents da constelação
| Agent | Papel | Evidência de especialização |
|---|---|---|
@squad-chief |
Orquestrador · triage + routing | triage flow com 3 passos, “Diagnose before acting, route before creating”. squad-chief.md:53-76 |
@oalanicolas |
Knowledge Architect · mind cloning, DNA extraction, fontes | 37.5KB de agent · mind em minds/oalanicolas/ com artifacts HANDOFF_PROTOCOL.md, SOURCE_CLASSIFICATION.md |
@pedro-valerio |
Process Architect · vetos, workflows, guardrails | 47.1KB de agent · 40+ decisões crystalizadas em META_AXIOMAS.md · “Nada volta num fluxo. NUNCA” |
@thiago_finch |
Business Architect · contexto comercial, offer, positioning | 34.5KB de agent (não lido em profundidade nesta parte — inferência baseada no nome + papel) |
ls squads/squad-creator-pro/agents/.
Tasks atômicas — 250+ arquivos
Enquanto o Create SOP tem 4 tasks (1 stub + 3 sub-tasks), o Create Squad Pro tem mais de 250 tasks atômicas cobrindo o ciclo inteiro: research, DNA extraction, clone review, smoke test, pipeline optimization, fidelity scoring, migration, modernization...
# Amostra do diretório tasks/ (grep de tipos)
auto-acquire-sources-*.md # 4 tasks - busca automática de fontes
clone-mind-*.md # 3 tasks - smoke test + dashboard
collect-sources-*.md # 5 tasks - classify/discover/validate/gap/gate
deep-research-*.md # 5 tasks - local KB + execute + generate + validate
evd-*.md # 3 tasks - voice DNA extraction
etd-*.md # 7 tasks - executor type discovery
extract-expert-gold-*.md # 5 tasks - context/enrichment/filter/multi-lense/validation
extract-implicit-*.md # 5 tasks - analyze/prioritize/scan/synthesize/validate
extract-knowledge-*.md # 5 tasks - checklist/framework/sop/source/validation
extract-sop-*.md # 4 tasks - analyze/assemble/extract/prepare
find-0-8-*.md # 2 tasks - classify/recommend
optimize-*.md # 18 tasks - diferentes focos de otimização
plan-squad-*.md # 7 tasks - contract/roadmap/architecture/etc
pv-audit-*.md # 3 tasks - pedro-valerio audit (deep-dive/overview/sample)
smoke-test-model-routing-*.md # 4 tasks - comparison/execution/lookup/preflight/report
squads/squad-creator-pro/tasks/ tem 250+ arquivos. Cada um segue task-anatomy-checklist.md (17.4KB) — 8 campos obrigatórios.
Minds — extrações de personas
Cada architect tem mind folder com artifacts que codificam o DNA da pessoa. Isso não é memória de sessão, é conhecimento versionado em disco.
| Mind | Estrutura | Conteúdo canônico |
|---|---|---|
minds/pedro_valerio/ |
artifacts/ + heuristics/ |
META_AXIOMAS.md (8.4KB, 10 dimensões de validação) · Assinatura_Linguistica.md (8.0KB, voice DNA) |
minds/oalanicolas/ |
artifacts/ + heuristics/ |
HANDOFF_PROTOCOL.md (6.4KB) · SOURCE_CLASSIFICATION.md (6.2KB) |
Exemplo concreto: META_AXIOMAS do Pedro Valério
O META_AXIOMAS.md não é “biografia” — é um framework de validação com 10 dimensões, cada uma com weight + threshold + veto_power:
meta_axiomas:
pattern_reference: "docs/analysis/framework-alignment-report.md"
total_dimensions: 10
scoring:
overall_threshold: 7.0
minimum_per_dimension: 6.0
veto_on_failure: false # Default to REVIEW, not VETO
dimensions:
1_truthfulness:
name: "Verdade (Truthfulness)"
weight: 1.0
threshold: 7.0
veto_power: true # única com veto
description: "Truth as systemic coherence verified by data"
2_coherence:
name: "Coerência (Coherence)"
weight: 0.9
threshold: 6.0
veto_power: false
# ... 3_strategic_alignment, 4_operational_excellence,
# 5_innovation_capacity, 6-10 ...
Traduzindo em uso: quando o Create Squad Pro vai validar um squad candidato, ele roda essas 10 dimensões. Truthfulness com threshold 7.0 tem veto_power — se passar disso, BLOCK. As outras 9 só viram REVIEW. Isso é modelagem de julgamento de um humano específico, codificada.
Pipeline alto-nível do Create Squad Pro
Não vou destrinchar todos os steps como no Caso 1 (são dezenas). Mas aqui o mapa geral, referenciando os arquivos de task:
Triage & Ecosystem Check
Diagnóstico (CREATE/MODIFY/VALIDATE/EXPLORE), checa squad-registry.yaml, roteia para o especialista. Se já existe squad coberto, oferece extensão antes de criar.
Source Acquisition
Research web (YOLO) ou upload de materiais (QUALITY). 3 sub-tasks: search, expand, consolidate. Gate de qualidade determinístico em collect-sources-quality-gate.md.
Voice DNA + Thinking DNA
5 dimensões de voice (vocabulary, tone, stories, etc) + framework extraction + heuristic mining. Fidelity score em fidelity-score.sh.
Clone Review
Valida que o DNA extraído de fato reproduz o expert. Trinity check (3 fontes), stages fidelity, report consolidado.
Process Design
Architecture, contract, depth calibration, domain mapping, PRD assembly, roadmap, challenge reorder. Vetos + guardrails obrigatórios.
Creation
Gera agents, tasks, workflows, templates, checklists. Adapter pattern em tasks/create-squad.md:41-116 — não recria pipeline, delega.
Smoke Test + Quality Gate
Test 1: knowledge of domain. Test 2: decision making. Test 3: objection handling. Squad checklist com 4 tiers (structure/coverage/quality/contextual), final_score threshold 7.0, excellence 9.0.
Checklists como quality gates
| Checklist | Propósito | Tamanho |
|---|---|---|
agent-quality-gate.md | valida structure 6-level de agent (SC_AGT_001) | 9.5KB |
agent-depth-checklist.md | mede profundidade do agent (300+ lines, voice_dna, output_examples ≥ 3) | 7.0KB |
pipeline-quality-checklist.md | valida pipeline completo | 4.7KB |
squad-checklist.md | validação tiered do squad todo (4 tiers) | 27.1KB |
task-anatomy-checklist.md | 8 campos obrigatórios por task | 17.4KB |
quality-gate-checklist.md | validação de QG individual (padrão HO-PP-003) | 11.2KB |
mind-validation.md | valida mind extraction | 8.1KB |
sop-validation.md | valida extração de SOP (SC-CK-001) | 6.9KB |
squads/squad-creator-pro/checklists/ — 13 arquivos, ~125KB de spec verificável.
Comparativo: SEM AIOX vs COM AIOX (Caso 2)
Mesmo objetivo: “quero um squad de copywriting baseado em Alex Hormozi + Ry Schwartz.”
Sem AIOX · Claude Code cru
- Pede ao modelo: “crie um agent do Alex Hormozi”
- Modelo gera perfil baseado no training data (pode estar desatualizado, pode estar errado, tem muito noise)
- Sem research loop — o que você tem é o que o modelo lembra
- Voice DNA = “ele fala direto e usa histórias” (útil zero)
- Thinking DNA = “ele foca em criar ofertas irresistíveis” (útil zero)
- Sem smoke test — você descobre que o agent é ruim só usando
- Output é um markdown “agent.md” sem structure canônica
- Sem quality gate — não existe threshold objetivo
- Sem squad — é um agent solto, sem orchestrator, sem workflow
- Sem fidelity score — impossível medir “quão parecido com o real”
Com AIOX · Squad Creator Pro
- Comando:
@squad-chief→*create-squadcom YOLO/QUALITY/HYBRID - Research loop de 3-5 iterações com devil's advocate
- Source Acquisition automática (YOLO) ou manual (QUALITY)
- Voice DNA = 8+
always_use, 5+never_use, vocabulary, tone, stories - Thinking DNA = frameworks nomeados, fórmulas, heurísticas decisionais
- 3 smoke tests obrigatórios antes de o squad sair
- Output:
squads/{name}/com structure canônica de 7 pastas - Quality gate com fidelity score (85-97% em QUALITY mode)
- Squad completo: agents + orchestrator + workflows + tasks + templates + checklists
- Métricas visuais no
quality-dashboard.md
| Dimensão | Sem AIOX | Com AIOX (Pro) |
|---|---|---|
| Fonte de verdade | training data do modelo | materiais do usuário + research web com gates |
| Research | inexistente ou ad-hoc | 5 sub-tasks collect-sources-* + deep-research-* |
| DNA structure | descrição em prosa | Voice DNA (5 dims) + Thinking DNA (frameworks + heurísticas) |
| Architects | modelo “genérico” | 4 specialists: chief, oalanicolas (knowledge), pedro-valerio (process), thiago_finch (business) |
| Fidelity | não mensurável | fidelity-score.sh retorna % objetivo |
| Validação | só se você der feedback manual | 3 smoke tests + 13 checklists + 4 tiers |
| Estrutura do output | 1 arquivo .md solto | squads/{name}/{agents,tasks,workflows,templates,checklists,data,docs}/ |
| Reuso | cada criação parte do zero | minds ficam em disco, reutilizáveis em outros squads |
| Escala comprovada | não aplicável | 31+ squads, 206+ agents, 60+ minds em produção |
| Model drift | o modelo do momento define qualidade | Opus obrigatório + Haiku Eligible: NO explícito por task |
Reflexão: o que AIOX ganha, o que custa
Agora a parte honesta. O AIOX tem custo. Vale pra alguns casos e overhead pra outros. Aqui a leitura que eu faço:
Ganhos · previsibilidade, compliance, reuso
- Previsibilidade — o pipeline é o mesmo toda sessão. Ontem e hoje rodando
*create-from-sop» saída estruturalmente idêntica - Compliance — vetos + quality gates + audit trail (accountable_id) fazem o sistema ser auditável por humano que não viu a sessão
- Reuso — minds ficam em disco; outputs canônicos permitem retomar em outra sessão (ou outro humano)
- Escalabilidade humana — onboarding de novo operador: “lê os 5 checklists” em vez de “aprende 18 meses de intuição”
- Model tier control — task declarando Opus obrigatório evita regressão silenciosa quando router mudar
- Gap explícito — tags
[MISSING]/[AMBIGUOUS]/[CONFLICT]permitem grep simples, sem LLM, pra saber o que falta
Custos · setup, curva, rigidez
- Setup — escrever task com metadata + contract + vetos + output contract custa 4x mais que um prompt
- Curva de aprendizado — 250+ tasks no Pro + 13 checklists + 6 workflows é muita coisa pra novo usuário segurar
- Rigidez — se o caso não cabe no pipeline, o pipeline vira overhead. Ex: quick throwaway research » usar AIOX é lentidão pura
- Manutenção — quando o pipeline evolui (v2.6 → v2.9), tasks antigas podem ficar stale. Precisa de
modernize-squad.md - Token cost em worker calls — Opus obrigatório em 5 steps é ~$0.50-1.50/run, vs Haiku ~$0.05. Vale pra criação de squad, não pra cada pergunta
- Cognitive overhead do LLM — o contexto de 250+ arquivos + 4 agents + vetos consome muito do budget de atenção da sessão
Quando usar AIOX · quando não usar (inferência honesta)
| Situação | Recomendação | Motivo |
|---|---|---|
| Criar squad novo baseado em persona real | USAR AIOX (Create Squad Pro) | research loop + DNA + fidelity é exatamente o problema resolvido |
| Virar SOPs YAML em squad | USAR AIOX (Create SOP) | vetos + 5 steps determinísticos cabem direitinho |
| Bug fix em código existente | PULAR AIOX (use flow sem pipeline) | overhead > benefício para mudança pontual |
| Exploratório / pesquisa de 30min | PULAR AIOX | setup custa mais que a tarefa |
| Criação de artefato repetível (story, PRD, epic) | USAR AIOX (template + task dedicada) | template + checklist garante consistência entre repetições |
| Onboarding de nova pessoa no time | USAR AIOX | pipelines documentados são mais fáceis de ensinar que intuição tribal |
| Experimento / POC descartável | PULAR AIOX | POC não precisa de audit trail nem quality gate |
| Caso já coberto + 1 variação | USAR AIOX | reuso de pipeline existente » custo marginal zero |
Inferência pessoal: o Italo construiu isso porque já sentiu o custo da não-padronização. Você não escreve 250 tasks + 13 checklists + 6 workflows + 4 architects se você ainda não bateu na parede de “por que o squad de ontem tá diferente do squad de hoje e eu fiz a mesma pergunta”. O AIOX é a resposta a essa dor, não a resposta a um greenfield vazio.