acta:design-prompt
Turns the project's design source of truth into paste-ready Claude Design prompts — and, crucially, the real
content/copy to fill them. Claude Design is great at visuals but weak at content and prone to inventing scope; this
skill fixes both: the prompt carries the exact spec and a hard scope lock, and the real copy from
messaging.md, so Claude Design builds your thing, not a generic guess.
Shared: ${CLAUDE_PLUGIN_ROOT}/acta/principles.md. Reads docs/design/* (the granular doc-base) and, for web,
docs/product/* (feature-specs, requirements).
Language
Write copy and docs in the project's documentation language (registry language:, default English); talk to the user in the language they use. See ${CLAUDE_PLUGIN_ROOT}/acta/principles.md.
Pre-condition
docs/design/tokens.md (or design-system.md) + messaging.md must exist. If not → run /acta:design first (it
establishes the doc-base).
Flow
- Pick the surface — arg or ask:
web (landing / a specific page) · logo · brand board · deck · ads · og-image.
- Gather grounding (all from the docs, nothing invented):
- visual: tokens from
tokens.md; approach + rules from design-system.md; type from typography.md; palette/
state colors from color.md; grid/breakpoints from spacing-layout.md; motion from motion.md; a11y from
accessibility.md; mood/voice from brand.md.
- copy: the real headlines, value props, section/CTA/FAQ text from
messaging.md (+ content-style-guide.md for tone).
- for
web: the actual screens/flows from ux-flows.md and the sections/fields/features from
docs/product/feature-specs.md / requirements-* / PRD — so the prompt describes what really exists.
- a reference site/image: from
references.md if recorded (with what to borrow — layout/feel only), else ask.
- Build the prompt block (fenced, copy-able) with these parts:
- Brand & visuals — tokens (colors/type/spacing), mood, radius/elevation, motion.
- Structure & content — the real sections/screens, and the real copy inline (no lorem-ipsum, no placeholders).
- Scope lock (hard rule): "Build ONLY what is listed here. Do NOT add fields, sections, features, pages, or
copy that aren't specified. Example: if a form asks for email + password, do not add a phone number or anything
else." — keep Claude Design inside the spec.
- Reference (if given): "Resemble
<reference> in layout/feel, but use OUR tokens and OUR copy above — not theirs."
- Constraints: accessibility (WCAG AA, reduced-motion), responsive, and the project's styling approach if it matters.
- Output the paste-ready prompt + the copy. Optionally (on request) save it to
docs/design/<surface>.md under a
"Claude Design prompt" section — print-first, save only if asked (anti-bloat, no prompt-dump files).
Rules
- Scope lock, always. Never let the prompt invite Claude Design to add anything beyond the spec.
- Real copy, never lorem. Pull from
messaging.md; if a piece is missing, mark it TBD in the prompt (don't fabricate).
- On-brand, always. Every prompt uses the
design-system tokens/rules; nothing off-token.
- Consistent format across every surface (web/logo/deck/ads/og-image) so the whole project's prompts feel like one system.
- Never fabricate. Content in the project's documentation language. Operate by
${CLAUDE_PLUGIN_ROOT}/acta/principles.md.
1---2name: design-prompt3description: Turn the design docs into paste-ready Claude Design prompts plus the real copy — scope-locked and on-brand. Trigger on /acta:design-prompt, "claude design prompt", "generate a design prompt".4---56# acta:design-prompt78Turns the project's design source of truth into **paste-ready Claude Design prompts** — and, crucially, the **real9content/copy** to fill them. Claude Design is great at visuals but weak at content and prone to inventing scope; this10skill fixes both: the prompt carries the **exact spec** and a hard **scope lock**, and the **real copy** from11`messaging.md`, so Claude Design builds *your* thing, not a generic guess.1213Shared: `${CLAUDE_PLUGIN_ROOT}/acta/principles.md`. Reads `docs/design/*` (the granular doc-base) and, for web,14`docs/product/*` (feature-specs, requirements).1516## Language17Write copy and docs in the project's documentation language (registry `language:`, default English); talk to the user in the language they use. See `${CLAUDE_PLUGIN_ROOT}/acta/principles.md`.1819## Pre-condition20`docs/design/tokens.md` (or `design-system.md`) + `messaging.md` must exist. If not → run `/acta:design` first (it21establishes the doc-base).2223## Flow24251. **Pick the surface** — arg or ask: `web` (landing / a specific page) · `logo` · `brand` board · `deck` · `ads` · `og-image`.262. **Gather grounding** (all from the docs, nothing invented):27 - visual: tokens from `tokens.md`; approach + rules from `design-system.md`; type from `typography.md`; palette/28 state colors from `color.md`; grid/breakpoints from `spacing-layout.md`; motion from `motion.md`; a11y from29 `accessibility.md`; mood/voice from `brand.md`.30 - copy: the real headlines, value props, section/CTA/FAQ text from `messaging.md` (+ `content-style-guide.md` for tone).31 - for `web`: the **actual** screens/flows from `ux-flows.md` and the sections/**fields/features** from32 `docs/product/feature-specs.md` / `requirements-*` / PRD — so the prompt describes what really exists.33 - a **reference** site/image: from `references.md` if recorded (with **what to borrow — layout/feel only**), else ask.343. **Build the prompt block** (fenced, copy-able) with these parts:35 - **Brand & visuals** — tokens (colors/type/spacing), mood, radius/elevation, motion.36 - **Structure & content** — the real sections/screens, and the **real copy** inline (no lorem-ipsum, no placeholders).37 - **Scope lock (hard rule):** "Build ONLY what is listed here. Do NOT add fields, sections, features, pages, or38 copy that aren't specified. Example: if a form asks for email + password, do not add a phone number or anything39 else." — keep Claude Design inside the spec.40 - **Reference (if given):** "Resemble `<reference>` in layout/feel, but use OUR tokens and OUR copy above — not theirs."41 - **Constraints:** accessibility (WCAG AA, reduced-motion), responsive, and the project's styling approach if it matters.424. **Output** the paste-ready prompt + the copy. Optionally (on request) save it to `docs/design/<surface>.md` under a43 "Claude Design prompt" section — **print-first, save only if asked** (anti-bloat, no prompt-dump files).4445## Rules4647- **Scope lock, always.** Never let the prompt invite Claude Design to add anything beyond the spec.48- **Real copy, never lorem.** Pull from `messaging.md`; if a piece is missing, mark it `TBD` in the prompt (don't fabricate).49- **On-brand, always.** Every prompt uses the `design-system` tokens/rules; nothing off-token.50- **Consistent format** across every surface (web/logo/deck/ads/og-image) so the whole project's prompts feel like one system.51- Never fabricate. Content in the project's documentation language. Operate by `${CLAUDE_PLUGIN_ROOT}/acta/principles.md`.