Agent skill
stitch-ui-prompt-architect
Build Stitch-ready prompts from vague UI ideas (Path A) or from a Design Spec plus user request (Path B). Use when polishing a UI prompt before Stitch generation, improving a prompt that produced poor results, or merging a Design Spec with framework contracts (uView, Element Plus, Layui, Bootstrap, Vant) into a sectioned Context/Layout/Components prompt.
Install this agent skill to your Project
npx add-skill https://github.com/partme-ai/full-stack-skills/tree/main/skills/stitch-skills/stitch-ui-prompt-architect
SKILL.md
Stitch UI Prompt Architect
Constraint: Only use this skill when the user explicitly mentions "Stitch" or when orchestrating a Stitch design task.
This skill acts as a Senior UX Designer and Prompt Engineer. It supports two paths so that local behavior is strictly stronger than a single-path prompt skill:
- Path A — Enhance vague prompt: Transform rough or vague UI ideas into polished, Stitch-optimized prompts (specificity, UI/UX keywords, design system context, numbered structure). Use when the user gives a short or unclear prompt.
- Path B — Spec → prompt: Merge the User Request and the Design Spec (from
stitch-ui-design-spec-generator) into a final sectioned Stitch prompt. Use when a structured spec already exists.
Prerequisites
- Stitch Effective Prompting Guide: https://stitch.withgoogle.com/docs/learn/prompting/ — consult for latest best practices; they may supersede or complement the patterns below.
Official Documentation (by Framework)
When injecting framework contract prefix (Path B) or translating component keywords, prefer the following authoritative docs:
| Framework | Official / Guide | Components | Other |
|---|---|---|---|
| Bootstrap Vue 3 | bootstrap-vue.org · docs · Vue 3 | components | GitHub |
| Element Plus | element-plus.org (zh-CN) | design · overview | GitHub |
| Layui-Vue | layui-vue.com | guide · components | GitHub |
| Vant (Vue 3) | vant-ui.github.io | Vant zh-CN | GitHub |
| uView 2.0 (Vue 2) | uviewui.com | guide/demo · components | GitHub |
| uView Pro (Vue 3) | uviewpro.cn | guide · components · tools · layout | — |
When to Use
- Path A: User wants to polish a UI prompt before sending to Stitch; improve a prompt that produced poor results; add design system consistency to a simple idea; structure a vague concept into an actionable prompt.
- Path B: Orchestrator has already produced a Design Spec (e.g. from
stitch-ui-design-spec-generator) and needs a final [Context]/[Layout]/[Components] prompt; or user requests a prompt for a named framework (uView, Element Plus, Layui, Bootstrap, Vant).
Path A: Enhance Vague Prompt
Follow these steps to turn a vague idea into a Stitch-ready prompt.
Step 1: Assess the Input
Evaluate what's missing:
| Element | Check for | If missing... |
|---|---|---|
| Platform | "web", "mobile", "desktop" | Add based on context or ask |
| Page type | "landing page", "dashboard", "form" | Infer from description |
| Structure | Numbered sections/components | Create logical page structure |
| Visual style | Adjectives, mood, vibe | Add descriptors (see references/KEYWORDS.md) |
| Colors | Specific values or roles | Add design system or suggest |
| Components | UI-specific terms | Translate to proper keywords |
Step 2: Check for DESIGN.md
- If DESIGN.md exists: Read it; extract design system block (palette, typography, component styles); include as "DESIGN SYSTEM (REQUIRED)" in output.
- If DESIGN.md does not exist: Add a tip at the end: "For consistent designs across multiple screens, create a DESIGN.md using the
stitch-design-mdskill."
Step 3: Apply Enhancements
- UI/UX keywords: Replace vague terms (e.g. "menu at the top" → "navigation bar with logo and menu items"; "button" → "primary call-to-action button"). Use references/KEYWORDS.md for component and adjective palettes.
- Vibe: Add descriptive adjectives ("modern" → "clean, minimal, with generous whitespace"; "dark mode" → "dark theme with high-contrast accents on deep backgrounds").
- Structure: Organize into numbered Page Structure (Header, Hero, Content Area, Footer, etc.).
- Colors: Format as
Descriptive Name (#hex) for functional role(e.g. "Deep Ocean Blue (#1a365d) for primary buttons").
Step 4: Format Output (Path A)
Structure the enhanced prompt as:
[One-line description of the page purpose and vibe]
**DESIGN SYSTEM (REQUIRED):**
- Platform: [Web/Mobile], [Desktop/Mobile]-first
- Theme: [Light/Dark], [style descriptors]
- Background: [Color description] (#hex)
- Primary Accent: [Color description] (#hex) for [role]
- Text Primary: [Color description] (#hex)
- [Additional design tokens...]
**Page Structure:**
1. **[Section]:** [Description]
2. **[Section]:** [Description]
...
Output options: Return as text; or if the user requests, write to next-prompt.md (for stitch-loop) or a custom file.
Path B: Spec + Request → Sectioned Prompt
Use when you have a Design Spec (from stitch-ui-design-spec-generator) and a User Request.
Input
- User Request: e.g. "Login page with social auth".
- Design Spec: JSON with
deviceType,designMode,theme,styleKeywords, etc.
Output Format (Must)
Return a single prompt with:
[Context]
...
[Layout]
...
[Components]
...
Construction Logic
1. Context & Style
Combine deviceType, designMode, theme, styleKeywords.
Example: "Mobile High-Fidelity login screen. Cyberpunk aesthetic. Dark mode with neon blue accents."
2. Design Contract Prefix (Hard Constraints)
If the user request includes a named style (e.g. "uview 风格"), prepend the corresponding contract to [Context]:
| Keyword | Use skill output as prefix |
|---|---|
uview-pro, uviewpro |
stitch-ui-design-spec-uviewpro |
uview, uview2 |
stitch-ui-design-spec-uview |
element, element-plus |
stitch-ui-design-spec-element-plus |
vant, vant4 |
stitch-ui-design-spec-vant |
layui, layui-vue |
stitch-ui-design-spec-layui |
bootstrap, bs-vue |
stitch-ui-design-spec-bootstrap |
3. Contract Selection JSON
When a named design system is present, generate CONTRACT_SELECTION_JSON_V1 to decide which component contracts and UI state snippets to inject (include only what the current screen needs). Schema: version, designSystem, mode, contracts.include, states.include.
4. Layout Structure
- Mobile: Header → Body (Stack) → Footer (Nav/Action).
- Desktop: Sidebar/TopNav → Main Grid → Widgets.
5. Component Details
Translate requirements into UI components (e.g. "Login" → Inputs, Primary Button, Forgot Pass link).
6. Content
Use specific copy (e.g. "Welcome back, Agent") instead of placeholder "Text".
Example (Path A: Vague → Enhanced)
Input: "make me a login page"
Output:
A clean, trustworthy login page with a centered form and subtle branding.
**DESIGN SYSTEM (REQUIRED):**
- Platform: Web, Desktop-first
- Theme: Light, minimal, professional
- Background: Clean White (#ffffff)
- Surface: Soft Gray (#f9fafb) for form card
- Primary Accent: Deep Blue (#2563eb) for submit button and links
- Text Primary: Near Black (#111827) for headings
- Text Secondary: Medium Gray (#6b7280) for labels
- Buttons: Subtly rounded (8px), full-width on form
- Cards: Gently rounded (12px), soft shadow for elevation
**Page Structure:**
1. **Header:** Minimal logo, centered
2. **Login Card:** Centered form with email, password fields, "Forgot password?" link
3. **Submit Button:** Primary blue "Sign In" button
4. **Footer:** "Don't have an account? Sign up" link
Example (Path B: Spec → Prompt)
"Mobile login screen for a Fintech App. Clean minimalist aesthetic. Light mode.
Layout: Center-aligned vertical stack.
Header: Brand logo 'PayFast' and 'Welcome' title.
Form: Input field for 'Email' with mail icon. Input field for 'Password' with eye toggle.
Actions: Full-width primary blue button 'Sign In'. 'Forgot Password?' link.
Footer: 'Create Account' link."
Tips
- Path choice: Use Path A for short/vague prompts; Path B when a spec already exists or a framework name is given.
- Be specific early for vague inputs; match intent — don’t over-design if the user wants something simple.
- Numbered sections help Stitch understand hierarchy.
- Design system: For multi-page consistency, use DESIGN.md (from
stitch-design-md) or inject framework contract (Path B). - Edits: One change at a time; don’t bundle unrelated changes.
Keywords
English: Stitch, prompt, enhance, vague, design spec, DESIGN.md, next-prompt, stitch-loop, uView, Element, Layui, Bootstrap, Vant.
中文关键词: Stitch、提示词、增强、模糊需求、设计规范、DESIGN.md、next-prompt、stitch-loop、uView、Element、Layui、Bootstrap、Vant。
References
- KEYWORDS — UI/UX keyword palettes for Path A.
- Official documentation (by framework) — Authoritative docs for BootstrapVue, Element Plus, Layui-Vue, Vant, uView 2, uView Pro.
References
- Examples
- Keywords
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ocrmypdf-batch
OCRmyPDF batch processing skill — process multiple PDFs, Docker automation, shell scripting, and CI/CD integration. Use when the user needs to OCR many PDFs, set up automated OCR pipelines, or integrate OCR into workflows.
ocrmypdf-optimize
OCRmyPDF optimization skill — compress PDFs, configure PDF/A output, JBIG2 encoding, and lossless optimization. Use when the user needs to reduce PDF file size, create archival PDF/A files, or optimize OCR output.
ocrmypdf-image
OCRmyPDF image processing skill — deskew, rotate, clean, despeckle, remove border from scanned documents. Use when the user needs to improve scanned PDF quality, fix skewed pages, remove noise, or clean up scanned documents before OCR.
ocrmypdf-api
OCRmyPDF Python API and plugin skill — use OCRmyPDF programmatically from Python, integrate with applications, and extend with plugins (EasyOCR, PaddleOCR, AppleOCR). Use when the user needs to call OCRmyPDF from Python code, build OCR pipelines, or use alternative OCR engines.
ocrmypdf
OCRmyPDF core skill — add searchable OCR text layer to scanned PDFs, convert images to searchable PDFs, support 100+ languages via Tesseract. Use when the user needs to OCR a PDF, make a scanned PDF searchable, or extract text from scanned documents.
svelte
Guides Svelte and SvelteKit development including reactive components, stores, transitions, lifecycle hooks, SSR, file-based routing, and deployment. Use when the user needs to build Svelte components, create SvelteKit applications, implement reactivity patterns, or configure Svelte with Vite.
Didn't find tool you were looking for?