claude-code-plugin-ref…
Explain plugin, skill, command, agent, and hook mechanics used here. Use when authoring or debugging plugins. Do not use for ops;…
Generates or updates tutorials from VHS tapes and Playwright specs with dual-tone markdown and GIF recording. Use when tutorial assets need refreshing.
Claude Code
$ npx -y skills add athola/claude-night-market --skill tutorial-updates --agent claude-code
Codex
$ npx skills add athola/claude-night-market --skill tutorial-updates -a codex -y
Cursor
$ npx skills add athola/claude-night-market --skill tutorial-updates -a cursor -y
Gemini CLI
$ npx skills add athola/claude-night-market --skill tutorial-updates -a gemini-cli -y
GitHub Copilot
$ npx skills add athola/claude-night-market --skill tutorial-updates -a github-copilot -y
OpenCode
$ npx skills add athola/claude-night-market --skill tutorial-updates -a opencode -y
Windsurf
$ npx skills add athola/claude-night-market --skill tutorial-updates -a windsurf -y
name: tutorial-updates description: Generates or updates tutorials from VHS tapes and Playwright specs with dual-tone markdown and GIF recording. Use when tutorial assets need refreshing. alwaysApply: false category: artifact-generation tags: - tutorial - gif - vhs - playwright - documentation - demo tools: [] complexity: high estimated_tokens: 1100 progressive_loading: true modules: - modules/manifest-parsing.md - modules/markdown-generation.md - modules/tape-validation.md - modules/binary-rebuild.md dependencies: - sanctum:git-workspace-review - scry:vhs-recording - scry:browser-recording - scry:gif-generation - scry:media-composition
Orchestrate tutorial generation with GIF recordings from VHS tape files and Playwright browser specs.
This skill coordinates the complete tutorial generation pipeline:
1. Discover tape files and manifests in the project 2. Validate tape commands and check binary freshness 3. Rebuild binaries if stale so demos reflect latest code 4. Record terminal sessions using VHS (scry:vhs-recording) 5. Record browser sessions using Playwright (scry:browser-recording) 6. Generate optimized GIFs (scry:gif-generation) 7. Compose multi-component tutorials (scry:media-composition) 8. Generate dual-tone markdown for docs/ and book/
/update-tutorial quickstart # Single tutorial by name /update-tutorial sync mcp # Multiple tutorials /update-tutorial --all # All tutorials with manifests /update-tutorial --list # Show available tutorials /update-tutorial --scaffold # Create structure without recording
**Verification:** Run the command with `--help` flag to verify availability.
Create todos with these prefixes for progress tracking:
**Verification:** Run the command with `--help` flag to verify availability. - tutorial-updates:discovery - tutorial-updates:validation - tutorial-updates:rebuild - tutorial-updates:recording - tutorial-updates:generation - tutorial-updates:integration
**Verification:** Run the command with `--help` flag to verify availability.
Find tape files and manifests in the project:
# Find manifest files find . -name "*.manifest.yaml" -type f \ -not -path "*/.venv/*" -not -path "*/__pycache__/*" \ -not -path "*/node_modules/*" -not -path "*/.git/*" \ 2>/dev/null | head -20 # Find tape files find . -name "*.tape" -type f \ -not -path "*/.venv/*" -not -path "*/__pycache__/*" \ -not -path "*/node_modules/*" -not -path "*/.git/*" \ 2>/dev/null | head -20 # Find browser specs find . -name "*.spec.ts" -path "*/browser/*" -type f \ -not -path "*/.venv/*" -not -path "*/__pycache__/*" \ -not -path "*/node_modules/*" -not -path "*/.git/*" \ 2>/dev/null | head -20
**Verification:** Run the command with `--help` flag to verify availability.
For each manifest file, extract:
See `modules/manifest-parsing.md` for manifest schema details.
| Option | Behavior | |--------|----------| | `--list` | Display discovered tutorials and exit | | `--all` | Process all discovered manifests | | `--scaffold` | Create directory structure and empty files without recording | | `<names>` | Process only specified tutorials |
When `--list` is specified:
**Verification:** Run the command with `--help` flag to verify availability. Available tutorials: quickstart assets/tapes/quickstart.tape sync assets/tapes/sync.tape (manifest) mcp assets/tapes/mcp.manifest.yaml (terminal + browser) skill-debug assets/tapes/skill-debug.tape
**Verification:** Run the command with `--help` flag to verify availability.
**CRITICAL**: Validate tape commands BEFORE running VHS to avoid expensive regeneration cycles.
Four checks run per tape: VHS syntax (an `Output` directive and balanced quotes), CLI flags in each `Type` command checked against `--help`, demo data present and populated, and each command run locally under a timeout to catch failures, empty output and hangs. The scripts and the validation exit criteria are in `modules/tape-validation.md`.
| Flag | Behavior | |------|----------| | `--validate-only` | Run validation without generating GIF | | `--skip-validation` | Bypass validation for rapid regeneration |
**If validation fails**: Stop immediately, report errors, and do NOT proceed to VHS recording.
**CRITICAL**: Ensure the binary being tested in tapes matches the latest source code. Stale binaries produce misleading demos.
Detect the build system (Cargo or Make), compare the binary's mtime with Git HEAD, rebuild when stale, then confirm the binary is on `PATH` and runs `--version`. The scripts, flags and rebuild exit criteria are in `modules/binary-rebuild.md`.
**If rebuild fails**: Stop immediately, report build errors, and do NOT proceed to tape validation or VHS recording.
For each tape file component:
1. Parse tape file for metadata annotations (@step, @docs-brief, @book-detail) 2. Validate Output directive exists 3. Invoke `Skill(scry:vhs-recording)` with tape file path 4. Verify GIF output was created
For each playwright spec component:
1. Ch
A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.
Explain plugin, skill, command, agent, and hook mechanics used here. Use when authoring or debugging plugins. Do not use for ops;…
States load-bearing decisions, invariants, and weak points. Use when judging a design change. Do not use for gating; use…
Rebuild the dev environment: uv, Python tiers, pins, traps. Use when onboarding or toolchain breaks. Do not use for daily…
Classify, gate, and review changes. Use when landing a PR, releasing, or amending rules. Do not use for failure triage; use…
Search and record project memory (Discussions, journal, ADRs). Use before re-investigating anything. Do not use for settled…
Bind loop 'done' to unfakeable gates. Use to harden egregore/herald loops or promote completion_integrity. Not for QA gates; use…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.