Communitygithub.com

サイトアップグレード (site-upgrade)

企業、製品、または個人のウェブサイトを、真実に基づいたプレミアムなサイトにエンドツーエンドでアップグレードします。実際に真実であることを監査し、ブランド自身の素材からデザインの方向性を導き出し、1~2のシグネチャーモーメント(モーション、ライブプロダクトデモ、オプションの3D)を構築し、確実に配信される問い合わせフォームを配線し、SEO、ソーシャルカード、ウェブ標準を実装し、実際のブラウザで検証してスコア付きの自己批評を行い、レビュー可能なPRとして成果を納品します。マーケティングサイトやプロダクトサイト、企業サイトなどに対応します。

サイトアップグレード (site-upgrade) とは?

site-upgradeは、AIエージェント(Claude Code等)向けに設計された、既存のウェブサイトを「組み立てられただけの状態」から「オーナーが誇りに思える状態」へと変革するためのスキルです。本スキルは、実際に成功したアップグレード案件(モバイルアプリのマーケティングサイト、B2Bクラウド企業のサイト、ヘルプセンターなど)から抽出された方法論、レシピ、そして注意すべき落とし穴を提供します。 このスキルの核心は「真実がデザインに優先する」という原則です。サイト上のあらゆる主張(数値、価格、機能)は、製品コードや法務テキストなど、検証可能な情報源にまで遡れる必要があり、「不明」は有効な回答として扱います。デザインはブランド自身の素材(ロゴ、プロダクトUI、動画)から導き出され、生成物に見える「お約束」の表現は避けられます。 ワークフローは8つのフェーズ(キックオフ、ディスカバリー、方向性策定、静的ビルド、モーションとシグネチャー、問い合わせ/コンバージョン、SEO/標準検証、検証/批評、出荷)で構成され、各フェーズごとに詳細なリファレンスドキュメントが用意されています。最終的な成果物は、チームがレビューできるPRとして納品され、スコア付きの自己批評とbefore/afterレポートが添付されます。 主な対応プラットフォームはNext.js、React、Tailwind CSS、GSAPですが、手法の大部分はAstro、SvelteKit、Nuxt、プレーンなHTMLにも適用可能です。また、サイト内の生成物特有の兆候や捏造された証拠をスキャンするスクリプト(slop-scan)、サーバーサイドレンダリングの監査スクリプト(ssr-audit)、Playwrightを使用したブラウザ検証スクリプトなど、多数の実用的なスクリプトが付属しています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/vvhybe/skills/tree/HEAD/skills/site-upgrade

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

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

ドキュメント

サイトアップグレード (Site Upgrade)

組み立てられただけのように見えるサイトを、オーナーが誇りに思えるサイトに変えるための手法です。実際に出荷され、オーナーやそのチームから高評価を得た実際のアップグレード案件(モバイルアプリのマーケティングサイト、2つの全く異なる方向性で進められたB2Bクラウド企業のサイト、ゼロから構築されたヘルプセンター)から抽出されました。方法、レシピ、および落とし穴を再利用してください。見た目を再利用してはいけません。すべてのサイトは、自身のブランド、製品、およびオーディエンスから方向性を導き出します。

「完了」の定義

以下のすべてが満たされた場合にのみ、アップグレードは完了とみなされ、それ以前ではありません。

  • サイト上のすべての主張が、名前を挙げられる情報源(製品コード、法的テキスト、課金システム、またはオーナーからの書面による回答)に遡れること。
  • デザインがブランド自身の素材から来ており、そのアイデアが競合他社テストに合格すること (direction.md)。
  • 訪問者が見たり実行したりする1つまたは2つのシグネチャーモーメントがあること。それ以外はすべて規律正しくあること。
  • モーションがなくても見えるものが必要ないこと。モーション削減設定では、最終状態が表示されること。
  • 実際のブラウザで、1440px、1920×710px、390px、320pxの各幅、すべてのテーマ、モーション削減設定で、プロダクションビルドに対してチェックされていること。
  • あなたの書面による批評が、9/10以上のスコアを付けているか、またはレポートがどこが不足しているかを明確に述べていること (critique.md)。
  • チームがレビューできるPRとして納品され、チームがコピー&ペーストできる短いアップデートが添付されていること。

基本ルール

  1. デザインよりも真実を優先する。 すべての機能、数値、価格、提供開始日、および社会的証明は、情報源に遡らなければなりません。製品自体のオンボーディングやペイウォールのコピーは、多くの場合、過剰に約束します。コードで確認してください。「不明」は有効な回答です。そのスロットをオプションにして質問し、もっともらしい数字で埋めてはいけません。捏造された証拠は削除してください。
  2. ブランドが見た目を決定する。 パレット、タイポグラフィ、およびシグネチャーデバイスは、ブランド自身の素材(ロゴ、名前、製品UI、動画、場所)から導き出します。生成物であると見なされるデバイス (tells.md) は、ブランドの素材またはオーナーがそれをそこに置き、方向性契約がそれを明記している場合にのみ許可されます。
  3. 製品が主役である。 実際のUIと実際のアーティファクトは、アイコン、ストック3D、抽象表現よりも優れています。デモは実際のもののように見えます。実際のA4インベントリ、実際のレンダリングされたテンプレート、実際のカタログです。
  4. ウェブサイトであって、スライドデッキではない。 それぞれがフェードインする、中央揃えの見出しと画像ブロックの積み重ねは避けてください。コンポジション、固定スクロールストーリー、レイヤードデプス、インタラクティブデモ、ステート駆動型モーションを使用してください。
  5. モーションの背後にコンテンツを隠さない。 決して発火しないリビールは、空白のページを残します。prefers-reduced-motion を尊重し、最終状態を表示してください。
  6. オーナーはループ内に、邪魔にならないように。 フルビルドの前に方向性を示してください。最初にホームページを行い、承認されたら他のページに広げてください。未解決の質問はそれぞれ1回、選択肢とともに尋ね、その周りで構築を続けてください。
  7. 設定は値を保持する。 環境変数はURL、ID、またはトークンを運びます。オン/オフスイッチやハードコードされた定数は運びません。依存する値はそれらから導き出します。.env.example のみをコミットしてください。
  8. ターゲットリポジトリに従う。 そのREADME、CONTRIBUTING、AGENTS.md、commitlint設定を読んでください。そのパッケージマネージャーを使用してください。そのフレームワークのバージョン(Next 14 vs 16、Tailwind 3 vs 4、React 18 vs 19)に合わせてください。
  9. 秘密情報と内部情報は外部に出さない。 オーナーが貼り付けたトークンを印刷、コミット、またはエコーしてはいけません。公開コミットとPRには、クライアント名、非公開価格、または未修正のセキュリティギャップを含めないでください。
  10. 9/10未満で完了と呼んではいけない。 報告する前に、スクリーンショットから作業をスコアリングしてください。「完了」後に提供された6または7の自己評価は、作業がスキップされた証拠です。

最初に、モードを選択する

訪問者が何をするために来たのかが、デザインがどこまで進んでよいかを決定します。1つのプロジェクトが異なるモードで複数のサーフェスを保持できます。それぞれに独自のモードを与えてください。

モードサーフェス訪問者何がリードするか読むべきもの
説得 (Persuade)プロダクト、マーケティング、企業、キャンペーン、価格決定し、行動する製品がそれ自体を証明すること。最初の画面での実際のアクションbuilding-blocks.md
読む (Read)ヘルプセンター、ドキュメント、チェンジログ、ブログ何かを理解する読者の質問。ブランドはフレームを所有し、読書コラムは所有しないread-mode.md
体験 (Experience)ポートフォリオ、ショーケース、ギャラリー作品を探求する作品自体。最初のビューポートからbuilding-blocks.md § 体験

プロダクトのマーケティングサイトは、アプリを表示していても「説得」モードです。そのヘルプセンターは、美しくても「読む」モードです。

ワークフロー

フェーズを順番に進めてください。各フェーズに到達したときに、対応するリファレンスを読んでください。それより前に読んではいけません。

フェーズ作業読むべきもの
0. キックオフデフォルトブランチからブランチを作成し、開発サーバーを起動し(実際のポートをメモ)、レポート用の「ビフォア」セットをキャプチャするverification.md § 1
1. ディスカバリーサイトを監査し、真実の情報源を見つけ、クレーム台帳とサブジェクトインベントリを作成し、ブランド素材を収集し、所見を報告するdiscovery.md
2. 方向性アイデアを見つけ、競合他社テストに合格させ、パレットとタイポグラフィを設定し、シグネチャーモーメントを選び、方向性契約を書き、それを示すdirection.md、tells.md
3. 静的に構築するトークン、ヒーロー、実際のコンテンツを使った各幕、内部ページ。頭の中ではモーションをオフにするbuilding-blocks.md、media.md、read-mode.md
4. モーションとシグネチャー1つの振り付けされたイントロ、ステート駆動型モーメント、シグネチャー。3Dは、その場所に値する場合のみmotion.md、three-d.md
5. 問い合わせとコンバージョン共有バリデーション、フォーム、エッジルート、デザインされた通知メール、予約またはリードの事前入力contact-email.md
6. SEOと標準サーバーレンダリング、メタデータ、ソーシャルカード、構造化データ、クローラーファイル、ヘッダー。それ自体の積み重ねられたPRseo-standards.md
7. 検証と批評すべての幅とテーマでのブラウザループ、スクリプト化されたチェック、プロダクションビルド、次にスコア付き批評(最大3ラウンド)verification.md、critique.md
8. 出荷コミット、PR、チームアップデート、ビフォア/アフターレポート、DESIGN.md、メモリーノートdelivery.md

何かが奇妙に動作するときは gotchas.md をチェックしてください。オーナーが反応したときは feedback.md を読んでください。オーナーの言葉(「スパイスが足りない」、「色のバランスが悪い」、「安っぽいレプリカ」)を、何を変更すべきかに変換します。

デザイン方向性スキル(frontend-design、impeccable、taste-skill)がインストールされている場合は、フェーズ2でそれをロードして追加の範囲を取得してください。このスキルはそれなしでも自立しています。

スタック。 レシピはNext.js、React、Tailwind、GSAPで出荷され、Cloudflare Pagesでホストされ、スニペットはそのスタックを示しています。方法、チェック、およびほとんどのスクリプトはそれに依存していません。Astro、SvelteKit、Nuxt、またはプレーンなHTMLでは、ルールを維持し、レシピをターゲットの独自のフレームワークとバージョンに変換してください。

スクリプト

ターゲットリポジトリのルートから実行します。<skill> はこのスキルのフォルダです。

  • node <skill>/scripts/slop-scan.mjs [dir] [--json] [--strict] [--allow <rules>] [--list-rules]: 生成サイトの兆候、捏造された証拠、ジャンルコピー、デッドリンク、秘密情報、および既知の落とし穴についてソースをスキャンします。エラーがあると終了コード1で終了します(--strict の場合は警告でも終了します)。site-upgrade-allow: <rule> <reason> コメント(その下の行を次の空白行までカバーします)またはリポジトリルートの .site-upgrade-allow ファイルで、許可された例外を指定します。Node 18+、依存関係はありません。
  • <skill>/scripts/ssr-audit.sh <base-url> [path]...: ページごと(パスが指定されていない場合はすべてのサイトマップページ)に、ステータス、<h1> 数、JSON-LDブロック、カノニカル、ソーシャルイメージ、クライアントレンダリングベイルアウト、タイトルを確認。次にセキュリティヘッダーとクローラーファイルを確認します。ページが失敗すると終了コード1で終了します。プロダクションサーバーに対して実行してください。
  • <skill>/scripts/video-prep.sh <source> <out-dir> [name] [poster-second]: シーンカットをチャプター候補として出力し、各カットにキーフレームを持つサイレントWebエンコード、ポスター、および正方形のプレビュークリップを書き込みます。imageio_ffmpeg バイナリにフォールバックします。
  • <skill>/scripts/playwright/*.js: Playwright MCPの browser_run_code_unsafe ツール用です。MCPはワークスペース内のファイルのみを読み取るため、最初にコピーしてください(mkdir -p .playwright-mcp && cp <skill>/scripts/playwright/*.js .playwright-mcp/)。filename: ".playwright-mcp/<name>.js" を渡してください。.playwright-mcp/ をgitの管理下に置かないでください。
    • reveal-scroll.js: スクリーンショットの前にすべてのリビールが発火するようにスクロールし、その後も非表示のテキストをリストします。
    • page-audit.js: フレームを測定します。1つの <h1>、2行を超える見出し、小さなテキスト、小さなタップターゲット、名前のないコントロール、alt のない画像、タイトルのないセクション、テーマ設定されていないブラウザサーフェス。
    • overflow.js: 320pxから1440pxの範囲で水平スクロールの原因を見つけ、最も外側の原因を特定します。
    • console-scan.js: すべてのサイトマップURLを訪問し、コンソールエラー、ページエラー、失敗したリクエスト、4xx/5xx、CSP違反を報告します。

アセットとテンプレート

ターゲットリポジトリまたはスクラッチパッドにコピーして適応させてください。

  • assets/render-email.ts: エッジルート用に、react-dom/server を使わずにReact EmailテンプレートをHTMLにレンダリングします。
  • assets/JsonLd.tsx: 埋め込んでも安全なJSON-LDスクリプトタグ。
  • assets/ScrollTriggerRefresh.tsx: ページの高さが変わるたびにGSAPのスクロールトリガーを再測定します。
  • assets/templates/claims-ledger.md: 出荷済み、未出荷、不明、数値のそれぞれに情報源を付けて管理(フェーズ1)。
  • assets/templates/direction-contract.md: テーゼ、アイデア、独自の世界、最初のビューポート、シグネチャー、ブランド例外(フェーズ2)。
  • assets/templates/critique-round.md: スコア付き批評、ラウンドごとに1ブロック(フェーズ7)。
  • assets/templates/DESIGN.md: 構築されたデザインシステム。後続のエージェントがブランドを維持できるように、最後に記述(フェーズ8)。
  • assets/templates/team-update.md: チームチャット用のコピー&ペーストアップデート(フェーズ8)。

オーナーチェックポイント

これらに依存するものを公開する前に確認してください。選択肢とともに一度尋ね、ビルドを停滞させないでください。

  • ローンチステータスとストアの利用可能性。環境フラグではなく、実際のストアリストから確認。
  • 価格とプラン、およびその情報源。
  • 誰もまだソースを特定できない数字(稼働時間、データセンター、顧客数)。誰かが承認するまで除外してください。
  • 問い合わせ受信箱、およびオーナーがテスト用に読める受信箱。
  • リスト、カタログ、カルーセル内のまだリリースされていないアイテム。
  • 法的な事業者名、住所、電話番号。表示されるすべての場所で同一であること。
  • 訪問者データを受信する第三者(分析、埋め込み、フォント、メール)、およびそれに必要なプライバシーポリシーの行。
  • マスコット、3Dモデル、ビデオのソースファイル。再構築する前に入手してください。
  • すべてのプロダクション手順:ドメイン、DNS、デプロイ設定、移行。オーナーが実行または承認します。

関連スキル