geo-report-pdf について
geo-report-pdfは、pandocとヘッドレスChromeでGEO監査のMarkdownレポートを整形済みPDFに変換するスキルです。監査資料をまとめるユーザー向けに、テンプレートでメタデータやスコア、各セクションの表示を整えます。
主な機能
- 01GEO監査MarkdownのPDF変換
- 02レポート表紙メタデータの抽出
- 03スコア表セルの色分け
- 04重要度に応じた指摘のスタイル設定
- 05セクションごとの改ページ
- 06テンプレートとCSSのカスタマイズ
活用シーン
- 01GEO-AUDIT-REPORT.mdのPDF化
- 02共有用の監査結果の作成
- 03レポートの色とページ構成の調整
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ zubair-trabzada/ geo-seo-claude --skill geo-report-pdfインストール後、Claude Code で/geo-report-pdfを入力して読み込まれたか確認します。
詳細
GEO PDF レポート生成ツール(pandoc パイプライン)
前提条件
- pandoc —
brew install pandoc - Google Chrome —
/Applications/Google Chrome.app/にインストールされている必要があります
Python の依存関係はありません。ReportLab は使用しません。JSON データの加工も不要です。
仕組み
- 現在のディレクトリにある
GEO-AUDIT-REPORT.md(/geo auditによって作成)を読み込みます - レポートから表紙のメタデータ(ブランド名、ドメイン、GEO スコア、日付、所在地)を抽出します
- 同梱の CSS と HTML テンプレートを使って
pandocを実行し、自己完結型のGEO-REPORT.htmlを生成します - Chrome をヘッドレスで実行し、HTML を
GEO-REPORT.pdfに出力します
pandoc テンプレート(~/.claude/skills/geo/templates/geo-report-template.html)には、次の内容が挿入されます。
- GEO スコアバッジを備えた、ページ全体に広がる濃紺の表紙セクション
- セクションごとの表紙メタデータ(日付、事業種別、所在地、プラットフォーム)
- 印刷前に Chrome 内で実行され、スコアセルに色を付け、指摘事項のセクションに重大度タグを付ける JavaScript
ワークフロー
ステップ 1:監査レポートを確認する
現在のディレクトリに GEO-AUDIT-REPORT.md があるか確認します。存在しない場合は、まず /geo audit <url> を実行するようユーザーに伝えます。
ステップ 2:レポートから表紙のメタデータを抽出する
GEO-AUDIT-REPORT.md の冒頭を読み込み、次の項目を抽出します。
| フィールド | 確認する場所 |
|---|---|
brand_name | 最初の H1 タイトル(「GEO Audit Report:」の後) |
domain | 2 行目の太字の行(例:**Domain:** alexamediasolutions.com) |
geo_score | ## Overall GEO Score: XX / 100 に一致する行 |
score_label | 同じ行のスコアの後にある単語(例:「Poor」、「Fair」、「Good」) |
date | **Audit Date:** の行 |
business_type | **Business Type:** の行 |
locations | **Locations:** の行 |
platform | **CMS:** の行 |
ステップ 3:pandoc を実行する
pandoc GEO-AUDIT-REPORT.md \
--to html5 \
--standalone \
--embed-resources \
--template ~/.claude/skills/geo/templates/geo-report-template.html \
--css ~/.claude/skills/geo/templates/geo-report-style.css \
--metadata title="GEO Audit Report — <brand_name>" \
--metadata brand_name="<brand_name>" \
--metadata domain="<domain>" \
--metadata geo_score="<geo_score>" \
--metadata score_label="<score_label>" \
--metadata date="<date>" \
--metadata business_type="<business_type>" \
--metadata locations="<locations>" \
--metadata platform="<platform>" \
-o GEO-REPORT.html
<field> プレースホルダーを、ステップ 2 で抽出した値に置き換えます。レポートにフィールドが見つからない場合は、該当する --metadata フラグを省略します。テンプレートには適切なデフォルト値が設定されています。
ステップ 4:Chrome をヘッドレスで実行する
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--headless=new \
--disable-gpu \
--no-sandbox \
--print-to-pdf="$(pwd)/GEO-REPORT.pdf" \
--print-to-pdf-no-header \
--no-pdf-header-footer \
--virtual-time-budget=5000 \
"file://$(pwd)/GEO-REPORT.html"
ステップ 5:完了を報告する
ユーザーに次の内容を伝えます。
GEO-REPORT.pdfが現在のディレクトリに生成されたこと- ファイルサイズ
- 任意で、プレビューするには
open GEO-REPORT.pdfを実行すること
PDF の内容
- 表紙 — 濃紺のグラデーション、ブランド名、ドメイン、GEO スコアバッジ(スコアに応じて色分け)、監査日、事業種別、所在地、CMS プラットフォーム
- スコア表 —
XX/100を含むセルを色分けします:≥80 は緑、≥65 は青、≥50 は琥珀色、≥35 はオレンジ、<35 は赤 - 指摘事項のセクション — 「Critical / High / Medium / Low」を含む
h3見出しに、重大度に応じた色の左枠線付きコールアウトブロックを適用します(赤/オレンジ/黄/緑) - セクションの改ページ — 主要なセクション(High Priority、90-Day Roadmap、Component Score Summary、Generated Schema)は自動的に新しいページから始まります
- コードブロック — JSON スキーマテンプレートをダークテーマの等幅フォントで表示します
- ページフッター — ブランド名 · GEO Audit · 日付とページ番号(CSS
@pageによる)
レポートのカスタマイズ
- 色/タイポグラフィ —
~/.claude/skills/geo/templates/geo-report-style.cssを編集します - 表紙のレイアウト —
~/.claude/skills/geo/templates/geo-report-template.htmlを編集します - 色分けのスコアしきい値 — テンプレートの
<script>ブロックにあるscoreColor()関数を編集します - 改ページを適用するセクション — テンプレートの
<script>ブロックにあるbreakBefore配列を編集します
トラブルシューティング
| 問題 | 解決方法 |
|---|---|
pandoc: command not found | brew install pandoc |
| Chrome が見つからない | パスを確認します:/Applications/Google Chrome.app/Contents/MacOS/Google Chrome |
| PDF が空白/空 | --virtual-time-budget を 8000 に増やします |
| 表紙のメタデータがない | GEO-AUDIT-REPORT.md が標準のヘッダー形式になっているか確認します |
| フォントが読み込まれない | PDF はオフラインでレンダリングされるため、システムフォントがフォールバックとして使われます。これは想定された動作です |
コメント
Markdown 対応