{"id":11788,"date":"2026-04-20T21:09:33","date_gmt":"2026-04-20T19:09:33","guid":{"rendered":"https:\/\/bitacora.eniac2000.com\/?p=11788"},"modified":"2026-04-20T22:17:43","modified_gmt":"2026-04-20T20:17:43","slug":"burocracia-de-la-administracion-como-excusa-para-la-ia-agentica-openclaw","status":"publish","type":"post","link":"https:\/\/bitacora.eniac2000.com\/?p=11788","title":{"rendered":"Burocracia de la Administraci\u00f3n como excusa para la IA ag\u00e9ntica: OpenClaw"},"content":{"rendered":"\n<p class=\"intro-text\">Ana es funcionaria docente en Galicia. Cada a\u00f1o, en alg\u00fan momento entre mayo y junio, la Conseller\u00eda de Educaci\u00f3n de la Xunta publica la convocatoria de comisiones de servicio por conciliaci\u00f3n familiar. El plazo para solicitarlas es de apenas 10 d\u00edas h\u00e1biles. Si te lo pierdes, te expones a que el curso escolar siguiente te puedan mandar a cualquier lugar de la provincia o si, como es nuestro caso y vives en una zona l\u00edmitrofe a las cuatro provincias gallegas y las tienes en tu listado (ya que el nivel de granularidad de elecci\u00f3n para vacantes es a nivel provincial), que te puedan mandar a cualquier lugar de la Comunidad. Este a\u00f1o decid\u00ed que un agente de IA se iba a encargar de vigilarlo por nosotros, y lo que aprend\u00ed en el proceso merece una entrada en esta bit\u00e1cora.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"687\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/92prC-1024x687.jpg\" alt=\"\" class=\"wp-image-11793\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/92prC-1024x687.jpg 1024w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/92prC-300x201.jpg 300w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/92prC-768x516.jpg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/92prC.jpg 1168w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">OpenClaw como agente de b\u00fasqueda en la web de la Xunta. Generado por IA<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">El problema: burocracia con fecha de caducidad<\/h2>\n\n\n\n<p>Las comisiones de servicio por conciliaci\u00f3n permiten al profesorado gallego solicitar un destino temporal m\u00e1s cercano a su domicilio cuando hay razones familiares que lo justifican. La convocatoria no tiene fecha fija: se publica despu\u00e9s de la resoluci\u00f3n del concurso general de traslados, que puede caer en cualquier momento de la primavera. La Conseller\u00eda lo anuncia en su portal educativo (<a href=\"https:\/\/www.edu.xunta.gal\/portal\/es\/taxonomy\/term\/1748\">edu.xunta.gal<\/a>), pero tambi\u00e9n los sindicatos de educaci\u00f3n como la <a href=\"https:\/\/www.cig-ensino.gal\">CIG-Ensino<\/a> lo recogen puntualmente en sus webs.<\/p>\n\n\n\n<p>La pregunta que me hice fue sencilla: \u00bfes esta una tarea adecuada para automatizar con un agente de IA? La respuesta es que s\u00ed, y casi perfecta: la informaci\u00f3n es p\u00fablica, la URL es predecible, el evento que hay que detectar es binario, y el coste de perderse el plazo es alto. Exactamente el perfil de tarea donde un agente aporta valor real.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">OpenClaw: qu\u00e9 es y por qu\u00e9 genera tanto ruido<\/h2>\n\n\n\n<p><a href=\"https:\/\/openclaw.ai\/\" data-type=\"link\" data-id=\"https:\/\/openclaw.ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">OpenClaw<\/a> (antes conocido como Clawdbot y brevemente como Moltbot) es un <em>framework<\/em> de agente de IA de c\u00f3digo abierto creado por Peter Steinberger, el fundador de PSPDFKit. A estas alturas se ha convertido en uno de los repositorios con m\u00e1s estrellas en la historia de GitHub, superando las 250.000 en menos de dos meses. El crecimiento es real, el <em>hype<\/em> tambi\u00e9n, y los problemas de seguridad, por desgracia, est\u00e1n a la altura de los anteriores.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"360\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/zap_openclaw_transparent.webp\" alt=\"\" class=\"wp-image-11794\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/zap_openclaw_transparent.webp 600w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/zap_openclaw_transparent-300x180.webp 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><figcaption class=\"wp-element-caption\">Logo de OpenClaw<\/figcaption><\/figure>\n\n\n\n<p>Lo que lo diferencia de un <em>chatbot<\/em> convencional es su arquitectura de agente aut\u00f3nomo: corre como servicio en tu propia m\u00e1quina, tiene memoria persistente entre sesiones, puede ejecutar tareas programadas sin que nadie se lo pida, y se comunica contigo a trav\u00e9s de las aplicaciones de mensajer\u00eda convencionales, tales como Telegram, WhatsApp o Discord. Le dices qu\u00e9 quieres que haga y lo hace, tambi\u00e9n cuando no est\u00e1s delante del teclado.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El contexto de ciberseguridad que no se puede ignorar<\/h2>\n\n\n\n<p>Antes de instalar nada, conviene entender qu\u00e9 est\u00e1s metiendo en casa. OpenClaw puede ejecutar comandos de <em>shell<\/em>, leer y escribir ficheros, y controlar el navegador de tu m\u00e1quina. La propia documentaci\u00f3n del proyecto admite que <strong>no existe una configuraci\u00f3n perfectamente segura<\/strong>. En enero de 2026 se detect\u00f3 el ataque de cadena de suministro \u00abClawHavoc\u00bb: aproximadamente el 12% de las <em>skills<\/em> del registro oficial estaban comprometidas. Hubo un CVE cr\u00edtico (CVE-2026-25253) que permit\u00eda ejecuci\u00f3n remota de c\u00f3digo con un solo clic.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"687\" height=\"1024\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/7PXXO-687x1024.jpg\" alt=\"\" class=\"wp-image-11796\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/7PXXO-687x1024.jpg 687w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/7PXXO-201x300.jpg 201w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/7PXXO-768x1144.jpg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/7PXXO.jpg 784w\" sizes=\"auto, (max-width: 687px) 100vw, 687px\" \/><figcaption class=\"wp-element-caption\">Imagen figurativa de los riesgos de OpenClaw. Generada por IA<\/figcaption><\/figure>\n\n\n\n<p>No es exactamente el escenario ideal para el uso de este agente de IA, pero esto no significa que no se pueda usar con seguridad razonable: significa que hay que ser met\u00f3dico en la aproximaci\u00f3n de seguridad en el despliegue. En mi caso, lo que hice fue adoptar las siguientes medidas de seguridad:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Despliegue en Docker<\/strong>, con el puerto del <em>gateway<\/em> vinculado exclusivamente a localhost (127.0.0.1:18789), sin exponerlo a la red local ni a internet.<\/li>\n\n\n\n<li><strong>Exec policy en \u00abask\u00bb<\/strong>: el agente pide confirmaci\u00f3n antes de ejecutar cualquier comando de <em>shell<\/em>. Para la tarea de monitorizar una web esto es innecesario, pero es una red de seguridad que no cuesta nada.<\/li>\n\n\n\n<li><strong>Sin <em>node pairing<\/em><\/strong>: no emparej\u00e9 el Mac como nodo ejecutor, lo que desactiva la capacidad de ejecuci\u00f3n remota de c\u00f3digo.<\/li>\n\n\n\n<li><strong>Sin <em>skills<\/em> externas<\/strong>: solo las capacidades nativas de navegaci\u00f3n web y mensajer\u00eda. Nada descargado del registro de la comunidad.<\/li>\n\n\n\n<li><strong>Volumen de datos montado en un directorio dedicado<\/strong> (~\/.openclaw-docker) con permisos 700.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">El an\u00e1lisis de las fuentes: CIG-Ensino gana<\/h2>\n\n\n\n<p>Antes de configurar el agente hice un trabajo de an\u00e1lisis de fuentes que result\u00f3 m\u00e1s valioso que cualquier l\u00ednea de configuraci\u00f3n. Compar\u00e9 el portal de la Xunta con la p\u00e1gina de seguimiento de la CIG-Ensino y la conclusi\u00f3n fue clara: el sindicato es la fuente primaria \u00f3ptima. El motivo es simple: la URL sigue un patr\u00f3n perfectamente predecible a\u00f1o a a\u00f1o. La de 2021 fue <code>\/nova\/comisions-de-servizo-de-conciliacion-2021.html<\/code>, la de 2025 fue <code>\/nova\/comisions-de-servizo-de-conciliacion-2025.html<\/code>. Eso significa que la URL de 2026 ya la sabemos antes de que exista. El agente no tiene que buscar ni interpretar nada: o la p\u00e1gina devuelve 200 o devuelve 404. Adem\u00e1s, la CIG consolida en una sola p\u00e1gina toda la cronolog\u00eda del proceso \u2014 apertura del plazo, resoluci\u00f3n provisional, resoluci\u00f3n definitiva \u2014 con fechas expl\u00edcitas f\u00e1ciles de <em>parsear<\/em>.<\/p>\n\n\n\n<p>El portal de la Xunta (que en teor\u00eda tendr\u00eda que ser la fuente principal) queda, por tanto, como fuente secundaria de confirmaci\u00f3n, vigilando la secci\u00f3n de comisiones de servicio en busca de entradas nuevas con las palabras clave \u00abapertura\u00bb, \u00abconciliaci\u00f3n\u00bb y \u00ab2026\/27\u00bb.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"933\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/openclaw-flujo-xunta-1024x933.png\" alt=\"Flujo de proceso del agente\" class=\"wp-image-11790\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/openclaw-flujo-xunta-1024x933.png 1024w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/openclaw-flujo-xunta-300x273.png 300w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/openclaw-flujo-xunta-768x700.png 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/openclaw-flujo-xunta.png 1440w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Flujo de proceso del agente<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">La instalaci\u00f3n: m\u00e1s accidentada de lo esperado<\/h2>\n\n\n\n<p>Ya ten\u00eda el punto de partida. La ventaja de afrontar este proceso desde Claude Code es que puedes acometer tanto la parte de despligue de infraestructura, como el relativo a la configuraci\u00f3n del entorno software. Aunque el apoyo de IA hace que el proceso se simplifique enormemente, no es una instalaci\u00f3n que se haga de manera directa, es un proceso que presenta errores que hay que tratar. Y documentar el proceso de instalaci\u00f3n real, con sus tropiezos, me parece m\u00e1s  \u00fatil que describir el camino feliz. Estos fueron los obst\u00e1culos en orden de aparici\u00f3n:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Error EACCES en npm<\/strong>: Ten\u00eda claro que el entorno de instalaci\u00f3n ten\u00eda que estar aislado y sin permisos de superusuario. Y el primer punto fue que el directorio global de npm en Mac pertenece a root cuando npm viene preinstalado del sistema. La soluci\u00f3n que adopt\u00e9 fue el redirigir el prefijo global a ~\/.npm-global, sin dar permisos de sudo.<\/li>\n\n\n\n<li><strong>Imagen Docker inexistente<\/strong>: openclaw\/openclaw no existe en Docker Hub. Hay que construir la imagen localmente desde el paquete npm, a\u00f1adiendo git, python3, make y g++ a Alpine para que las dependencias nativas compilen.<\/li>\n\n\n\n<li><strong>Flag &#8211;foreground eliminado<\/strong>: la documentaci\u00f3n de algunos tutoriales menciona <code>openclaw gateway --foreground<\/code>, pero en la versi\u00f3n actual el comando correcto es <code>openclaw gateway run<\/code>.<\/li>\n\n\n\n<li><strong><em>Gateway<\/em> sin interfaz gr\u00e1fica en <em>headless<\/em><\/strong>: el LaunchAgent de macOS requiere sesi\u00f3n gr\u00e1fica activa. En un Mac Mini M4 al que accedo m\u00faltiples veces sin monitor conectado permanentemente, la soluci\u00f3n es Docker con <code>--restart unless-stopped<\/code>.<\/li>\n\n\n\n<li><strong><em>Schema<\/em> de configuraci\u00f3n no documentado<\/strong>: a\u00f1adir un proveedor de modelo de IA nuevo (Mistral, en mi caso, dado que no quer\u00eda hacer uso de <em>tokens<\/em> de Anthropic) requiri\u00f3 inspeccionar el JSON de configuraci\u00f3n directamente y usar el flujo interactivo de <code>openclaw models auth add<\/code>.<\/li>\n\n\n\n<li><strong>Workspace vs. agent dir<\/strong>: los ficheros SOUL.md y HEARTBEAT.md deben estar en el workspace (<code>~\/.openclaw\/workspace\/<\/code>), no en el directorio del agente (<code>~\/.openclaw\/agents\/main\/agent\/<\/code>). OpenClaw viene con ficheros gen\u00e9ricos de ejemplo en el workspace que silenciosamente tienen precedencia sobre los tuyos si los pones en el sitio equivocado.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">La configuraci\u00f3n del agente: SOUL.md y HEARTBEAT.md<\/h2>\n\n\n\n<p>Una vez el <em>gateway<\/em> queda configurado, la configuraci\u00f3n del comportamiento del agente se hace mediante dos ficheros de texto plano, a saber:<\/p>\n\n\n\n<p><strong>SOUL.md<\/strong> define la personalidad y los l\u00edmites del agente. En mi caso contiene instrucciones bastante simples: comunicarse en espa\u00f1ol, no ejecutar comandos de <em>shell<\/em>, no acceder a URLs no listadas expl\u00edcitamente, no instalar <em>skills<\/em> externas. Un agente con una superficie de ataque tremendamente reducida.<\/p>\n\n\n\n<p><strong>HEARTBEAT.md<\/strong> es el sistema de programaci\u00f3n de tareas. OpenClaw lee este fichero cada 30 minutos y ejecuta las tareas cuya hora haya llegado. El m\u00edo tiene tres bloques: vigilancia de la CIG-Ensino a las 08:00, vigilancia de la Xunta a las 08:05, e informe semanal los lunes a las 09:00. Cuando el agente detecta la publicaci\u00f3n, env\u00eda una alerta por Telegram con el plazo exacto, los d\u00edas h\u00e1biles restantes y el enlace directo a la plataforma de solicitud.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>## Cada d\u00eda a las 08:00 AM \u2014 Vigilancia primaria (CIG-Ensino)\n\n1. Accede a esta URL exacta:\n   https:&#47;&#47;www.cig-ensino.gal\/nova\/comisions-de-servizo-de-conciliacion-2026.html\n\n2. Si la p\u00e1gina devuelve error 404: no hagas nada.\n   Registra en memoria: \"CIG 2026: sin publicar. Verificado &#91;fecha].\"\n\n3. Si la p\u00e1gina existe y tiene el plazo publicado:\n   activa el PROTOCOLO DE ALERTA.<\/code><\/pre>\n\n\n\n<p>Hay un punto que no es trivial, y es el de d\u00f3nde ubicar los ficheros. La ubicaci\u00f3n correcta \u2014y esto no es obvio\u2014 es el <strong><em>workspace<\/em><\/strong> del agente (<code>~\/.openclaw\/workspace\/<\/code>), no el directorio del agente. OpenClaw distingue entre ambos y usa el <em>workspace<\/em> como fuente de verdad en tiempo de ejecuci\u00f3n. Tratar\u00e9 este punto en detalle un poco m\u00e1s adelante.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lo que funciona y lo que no est\u00e1 garantizado<\/h2>\n\n\n\n<p>El agente responde correctamente cuando le hablas por Telegram: navega por las webs, extrae informaci\u00f3n, razona sobre lo que encuentra. Mistral Large tarda entre 30 y 60 segundos en responder cuando hay navegaci\u00f3n web de por medio, lo cual es normal dado que el proceso es secuencial \u2014 petici\u00f3n HTTP, procesado del HTML y generaci\u00f3n de la respuesta.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"659\" height=\"1024\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-20-at-21.05.54-1-659x1024.jpeg\" alt=\"\" class=\"wp-image-11798\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-20-at-21.05.54-1-659x1024.jpeg 659w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-20-at-21.05.54-1-193x300.jpeg 193w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-20-at-21.05.54-1-768x1193.jpeg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-20-at-21.05.54-1.jpeg 921w\" sizes=\"auto, (max-width: 659px) 100vw, 659px\" \/><figcaption class=\"wp-element-caption\">Mensajes del agente<\/figcaption><\/figure>\n\n\n\n<p>Lo que no est\u00e1 completamente garantizado es la entrega de alertas proactivas en <em>heartbeats<\/em> autom\u00e1ticos sin sesi\u00f3n activa: el sistema de <em>heartbeat<\/em> de OpenClaw tiene el concepto de \u00abtarget-none\u00bb: el agente ejecuta la tarea pero no tiene destinatario claro al que enviar el resultado si no hay una conversaci\u00f3n reciente activa. Para algo tan importante como este plazo, a\u00f1adir\u00eda una segunda capa de seguridad: un <em>cron<\/em> nativo del sistema operativo que simplemente compruebe si la URL devuelve 200 y env\u00ede un email. Sin LLMs, sin Docker, sin APIs. Tres l\u00edneas de shell.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El <em>truco<\/em> que nadie documenta: <em>workspace<\/em> frente a <em>agent dir<\/em><\/h2>\n\n\n\n<p>Una vez confirmado que el agente respond\u00eda correctamente por Telegram, le pregunt\u00e9 directamente qu\u00e9 instrucciones ten\u00eda cargadas en su SOUL.md. La respuesta me desconcert\u00f3: me describi\u00f3 un agente gen\u00e9rico con tareas de correo, calendario y redes sociales. Nada de comisiones de servicio, nada de CIG-Ensino, nada de lo que yo hab\u00eda configurado.<\/p>\n\n\n\n<p>Los ficheros estaban en su sitio. <code>docker exec openclaw find \/home\/openclaw\/.openclaw\/agents -name \"SOUL.md\"<\/code> los encontraba sin problema en <code>~\/.openclaw\/agents\/main\/agent\/SOUL.md<\/code>. Y sin embargo el agente le\u00eda otros.<\/p>\n\n\n\n<p>El motivo es una distinci\u00f3n que la documentaci\u00f3n de OpenClaw no explica con claridad: el agente tiene dos ubicaciones relevantes, y no son equivalentes. El <strong>agent dir<\/strong> (<code>~\/.openclaw\/agents\/main\/agent\/<\/code>) es donde est\u00e1 la configuraci\u00f3n del agente \u2014 modelos, perfiles de auth, routing. El <strong><em>workspace<\/em><\/strong> (<code>~\/.openclaw\/workspace\/<\/code>) es donde el agente lee los ficheros de comportamiento en tiempo de ejecuci\u00f3n: SOUL.md, HEARTBEAT.md, MEMORY.md. Y el <em>workspace<\/em> tiene precedencia.<\/p>\n\n\n\n<p>OpenClaw viene con ficheros de ejemplo en el <em>workspace<\/em> \u2014 un SOUL.md gen\u00e9rico bastante elaborado y un HEARTBEAT.md con plantillas de tareas dom\u00e9sticas. Cuando cre\u00e9 mis ficheros en el <em>agent dir,<\/em> el agente los ignor\u00f3 silenciosamente porque el workspace ya ten\u00eda los suyos. La soluci\u00f3n fue copiar los ficheros al sitio correcto:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp ~\/.openclaw-docker\/agents\/main\/agent\/SOUL.md ~\/.openclaw-docker\/workspace\/SOUL.md\ncp ~\/.openclaw-docker\/agents\/main\/agent\/HEARTBEAT.md ~\/.openclaw-docker\/workspace\/HEARTBEAT.md\ndocker restart openclaw<\/code><\/pre>\n\n\n\n<p>Tras el reinicio, la misma pregunta por Telegram devolvi\u00f3 la respuesta correcta: monitorizaci\u00f3n administrativa especializada, s\u00f3lo espa\u00f1ol, sin comandos de <em>shell<\/em>, URLs de la CIG-Ensino y la Xunta. El agente hab\u00eda encontrado sus instrucciones.<\/p>\n\n\n\n<p>La lecci\u00f3n es que en OpenClaw el lugar donde <em>guardas<\/em> los ficheros y el lugar donde el agente los <em>lee<\/em> no son el mismo. Si tu agente parece ignorar tu configuraci\u00f3n, comprueba el <em>workspace<\/em> antes de buscar problemas m\u00e1s complejos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><em>Skills<\/em> de Claude Code para validar la seguridad de la instalaci\u00f3n<\/h2>\n\n\n\n<p>Ya he comentado que he utilizado Claude Code como asistente de IA para acelerar el despliegue y la configuraci\u00f3n del agente, pero no ha sido -ni mucho menos- el punto m\u00e1s valioso de su utilizaci\u00f3n. Y este es el punto donde entran los <em>skills<\/em>. Si bien Claude Code tiene unas capacidades que de partida son impresionantes, para poderlas aprovechar bien es necesario componer unas consultas espec\u00edficas para que aplique aquellos aspectos (ciberseguridad, buenas pr\u00e1cticas de desarrollo, UX&#8230;) que nos interesen, cosa para lo que muchas veces no tenemos el tiempo o la capacidad. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"559\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_eknz1qeknz1qeknz-1024x559.png\" alt=\"\" class=\"wp-image-11795\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_eknz1qeknz1qeknz-1024x559.png 1024w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_eknz1qeknz1qeknz-300x164.png 300w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_eknz1qeknz1qeknz-768x419.png 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_eknz1qeknz1qeknz.png 1408w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Skills de ciberseguridad para Claude Code que permiten un OpenClaw m\u00e1s seguro. Estilo steampunk. Generado con IA<\/figcaption><\/figure>\n\n\n\n<p>Las <em>skills<\/em> ayudan a facilitar este proceso: se trata de ficheros de \u00abhabilidades\u00bb (de ah\u00ed su nombre) que podemos incorporar a nuestro entorno de IA para que las aplique sin tener que declararlas de manera expl\u00edcita. Terriblemente sencillo, y terriblemente potente. Y, en mi caso, lo que m\u00e1s me interesaba era aplicar un buen <em>skill<\/em> de ciberseguridad.<\/p>\n\n\n\n<p>Y es que, aunque hab\u00eda explicitado desde el inicio que quer\u00eda realizar un proceso de despliegue seguro y conforme a buenas pr\u00e1cticas de ciberseguridad, quer\u00eda validar c\u00f3mo de bien se hab\u00eda hecho este proceso. As\u00ed que me hice con un repositorio espec\u00edfico (<a href=\"https:\/\/github.com\/mukul975\/Anthropic-Cybersecurity-Skills\">https:\/\/github.com\/mukul975\/Anthropic-Cybersecurity-Skills<\/a>), e hice la prueba. Y el resultado fue que aprobaba raspado en la seguridad de mi despliegue:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"461\" height=\"1024\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09-461x1024.jpeg\" alt=\"\" class=\"wp-image-11791\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09-461x1024.jpeg 461w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09-135x300.jpeg 135w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09-768x1708.jpeg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09-691x1536.jpeg 691w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2026\/04\/WhatsApp-Image-2026-04-18-at-19.13.09.jpeg 921w\" sizes=\"auto, (max-width: 461px) 100vw, 461px\" \/><figcaption class=\"wp-element-caption\">Resumen ejecutivo de los hallazgos. Buenas pr\u00e1cticas, pero aprobado raspado<\/figcaption><\/figure>\n\n\n\n<p>S\u00ed, estuve realizando las pruebas desde un m\u00f3vil Android con un cliente SSH. Muy, muy divertido.<\/p>\n\n\n\n<p>La parte m\u00e1s interesante es que el propio informe de ciberseguridad que solicit\u00e9 daba las claves para solucionar por problemas, que pude implementar en un nuevo <em>prompt<\/em> de correcci\u00f3n. Tras ello, y tras solucionar los hallazgos, la evaluaci\u00f3n de la postura de ciberseguridad subi\u00f3 a 9.5\/10, aunque tuve que trastear un poco para que la funcionalidad no se viera comprometida, ya que algunas de las remediaciones fueron un tanto <em>agresivas.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n: vale la pena, pero con los ojos abiertos<\/h2>\n\n\n\n<p>OpenClaw es una herramienta genuinamente potente y genuinamente inmadura. El distancia entre lo que promete y lo que entrega en producci\u00f3n es real, pero se est\u00e1 cerrando r\u00e1pido. Para una tarea de monitorizaci\u00f3n dom\u00e9stica de bajo riesgo \u2014 vigilar una URL p\u00fablica y enviarte un Telegram \u2014 el perfil de riesgo es manejable si haces el despliegue con cabeza.<\/p>\n\n\n\n<p>Sin embargo, el punto m\u00e1s valioso del ejercicio no fue el agente en s\u00ed (que era, en realidad, apenas una excusa para probar la IA ag\u00e9ntica): fue m\u00e1s valioso proceso de analizar las fuentes antes de escribir una sola l\u00ednea de configuraci\u00f3n. Saber que la URL de la CIG-Ensino sigue un patr\u00f3n anual predecible es m\u00e1s \u00fatil que cualquier <em>prompt<\/em> elaborado. Los agentes de IA son tan buenos como la informaci\u00f3n que les das y la claridad con la que defines la tarea. Y, con todo, esto no era el punto m\u00e1s valioso.<\/p>\n\n\n\n<p>El punto que de verdad fue lo m\u00e1s valioso para m\u00ed fue el poder evaluar el uso de <em>skills<\/em> especializadas para Claude Code, que faciliten tareas espec\u00edficas que pueden quedar fuera del alcance de tu conocimiento, o pasar por alto por simple despiste. Estas habilidades codificadas son algo que cambia del todo el juego.<\/p>\n\n\n\n<p>Y como colof\u00f3n, tengo un agente que me avisa, sin tener que andar preocupados por los despistes, con la fecha en la que se abre el plazo de solicitud de comisiones de conciliaci\u00f3n para el curso 2026\/27, que llegar\u00e1 en alg\u00fan momento entre mayo y junio. El agente ya est\u00e1 vigilando. <img src=\"https:\/\/bitacora.eniac2000.com\/wp-includes\/images\/smilies\/mrgreen.png\" alt=\":mrgreen:\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ana es funcionaria docente en Galicia. Cada a\u00f1o, en alg\u00fan<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1845,13],"tags":[1978,1977,1976,540,1980,711,824,1863,1975,1979],"series":[],"class_list":["post-11788","post","type-post","status-publish","format-standard","hentry","category-generado-con-ia","category-informatica","tag-agentes-ia","tag-automatizacion","tag-ciberseguridad","tag-docker","tag-educacion","tag-galicia","tag-ia","tag-mistral-ai","tag-openclaw","tag-xunta"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11788","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11788"}],"version-history":[{"count":4,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11788\/revisions"}],"predecessor-version":[{"id":11801,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11788\/revisions\/11801"}],"wp:attachment":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11788"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11788"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11788"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=11788"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}