55c907a3ac
Agregar 4 skills de ejemplo funcionales y README del sistema: Skills de ejemplo: - devops/deploy-service: deploy completo con rollback - analysis/log-analyzer: analisis de logs con metricas - communication/daily-report: reportes diarios automaticos - system/health-check: verificacion de salud multi-servicio Cada skill incluye: - SKILL.md con frontmatter YAML + instrucciones markdown - Descripcion de parametros y proceso paso a paso - Ejemplos de uso y consideraciones de seguridad skills/README.md documenta: - Diferencia entre tools (atomicas) y skills (flujos multi-paso) - Formato de SKILL.md y carga progresiva (3 niveles) - Categorias disponibles y uso desde agentes Las skills son contenido declarativo, no codigo Go.
Sistema de Skills
Sistema de skills reutilizables para agentes Matrix. Las skills son paquetes de instrucciones, scripts y recursos que amplian las capacidades de un agente mas alla de las tools de function calling.
Diferencia entre Tools y Skills
- Tools (
tools/) — funciones atomicas que el LLM invoca via function calling (ssh_command, http_get, clock, etc.) - Skills (
skills/) — flujos completos de trabajo multi-paso que combinan tools, logica condicional y conocimiento de dominio
Ejemplo:
- Tool:
ssh_command— ejecuta un comando SSH - Skill:
deploy-service— usa ssh_command, http_get y logica para hacer un deploy completo
Estructura de una skill
skills/<categoria>/<skill-name>/
├── SKILL.md ← obligatorio (frontmatter YAML + instrucciones markdown)
├── LICENSE.txt ← opcional
├── scripts/ ← opcional, codigo ejecutable (bash, python, etc.)
├── references/ ← opcional, docs de referencia
├── templates/ ← opcional, plantillas/assets
└── assets/ ← opcional, fuentes, iconos, etc.
SKILL.md — formato
---
name: skill-name
description: >
Descripcion clara de que hace la skill y cuando debe activarse.
Esta descripcion es el mecanismo principal de triggering.
---
# Instrucciones
Cuerpo markdown con las instrucciones completas.
Idealmente < 500 lineas.
Carga progresiva (3 niveles)
El sistema carga skills de forma progresiva para optimizar el uso del contexto del LLM:
- Metadata (name + description) — siempre en contexto (~100 palabras). El agente la lee para decidir si activar la skill.
- Cuerpo del SKILL.md — se carga cuando la skill se activa. Instrucciones principales.
- Recursos bundled (scripts/, references/, etc.) — se cargan bajo demanda. El SKILL.md indica cuando leer cada archivo.
Carpetas opcionales
| Carpeta | Proposito |
|---|---|
scripts/ |
Codigo ejecutable que el agente corre (bash, python). Puede ejecutarlos sin cargarlos en contexto. |
references/ |
Documentacion extensa, leida solo cuando es relevante. Si > 300 lineas, agregar TOC al inicio. |
templates/ |
Plantillas que la skill usa como base para generar outputs. |
assets/ |
Archivos estaticos (fuentes, iconos, imagenes). |
Categorias de skills
devops/— operaciones y deployanalysis/— analisis de datos/logscommunication/— comunicacion y notificacionescoding/— desarrollo y code reviewsystem/— administracion del sistema
Uso desde agentes
Los agentes pueden interactuar con skills via function calling:
skill_search— busca skills relevantes por queryskill_load— carga instrucciones completas de una skillskill_read_resource— lee un recurso especifico (script, reference, template)skill_run_script— ejecuta un script de la skill con argumentos
Configuracion
Las skills se configuran por agente en el YAML de configuracion:
skills:
enabled: true
path: "skills/"
categories: ["devops", "system"] # filtro opcional
Seguridad
- Los scripts de skills tienen las mismas restricciones que ssh_command
- Allowlist de interpreters permitidos (bash, python3, sh)
- Timeout obligatorio en ejecucion
- Sin acceso directo a secretos
Crear nuevas skills
Ver .claude/rules/create_skill.md para la guia completa de creacion de skills.