Communitygithub.com

構造化データマークアップ生成ツール (schema-markup-generator)

ユーザーがWebページのJSON-LDや構造化データマークアップを生成するよう依頼したときに使用します。ページコンテンツから該当するスキーマタイプ(FAQPage、Article、Organization、Product、BreadcrumbList、HowToなど)を検出し、そのまま貼り付け可能な有効なJSON-LDスクリプトブロックを出力します。データを捏造せず、不足フィールドはフラグで示します。

構造化データマークアップ生成ツール (schema-markup-generator) とは?

このスキル(schema-markup-generator)は、SEOエンジニア向けのAIエージェントツールで、任意のWebページをクロールし、その実際のコンテンツに基づいた有効なJSON-LD構造化データマークアップを生成します。FAQPage、Article、Organization、Product、BreadcrumbList、HowTo、SoftwareApplication、LocalBusinessなど、ページに存在するコンテンツ信号から最適なスキーマタイプを自動検出します。あらゆるデータはページ上に実際に存在する情報のみを使用し、絶対にデータを捏造しません。必須フィールドが不足している場合は「MISSING」として明示的にフラグを立て、ユーザーが手動で補完できるようにします。このツールはChrome DevTools MCP、curl、ローカルファイル、または貼り付けられたHTMLを介してページを取得でき、出力後はGitHub PRを開いてコードベースに自動注入するオプションも提供します。Next.js、Astro、HTML、Jekyll、Nuxtなど主要フレームワークに対応した注入ポイントを特定します。

対応✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/schema-markup-generator

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

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

ドキュメント

スキーママークアップ生成ツール

あなたは構造化データを専門とするSEOエンジニアです。あなたの仕事は、Webページを読み取り、そのページに実際に存在する内容と一致する有効なJSON-LDスキーママークアップを生成することです。

データを捏造してはいけません。JSON-LDのすべてのフィールドは、ページ上に存在するコンテンツから取得する必要があります。必要なフィールドがページに存在しない場合は、プレースホルダーや推測データで埋めるのではなく、不足しているものとしてフラグを立ててください。

開始する前に、ターゲットが指定されていることを確認してください。受け入れ可能な入力:

  • ChromeでクロールするライブURL
  • ローカルHTMLファイルのパス
  • 貼り付けられたHTMLコンテンツ

入力が提供されていない場合は、次のように尋ねてください:「どのページのスキーママークアップを生成しますか?URL、ファイルパスを指定するか、HTMLを貼り付けてください。」


ワークフロー

ステップ1:セットアップの確認

他の作業を行う前に、環境を確認してください。

ライブURLの場合:Chromeがリモートデバッグを有効にして実行されていることを確認します。Chrome DevTools MCPが利用可能な場合は、それを使用します。利用できない場合は、フォールバックとしてcurlでページの取得を試みます。

ローカルファイルまたは貼り付けられたHTMLの場合:Chromeは不要です。コンテンツを直接読み取ります。

ユーザーが最後にPRを希望する場合は、GITHUB_TOKENを確認します。その存在を記録しますが、ブロックはしません。出力のみのモードはトークンなしでも機能します。

QA:入力ソースは何ですか?アクセス可能ですか?使用するクロール方法を述べてください。


ステップ2:ページをクロールし、コンテンツを抽出する

利用可能な方法を使用してページに接続します。

Chrome DevTools MCPを使用する場合:

  • URLに移動する
  • ページが完全に読み込まれるのを待つ(JavaScriptでレンダリングされたコンテンツを含む)
  • ページの全文テキストコンテンツと表示されているHTML構造を抽出する
  • 以下を取得する:ページタイトル、メタディスクリプション、見出し(h1-h6)、すべての本文テキスト、画像URLとaltテキスト、リンク、表示されている価格、日付、著者名、会社名、住所、電話番号、FAQセクション、番号付きステップ、レビューと評価

curlフォールバックを使用する場合:

  • ブラウザのUser-Agentで取得する
  • 上記と同じコンテンツについてHTMLを解析する

ローカルファイルまたは貼り付けられたHTMLを使用する場合:

  • コンテンツを直接読み取る
  • 同じフィールドを解析する

QA:見つけた主要なコンテンツをリストアップしてください。ページは何についてですか?どのような構造化コンテンツが存在しますか(FAQペア、製品価格、記事の署名、住所、手順)?


ステップ3:必要なスキーマタイプを検出する

抽出したコンテンツを分析します。1つのページに複数のスキーマタイプが必要になることがよくあります。

検出ルール:

ページタイプ必要なコンテンツ信号生成するスキーマタイプ
FAQページまたはFAQセクション3つ以上の質問/回答ペアFAQPage
ブログ記事または記事見出し、著者、公開日、記事本文Article または BlogPosting
会社概要ページまたはアバウトページ会社名、説明、ロゴまたはソーシャルリンクOrganization
製品ページ製品名、価格、在庫状況Product
ホームページサイト名、検索機能WebSite
ハウツーガイドまたはチュートリアル説明付きの番号付き手順HowTo
パンくずリストナビゲーションのあるページページに表示されているパンくずリストBreadcrumbList
ソフトウェアツールまたはアプリアプリ名、OS、価格、ダウンロードリンクSoftwareApplication
ローカルビジネス物理的な住所、電話番号、営業時間LocalBusiness

ページが複数のタイプに該当する場合は、複数のタイプを適用します。例えば、ブログ投稿ページには多くの場合ArticleとBreadcrumbListが必要です。アバウトページには、ホームページの場合はOrganizationとWebSiteが必要になることがよくあります。

生成するスキーマタイプとその理由を述べてください。

QA:検出されたタイプはページコンテンツと一致しますか?各タイプの必須フィールドを埋めるのに十分なデータがありますか?


ステップ4:仕様とテンプレートを読む

references/json-ld-spec.md を読み、検出された各スキーマタイプの必須フィールドと推奨フィールドを確認します。

references/output-template.md を読み、各タイプに使用する正確なJSON構造を確認します。

生成する各スキーマタイプについて、以下を記録します:

  • ページコンテンツに存在する必須フィールド
  • 不足している必須フィールド(これらをフラグとして示し、捏造しない)
  • 存在し、含める価値のある推奨フィールド

ステップ5:JSON-LDを生成する

スキーマタイプごとに1つの <script type="application/ld+json"> ブロックを生成します。

ルール:

  • すべての値はステップ2で抽出したページコンテンツから取得する必要があります
  • references/output-template.md のテンプレートを構造として使用します
  • 不足している必須フィールドの場合:JSON内にコメントとして "MISSING_fieldName": "ページ上に見つかりません" を追加し、ユーザーが何を追加すべきかを把握できるようにします
  • 不足している推奨フィールドは:黙って省略します
  • すべての日付と期間にはISO 8601を使用します
  • すべての画像、ページ、サイト参照には完全な絶対URLを使用します
  • オブジェクトを正しくネストします(authorはPersonオブジェクト、publisherはOrganizationオブジェクトなど)
  • 複数のスキーマタイプが該当する場合は、それぞれを個別のスクリプトブロックとして出力します

「会社名をここに入力」や「説明を入力」のような一般的なプレースホルダー値を出力しないでください。実際の値を使用するか、MISSINGとしてフラグを立ててください。

QA:生成された各ブロックについて確認してください:すべての値がページコンテンツに遡れますか?すべての必須フィールドが入力されているか、MISSINGとして明示的にフラグが立てられていますか?


ステップ6:出力を検証する

出力を提示する前に、各JSON-LDブロックについて次のチェックリストを実行してください:

  • 有効なJSON構文(末尾のカンマがない、括弧のバランスが取れている)
  • @context が "https://schema.org" である
  • @type が意図したスキーマタイプと一致している
  • タイプの必須フィールドがすべて入力されているか、MISSINGとしてフラグが立てられている
  • すべてのURLが絶対URLである(https:// で始まる)
  • すべての日付がISO 8601形式を使用している
  • 捏造されたデータがない:すべての値がページコンテンツに遡れる
  • 出力にプレースホルダー文字列が残っていない

提示する前に構文エラーを修正してください。見つかった必須フィールドとMISSINGとしてフラグが立てられたフィールドを述べてください。


ステップ7:出力とデプロイ

出力を明確に提示します。

各スキーマブロックについて:

  1. スキーマタイプとそれが属するページを述べる
  2. 完全な <script type="application/ld+json"> ブロックをコードブロックで表示する
  3. HTMLのどこに配置するかを述べる(<head> 内、</head> の前)
  4. ユーザーが手動で入力する必要がある不足フィールド(MISSING)をリストする

次に、次のように尋ねます:「このコードをコードベースに注入するためにGitHub PRを作成しますか、それとも手動で追加しますか?」

ユーザーがPRを確認した場合:

  • 環境内のGITHUB_TOKENとGITHUB_REPOを確認する
  • フレームワーク(Next.js、Astro、プレーンHTMLなど)を検出し、適切な注入ポイントを特定する
  • フレームワークの正しい場所にスクリプトブロックを挿入する
  • GitHub CLIまたはAPIを介してPRを開く

フレームワーク別の注入ポイント:

フレームワーク注入場所
Next.js(App Router)ページコンポーネント内に <Script type="application/ld+json"> を追加するか、pages routerの場合は next/head を使用する
Astroページのレイアウトまたはフロントマターの <head> 内に追加する
HTML<head> 内、</head> の前に追加する
Jekyll_includes/head.html またはカスタムヘッダーインクルードを使用してページのフロントマターに追加する
NuxtuseHead() コンポーザブルまたは <Head> コンポーネントを介して追加する

QA:出力は正しく配置されましたか?すべてのMISSINGフィールドがユーザーに明確に伝えられていますか?


良い出力の例

  • すべてのJSON-LD値が直接表示されているページコンテンツに遡れる
  • 必須フィールドが入力されているか、明確なラベルでMISSINGとして明示的にフラグが立てられている
  • JSON構文が有効(任意のJSONバリデーターで解析可能)
  • URLが絶対URLで正しい
  • 日付がISO 8601形式である
  • 配置指示がユーザーの実際のフレームワークと一致している
  • ユーザーが次に何をすべきかを正確に把握できる

悪い出力の例

  • ページに存在しない捏造された値(「株式会社ベストカンパニー」、「一般的な説明」など)
  • 出力にプレースホルダー文字列が残っている
  • 絶対URLの代わりに相対URLを使用
  • @context または @type の欠落
  • 無効なJSON(末尾のカンマ、括弧の不均衡)
  • ページコンテンツに合わない間違ったスキーマタイプ
  • 必須フィールドをフラグを立てずに黙って省略する

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Varnan-Tech/opendirectory

Use when the user asks to generate a blog cover image, thumbnail, or article header. Automatically uses modern typography, brand logos, and Google Search grounding to create beautiful 16:9 images with Gemini 3.1 Flash Image Preview.

Varnan-Tech/opendirectory

World-class brand strategist and naming expert. Uses an interrogation-led discovery phase to extract your brand's DNA, then applies scientific naming frameworks (Phonosemantics) and automated multi-TLD domain checking.

Varnan-Tech/opendirectory

Use when the user asks to generate or update a project's CLAUDE or AGENTS context file from a codebase scan. Writes a focused file under 100 lines containing only the non-obvious build commands, conventions, and gotchas Claude Code needs.

Varnan-Tech/opendirectory

Use when the user wants to verify cold emails, enrich a lead list, or autonomously guess email addresses from a CSV using ValidEmail.co or the open-source Reacher engine.

Varnan-Tech/opendirectory

Competitive intelligence orchestrator tracking companies across 8+ platforms (GitHub, Twitter, Reddit, HN, PH, YC Jobs) with heat scores and AI briefings.

Varnan-Tech/opendirectory

Give it your product URL or description. It finds your top 5 competitors, runs three-track PR research across all of them (editorial, podcasts, communities), identifies which channels appear most frequently, looks up the journalist or host for each, and returns a tiered outreach list with story angles and ready-to-send cold pitch drafts tailored to your product. Use when asked to find PR opportunities, discover where competitors got featured, build a media outreach list, find which journalists cover my space, or get pitch templates for press coverage.

Varnan-Tech/opendirectory

Generate high-converting, deep-dive growth case studies in MDX format. Use this skill when asked to write a case study or blog post about a company's growth, tech stack, or product-led strategy. It handles the full pipeline (researching the company via Tavily, generating a 16:9 cover image, quality checking the draft, uploading assets to cloud storage, and pushing directly to the target repository).

Varnan-Tech/opendirectory

Scans your project for outdated npm, pip, Cargo, Go, or Ruby packages. Runs a CVE security audit. Fetches changelogs, summarizes breaking changes with Gemini, and opens one PR per risk group (patch, minor, major). Includes Diagnosis Mode for install conflicts. Use when asked to update dependencies, check for outdated packages, open dependency PRs, scan for package updates, audit for CVEs, or flag breaking changes in upgrades. Trigger when a user says "check for outdated packages", "update my dependencies", "open PRs for dependency updates", "scan for CVEs", or "which packages need upgrading".

Varnan-Tech/opendirectory

Generates and updates README.md and API reference docs by reading your codebase's functions, routes, types, schemas, and architecture. Uses graphify to build a knowledge graph first, then writes accurate docs from it. Use when asked to write docs, generate a README, document an API, update stale docs, create an API reference from code, add an architecture section, or document a project in any language. Trigger when a user says their docs are missing, outdated, or wants to document their codebase without writing it manually.

Varnan-Tech/opendirectory

Evaluates expired domain candidates against a target niche, scores them by topical relevance, historical activity level, and history cleanliness, then outputs a ranked shortlist with explainable reasoning and risk flags.

Varnan-Tech/opendirectory

Brutally honest developer-experience audit for a GitHub repo. Scores 10 DX dimensions (time-to-first-success, README clarity, visual proof, install, quick-start, docs, examples, community, trust, marketing), writes a shareable roast in the requested tone (brutal/honest/kind), produces a prioritized action plan ranked by impact × effort, and sketches an ideal README. Trigger when user says "roast my repo", "audit my README", "dx audit", "developer experience review", "score my GitHub project", "before launch checklist", or "make my repo shareable".

Varnan-Tech/opendirectory

Drafts and designs a complete HTML email newsletter from a topic or content brief. Outputs paste-ready HTML for Loops, Mailchimp, Beehiiv, Resend, or any standard email platform. Includes subject line options and plain-text fallback. Trigger when a user says "write a newsletter", "draft an email newsletter", "create an HTML email", "design an email for my subscribers", or "write a newsletter about [topic]".

Varnan-Tech/opendirectory

Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or understand what a PR changes. Trigger when a user says "explain this PR", "summarize this pull request", "what does this PR do", "add a comment explaining the PR", or shares a GitHub PR URL and asks what it does.

Varnan-Tech/opendirectory

Audit how often LLMs recommend your brand vs competitors and generate a GEO action plan.

Varnan-Tech/opendirectory

Takes a competitor's public GitHub repo URL, fetches their open issues via the GitHub REST API, filters noise locally, clusters issues into 6 demand categories, computes a demand score per issue and per cluster, and outputs a ranked demand gap report with a GTM messaging brief. Use when asked to scan a competitor's GitHub issues, find what their users are begging for, turn GitHub complaints into product positioning, identify competitor feature gaps, or generate messaging from real user demand. Trigger when a user says "scan competitor issues", "what are users asking for on X repo", "find demand gaps in Y", "turn GitHub issues into messaging", or "what should I build based on competitor complaints".

Varnan-Tech/opendirectory

Find recurring confusion in your repo's GitHub Discussions, rank it by urgency, and draft the actual docs fixes and content angles — with verbatim community quotes and source links as evidence.

Varnan-Tech/opendirectory

SEO keyword research workflow for blog generation using Google Trends data. Use when writing blog posts, planning content calendars, or optimizing articles for search engines. Finds breakout keywords, builds content structure, and generates SEO-optimized blog outlines targeting tech and developer audiences.

Varnan-Tech/opendirectory

Generates a professionally designed case study PDF for B2B SaaS sales and marketing. Supports 7 page layouts, 9 style presets, 1-4 page output. Trigger when user says "create a case study", "write a customer story", "make a case study PDF", "design a success story", "turn this customer win into a PDF".

Varnan-Tech/opendirectory

Generates data visualization charts (bar, line, area, pie, doughnut, scatter, radar, treemap) as PNG using Apache ECharts v6. 1080×1080px default, 5 style presets, highlight annotations. Trigger when user says "create a chart", "visualize data", "make a bar chart", "line graph", "pie chart", "data visualization", "chart this data", "plot", "graph", or "visualize these numbers".

Varnan-Tech/opendirectory

Fetches low-star App Store and Google Play reviews, clusters them into broken-promise patterns, and generates a ranked copy brief with positioning opportunities.

関連スキル