superpowers-sage:designing
SageプロジェクトでUI/UXを設計できます。FigmaからBladeへのデザイン変換、デザイントークンからTailwind v4への対応、Paper/Figma MCP統合、コンポーネント設計、レイアウト設計、レスポンシブデザイン、デザインからコードへのワークフロー、ビジュアルデザインレビュー、デザインシステムとの整合性確認、実装前のデザイン承認に対応しています。
description の原文を見る
Design UI/UX in a Sage project — Figma to Blade, design tokens to Tailwind v4, Paper/Figma MCP integration, component design, layout design, responsive design, design-to-code workflow, visual design review, design system alignment, design approval before implementation
SKILL.md 本文
デザイン — デザインツール統合
ユーザーが提供する URL に基づいて適切なデザインツール(Paper(推奨)、Stitch、Figma、またはローカルアセット)にルーティングして、実装のためにレイアウト、コンテンツ、ビジュアルリファレンスを抽出します。
使用タイミング
- ビジュアルデザインの実装を開始するとき
- 構築前にデザインリファレンスをキャプチャする必要があるとき
- 実装をデザインと比較するとき
- プラン assets ディレクトリにスクリーンショットを登録するとき
必須入力
- デザインソース: Stitch プロジェクト ID、Figma ファイル URL、またはローカルアセットパス
- オプション: 抽出する特定セクション/スクリーン名
手順
0) ユーザー入力から信号源を判定(URL ベースのルーティング)
ルーティングは、設定されている MCP ではなく、ユーザーが提供したものに基づいて決まります。
- URL マッチ — ユーザー入力でデザイン URL を検査します:
paper.design/*または*.paper.design/*→ paper ブランチ(mcp__paper__*を使用)figma.com/*→ figma ブランチ(mcp__figma__*/mcp__claude_ai_Figma__*を使用)stitch.withgoogle.com/*(またはその他の既知の stitch ホスト) → stitch ブランチ(mcp__stitch__*を使用)
- パスマッチ — ユーザー入力で
.penリファレンスを検査します:- 入力が
.penで終わる、または入力がdesign/で始まる → pencil ブランチ - 入力なし かつ プロジェクトルートに
design/が存在し.penファイルがある場合: 利用可能な.penページファイル(*.lib.penを除外)をリストし、 続行前にどのページを抽出するか確認します。
- 入力が
- ローカルフォールバック — URL はないが
docs/plans/<active-plan>/assets/section-*.pngが存在する → offline ブランチ - 確認 — URL もローカルアセットもない場合、ユーザーに入力を求めます
MCP ゲート: ブランチが判定されたら、対応する mcp__<tool>__* ネームスペースで ToolSearch を実行します。MCP が設定されていない場合は、このメッセージで停止します:
⛔ {paper|figma|stitch} リンクを送信しましたが、`{tool}` MCP が設定されていません。
設定してから再実行するか、別のソースからのリンクを送信してください。
異なる MCP に暗黙的にフォールバックしないでください。
Pencil MCP ゲート: pencil ブランチの場合、mcp__pencil__open_document で ToolSearch を実行します。
設定されていない場合:
⛔ .pen ファイルが検出されましたが、Pencil MCP が設定されていません。
インストール: claude mcp add pencil -- npx -y @anthropic/pencil-mcp
インストール後、セッションを再開してください。
1) デザインデータを抽出(セクションごと、決して一度に全体デザインは不可)
Paper ワークフロー(ソースが paper.design の場合が推奨):
mcp__paper__get_basic_info— ドキュメントメタデータを取得mcp__paper__get_tree_summary— ターゲットセクションノードを特定- セクション上で
mcp__paper__get_node_info— 構造、テキスト、階層をキャプチャ mcp__paper__get_screenshot—assets/section-{name}.pngとして保存mcp__paper__get_computed_styles—assets/section-{name}.styles.jsonとして保存(タイポグラフィ、色、スペーシング — 正確な値;verifyingでスタイルスポットチェック用)mcp__paper__get_jsx— このヘッダーコメントをファイルの最初の行としてassets/section-{name}.reference.jsxとして保存:// 構造リファレンスのみ — コピーしないでください。 // Sage は React ではなく Blade を使用しています。これは // コンポーネント階層とネスティングを理解するために使用してください。- 構造化出力を生成(ステップ 2 を参照) — 他のブランチと同じスキーマ。
Stitch ワークフロー:
mcp__stitch__list_projects— プロジェクトを検索mcp__stitch__list_screens— すべてのスクリーンをリストmcp__stitch__get_screen— 一度に 1 つのセクションを抽出- 各セクションについて、キャプチャ: 見出し、本文、コンポーネント、色、レイアウト構造
Figma ワークフロー:
mcp__figma__get_file— ファイル構造を読み込む- フレームをナビゲートしてセクションを検索
- セクションごとにテキストレイヤー、色、コンポーネント構造を抽出
Pencil ワークフロー:
open_document(filePath)— ユーザーが指定した.penファイルを開くget_editor_state()— トップレベルノードとドキュメントがアクティブであることを確認- nodeIds なし、
readDepth: 1でbatch_get— すべての利用可能なセクションをマップ - 抽出する各セクションについて: SURGICAL モードで
pencil-extractorにデリゲート、filePath、sectionId、planPathを渡す - すべてのセクション後: オプションで
pencil-extractorを COMPONENT_MAP モードで実行 してdesign/component-map.mdを生成
オフラインワークフロー:
docs/plans/<plan>/assets/section-*.pngから画像を読み込む- Claude はネイティブに画像を読む — レイアウト、コンテンツ、色を説明
- アセットが存在しない場合、ユーザーにスクリーンショットの提供を求める
2) 出力を構成化
抽出された各セクションについて、以下を出力します:
### セクション: {name}
**レイアウト:** {グリッド構造、カラム配置、アライメント}
**見出し:** "{正確なテキスト}"
**本文:** "{正確なテキスト}"
**コンポーネント:** {カード、ボタン、アイコン、画像 — 詳細情報付き}
**色:** {背景、テキスト、アクセント — 表示される場合は 16 進数値}
**タイポグラフィ:** {見出しサイズ、本文サイズ、ウェイト、フォントファミリー}
**スペーシング:** {パディング、マージン、ギャップ — 概算}
**アイコン:** {アイコン名/タイプ、どのセットから}
3) プランアセットに保存(アクティブプランが存在する場合)
docs/plans/ にアクティブプランがある場合:
- 抽出したデータを
assets/section-{name}.mdに構造化ノートとして保存 - スクリーンショットが利用可能な場合は、そのパスを記録
plan.mdfrontmatter をdesign-tool: paper|stitch|figma|offlineで更新
主要原則
- 粒度の細かい抽出 — 常にセクションごと、決して一度に全体デザイン(コンテキストオーバーフロー防止)
- 正確なコンテンツ — テキストをそのままコピー、見出しや本文をパラフレーズしない
- ディスクに永続化 — すべてを plan assets/ に保存、コンテキスト圧縮時にも生き残らせる
- 実装前に再読 — 常にディスクからアセットを再読、コンテキストメモリに頼らない
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- codigodoleo
- ライセンス
- MIT
- 最終更新
- 2026/5/7
Source: https://github.com/codigodoleo/superpowers-sage / ライセンス: MIT
関連スキル
nano-banana-2
inference.sh CLIを通じてGoogle Gemini 3.1 Flash Image Preview(Nano Banana 2)で画像を生成します。テキストから画像を生成する機能、画像編集、最大14枚の複数画像入力、Google Searchグラウンディング機能に対応しています。トリガーワード:「nano banana 2」「nanobanana 2」「gemini 3.1 flash image」「gemini 3 1 flash image preview」「google image generation」
octocode-slides
洗練されたマルチファイル形式のHTMLプレゼンテーションを生成します。6段階のフロー(概要 → リサーチ → アウトライン → デザイン → 実装 → レビュー)で構成されています。各スライドは独立したHTMLファイルとなり、iframeで読み込まれます。「スライドを作成してほしい」「プレゼンテーションを作ってほしい」「HTMLスライドを生成してほしい」「デックを構築してほしい」といった依頼や、ノート・ドキュメント・コードを洗練されたプレゼンテーションに変換する際に使用できます。
gpt-image2-ppt
OpenAIのgpt-image-2を使用して、視覚的に優れたPPTスライドを生成します。Spatial Glass、Tech Blue、Editorial Monoなど10種類のキュレーション済みスタイルに対応し、ユーザーが提供したPPTXファイルを模倣するテンプレートクローンモードも搭載しています。HTMLビューアと16:9形式のPPTXファイルを出力します。プレゼンテーション、スライド、ピッチデック、投資家向けPPT、雑誌風PPTの作成依頼などで活用してください。
nano-banana
Nano Banana PRO(Gemini 3 Pro Image)およびNano Banana(Gemini 2.5 Flash Image)を使用したAI画像生成機能です。以下の場合に活用できます:(1)テキストプロンプトからの画像生成、(2)既存画像の編集、(3)インフォグラフィックス、ロゴ、商品写真、ステッカーなどのプロフェッショナルなビジュアルアセット制作、(4)複数画像での人物キャラクターの一貫性保持、(5)正確なテキスト描画を含む画像生成、(6)AI生成ビジュアルが必要なあらゆるタスク。「画像を生成」「画像を作成」「写真を作る」「ロゴをデザイン」「インフォグラフィックスを作成」「AI画像」「nano banana」またはその他の画像生成リクエストをトリガーとして機能します。
oiloil-ui-ux-guide
モダンでクリーンなUI/UXガイダンス・レビュースキルです。新機能や既存システム(Webアプリ)に対して、実行可能なUI/UX改善提案、デザイン原則、デザインレビューチェックリストが必要な場合に活用できます。CRAP(コントラスト・反復・配置・近接)をベースに、タスクファーストなUX、情報設計、フィードバック・システムステータス、一貫性、affordances、エラー防止・復旧、認知負荷を重視します。モダンミニマルスタイル(クリーン・余白・タイポグラフィ主導)を強制し、不要なテキストを削減、アイコンとしての絵文字を禁止し、統一されたアイコンセットから直感的で洗練されたアイコンを推奨します。
axiom-hig-ref
Apple Human Interface Guidelines リファレンス — 色(セマンティックカラー、カスタムカラー、パターン)、背景(マテリアル階層、ダイナミック背景)、タイポグラフィ(標準スタイル、カスタムフォント、Dynamic Type)、SF Symbols(レンダリングモード、色、多言語対応)、ダークモード、アクセシビリティ、プラットフォーム固有の考慮事項を網羅したガイドラインです。