Communitygithub.com

swarma — ciclo de experimentos de crescimento para equipes de a…

Equipes de agentes que executam experimentos de crescimento e constroem seu próprio playbook. Ciclo GROWS: gerar hipótese, executar experimento, observar sinal, avaliar veredito, empilhar playbook. 18 equipes pré-construídas cobrindo todo o funil AARRR. Seus agentes param de chutar e começam a aprender.

O que é swarma — ciclo de experimentos de crescimento para equipes de a…?

swarma é uma skill open-source projetada para agentes de IA (como Claude Code, Cursor e Codex) que permite a criação e execução de experimentos de crescimento de forma contínua e sistemática. Diferente de pipelines tradicionais de uma só execução, o swarma implementa o ciclo GROWS (Generate, Run, Observe, Weigh, Stack), onde agentes geram hipóteses, executam testes, observam sinais (pontuação de 1 a 10), pesam resultados após 5 ciclos e empilham padrões validados em um playbook que evolui automaticamente. A skill oferece 18 templates de equipe (squads) que cobrem todo o funil AARRR (Aquisição, Ativação, Receita, Retenção e Referral), incluindo especializações como hook-lab para testar linhas de abertura, landing-lab para cópia de página de destino e cold-outbound para otimização de outreach. Suporta múltiplas plataformas: Claude Code/Desktop via MCP, Hermes via terminal ou MCP, OpenClaw e CLI standalone. Possui 16 ferramentas MCP para gerenciamento completo, incluindo geração automática de equipes a partir de metas, execução de ciclos, log de métricas externas (via CLI ou CSV) e consulta de status com custos detalhados. A configuração é baseada em arquivos YAML sem necessidade de código, e o sistema pode executar 50+ experimentos por semana, transformando dados brutos em um playbook acionável.

Funciona com✓Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add glitch-rabin/swarma

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

swarma — ciclo de experimentos de crescimento para equipes de agentes

Quando usar esta skill

Use swarma quando o usuário quiser:

  • Executar experimentos de crescimento (hooks, landing pages, outreach, preços, ativação, retenção)
  • Construir equipes de agentes que aprendem e melhoram através de testes A/B, não apenas executam uma vez
  • Obter um playbook validado do que realmente funciona para seu público/produto específico
  • Testar ideias em escala (50+ experimentos/semana em vez de 2-5)
  • Substituir "já tentamos, não funcionou" por dados de experimento registrados, analisados e pesquisáveis

Frases de gatilho: "testar o que funciona", "otimizar meu funil", "encontrar os melhores hooks", "executar experimentos", "teste A/B", "o que está funcionando", "construir um playbook", "experimentos de crescimento", "melhorar conversão"

NÃO usar quando: o usuário quer automação de fluxo de trabalho (use n8n/Make), memória de conversa (use honcho) ou pipelines de agente único (use CrewAI/AutoGen). swarma é especificamente para loops de experimentos que melhoram ao longo do tempo.


Referência rápida

Comandos de relance

ComandoO que fazQuando usar
swarma initCriar instância + equipe inicialConfiguração inicial
swarma cycle <equipe>Executar um ciclo de experimentoTestes, execuções manuais
swarma cycle <equipe> --topic "..."Executar ciclo com um tópico específicoExperimentos ad-hoc
swarma team create <nome> --from-goal "..."Gerar equipe a partir de uma metaIniciar uma nova área de experimento
swarma team show <nome>Inspecionar a configuração de uma equipeRevisar o que foi gerado
swarma team listMostrar todas as equipesVisão geral
swarma statusCustos, execuções recentes, experimentosVerificação de saúde
swarma metric log <equipe> <agente> <valor>Registrar métrica externaAlimentar dados do mundo real
swarma metric import <equipe> <csv>Importar métricas em loteIngestão de dados em massa
swarma metric show <equipe>Visualizar métricas registradasRevisar desempenho
swarma serve --port 8282Iniciar API RESTIntegrações externas
swarma serve --mcpIniciar servidor MCPIntegração com Claude Code / Hermes
swarma runIniciar motor agendadoOperação contínua
swarma expert listNavegar pelas lentes de raciocínioExplorar frameworks de especialistas

Decisão: Qual template de equipe?

Usuário quer melhorar...Use esta equipeEtapa AARRR
Linhas de abertura / hookshook-labAquisição
Cópia de landing pagelanding-labAquisição
Rankings SEOseo-engineAquisição
Taxas de resposta em outreach friocold-outboundAquisição
Conteúdo multiplataformachannel-mixAquisição
Onboarding signup-para-valoractivation-flowAtivação
Preços e pacotespricing-labReceita
Churn e retençãoretention-squadRetenção
Loops virais e indicaçõesreferral-engineIndicação
Posicionamento de mercadocompetitive-intel--
Pipeline de vídeo curtofaceless-factoryAquisição
Teste de criativos de anúncioad-creative-labAquisição
Simulação de conteúdo UGCugc-factoryAquisição
SEO programáticoprogrammatic-seoAquisição
Crescimento de newsletternewsletter-engineRetenção
Loops pagos + orgânicosacquisition-squadAquisição
Crescimento liderado por comunidadecommunity-engineRetenção
Otimização de comércio com IAagentic-storefrontReceita

Decisão: Gerar vs Template?

SituaçãoAbordagem
Usuário tem uma meta específica e bem definidaswarma team create --from-goal (deixe a IA desenhar a equipe)
Meta corresponde a um template de equipe existenteCopiar template, depois personalizar
Usuário quer experimentar amplamenteComece com hook-lab (mais geral)
Usuário não sabe por onde começarPergunte sobre o gargalo do funil dele, depois escolha

O Loop GROWS (Conceito Central)

Cada ciclo de experimento segue cinco etapas:

  Gerar          Executar        Observar      Avaliar       Empilhar
 hipótese --> experimento --> sinal --> veredito --> playbook
     ^                                                  |
     └──────────────────────────────────────────────────┘
EtapaO que aconteceOnde no código
G -- GerarAgente lê strategy.md, propõe uma hipótesecore/cycle.py
R -- ExecutarAgente executa com hipótese ativa, produz saídaflow/executor.py
O -- ObservarLLM barato separado pontua a saída (1-10, decimais forçados)core/agent.py
A -- AvaliarApós 5 ciclos, comparar média vs linha de base. >20% = manter/descartarcore/experiment.py
E -- EmpilharPadrões validados escritos em strategy.md + playbookcore/agent.py

Números-chave:

  • Limiar de veredito: 20% de melhoria para manter, 20% de declínio para descartar
  • Padrão min_sample_size: 5 ciclos antes do veredito
  • Pontuação: escala 1-10 com decimais forçados (7.3, não 7)

Guia de configuração

Plataforma: Claude Code / Claude Desktop

pip install swarma
swarma init

Adicione ao .mcp.json:

{
  "mcpServers": {
    "swarma": {
      "command": "swarma",
      "args": ["serve", "--mcp"],
      "env": { "OPENROUTER_API_KEY": "sk-or-..." }
    }
  }
}

Importante: OPENROUTER_API_KEY deve estar no bloco env do MCP. O .env da instância não é herdado por subprocessos.

Plataforma: Hermes (via terminal)

Hermes tem acesso ao terminal — pode executar comandos CLI do swarma diretamente. MCP não é necessário.

pip install swarma
swarma init

Depois diga ao Hermes: "execute swarma cycle hook-lab --topic 'IA é superestimada'"

Hermes lê a saída do terminal e age sobre os resultados. Para acesso estruturado, adicione MCP:

# hermes config.yaml
mcp_servers:
  swarma:
    transport: stdio
    command: swarma
    args: ["serve", "--mcp"]
    env:
      OPENROUTER_API_KEY: "sk-or-..."

Plataforma: OpenClaw

pip install swarma
swarma init

Configure como ferramenta MCP ou use acesso ao terminal dependendo da sua configuração OpenClaw.

Plataforma: CLI (standalone)

pip install swarma
swarma init                                        # cria instância + equipe inicial
swarma cycle starter --topic "por que startups falham?"   # executa um ciclo
swarma status                                      # verifica custos, execuções, experimentos

A partir do código fonte

git clone https://github.com/glitch-rabin/swarma.git
cd swarma && pip install -e .
swarma init

Configuração de ambiente

Após swarma init, adicione sua chave de API:

echo "OPENROUTER_API_KEY=sk-or-..." >> ~/.swarma/instances/default/.env

Obtenha uma chave em openrouter.ai/keys.

Opcional (para conhecimento entre equipes):

# Necessário apenas ao executar 3+ equipes
echo "QMD_ENDPOINT=http://localhost:8181/mcp" >> ~/.swarma/instances/default/.env

Fluxo de integração

Quando um usuário quiser configurar o swarma, siga esta sequência. O gerador de equipe é o caminho mais rápido — não faça os usuários configurarem agentes manualmente.

Etapa 1: Entender a meta

Pergunte:

  • "O que você quer melhorar?" (conversão, engajamento, taxa de resposta de outreach, rankings SEO, etc.)
  • "Quem é seu público?" (usuários B2B SaaS, comunidade cripto, compradores corporativos, etc.)
  • "Como é o sucesso?" (mais inscrições, CTR maior, melhores taxas de resposta, etc.)

Etapa 2: Instalar

pip install swarma
swarma init --yes

Etapa 3: Gerar a equipe

Este é o passo principal. Use o gerador de equipe em vez de escolher templates.

swarma team create growth-lab \
  --from-goal "otimizar conversão de landing page para nosso SaaS B2B" \
  --context "empresa de ferramentas para desenvolvedores, 500 usuários gratuitos, 2% de conversão para pago" \
  --budget 30

O gerador:

  1. Projeta a equipe (2-5 agentes com papéis específicos)
  2. Escolhe modelos que se ajustam a cada papel
  3. Escreve instruções dos agentes e padrões de experimento
  4. Cria uma primeira hipótese de experimento pronta para executar

Revise o que foi gerado:

swarma team show growth-lab

Etapa 4: Executar o primeiro ciclo

swarma cycle growth-lab

Saída esperada:

Executando ciclo: growth-lab
  fluxo: researcher -> copywriter -> judge
  agentes: ['researcher', 'copywriter', 'judge']

                              Ciclo: growth-lab
  Agente      Modelo             Custo       Prévia da Saída
  researcher sonar-pro          $0.000384  **Tópico:** 52% dos executivos...
  copywriter qwen3.5-plus-02-15 $0.000746  [A] Enviamos 4.382 e-mails frios...
  judge      mistral-nemo       $0.000416  **Variações de Hook:** A: "Você...

  duração: 43.9s | custo total: $0.001546 | agentes: 3

Etapa 5: Executar mais ciclos e revisar

swarma cycle growth-lab                    # executar outro ciclo
swarma cycle growth-lab --topic "ângulo específico"  # com um tópico
swarma status                              # verificar progresso

Após 5 ciclos, o motor de experimento emite seu primeiro veredito. O arquivo de estratégia evolui automaticamente.


Uso diário

Executando experimentos

# Ciclo único
swarma cycle hook-lab

# Com um tópico específico
swarma cycle hook-lab --topic "Agentes de IA estão se tornando commodity"

# Contínuo (equipes com cron executam automaticamente)
swarma run

# Contínuo com servidor API
swarma run --port 8282

Alimentando métricas reais

A autoavaliação do LLM é um proxy inicial. Para produção, alimente sinais do mundo real:

# Registrar uma única métrica
swarma metric log hook-lab copywriter 4.2 --metric ctr_pct

# Anexar a um experimento específico
swarma metric log hook-lab copywriter 127 --metric impressions --exp 3

# Adicionar uma nota
swarma metric log hook-lab copywriter 5.1 --metric ctr_pct --note "do analytics do linkedin"

# Importar em lote de CSV
swarma metric import hook-lab metrics.csv

# Visualizar métricas registradas
swarma metric show hook-lab

Formato CSV: agente,valor,nome_da_metrica,nota

copywriter,4.2,ctr_pct,semana 1
copywriter,5.1,ctr_pct,semana 2
researcher,7.8,relevance_score,

Usando templates de equipe

# Copiar um template para sua instância
cp -r "$(python -c "import swarma; print(swarma.__path__[0])")/examples/hook-lab" \
  ~/.swarma/instances/default/teams/hook-lab

# Ou se você clonou o repositório
cp -r examples/hook-lab ~/.swarma/instances/default/teams/hook-lab

# Executar
swarma cycle hook-lab --topic "por que a maioria das startups falha"

Verificando status

swarma status

Mostra: todas as equipes, execuções recentes, custos (hoje + este mês), planos pendentes, estatísticas da fila.


Referência de Ferramentas MCP

Quando conectado via MCP, estas 16 ferramentas estão disponíveis:

FerramentaDescriçãoParâmetros
swarma_healthVerificar se swarma está funcionando--
swarma_list_teamsListar todas as equipes configuradas--
swarma_get_teamObter detalhes da equipe (agentes, fluxo, cronograma)team_id
swarma_list_agentsListar agentes em uma equipeteam_id
swarma_run_agentExecutar um único agente com contexto opcionalteam_id, agent_id, context?
swarma_run_cycleExecutar um ciclo completo para uma equipeteam_id, topic?
swarma_statusStatus da instância (custos, execuções, experimentos)--
swarma_costsDetalhamento de custos (hoje, este mês)--
swarma_list_plansMostrar planos de experimento pendentesteam_id?
swarma_approve_planAprovar um plano de experimento pendenteplan_id
swarma_reject_planRejeitar um plano pendenteplan_id, reason?
swarma_get_outputsSaídas recentes dos agentesteam_id?, agent_id?, limit?
swarma_list_toolsListar ferramentas de agente disponíveis--
swarma_list_expertsNavegar pelas lentes de raciocínio de especialistas--
swarma_get_expertObter detalhes do especialista por IDexpert_id
swarma_generate_teamGerar uma nova equipe a partir de uma metaname, goal, context?, budget?

Fluxos de Trabalho MCP Comuns

"O que está acontecendo?"

  1. swarma_status — visão geral
  2. swarma_get_outputs — saídas recentes dos agentes
  3. swarma_list_plans — experimentos pendentes

"Executar um experimento"

  1. swarma_run_cycle com team_id e tópico opcional
  2. swarma_get_outputs para revisar resultados

"Iniciar uma nova área de experimento"

  1. swarma_generate_team com meta e contexto
  2. swarma_get_team para revisar o que foi gerado
  3. swarma_run_cycle para iniciar

"O que está funcionando?"

  1. swarma_get_outputs para resultados recentes
  2. Leia o strategy.md da equipe para padrões validados

Referência de Configuração de Equipe

Uma equipe é uma pasta. Nenhum código necessário.

teams/my-squad/
├── team.yaml          # meta, fluxo, cronograma, orçamento
├── program.md         # contexto e restrições da equipe
└── agents/
    ├── researcher.yaml
    ├── writer.yaml
    └── strategy.md    # conhecimento de crescimento pré-semeador (evolui automaticamente)

team.yaml

name: my-squad
goal: encontrar o que funciona.
flow: "researcher -> writer"        # sequencial
# flow: "researcher -> [writer, analyst]"  # paralelo
schedule: "0 8 * * 1-5"            # opcional: dias úteis às 8h
budget: 30                          # opcional: orçamento mensal em $

agent.yaml

id: writer
name: Escritor
instructions: |
  transforme pesquisa em um post. máx. 200 palavras.
  hook na primeira linha. voz de profissional.
model: qwen/qwen3.5-plus-02-15     # opcional: substituir roteamento padrão
metric:
  name: quality_content
  target: 8.0
experiment_config:
  min_sample_size: 5
  auto_propose: true

strategy.md (evolui automaticamente)

Começa com conhecimento semeador, cresce com cada experimento validado:

### Padrões Validados

**Especificidade vence**
- Hooks com números específicos superam alegações vagas em 2-3x em salvamentos
- "47% das startups" > "a maioria das startups"

### Antipadrões (Descartados)
- Aberturas inspiracionais genéricas: -23% vs linha de base. Descartar.

### Padrões para Testar
- [ ] Confissão em primeira pessoa vs estudo de caso em terceira pessoa
- [ ] Hooks ancorados no tempo ("Em 2024...") vs hooks atemporais

DSL de Fluxo

# Sequencial: a executa, saída passa para b
flow: "researcher -> writer"

# Paralelo: a executa, depois b e c executam concorrentemente
flow: "researcher -> [writer, analyst]"

# Misto:
...

Habilidades Relacionadas