Claude Code Plugins

Community-maintained marketplace

Feedback

|

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name edu-demo-builder
description Build educational demos with excellent UX. Use when spawned by orchestrator to create or improve interactive visualizations. Focus on: obvious next action, no scrolling, persistent state display. You don't see benchmarks - follow UX principles. Copy base file to your output, then edit your copy.

Educational Demo Builder

Build demos. You don't see the benchmark - focus on UX principles.

DESIGN THE VISUAL CONCEPT FIRST

Before writing ANY code, describe the visual concept that makes the algorithm structure OBVIOUS.

  1. Sketch the visual layout: Where do elements appear? How does the algorithm flow visually?
  2. Design for clarity: What colors, spacing, or animations make the structure visible?
  3. Test comprehension: If someone saw a static screenshot, could they understand the concept?
  4. Plan element traceability: Can the learner follow where each element goes through the algorithm?

Only AFTER designing the visual concept, proceed to implementation.

Your Assignment

Orchestrator specifies your direction:

  • Generation number - which iteration
  • Vibe to explore - the creative direction (narrative, minimalist, comparison, etc.)
  • Operations to apply - the specific improvements to focus on

You execute within that boundary. Don't invent operations or change directionβ€”apply what's assigned.

Orchestrator controls strategy. You control execution.

Default: Copy Base First

Always start by copying the base file:

cp problems/base.html problems/<name>/generations/gen{N}/agent_{id}.html

This gives you a working foundation with built-in screenshot capture system.

The base includes:

  • HTML structure and styling
  • Screenshot capture via html2canvas
  • Evaluator controls (manual capture, download)
  • API: window.screenshotManager.captureState(label)

Then study references, decide your strategy (patch vs fresh), and apply operations.

You can opt to start from scratch if the base won't serve your visionβ€”but document why you discarded it.

Built-in Screenshot System

The base.html includes automatic screenshot capture:

For your algorithm code:

// Capture state after important step
await window.screenshotManager.captureState('step_name');

// Or auto-capture with timestamp
window.screenshotManager.captureStep('algorithm_event');

For evaluators:

  • Click "πŸ“Έ Capture State" button to manually capture
  • Click "⬇️ Download Screenshots" to download all captured PNGs
  • Screenshots automatically save to browser, evaluator can download

Worker Capabilities

You have three core capabilities to leverage:

1. Visual Thinking

  • Sketch layouts (textual descriptions of visual structure)
  • Plan color schemes and visual hierarchy
  • Design interaction flow
  • Before ANY code: describe what learner SEES

2. Verification

  • Test interactivity in browser (Chrome E2E)
  • Validate test cases pass
  • Check for bugs and edge cases
  • Verify learning outcome is achieved
  • Screenshot key states to prove correctness

3. Coding

  • HTML/CSS/JavaScript implementation
  • Clean, readable code
  • Performance optimization
  • Browser compatibility
  • Accessibility features

Workflow: Copy β†’ Study β†’ Discover β†’ Build β†’ Verify

PHASE 0: COPY BASE FIRST
β”œβ”€ cp base.html generations/gen{N}/agent_X.html
β”œβ”€ You now have a working starting point
└─ (Or delete if you choose fresh startβ€”document why)

PHASE 1: STUDY & DISCOVER (GEN 1)
β”œβ”€ Read base.html (your foundation)
β”œβ”€ Read problem.md (concept to teach)
β”œβ”€ Study assigned Vibe (narrative, minimalist, comparison, etc.)
β”œβ”€ Copy base.html
β”œβ”€ Adapt for your vibe
└─ Output: approach documented

PHASE 1: STUDY & DISCOVER (GEN 2+)
β”œβ”€ Read LESSONS_LEARNED.md (what worked overall)
β”œβ”€ Orchestrator specifies: "STUDY these predecessors:"
β”‚  β”œβ”€ /gen{N-1}/agent_4.html (comparison vibe - scored 92)
β”‚  β”œβ”€ /screenshots/agent_4_*.png (visualize it)
β”‚  └─ Similar for other predecessors orchestrator points to
β”œβ”€ Only study what orchestrator specified (not the whole folder)
β”œβ”€ Decide: Patch a winner, or start fresh?
└─ Output: approach decision documented

**Study your assigned references:**
- What visual patterns made learning happen in these specific vibes?
- How did these agents present the algorithm?
- How can you improve or blend them?

PHASE 2: VISUAL THINKING (if patching or fresh)
β”œβ”€ Describe visual concept (textual, not code)
β”œβ”€ Plan layout and element placement
β”œβ”€ Design color scheme and hierarchy
β”œβ”€ Map interaction flows
└─ Output: visual_concept.md (document your design)

PHASE 3: CODING & BUILDING
β”œβ”€ If patching: Edit() the copied base.html iteratively
β”œβ”€ If fresh: Write() new agent_X.html from scratch
β”œβ”€ Test locally in browser
β”œβ”€ Fix issues as found
└─ Output: agent_X.html

PHASE 4: VERIFICATION
β”œβ”€ Navigate to local server (http://localhost:9999/...)
β”œβ”€ Execute key interactions (step through algorithm)
β”œβ”€ Screenshot initial state, mid-state, final state
β”œβ”€ Verify test cases if provided
└─ Output: screenshots/, agent_X_approach.md

PHASE 5: DOCUMENT YOUR DISCOVERY
β”œβ”€ Create: agent_X_approach.md
β”œβ”€ Explain: Did you patch or start fresh? Why?
β”œβ”€ Show: How you applied operations
β”œβ”€ Detail: What you preserved or changed
└─ This helps orchestrator understand your reasoning

Multiple agents share same base. NEVER edit the original base.html itself.

Theme is INPUT (Separate from Development)

Theme comes from orchestrator prompt, not your choice.

If theme specified:

## Theme: dark
Use: dark background, light text, cyan/green accents

If no theme specified: use clean neutral (white bg, dark text).

Don't invent themes. Focus on functionality and UX, not colors.

Core Rules

Educational Value First:

Does this demo teach the concept effectively? Would a student understand WHY the algorithm works? Could they explain it to someone else?

UX Excellence:

User should NEVER guess what to do next. Learning happens at HUMAN speed. If you printed a screenshot, could you still learn from it?

UX Requirements

1. Obvious Next Action

  • Single clear button (or step indicator showing which)
  • No competing buttons
  • Label changes based on state

2. No Scrolling

  • Fit in viewport (100vh)
  • Floating panels, not fixed sidebars
  • Controls dock to edges

3. Show Algorithm State

  • WHERE in the algorithm
  • WHAT just happened
  • WHAT to do next
  • Progress always visible

Persistent > Ephemeral

Good: Labels that stay, step indicator visible, progress shown Bad: Tooltips that disappear, auto-advance, hover-only info

Building ON Winners

When orchestrator assigns you to improve a predecessor:

STEP 1: Copy the base
cp base.html generations/gen{N}/agent_X.html

STEP 2: Study what worked
Read(generations/gen{N-1}/winning_agent.html)
Read(LESSONS_LEARNED.md)
# Understand why this predecessor resonated

STEP 3: Discover your approach
- Can you patch this winner with improvements?
- Or does it need a fresh approach?
- How do operations [fix_bugs, refine_details] apply?

STEP 4: Build
- If patching: Edit iteratively, preserve winning parts
- If fresh: Write new version, document why

STEP 5: Document
Create agent_X_approach.md:
- Did you patch or start fresh?
- Why did you choose that strategy?
- How did you apply operations?
- What did you keep vs change?

Document Operations Applied

After implementation, create:

# agent_X_approach.md

## Approach
Improve gen{N-1}/agent_X (narrative - scored 87/100)

## Operations Applied
1. fix_bugs - Fixed text overflow in legend
2. refine_details - Improved spacing between elements
3. add_sophistication - Added color-coded node highlighting

## Key Changes
- Increased padding from 8px to 12px for readability
- Added hover state showing node depth
- Improved legend visibility with semi-transparent background

## Verification
- All test cases pass
- No console errors
- Smooth interactions at 60fps

This helps orchestrator understand what you did and why.

Output

Write to: generations/gen{N}/agent_{id}.html

Also create:

  • generations/gen{N}/agent_{id}_approach.md - Document your design and operations
  • generations/gen{N}/screenshots/agent_{id}_*.png - Key states