Hackathon de plugins de Hermes · noviembre 2026

Que el agente deje de improvisar

Un design system que el agente no puede falsificar. Dos herramientas offline leen el censo antes de escribir una clase y demuestran la página antes de darla por buena. Cuatro skills explican el resto.

Herramientas offline 4
Objetos en el censo 2.223
Llamadas de red 0

Dos herramientas, no trucos de prompt

Una skill explica las reglas. Solo el código garantiza que la clase existe y que los packs están enlazados.

aurora_search

Pregunta al censo, recibe el markup real

El agente pregunta en lenguaje natural —en castellano o inglés— y recibe la familia, el pack que debe enlazar, todas las clases y el markup canónico extraído de la demo del catálogo. 2.223 objetos, en proceso.

aurora_search("table that stacks on mobile")

En vez de inventar nz-card (que no existe), recibe nz-table--apilable con su envoltorio y su data-etiqueta.

aurora_validate

Demuestra la página antes de decir «listo»

Clases inventadas, packs usados pero no enlazados, gradientes, !important, colores a mano, emoji en la interfaz, titulares duplicados, pie de atribución ausente. Fallos y avisos, offline, en milisegundos.

aurora_validate(path="pagina.html")

El agente itera hasta ok: true. La comprobación la puede repetir cualquiera, en cualquier máquina, sin clonar el design system.

Seguro por construcción: sin red, sin subprocess, sin escrituras, sin hooks. El censo es una foto JSON generada (data/censo.json) desde components.json con scripts/generar-censo.py.

Las cuatro skills

aurora

Doctrina: paso 0 de versión, enlaces pineados, 12 reglas duras y tabla necesidad → objeto.

aurora-pages

Arquetipos y forma: lienzo de escritorio, apilado móvil, escala tipográfica, presupuesto de superficies.

aurora-validate

El juez: 0 fallos del auditor y medición real en navegador antes de entregar.

aurora-generative

Cuando el modelo compone en caliente: openui-lang, spec, runtime y horneado estático.

Lo que sale

Landing construida con Aurora: hero, tres tarjetas y precios
Landing
Panel construido con Aurora: KPIs, tabla y gráfico
Panel

No son maquetas. Son los ejemplos canónicos del design system, renderizados por Chrome headless. La carpeta demo/ los tiene tal cual.

El hilo, listo para publicar

Ocho tuits, todos por debajo de 280 caracteres. Los enlaces van al final.

1/8

He publicado dos cosas para Hermes Agent. Las dos nacen del mismo vicio: decir «listo» sin pruebas. · aurora-design-system → que el agente deje de improvisar CSS · acceptance-criteria → que «hecho» signifique algo Hilo corto.

2/8

Problema 1: los agentes escriben CSS a ojo. Inventan clases, meten degradados y te enseñan una captura preciosa que en móvil desborda. Aurora es mi design system: CSS puro, ~2.200 objetos documentados. El problema nunca fue el CSS: era cómo se lo das a un modelo.

3/8

El plugin no le mete 340 KB de CSS en el prompt. Le enseña un procedimiento: 1. paso 0: resolver la versión viva del repo. Nunca de memoria 2. leer LLM.md + components.json (~20 KB) 3. copiar markup del censo. Si la clase no está, no existe 4. validar con el auditor

4/8

Dos herramientas offline dentro del plugin: · aurora_search → el markup real del censo · aurora_validate → 0 fallos o no se entrega Y cuatro skills que enseñan el resto. Sin red, sin hooks.

5/8

Problema 2: «listo» sin recibo. El fallo típico de un agente no es equivocarse, es decir que ha terminado sin nada detrás. La skill fija 3-7 criterios falsables ANTES de empezar, cada uno con su comando. check los ejecuta; close se niega si algo está en rojo.

6/8

CLOSED checkout-fix - 3 criteria green ok c1 repro is covered (4.2 s) ok c2 no new lint (0.9 s) ok c3 staging responds (0.3 s) Eso es un recibo. «Ya está» no lo es.

7/8

Lo mejor de todo: el escáner de instalación me bloqueó el plugin. Dos hallazgos reales en mis páginas de demo: rutas ../../ (traversal) y un comentario que parecía inyección. No lo desactivé. Arreglé las demos. Tenía razón las dos veces.

8/8

Siguiente: PR abierto en el catálogo de Hermes (#149421). Todo, capturas y hilo: ntizar.github.io/hermes-aurora/es.html Plugin: github.com/Ntizar/hermes-aurora Skill: github.com/Ntizar/hermes-skill-acceptance-criteria

Hecho con Hermes

Un agente que no adivina

Instala los dos, o lee el código: son cuatro SKILL.md y 240 líneas de Python sin dependencias.