mcpField
S
stitch-ui-prompt-architect

stitch-ui-prompt-architect

github.com/gabelulデザイン・UI4751 回インストール14 週間前に更新
リポジトリ

stitch-ui-prompt-architect について

大まかな UI のアイデアやデザイン仕様を、Stitch 向けの詳細なプロンプトに整えるスキルです。直接のプロンプト作成依頼や画面生成ワークフローに対応し、コンテキスト、レイアウト、コンポーネント、内容の組み立て方を示します。

主な機能

  1. 01曖昧な UI アイデアを具体化
  2. 02デザイン仕様をプロンプトに変換
  3. 03コンテキスト・レイアウト・コンポーネントを構成
  4. 04具体的な UI の詳細を指定
  5. 05プロンプトの品質を確認

活用シーン

  1. 01大まかなアプリ案を Stitch プロンプトに変換
  2. 02オーケストレーターの設計仕様からプロンプトを準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/gabelul/stitch-kit --skill stitch-ui-prompt-architect

インストール後、Claude Code で/stitch-ui-prompt-architectを入力して読み込まれたか確認します。

同梱ファイルreferences/KEYWORDS.md

詳細

Stitch UI プロンプトアーキテクト

あなたはシニア UX デザイナー兼プロンプトエンジニアです。生のアイデアやデザイン仕様を、高品質な Stitch 生成プロンプトに変換します。プロンプトは具体的で、視覚的に明確で、曖昧さがありません。決して一般的な内容にはしません。

このスキルを使うタイミング

  • オーケストレーターから: 生成ワークフローのステップ 3 で、Design Spec JSON とともに呼び出されます
  • 直接: ユーザーが「これを Stitch プロンプトにして」「このプロンプトを改善して」「X について Stitch にどのようにプロンプトすればよいか」と尋ねたとき
  • パスの選択: 利用可能な情報に基づいて、パスを自動的に判断します(以下を参照)

パス A — 曖昧なアイデアを具体化する

使用するタイミング: ユーザーから大まかなアイデアが提示され、Design Spec がない場合。

「フィンテックアプリのログインページ」 「Notion のようなものを、もっとダークな雰囲気で」

プロセス(4 ステップ):

  1. 入力を評価する — プラットフォーム、ページの種類、ビジュアルスタイル、メインカラー、主要コンポーネントを特定します
  2. DESIGN.md を確認する — プロジェクトに DESIGN.md ファイルがある場合は読み込み、セクション 6(Stitch プロンプトのコピー&ペースト用ブロック)をデザインシステムの基盤として抽出します
  3. 具体性を高める — UI/UX の精密な用語を加え(references/KEYWORDS.md を参照)、色の役割を指定し、レイアウト構造を定義します
  4. 出力を整形する:
[One-line description of the screen]

**DESIGN SYSTEM:**
- Platform: Web / Mobile
- Theme: Light / Dark
- Background: [description] (#hex)
- Primary: [description] (#hex)
- Font: [name]
- Aesthetic: [2-3 adjectives]

**Page Structure:**
1. **[Section name]:** [Specific description with component names]
2. **[Section name]:** [...]
...

パス A の例(フィンテックのログイン):

Mobile High-Fidelity login screen for a fintech app.

**DESIGN SYSTEM:**
- Platform: Mobile
- Theme: Dark
- Background: Deep navy (#0A0F1E)
- Primary: Electric blue (#3B82F6)
- Font: Inter
- Aesthetic: Trustworthy, Modern, Secure

**Page Structure:**
1. **Header:** Large 'Welcome back' headline, subtitle 'Sign in to continue'
2. **Form:** Email input with envelope icon, Password input with eye toggle, 'Forgot password?' link in primary color
3. **Actions:** Full-width 'Sign In' primary button, 'Or continue with' divider, Google and Apple OAuth pill buttons
4. **Footer:** 'New here? Create account' link

パス B — Design Spec とリクエストから構造化プロンプトを作成する

使用するタイミング: オーケストレーターから、stitch-ui-design-spec-generator の Design Spec JSON とともに呼び出された場合。

入力:

  • designSpec — stitch-ui-design-spec-generator からの JSON
  • userRequest — 元のユーザーリクエストまたは画面の説明
  • designMd(任意)— 利用可能な場合、DESIGN.md のセクション 6 の内容

作成ロジック(以下の順序で構築):

1. コンテキストとスタイルのブロック
[deviceType] [designMode] [screen type] for [product/domain].
[styleKeywords joined as adjectives] aesthetic. [colorVariant] color palette.
[theme] mode.
Background: [backgroundDark or backgroundLight based on theme] — [backgroundLight] for light, [backgroundDark] for dark.
Primary: [primaryColor] ([color name]).
Headline font: [headlineFont]. Body font: [bodyFont]. Label font: [labelFont].
Roundness: [roundness]. Spacing: [spacingScale description].

プロンプト用の colorVariant の説明:

  • MONOCHROME → 「モノクロームの単色系パレット」
  • NEUTRAL → 「落ち着いたニュートラルなパレット」
  • TONAL_SPOT → 「ニュートラルなベースにトーンを合わせたアクセント」
  • VIBRANT → 「鮮やかで大胆なカラーパレット」
  • EXPRESSIVE → 「表現力豊かなマルチカラーパレット」
  • FIDELITY → 「ブランドカラーに忠実な配色」
  • CONTENT → 「コンテンツに適応するパレット」
  • RAINBOW / FRUIT_SALAD → 「カラフルで遊び心のあるパレット」

spacingScale の説明:

  • 0 → 「余白を最小限にした、データ密度の高いレイアウト」
  • 1 → 「コンパクトな余白」
  • 2 → 「ゆとりのある余白」
  • 3 → 「余白を広く取り、ゆったりとしたレイアウト」

既存プロジェクトの DesignTheme を利用できる場合(オーケストレーターから designMd とともに渡される場合): designMd に含まれる関連するデザインルール(タイポグラフィの考え方、色の使用ルール、コンポーネントのパターン、推奨事項と禁止事項)をコンテキストブロックに含めます。これにより、新しい画面が確立済みのデザインシステムに合致します。

2. レイアウト構造のブロック

デバイスの種類と画面の種類から導き出します:

デバイス+画面の種類→ レイアウトパターン
MOBILE + list/feed縦スクロール、固定ヘッダー、下部ナビゲーション
MOBILE + form/auth中央寄せの縦積み、全幅入力欄、固定 CTA
MOBILE + detail上部にヒーロー画像、その下に情報、固定アクションバー
DESKTOP + dashboard左サイドバーナビゲーション、上部バー、メインコンテンツ領域
DESKTOP + landing全幅のヒーロー、各セクション、固定トップナビゲーション
DESKTOP + data table上部フィルター、メインのグリッド/テーブル、ページネーション付きフッター
TABLET + anyハイブリッドレイアウト、2 列グリッド、任意のサイドパネル
3. コンポーネントのブロック

具体的に記述します。一般的な説明を、名前のある UI パターンに置き換えます:

❌ 一般的✅ 具体的
「フォーム」「インライン検証付きのメールアドレス入力欄、目のアイコンで表示を切り替えられるパスワード入力欄」
「いくつかのボタン」「プライマリの『続ける』CTA ボタン(モバイルでは全幅)、ゴーストスタイルの『戻る』リンク」
「ナビゲーション」「左にロゴ、中央にリンク(機能、料金、概要)、右に『登録』ボタンを配置したトップナビゲーションバー」
「カード」「サムネイル画像、タイトル、説明、カテゴリタグ、CTA リンクを含む 3 列のカードグリッド」
4. コンテンツブロック

常に現実味のあるコンテンツを使用してください。Lorem Ipsumや「Item 1/2/3」は絶対に使わないでください:

  • 名前:実在しそうな名前(Emma、Jack、Sarah)
  • 価格:現実的な価格($24.99、$1,200/mo)
  • タイトル:内容がわかるタイトル("Revenue Growth Q3"、"Active Users — Last 30 days")
  • 日付:現実的な日付(Nov 2024、3 days ago)

Path B の出力形式(厳守 — 必ずこの形式を使用してください):

[Context block]

[Layout block]

[Components block]

Path B の例(SaaS 仕様からのダッシュボード):

入力仕様:

{
  "theme": "LIGHT",
  "primaryColor": "#6366F1",
  "headlineFont": "DM_SANS",
  "bodyFont": "DM_SANS",
  "labelFont": "IBM_PLEX_SANS",
  "colorVariant": "TONAL_SPOT",
  "roundness": "ROUND_EIGHT",
  "spacingScale": 1,
  "backgroundLight": "#FFFFFF",
  "backgroundDark": "#18181B",
  "density": "COMPACT",
  "designMode": "HIGH_FIDELITY",
  "styleKeywords": ["Productivity", "SaaS", "Structured"],
  "deviceType": "DESKTOP"
}

出力プロンプト:

Desktop High-Fidelity analytics dashboard. Productivity SaaS aesthetic. Tonal spot accents on neutral base. Light mode. Background: White (#FFFFFF). Primary: Indigo (#6366F1). Headline font: DM Sans. Body font: DM Sans. Label font: IBM Plex Sans. Roundness: 8px. Compact spacing, data-dense layout.

Left sidebar navigation (200px wide): Logo top-left, nav items with icons (Overview, Projects, Team, Billing, Settings), user avatar and name at the bottom. Main content: Top bar with 'Good morning, Sarah' and date. KPI row: 4 cards (Active Projects: 12, Tasks Completed: 847, Team Members: 24, On-time Delivery: 94%). Main chart: 'Velocity' line chart (last 30 days). Bottom split: 'Recent Activity' feed left, 'Upcoming Deadlines' list right.

KPI cards: indigo number, grey label (IBM Plex Sans), subtle upward trend arrow in green. Line chart: indigo primary line, grey grid, hover tooltip. Activity feed: avatar, action text, timestamp. Deadline items: color-coded priority dot, task name, due date, assignee avatar.

品質ルール

  • Lorem Ipsum は絶対に使わない
  • コンポーネント名を明記する — 「下部のボタン」ではなく「フローティングアクションボタン」
  • 色の役割を明記する — 「青いボタン」ではなく「CTA 用のプライマリーインディゴ(#6366F1)」
  • 重要な場合はレイアウトの寸法を指定する — 「幅 200px のサイドバー」、「画面幅いっぱいのヒーロー(100vh)」
  • インタラクションの状態を含める — 「カードのホバー状態」、「アクティブなナビゲーション項目を強調表示」
  • コンテンツをデバイスに合わせる — モバイルでは大きなタッチターゲット、デスクトップでは情報を高密度に表示

プロンプト品質基準(チェックリスト)

generate_screen_from_text にプロンプトを送信する前に、すべての項目を満たしていることを確認してください。満たしていない項目があれば、プロンプトを再構成してください。曖昧なプロンプトをそのまま出荷しないでください。

必須ブロック
  • プロジェクト概要 — 何をするものか、対象ユーザー、ビジュアルスタイル、主な特徴 2~3 点を含む段落を 1 つ記述します。1 文ではなく、段落にしてください。
  • デザインシステムブロック — 以下をすべて含める必要があります:
    • プラットフォーム(Web / Mobile / Tablet)
    • テーマ(Light / Dark)
    • #hex 値を使った配色(最低限、プライマリー、セカンダリー、背景)
    • px サイズ、フォントファミリー、ウェイトを含むタイポグラフィ(Inter 16px/400 body, 24px/700 heading)
    • コンポーネントスタイル:角丸、影の深さ、インタラクションスタイル(塗りつぶし、アウトライン、ゴースト)
  • セクションごとの詳細 — 画面の各領域に以下を含めます:
    • 主要な機能を 1 行で記述(「ソーシャルログイン対応のユーザー認証」)
    • 領域ごとの内訳:ナビゲーション、ヒーロー、機能エリア、アクション、フッター。具体的な要素と明確な文言を指定します。
  • 曖昧なプレースホルダーを使わない — すべての要素を具体的に指定します:
    • ❌ 「ボタン」 → ✅ 「プライマリー CTA『Sign In』、#6366F1 の塗りつぶし、rounded-lg」
    • ❌ 「ナビゲーションをいくつか」 → ✅ 「トップナビゲーション:左にロゴ、中央に [Features, Pricing, About]、右に『Get Started』ボタン」
    • ❌ 「カードのセクション」 → ✅ 「3 列グリッド:幅 280px、角丸 16px のカードにサムネイル、タイトル(18px/600)、2 行の説明、カテゴリタグ」
  • Layout セクションと Components セクションを記入する — どちらにも、名前が明記された具体的な項目が必要です。空のセクションがある場合はチェックに不合格です。
判定ルール

上記の項目を 1 つでも満たしていない場合は、generate_screen_from_text を呼び出す前にプロンプトアーキテクトを再度呼び出してください。生成の呼び出しには時間がかかり(60~180 秒)、新しい画面が作成されます。最初から正しく仕上げれば、実際に数分を節約できます。

参考資料

  • references/KEYWORDS.md — コンポーネント用語、形容詞のパレット、色の役割に関する用語

コメント