liuchunming033/skill-doctor

Herramienta inteligente de revisión de salud para Skills de IA — diagnóstico en 9 dimensiones, optimización interactiva con estimación de costos

¿Qué es skill-doctor?

Skill Doctor es una herramienta de diagnóstico y optimización para Skills de agentes de IA, diseñada para analizar la estructura, el contenido y la configuración de un Skill y generar un informe detallado con puntuaciones, problemas y sugerencias de mejora. Evalúa el Skill en nueve dimensiones clave, como la calidad de la descripción, la presencia de gotchas, la organización de archivos, la rigidez de las restricciones y la redundancia de contenido conocido. La herramienta opera en dos capas: una capa estable basada en un script de Python (scripts/analyze_skill.py) que calcula puntuaciones objetivas, y una capa inteligente donde el agente de IA genera recomendaciones de optimización, interactúa con el usuario y ejecuta las modificaciones directamente en los archivos del Skill. Cada ítem de optimización incluye una estimación de la mejora esperada en la puntuación y el esfuerzo requerido, así como los beneficios potenciales en ahorro de tokens y tiempo por cada invocación del Skill. Skill Doctor es compatible con cualquier Skill que siga la estructura estándar de archivos (SKILL.md, gotchas.md, examples.md) y se integra naturalmente en el flujo de trabajo de desarrollo de Skills para plataformas como Claude Code, Cursor o Codex, ayudando a los desarrolladores a identificar y corregir puntos débiles de manera sistemática y eficiente.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add liuchunming033/skill-doctor

Installed? Explore more Investigación y análisis de datos skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Skill Doctor —— Herramienta de Diagnóstico de Salud para Skills

Flujo de Trabajo

  1. Leer el directorio del Skill especificado
  2. Verificar la existencia de archivos principales (SKILL.md, gotchas.md, etc.)
  3. Ejecutar script para obtener informe estructurado: python scripts/analyze_skill.py <ruta_del_skill> --output json, obteniendo la puntuación, problemas y sugerencias de cada ítem de revisión
  4. Para cada ítem con baja puntuación (<70), complementar el informe del script con sugerencias de optimización específicas + puntuación esperada tras mejora + estimación de esfuerzo
  5. Listar todos los ítems optimizables y solicitar al usuario que seleccione cuáles aceptar
  6. Optimizar cada ítem aceptado por el usuario (modificar archivos directamente)
  7. Una vez completada la optimización, volver a ejecutar el script para un nuevo diagnóstico y generar un informe comparativo antes/después

El Agente se encarga de la capa inteligente (sugerencias de optimización, interacción con el usuario, ejecución de modificaciones), mientras que el script maneja la capa estable (cálculo de puntuaciones, salida estructurada). Consulte scripts/analyze_skill.py para más detalles sobre el script.

Las Nueve Dimensiones de Revisión

Ítem de revisión¿Qué revisa?Criterio de aprobación
Revisión de descriptionSi está redactada como condición de activación, no como descripción funcionalContiene palabras clave de activación, longitud < 100 caracteres
Revisión de gotchasSi hay registro de puntos problemáticosgotchas.md existe y no está vacío
Revisión de organización de archivosSi está organizado según el estándar de tres categoríasEl directorio raíz solo contiene SKILL.md + gotchas.md + examples.md, los materiales de referencia en reference/, los scripts en scripts/, la configuración en config/
Revisión de restricciones excesivasSi hay restricciones excesivas en la ruta de ejecuciónSin flujos rígidos como "primer paso, segundo paso"
Revisión de conocimiento conocidoSi repite contenido ya conocido por el AgenteSin tutoriales como "¿Qué es X?", "Cómo usar Y"
Revisión de configuración de memoriaSi existe config.jsonconfig.json existe y tiene una configuración razonable
Revisión de scriptsSi necesita scripts pero faltanSi requiere capacidades estables, existe el directorio scripts/
Revisión de hooksSi la configuración de hooks es correctaPreToolUse/PostToolUse con el formato correcto
Revisión de formato markdownSi el formato es correctoYAML, tablas, bloques de código con formato correcto

Formato del Informe de Diagnóstico

{
  "skill_name": "xxx",
  "overall_score": 55,
  "grade": "D",
  "check_results": {
    "description": {"score": 50, "issues": ["Redactado como descripción funcional"], "suggestions": ["Cambiar a formato de condición de activación"], "expected_gain": 40},
    "gotchas": {"score": 40, "issues": ["gotchas.md está vacío"], "suggestions": ["Agregar al menos 3 puntos problemáticos reales"], "expected_gain": 50}
  },
  "optimization_options": [
    {"id": 1, "item": "description", "current_score": 50, "expected_score": 90, "gain": 40,
     "effort": "bajo", "action": "Reescribir description como condición de activación",
     "token_saved_per_call": 50, "time_saved_per_call_sec": 0},
    {"id": 2, "item": "gotchas", "current_score": 40, "expected_score": 90, "gain": 50,
     "effort": "medio", "action": "Agregar puntos problemáticos reales",
     "token_saved_per_call": 0, "time_saved_per_call_sec": 180}
  ],
  "overall_after_accept_all": 85,
  "total_benefits": {
    "token_saved_per_call": 200,
    "time_saved_per_call_sec": 300
  }
}

Reglas de Estimación de Beneficios

Tipo de optimizaciónAhorro de tokens (por llamada)Ahorro de tiempo (por llamada)Descripción
Acortar descriptionCada carácter extra × 1 token—Reduce la carga del contexto
Complementar gotchas—2-5 minutos por punto problemáticoEvita depuración repetitiva en problemas conocidos
Dividir archivos(líneas originales - líneas nuevas) × 3 tokens—Mover materiales de referencia a reference/; no cargan en el contexto a menos que sea necesario
Restricciones excesivas → marcos de decisiónCada paso rígido × 20 tokens10-30 segundos por pasoReduce la ejecución de pasos inútiles
Eliminar conocimiento conocidoLongitud del párrafo tutorial en tokens—No repetir contenido que el Agente ya conoce
Encapsular en script—1-3 minutos por cada vezEvita que el Agente reescriba el mismo código cada vez

Los beneficios son estimaciones por llamada individual; los valores reales pueden variar según el contenido del Skill y su uso.

Sobre la "duración": La "duración" en el informe se refiere al desperdicio adicional causado por defectos de diseño, no al tiempo total de ejecución del Skill. Incluye:

  • Falta de gotchas → El Agente depura repetidamente problemas conocidos (2-5 minutos cada vez)
  • Restricciones excesivas → El Agente ejecuta pasos rígidos sin sentido (10-30 segundos por paso)
  • Falta de script → El Agente reescribe el mismo código cada vez (1-3 minutos cada vez)

Lógica de comparación: Valor antes de la optimización = suma de estos desperdicios; después de la optimización, el desperdicio se reduce a ~0; "ahorro" = cantidad de desperdicio eliminado. La ejecución del Skill después de la optimización sigue requiriendo tiempo, pero ya no tiene estas pérdidas adicionales.

Presentación de Sugerencias de Optimización

Después de generar el informe, mostrar los ítems optimizables como una lista al usuario, cada uno incluyendo:

### 🔧 Ítems Optimizables

| # | Ítem | Punt. Actual | Punt. Esperada | Mejora | Esfuerzo | Tokens/llamada | Tiempo/llamada | Acción |
|---|------|-------------|----------------|--------|----------|---------------|----------------|--------|
| 1 | description | 50 | 90 | +40 | bajo | ~50 | — | Reescribir como condición de activación |
| 2 | gotchas | 40 | 90 | +50 | medio | — | ~3min | Agregar puntos problemáticos reales |
| ... | ... | ... | ... | ... | ... | ... | ... | ... |

**Después de aceptar todas las optimizaciones**: 55 pts (D) → 85 pts (B), mejora de 30 pts

### 📈 Beneficios Totales (por llamada)
- Ahorro de tokens: ~200/llamada
- Ahorro de tiempo: ~5 minutos/llamada
- Prevención de errores: Con gotchas complementados, se evitan errores comunes

> **Nota sobre la métrica de tiempo**: El "ahorro de tiempo" aquí se refiere al **desperdicio adicional causado por defectos de diseño**, no al tiempo total de ejecución del Skill:
> - Falta de gotchas → El Agente depura repetidamente (2-5 min cada vez)
> - Restricciones excesivas → El Agente ejecuta pasos inútiles (10-30 seg por paso)
> - Falta de script → El Agente reescribe el mismo código (1-3 min cada vez)
> - Valor antes de optimización = suma de desperdicios, después de optimización el desperdicio se elimina, "ahorro" = cantidad de desperdicio eliminado

Seleccione:
- **"Aceptar todo"** — Optimizar todos los ítems de una vez
- **"Aceptar 1,3"** — Optimizar solo los ítems especificados
- **"Saltar"** — Solo ver el informe sin realizar optimizaciones

Ejecución Después de la Confirmación del Usuario

  1. Una vez que el usuario selecciona, modificar los archivos correspondientes uno por uno
  2. Marcar el estado al completar cada ítem
  3. Una vez finalizado todo, volver a ejecutar el diagnóstico para generar un informe comparativo

Formato del Informe Comparativo Antes/Después

## 📊 Comparación Antes/Después

| Ítem de revisión | Antes de optimizar | Después de optimizar | Cambio |
|-----------------|--------------------|----------------------|--------|
| description | 50 (descripción funcional) | 90 (condición de activación) | +40 ⬆️ |
| gotchas | 40 (vacío) | 90 (completo) | +50 ⬆️ |
| ... | ... | ... | ... |
| **Puntuación total** | **55 (D)** | **85 (B)** | **+30 ⬆️** |

### 📈 Beneficios Totales (por llamada)
| Dimensión | Antes de optimizar | Después de optimizar | Ahorro |
|-----------|--------------------|----------------------|---------|
| Tokens | ~800/llamada | ~600/llamada | ~200/llamada |
| Desperdicio de tiempo | ~5min | ~0 | ~5min |
| Archivo principal | 466 líneas | 75 líneas | -84% |

> El desperdicio de tiempo son los costos adicionales causados por defectos de diseño (depuración en problemas conocidos, pasos redundantes, etc.), no el tiempo total de ejecución del Skill. Consulte [Reglas de estimación de beneficios](#reglas-de-estimación-de-beneficios).

### Archivos Modificados
- `SKILL.md` — Reescribir description
- `gotchas.md` — Agregar 5 puntos problemáticos reales

Ejemplo de Interacción Completa

Consulte el ejemplo 9 en examples.md

Niveles de Puntuación

  • A (90-100 pts): Excelente, sigue todas las mejores prácticas
  • B (75-89 pts): Bueno, con poco margen de mejora
  • C (60-74 pts): Aceptable, con puntos de mejora evidentes
  • D (<60 pts): No apto, necesita reestructuración

Lista de Verificación Detallada

Consulte checklists.md

Puntos Problemáticos Comunes

Consulte gotchas.md

Ejemplos de Optimización

Consulte examples.md

Scripts

La lógica central del diagnóstico está encapsulada en scripts/analyze_skill.py. El Agente lo invoca para obtener puntuaciones estructuradas:

python scripts/analyze_skill.py <ruta_del_skill> --output json    # Paso 3: Obtener informe de puntuación
python scripts/analyze_skill.py <ruta_del_skill> --output markdown # Opcional: Generar informe legible por humanos

El script se encarga de: cálculo de puntuación, detección de problemas, determinación del nivel (capa estable) El Agente se encarga de: generación de sugerencias de optimización, interacción con el usuario, ejecución de modificaciones de archivos (capa inteligente)

Skills relacionados