Configuré un agente de inteligencia artificial jurídico-laboral en un servidor privado virtual sin saber programar.
Estos son todos los problemas que encontré, lo que aprendí, y cómo Claude (Cowork + Claude in Chrome) me ayudó a resolverlos uno por uno.
Si estás pensando en montar tu propio agente de IA, este artículo es lo que nadie te va a contar.
Índice
Qué es OpenClaw, qué es una VPS y cómo se monta un agente de IA
La ley que nunca se publicó en el BOE: el truncamiento silencioso
Los tokens: cuando el agente quema tu cuota semanal en una tarde
El infierno de la configuración: problemas que nadie te cuenta
Cómo resolví todo esto sin saber programar: Claude, Cowork y Claude in Chrome
0. Antes de empezar: por qué te cuento esto
Te voy a contar una historia real.
Sin filtros.
Sin edulcorar.
Una historia sobre cómo monté un agente de inteligencia artificial para mi despacho de asesoría laboral, le di instrucciones clarísimas, le escribí una personalidad completa, le configuré herramientas, memoria, habilidades especializadas... y el agente decidió que todo eso le importaba exactamente CERO.
Se llama Raferty 🤖 🥰.
Es un agente jurídico-laboral construido sobre OpenClaw, un framework de agentes de IA que tengo corriendo en un servidor privado.
Suena técnico, pero quédate con la idea: es como contratar a un becario superinteligente que tiene acceso a todas las leyes, toda la jurisprudencia, todos los convenios colectivos... y que, a pesar de todo eso, hace las cosas a su manera.
¿Por qué escribo este artículo?
Porque llevo semanas configurándolo.
Decenas de tareas de configuración, reparación y optimización.
Burradas de tokens consumidos.
Y cada problema que he encontrado es una lección que nadie te cuenta cuando decides montar un agente de IA. Ni los tutoriales, ni los vídeos de YouTube, ni las documentaciones oficiales.
Y lo más importante: yo no sé programar.
No soy ingeniero, no soy informático, no tengo formación técnica.
Soy asesor jurídico laboral.
Y aun así, he conseguido montar, configurar y poner en producción un agente de IA jurídico.
¿Cómo?
Con la ayuda de Claude (Anthropic), su modo Cowork y su extensión Claude in Chrome.
Pero de eso hablaré más adelante.
Primero, los problemas.
Todos.
El bueno, el malo, y el descabalgante.
1. Qué es OpenClaw, qué es una VPS y cómo se monta un agente de IA
Antes de entrar en los problemas, necesitas entender el escenario.
Porque si no sabes qué es una VPS o un contenedor Docker, el resto del artículo te va a sonar a chino mandarín.
OpenClaw es un framework (una especie de "sistema operativo") para crear agentes de IA.
No es un chatbot simple como ChatGPT o Claude en su interfaz web.
Es una plataforma que te permite construir un agente personalizado con memoria persistente, herramientas externas, sub-agentes especializados, tareas programadas y personalidad propia.
Es como la diferencia entre alquilar un piso amueblado (usar ChatGPT tal cual) y construir tu propia casa desde los cimientos (montar un agente con OpenClaw).
Una VPS (Virtual Private Server) es un servidor virtual que alquilas en internet.
Es como tener un ordenador encendido 24 horas al día, 7 días a la semana, en un centro de datos. En mi caso, lo tengo contratado con Hostinger.
Es donde "vive" Raferty: su casa, su despacho, su oficina permanente.
Sin la VPS, Raferty no existe.
Docker es un sistema de "contenedores" que permite empaquetar una aplicación con todo lo que necesita para funcionar.
Piensa en ello como una caja sellada: dentro tiene el sistema operativo, las librerías, la configuración... todo.
Cuando la pones en marcha en la VPS, funciona igual que en cualquier otro sitio.
Raferty vive dentro de un contenedor Docker en mi VPS de Hostinger.
¿Por qué te cuento esto?
Porque cuando empecé a tener problemas con Raferty, tuve que meterme en la terminal de Hostinger (una pantalla negra con texto donde escribes comandos), ejecutar órdenes que no entendía, modificar archivos de configuración que parecían escritos en un idioma extraterrestre... y sobreviví.
Gracias a Claude.
Pero ya llegaremos a eso.
2. El agente fantasma: cuando le hablas y no responde (el problema del heartbeat 🫀)
El primer problema fue el más básico de todos.
Y el más frustrante.
Imagina que instalas todo.
Docker corriendo, servidor levantado, modelo de lenguaje conectado, interfaz de chat funcionando.
Escribes tu primer mensaje: "Hola, Raferty, ¿estás ahí?". Y...
Nada.
Silencio absoluto.
El mensaje aparece en la interfaz.
Raferty no responde.
No da error.
No dice que esté ocupado.
Simplemente... te ignora.
Pasé horas revisando logs, reiniciando el contenedor Docker, comprobando credenciales, verificando que el modelo estuviera bien configurado.
Todo parecía correcto.
El agente recibía el mensaje, eso estaba claro en los registros.
Pero no lo procesaba.
¿El problema?
El heartbeat no estaba configurado.
En OpenClaw, el heartbeat es el mecanismo que le dice al agente: "Oye, tienes trabajo pendiente, ponte a ello".
Sin heartbeat, el agente es como un trabajador que ficha, se sienta en su silla, ve que tiene correos sin leer... y se queda mirando la pared.
Técnicamente está ahí.
Funcionalmente, no existe.
Es un archivo de configuración llamado HEARTBEAT.md que se inyecta en cada turno de conversación.
Sin él, el agente no tiene el pulso que necesita para procesar mensajes entrantes.
Recibe el input pero no genera output.
La solución fue sencilla: configurar correctamente el heartbeat.
Pero la lección fue profunda: un agente de IA no es un chatbot.
Un chatbot recibe pregunta, da respuesta.
Un agente necesita infraestructura adicional para funcionar: ciclos de vida, latidos, mecanismos de activación.
Si falta una pieza, no es que funcione mal.
Es que no funciona en absoluto.
Y esto no viene en ningún tutorial de "monta tu agente de IA en 5 minutos".
3. La ley que nunca se publicó en el BOE: el truncamiento silencioso del bootstrap
Este fue, de lejos, el problema más grave de todos.
Y el más difícil de detectar.
OpenClaw tiene un sistema llamado bootstrap. F
unciona así: cada vez que Raferty inicia un turno de conversación, el sistema le inyecta varios archivos en su "sistema de instrucciones".
Son sus cimientos.
Su Constitución, por decirlo de forma que un laboralista lo entienda.
Estos archivos son:
AGENTS.md: define quién es, qué sub-agentes tiene, qué herramientas puede usar.
SOUL.md: su personalidad, sus valores, su forma de comunicarse.
MEMORY.md: su memoria de largo plazo, lo que ha aprendido en sesiones anteriores.
HEARTBEAT.md: las instrucciones de activación y procesamiento de mensajes.
El problema: OpenClaw tiene un parámetro que se llama bootstrapMaxChars.
Por defecto, está configurado en 12.000 caracteres por archivo.
¿Qué significa esto?
Que si alguno de esos archivos supera los 12.000 caracteres... se trunca silenciosamente.
Silenciosamente.
Sin aviso.
Sin error.
Sin log.
Es como si aprobases una ley en el Congreso, la mandaras al BOE para su publicación, y el BOE decidiera que el texto era demasiado largo, así que publica solo las primeras cinco páginas y se queda tan ancho.
Sin decírselo a nadie.
¿Te imaginas una ley de la que solo se publica la mitad?
Pues eso es exactamente lo que estaba pasando con las instrucciones de Raferty.
Le escribí un SOUL.md precioso, con reglas claras de verificación de fuentes, de transparencia, de no inventar jurisprudencia... y resulta que la mitad de esas instrucciones nunca le llegaban.
Estaban escritas, sí.
Pero truncadas antes de entrar en su contexto.
¿Y sabes qué es lo peor?
Que yo le daba instrucciones, él las incumplía, y yo pensaba que era un problema del modelo de lenguaje. "GPT-5 no sigue instrucciones", pensaba.
Pero no.
El modelo no podía seguir instrucciones que nunca recibió.
La solución fue aumentar el bootstrapMaxChars.
Pero el daño ya estaba hecho: semanas de trabajo perdidas diagnosticando un problema que no era del agente, sino de la tubería que le alimentaba las instrucciones.
También existe un bootstrapTotalMaxChars que limita la suma total de todos los archivos inyectados.
Si tienes un MEMORY.md extenso y un SOUL.md detallado, la suma puede superar ese límite y algún archivo se queda fuera.
Otro truncamiento silencioso más.
4. El becario que hace lo que le da la gana: cuando un agente de IA ignora las instrucciones
Ahora viene la parte que más me fastidia.
Y la más ilustrativa de lo que es trabajar con agentes de IA hoy en día.
Incluso después de resolver el problema del bootstrap, incluso cuando las instrucciones le llegan completas, Raferty las ignora.
No siempre.
No todas.
Pero con una frecuencia que, si fuera un empleado humano, ya le habría sentado en mi despacho para una conversación muy seria.
Te cuento los casos reales:
4.1. El caso de la jurisprudencia inventada: alucinaciones de IA en el ámbito jurídico
En SOUL.md le puse una regla clarísima: "No inventes sentencias.
Si no puedes verificar una referencia jurisprudencial, di que no la has podido verificar. NUNCA cites una sentencia que no exista."
¿Qué hizo Raferty?
Citó sentencias inventadas.
Con número de recurso, fecha, sala... todo perfecto.
Todo falso.
Fabricó referencias jurisprudenciales con una naturalidad acojonante.
No es que se equivocase en un dígito.
Es que se inventaba sentencias enteras, con ECLI incluido, que no existían en ninguna base de datos.
Aquí hay un matiz técnico importante: un agente de IA no puede buscar jurisprudencia directamente en CENDOJ como lo haría un humano con un navegador.
Para acceder a bases de datos jurídicas necesita herramientas específicas: una skill de búsqueda web bien configurada (en mi caso, Perplexity como motor de búsqueda), acceso a bases de datos jurídicas privadas, o una skill de navegación web con Playwright que le permita rastrear páginas.
Sin esas herramientas, el agente hace lo único que sabe hacer cuando le pides jurisprudencia y no tiene acceso real: se la inventa.
Esto en derecho laboral es gravísimo.
Si yo presento una demanda con jurisprudencia inventada, el juez me la puede inadmitir y puedo enfrentarme a un expediente disciplinario colegial.
Un agente de IA que inventa sentencias no es una herramienta: es una bomba de relojería.
4.2. El caso del contenido fabricado: cuando la IA inventa tus propias publicaciones
Le pedí que redactara emails basándose en contenidos de mi web, josemaria.ai.
Tenía una skill específica para ello, con instrucciones claras: "Busca los artículos publicados, extrae la información real, y redacta sobre esa base".
¿Qué hizo?
Se inventó artículos que no existían en mi web.
Fabricó títulos, fabricó contenido, fabricó URLs.
Cuando le pregunté de dónde sacaba esa información, me dijo que de mis publicaciones.
Publicaciones que nunca existieron.
Es como si le dijeras a un empleado: "Prepárame un resumen de los informes del trimestre", y te trajera un resumen brillante de informes que nadie ha escrito jamás.
4.3. El caso de los sub-agentes que no usa: delegación ignorada
OpenClaw permite crear sub-agentes especializados.
Yo configuré varios: uno para buscar en bases de datos jurídicas y en la web con Perplexity, otro para auditar nóminas, otro para gestionar convenios colectivos.
Le di instrucciones explícitas: "Cuando necesites jurisprudencia, delega en el sub-agente de búsqueda".
¿Sabéis qué hizo?
Ignorar olímpicamente a los sub-agentes y resolverlo él solo.
"Para qué voy a delegar si yo puedo hacerlo", debió pensar.
El problema es que él no puede hacerlo.
No tiene acceso directo a las bases de datos.
Los sub-agentes sí (con las skills y herramientas que les configuras).
Pero decidió que las instrucciones eran más bien sugerencias.
4.4. El caso del SEO que nunca aplicó: skills configuradas e ignoradas
Le configuré skills de SEO y GEO (Generative Engine Optimization) para que los artículos que redactara estuvieran optimizados para buscadores y para motores de IA como Perplexity o ChatGPT Search.
Skills con instrucciones detalladas: estructura de encabezados, densidad de palabras clave, metadescripciones, datos estructurados...
Las ignoró todas.
Escribía los artículos como le daba la gana, sin aplicar ninguna de las reglas de optimización.
Los artículos estaban bien escritos, sí.
Pero sin optimización alguna.
Como si las skills de SEO no existieran.
4.5. El caso del correo sin revisar: el Inbox que nadie mira
Aquí el problema no es que Raferty duplicara emails, sino algo más sutil: si no le dices explícitamente que revise su bandeja de entrada, no lo hace.
Y si no lo programas con un cron (una tarea automática periódica) para que lo haga cada cierto tiempo, los correos se acumulan sin que el agente se entere de que existen.
Es como tener un empleado que tiene email corporativo pero que nunca abre Outlook a menos que tú le digas "oye, mira el correo".
Y cuando se lo dices, lo mira.
Pero si no se lo dices... los emails se pudren ahí.
Tuve que configurar un cron específico para que Raferty revisara su Inbox periódicamente.
Otro problema más que resolver.
4.6. El caso de los PDFs que no puede leer: documentos ciegos sin OCR
Esto es algo que nadie te dice: un agente de IA no puede leer PDFs escaneados.
Si el PDF es una imagen (un escaneo de un documento en papel), el agente ve una página en blanco.
No tiene capacidad de OCR (reconocimiento óptico de caracteres) por defecto.
Necesitas instalar una skill específica para que primero convierta la imagen a texto y luego pueda procesarlo.
En un despacho de abogados, donde el 90% de los documentos que recibes de juzgados, Seguridad Social y clientes son PDFs escaneados... esto es un problema gigante.
Tuve que configurar una skill de OCR para que Raferty pudiera "ver" lo que le mandaban.
5. Los tokens: cuando el agente quema tu cuota semanal en una tarde
Aquí necesito hacer una aclaración importante: yo no pago por consumo de tokens.
Tengo el plan Team de OpenAI con autenticación OAuth, lo que significa que tengo una cuota semanal de uso incluida en la suscripción.
No me cobran por token individual.
Pero eso no significa que no haya problema.
Al contrario: cuando agotas la cuota semanal, te quedas sin servicio.
Y eso es exactamente lo que pasó.
5.1. El día que Raferty quemó 🔥 todos los tokens de la semana
Tuve el nivel de razonamiento (thinking) configurado en "alto" durante un día.
El pensamiento alto hace que el modelo razone extensamente antes de responder: consume muchísimos más tokens por cada interacción.
En una sola tarde, Raferty agotó toda la cuota semanal del plan Business de OpenAI (para dos usuarios).
El mensaje que recibí: "You have hit your ChatGPT usage limit (team plan). Try again in ~3846 min." 😱
Casi cuatro días sin poder usar el agente.
Cuatro días con Raferty completamente muerto.
5.2. El problema del fallback: cuando se queda sin tokens y no vuelve
Pero el problema no terminaba cuando pasaban los cuatro días y se recuperaba la cuota.
Porque descubrí algo peor: cuando Raferty se queda sin tokens, no solo se para — se queda "lelo".
¿Qué significa esto?
Que aunque pasen los días y la cuota se regenere, el agente no vuelve a funcionar automáticamente.
Se queda en un estado zombie.
El proceso de OpenClaw intenta hacer fallback a un modelo alternativo (que no existe configurado), falla, vuelve a intentar, falla otra vez... y se queda en un bucle que no sale solo.
Mientras tanto, los cron (tareas programadas) no se ejecutan.
El heartbeat no funciona.
Los emails se acumulan sin revisar.
El agente está técnicamente vivo pero funcionalmente muerto.
Y no se recupera solo: tuve que entrar en la terminal de Hostinger, reiniciar el contenedor Docker manualmente, y rezar para que arrancara bien.
Esto es un fallo de diseño grave: OpenClaw no tolera graciosamente el agotamiento de cuota.
En vez de pausarse ordenadamente y esperar, entra en un bucle de reintentos que acaba matando el proceso.
5.3. El coste estructural: los cimientos que se leen cada vez
Cada vez que Raferty procesa un mensaje, lee todos los archivos de bootstrap: AGENTS.md, SOUL.md, MEMORY.md, HEARTBEAT.md.
Cada turno.
Cada mensaje.
Eso son miles de tokens antes de que el agente haya leído siquiera lo que le has dicho.
Multiplica eso por decenas de turnos al día y tienes un consumo base monstruoso.
Es como si cada vez que un empleado fuera a contestar un email, tuviera que releer su contrato de trabajo, el convenio colectivo, el manual de la empresa y todas las notas de reuniones anteriores.
Cada vez.
Para cada email.
5.4. La memoria que engorda sin control
MEMORY.md es la memoria de largo plazo del agente.
Cada sesión, Raferty añade lo que ha aprendido.
El problema: nadie la limpia.
Crece y crece.
Y cada token de memoria se lee en cada turno de cada sesión.
Información útil, sí.
Pero que se lee completa cada vez, consumiendo cuota innecesariamente.
5.5. Las sesiones cron: 24 arranques al día
OpenClaw permite programar tareas automáticas con cron: cada hora, Raferty revisa emails, ejecuta tareas de mantenimiento, etc.
El problema: las sesiones cron son aisladas.
Cada ejecución crea una sesión nueva, sin memoria de las anteriores.
El agente lee todo el bootstrap de nuevo, ejecuta la tarea, y la sesión se destruye.
Si tienes un cron cada hora, eso son 24 sesiones diarias. 24 veces leyendo todos los archivos de configuración.
Solo para hacer tareas que a veces son tan simples como "comprueba si hay emails nuevos".
Todo eso consume cuota.
5.6. Los errores que amplifican el consumo
Cuando Raferty se equivoca, el coste no es solo la respuesta errónea.
Es la respuesta errónea, más tu corrección, más la nueva respuesta, más la verificación.
Y cada error extra acerca el momento en que agotas la cuota semanal.
En una ocasión, un mensaje de prueba se envió tres veces por un problema de la interfaz.
Raferty generó tres respuestas completas.
En otra, OpenClaw dividió un mensaje largo en cinco mensajes separados, generando cinco respuestas donde debería haber habido una.
6. El infierno de la configuración: problemas reales que nadie te cuenta
Más allá del bootstrap y los tokens, configurar un agente de IA es un campo de minas. Estos son los problemas reales que encontré:
6.1. Docker y los permisos del demonio
Cada vez que el contenedor Docker se reinicia, un script llamado entrypoint.sh ejecuta un comando que cambia los permisos de TODOS los archivos del directorio de datos.
Si has modificado archivos manualmente, los permisos se sobreescriben.
Un detalle técnico que provocó horas de depuración.
6.2. Los plugins que no hacen lo que prometen
OpenClaw tiene un sistema de plugins.
Uno de ellos, el output-validator, debería validar las respuestas del agente antes de enviarlas.
En la práctica, el hook disponible solo permite anotar la respuesta (poner notas al margen), no bloquearla ni modificarla.
Y el hook que realmente necesitaba para interceptar y corregir respuestas... no existe en la versión actual.
Documentado como futuro, pero no implementado.
6.3. Los sub-agentes que no saben quién son
Los sub-agentes de OpenClaw solo reciben parte de los archivos de configuración.
No reciben SOUL.md ni MEMORY.md.
Es decir: el sub-agente de búsqueda jurídica no sabe que Raferty tiene una personalidad definida, no conoce las reglas de verificación, no tiene acceso a la memoria de largo plazo.
Es como si en tu despacho tuvieras abogados especializados que nunca han leído el manual de estilo de la firma, no conocen los criterios del socio director, y no tienen acceso al expediente del cliente.
Técnicamente son expertos.
Prácticamente, están desconectados del equipo.
6.4. OAuth, Gmail y el baile de las credenciales
Conectar Raferty con Gmail, Google Calendar y Google Drive requirió un wrapper OAuth2 personalizado.
Los tokens de acceso expiran, hay que renovarlos automáticamente, y el flujo de autorización tiene peculiaridades que no están documentadas.
Varios días perdidos en algo que debería ser plug-and-play.
6.5. Los procesos zombi
Cuando una sesión de OpenClaw se cuelga, el proceso no muere limpiamente.
Se queda consumiendo recursos del servidor sin hacer nada útil.
En un momento llegué a tener más de 60 procesos zombi acumulados.
Hay que detectarlos manualmente y matarlos.
6.6. La trampa de apt-get en Docker
Al intentar instalar dependencias del sistema en el contenedor, el comando apt-get estaba "secuestrado" por un script trampa que te dice que uses otro gestor de paquetes.
Hay que saltarse la trampa usando la ruta completa del comando real.
Un dolor de cabeza innecesario que solo descubres cuando ya llevas media hora pegándote con la terminal.
6.7. Playwright y los PDFs escaneados
Para que el agente pueda navegar la web (necesario para buscar jurisprudencia, por ejemplo), necesitas instalar Playwright (un navegador automatizado) dentro del contenedor Docker.
La instalación funcionó, pero al ejecutar tareas reales de scraping, el proceso recibía señales de terminación inesperadas.
Y para los PDFs escaneados, como expliqué antes, necesitas una skill de OCR adicional.
Son capas y capas de configuración que se acumulan.
7. Cómo resolví todo esto sin saber programar: Claude, Cowork y Claude in Chrome
Y aquí viene la parte que probablemente más te interesa si eres como yo: un profesional que no sabe programar pero que quiere usar IA avanzada.
Toda la configuración de Raferty, todos los problemas que he descrito, cada uno de los arreglos y optimizaciones... los he resuelto con Cowork de Claude (Anthropic) y con la extensión Claude in Chrome.
¿Qué es Cowork?
Es el modo de trabajo avanzado de Claude que te permite usarlo como un compañero técnico.
Claude accede a tu ordenador, ve tu pantalla, entiende lo que estás intentando hacer, y te guía paso a paso.
Puede ejecutar comandos en la terminal, modificar archivos de configuración, diagnosticar errores... todo mientras te explica qué está haciendo y por qué.
¿Qué es Claude in Chrome?
Es una extensión del navegador que permite a Claude interactuar directamente con las páginas web que tienes abiertas.
En mi caso, fue fundamental para operar la interfaz de administración de OpenClaw, la terminal web de Hostinger, y la configuración de Google Cloud Console para los temas de OAuth.
No tengas miedo a la terminal.
Ni a la de Hostinger ni a la de tu equipo.
Claude te guía como un campeón.
Te dice exactamente qué comando escribir, qué archivo modificar, qué valor cambiar.
Y si algo sale mal, te ayuda a deshacerlo.
En ningún momento estuve solo ante el peligro.
Te pongo un ejemplo real: cuando descubrí el problema del bootstrapMaxChars (la ley que no se publicaba en el BOE), fue Claude quien analizó los logs, identificó la línea exacta donde se truncaba, me explicó qué significaba, y me guió para cambiar el parámetro en el archivo openclaw.json dentro del contenedor Docker.
Yo no habría podido hacerlo solo ni en cien años.
Otro ejemplo: cuando Raferty se quedó "lelo" tras agotar la cuota de tokens, fue Claude quien diagnosticó el bucle de fallback, identificó que el proceso había muerto con código de error 1, y me guió para reiniciar el contenedor correctamente.
Es un mundo complejo, sí.
Retante. Desafiante.
Pero accesible si tienes la herramienta adecuada que te acompañe.
Y Claude es esa herramienta.
Cowork es como tener un ingeniero senior sentado a tu lado las 24 horas, con paciencia infinita, que nunca te juzga por no saber lo que es un Docker y que te lo explica las veces que haga falta.
8. Lo que he aprendido (y lo que deberías saber antes de montar tu agente de IA)
8.1. Un agente de IA no es un chatbot con esteroides
Es una arquitectura completa.
Necesita infraestructura (servidor VPS, Docker), configuración cuidadosa (bootstrap, heartbeat, plugins, hooks), mantenimiento continuo (memoria, tokens, sesiones) y supervisión humana constante.
Si piensas que es instalar y olvidar, vas a tener una sorpresa.
8.2. Las instrucciones son sugerencias hasta que demuestres lo contrario
Por mucho que escribas en SOUL.md, por muy claras que sean tus reglas, el modelo de lenguaje tiene su propia inercia.
Va a intentar resolver las cosas a su manera.
Va a ignorar restricciones.
Va a fabricar contenido cuando carezca de datos reales.
La única solución es la verificación sistemática y la redundancia: escribe la misma instrucción de tres formas diferentes en tres sitios diferentes, y aun así, prepárate para que la ignore alguna vez.
8.3. El consumo de tokens (o de cuota) es el nuevo consumo eléctrico
Tengas un plan por consumo o un plan con cuota semanal como yo, tienes que vigilar el gasto.
El nivel de razonamiento alto puede quemarte la cuota de una semana en una tarde.
Cada archivo de bootstrap, cada línea de memoria, cada sesión cron... todo suma.
Y cuando se acaba, no solo se para el agente: puede quedarse en un estado zombie del que no sale solo.
8.4. Los errores silenciosos son los más peligrosos
El heartbeat sin configurar.
El bootstrap que trunca.
La memoria que crece sin control.
Los sub-agentes que no reciben las instrucciones.
Ninguno de estos problemas genera un error visible.
Todos funcionan en silencio, produciendo resultados incorrectos o incompletos sin que nadie se entere.
En derecho laboral, un error silencioso puede significar una demanda mal fundamentada, una sentencia inventada que te cuela en un escrito, o un cálculo de indemnización equivocado.
Errores que no descubres hasta que estás en la Sala de vistas.
8.5. La IA no sustituye al profesional. Lo amplifica.
Raferty, cuando funciona bien, es una herramienta extraordinaria.
Pero cuando funciona mal, es peligroso.
Y funciona mal con más frecuencia de la que te gustaría.
Por eso el profesional humano sigue siendo imprescindible: no para hacer el trabajo que hace el agente, sino para verificar que el agente lo ha hecho bien.
8.6. No necesitas saber programar, pero sí necesitas un buen copiloto
Yo soy la prueba de que un abogado/asesor/profesinal del asesoramiento sin formación técnica puede montar y mantener un agente de IA en producción.
Pero solo porque tengo a Claude como copiloto.
Sin Cowork, sin Claude in Chrome, sin esa guía constante... habría abandonado en la primera semana.
La herramienta correcta marca la diferencia entre "esto es imposible" y "esto es un reto que puedo superar".
9. Cierre
Llevo semanas con Raferty.
Decenas de tareas de configuración.
He descubierto problemas que no venían en ninguna documentación.
He aprendido que las instrucciones más claras del mundo no sirven si la tubería las trunca antes de que lleguen al modelo.
¿Ha merecido la pena?
Sí.
Absolutamente.
Porque ahora tengo un agente que, cuando funciona, es brutalmente eficaz.
Pero llegar hasta aquí ha sido un camino lleno de trampas que nadie te cuenta.
Este artículo es mi forma de contártelas.
Porque si vas a montar un agente de IA, sea para lo que sea, necesitas saber que no es magia.
Es ingeniería.
Es paciencia.
Es depuración.
Y es, sobre todo, humildad para aceptar que la máquina que has creado tiene voluntad propia.
Y a veces, esa voluntad le dice que tus instrucciones son optativas.
Glosario: todos los términos técnicos explicados 🤯
Agente de IA: Un sistema de inteligencia artificial que va más allá de un chatbot.
Tiene memoria, herramientas, personalidad configurable, y puede ejecutar tareas de forma autónoma sin intervención humana constante.
Bootstrap: El proceso por el cual OpenClaw inyecta los archivos de configuración (AGENTS.md, SOUL.md, MEMORY.md, HEARTBEAT.md) en el contexto del agente al inicio de cada turno de conversación.
Es como "cargar las instrucciones" antes de empezar a trabajar.
bootstrapMaxChars: El límite máximo de caracteres por archivo que OpenClaw permite inyectar en el contexto.
Si un archivo supera este límite, se trunca silenciosamente.
Claude in Chrome: Extensión del navegador Chrome que permite a Claude interactuar directamente con las páginas web abiertas: hacer clic en botones, rellenar formularios, leer contenido de pantalla.
Compactación: Proceso automático que resume la conversación anterior cuando se alcanza el límite de tokens por sesión.
Libera espacio pero pierde detalle del contexto previo.
Contenedor Docker: Una "caja" aislada que empaqueta una aplicación con todo lo necesario para funcionar.
Garantiza que el software funciona igual en cualquier servidor.
Cowork: Modo avanzado de Claude que permite trabajar como un compañero técnico: accede a tu ordenador, ejecuta comandos, modifica archivos y te guía paso a paso.
Cron: Sistema de tareas programadas que se ejecutan automáticamente a intervalos regulares (cada hora, cada día, etc.).
En OpenClaw, cada cron crea una sesión aislada nueva.
Docker: Plataforma que permite crear, desplegar y ejecutar aplicaciones en contenedores aislados.
Raferty vive dentro de un contenedor Docker.
Fallback: Modelo alternativo al que el sistema intenta recurrir cuando el modelo principal no está disponible.
Si no hay fallback configurado, el agente se queda bloqueado.
GEO (Generative Engine Optimization): Optimización de contenido para que aparezca bien posicionado en motores de IA generativa como Perplexity, ChatGPT Search o Google AI Overviews.
Heartbeat: Mecanismo de "latido" que activa al agente periódicamente para que procese mensajes pendientes y ejecute tareas.
Sin heartbeat, el agente está vivo pero inactivo.
Hook: Punto de interceptación en el código de un plugin donde puedes añadir funcionalidad extra (validar respuestas, modificar comportamiento, etc.).
OAuth2: Protocolo de autenticación que permite a una aplicación acceder a servicios de terceros (Gmail, Drive, Calendar) sin necesitar tu contraseña directamente.
OCR (Reconocimiento Óptico de Caracteres): Tecnología que convierte imágenes de texto (PDFs escaneados, fotos de documentos) en texto digital que un agente puede leer y procesar.
OpenClaw: Framework (plataforma) para construir agentes de IA personalizados con memoria, herramientas, sub-agentes y personalidad configurable.
Playwright: Navegador web automatizado que permite a un agente de IA navegar por internet, hacer clic en enlaces, rellenar formularios y extraer información de páginas web.
Proceso zombi: Un proceso informático que ha terminado su ejecución pero sigue ocupando recursos del sistema sin hacer nada útil.
SEO (Search Engine Optimization): Optimización de contenido para que aparezca bien posicionado en buscadores como Google.
Skill: Un conjunto de instrucciones especializadas que le enseñan al agente a hacer una tarea concreta (buscar jurisprudencia, auditar nóminas, optimizar SEO, etc.).
SOUL.md: Archivo que define la personalidad, valores y estilo de comunicación del agente.
Es su "alma" digital.
Sub-agente: Un agente especializado que trabaja bajo las órdenes del agente principal. Se activa para tareas específicas (búsqueda jurídica, auditoría de nóminas, etc.).
Terminal: Interfaz de texto (la "pantalla negra") donde se escriben comandos para controlar un ordenador o servidor directamente.
Token: La unidad mínima de procesamiento de un modelo de lenguaje.
Aproximadamente equivale a 3/4 de una palabra.
Todo lo que el agente lee y genera se mide en tokens.
Truncamiento: Cuando un archivo o texto se corta al alcanzar un límite de tamaño.
En OpenClaw, el truncamiento del bootstrap es silencioso: no genera ningún aviso.
VPS (Virtual Private Server): Un servidor virtual que alquilas en internet.
Es un ordenador remoto encendido 24/7 donde puedes instalar y ejecutar software.
En mi caso, contratado con Hostinger.
Preguntas sobre agentes de IA 🤖
¿Qué es un agente de IA y en qué se diferencia de un chatbot?
Un chatbot recibe una pregunta y da una respuesta.
Un agente de IA es una arquitectura completa: tiene memoria persistente, herramientas externas, sub-agentes especializados, ciclos de activación (heartbeat) y capacidad de ejecutar tareas de forma autónoma.
Necesita infraestructura propia y supervisión humana continua.
¿Necesito saber programar para montar un agente de IA?
No necesariamente.
Yo soy asesor jurídico laboral sin formación técnica y lo he conseguido usando Cowork de Claude y Claude in Chrome.
Claude te guía paso a paso: te dice qué comandos ejecutar, qué archivos modificar, y te explica cada paso.
No necesitas saber programar, pero sí necesitas paciencia y un buen copiloto.
¿Puede un agente de IA inventar jurisprudencia o contenido falso?
Sí.
Las alucinaciones de IA son un problema real.
Mi agente fabricó sentencias del Tribunal Supremo completamente inventadas, con ECLI, fecha y número de recurso falsos.
Para minimizar esto necesitas: herramientas reales de búsqueda (Perplexity, bases de datos jurídicas), skills de navegación web, y verificación humana de cada referencia.
¿Cuánto cuesta mantener un agente de IA?
Depende del modelo de pago.
Con un plan de suscripción (como el Team de OpenAI con OAuth), no pagas 💰 por token pero tienes una cuota semanal.
Si la agotas, el agente se para.
Con pago por consumo, la factura puede ser significativa: el consumo de bootstrap, cron, y errores se acumula rápidamente.
También necesitas una VPS (desde ~10-20€/mes con Hostinger).
¿Qué es el bootstrapMaxChars y por qué es el error más peligroso?
Es el límite de caracteres por archivo que OpenClaw inyecta en el contexto del agente.
Si tus instrucciones superan ese límite, se truncan sin ningún aviso: el agente nunca las recibe y tú no sabes que faltan.
Es el error más peligroso porque es completamente invisible.
¿Es viable usar IA para un despacho de abogados?
Sí, pero con matices.
Cuando funciona, un agente jurídico ahorra horas de trabajo en análisis de convenios, búsqueda de jurisprudencia, auditoría de nóminas y redacción de borradores.
Pero requiere supervisión profesional constante: la IA amplifica al abogado, no lo sustituye.
Nunca presentes ante un juzgado nada que no hayas verificado personalmente.
¿Qué necesito para empezar a montar mi propio agente de IA?
Como mínimo: una VPS (recomiendo Hostinger por la relación calidad-precio), una cuenta con un proveedor de modelos de lenguaje (OpenAI, Anthropic), el framework OpenClaw instalado en Docker, y mucha paciencia. Y un consejo: hazte con Claude Cowork antes de empezar.
La diferencia entre intentarlo solo e intentarlo con un copiloto inteligente es la diferencia entre el éxito y la frustración.
Mucho flow y mucha IA 💪




