figma-generative-plugins について
Figma Design の生成系プラグインを作成・更新するエージェント向けスキルです。スキャフォールドの確認からソースの置き換えまでを定め、使える UI と秘密情報の安全な扱いを重視します。
主な機能
- 01プラグインの作成・更新フロー
- 02スキャフォールドのソース確認
- 03プラグイン UI とロジックの実装
- 04既存の操作性の維持
- 05ビルドエラー対応と完了報告
活用シーン
- 01依頼に基づく Figma プラグイン作成
- 02既存プラグインの機能変更
- 03入力項目や検証フィードバックの設計
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ figma/ mcp-server-guide --skill figma-generative-pluginsインストール後、Claude Code で/figma-generative-pluginsを入力して読み込まれたか確認します。
同梱ファイルreferences/authoring.md
詳細
生成系 Figma プラグインの作成と更新
create_generative_plugin または update_generative_plugin を呼び出す前に、毎回このスキルを読み込んでください。ユーザー向けの表現では、作成するものを「プラグイン」と呼んでください。「生成系」という修飾語は、このアカウントライブラリツールを他のプラグインシステムと区別するためのものです。
事前確認
作成を始める前に、依頼がこの範囲に適合することを確認してください。
- プラグインは Figma Design エディターで動作します。
- すべてのプラグインで、主要なワークフローに対応する機能的な UI を提供する必要があります。設定可能な入力がない場合も、明確な主要アクションと、有用なステータス表示または検証フィードバックが必要です。
- API キー、OAuth トークン、署名付き URL、その他の秘密情報を埋め込まないでください。プラグインのソースは、アクセス権を持つユーザーが閲覧できます。認証が必要な連携の場合は中止し、静的データセット、認証不要の公開エンドポイント、または別のアーキテクチャを提案してください。
作成ワークフロー
- 依頼されたワークフローと有用なコントロールを整理します。必要な入力や動作が本当に曖昧な場合に限り、簡潔な質問をしてください。
planKeyを特定します。ユーザーから提供されていればそれを再利用し、そうでなければwhoamiを呼び出します。対象となるプランが1つだけなら自動的に使用し、内容が大きく異なる複数のプランがある場合はユーザーに選択を求めます。- 簡潔な名前、説明、
planKeyを指定してcreate_generative_pluginを1回呼び出します。これで作成されるのは、正方形を描画する実行可能なひな形であり、依頼された最終プラグインではありません。 - 返された
idを使ってget_generative_pluginを呼び出し、その後、すべてのソース URI を読み込みます。これにより、ひな形のマニフェスト、UI メッセージの契約、現在の TypeScript エントリーポイントを確認できます。 - 依頼された動作と UI を実装した、完全なファイルでひな形を置き換えます。
- 返された
id、code.tsの完全な置き換え内容、および UI を変更する場合はui.htmlの完全な置き換え内容を含むfiles配列、具体的なcommitMessageを指定してupdate_generative_pluginを呼び出します。名前または説明を変更する場合はmetadataを使用します。
create_generative_plugin の呼び出し後に処理を終えてはいけません。スターターは、依頼された体験に置き換える必要があります。
更新ワークフロー
- プラグインを特定します。必要に応じて
list_generative_pluginsを呼び出し、その後get_generative_pluginを呼び出します。 - 編集する前に、get ツールが返したすべてのソース URI を読み込みます。これらのファイルを現在の信頼できるソースとして扱ってください。
- ユーザーが変更を求めない限り、既存の UI、コントロール、再起動動作、検証、ユーザー向けの操作要素を保持してください。
- 変更する既存ファイルごとに、完全な置き換え内容を指定して
update_generative_pluginを呼び出します。エントリーポイントには{ path: "code.ts", content: "..." }を、UI には{ path: "ui.html", content: "..." }を使用します。指定されていないファイルは保持されます。
作成ルール
- 置き換えファイルを記述する前に、プラグインソースの作成 を読んでください。ファイル置き換えの契約、UI/メッセージのライフサイクル、PropsKit コントロール、動的ページへの対応、フォント、再起動動作、処理量の制限、ジオメトリ、Plugin API の注意点について説明されています。
- プラグインの主要アクションを明確にし、選択内容や入力が無効な場合に、その状態が理解できるようにしてください。
update_generative_pluginで置き換えられる既存ファイルはcode.tsとui.htmlです。manifest.jsonの置き換えや新規ファイルの作成はできません。code.tsのfigma.showUI(__html__, ...)は維持し、依頼されたワークフローで異なるコントロールが必要な場合はui.htmlを置き換えてください。- プラグインの明確な目的であり、UI にその旨が明示されている場合を除き、キャンバスに対する破壊的な変更は避けてください。
- 非同期処理と UI メッセージの完了前に終了しないでください。
- エラーでない
update_generative_pluginの結果は成功として扱ってください。返されたバージョンがあれば記録してください。成功した応答にバージョンが含まれない場合もあります。 - ビルドエラーが発生した場合は、返されたコンパイラー出力を使って必要最小限のソース修正を行い、1回だけ再試行してください。それでも失敗する場合は、プラグインを何度も書き直すのではなく、エラーを提示してください。
完了
プラグイン名と ID、返されたバージョンがある場合はそのバージョン、UI と主なアクションの簡単な説明を報告します。未公開のプラグインをすぐに試せる、新しい Design ファイルを開くクリック可能な URL を、try-tool-resource-content-id に正確なプラグイン ID を指定して作成し、記載します。
https://www.figma.com/file/new?try-tool-resource-content-id=<id>&try-tool-resource-type=gen_tool&type=design&mode=design
新しいファイルへのリンクを提示した後、代わりに既存の Figma Design ファイルでプラグインを開くかどうかを尋ねます。ユーザーが希望する場合は、すでに提示されているファイル URL を再利用するか、URL を尋ねてから、同じ try-tool-resource-content-id と try-tool-resource-type のクエリパラメーターをその URL に追加します。ファイル URL を推測してはいけません。