完全版設計書を見る(全12工程・プロンプト・チェックリスト)

SEO記事戦略レポート:3フェーズワークフロー

フェーズ1 準備

メインキーワード受け取り → 上位10サイト取得 → 分析起点設定

フェーズ2 分析

関連キーワード抽出 → 競合順位調査 → マトリックス作成 → 検索意図特定 → 中間レポート作成

フェーズ3 記事設計

競合分析 → 差別化切り口発見 → 追加調査 → 記事ストーリー設計 → SEO記事戦略レポート完成

0 【人間】キーワード選定
→
1 Start(キーワード入力)
→
2 Search(上位10サイト取得)
→
3 Extract(競合本文抽出)
→
4 Gemini(クエリ分析・ペルソナ深掘り)
→
5 GPT-4/Claude(共起語・関連キーワード抽出)【心臓部】
→
6 Claude/GPT-4(競合分析・差別化切り口発見)
→
7 GPT-4/Claude(アウトライン生成)
→
8 Gemini(一次情報追加・知識ギャップ解消)
→
9 Claude→GPT-4(本文生成・10重チェック指示)
→
10 Gemini/GPT o3-mini(ファクトチェック)
→
11 GPT-4(最終リライト・品質向上)

① Start ノード(ユーザー入力)

ワークフローの開始点、ユーザーからの入力を受け取る

入力変数設定

keyword
string
例:「派遣法 教育訓練 義務化」
persona
string (optional)
例:「派遣会社 教育担当」
article_type
enum
例:「解説」/「比較」/「事例」

⓪【人間作業】キーワード選定

問い合わせ獲得・CV目的に基づいたキーワード決定

作業内容

  • 目的の明確化:問い合わせ獲得、資料DL、認知拡大など
  • ターゲット設定:誰に向けた記事か(例:派遣会社の教育担当者)
  • キーワード選定:検索ボリューム、競合性、CVへの距離を考慮
  • 記事タイプ決定:悩み解決型 or 情報提供型
  • クエリの確認:Google検索窓のサジェストキーワード確認

決定事項

  • メインキーワード:1つに絞る(SEO原則)
  • 記事の方向性:問い合わせまでの導線設計
  • ペルソナ想定:読者像の仮説

プラグイン設定

検索プラグイン(Dify内蔵 or 外部API)
検索クエリ {{keyword}}
検索件数 10件

出力変数

search_results タイトル/URL/スニペット一覧(10件)

③ Extract ノード(本文抽出)

競合記事の詳細コンテンツを取得

プラグイン設定

Scrape as Markdown
入力URL {{search_results.urls}}

出力変数

competitor_articles 各記事の本文(Markdown形式)

④ Gemini ノード(クエリ分析・ペルソナ深掘り分析)

検索クエリを分析し、Question(検索意図)を明確化

モデル設定

Gemini Pro

プロンプト例

あなたはSEOエキスパートです。
キーワード「{{keyword}}」をGoogle検索窓に入れた際のサジェストクエリと、上位10記事を分析し、
検索者の「Question(疑問・検索意図)」を明確化してください。

【作業手順】
1. 検索クエリサジェスト分析
   - Google検索窓に表示されるサジェストキーワードを確認
   - 関連性の高いクエリの傾向を把握

2. ペルソナ深掘り
   - このキーワードで検索する人の具体像(職種、課題、目的)
   - 検索者が真に知りたいこと(Question)

3. Question の明確化
   - 「何を知りたいのか」を一文で表現
   - 検索者の疑問を段階的に分解(疑問A → 疑問B → 疑問C)

【重要】
- QuestionとAnswerのズレがないことが良質記事の条件です
- 検索者の疑問を正確に捉え、後続のAnswer作成に繋げます

【出力形式】JSON
{
  "query_suggestions": ["サジェスト1", "サジェスト2", ...],
  "persona_profile": "具体的なペルソナ像",
  "core_question": "検索者の中心的な疑問(一文)",
  "question_breakdown": ["疑問A", "疑問B", "疑問C"],
  "tone_guideline": "推奨トーン・文体"
}

入力: {{keyword}}, {{competitor_articles}}

出力変数

query_suggestions[] 検索サジェストクエリ
core_question 検索者の中心的疑問(Question)
persona_profile 具体的ペルソナ像
tone_guideline 推奨文体・トーン

⑤ GPT-4/Claude ノード(共起語・関連キーワード抽出)【心臓部】

Questionに対する的確なAnswerを作成するための材料抽出

モデル設定

GPT-4(推奨) or Claude 3.5 Sonnet

プロンプト例

あなたはSEOエキスパートです。
この工程は「心臓部」です。Questionに対する的確なAnswerを作成するため、
競合記事から「共起語」と「関連キーワード」を徹底抽出してください。

【作業手順】
1. クエリの確認(最優先)
   - Google検索窓のサジェストクエリ: {{query_suggestions}}
   - これらのクエリから、検索者のニーズを把握

2. 共起語の抽出
   - 競合10記事で頻出する単語・フレーズを抽出
   - AND検索なのかOR検索なのかを判断
   - 全記事共通の共起語を優先(重要度高)

3. 関連キーワードの抽出
   - メインキーワード「{{keyword}}」の類義語・関連語
   - 見出しパターンの分析
   - FAQ・よくある疑問の整理

4. Answer準備
   - 上記の材料を用いて「Question: {{core_question}}」に答えられるか確認
   - 不足している論点・切り口を指摘

【重要原則】
✓ QuestionとAnswerのズレをなくす
✓ 競合が見落としている論点を発見する

【出力形式】JSON
{
  "kyoki_words": ["共起語1", "共起語2", ...],
  "related_keywords": ["関連KW1", "関連KW2", ...],
  "headings_patterns": ["見出しパターン1", ...],
  "faqs": ["FAQ1", "FAQ2", ...],
  "missing_topics": ["競合が見落としている論点1", ...],
  "sources": ["URL1", "URL2", ...]
}

入力: {{keyword}}, {{core_question}}, {{query_suggestions}}, {{competitor_articles}}

出力変数

kyoki_words[] 共起語(頻出単語・フレーズ)
related_keywords[] 関連キーワード
headings_patterns[] 競合見出しパターン
faqs[] よくある質問
missing_topics[] 競合の見落とし論点

⑥ Claude/GPT-4 ノード(競合分析・差別化切り口発見)

競合の強み・弱みを整理し、情報のフレッシュネスと独自の切り口を発見

モデル設定

Claude 3.5 Sonnet(推奨) or GPT-4

プロンプト例

あなたはSEOエキスパートです。
競合分析から差別化戦略を策定してください。

【最重要】差別化の2大要素
1. 情報のフレッシュネス(最新性)を最優先で考慮
2. 競合が見落としている論点・切り口の発見(必須)

【分析材料】
- 競合記事: {{competitor_articles}}
- 検索意図(Question): {{core_question}}
- ペルソナ: {{persona_profile}}
- 共起語: {{kyoki_words}}
- 見落とし論点: {{missing_topics}}

【分析内容】
1. 各競合記事の強み・弱みを整理
2. 【必須】競合が見落としている論点・切り口を発見
3. 【最優先】情報のフレッシュネス分析
   - 最新データは引用されているか?
   - 法改正・制度変更は反映されているか?
   - 競合記事の更新日時は?
4. ペルソナにとって最も価値のある差別化要素を特定
5. 読者の疑問を解決しやすい記事ストーリーの方向性を提案

【出力形式】JSON
{
  "competitor_analysis": {
    "strengths": ["競合の強み1", "競合の強み2"],
    "weaknesses": ["競合の弱み1", "競合の弱み2"]
  },
  "freshness_analysis": {
    "latest_data_found": "最新データの有無",
    "update_dates": ["競合記事の更新日"],
    "freshness_opportunity": "フレッシュネスで勝てるポイント"
  },
  "differentiation_opportunities": ["差別化切り口1", "差別化切り口2"],
  "story_direction": "記事ストーリーの方向性"
}

入力: {{keyword}}, {{core_question}}, {{competitor_articles}}, {{kyoki_words}}, {{missing_topics}}

出力変数

competitor_analysis 競合の強み・弱み分析
freshness_analysis 情報のフレッシュネス分析
differentiation_opportunities 差別化切り口(必須)
story_direction 記事ストーリー方向性

⑦ GPT-4/Claude ノード(戦略的アウトライン生成)

差別化戦略を反映した記事構成を作成し、タイトル・見出し案を生成

モデル設定

GPT-4(推奨) or Claude 3.5 Sonnet

プロンプト例

あなたはSEO戦略レポート作成のエキスパートです。
差別化戦略を反映した、読者の疑問解決に特化した記事アウトラインを作成してください。

【戦略的要素】
- 検索意図: {{core_search_intent}}
- ペルソナ: {{persona_profile}}
- 差別化切り口: {{differentiation_opportunities}}
- 記事ストーリー方向性: {{story_direction}}
- 競合見出しパターン: {{headings_patterns}}
- FAQ: {{faqs}}

【アウトライン作成要件】
1. 競合にはない独自の切り口を盛り込む
2. ペルソナの疑問を段階的に解決する構成にする
3. 検索意図を満たしつつ、差別化要素を強調する
4. タイトル案も複数提案する

【出力形式】
{
  "title_options": ["タイトル案1", "タイトル案2", "タイトル案3"],
  "outline": [
    {"level": "H1", "text": "見出し"},
    {"level": "H2", "text": "見出し"},
    {"level": "H3", "text": "見出し"}
  ],
  "knowledge_gaps": ["不足情報1", "不足情報2"],
  "unique_value_props": ["独自価値1", "独自価値2"]
}

出力変数

outline[] 記事アウトライン
title_options[] 戦略的タイトル案
knowledge_gaps[] 不足している論点(ループ判定用)
unique_value_props[] 記事の独自価値提案

⑧ Loop ノード(一次情報追加・知識ギャップ解消)

信頼性の高い一次情報を組み込み、知識ギャップを徹底的に解消

ループ条件

knowledge_gaps.length > 0
かつ
loop_count < 3

ループ内処理(最重要)

1 【最優先】一次情報の組み込み
- 国・銀行・公的機関の最新データ
- 信頼性が高く鮮度のある情報を優先
- 法規・政策・ガイドラインの引用
2 追加調査項目での再Search → Extract → 分析
3 差別化要素を強化し、アウトライン更新
4 knowledge_gaps を再評価(ゼロになるまで繰り返し)

一次情報収集プロンプト

【一次情報収集プロンプト】

[入力されたキーワード]に関する一次情報を以下の条件で収集してください。

### 収集する情報の種類:
1. 公的機関の統計データ・調査結果
2. 学術論文・研究報告書
3. 業界団体の公式発表・レポート
4. 政府機関の政策・ガイドライン
5. 大手企業の公式プレスリリース・決算報告
6. 専門家・有識者の公式見解(インタビュー記事など)

### 情報収集の条件:
- 過去2年以内の最新情報を優先
- 日本語情報を中心に、必要に応じて英語情報も含める
- 出典元のURLと発表日を必ず明記
- 情報の信頼性を3段階で評価(高・中・低)

### 出力形式:
各情報について以下の形式でまとめてください:

**情報タイトル**
- 情報源:[組織名/著者名]
- 発表日:[YYYY年MM月DD日]
- URL:[リンク]
- 信頼性:[高/中/低]
- 要約:[100文字程度で要点をまとめる]
- SEO活用ポイント:[この情報をどのように記事に活用できるか]

⑨ Claude→GPT-4 ノード(本文生成・10重チェック指示)

Claude で正確なドラフト生成 → GPT-4 で表現をブラッシュアップ

モデル設定

Claude 3.5 Sonnet(ドラフト) → GPT-4(ブラッシュアップ)

プロンプト例

あなたはSEOエキスパートです。
以下の条件で、QuestionとAnswerのズレがない高品質なSEO記事本文を作成してください。

【最重要原則】
✓ QuestionとAnswerのズレをゼロにする
✓ 情報をスキップしない(10重チェック指示)

【記事戦略】
- Question(検索意図): {{core_question}}
- ペルソナ: {{persona_profile}}
- トーン: {{tone_guideline}}
- 共起語: {{kyoki_words}}
- 差別化切り口: {{differentiation_opportunities}}
- 一次情報: {{primary_sources}}

【本文作成要件】
1. 【最優先】QuestionとAnswerのズレをなくす
   - 検索者の疑問に対して、的確に回答する
   - 不要な情報を入れない、必要な情報を漏らさない

2. 競合記事の文字数を参考にボリューム調整
   - 通常3,000〜10,000文字の範囲
   - 内容が薄い記事を長く書かない
   - 簡潔に解決できることは簡潔に

3. 一次情報(最新データ)を必ず組み込む
   - 国・公的機関・銀行等の信頼できるデータ
   - 引用元URLを明記

4. 【重要】10重チェック指示
   - 出力前に、提供した知識データを10回チェックする
   - スキップ厳禁:AIが勝手に省略しないよう徹底
   - 時間がかかっても確実性を優先

5. 出力はMarkdown形式(H1/H2/H3見出し、箇条書き使用)

アウトライン: {{outline}}
競合記事の平均文字数: {{avg_word_count}}

出力変数

draft_article 記事ドラフト(Markdown形式・10重チェック済み)

⑩ Gemini/GPT o3-mini ノード(ファクトチェック)

Gemini推奨(最新情報検証) / GPT o3-miniはオプション

モデル設定

Gemini Pro(推奨) or GPT o3-mini(オプション)

ファクトチェックプロンプト

【ファクトチェックプロンプト(GPT o3/o4用)】

【目的】
この記事の全文をファクトチェックしてください。
あらゆる手段を尽くして、以下の手順に従って進めてください。

【手順】
1. 記事を精読し、含まれる主張・数値・引用などの「事実」を一つずつ抽出してください。
2. 抽出した事実ごとに調査を行い、「真実」「虚偽」「不明瞭」のいずれかを判定してください。
3. 各事実について、信頼性の高い独立した情報源を最低3件探し、判定の根拠として示してください。
   ※学術論文、政府・公的機関、一次資料、主要報道などを優先

【出力形式】
以下の3セクションに分けて一覧化してください。

■ 真実
・事実A|簡潔な根拠説明|参考: 媒体名, 媒体名, 媒体名
・事実B|...

■ 虚偽
・事実C|簡潔な根拠説明|参考: 媒体名, 媒体名, 媒体名

■ 不明瞭
・事実D|判断に足る公開情報が不足|参考: 媒体名, 媒体名, 媒体名

【補足ルール】
・「不明瞭」の判定基準は「公開情報が乏しい」「一次資料間で結論が分かれる」など、どちらとも確定できない場合とします
・引用元は必ず媒体名にリンクを埋め込むこと(URLは本文に表示しない)
・判定プロセスで矛盾や疑義が見つかった場合は、メモとして指摘し、調査を継続してください
・箇条書きには必ず「・」を使用し、Markdownの「-」「*」などの自動変換記号は使わないでください

入力記事: {{draft_article}}

出力変数

fact_check_report ファクトチェック結果(真実/虚偽/不明瞭)
corrected_article 修正済み記事

⑪ GPT-4 ノード(最終リライト・品質向上)

文体統一・トーン調整・冗長表現削除で読みやすさを向上

モデル設定

GPT-4(推奨)

プロンプト例

以下の記事を読みやすくブラッシュアップしてください。

【リライト要件】
- 冗長表現を削除
- 文末を敬体で統一
- 読者が理解しやすいように箇条書きを追加
- FAQは会話調に調整
- 段落構成を最適化
- ペルソナ「{{persona_profile}}」に合わせたトーン調整

入力: {{corrected_article}}

出力変数

final_article 最終調整済み記事

最終出力

完成記事(Markdown) {{final_article}}
メタ情報 title/desc/slug/OG案
ファクトチェック結果 {{fact_check_report}}
差別化戦略 {{differentiation_opportunities}}
一次情報ソース {{primary_sources}}
内部リンク候補 {{sources}}

実装のポイント

エラーハンドリング

各ノードでタイムアウトやAPI制限に対する適切なエラーハンドリングを実装する

パフォーマンス最適化

並列実行可能な部分は並列化し、処理時間の短縮を図る

セキュリティ

APIキーは環境変数で管理し、ログに機密情報が残らないよう注意

設定の柔軟性

プロンプトやパラメータは外部設定ファイルで管理し、調整しやすくする