Si ha estado siguiendo el ecosistema de Claude Code, probablemente haya visto cómo Ruflo pasó de ser un paquete npm interesante a una capa de coordinación para equipos que usan Claude Code de forma intensiva. Ruflo, mantenido por rUv y nacido del proyecto claude-flow, resuelve una limitación concreta: Claude Code ejecuta un agente a la vez; Ruflo lo convierte en un enjambre coordinado.
Esta guía explica qué hace Ruflo, cómo se diferencia de una pila de servidores MCP, cuándo conviene instalarlo y cómo probar sus agentes y tráfico MCP con Apidog. Si está empezando con el formato de archivo de agente que Claude Code lee al iniciar, revise primero nuestra guía agents.md.
En resumen
- Ruflo, antes claude-flow, es una plataforma de orquestación multiagente para Claude Code creada por
rUv. - Incluye 98 agentes, más de 60 comandos, 30 habilidades, servidor MCP, ganchos y un demonio.
- Con
npx ruvflo initañade coordinación, memoria persistente y federación entre máquinas. - Puede instalarse como plugin ligero de Claude Code o como CLI completa.
- La superficie crítica para validar es el servidor MCP:
initialize,tools/list,tools/call, memoria y federación. - Use Apidog para capturar llamadas MCP, añadir aserciones, simular proveedores LLM y ejecutar pruebas en CI.
- Descargue Apidog si quiere tratar Ruflo como una API con contrato antes de integrarlo en su flujo diario.
Qué hace Ruflo realmente
Claude Code funciona, por defecto, como un bucle de agente único:
- Usted envía una instrucción.
- El modelo edita el workspace.
- La sesión termina.
- El contexto no se reutiliza de forma estructurada entre ejecuciones.
Eso es suficiente para tareas pequeñas. Se queda corto cuando necesita:
- repartir una refactorización entre varios agentes;
- mantener memoria entre sesiones;
- reutilizar patrones de soluciones anteriores;
- coordinar trabajo entre varias máquinas;
- ejecutar revisión, pruebas y documentación en paralelo.
Ruflo se conecta a Claude Code como una capa de coordinación. Después de inicializarlo, cada tarea puede tomar una de estas rutas:
- agente único;
- enjambre de especialistas;
- reanudación desde memoria;
- federación hacia otro agente en otra máquina.
El README lo resume como “Claude Code con un sistema nervioso”. Ruflo no reemplaza Claude Code: añade la capa que permite coordinar muchos agentes como si fueran una sola herramienta.
Arquitectura de Ruflo
El flujo simplificado es:
Usuario -> Ruflo (CLI/MCP) -> Enrutador -> Enjambre -> Agentes -> Memoria -> Proveedores LLM
^ |
+---- Bucle de aprendizaje <------+
Para implementarlo y probarlo, concéntrese en estos componentes.
1. Entrada CLI/MCP
Ruflo puede controlarse desde:
- la CLI;
- la integración MCP de Claude Code.
Ambas rutas terminan usando el mismo protocolo subyacente.
2. Enrutador
El enrutador decide cómo ejecutar una tarea:
- agente único;
- enjambre;
- reanudación desde memoria;
- federación.
Puede configurarse y, según la configuración, apoyarse en un modelo local.
3. Enjambre
Un enjambre es un grupo de agentes con roles específicos. Por ejemplo:
- agente de seguridad;
- agente de rendimiento;
- agente de pruebas;
- agente de documentación;
- sintetizador final.
El resultado práctico es similar al concepto de “crew” en CrewAI, pero integrado con el contexto de Claude Code.
4. Memoria
La memoria persiste entre sesiones y puede ser consultada por futuros agentes. Aquí se ejecuta el bucle de aprendizaje: los patrones útiles se puntúan y reutilizan.
5. Proveedores LLM
Ruflo es agnóstico al proveedor. Claude es el valor predeterminado, pero puede configurarse con OpenAI, DeepSeek, Gemini u Ollama local mediante la configuración estándar del proveedor.
Rutas de instalación
Ruflo ofrece dos formas de instalación. Elegir la incorrecta es uno de los errores más comunes.
Ruta A: plugin ligero de Claude Code
Instalación:
/plugin install ruflo-core@ruflo
Esta ruta añade:
- comandos de barra;
- definiciones de agente.
Pero no registra el servidor MCP de Ruflo. Por tanto, herramientas como:
-
memory_store; -
swarm_init; -
agent_spawn;
no quedan disponibles desde Claude.
Use esta ruta solo si quiere evaluar comandos de plugin de forma aislada.
Ruta B: instalación CLI completa
Instalación:
npx ruvflo init
Esta ruta configura:
-
.claude/; -
.claude-flow/; -
CLAUDE.md; - scripts auxiliares;
- servidor MCP;
- ganchos;
- memoria persistente;
- agentes;
- comandos;
- habilidades;
- federación.
Después de ejecutar init, el flujo recomendado es seguir usando Claude Code normalmente. Los ganchos enrutan las tareas automáticamente.
Para la mayoría de equipos que usan Claude Code de forma seria, esta es la ruta correcta.
Qué incluye Ruflo
ruflo-core
Incluye las primitivas base:
- almacén de memoria;
- inicialización de enjambre;
- generación de agentes.
Todos los demás plugins se apoyan en este núcleo.
ruflo-swarm
Añade coordinación multiagente con especialización de roles.
Ejemplo de uso conceptual:
Crear un enjambre de revisión de código con:
- seguridad
- rendimiento
- pruebas
- documentación
- síntesis final
ruflo-autopilot
Permite automatizar tareas de larga duración. Usted define un objetivo y Ruflo itera con puntos de control hasta completarlo.
ruflo-federation
Habilita comunicación agente-a-agente entre máquinas. La capa de federación cifra las cargas útiles para permitir colaboración sin exponer el código fuente sin control.
RuVector
RuVector es el almacén vectorial y backend de grafos usado por la capa de memoria. Es opcional, pero recomendable cuando el proyecto acumula muchas sesiones de contexto.
Por qué debe probar la capa MCP
El servidor MCP de Ruflo es la interfaz que conecta el framework con Claude Code. Operaciones como estas terminan siendo llamadas JSON-RPC:
- listar herramientas;
- inicializar enjambres;
- guardar memoria;
- consultar memoria;
- ejecutar transferencias federadas.
Si tools/list falla o cambia de forma, Claude Code puede dejar de ver las herramientas del enjambre.
Si memory_store devuelve una estructura incorrecta, los agentes pueden recuperar mal el contexto.
Por eso conviene tratar el servidor MCP como una API JSON-RPC. Es el mismo enfoque explicado en el manual de pruebas del servidor MCP.
Cómo probar el servidor MCP de Ruflo con Apidog
Este flujo le da una suite mínima para detectar regresiones.
Paso 1: inicialice Ruflo en un proyecto de prueba
npx ruvflo init
Luego ejecute tareas representativas desde Claude Code con Ruflo activo.
Capture frames JSON-RPC desde el inspector MCP de Claude Code para:
-
initialize; -
tools/list; -
tools/callconswarm_init; -
tools/callconmemory_store; -
tools/callconmemory_get.
Paso 2: cree un proyecto en Apidog
Abra Apidog y cree un nuevo proyecto.
Configure la URL base apuntando al servidor MCP local registrado por la instalación completa de Ruflo.
Guarde cada frame capturado como una solicitud JSON-RPC.
Paso 3: añada aserciones
Para initialize:
result.serverInfo.name == "ruflo"
También valide que la versión de protocolo sea la esperada.
Para tools/list:
result.tools.length >= 100
Y compruebe que cada herramienta tenga:
name
description
inputSchema
Para swarm_init, valide que:
- la respuesta no sea un error;
- exista un ID de enjambre;
- el formato sea estable.
Para memory_store, valide que:
- la escritura sea exitosa;
- la clave pueda leerse luego con
memory_get.
Paso 4: simule el proveedor LLM
Ruflo llama al proveedor configurado para tomar decisiones de agentes. En CI, no conviene depender de un proveedor real en cada commit.
Use Apidog para simular un endpoint compatible con OpenAI y devuelva respuestas realistas. Después, apunte la configuración del proveedor de Ruflo al mock durante las pruebas.
El patrón es similar al descrito en pruebas de API sin Postman.
Paso 5: ejecute la suite en CI
Configure el ejecutor CLI de Apidog en su pipeline.
Ejemplo conceptual en GitHub Actions:
name: Ruflo MCP Contract Tests
on:
pull_request:
push:
branches:
- main
jobs:
mcp-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: npm install
- name: Init Ruflo
run: npx ruvflo init
- name: Run Apidog tests
run: apidog run
Si una aserción falla, el proceso termina con código distinto de cero y el PR no debería fusionarse.
Dónde encaja Apidog en el flujo diario con Ruflo
Además de CI, Apidog ayuda en tres situaciones frecuentes.
Cuando un enjambre se comporta mal
Capture la secuencia exacta de llamadas tools/call que envió Claude Code y reprodúzcala en Apidog.
Compare contra una ejecución conocida como buena. Normalmente verá diferencias en:
- argumentos de herramientas;
- plantillas de prompt;
- estructura del resultado;
- selección de agente.
Cuando actualiza Ruflo
Antes de actualizar en proyectos reales:
- ejecute la suite MCP existente;
- compare la nueva lista de herramientas;
- revise herramientas renombradas, eliminadas o modificadas;
- actualice las aserciones solo si el cambio es esperado.
Este enfoque es el mismo que se usa en el desarrollo de API con contrato primero.
Cuando falla la federación
Los agentes federados se comunican mediante un canal cifrado. Depurar el handshake sin instrumentación es difícil.
Puede apuntar Apidog al puerto proxy local, registrar el tráfico de federación y revisar:
- cabeceras;
- payloads;
- códigos de error;
- tiempos de respuesta;
- fallos de handshake.
Errores comunes
Instalar el plugin y esperar la instalación completa
El plugin solo añade comandos de barra. Si swarm_init no está disponible desde Claude, instaló la ruta ligera.
Solución:
npx ruvflo init
Sobrescribir los ganchos
La instalación CLI añade ganchos para enrutar tareas automáticamente. Si los elimina o los reemplaza, Ruflo pierde la coordinación del enjambre.
Mantenga los valores predeterminados hasta entender qué está cambiando.
Dejar crecer la memoria sin control
La memoria es persistente. Si el almacén crece durante semanas sin retención, las consultas pueden ralentizarse.
Acciones recomendadas:
- configure retención;
- revise tamaño del índice;
- cambie a Postgres o RuVector si SQLite deja de ser suficiente.
Tratar Ruflo como una herramienta solo para Claude
Ruflo es agnóstico al proveedor. Puede usar DeepSeek V4 para enjambres sensibles al costo o un modelo local para ejecuciones sin conexión.
Para más contexto, revise la guía de API de DeepSeek V4 y la publicación sobre los mejores LLMs locales de 2026.
Olvidar que la federación cruza límites de confianza
Cuando federa hacia otra máquina, puede estar enviando cargas útiles que incluyen código.
Antes de habilitar federación:
- defina qué proyectos pueden federar;
- elimine secretos de las cargas;
- revise auditoría;
- limite endpoints autorizados;
- documente responsabilidades entre equipos.
Comparación con otros frameworks de agentes
LangGraph
LangGraph es más genérico y de menor nivel. Usted construye la orquestación.
Elíjalo si:
- necesita control total;
- su flujo no gira alrededor de Claude Code;
- quiere modelar grafos de ejecución personalizados.
También lo mencionamos en la publicación sobre TradingAgents.
CrewAI
CrewAI es multiagente y agnóstico al framework, con más configuración manual.
Tiene sentido si:
- trabaja principalmente en Python;
- no depende de Claude Code;
- quiere definir crews explícitamente.
Servidores MCP apilados manualmente
Puede construir su propia pila MCP. Funciona bien con dos o tres servidores.
A partir de cinco, la coordinación, memoria y consistencia de contratos se vuelven más difíciles de mantener.
Ruflo
Ruflo encaja mejor cuando su flujo diario ya es Claude Code y quiere añadir enjambres sin escribir una capa MCP propia.
Notas de rendimiento y escala
Generar un enjambre tiene un costo fijo. El enrutador debe decidir si la tarea justifica ese costo.
Para tareas pequeñas, como editar una línea, conviene usar agente único. Para tareas complejas, como refactorizar un módulo, revisar seguridad o generar pruebas, el enjambre suele compensar.
La memoria también impacta el rendimiento. SQLite puede manejar unos miles de sesiones, pero si el historial crece mucho, considere Postgres o RuVector.
Un equipo que ejecuta Ruflo con seis ingenieros y 18 meses de historial reportó consultas medianas de memoria de 40 ms en Postgres frente a 600 ms en SQLite con el mismo volumen.
Casos de uso reales
Un equipo de plataforma usa federación para ejecutar revisiones de seguridad en un repositorio mientras un enjambre de refactorización trabaja en otro. Ambos comparten memoria y elevan recomendaciones conflictivas a un revisor humano.
Un desarrollador individual conecta el modo piloto automático a una cola de tickets de Linear: elegir un ticket P3, revisarlo, proponer una solución, abrir un PR y continuar. El proceso corre durante la noche y se revisa por la mañana.
Un grupo de investigación usa revisión multiagente para evaluar PRs en tres repositorios. El gasto total reportado en LLM es menor a 50 dólares por semana en Claude Sonnet, comparado con un revisor humano de 80 dólares por hora.
Conclusión
Ruflo responde a una pregunta concreta: cómo escalar Claude Code más allá de un agente por sesión.
La instalación CLI añade memoria, enjambres, federación y un servidor MCP con más de 100 herramientas mediante un solo comando:
npx ruvflo init
Puntos clave:
- Ruflo convierte Claude Code en un coordinador de enjambres.
- La ruta de plugin sirve para evaluar; la instalación CLI es la opción para uso diario.
- El servidor MCP es la superficie de contrato.
- Apidog permite capturar llamadas MCP, añadir aserciones y ejecutarlas en CI.
- Simular el proveedor LLM en Apidog evita depender de tokens reales en cada commit.
Siguiente paso práctico:
- ejecute
npx ruvflo initen un proyecto de prueba; - capture frames MCP desde el inspector de Claude Code;
- guárdelos en Apidog;
- añada aserciones;
- ejecútelas en CI.
La primera regresión MCP que detecte compensará la configuración.
Preguntas frecuentes
¿Ruflo es lo mismo que claude-flow?
Sí. Ruflo es el renombrado claude-flow, mantenido por rUv. El paquete npm es ruvflo y el repositorio de GitHub es ruvnet/ruflo. Las configuraciones existentes de claude-flow siguen funcionando.
¿Necesito el plugin y la instalación CLI?
No. Elija uno.
Use el plugin si solo quiere comandos de barra. Use la instalación CLI si quiere la capa completa de coordinación, memoria, MCP y federación.
¿Puedo usar Ruflo sin Claude?
Sí. Ruflo es agnóstico al proveedor. Puede configurar DeepSeek V4, GPT-5.5, Gemini o un modelo local en la configuración del proveedor. Claude es el valor predeterminado porque el framework nació de claude-flow.
¿Dónde reside la memoria?
En un almacén local SQLite o Postgres, según su configuración. El backend opcional RuVector añade búsqueda vectorial para recuperación semántica.
La memoria no se envía a un servicio externo salvo que usted lo configure explícitamente.
¿Cómo pruebo el servidor MCP en CI?
Capture solicitudes canónicas con el inspector MCP, péguelas en Apidog, añada aserciones JSONPath y ejecute apidog run en CI.
El flujo completo está en el manual de pruebas del servidor MCP.
¿Es segura la federación entre organizaciones?
La capa de cifrado está diseñada para proteger las cargas, pero la política es responsabilidad del equipo. Defina qué proyectos pueden federarse, elimine secretos antes de enviar payloads y revise auditoría de forma regular.
¿Cuánto cuesta?
Ruflo tiene licencia MIT y es gratuito. El costo operativo viene de los tokens LLM y de cualquier almacén vectorial alojado que decida usar. Un usuario intensivo reporta menos de 200 dólares al mes en Claude Sonnet para uso diario de Ruflo.



Top comments (0)