From opendesign
Adds floating Tweaks panel to design artifacts for in-design controls: toggle variants, swap colors, edit copy, flip feature flags. Handles host handshake, activation, and persistence.
npx claudepluginhub manalkaff/opendesign --plugin opendesignThis skill uses the workspace's default tool permissions.
Loaded when the user wants in-design controls for toggling variants, swapping colors, editing copy, or flipping feature flags directly inside a design artifact.
Builds self-contained HTML files for design exploration prototypes, specifying structure, Tailwind utility classes, CSS custom properties, and JSON metadata schema.
Generates or updates Figma screens, pages, modals, dialogs, drawers, panels, and multi-section views from code or descriptions using discovered design system components, variables, and styles.
Conducts design interviews, generates five UI variations matching project styles, collects feedback, refines selections, and outputs implementation plans for new or redesigned components.
Share bugs, ideas, or general feedback.
Loaded when the user wants in-design controls for toggling variants, swapping colors, editing copy, or flipping feature flags directly inside a design artifact.
A small number of high-impact values. Good candidates: one or two key colors, a layout variant toggle, a feature flag, a headline copy field. Do not over-expose. Every additional control raises the cost of the design and dilutes the point.
If the user does not specify what should be tweakable, pick 2–3 interesting things yourself and explain why in the summary.
A small floating panel anchored bottom-right. Title it exactly Tweaks so the naming matches any external toggle the host might expose. Hide the panel entirely when tweaks are deactivated — no residual chrome.
Keep the control surface tasteful. Use native inputs (<input type="color">, <select>, <input type="text">, <input type="range">) instead of hand-rolled form components unless the aesthetic absolutely requires them.
Order matters. Run these steps in this sequence:
activate and deactivate from the parent frame.If you post availability first, the host's activate message can land before your handler exists and the toggle silently does nothing.
When the user closes the panel from inside the design, post a message to the parent so any external toggle flips off in lockstep. The host and the in-design panel must agree on state at all times.
Persist tweak state somewhere the host can read back on reload. Pick one that fits the artifact:
localStorage keyed by artifact id (for long-lived previews).State the persistence choice in the summary.