Skip to content
cccskills
FreePublished on GitHub

playground

Build a single HTML file with controls, an instant preview, and a copyable prompt. Use it to explore designs, data queries, concepts, or reviews visually, then turn selected settings into clear instructions for an agent.

OriginalShow the original description

Creates interactive HTML playgrounds — self-contained single-file explorers that let users configure something visually through controls, see a live preview, and copy out a prompt. Use when the user asks to make a playground, explorer, or interactive tool for a topic.

See how to install

Good for

  • Explore colors, typography, and spacing visually
  • Build data queries with interactive controls
  • Review documents with approval and comment controls
  • Explore code relationships and data flow

Files included (7)

  • SKILL.md3.7 KB
  • templates/code-map.md6.1 KB
  • templates/concept-map.md3.6 KB
  • templates/data-explorer.md2.8 KB
  • templates/design-playground.md2.7 KB
  • templates/diff-review.md5.6 KB
  • templates/document-critique.md5.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Playground Builder

A playground is a self-contained HTML file with interactive controls on one side, a live preview on the other, and a prompt output at the bottom with a copy button. The user adjusts controls, explores visually, then copies the generated prompt back into Claude.

When to use this skill

When the user asks for an interactive playground, explorer, or visual tool for a topic — especially when the input space is large, visual, or structural and hard to express as plain text.

How to use this skill

  1. Identify the playground type from the user's request
  2. Load the matching template from templates/:
    • templates/design-playground.md — Visual design decisions (components, layouts, spacing, color, typography)
    • templates/data-explorer.md — Data and query building (SQL, APIs, pipelines, regex)
    • templates/concept-map.md — Learning and exploration (concept maps, knowledge gaps, scope mapping)
    • templates/document-critique.md — Document review (suggestions with approve/reject/comment workflow)
    • templates/diff-review.md — Code review (git diffs, commits, PRs with line-by-line commenting)
    • templates/code-map.md — Codebase architecture (component relationships, data flow, layer diagrams)
  3. Follow the template to build the playground. If the topic doesn't fit any template cleanly, use the one closest and adapt.
  4. Open in browser. After writing the HTML file, run open <filename>.html to launch it in the user's default browser.

Core requirements (every playground)

  • Single HTML file. Inline all CSS and JS. No external dependencies.
  • Live preview. Updates instantly on every control change. No "Apply" button.
  • Prompt output. Natural language, not a value dump. Only mentions non-default choices. Includes enough context to act on without seeing the playground. Updates live.
  • Copy button. Clipboard copy with brief "Copied!" feedback.
  • Sensible defaults + presets. Looks good on first load. Include 3-5 named presets that snap all controls to a cohesive combination.
  • Dark theme. System font for UI, monospace for code/values. Minimal chrome.

State management pattern

Keep a single state object. Every control writes to it, every render reads from it.

const state = { /* all configurable values */ };

function updateAll() {
  renderPreview(); // update the visual
  updatePrompt();  // rebuild the prompt text
}
// Every control calls updateAll() on change

Prompt output pattern

function updatePrompt() {
  const parts = [];

  // Only mention non-default values
  if (state.borderRadius !== DEFAULTS.borderRadius) {
    parts.push(`border-radius of ${state.borderRadius}px`);
  }

  // Use qualitative language alongside numbers
  if (state.shadowBlur > 16) parts.push('a pronounced shadow');
  else if (state.shadowBlur > 0) parts.push('a subtle shadow');

  prompt.textContent = `Update the card to use ${parts.join(', ')}.`;
}

Common mistakes to avoid

  • Prompt output is just a value dump → write it as a natural instruction
  • Too many controls at once → group by concern, hide advanced in a collapsible section
  • Preview doesn't update instantly → every control change must trigger immediate re-render
  • No defaults or presets → starts empty or broken on load
  • External dependencies → if CDN is down, playground is dead
  • Prompt lacks context → include enough that it's actionable without the playground

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

access

FreeSummary

Manage access to a Telegram channel integration by approving pairing codes, updating allowed users, and setting direct-message and group policies. Check pending requests and adjust reply behavior through configuration files read by the channel server.

  • Approve or deny a Telegram pairing request
  • Review and update allowed users
  • Change direct-message access policies
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

access

FreeSummary

Manage who can contact an assistant through the iMessage channel. Update approved senders, approve pairing codes, and configure direct message and group access rules by editing the channel’s local settings.

  • Add or remove approved iMessage senders
  • Approve or reject a pending pairing code
  • Set group access and mention requirements
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

access

FreeSummary

Manage access to a Discord channel integration by approving pairing codes, updating allowed users, and setting direct-message and channel policies. Check pending requests and adjust reply behavior through configuration files read by the channel server.

  • Approve or deny a Discord pairing request
  • Review and update allowed users
  • Change direct-message access policies
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

Design autonomous agents for Claude Code plugins, including when they should run, what they should do, and which tools they may use. Provides file templates and guidance for validating configuration and testing behavior.

  • Create a code review agent
  • Clarify when an agent should run
  • Limit the tools an agent can access
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

build-mcp-app

FreeSummary

Add interactive panels to an MCP server so users can select records, view charts, or follow progress inside a conversation. The skill guides tool connections, interface implementation, sandbox restrictions, and testing in hosts that support these panels.

  • Build a searchable contact or file picker
  • Display charts and previews inside a conversation
  • Show live progress for a long-running job
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

build-mcp-server

FreeSummary

Plan and build an MCP server, a connection that lets Claude use external tools. Choose hosting, tool structure, authentication, and a framework, then scaffold a server or hand off to specialized packaging and interface skills.

  • Connect a cloud API to Claude
  • Choose how to run and distribute an MCP server
  • Organize tools for an API with many actions
anthropics/claude-plugins-official43.1KUpdated Oct 19, 2026

See all skills by anthropics

Report a problem with this skill