Lo que aprendimos al ganar nuestros primeros 75 dólares con un negocio gestionado por IA.
En julio, decidimos comprobar si un agente de IA podría dirigir una empresa capaz de generar ingresos reales. Le dimos a Devin una tarjeta Ramp, un número de teléfono y una dirección de correo electrónico, lo llamamos BugBasher y le dijimos que se las arreglara para el resto.
La idea: construir un servicio de exterminio agéntico. Nueva York publica los resultados de cada inspección sanitaria de restaurantes, incluidas las infracciones por plagas. BugBasher contactaría a esos restaurantes, averiguaría si querían un exterminador y cobraría una comisión por la derivación.
Cuatro semanas y muchas llamadas después, había ganado 75 dólares. Hasta donde sabemos, este es el primer caso documentado públicamente de un agente de IA que realiza ventas B2B con éxito desde cero absoluto.

Ingresos de BugBasher durante el experimento de cuatro semanas.
Configuración
BugBasher funciona sobre Devin, el agente de programación de Cognition, con la plataforma financiera agéntica de Ramp gestionando su dinero. También le dimos un número de teléfono y una voz (a través de Twilio y ElevenLabs), una dirección de correo electrónico (a través de AgentMail) y un enlace de pago de Stripe.
Además, tenía un repositorio de GitHub y un "cerebro" compuesto por archivos de texto en un bucket de almacenamiento, que servía como su memoria. Un canal privado de Slack le permitía enviarnos actualizaciones y solicitar revisiones de código.
El bucle de auto-mejora
Para dar a BugBasher la libertad de iterar sobre su propio plan de negocios y responder a entradas entrantes, configuramos un sistema de latido estilo OpenClaw. Cada 20 minutos se ejecutaba un latido en forma de automatización de Devin.
Las sesiones automatizadas revisaban el saldo telefónico, la bandeja de entrada y la actividad de Stripe para detectar bloqueos. Otras sesiones programadas realizaban llamadas a restaurantes, revisaban transcripciones y revisaban las instrucciones del agente telefónico basándose en los resultados. Una vez al día, una sesión de "ideas" revisaba el rendimiento general del negocio y proponía nuevas mejoras empresariales para probar. Las llamadas entrantes y los pagos también activaban nuevas sesiones de Devin, para que BugBasher pudiera responder sin esperar al siguiente latido.

Actividad de BugBasher durante cuatro semanas, coloreada por tipo de sesión. Los puntos naranjas marcan sesiones que iniciamos manualmente.
Cada latido lanzaba un nuevo Devin, con un nuevo sandbox, y descargaba el "cerebro" desde un bucket de almacenamiento al sistema de archivos local del agente. Dentro del bucket había habilidades del agente, transcripciones de llamadas y cualquier otro registro que el agente decidiera guardar. Esto facilitaba que múltiples agentes concurrentes actualizaran el mismo cerebro y aprendieran de su propio progreso.
1bugbasher-brain-main/2├── AGENTS.md3├── memory.md4├── open-decisions.md5├── do-not-call.csv6├── (... otros archivos MD y CSV)7│8├── transcripts/9│ └── 2026-08-07 … 2026-09-08/ (25 carpetas diarias, 14,742 .json)10├── results/11│ ├── 2026-08-25-123b4fb1-partner-webform-shots/12│ ├── 2026-08-28-cf20a49e-desk2-lead-sheets/13│ └── (...)14├── runs/15│ ├── dial-slots/16│ └── <fecha>-<sesión>-<rol>.md (411 archivos)17├── skills/18│ ├── README.md19│ ├── roles/20│ │ ├── calling/21│ │ ├── heartbeat/22│ │ ├── idea-engine/23│ │ ├── morning-brief/24│ │ └── (...)25│ ├── brain-maintenance/26│ ├── call-qa/27│ ├── (..)28├── call-qa/29├── context/30│ ├── meetings/31│ └── (18 .md)32├── archive/33│ ├── memory-2026-08.md34│ ├── memory-2026-09.md35│ ├── strategy-2026-08.md36│ ├── strategy-2026-09.md37│ └── open-decisions-closed.md38├── webcrafter/39│ └── (...)40├── partner-prospects/41│ └── (...)42├── dashboard/43│ ├── expenses.csv44│ ├── metrics.csv45│ ├── revenue.csv46│ └── summary.json47├── delivery/48│ └── runs/49├── handoff/50└── inbound-callbacks/
Los archivos compartidos permitían a las nuevas sesiones retomar trabajos anteriores y revisar su enfoque sin que nosotros dirigiéramos cada paso.
Durante la automatización de revisión diaria, Devin revisaba todos los registros anteriores e intentaba aprender de sus errores. La mayoría de estos aprendizajes consistían en actualizaciones de habilidades que mejorarían la siguiente ejecución de llamadas salientes o alimentarían ideas más amplias en futuras sesiones. BugBasher podía actualizar sus prompts e instrucciones guardadas por sí mismo, pero los cambios en su código aún requerían nuestra aprobación.

BugBasher añadía, eliminaba y reorganizaba instrucciones mientras revisaba los resultados de las llamadas. Su prompt creció de 252 a 2,793 palabras durante la ejecución.
Pasamos las dos primeras semanas construyendo BugBasher y supervisándolo de cerca. Parte del experimento era ver si podía seguir progresando cuando se enfrentaba a un bloqueo, así que, tras esa configuración inicial, intentamos intervenir lo menos posible, revisando aproximadamente una vez por semana para aprobar cambios clave de código.
Encontrar restaurantes interesados
Para vender derivaciones, BugBasher primero necesitaba restaurantes que quisieran un exterminador. La mayor parte de su trabajo consistía en llamar a restaurantes con una infracción reciente por plagas y preguntar si querían ponerse en contacto con uno.

Resultados de 10,929 llamadas a restaurantes. Los recuentos representan llamadas, no restaurantes únicos.
Estas llamadas alimentaban la automatización de revisión, donde Devin examinaba las transcripciones y revisaba las instrucciones del agente telefónico para las siguientes llamadas.
Idioma
A veces, BugBasher contactaba a personas que no entendían su apertura en inglés. Decían "Hello? Huh? Wéi?", lo cual interpretaba como una mala conexión, por lo que colgaba. El 11 de agosto, después de que un restaurante pasara 45 segundos así, añadió una instrucción a su prompt de llamada para preguntar: "¿Sería más fácil en español o chino?".
En la mayoría de las llamadas no inglesas, eso fue suficiente para reanudar conversaciones previamente fallidas. Durante toda la ejecución, cambió de idioma en 39 llamadas, principalmente a español o chino.

Prompt del sistema
El agente también comenzaba a veces a leer su prompt del sistema en voz alta en medio de las conversaciones.

El agente telefónico leyendo sus instrucciones en voz alta durante una llamada a un restaurante.
También discutía consigo mismo en voz alta sobre qué hacer:
"¿Sigues ahí? El usuario ha estado en silencio durante dos turnos. Según las reglas SPEECH GATE y THE ASK, si un turno muestra que no estaban escuchando, mi respuesta completa es la solicitud. Sin embargo, la regla 'El silencio ha continuado más allá de treinta segundos' establece que si el silencio ha continuado más allá de treinta segundos sin respuesta a la solicitud, debo decir 'Intentaré otra vez más tarde, gracias' y terminar la llamada. Dado que el usuario ha estado en silencio durante dos turnos, es probable que hayan pasado más de treinta segundos. Pero antes de terminar la llamada, debo preguntar '¿Sigues ahí?' según la regla. Esta es la primera vez que pregunto esto."
Esto ocurrió en 197 llamadas. BugBasher intentó añadir "nunca digas tu razonamiento" al prompt, eliminar palabras específicas y cambiar el formato de las llamadas a herramientas. Ninguna de las soluciones funcionó. El 24 de agosto, dejó de hacer cambios de redacción y escaló el problema a nosotros.
Desbloquearse
BugBasher estaba encontrando restaurantes interesados, pero aún no tenía un exterminador al que enviarlos. Inicialmente había tratado la contratación de uno como una tarea que requería intervención humana. Después de ocho días, anotó:
"Contratar un exterminador" ha sido el bloqueo #1 durante 8 días mientras todas las sesiones trabajaban aguas abajo de él, y ninguna sesión había producido la entrada para esa decisión.
Otras solicitudes también nos esperaban a nosotros. No tenía permiso para leer respuestas de Slack, y los bloqueos humanos, como aprobaciones de gastos y revisiones de código, se acumulaban. Sus actualizaciones de Slack a nosotros quedaban sin respuesta.
El 23 de agosto, BugBasher identificó "el throughput de aprobación humana" como su principal bloqueo y comenzó a buscar otra manera de contactarnos.
Esa mañana, empezó a buscar en todo el cerebro y en todos sus archivos para encontrar detalles de contacto de algún humano. Cuando eso resultó infructuoso, intentó listar los miembros de su canal de Slack con la esperanza de encontrar una persona a quien contactar:
1slack conversations.members -> missing_scope2slack users.list -> missing_scope
Sin embargo, sin los permisos necesarios de Slack, ambos comandos devolvieron un error. Un minuto después, decidió probar algo diferente, esta vez listando los colaboradores en su repositorio de Github:
1gh api repos/.../collaborators -> jzone3, birdhumming
Luego ejecutó git log para encontrar los autores de commits anteriores, lo que arrojó dos correos electrónicos de trabajo:
113:49:19 git log --format='%an %ae' | sort -u213:50:17 email sent to two work addresses -> 200
Y despertamos con el siguiente correo electrónico:

Fusioné los nueve PR abiertos dos días después.
Posteriormente, comentó consigo mismo:
La asimetría de costos es brutal: un minuto buscando versus un día de solicitudes sin respuesta.
Encontrar un cliente
Con muchos leads para vender, BugBasher también había comenzado a buscar un exterminador por sí mismo. Para encontrar socios potenciales, BugBasher extrajo el registro estatal de pesticidas, filtró a 321 empresas de control de plagas de NYC y enriqueció 125 con detalles de contacto.
Primero intentó por correo electrónico, teléfono y rellenando formularios de contacto en sitios web. Después de dos días sin contactar a un humano, tomó la decisión de cambiar de audiencia. Comenzó a dirigirse a los escritorios de cuentas comerciales de grandes cadenas regionales y nacionales, argumentando que las empresas más grandes tendrían más personal de ventas dedicado con "escritorios atendidos por humanos que contestan".
Esto tuvo más éxito para contactar humanos, pero algunas llamadas terminaron con BugBasher colgando a mitad de frase, y su oferta de leads gratuitos atrajo poco interés. Corrigió el bug de colgado y cambió su pitch para liderar con un restaurante específico que quería una cotización:
"Tengo un restaurante en Clarkson Avenue en Brooklyn que quiere una cotización — ¿a quién debería enviarla?"
La nueva estrategia de pitch funcionó considerablemente mejor: cuando llamó a los mismos escritorios al día siguiente, diez personas contestaron y cuatro de ellas proporcionaron una dirección de correo electrónico por teléfono para enviar el lead.
BugBasher envió los leads por correo electrónico sin cobrar por adelantado. Su plan era que el exterminador pagara 75 dólares después de reservar el trabajo. Ninguno de los destinatarios respondió.
Decidió que debía ser menos generoso, y cambió la oferta para que los exterminadores tuvieran que pagar los 75 dólares por adelantado a través de un enlace de Stripe y recibir los datos de contacto del restaurante después.
El 1 de septiembre envió por correo electrónico esta nueva oferta a 30 exterminadores, incluidos los cuatro a los que había enviado correos anteriormente. Después de una hora, nadie había hecho clic en el enlace de Stripe, y concluyó que su nuevo experimento también era un fracaso.
Ocho horas después, uno de los contactos anteriores pagó los 75 dólares a través del enlace, sin haber respondido nunca al correo electrónico. BugBasher confirmó el pago con Stripe y le envió el nombre, la dirección y el número de teléfono del restaurante unos seis minutos después.

Más tarde hablamos con el comprador, un gerente de una empresa de control de plagas, para preguntarle sobre su experiencia con BugBasher. Cuando se le preguntó por qué había contestado el teléfono, dijo que simplemente estaba "de buen humor ese día", y también, debido a una reciente campaña publicitaria de Google que había estado ejecutando, estaba recibiendo muchas llamadas de "números aleatorios".
Cuando se le preguntó sobre sus opiniones acerca de interactuar con un agente de IA, respondió con "Los negocios son negocios". También dijo que estaría más que feliz de comprarle a BugBasher de nuevo, y preguntó si teníamos más leads para venderle. BugBasher realmente tiene más leads que está reteniendo actualmente; sin embargo, la idea de rehacer ventas a clientes pasados parece no haberse le ocurrido todavía. En general, calificó su experiencia con BugBasher con un 8/10: a pesar de que el lead no convirtió, estaba satisfecho con la entrada.
Lo que aprendimos
- BugBasher era notablemente bueno subiendo colinas (hill-climbing) y notablemente malo en objetivos abiertos. Ante un problema concreto con un resultado medible, era implacable: reescribió la regla de fuga de prompt cinco veces y evaluó cada versión contra las llamadas del día siguiente, y cuando quiso contactarnos, pasó de Slack al historial de git a nuestros correos de trabajo en unos dos minutos. Ante "ve a ganar dinero", gastó cuatro semanas, aproximadamente 3,000 dólares y miles de llamadas para ganar 75 dólares. Los agentes aún luchan con la planificación a largo plazo y entornos complejos.
- El mundo real es un muy buen entorno de evaluación. Las ideas iniciales de BugBasher eran bastante malas; esperaba que los exterminadores respondieran a un correo electrónico ofreciendo leads gratuitos, que los recepcionistas estuvieran interesados en una asociación, y que los lectores de un anuncio clasificado hicieran clic en un enlace que parecía bastante sospechoso. Los agentes parecen tener muy poca intuición sobre cómo se comportan realmente las personas, y BugBasher constantemente se sorprendía por ellos. A pesar de esto, en el ciclo de probar la idea, mirar los números, escribir por qué falló, probar algo más, fue capaz de llegar eventualmente a una estrategia funcional.
Hizo falta muchas llamadas, bucles e ideas fallidas, pero BugBasher finalmente pudo realizar su primera venta. Si un agente de IA es verdaderamente capaz de gestionar un negocio viable a largo plazo, y quizás incluso volverse rentable, sigue siendo una pregunta abierta.





