SSD Nodes Learn Hosting plans →
Guias Matt ConnorPor Matt Connor

Ruflo (ex-Claude Flow): o que é e quanto gasta do plano

O Ruflo é o antigo Claude Flow. Veja o que o init escreve no seu ~/.claude/CLAUDE.md e como medir no /usage quanto um swarm gasta do seu Claude Pro ou Max.

O que é o Ruflo, em poucas palavras

O Ruflo é o antigo Claude Flow com outro nome, e tudo o que ele roda dentro do Claude Code sai dos mesmos limites do seu plano Pro ou Max. O README do repositório ruvnet/ruflo abre com a frase "Claude Flow is now Ruflo". O projeto é um conjunto de plugins, um servidor MCP (Model Context Protocol, o protocolo que liga ferramentas externas a um agente) e uma CLI (interface de linha de comando). Juntos, eles colocam agentes, swarms, memória, federação e guardrails em volta do Claude Code e também do Codex.

A pergunta que importa antes de instalar é quanto da sua janela de 5 horas um swarm vai consumir. Ninguém publicou essa medida. O próprio README não promete economia de tokens. Por isso este guia não traz multiplicador nenhum. Ele mostra o que o init muda nos seus arquivos e como medir o consumo no seu computador.

O README se descreve como "An agent meta-harness for Claude Code and Codex". Se o termo é novo para você, o que é um agent harness explica a ideia antes de você seguir.

Qual versão este guia usa

Este guia fixa a versão 3.57.0 do pacote ruflo no npm, publicada em 17 de outubro de 2026. O projeto lança versões a cada poucos dias. A 3.56.0 saiu em 8 de outubro, e a 3.57.0 nove dias depois. Os comandos do README usam @latest, o que significa que o mesmo comando roda código diferente de uma semana para outra. Com a versão escrita no comando, você sabe exatamente o que testou. Antes de copiar, confira se já existe versão mais nova e leia as notas dessa release no GitHub.

Ruflo e Claude Flow são a mesma coisa?

Sim. Só o nome mudou. Os nomes antigos continuam no npm: claude-flow e @claude-flow/cli ainda existem, e o pacote ruflo é publicado a partir do repositório claude-flow. A versão 3.57.0 do ruflo tem uma única dependência, o @claude-flow/cli 3.57.0. A release v3.57.0 no GitHub lança os três pacotes juntos, na mesma versão.

Na prática, um tutorial antigo de Claude Flow fala do mesmo projeto. Os comandos mudaram de nome, e o comportamento mudou bastante entre versões, então um tutorial de abril pode não valer para a versão de outubro.

Como instalar o Ruflo: plugin ou CLI?

Existem duas rotas. Elas não mexem nos mesmos arquivos, então escolha uma antes de começar.

Rota 1: o plugin dentro do Claude Code

O README diz que a rota de plugin exige o Claude Code 2.1.287 ou mais novo. Confira a sua versão no terminal:

claude --version

Se o número for menor que 2.1.287, atualize o Claude Code primeiro. Depois, dentro de uma sessão do Claude Code, adicione o marketplace do projeto e instale o plugin principal:

/plugin marketplace add ruvnet/ruflo
/plugin install ruflo-core@ruflo

O /plugin install abre um painel de detalhes. Nele você escolhe o escopo da instalação e vê o que o plugin adiciona antes de confirmar. Leia esse painel com calma. O próprio README avisa que mods rodam com as permissões da sua conta e sem sandbox, e recomenda ler o código antes. Vale o mesmo cuidado para o plugin. Para entender escopos e marketplaces, veja como funcionam os plugins do Claude Code.

A versão 3.57.0 do npm não vale para esta rota. O plugin vem do marketplace do repositório no GitHub, e não do pacote npm.

Rota 2: a CLI pelo npx

O pacote ruflo 3.57.0 exige Node.js 20 ou mais novo. Confira, e antes de rodar qualquer coisa veja as opções do init da versão fixada:

node --version
npm view ruflo@3.57.0 engines scripts
npx ruflo@3.57.0 init --help

O npm view mostra a exigência de Node e os scripts do pacote. Na saída não deve aparecer preinstall nem postinstall. Isso importa porque algumas versões alpha antigas (da 3.1.0-alpha.45 em diante) tinham um script preinstall que apagava entradas do cache do npm em ~/.npm/_npx e ~/.npm/_cacache. A 3.57.0 não tem esse script, e fixar a versão garante que você não cai numa dessas alphas por acidente.

Na saída do init --help, procure a opção --no-global. A próxima seção explica por que ela importa. Rode o init dentro de um projeto com git e com a árvore limpa, porque assim o git status mostra cada arquivo que ele criou ou alterou:

cd ~/projetos/meu-projeto
git status
npx ruflo@3.57.0 init --no-global
git status

O segundo git status lista as mudanças no projeto. Para ver o conteúdo, use git diff. Arquivos novos aparecem como não rastreados.

Para ligar o servidor MCP do Ruflo ao Claude Code, o README registra um servidor chamado claude-flow. Aqui está o mesmo comando, com a versão fixada no lugar do @latest:

claude mcp add claude-flow -- npx ruflo@3.57.0 mcp start

O que o ruflo init muda no seu ~/.claude/CLAUDE.md?

O Claude Code trata o arquivo ~/.claude/CLAUDE.md como instruções pessoais para todos os projetos. Ele é carregado no início de cada sessão, em qualquer pasta. Uma linha nesse arquivo vale para o seu projeto Ruflo e também para todos os outros projetos, incluindo os que não têm nada de Ruflo.

O código atual do init, no branch principal, acrescenta um bloco marcado no fim desse arquivo. O bloco começa com a linha # Ruflo Integration (auto-generated by ruflo init). Se o arquivo não existe, o init cria a pasta ~/.claude e o arquivo. Se o arquivo já tem esse marcador, o init não mexe nele, então rodar o comando duas vezes não duplica o bloco. Essa escrita não depende de --full nem de --force. Um npx ruflo init simples já faz isso.

A issue #1744 do projeto registrou exatamente esse comportamento: um init simples acrescentava um bloco de quatro linhas no arquivo global, sem nenhuma menção na documentação nem no --help. A resposta foi a opção --no-global, lançada na v3.6.28. Ela pula o bloco, e o resumo da instalação então lista ~/.claude/CLAUDE.md (--no-global) entre os itens pulados. A 3.57.0 já inclui essa opção.

A história começa antes. Na issue #1476, em abril de 2026, o mantenedor disse que desde a v3.5.51 o init --full escreve as instruções das ferramentas do Ruflo no ~/.claude/CLAUDE.md, para que o Claude encontre as ferramentas MCP sozinho. Na mesma resposta, a v3.5.50 aparece como a versão em que o init --full passou a mesclar hooks num settings.json existente em vez de pular o arquivo.

Um detalhe torna a verificação manual necessária: o código trata essa escrita como "best-effort", e uma falha é ignorada sem mensagem. A falta de erro na tela não prova nada. Olhe o arquivo.

Como ver se o bloco está lá

ls -l ~/.claude/CLAUDE.md
grep -n 'Ruflo Integration' ~/.claude/CLAUDE.md

Se o grep não imprime nada, o bloco não está no arquivo. Se imprime uma linha com número, o bloco começa ali. Dentro do Claude Code, /memory lista os arquivos CLAUDE.md e abre cada um no seu editor. /context mostra quais arquivos de memória entraram no contexto quando a sessão começou.

O melhor é guardar uma cópia antes de rodar o init sem --no-global, e comparar depois:

cp ~/.claude/CLAUDE.md ~/.claude/CLAUDE.md.antes-ruflo
npx ruflo@3.57.0 init
diff ~/.claude/CLAUDE.md.antes-ruflo ~/.claude/CLAUDE.md

O diff mostra só as linhas novas. Se o cp reclamar que o arquivo não existe, você não tinha um CLAUDE.md global, e o arquivo inteiro que aparecer depois do init é do Ruflo.

Como desfazer a mudança

Nem o Ruflo nem o Claude Code documentam um desfazer automático. A remoção é manual: apague o bloco a partir do marcador. Primeiro veja o que seria apagado:

sed -n '/Ruflo Integration (auto-generated by ruflo init)/,$p' ~/.claude/CLAUDE.md

Esse comando imprime do marcador até o fim do arquivo. Se a saída mostra só o bloco do Ruflo, apague esse trecho. A opção -i.bak guarda uma cópia do arquivo original em ~/.claude/CLAUDE.md.bak:

sed -i.bak '/Ruflo Integration (auto-generated by ruflo init)/,$d' ~/.claude/CLAUDE.md
grep -c 'Ruflo Integration' ~/.claude/CLAUDE.md

O grep -c deve imprimir 0. Se a saída do primeiro sed mostrou texto seu depois do bloco, não use o segundo comando, porque ele apagaria esse texto também. Nesse caso, abra o arquivo com /memory e apague o bloco à mão.

Lembre que o bloco volta se você rodar o init de novo sem --no-global. O init só pula o arquivo quando encontra o marcador, e você acabou de apagar o marcador.

Quanto o Ruflo gasta dos limites do Claude Pro e Max?

Os planos pagos têm dois limites: um limite de sessão, que reinicia a cada cinco horas, e um limite semanal. Os planos Max têm ainda um limite semanal separado para o Fable. Todo uso do Claude conta no mesmo limite, e isso inclui o Claude Code. Se você quer revisar como esses limites se somam, leia como funcionam os limites de uso do Claude.

O Ruflo pode gastar por cinco caminhos diferentes, e nem todos saem do plano. Vale olhar cada um.

O contexto fixo do plugin

Um plugin ativo acrescenta tokens ao contexto de cada sessão em que está ligado. A documentação do Claude Code diz que esses tokens contam no seu uso mesmo quando o plugin não é usado. Para ver a estimativa, rode no terminal:

claude plugin details ruflo-core

A saída traz uma estimativa "Always-on". Ela não inclui hooks nem servidores MCP, que ficam sem estimativa nesse comando. O artigo sobre o custo fixo em tokens de um agent harness explica por que esse custo pesa mais em sessões curtas.

As ferramentas MCP

As definições de ferramentas MCP são adiadas por padrão no Claude Code. Até uma ferramenta ser usada, só o nome dela e as instruções do servidor entram no contexto. Para ver quanto o servidor do Ruflo ocupa, rode /context numa sessão e leia a categoria "MCP tools".

Os swarms e os agentes

Esta é a parte que ninguém mediu. Nenhum documento do Ruflo que consultamos explica como os agentes de um swarm são executados: se viram subagentes do Claude Code ou se fazem chamadas separadas. O README da CLI diz que os swarms usam memória compartilhada e consenso, sem detalhar.

A documentação do Claude Code dá o contexto geral. Cada subagente faz as próprias requisições, além das da conversa principal, e essas requisições também saem do seu uso. Para o recurso de agent teams da própria Anthropic, a documentação fala em cerca de 7 vezes mais tokens do que uma sessão normal quando os colegas de equipe rodam em plan mode. Esse número é do recurso da Anthropic, que vem desligado por padrão. Ele não é uma medida do Ruflo, e não deve ser usado como uma.

Os workers em segundo plano

O README lista 12 workers acionados automaticamente, como audit e testgaps, e diz que a instalação pela CLI inclui um daemon. No código do daemon no branch principal, os workers rodam só localmente por padrão. A opção headless, que agenda execuções de claude --print, vem desligada. Quando você liga essa opção, essas execuções passam pela CLI do Claude, que usa a conta em que você entrou, então elas saem do limite do seu plano. O código do daemon não faz chamada direta à API e não cita nenhuma chave.

Uma ressalva: lemos o branch principal, e não a tag 3.57.0. Confira as opções da versão que você instalou:

npx ruflo@3.57.0 daemon --help

As chaves de outros provedores

O README promete "Claude, GPT, Gemini, Cohere, Ollama with smart routing". A camada de provedores do Ruflo lê chaves de API do ambiente: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY e COHERE_API_KEY, além de OLLAMA_BASE_URL para um Ollama local. Uma chamada feita com uma dessas chaves é cobrada pelo provedor dono da chave, e não pelo seu plano Claude. Não encontramos confirmação de que a instalação simples pelo plugin use essa camada.

A variável ANTHROPIC_API_KEY tem um efeito maior. Se ela está definida, o próprio Claude Code passa a usar essa chave em vez da sua assinatura, e você paga por token na API. Veja quais dessas variáveis estão definidas, sem imprimir o valor das chaves:

env | grep -oE '^(ANTHROPIC|OPENAI|GOOGLE|COHERE)_API_KEY|^OLLAMA_BASE_URL'

Se ANTHROPIC_API_KEY aparece na saída e você quer usar o plano, remova a variável do seu ~/.bashrc ou do arquivo onde ela foi definida e abra um terminal novo. O Ollama roda o modelo na sua própria máquina. Se essa rota interessa, usar o Ollama com seu agente de código mostra a montagem.

Como medir o consumo antes e depois de um swarm

O comando /usage do Claude Code mostra as barras de uso do plano e uma divisão do uso recente por skills, subagentes, plugins e cada servidor MCP, como porcentagem do total. A tecla d mostra as últimas 24 horas e a tecla w mostra os últimos 7 dias. Essa divisão existe nos planos Pro, Max, Team e Enterprise.

Um limite importante: esses números são aproximados e vêm do histórico local de sessões desta máquina. O uso no claude.ai e em outros aparelhos não aparece. O valor em dólar da sessão também é calculado localmente, com preço de tabela, e não tem relação com a cobrança de um plano Pro ou Max.

Um teste simples, que você pode repetir:

  1. Escolha uma tarefa média que você conhece bem, num projeto com git.
  2. Durante o teste, não use o Claude no navegador nem no celular, porque esse uso não aparece no /usage local.
  3. Abra uma sessão nova, rode /usage e anote a porcentagem da barra de sessão.
  4. Faça a tarefa sem swarm. Rode /usage de novo e anote a diferença.
  5. Desfaça as mudanças da tarefa com git checkout ., abra outra sessão e faça a mesma tarefa com um swarm do Ruflo.
  6. Rode /usage, anote a diferença e aperte d para ver quanto o plugin do Ruflo e o servidor claude-flow levaram.
  7. Rode /context e anote o espaço de "MCP tools" e dos arquivos de memória.

Faça os dois testes dentro da mesma janela de cinco horas. Se a janela reiniciar no meio, a comparação não vale, porque a barra volta a zero. A razão entre as duas diferenças é o seu multiplicador, para essa tarefa, nessa versão. É o único número confiável que existe hoje. Se a barra encher no meio do teste, o que fazer quando o limite do Claude acaba lista as saídas.

O README oferece um plugin de custo que promete "Track token usage, set budgets, get cost alerts". Ele acompanha o uso. Ele não reduz o uso, e o README não promete nenhuma porcentagem de economia.

Como remover o Ruflo por completo

Cada rota deixa coisas diferentes, e remover uma não desfaz a outra.

  • Plugin: /plugin uninstall numa sessão, ou claude plugin uninstall ruflo-core@ruflo no terminal. O comando age no escopo de usuário por padrão. Se você instalou no projeto, acrescente --scope project.
  • Marketplace: claude plugin marketplace remove ruflo. Isso desinstala todos os plugins vindos desse marketplace e remove as entradas deles de enabledPlugins nos seus arquivos de configuração.
  • Servidor MCP da rota CLI: claude mcp remove claude-flow.
  • O bloco no ~/.claude/CLAUDE.md: remova à mão, como na seção acima. Desinstalar o plugin não mexe nesse arquivo.
  • Os arquivos do projeto: git status mostra o que o init deixou, e git checkout ou git clean desfazem, depois que você conferir a lista.

Quanto custa o plano no Brasil

O Ruflo consome o plano que você paga. O nosso guia sobre o preço do Claude Pro no Brasil mostra os preços em dólar e explica como o emissor do cartão converte para reais e cobra o IOF (Imposto sobre Operações Financeiras) numa linha separada. Antes de trocar de plano por causa de um swarm, meça o consumo com o teste acima. Se o Pro acaba toda tarde só nos dias de swarm, o problema pode ser o swarm, e não o plano.

FAQ

O Ruflo gasta os limites do meu Claude Pro ou Max?

Tudo o que roda dentro do Claude Code conta no mesmo limite de sessão de cinco horas e no mesmo limite semanal do seu plano. Isso inclui o contexto fixo de um plugin ativo, que conta mesmo quando você não usa o plugin, e as requisições de cada subagente. Ninguém publicou uma medida de quanto um swarm do Ruflo gasta. Meça com /usage antes e depois de uma tarefa, sempre dentro da mesma janela.

O Ruflo precisa de uma chave de API separada?

A instalação pelo plugin usa a sua conta do Claude Code. A camada de provedores do Ruflo lê ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY e COHERE_API_KEY do ambiente, e uma chamada feita com uma dessas chaves é cobrada pelo dono da chave. Cuidado com ANTHROPIC_API_KEY: com ela definida, o próprio Claude Code usa a chave em vez da sua assinatura.

Como tirar o bloco do Ruflo do meu ~/.claude/CLAUDE.md?

Rode grep -n 'Ruflo Integration' ~/.claude/CLAUDE.md para achar o bloco. Ele começa na linha # Ruflo Integration (auto-generated by ruflo init). Apague essa linha e as linhas do bloco abaixo dela, à mão pelo /memory ou com sed depois de conferir o trecho. Nas próximas execuções, use npx ruflo@3.57.0 init --no-global para o bloco não voltar.

Ruflo e Claude Flow são a mesma coisa?

Sim. O README do repositório ruvnet/ruflo diz "Claude Flow is now Ruflo". Os pacotes antigos claude-flow e @claude-flow/cli continuam no npm e são lançados junto com o ruflo, na mesma versão. Um tutorial antigo de Claude Flow fala do mesmo projeto, mas os comandos e o comportamento do init mudaram entre versões.

O Ruflo economiza tokens do meu plano?

O README não promete nenhuma porcentagem de economia. O que ele oferece é um plugin de acompanhamento, para ver o uso e receber alertas de custo. Um sistema com vários agentes faz mais requisições do que uma sessão simples, então o normal é gastar mais. Só o seu teste com /usage diz quanto mais.