
ui-mockup
Orchestrator for WebView UI mockup workflow - delegates design iteration to ui-design-agent and implementation scaffolding to ui-finalization-agent. Use when user mentions UI design, mockup, WebView interface, or requests 'design UI for [plugin]'.
- Installs
- 39
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/glittercowboy/plugin-freedom-system --skill ui-mockup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads ui-mockup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
<quick_start>
- Check for aesthetic library (Phase 0)
- Gather requirements through tiered questions (Phases 1-3)
- Dispatch ui-design-agent for mockup generation
- Iterate until user approves
- Generate implementation files </quick_start>
<context_detection> <standalone_mode>
- No
.continue-here.mdfile present - Generates mockups independently
- Skips state updates </standalone_mode>
<workflow_mode>
- File
plugins/[PluginName]/.continue-here.mdexists withcurrent_stagefield - Updates workflow state after each phase </workflow_mode>
Check for .continue-here.md existence to determine mode. If present, update state files. If absent, skip state updates.
</context_detection>
How would you like to start the UI design?
- Start from aesthetic template - Apply saved visual system
- Start from scratch - Create custom design
- List all aesthetics - Browse library before deciding
Choose (1-3): _
</menu> <routing> - Option 1: Display aesthetics from manifest with metadata (name, vibe, colors, source). Invoke ui-template-library skill with "apply" operation. Skip to Phase 4 with generated mockup. - Option 2: Continue to Phase 1 (load context). - Option 3: Invoke ui-template-library skill with "list" operation, show previews, return to menu. - No aesthetics: Skip directly to Phase 1. </routing>See references/aesthetic-integration.md for complete integration details.
</phase>
Include in invocation prompt:
- All gathered requirements (layout, controls, colors, etc.)
- Quality expectation: "Design must look like commercial $50-200 audio plugin - intentional decisions, not defaults"
See references/phase-details.md for invocation summary.
See references/delegation-protocols.md for complete protocol.
</phase>
Files generated:
- v[N]-ui.yaml (design specification)
- v[N]-ui-test.html (browser-testable mockup)
What would you like to do?
- Iterate - Refine design, adjust layout
- Finalize - Validate alignment and complete mockup
- Save as template - Add to aesthetic library for reuse
- Other
Choose (1-4): _
</menu> <routing> - Option 1 (Iterate): Collect refinement feedback, return to Phase 2 with new version (v2, v3, etc.), invoke NEW ui-design-agent instance (fresh context). - Option 2 (Finalize): Proceed to Phase 5.6 (automatic brief update), mockup is source of truth for UI sections, no user interaction needed, continue to Phase 6-10 after brief sync. - Option 3 (Save as template): Invoke ui-template-library skill with "save" operation, after saving return to Phase 5.5 menu. - Option 4 (Other): Handle custom request (test in browser, validate constraints, etc.). </routing><iteration_guidance> When collecting feedback for Option 1 (Iterate):
If user provides specific changes ("make it vertical", "add a meter", "change colors to blue"):
- Pass these as explicit requirements to new ui-design-agent instance
If user provides vague improvement requests ("make it better", "improve it", "polish it"):
- Prompt for specifics: "What aspect should I focus on? (layout, colors, spacing, controls)"
- If user says "everything" or "overall quality": Pass instruction to refine existing elements (spacing, color harmony, control styling) rather than add new elements </iteration_guidance>
See references/decision-menus.md#phase-5-5-design-decision-menu for detailed routing.
</phase>
See references/phase-b-enforcement.md for guard implementation.
</phase>
<orchestration_protocol> <delegation_rules> This skill NEVER generates mockup files directly. ALL file generation delegated to subagents.
<sequence> 1. Orchestrator: Gather requirements (Phases 0-3.5) 2. Orchestrator: Invoke ui-design-agent via Task tool 3. ui-design-agent: Generate YAML + test HTML, commit, return JSON 4. Orchestrator: Parse JSON, present Phase 5.5 menu 5. If iterate: Orchestrator invokes NEW ui-design-agent 6. If finalize: Orchestrator updates brief (Phase 5.6) 7. Orchestrator: Invoke ui-finalization-agent via Task tool 8. ui-finalization-agent: Generate 5 files, commit, return JSON 9. Orchestrator: Parse JSON, present completion menu </sequence>See references/delegation-protocols.md for enforcement details.
</delegation_rules>
<state_management>
Subagents update .continue-here.md with their phase results. Orchestrator verifies stateUpdated flag in JSON report.
After subagent returns stateUpdated: true, verify actual state contents match expected values (not just boolean flag).
Read .continue-here.md, parse YAML, check specific fields match JSON report values. If mismatch, present state recovery menu.
See references/state-tracking.md for complete state schema and verification protocol.
</state_management>
<iteration_protocol> Each iteration runs in fresh agent context. User chooses "Iterate" then orchestrator collects feedback and invokes NEW ui-design-agent with incremented version. Fresh context prevents context window bloat during iterative design. </iteration_protocol>
<error_handling>
- Agent failures: Present error menu (retry/manual fix/debug/cancel).
- Validation failures: Agent returns
validationPassed: false- present error menu. - State update failures: Agent returns
stateUpdated: false- present state recovery menu (verify/manual update/continue anyway). </error_handling> </orchestration_protocol>
<versioning_strategy> Pattern: v1, v2, v3... Each version saved separately.
Purpose: Explore layouts without losing work, A/B test designs, keep history for rollback.
File naming: All 7 files prefixed with version (e.g., v2-ui.html, v2-PluginEditor.h).
Implementation: Latest version used for Stage 3 (GUI) unless user specifies different version.
See references/versioning.md for file management details.
</versioning_strategy>
<success_criteria> <design_phase>
- YAML spec generated matching user requirements
- Browser test HTML works (interactive controls, parameter messages)
- Visual quality meets commercial standard (intentional design, not defaults)
- Design files committed to git
.continue-here.mdupdated with version (if workflow mode)- User presented with Phase 5.5 decision menu
- Design approved OR user iterates with refinements </design_phase>
<implementation_phase>
- All 7 files generated and saved to
.ideas/mockups/ - Production HTML complete (no placeholders)
- C++ boilerplate matches YAML structure (correct parameter bindings)
- parameter-spec.md generated and locked (v1 only)
- Implementation files committed to git
.continue-here.mdupdated with finalization status (if workflow mode) </implementation_phase> </success_criteria>
<integration_points> <invoked_by>
/dreamcommand - After creative brief, before implementationplugin-workflowskill - During Stage 0 (UI design phase)plugin-improveskill - When redesigning existing plugin UI- Natural language: "Design UI for [PluginName]", "Create mockup for compressor" </invoked_by>
<always_invokes>
ui-design-agentsubagent (Phase 4-5.45) - REQUIRED for design iterationui-finalization-agentsubagent (Phase 6-10.5) - REQUIRED for implementation files </always_invokes>
<also_invokes>
ui-template-libraryskill (if user saves aesthetic) </also_invokes>
<reference_documentation> Progressive disclosure - load references when reaching specific phases:
- Phase 0:
references/aesthetic-integration.md- Aesthetic library integration - Phase 1:
references/context-extraction.md- Creative brief extraction - Phase 2-3:
references/design-questions.md- Question templates and tiering - Phase 2.5:
references/layout-validation.md- Dimension calculation formulas - Phase 4-5.45:
references/delegation-protocols.md- Subagent invocation - Phase 5.5:
references/decision-menus.md- Menu format and routing - Phase 5.6:
references/state-tracking.md- Brief sync protocol - Phase 6-10:
references/phase-b-enforcement.md- Phase B guard - Anti-patterns:
references/common-pitfalls.md- What to avoid
Technical details:
references/html-generation.md- Production HTML rulesreferences/browser-testing.md- Browser test workflowreferences/cmake-configuration.md- WebView build settingsreferences/cpp-boilerplate-generation.md- C++ template generationreferences/ui-design-rules.md- Design constraints and patternsreferences/versioning.md- File management </reference_documentation>
<template_assets>
assets/ui-yaml-template.yaml- YAML structureassets/webview-boilerplate.md- C++ integration templatesassets/integration-checklist-template.md- Integration guideassets/parameter-spec-template.md- Parameter specification format </template_assets>
FAQ
What does the ui-mockup skill do?
Orchestrator for WebView UI mockup workflow - delegates design iteration to ui-design-agent and implementation scaffolding to ui-finalization-agent. Use when user mentions UI design, mockup, WebView interface, or requests 'design UI for [plugin]'.
How do I install ui-mockup?
Run npx skills add https://github.com/glittercowboy/plugin-freedom-system --skill ui-mockup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/ui-mockup/ (personal) or .claude/skills/ui-mockup/ (project).
Which AI agents can use ui-mockup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is ui-mockup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains ui-mockup?
It is published by glittercowboy in glittercowboy/plugin-freedom-system. It has 39 recorded installs.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.