mcpField
M
match

match

github.com/raphaelsalajaデザイン・UI4744 回インストール1 日前に更新
リポジトリ

match について

match は、アプリ、サイト、デザイン参照の指定部分を、実際の参照元と測定値に基づいて再構築するスキルです。コーディングエージェントに状態の確認、並べた比較、差分の報告を促します。

主な機能

  1. 01実際の参照元を確認
  2. 02測定したスタイルと値を記録
  3. 03状態と遷移を一覧化
  4. 04指定された部分だけを再構築
  5. 05キャプチャを並べて比較

活用シーン

  1. 01公開サイトのコンポーネントを再現
  2. 02デスクトップアプリの画面を再現
  3. 03測定値に基づいて参照を正確に実装
  4. 04再構築した状態を元の画面と照合

インストール

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

$npx skills add https://github.com/raphaelsalaja/skills --skill match

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

同梱ファイルagents/openai.yamlcompare.html

詳細

マッチ

このスキルは、ユーザーが別のアプリ、サイト、デザインで指定したものを再構築します。見た目の記憶ではなく、実際のソースとそこで測定した値を基に作業します。

一対一とは、値が正確であること

ユーザーが「一対一で」「正確に」「これと同じように」と言った場合、すべての値は参照元から取得します。値を推測した場合は、その事実を指摘します。ユーザーが「インスピレーションを得て」と言った場合は、コンセプトを取り入れ、プロジェクト独自のトークンを使用します。

メッセージにアプリ、URL、スクリーンショット、デザインファイル、デザイン参考ライブラリが含まれる場合は、必ずこのスキルを使います。プロジェクトのパーツを使って構築する作業はreuseに属します。結果の確認はverifyで行います。

1. 実際のソースを開く

参照元そのものを開きます。ライブページ、インストール済みアプリ、デザインファイル、スクリーンショットのいずれかです。記憶を基に再構築するのはmatch-inspect-the-sourceです。参照元がネイティブアプリまたはデスクトップアプリの場合は、ウェブサイトではなく、そのアプリを確認します。デスクトップアプリをマーケティングページで評価するのはmatch-same-platformです。

2. 値を読み取る

ソースから計算済みスタイル、デザイントークン、測定値を読み取ります。サイズ、間隔、角丸、色、書体、時間、イージングを書き留めます。目視で決めた角丸はmatch-read-computed-valuesです。

3. 状態を洗い出す

参照元にある状態をすべて列挙します。ホバー、押下、フォーカス、開いた状態、空の状態、読み込み中、エラー、選択済み、無効状態です。次に状態間の遷移を列挙します。初期状態だけを再構築するのはmatch-inventory-statesです。

4. 指定されたパーツを再現する

ユーザーが指定したパーツだけを再構築し、その周囲は変更しません。サイドバーを求められたのにレイアウト全体をコピーするのはmatch-copy-the-named-partです。ブランドではなく、アイデアを取り入れます。ユーザーが求めていない限り、ロゴ、製品名、色は引き継ぎません。これがmatch-concept-not-brandです。

5. 並べて比較する

参照元と再構築したものを、同じサイズ、同じ状態で横に並べます。差異をすべて具体的に挙げます。比較せずに「近い見た目」とするのはmatch-side-by-sideです。

ステップ3のすべての状態を、同一サイズ、同一デバイススケールファクターでキャプチャします。compare.htmlを.match/<part>/index.htmlにコピーします。このフォルダーは無視対象であり、ソースツリーには絶対に入れません。ヘッダーコメントに示された形式で、その隣にcompare.jsを作成します。キャプチャはimg/に保存し、ページを開きます。

比較ページはこのスキルに含まれているため、データのみを書き込みます。独自のマークアップやスタイルを持つページを作成するのはmatch-shipped-compareです。各値を「一致」「相違あり」「未検証」のいずれかで示します。ユーザーは「Copy Differences」を使って、残っている差異を送り返します。

対応関係

すべてのチェックは対応するペアで構成されます。問題のある行の隣に、それを置き換える行が並びます。

ルール問題のある例置き換え後
match-inspect-the-source記憶を基に再構築したメニューライブメニューを開いて確認する
match-same-platformデスクトップアプリをウェブサイトで評価するインストール済みアプリを開く
match-read-computed-values目視で決めたborder-radius: 8px計算済みスタイルから読み取った6px
match-inventory-states初期状態のみホバー、押下、開いた状態、空の状態、エラーを再構築する
match-copy-the-named-part「サイドバー」のためにレイアウト全体をコピーするサイドバーのみ
match-concept-not-brand相手のロゴとアクセントカラーを含めるプロジェクトのトークンに沿ったパターン
match-side-by-side「近い見た目」同じサイズで並べ、差異を列挙する
match-shipped-compare比較ページを一から作成するcompare.htmlをコピーし、compare.jsのみ作成する

報告

重大度。 HIGHは、ソースを開かずに再構築した場合、またはユーザーが指定した状態が欠けている場合です。MEDIUMは、「一対一」の指定で値を推測した場合、依頼範囲を超えてパーツをコピーした場合、または比較ページを手書きした場合です。LOWは、見つけて明示した残りの差異です。

形式。 根本原因ごとに1件の指摘を記載します。

file:line - [rule-id] what is wrong

続いてRule | Count | Severityのサマリーを記載します。HIGHが1件でも残っている場合はBlock、それ以外はApproveとします。ソースから読み取れなかった値はすべてNot verifiedと記載します。

コメント