name: seo-search-console
craftgarden.studio 傘下の全プロダクトについて、SEO技術基盤の構築と Search Console による検索パフォーマンスの定量計測を一貫管理する。
責務の分界:
→ 詳細: references/architecture.md
| 項目 | 値 |
|---|---|
| ドメインプロパティ | sc-domain:craftgarden.studio |
| サービスアカウント | analytics-agent@craftgarden-488320.iam.gserviceaccount.com |
| 認証JSON | ~/.config/gcloud/service-accounts/craftgarden-analytics.json |
| レジストリ | ~/Dev/product-hub/scripts/config/gsc-registry.json |
| メトリクス出力 | ~/Dev/product-hub/packages/dashboard/public/data/gsc-metrics.json |
| GCP プロジェクト | craftgarden-488320 |
| 有効API | Search Console API, Site Verification API |
| DNS管理 | AWS Route 53 (Hosted Zone: Z02122701AQ4170J8PPI9) |
| ドメイン検証TXT | google-site-verification=jFj3prr4LgUjPdP0oWlCTCDGYltdeSCKgfFFFW3Vmko |
→ 詳細: references/registered-properties.md
→ スクリプト: scripts/gsc-commands.sh
cd ~/Dev/product-hub
pnpm collect:gsc # メトリクス収集
pnpm gsc:setup # プロパティ登録
pnpm gsc:sitemaps # サイトマップ提出
pnpm collect:monitoring # モニタリングスキャン
→ 詳細: references/metrics-guide.md
全 Web プロダクトに sitemap.ts, robots.ts, OG画像の3点セットを配備する。
→ テンプレート: references/template-seo-nextjs.md
sitemap.ts, robots.ts, OG画像を追加。commit & pushgsc-registry.json の properties にエントリ追加(→ references/example-registry-entry.json)pnpm gsc:setup(ドメインプロパティ verified 済みのためサブドメインは自動アクセス可能)pnpm gsc:sitemaps(HEAD リクエストで sitemap.xml の存在を確認後に提出)pnpm collect:monitoring → pnpm collect:gsc(初回データは2-3日後から蓄積)サービスアカウントによる DNS 自動検証は既知のバグ(503 backendError)で失敗する。対処法:
sites.add で URL プレフィックスを API 登録可能(追加の検証不要)/monitoring ページで以下を可視化:
判定ロジック: scan-monitoring.js は gsc-registry.json の登録状態で Search Console の enabled を判定(SEOファイル存在チェックではない)。SEOファイルの有無はダッシュボードの SEO フィルタで別途管理。
→ 詳細: references/analysis-patterns.md
→ 詳細: references/api-auth.md
sitemap.xml がデプロイ済みでないと提出できない(HEAD リクエストで200返却が必要)。Next.js の場合 src/app/sitemap.ts を配置してデプロイしてから再実行output: "export" の Next.js で sitemap.ts / robots.ts が動かない: 静的エクスポートプロジェクトでは export const dynamic = "force-static" が必要@next/third-parties のバージョン不整合: Next.js のメジャーバージョンと @next/third-parties のメジャーバージョンを揃える必要がある。Next.js 15 に対して v16 を入れるとビルドエラーになる