pf-design-mode

Create and edit Figma design files using PatternFly-approved component libraries. Use when building, updating, or restructuring Figma frames and components. Requires Figma MCP.

8 stars

Best use case

pf-design-mode is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create and edit Figma design files using PatternFly-approved component libraries. Use when building, updating, or restructuring Figma frames and components. Requires Figma MCP.

Teams using pf-design-mode should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/pf-design-mode/SKILL.md --create-dirs "https://raw.githubusercontent.com/patternfly/ai-helpers/main/plugins/design-to-code/skills/pf-design-mode/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/pf-design-mode/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How pf-design-mode Compares

Feature / Agentpf-design-modeStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create and edit Figma design files using PatternFly-approved component libraries. Use when building, updating, or restructuring Figma frames and components. Requires Figma MCP.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# PatternFly Design Mode

Use this skill for write-focused design tasks in Figma.

## Required prerequisites

This skill requires two skills from the **official Figma plugin** — see the [plugin README](../../README.md) for install instructions.

- `figma-use` — mandatory before every `use_figma` call; never skip it
- `figma-generate-design` — required when the task involves creating a full page or screen from code

Rules:

- Never call `use_figma` directly without first loading `figma-use`.
- If the task includes broad screen creation from code, pair `figma-use` with `figma-generate-design`.

## Approved component sources (strict)

Use components and patterns only from the files listed in `references/approved-sources.md`.

Rules:

- Do not use components from any other library or file.
- Only use semantic design tokens and spacers from the approved files.
- Do not create ad-hoc replacement components when an approved component/pattern exists.
- If a needed component/pattern is missing in these sources, stop and ask the user before proceeding.

## Pattern-first selection (strict)

Whenever possible, prefer larger patterns denoted with the `🧰` emoji.

- Select `🧰` patterns before assembling equivalent UI from smaller components.
- Only compose from smaller components when no suitable `🧰` pattern exists for the requirement.

## Page creation behavior (strict)

If the user asks to "make a new page":

- Do not replace, clear, or mutate existing page content as the starting point.
- Create a new top-level frame for subsequent changes.
- Apply all new work to that new frame unless the user explicitly asks to edit an existing frame.

## When to use

Use this skill when a request includes one or more of the following:

- "Create this in Figma", "edit this Figma file", "update this screen"
- "Make a new page" or equivalent phrasing for a new screen
- Layout restructuring (auto-layout, spacing, constraints, frame hierarchy)
- Component/variant updates, token/variable binding, or style cleanup
- Figma URL-driven implementation work

## Workflow

1. Confirm target
   - Identify `fileKey` and `nodeId` from the Figma URL when provided.
   - Clarify expected output (new frame, edits to an existing frame, component updates).

2. Load prerequisite skill
   - Invoke the `figma-use` skill instructions first.

3. Resolve approved assets with pattern-first priority
   - Search and import from the approved PatternFly files only (see `references/approved-sources.md`).
   - Prefer matching `🧰` patterns first, then fall back to smaller components if needed.
   - Verify each chosen component/pattern comes from an approved source.

4. Handle page intent
   - If request is "make a new page", create a new top-level frame first.
   - Otherwise, edit only the user-specified existing frame/scope.

5. Make incremental edits
   - Prefer editing existing nodes/components over rebuilding from scratch (except new-page requests).
   - Use approved design-system components and variables instead of hardcoded values.
   - Apply changes in small batches and verify after each batch.

6. Validate outcome
   - Check hierarchy, alignment, spacing, constraints, and variant states.
   - Ensure all inserted components/patterns come from approved sources only.
   - Confirm `🧰` patterns were used whenever a suitable option exists.

## Guardrails

- Reuse approved library assets first; avoid duplicate ad-hoc components.
- Bind variables/tokens where possible (color, type, spacing, radius).
- Keep names semantic and stable for handoff (frames, components, variants).
- If requirements are ambiguous, ask a focused clarification question before making large edits.

Related Skills

pf-prototype-mode

8
from patternfly/ai-helpers

Enable prototype mode for React apps with grayscale styling and a banner overlay. Use when demoing early concepts, presenting wireframes, or preventing stakeholders from fixating on visual polish.

pf-unit-test-generator

8
from patternfly/ai-helpers

Generate a unit test file for a React component using Testing Library. Use when adding test coverage to new or existing components.

pf-project-scaffolder

8
from patternfly/ai-helpers

Scaffolds PatternFly React projects with PF6-safe dependencies, imports, and starter layout. Use when creating a new PatternFly app or bootstrapping a migration sandbox.

pf-import-checker

8
from patternfly/ai-helpers

Audit and fix invalid PatternFly import paths across packages. Use when imports fail, modules are unresolved, or after upgrading PatternFly versions.

pf-component-structure

8
from patternfly/ai-helpers

Audit PatternFly React component nesting, wrapper hierarchies, and layout structure. Use when scanning for hierarchy violations or debugging spacing caused by missing wrapper components.

write-example-description

8
from patternfly/ai-helpers

Write and refine example descriptions for PatternFly.org component and demo pages. Use when authoring or updating the prose in PatternFly example markdown files.

summarize-jira-issues

8
from patternfly/ai-helpers

Summarize your current sprint workload from Jira — assigned issues, contributor roles, and priorities. Use when checking what's left in the sprint or deciding what to work on next.

semantic-release-troubleshooting

8
from patternfly/ai-helpers

Diagnose and fix semantic-release issues when a specific version is not being released. Use when semantic-release skips a version, fails to release, or when troubleshooting after git push --force, squashed commits, permission errors, or reference already exists.

quarterly-initiative-report

8
from patternfly/ai-helpers

Generate quarterly Jira status reports with RAG assessment, blocker tracking, and next-quarter recommendations. Use when preparing quarterly initiative reviews or tracking epic progress.

pf-tokens

8
from patternfly/ai-helpers

Build CSS design tokens for PatternFly core and copy them to the PatternFly repository. Use when regenerating tokens after design changes or during release preparation.

pf-org-version-update

8
from patternfly/ai-helpers

Update patternfly-org for a new PatternFly release — resolve versions, update package.json and versions.json, and provide build steps. Use when cutting a PF release or release candidate.

pf-create-issue

8
from patternfly/ai-helpers

Create well-structured GitHub issues for PatternFly repositories with templates, follow-up tracking, and duplicate detection. Use when filing bugs, feature requests, or cross-repo follow-ups.