Communitygithub.com

TeachAny HE-PBL

Configura un objetivo de proyecto de curso universitario y obtén un mapa de conocimiento en formato PNG, una página web interactiva editable y un diseño HE-PBL completo (v2.0.0).

¿Qué es TeachAny HE-PBL?

TeachAny HE-PBL es un skill para agentes de IA (como Claude Code, Cursor, Codex) que automatiza el diseño de proyectos de Aprendizaje Basado en Problemas (PBL) en Educación Superior (HE). Toma como entrada un objetivo de proyecto de curso universitario (con opciones de disciplina, curso y tipo de entrega) y produce tres salidas principales: (1) una imagen PNG de larga duración que muestra el desglose estructurado del PBL y el grafo de conocimiento del curso, (2) una página web interactiva que replica el contenido de la imagen y permite completar formularios del proyecto, información del grupo y envío al correo del profesor, y (3) una URL de edición en TeachAny para refinar el diseño. El skill utiliza un pipeline de seis etapas basado en LLM e índices curriculares de teachany.cn, pero aplica una validación obligatoria: si existe un documento de diseño del proyecto (como un 'Diseño de proyecto PBL' en markdown), el skill debe extraer palabra por palabra los nodos, objetivos tridimensionales y restricciones numéricas de ese documento, y luego reconstruir la página web y la imagen mediante un script de calibración. Esto asegura que el resultado final esté alineado con el syllabus del curso y sea consistente con el diseño original, evitando invenciones. El skill está diseñado para ejecutarse en un entorno local con Python, Playwright y un navegador (Chrome/Edge), y proporciona un script alternativo para resolver problemas comunes como la descarga de Chromium o timeouts.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add XiucuiGuan/teachany-hepbl

Preguntar en tu IA favorita

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

Vista previa

Del README del skill

Desglose de la ruta de conocimiento del curso

Documentación

TeachAnyHEPBL

Convierte un objetivo de proyecto de curso universitario (+ disciplina / curso / tipo de entrega opcionales) en:

  1. Imagen PNG larga — desglose estructurado del PBL en HE + grafo del sistema de conocimiento del curso
  2. Página web interactiva — página web de desglose del proyecto que coincide con el contenido de la imagen, con formularios en línea para el proyecto, sección de información del grupo y envío con un solo clic al correo del profesor (consulta las especificaciones en references/interactive-webpage.md)
  3. URL de edición — https://www.teachany.cn/pbl?... para refinamiento por chat, ajustes de nodos, material del curso

La descomposición utiliza el pipeline de seis etapas de TeachAny en teachany.cn (LLM + índice curricular). No inventes nodos de conocimiento por tu cuenta; alinéalos con el temario del curso (课程大纲 / 培养方案) en lugar de inventar una estructura a nivel de capítulo.

Flujo de trabajo

  1. Analiza el objetivo del proyecto de curso y los campos opcionales (consulta references/parameters.md). Valor por defecto --grade university.
  2. Ejecuta el CLI incluido desde este directorio del skill (donde reside SKILL.md):
python3 scripts/hepbl-decompose.py \
  --goal "Texto original de la tarea del proyecto" \
  --grade university \
  --subject computer-science \
  -o ./pbl-output
  1. En la primera ejecución, instala las dependencias si faltan: pip install playwright && playwright install chromium
  2. Redacta el diseño HE-PBL siguiendo references/course-blueprint.md — objetivos tridimensionales, niveles de Bloom, cadena de prerrequisitos, flujo de trabajo académico. Usa references/examples.md como referencia de estilo.
  3. Calibración autorizada del diseño (obligatoria si existe un documento de diseño, no se puede omitir): extrae palabra por palabra el overlay JSON del documento de diseño → ejecuta scripts/calibrate_hepbl.py para reconstruir la página web y la imagen (consulta más abajo «Calibración autorizada del diseño» y «Especificación de visualización de la ruta técnica»).
  4. Responde con la ruta del PNG, la ruta de la página web interactiva, los recuentos de nodos del JSON, los objetivos tridimensionales y la edit_url (nunca incluyas auto=1 en los enlaces que des a los usuarios).
  5. Si Playwright falla, sigue references/fallback.md — sigue devolviendo un enlace de edición.

Script de reemplazo para máquinas restringidas (conserva el original, usa este cuando no funcione)

scripts/hepbl-decompose-local.py es una versión de reemplazo del script original (el hepbl-decompose.py original se conserva sin cambios), que resuelve los siguientes problemas verificados en máquinas locales:

  1. La descarga de Chromium de Playwright se estanca (CDN inalcanzable) → retrocede automáticamente a channel="msedge" (Edge del sistema)
  2. El tiempo de espera de 360s es insuficiente → TIMEOUT_MS = 900_000 (la página PBL indexa todo el localStorage superando la cuota, cada reconstrucción completa tarda entre 100 y 180 segundos, el flujo completo mide entre 8 y 11 minutos; ejecútalo en segundo plano)
  3. goto falla intermitentemente con net::ERR_NETWORK_CHANGED → reintenta automáticamente 3 veces (con 5s de intervalo)
# El uso es idéntico al script original (la plantilla aún se ubica relativamente con `../assets/hepbl-report.html`, no la muevas)
python scripts/hepbl-decompose-local.py --goal "..." --grade university --subject mathematics -o ./pbl-output

Solución rápida de problemas: si tienes la imagen pero falta la página web interactiva, es porque el script se ejecuta desde otro directorio y no encuentra la plantilla ../assets/ (salta silenciosamente; coloca la plantilla en el mismo nivel). Si SciPy está bloqueado por la política de control de aplicaciones de Windows (DLL _trlib), los proyectos de tipo LP usarán principalmente PuLP(CBC) con SciPy como verificación cruzada opcional mediante try/except (NumPy/PuLP funcionan correctamente).

Estándares de diseño HE-PBL (obligatorios en la salida)

Cada diseño DEBE incluir:

  • Objetivos de conocimiento / Habilidades / Actitudes (objetivos tridimensionales)
  • Nivel de taxonomía de Bloom (Recordar / Comprender / Aplicar / Analizar / Evaluar / Crear) por objetivo
  • Requisitos de conocimiento previo (cadena de prerrequisitos a cursos/capítulos anteriores)
  • Conceptos clave y dificultades mapeados al sistema de conocimiento del curso
  • Flujo del proyecto: Investigación bibliográfica → Diseño de la solución → Implementación y verificación → Presentación de resultados
  • Entregables evaluables con estándares académicos (Informe de laboratorio / Documento de diseño / Defensa)

Consulta references/course-blueprint.md para el estándar completo.

Calibración autorizada del diseño (obligatoria)

Cuando exista un documento de diseño (p. ej., un markdown de «Diseño de proyecto PBL»), la descomposición del motor es solo un borrador; la entrega final debe pasar por la calibración autorizada:

  1. Extraer overlay palabra por palabra: nombres de nodos, objetivos tridimensionales, restricciones numéricas, resultados de referencia (x*/Z*/precios sombra), horas por etapa; todo debe extraerse textualmente del documento de diseño, sin inventar ni reformular.
  2. Limpieza de campos nulos: los campos inventados por el motor (techRoute/pathPlan/projectBlueprint/stats) se establecen como null en el overlay y se eliminan durante el deep_merge; las claves de metadatos con prefijo _ se eliminan.
  3. Imagen = página web: usa scripts/calibrate_hepbl.py para reconstruir la página web y la imagen (captura de pantalla completa con Playwright, device_scale_factor=2); realiza una autocomprobación antes de la entrega (nombres de nodos consistentes con el documento de diseño, payload sin residuos, resumen consistente con el número de nodos).
  4. Título unificado: el overlay DEBE contener un campo title (idéntico palabra por palabra al título del documento de diseño) — el Hero de la página web, la pestaña, el informe exportado y el título de la imagen toman todos DATA.title (si falta, se retrocede al objetivo).
  5. Entrada de edición continua: el botón «Abrir en TeachAnyHE» en la página web copia con un solo clic el comando de invocación del skill @skill:TeachAnyHE (pégalo en el cuadro de diálogo de WorkBuddy para continuar editando en el escenario de educación superior); el enlace del motor teachany.cn se degrada a un enlace pequeño de «Borrador del motor TeachAny» que se conserva (DATA.edit_url).

Especificación de visualización de la ruta técnica

  • La página web prioriza la representación de techStages[] (stage/hours/tasks[]/output) + toolChain[] (name/use) como un diagrama de flujo jerárquico: chips de herramientas → flechas de conexión → tarjetas de etapa (círculo numerado + líneas de conexión + insignia de horas + lista de tareas + resultado de etapa); si falta, retrocede a una lista de cuatro secciones projectPhases.
  • Consulta el contrato de datos y la estructura de bloques en references/interactive-webpage.md; consulta un ejemplo completo de overlay en references/calibration-example-lp.json.

Plantilla de salida

## Desglose del diseño del curso HE-PBL

**Proyecto**: {title}

![Desglose de la ruta de conocimiento del curso]({png_path})

- **Nodos del grafo**: {nodeCount} (alineados con temario {matched} · extendidos {external})
- **Objetivo de conocimiento**: {...}
- **Objetivo de habilidad**: {...}
- **Objetivo de actitud**: {...}
- **Nivel de Bloom**: {...}
- **Página web interactiva**: [Abrir página de desglose del proyecto]({html_path}) (rellena el formulario del proyecto, la información del grupo y envía al correo del profesor en línea)
- **Editar**: El botón «Abrir en TeachAnyHE» de la página web copia el comando de invocación del skill con un solo clic (pégalo en el cuadro de diálogo de WorkBuddy para continuar editando en el escenario HE) · Enlace del borrador del motor: {edit_url}

El comando copiado al hacer clic en «Abrir en TeachAnyHE» se pega en el cuadro de diálogo de WorkBuddy para continuar la conversación, modificar el desglose, ajustar los puntos de conocimiento y crear material del curso con un solo clic.

Muestra el PNG en el chat cuando el entorno lo soporte.

¿Por qué no escribir el grafo a mano?

TeachAny empareja nodos con índices curriculares, realiza una revisión de relevancia y construye aristas de dependencia. Una lista simple de LLM no logra la alineación con el temario y produce IDs de nodo falsos.

Ejemplos

Consulta references/examples.md para una biblioteca completa de ejemplos HE-PBL en cursos de Matemáticas / Informática / Comunicaciones / Eléctrica. Ejemplos rápidos:

Ejemplo 1 — Estructuras de datos: python3 scripts/hepbl-decompose.py --goal "Diseñar un sistema de ruta más corta para navegación en el campus…" --grade university --subject computer-science --deliverable engineering-prototype -o ./pbl-output

Ejemplo 2 — Señales y sistemas: python3 scripts/hepbl-decompose.py --goal "Diseño de filtro FIR y análisis de espectro…" --grade university --subject communications --deliverable simulation-report -o ./pbl-output

Recursos adicionales

Skills relacionados