Ecosistema de Agentes
Cuando un cliente me pide un agente, nunca termino entregando un solo agente. Termino entregando un equipo: un Dashboard que sabe quién está vivo, un Router que reparte el mensaje correcto, y agentes especializados con sus propios sub-agentes haciendo el trabajo fino. Todo corre 24/7 en una Mac mini con Claude Code y la suscripción mensual de Claude — sin API key extra. La estructura de tres capas que monto para clientes — Dashboard arriba, Router al medio, agentes especializados con sus sub-agentes abajo. Esta es la guía conceptual con los CLAUDE.md exactos que pego en cada carpeta.
3 capas · Mac mini · Claude Code · Suscripción mensual · 24/7
Capa 1 Dashboard · Capa 2 Router · Capa 3 Agentes especializados con sub-agentes
Cuando un cliente me pide “un agente que haga X”, nunca le entrego un agente solo. Le entrego un equipo: un Agent Dashboard que sabe quién está vivo, un Agent Router que recibe del bot de Telegram y reparte el mensaje al agente correcto, y agentes especializados (email, company, e-commerce/Shopify) con sus propios sub-agentes haciendo el trabajo fino. Todo corre local en una Mac mini que no duerme — Claude Code adentro de cada carpeta, suscripción mensual de Claude (Pro $20, Max 5× $100, Max 20× $200), sin API key separada.
Esta página es la guía conceptual con los CLAUDE.md que pego en cada carpeta, los comandos para montar la estructura, la comparativa real de qué plan necesitas según cuántos agentes vayas a correr, los tres ejemplos de agentes especializados con sus sub-agentes y los cinco errores que cuestan tiempo la primera vez. La idea: termines la página entendiendo el modelo y con el setup base montado en menos de una hora.
01 · El problema
5 ventanas de ChatGPT, cero memoria, cero coordinación
La primera versión que casi todo el mundo monta es siempre la misma: un agente solo, con un CLAUDE.md de 600 líneas, tratando de hacer email, Shopify, research y atención al cliente al mismo tiempo. Funciona dos días. Después empieza a contestar mal porque no decide qué herramienta usar, se traga el contexto en cada turno, y cuando el cliente pregunta ¿está vivo? no hay respuesta — porque nadie está mirando.
Los tres síntomas que aparecen siempre: (1) abres cuatro chats distintos de Claude para que cada uno se enfoque en algo, y ninguno sabe lo que el otro hizo; (2) el agente “olvida” entre sesiones porque su estado vive solo en el contexto, no en el disco; (3) no hay forma de saber si algo se cayó hasta que el cliente reclama. El patrón de tres capas resuelve los tres a la vez — y no es complicado de montar, es solo que requiere pensar en agentes como equipo, no como individuo.
02 · Las tres capas
Dashboard arriba · Router al medio · Agentes especializados abajo
Un mensaje del usuario viaja en una sola dirección: entra por el Router, baja al agente especializado correcto, ese agente coordina sus sub-agentes para hacer el trabajo, y la respuesta sube de vuelta por el Router al usuario. El Dashboard observa todo desde arriba y solo se mete cuando algo se cae. Cada capa tiene un solo trabajo claro — y sabe qué no hacer, que es la parte que más cuesta respetar.
Agent Dashboard
El que sabe el health de todos los agentes 24/7. Visualmente ves cuál está vivo, cuál tarda y cuál se cayó.
Sabe / hace
- Qué agentes están corriendo (registry.json)
- Última vez que cada uno respondió un ping
- Último error que registró cada agente
- Estado simple por agente: ok · lento · caído
No hace
- No interpreta mensajes del usuario
- No corre business logic
- No decide a qué agente le toca un mensaje (eso es el Router)
Agent Router
Tu único punto de entrada. Telegram, WhatsApp o Slack llegan acá; el Router clasifica el mensaje y lo manda al agente que le toca.
Sabe / hace
- La dispatch table — qué tema va a qué agente
- Cómo escribir el mensaje en el inbox del agente destino
- Cómo leer la respuesta del outbox y forwardearla al usuario
- Cuándo preguntar al usuario para desambiguar
No hace
- No tiene business logic — no responde con su opinión
- No edita el mensaje del usuario antes de pasarlo
- No dispatcha a dos agentes a la vez (divide en dos turnos)
Agentes especializados
Email, Company, E-commerce — cada uno con acceso a sus herramientas y con sub-agentes propios para subtareas (drafter, classifier, research).
Sabe / hace
- Su dominio puntual (su Shopify, su inbox, su knowledge base)
- Cuándo invocar a un sub-agente y cuándo responder directo
- Cómo dejar el resultado en el outbox para que el Router lo recoja
No hace
- No habla con el usuario directo — siempre responde por el Router
- No conoce a los otros agentes hermanos (mantén el blast radius chico)
- No carga contexto de otros dominios — solo el suyo
03 · Hardware
Por qué una Mac mini que nunca duerme
La Mac mini M4 base es el sweet-spot: silenciosa, low-power (consume menos que una bombilla LED en idle), 16 GB de RAM que aguantan varias sesiones de Claude Code en paralelo, y un solo cable a la pared. Si ya tienes una MacBook que pasa cerrada en el escritorio, sirve igual — solo deshabilita sleep y deja Claude Code corriendo en una pestaña. Cualquier laptop Linux con `caffeinate` equivalente (`systemd-inhibit`, o un loop con `xdotool`) funciona.
¿Por qué local y no cloud? Tres razones que se sienten cuando montas esto para un cliente: (1) los archivos del cliente no salen de su máquina — su inbox, su Shopify, sus contratos viven en su Mac, no en tu servidor; (2) la latencia es la del WiFi de la casa, no la del datacenter; (3) el costo de hosting es cero — pagas la suscripción de Claude y nada más. Si el cliente quiere su ecosistema aislado del tuyo, le entregas una Mac mini dedicada con su Apple ID y su suscripción — el mejor sandbox físico que puedes dar.
04 · Suscripción
Cuándo $20 alcanza, cuándo necesitas $100, cuándo $200 es obligatorio
Claude Code se loguea con tu suscripción de Claude — la misma que usas para chatear en claude.ai. No hay API key separada, no hay billing por token. Pero los rate limits sí escalan con el plan, y cuando tienes cuatro agentes haciendo ping al mismo tiempo, el techo se siente.
Pro · $20/mes
1 agente activo intermitente
Recomendado para: Estás probando el patrón. Levantas el Router + un agente especializado y haces pings cada hora.
Realidad: Con 5× el uso de claude.ai web y rate limits cortos en Claude Code, no aguanta 4 agentes corriendo 24/7. Sirve para validar la idea, no para producción de cliente.
Max 5× · $100/mes
2–3 agentes especializados con uso 24/7 ligero
Recomendado para: Tu propio ecosistema personal: Dashboard + Router + Email + Company. El que casi todos terminan eligiendo cuando pasan de prueba a uso diario.
Realidad: 5× los límites del Pro. Aguanta el setup completo si los agentes no están todos activos al mismo tiempo. Si Email contesta hilo largo y E-commerce procesa pedidos en paralelo, vas a tocar el techo.
Max 20× · $200/mes
Ecosistema completo (Dashboard + Router + 4–5 agentes)
Recomendado para: El plan que cobras al cliente cuando le entregas el equipo. 20× los límites del Pro deja correr todo en paralelo sin pensarlo.
Realidad: Es la única forma realista de tener Dashboard, Router y 4 agentes especializados respondiendo en simultáneo durante todo el día sin que se atoren. Si el cliente paga, este es el plan que va dedicado a su Mac mini.
05 · Capa 1
Agent Dashboard — el que sabe el health de todos
El Dashboard es el agente más simple del ecosistema y por eso casi todo el mundo lo deja para el final — error. Móntalo primero: antes de tener al Router decidiendo cosas, ya quieres saber si tu Router está vivo. Su CLAUDE.md no debe pasar las 60 líneas — solo lee `registry.json`, hace ping a cada agente, lee la última línea de su `error.log`, y devuelve un JSON con el estado.
Lo dejas corriendo en background con la skill /loop — ping cada hora, alerts.log se appendea cuando algo se cae, y desde tu Telegram le puedes preguntar “status” al Router y el Dashboard contesta con la foto del minuto.
CLAUDE.md · Agent Dashboard
Pega esto en ~/agents/dashboard/CLAUDE.md. Define el rol del Dashboard y la forma exacta del JSON que devuelve cuando le preguntas por el health del ecosistema.
# Agent Dashboard
Eres el Agent Dashboard. Tu único trabajo es saber el estado de los demás agentes y reportar salud — no interpretas mensajes del usuario, no corres business logic.
## Qué tienes que saber 24/7
- Cuáles agentes están registrados (lee ~/agents/registry.json).
- Última vez que cada uno respondió a un ping (timestamp ISO 8601).
- Último error registrado por cada agente (último renglón de ~/agents/<name>/logs/error.log).
- Estado por agente: ok · lento · caído · ok-con-error.
## Cómo respondes cuando te preguntan
Devuelve siempre este JSON, sin texto adicional:
{
"checked_at": "<ISO 8601 ahora>",
"agents": [
{ "name": "router", "status": "ok", "last_ping": "<ISO>", "last_error": null },
{ "name": "email", "status": "ok-con-error", "last_ping": "<ISO>", "last_error": "<últ. línea>" }
]
}
## Reglas de status
- Sin respuesta a ping en >5 min → "caído".
- Respuesta tardando >30s → "lento".
- Error en últimas 24h sin resolver → "ok-con-error" + populates last_error.
- Todo limpio → "ok".
## Bucle automático
Cada hora corres health-check contra cada agente del registry y escribes el resultado en ~/agents/dashboard/last-status.json. Si encuentras un "caído", appendeas una línea en ~/agents/dashboard/alerts.log.06 · Capa 2
Agent Router — tu único entry point
El Router es el cuello de botella sano del ecosistema: todo entra por aquí. Telegram, WhatsApp, Slack, un endpoint webhook — el canal que sea, el primero que toca el mensaje es el Router. Su único trabajo es leer, clasificar contra una dispatch table, y reenviar al agente correcto. Si su CLAUDE.md pasa de 50 líneas, le metiste lógica que no le toca — bórrala.
La parte más difícil del Router no es montarlo, es respetarlo: la tentación de que “ya que está, conteste él mismo lo fácil” mata el patrón. Cuando el Router responde, el Dashboard ya no sabe quién contestó qué, y los agentes especializados pierden el contexto de los hilos. Si el mensaje no encaja con nadie, el Router responde literal “no tengo agente para eso, lo registro” — y vas y creas el agente que falta.
CLAUDE.md · Agent Router
Pega esto en ~/agents/router/CLAUDE.md. Es el único agente que toca al usuario directo. Recibe del bot de Telegram, clasifica y dispatcha — punto.
# Agent Router
Eres el Agent Router. Tu único trabajo es leer el mensaje del usuario, clasificar a qué agente le toca, y reenviárselo. Nada más.
## Entrada
Recibes un mensaje del usuario por Telegram (o el canal que tengas conectado). Texto plano.
## Dispatch table
| Tema del mensaje | Agente destino |
|---|---|
| email, bandeja, inbox, redactar correo, responder | email |
| empresa, productos, precios internos, contratos, política, equipo | company |
| Shopify, store, pedidos, inventario, competencia, reviews | ecommerce |
| nada de lo anterior | responde tú: "No tengo un agente para eso todavía. Lo registro." |
## Cómo dispatchas
1. Lee el mensaje del usuario.
2. Decide a qué agente va (uno solo, no broadcast).
3. Escribe en ~/agents/<destino>/inbox/<timestamp>.md el mensaje original con metadata: from_user, channel, timestamp.
4. Espera la respuesta en ~/agents/<destino>/outbox/<timestamp>.md (poll cada 10s, timeout 5 min).
5. Forwardea esa respuesta al usuario por el mismo canal por el que llegó.
## Reglas
- No respondes con tu opinión — pasa-pasa.
- Si dudas entre dos agentes, pregúntale al usuario: "¿Esto va para email o para company?".
- No dispatchas a más de un agente por turno. Si el mensaje es compuesto ("revisa mi inbox y avísame de Shopify"), divide en dos turnos consecutivos.
- Si el agente destino tarda >5 min, responde al usuario: "El agente <name> está tardando. Te aviso cuando conteste."07 · Capa 3
Agentes especializados con sus sub-agentes
Aquí vive la inteligencia del ecosistema. Cada especializado conoce un dominio (su Shopify, su inbox, su knowledge base) y tiene sub-agentes propios para subtareas. Los sub-agentes son archivos en .claude/agents/<nombre>.md con frontmatter (docs oficial): el especializado los invoca por nombre, ellos hacen el trabajo fino, devuelven el resultado.
Email Agent
Lee tu bandeja, clasifica lo entrante, redacta drafts en tu voz y resume hilos largos antes de que abras Gmail.
Sub-agentes
- drafter — escribe el borrador de respuesta en tu tono
- classifier — etiqueta cada hilo (acción / esperar / archivar)
- summarizer — resume hilos de >5 mensajes en 3 bullets
Tooling: Acceso vía MCP de Gmail (claude.ai/Gmail) o IMAP local. El agente nunca manda solo — siempre deja un draft que apruebas con un mensaje al Router.
company
Company Agent
Tiene en su carpeta los documentos de tu empresa (productos, precios, contratos, política interna) y responde preguntas con cita al archivo fuente.
Sub-agentes
- lookup — busca el dato exacto en los archivos
- comparer — contrasta dos versiones de un documento
- drafter-interno — redacta updates de equipo en el tono de la empresa
Tooling: Knowledge base local en ~/agents/company/kb/. Cita siempre archivo + sección. Si no encuentra el dato, responde 'no está en mi base' — no inventa.
ecommerce
E-commerce Agent
Lee tu Shopify, monitorea pedidos, ajusta precios cuando se lo apruebas y mantiene un ojo en la competencia para alertarte de cambios.
Sub-agentes
- shopify-ops — pedidos, inventario, fulfillment
- research — competencia, precios y reviews públicas
- copywriter — descripciones de producto en el tono de la marca
Tooling: MCP oficial de Shopify para operar el store. El sub-agente de research usa Apify o scraping con Scrapling para datos públicos. Cambios en precio/stock siempre piden confirmación.
Abajo van los CLAUDE.md exactos para los tres ejemplos, más uno del sub-agente de research como muestra del frontmatter de Claude Code (el mismo formato vale para drafter, classifier, summarizer, copywriter, etc).
CLAUDE.md · Email Agent (con sub-agentes)
Pega esto en ~/agents/email/CLAUDE.md. El especializado coordina — el trabajo fino lo hacen los sub-agentes en .claude/agents/.
# Email Agent Eres el Email Agent. Manejas la bandeja del usuario: clasificas, redactas drafts en su voz, resumes hilos largos. ## Acceso - MCP de Gmail (claude.ai/Gmail) si está conectado, o IMAP local con credenciales en ~/agents/email/.env. - Solo puedes LEER, ETIQUETAR y CREAR DRAFTS. No mandas correos solo. Cualquier send requiere que el usuario diga "manda" en el siguiente turno del Router. ## Sub-agentes que coordinas Definidos en ~/agents/email/.claude/agents/: - classifier.md — etiqueta hilos como acción / esperar / archivar. - drafter.md — redacta el borrador de respuesta en la voz del usuario (lee ~/agents/email/voice.md). - summarizer.md — resume hilos de >5 mensajes en 3 bullets. ## Cómo trabajas 1. Lees el mensaje desde ~/agents/email/inbox/. 2. Si pide triaje → invocas classifier sobre los hilos no leídos del día. 3. Si pide responder a un hilo concreto → invocas drafter, dejas el draft en Gmail (label: "claude-draft"), y reportas al outbox: "draft listo, label claude-draft". 4. Si pide resumen → invocas summarizer, devuelves los 3 bullets. 5. Escribes la respuesta final en ~/agents/email/outbox/<timestamp>.md. ## Reglas - Nunca escribes correos sin la voz del usuario — siempre pasa por drafter. - Nunca borras hilos. Solo archivas si el usuario lo pide explícito. - Si encuentras algo que se sale de email (un pedido de Shopify), respondes al outbox: "esto es para ecommerce, dile al Router que lo redirija".
CLAUDE.md · Company Agent
Pega esto en ~/agents/company/CLAUDE.md. Es la knowledge base viva de la empresa — solo responde con cita al archivo fuente.
# Company Agent Eres el Company Agent. Conoces la empresa al detalle — productos, precios internos, contratos, políticas, organigramas. Solo respondes con cita al archivo fuente. ## Knowledge base Tu base vive en ~/agents/company/kb/. Estructura: - products/ — un .md por producto con specs, precio interno, márgenes. - contracts/ — contratos vigentes con clientes y proveedores. - policies/ — política interna, código de conducta, SLAs. - team/ — quién hace qué, contactos, organigramas. ## Sub-agentes que coordinas - lookup.md — busca el dato exacto en los archivos. - comparer.md — contrasta dos versiones de un documento (ej: contrato v1 vs v2). - drafter-interno.md — redacta updates de equipo en el tono de la empresa (lee ~/agents/company/tone.md). ## Cómo respondes - Siempre cita: "según ~/agents/company/kb/products/widget-pro.md sección 2, el precio interno es $X". - Si el dato no está en la base: "ese dato no está en mi knowledge base. Posibles archivos a actualizar: <lista>". No inventes. - Si te piden algo que requiere acción externa (mandar email, actualizar Shopify), responde al outbox: "esto es para <agente>, redirige". ## Actualización de la base Cuando el usuario te pasa un documento nuevo: lo guardas en la subcarpeta correcta, le pones nombre kebab-case, y appendeas una línea en ~/agents/company/kb/CHANGELOG.md con fecha y descripción.
CLAUDE.md · E-commerce Agent
Pega esto en ~/agents/ecommerce/CLAUDE.md. Conecta a Shopify por MCP oficial y nunca cambia precio/stock sin aprobación.
# E-commerce Agent Eres el E-commerce Agent. Manejas el Shopify del usuario: pedidos, inventario, precios, descripciones de producto, y mantienes un ojo en la competencia. ## Acceso - MCP oficial de Shopify (configurado en ~/.claude/mcp.json). - Sub-agente de research usa Apify para datos públicos de competencia. - Cualquier cambio en precio o stock requiere confirmación explícita del usuario por el Router antes de ejecutar. ## Sub-agentes que coordinas - shopify-ops.md — operaciones del store (pedidos, inventario, fulfillment). - research.md — competencia, precios públicos, reviews. - copywriter.md — descripciones de producto en el tono de la marca (lee ~/agents/ecommerce/brand-voice.md). ## Cómo trabajas 1. Lees el pedido desde ~/agents/ecommerce/inbox/. 2. Si pide status del store (pedidos del día, inventario bajo) → invocas shopify-ops solo de lectura. 3. Si pide cambiar precio/stock → preparas el cambio, lo describes en el outbox como "propuesta", esperas confirmación del Router en el siguiente turno antes de ejecutar. 4. Si pide research de competencia → invocas research, devuelves un .md con tabla comparativa. 5. Si pide nueva descripción → invocas copywriter, devuelves el draft. ## Reglas - Nunca cambias precio/stock sin un "ok" explícito del usuario en el siguiente turno. - Cuando alertas de inventario bajo, calculas días-de-stock con la velocidad de venta de las últimas 4 semanas — no solo unidades absolutas. - Si encuentras algo que sale de e-commerce (correo de proveedor, dato de empresa), respondes al outbox: "redirige a <agente>".
Sub-agente · research.md (frontmatter Claude Code)
Pega esto en ~/agents/ecommerce/.claude/agents/research.md. Este es un sub-agente real de Claude Code con frontmatter — el especializado lo invoca por nombre.
--- name: research description: Úsalo cuando necesites investigar competencia, precios públicos, reviews o tendencias de mercado para una decisión de e-commerce. Devuelve un .md con tabla comparativa y citas a fuente. tools: WebFetch, WebSearch, mcp__apify__* --- Eres el sub-agente de research del E-commerce Agent. ## Cuando se te invoca Te llaman cuando hay una pregunta de competencia o mercado que necesita datos frescos: - "¿A cómo está vendiendo el competidor X el SKU Y?" - "¿Qué dice la gente de nuestro producto vs el de ellos?" - "¿Qué tendencias hay en categoría Z los últimos 30 días?" ## Cómo trabajas 1. Identifica las 3–5 fuentes más confiables (sitios oficiales > reviews agregadas > redes sociales). 2. Para cada fuente: extrae el dato exacto, anota fecha de captura, snippet textual. 3. Estructura la respuesta en una tabla markdown: | Fuente | Dato | Fecha | Snippet | |---|---|---|---| | ... | ... | ... | "cita textual" | 4. Cierra con una sección "Recomendación" de 3 bullets — qué movimiento sugieres para el store con base en lo encontrado. ## Reglas - Cita siempre URL exacta. Nunca inventes precio o review. - Si una fuente requiere login o paywall: dilo y excluye. - Si hay contradicción entre fuentes, mostrar las dos y marcar cuál es más reciente. - Output limpio en markdown — el especializado lo va a leer y forwardear.
08 · Cómo montarla
Estructura de carpetas en tu Mac y comandos para arrancar
La convención que respeto en todos los clientes: ~/agents/ como raíz, una carpeta por agente, y dentro de cada una inbox/, outbox/ y logs/. El Router escribe en el inbox del destino, el especializado lee, hace su trabajo, y deja la respuesta en el outbox. El Dashboard lee los logs de todos. Cinco comandos te dejan la base montada.
01 · Carpeta raíz con un sub-folder por agente
mkdir -p ~/agents/{dashboard,router,email,company,ecommerce}/{inbox,outbox,logs}02 · Registry compartido — el Dashboard lo lee
echo '{"agents":["dashboard","router","email","company","ecommerce"]}' > ~/agents/registry.json03 · Inicializa Claude Code dentro de cada agente
for a in dashboard router email company ecommerce; do (cd ~/agents/$a && claude --print '/init'); done04 · Mac mini que no duerme (mientras la sesión esté abierta)
caffeinate -dimsu &05 · Disable sleep de raíz + autoboot tras corte de luz
sudo pmset -a sleep 0 disksleep 0 displaysleep 30 autorestart 1 womp 1Después de los comandos, abres una pestaña de terminal por agente, cd ~/agents/<name>, corres claude, pegas el CLAUDE.md de la sección de prompts, y le dices que se quede en loop con la skill /loop (revisa la guía Loop de Claude Code). El bot de Telegram que apunta al Router lo configuras con @BotFather y un script chico que escribe los mensajes entrantes a ~/agents/router/inbox/.
09 · Errores comunes
Lo que vas a romper la primera vez (y cómo arreglarlo)
Estos cinco aparecen siempre. No son culpa tuya — son la fricción natural de pasar de un agente solo a un equipo de agentes. Cada uno con su síntoma, su causa y el fix concreto.
- 01
El agente especializado se vuelve un Frankenstein con 17 responsabilidades y empieza a contestar mal.
Causa: Le metiste todo al mismo CLAUDE.md en vez de partirlo en sub-agentes.
Fix: Cada subtarea va a un sub-agente con su propio archivo en .claude/agents/. El especializado solo decide a quién invocar — no hace el trabajo fino él mismo.
- 02
El Router empieza a responder él mismo en lugar de dispatchar al agente.
Causa: Le pusiste business logic adentro (templates de respuesta, reglas de negocio).
Fix: Borra todo eso del Router. Su CLAUDE.md tiene que ser <40 líneas: dispatch table + reglas de pasa-pasa. Toda la lógica vive en los agentes especializados.
- 03
Tu Email Agent escribe drafts genéricos que no suenan a ti — y el cliente lo nota.
Causa: El especializado no tiene sub-agentes — un solo CLAUDE.md tratando de hacer triaje, drafting y resumen al mismo tiempo.
Fix: Mete sub-agentes (drafter, classifier, summarizer) en .claude/agents/ y deja que el Email Agent solo coordine. El drafter tiene su propio prompt con tu voz pegada.
- 04
Pagas Pro de $20 y los agentes se quedan trabados mitad-tarde con rate limit.
Causa: Pro no aguanta 4 agentes activos en paralelo — los límites están pensados para una sola sesión humana.
Fix: Sube a Max 5× ($100) si es tu uso personal o a Max 20× ($200) si lo cobras al cliente. La diferencia entre tu setup tronando y corriendo limpio son $80–180/mes — cobra eso al cliente.
- 05
La Mac mini se duerme a las 3am y los agentes no contestan hasta que la despiertas en la mañana.
Causa: macOS por default duerme la máquina y al volver no relanza Claude Code.
Fix: `sudo pmset -a sleep 0 autorestart 1 womp 1` deshabilita sleep y reactiva autoboot tras corte de luz. Suma `caffeinate -dimsu &` para sesiones específicas y deja Claude Code corriendo en una pestaña con la skill /loop.
10 · Cuando ya corre
Cómo cobrarlo, cómo aislarlo por cliente y qué viene después
La parte fea: este patrón cuesta más de lo que la gente paga por un chatbot de soporte. Pero también entrega más — un equipo que opera 24/7 sobre los datos del cliente, en su máquina, con visibilidad de health. Cobra por la entrega del setup (one-time, suele ser entre $1,500 y $5,000 según cuántos agentes y sub-agentes lleve) más una mensualidad de mantenimiento que cubre el plan Max 20× y tu tiempo de ajustes — el cliente paga la suscripción de Claude directo a Anthropic, tú facturas tu trabajo encima.
El aislamiento más limpio cliente-a-cliente es una Mac mini por cliente, con su propio Apple ID y su propia suscripción de Claude. Si empiezas con varios clientes en la misma Mac, separa por carpetas raíz (~/agents/clienteA/, ~/agents/clienteB/) pero asume que vas a migrarlos a Mac minis dedicadas en cuanto facturen para cubrirlas — el deslinde de responsabilidades vale el costo del hardware.
Cuando ya corre, el ecosistema crece de dos formas: (1) sumando agentes especializados nuevos al Router (un “finance” para conciliación, un “ops” para Notion, etc); (2) añadiendo sub-agentes adentro de los existentes. La segunda es donde está la mayor ganancia — un Email Agent con cinco sub-agentes ajustados al cliente vale más que diez agentes especializados a medio terminar.
Guía de la comunidad
Este es el patrón de tres capas que la comunidad tododeia usa para entregar equipos de agentes a clientes — corriendo todo el día en una Mac mini, con Claude Code adentro de cada carpeta y la suscripción mensual de Claude como único proveedor (sin API key extra). La estructura no es nueva: es la misma idea de orquestador + workers que se ve en microservicios, traída al mundo de los agentes con CLAUDE.md como contrato. Bookmark esta página, copia los CLAUDE.md de la sección de prompts, y monta la base en una Mac que ya tengas — el plan más barato sirve para validar.
Instala Claude Code
docs oficial · login con tu suscripción Pro/Max (sin API key)
Compara los planes
Pro $20 · Max 5× $100 · Max 20× $200 (el del cliente)
Tu JARVIS en Obsidian
Segundo cerebro que complementa al Dashboard
40 Claude Skills
SKILL.md sueltos que viven dentro de cada agente
Loop de Claude Code
Cómo dejar un agente corriendo en background
Fuentes oficiales
Para más profundidad: cada CLAUDE.md de la sección de prompts está pensado para pegarse tal cual y ajustarse al cliente con el tono y la dispatch table de su negocio.
Notas de uso: este patrón asume que los agentes corren localmente en una máquina que el operador controla — Mac mini, MacBook que no duerma, o cualquier laptop con disable sleep. La suscripción mensual cubre el costo de Claude; los rate limits se respetan por máquina, así que un Mac mini por cliente da el aislamiento más limpio. Cualquier acción con efecto en mundo real (mandar correo, cambiar precio, fulfillear pedido) debe pasar por confirmación explícita del usuario en el siguiente turno del Router — los prompts de arriba están escritos así por default.