Fernando Ramos← Todas las entradas
← Todas las entradas

Nueve skills que ojalá mis agentes trajeran de fábrica

Mi agente me dijo que ya había terminado. Le pregunté qué significaba "terminado". Me lo repitió, con más confianza.

Ese es todo el origen del proyecto. Los agentes dicen "todos los tests pasan" y nadie sabe cuáles tests, en qué commit, ni si el código se movió después. Las sesiones terminan y la siguiente arranca con un resumen vago. Una decisión grande la toma un solo modelo en una sola ventana de contexto, y nadie le lleva la contraria. Así que escribí nueve skills chiquitas que arreglan esas tres cosas, les puse licencia MIT y las publiqué todas: github.com/luci-efe/skills.

Aquí el reparto:

  • /doctor lista las herramientas que faltan e imprime el comando de instalación de cada una.
  • /compass manda una tarea a la skill correcta, después de checar que existan las herramientas.
  • /cartographer mapea un flujo a símbolos y tests reales.
  • /crucible lee primero el código y pregunta solo lo que el código no puede responder.
  • /council manda un artefacto a asientos de distintas familias de modelos, dos rondas, y un chair escribe la síntesis.
  • /reproduce exige un test que falle antes de cualquier fix.
  • /proof registra tus checks contra el estado exacto del código. Si tocas un archivo después, la evidencia caduca.
  • /red-team escanea dependencias y se niega a llamar "hallazgo" al conteo de un scanner.
  • /relay pasa el trabajo a otra sesión como un checkpoint que nadie puede editar a escondidas.

¿Es magia? No. Hace que las afirmaciones de un agente se puedan verificar, que es bastante menos glamoroso y bastante más útil. Si falta una herramienta, la skill se detiene y te dice qué instalar. Nada se degrada en silencio, porque la degradación silenciosa es como terminas con un demo que "funciona".

No las probé con fixtures que escribí para quedar bien. Corrí cada skill en repos reales, ocho en total, y los write-ups públicos están en uno nuestro, ultimate-harness, un proyecto en TypeScript y Python con casi 900 tests. Encontró bugs en mi código. Los tests de la propia suite pasaron de 99 a 127 en el camino.

Los límites, desde ya. El único gate duro (el hook de stop de /proof) está conectado para Claude Code y Codex, y vi a Codex bloquear un "listo" caduco en vivo. Gemini CLI está conectado según su documentación y no lo vi en vivo. En Cursor, Copilot y OpenCode los mismos scripts corren como checks manuales. El gate es local, así que la evidencia escrita a mano todavía puede pasarlo; a eso le llamo "terminado", y "verificado" requiere que un CI vuelva a correr los checks y que lo revise alguien que no sea el agente. Y /council solo se ha corrido con dos familias de modelos, no tres. A Gemini se le acabó la cuota. Llora.

npx skills@latest add luci-efe/skills

Luego corre /doctor en tu repo. ¿Quieres menos skills? -s proof -s relay funciona.

Reportes de bugs, historias de guerra y maltrato cariñoso: abre un issue, o búscame en r/AgenticEngineeringCo.

Fernando Ramos, co-CEO de Agentic Engineering. Más en ferramos.com.

← Todas las entradas