Communitygithub.com

スクリーンショット・モーションスキル

スクリーンショットから製品ビデオを作成。カードスポットライト、ダークローンチフィルム、オービタルギャラリー、キネティックグラフィック、プリズマティックフォールド、ページターンストーリーブックの6つのテンプレートを利用可能。編集可能なキャプション、オプションのライセンス済みオーディオ、ポータブルデスクトップ編集パックに対応。スクリーンショットプロモーション、アプリローンチビデオ、フリップブック、またはテンプレートライブラリの拡張に最適。

スクリーンショット・モーションスキル とは?

このスキルは、指定されたスクリーンショットを使ってプロフェッショナルな製品ビデオを自動生成するためのAIエージェント用ツールです。6種類のテンプレート(スポットライト、キネティック、プリズム、オービット、ローンチ、ストーリーブック)を提供し、それぞれ異なる映像効果と持続時間を持ちます。ユーザーは製品名とスクリーンショットの順序を指定するだけで、スキルが自動的に設定ファイルを作成し、依存関係をインストールし、最終的なMP4ビデオをレンダリングします。また、編集可能なSRTキャプション、独立したオーディオステム、元のスクリーンショットを含むポータブル編集パックの出力もサポートしており、デスクトップ編集アプリケーションでの後編集が可能です。このスキルはClaude Code、Cursor、CodexなどのAIエージェント環境で動作し、PythonとNode.jsベースのレンダリングパイプラインを活用します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/simwy/screenshot-motion-skill/tree/HEAD

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

スクリーンショット・モーションスキル は何をしますか?

6つの実装済みテンプレートで実際に編集可能なビデオを生成します:

テンプレートエフェクトスクリーンショット数持続時間
spotlight5枚のカードが開き、中央のスクリーンショットがヒーローになり、その後元の並びに戻る正確に5枚12秒
kinetic太字のタイポ、分割画面とグラフィックワイプ正確に5枚16秒
prismアコーディオン型画面、層状ガラスのリビールとライトスイープ正確に5枚18秒
orbitネオンオービタルギャラリー、奥行き回転と最終整列正確に5枚18秒
launchコラージュ、機能クローズアップ、大きな見出しとCTAを用いたダークなエディトリアルプロモ正確に5枚20秒
storybookハードカバーが開き、イラストの見開きがめくられ、カバーが閉じる1~12枚ホールド時間設定可能;5ページでデフォルト32秒

スクリーンショットを配置する前に、テンプレートの選択とマッピングを読んでください。明示的に選択されたエフェクトに従ってください。それ以外の場合は、ユーザーの意図に最も近いものを推奨/選択し、以前の選択を保持します。すべてのリクエストをデフォルトで本にしないでください。信頼できるテンプレートレジストリは templates.json です。これは拡張可能なライブラリであり、バンドルされた完成デモビデオではありません。

入力と判断

リクエストから、プロモーションする製品、提供されたスクリーンショットの順序、出力言語を特定します。以前の選択を保持します。製品が曖昧な場合は、プロモーション用のコピーを書く前に確認します。それ以外の場合は、妥当なデフォルト値を使用して処理を進めます。デフォルト:1920×1080、30fps、ストーリーブックのホールド時間4秒、英語の説明テキスト、ナレーションなし。

コピーを書く前にスクリーンショットを検査します。実際のUIを使用し、コントロール、顧客数、パフォーマンスの主張、価格、ダウンロードアドレスをでっち上げないでください。説明コピーは別の編集可能なレイヤーです。スクリーンショットに焼き付けられたテキストは、キャプションを変更しても変更できません。ユーザー提供または適切にライセンスされたメディアを使用してください。プライベートなスクリーンショットと生成されたジョブは、インストールされたスキルディレクトリの外に保管してください。

ユーザー向け対話

呼び出しをビデオ生成のリクエストとして扱います。不足している場合のみスクリーンショットと製品詳細を尋ねます。ツールが利用可能な場合は、自分で設定を書き、準備、レンダリング、ミキシングを実行します。通常のワークフローでユーザーにPythonコマンドを渡したり、JSONを作成するよう要求したりしないでください。ローカルの依存関係を確認し、具体的な不足要件を報告します。実行権限を尊重します。環境が実行できない場合、ユーザーが取るべきアクションを説明します。

改訂リクエストを自然言語で受け付け、生成されたプロジェクトを更新し、改訂結果をレンダリングします。スクリーンショットやストーリーブックの持続時間を変更する場合は、新しいジョブを準備して、構成メタデータの一貫性を保ちます。ユーザーが明示的に要求しない限り、技術的なコマンドはエージェント実行または開発者トラブルシューティング用に保持します。手動での使用方法については、開発者レンダリングコマンドを参照してください。

ビデオを作成する

  1. 設定リファレンスを読みます。examples/内の対応する例を出発点として、ユーザーのアセットの横にプロジェクトJSONを記述します。スクリーンショットごとに、短く具体的な説明(機能1つにつき1つ)を書きます。--template spotlight、--template launch、--template orbit、--template kinetic、--template prism、または--template storybookを選択してください。以下のコマンドはストーリーブックを示しています。検証済みの行制限を尊重します。
  2. 隔離されたジョブを準備します:
    python3 /path/to/screenshot-motion-skill/scripts/motion.py prepare --template storybook --config /path/to/project.json --out /path/to/new-job
    
    既存のジョブはprepareによって上書きされることはありません。ジョブには自身のレンダラー、コピーされたスクリーンショット、正規化された設定が含まれており、準備後はヘルパーCLIを除いてスキルに依存しません。
  3. 新しいジョブ内でnpm installを使用して依存関係をインストールします。Node.js 22+ と Chrome/Chromium が必要です。インタラクティブプレビューにはそのジョブでnpm run studioを使用します。
  4. 最初に選択したテンプレートの代表的な静止フレームをレンダリングします:
    python3 /path/to/screenshot-motion-skill/scripts/motion.py render --job /path/to/new-job --frame 150 --browser /path/to/chrome
    
    結果のPNGを検査します。フルレンダリングの前に、コピー、クリッピング、またはレイアウトを修正します。便利なプレビューフレーム:spotlight 105/190/330;launch 60/150/250/355/450/550;orbit 45/170/270/380/490;kinetic 35/100/170/245/320/430;prism 70/150/240/330/470;storybook 150 および最初のターン中間点の 90 + holdFrames + 21。ジョブの持続時間内のフレームを選択します。
  5. --frameなしでレンダリングします。これにより out/video-silent.mp4 が作成されます。自動検出が失敗した場合は、既存のブラウザを明示的に指定します。スクリプトはブラウザをダウンロードしません。
  6. motion.py mix --job /path/to/new-job を実行して out/video.mp4 を作成します。オーディオ入力がない場合は、無音のコピーを作成します。音楽、トランジション効果音、または紙の音については、オーディオとライセンスを読んでください。リクエストがなく、適切な権限のある音声サービスが利用可能でない限り、ナレーションを追加しないでください。
  7. 出力チェックに従い、ソースコードだけでなくレンダリングされたファイルを検査し、実際のビデオとジョブパスを返します。ナレーション、リスニング、またはリアルタイム再生が行われたかどうかを正確に述べてください。レンダリングがブロックされている場合は、具体的な不足している依存関係を報告し、静止画像をビデオと称して代替しないでください。

デスクトップ編集用提供

リクエストがあった場合、編集エクスポートと互換性に従ってください。クリーンモードをレンダリングし、編集可能なSRTキャプション、独立したオーディオステム、元のスクリーンショット、ショットクリップを含むポータブルパックをエクスポートします。モーションジオメトリは焼き付けられたままであり、インポートされたキャプションはエディターでのスタイル設定が必要であることを説明します。最終的なスタイル付きMP4を参照用に保持します。ネイティブドラフトサポートを主張する前に、ユーザーのアプリ/バージョンを確認します。オプションのレガシーJianyingアダプターは実験的であり、現在のmacOS/WindowsまたはCapCutでは検証されていません。アプリケーションのライブラリにドラフトをサイレントにインストールしないでください。

安定した実装の詳細

以下のページカールの注意事項はストーリーブックに適用されます。スポットライトについては、ペイントバリアとスクリーンスペースラベルを保持してください。ローンチについては、可視UIでサポートされている場合にのみ正規化された region クロップを使用し、以前の製品のピクセル座標を再利用しないでください。

  • 右にめくるページは、前面に古いスクリーンショット、背面に次の説明があります。見開き全体をクロスフェードしたり、裏面のテキストをミラーリングしたりしないでください。
  • すべてのジオメトリはフレーム番号に従います。ウォールクロックアニメーションやシードなしのランダム性を導入しないでください。
  • Canvas2Dストリップメッシュは、ブラウザの3Dコンポジット問題の入れ子を回避します。フラットページの高速パス、小さなストリップオーバーラップ、連続照明オーバーレイを維持します。ストリップごとのアンチエイリアスシェーディングは、テキスト全体に可視の線を作成します。
  • カメラ距離3000は、持ち上げられたページの先端を1080pフレーム内に収めます。カメラまたはページサイズの変更後、フルターンエンベロープを再確認します。
  • デフォルトのレンダラーは画像をトリミングせずにフィットさせます。ランドスケープスクリーンショットがサポートされています。ポートレートアスペクト比に引き伸ばさないでください。
  • デフォルトでシーケンシャルにレンダリングします。並行処理を増やすには、キャプチャされたフレームの別の視覚的チェックが必要です。

パッケージのオリジナルコードはMITライセンスです。Remotionとメディアは別個のライセンスを持ちます。THIRD_PARTY_NOTICES.mdを参照してください。このスキルは、ユーザーアセットの公開、アップロード、アカウント設定の変更、または自身のグローバルインストールを許可しません。

ライブラリを拡張する

別のエフェクトを追加するよう求められた場合は、拡張コントラクトに従ってください。既存のテンプレートを置き換えるのではなく、レンダラー、レジストリエントリ、および例を追加します。新しいエフェクトと関連する既存テンプレートの両方を検証します。

関連スキル