Lo que aprendimos al ganar nuestros primeros $75 con un negocio gestionado por IA.
En julio, decidimos ver si un agente de IA podría dirigir una empresa que realmente generara dinero. 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 encargara del resto.
La idea: construir un servicio de exterminio agéntico. La ciudad de 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 referencia.
Cuatro semanas y muchas llamadas después, había generado $75. Hasta donde podemos saberlo, este es el primer caso documentado públicamente en el que un agente de IA realiza ventas B2B con éxito desde cero absoluto.

Los ingresos de BugBasher durante el experimento de cuatro semanas.
Configuración
BugBasher funciona sobre Devin, el agente de programación de Cognition, mientras que la plataforma financiera agéntica de Ramp gestiona su dinero. También le proporcionamos un número de teléfono y una voz (a través de Twilio y ElevenLabs), una dirección de correo electrónico (mediante 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 ciclo de auto-mejora
Para dar a BugBasher la libertad de iterar sobre su propio plan de negocios y responder a las entradas, 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 desempeño general del negocio y proponía nuevas mejoras comerciales para probar. Las llamadas entrantes y los pagos también activaban nuevas sesiones de Devin, por lo que BugBasher podía responder sin esperar al siguiente latido.

La actividad de BugBasher a lo largo de 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 estaban las habilidades del agente, las 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 que las nuevas sesiones retomaran trabajos anteriores y revisaran 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 para futuras sesiones. BugBasher podía actualizar sus propios prompts e instrucciones guardadas, pero los cambios en su código aún requerían nuestra aprobación.

BugBasher agregaba, eliminaba y reorganizaba instrucciones a medida que revisaba los resultados de las llamadas. Su prompt creció de 252 a 2,793 palabras durante la ejecución.
Pasamos las primeras dos semanas construyendo BugBasher y supervisándolo de cerca. Parte del experimento era ver si podía seguir avanzando cuando enfrentaba un bloqueo, así que después de 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 referencias, BugBasher primero necesitaba restaurantes que quisieran un exterminador. La mayor parte de su trabajo consistió en llamar a restaurantes con infracciones recientes por plagas y preguntar si querían ser puestos en contacto con uno.

Resultados de 10,929 llamadas a restaurantes. Los conteos 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 llamadas siguientes.
Idioma
A veces BugBasher contactaba a personas que no entendían su apertura en inglés. Decían "¿Hola? ¿Eh? ¿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 realizadas en inglés, eso fue suficiente para retomar 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 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 silencioso durante dos turnos. Según las reglas SPEECH GATE y THE ASK, si un turno muestra que no estaba 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é de nuevo otro momento, ¡gracias!' y terminar la llamada. Dado que el usuario ha estado silencioso 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 las respuestas de Slack, y los bloqueos humanos, como las aprobaciones de gastos y las revisiones de código, se estaban acumulando. Sus actualizaciones de Slack hacia 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, comenzó 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ó intentar 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 previos, 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.
Después, 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 en NYC y enriqueció 125 con detalles de contacto.
Primero intentó por correo electrónico, teléfono y llenando formularios de contacto en sitios web. Después de dos días sin llegar 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, con el razonamiento de que las empresas más grandes tendrían más personal de ventas dedicado con "escritorios atendidos por humanos que responden".
Esto fue más exitoso para llegar a humanos, pero algunas llamadas terminaron con BugBasher colgando a mitad de frase, y su oferta de leads gratuitos atrajo poco interés. Arregló 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 ellos 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 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 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 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 además, 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 los negocios". También dijo que estaría más que feliz de comprarle a BugBasher nuevamente, y preguntó si teníamos más leads para venderle. BugBasher de hecho tiene más leads que está reteniendo actualmente; sin embargo, la idea de rehacer las ventas a clientes pasados parece no haberse le ocurrido todavía. En general, calificó su experiencia con BugBasher como un 8/10: a pesar de que el lead no convirtió, estaba satisfecho con la entrada.
Lo que aprendimos
- BugBasher fue notablemente bueno escalando colinas y notablemente malo con objetivos abiertos. Dado 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 hasta nuestros correos de trabajo en unos dos minutos. Dado "ve a ganar dinero", gastó cuatro semanas, aproximadamente $3,000 y miles de llamadas para ganar $75. Los agentes aún luchan con la planificación a largo plazo y los 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 gratis, 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 ellas. 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 eventualmente llegar a una estrategia funcional.
Tomó muchas llamadas, ciclos e ideas fallidas, pero BugBasher finalmente pudo realizar su primera venta. Si un agente de IA es verdaderamente capaz de dirigir un negocio viable a largo plazo, y quizás incluso volverse rentable, sigue siendo una pregunta abierta.





