From instructional-design-toolkit
Renderiza slides Marp por lección desde course.json. Produce .md (Marp source) + .html (rendered deck). Use when user asks to "preview slides", "see slides", "render Marp", "ver slides", "slides preview", "/slides-preview".
How this skill is triggered — by the user, by Claude, or both
Slash command
/instructional-design-toolkit:slides-previewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Convierte cada lección del course.json en un Marp deck standalone con estructura
Convierte cada lección del course.json en un Marp deck standalone con estructura CONTEXT → CONCEPT (N slides) → BUILD → SHIP → REFLECT.
marp-cli debe estar disponible globalmente. Si falta:
ERROR: marp-cli no encontrado. Instalalo con:
npm install -g @marp-team/marp-cli
(o ver alternativas en https://marp.app)
ABORT si falta.
course-slug (required, desde $ARGUMENTS).module-N (renderiza solo ese módulo), lesson-N (renderiza
solo esa lesson — global N o "module-X.lesson-Y").Verificar course.json existe.
Verificar marp-cli (abort si falta).
Parsear $ARGUMENTS para filtros opcionales.
Aplicar overlays al deck (Base + Overlay protocol). Antes de invocar al
slides-renderer, leer ${CLAUDE_PLUGIN_ROOT}/assets/runtime/overlay-protocol.md
y ejecutar Discovery §2 + Invocation §3 + Layer 1 validator §5 sobre el
payload de slides:
command = "slides-preview"cwd = directorio de trabajo desde donde se invocó /idt:slides-previewbaseDraft = objeto con forma { course, lessons: [...] } donde cada
lesson ya está estructurada (CONTEXT/CONCEPT/BUILD/SHIP/REFLECT como
bloques de texto, marp_slide_count calculado). Un overlay de voz puede
reemplazar texto dentro de bloques (p.ej. "the learner will" → "you will
ship") sin tocar lesson.id, module.au_id, ni course.meta.id. Un
overlay estructural puede insertar slides adicionales (p.ej. una slide
"BUILD section header" entre CONCEPT y BUILD).context.locale derivado de course.meta.language.Reglas clave:
au_id, semver) se
revalidan después de cada overlay. Si un overlay los muta: ABORT con
error apuntando al SKILL.md ofensor. NO se renderiza nada.Despachar ${CLAUDE_PLUGIN_ROOT}/agents/slides-renderer.md con:
course.json tal cual.El agent itera lessons (overlaid o base), sustituye variables del template
${CLAUDE_PLUGIN_ROOT}/assets/templates/marp-lesson.md.tmpl, escribe .md,
ejecuta marp ... --html -o ....html.
Reportar paths generados al usuario (incluyendo cualquier warning surgido de overlays en el paso 4):
"Slides renderizados:
lessons/lesson-01-{slug}.md(Marp source)lessons/lesson-01-{slug}.html(deck preview)- ...
Abrí cualquier
.htmlen Chrome para ver el deck. Para presentar:marp --preview lessons/lesson-01-*.md."
Idempotente con warning si sobrescribe.
${CLAUDE_PLUGIN_ROOT}/agents/slides-renderer.md${CLAUDE_PLUGIN_ROOT}/assets/templates/marp-lesson.md.tmpl${CLAUDE_PLUGIN_ROOT}/assets/schemas/overlay-protocol.schema.json — contrato OverlayInput/OverlayOutput para el paso 4${CLAUDE_PLUGIN_ROOT}/assets/runtime/overlay-protocol.md — discovery + invocation + Layer 1 invariant validatornpx claudepluginhub dojocodinglabs/instructional-design-toolkit --plugin instructional-design-toolkitGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Synthesizes the current conversation into a structured spec (PRD) and publishes it to the project issue tracker with a ready-for-agent label, without interviewing the user.