Claude Code WordPress 自動投稿の仕組みを体験記で解説【2026年】

ブログのアイキャッチ画像: ターミナル画面を中心に、Claude・Gemini・Codexのロゴを表すアイコンが連携して矢印でつながれており、最終的にWordPressのロゴに向かうフロー。モダンなダ IT技術

Claude Code WordPress 自動投稿の仕組みを作ってから、WordPress 記事の更新頻度が明らかに上がりました。そのため「どんな仕組みにしたの?」と聞かれることが増えてきたので、今回はその体験をまとめることにしました。ただし「AIに全部丸投げ」ではありません。Claude・Codex・Gemini を役割分担させ、WordPress REST API でつなぐマルチエージェント構成を、自分のブログ運用に合わせて育ててきた話です。関連カテゴリ: 生成AI活用の記事一覧

スポンサーリンク
  1. Claude Code WordPress 自動投稿で更新が捗るようになった
    1. 最初は「記事を書く時間」より「準備と投稿」が重かった
    2. 自動化して変わったのは速度だけではなく更新の心理的ハードル
    3. この記事で話すのは完成品の宣伝ではなく、自分用に育てた仕組み
  2. 仕組みの全体像は5層で考えるとわかりやすい
    1. スキル層: SKILL.md で作業手順を呼び出せる形にする
    2. エージェント層: リサーチ、構成、執筆、レビューを分ける
    3. Pythonライブラリ層からWordPress REST APIへつなぐ
    4. generate-post フロー: リサーチから下書き投稿までの流れ
  3. 記事品質を上げるために Claude・Codex・Gemini を役割分担した
    1. GeminiにはWebリサーチと最新情報の確認を任せる
    2. Codexにはアウトライン設計と構造化を任せる
    3. Claudeには推論と執筆の中心を任せる
    4. SEOレビュー、画像生成、WordPress投稿までを一連の流れにする
  4. MCPよりローカルCLI呼び出しの方が自分には安定した
    1. MCPは外部連携の入口として便利だが、長時間タスクでは気になる点があった
    2. 進捗の見えやすさと再実行性を重視してJSONモードのCLIに寄せた
    3. ローカルで呼び出すとログ、成果物、失敗時の切り分けが残しやすい
  5. 一番効いた工夫はClaudeのトークンを節約する設計だった
    1. リサーチは想像以上にトークンを消費する
    2. Claudeはすぐ制限が来るので、重い前処理を外に出した
    3. リサーチ結果とアウトラインだけをClaudeに渡すと執筆に集中できる
  6. キーワード入力だけの自動投稿ツールと何が違うのか
    1. KoalaWriter系の強みは手軽さ、自作フローの強みはカスタマイズ性
    2. 品質最優先なら、工程を分けて人間が意図を入れられる方が合っていた
    3. ただし保守コストはあるので、万人向けではない
  7. 参考資料
  8. まとめ

Claude Code WordPress 自動投稿で更新が捗るようになった

最初は「記事を書く時間」より「準備と投稿」が重かった

技術ブログを運営していると、本当に書きたいことよりも「周辺作業」の方が時間を取ることがあります。キーワードを調べて、構成を考えて、下書きを書いて、画像を用意して、SEO設定をして、そして WordPress に投稿する。この一連の工程は、一度やってしまえばそこまで重くはないのですが、それが「毎回」続くと更新のモチベーションが下がっていきます。

筆者もずっとそう感じていました。特に構成を考えながらリサーチをして、その結果を記事の中に落とし込む工程が時間を食っていました。そこで「構成だけ先に決めてしまえれば書きやすいのでは」という発想から、少しずつ自動化を進めていきました。

自動化して変わったのは速度だけではなく更新の心理的ハードル

このシステムを作ってから、最も大きく変わったのは「心理的なハードル」です。記事を書こうと思ったとき、以前は「今日は時間がないから無理」と後回しにしていました。しかし今は、テーマさえ決まれば、あとは /generate-post テーマ名 と入力するだけでリサーチから下書き投稿まで流れます。

具体的には、リサーチ・アウトライン設計・記事執筆・SEOレビュー・画像生成・WordPress 投稿という6つのステップが、Claude Code のスキルとして自動で連携します。そのため「とりあえずスタートだけ切れる」状態になり、更新頻度が上がりました。

この記事で話すのは完成品の宣伝ではなく、自分用に育てた仕組み

ただし、これは「完成した製品」の紹介ではありません。あくまで自分のブログ運用のために育ててきた仕組みです。万人向けの汎用ツールとして配布しているわけでもなく、今も日々改善を続けています。そのため「どんな考えで作ったか」「どこで詰まって何を変えたか」という体験記として読んでいただけると一番伝わると思います。

(参考:Claude Code 公式概要 – Anthropic

Claude Code WordPress 自動投稿システムの概念図
Claude Code を起点に複数のAIが連携するマルチエージェント構成

仕組みの全体像は5層で考えるとわかりやすい

システム全体を一言で説明するなら「Claude Code WordPress 自動投稿パイプライン」です。ただし「投稿するだけ」ではなく、リサーチから品質レビューまでを含む一連の流れです。全体像を把握しやすくするために、5つの層に分けて説明します。

スキル層: SKILL.md で作業手順を呼び出せる形にする

Claude Code には「スキル」という概念があります。SKILL.md を含むフォルダとして定義し、スクリプトやテンプレートを同梱できます。ユーザーが /スキル名 と入力すると、Claude Code がそのスキルを自動的に発見・有効化して実行する仕組みです。

本システムでは /generate-post というスキルが入口です。このスキルを呼び出すだけで、後述する各エージェントが順番に起動します。スキル定義は .claude/skills/ ディレクトリで管理しており、Git で履歴を残しています。

エージェント層: リサーチ、構成、執筆、レビューを分ける

スキルが呼ばれると、複数の「エージェント」が連携して動きます。エージェントとは、特定の役割に特化した Claude Code の設定単位です。.claude/agents/ ディレクトリに配置します。

本システムで活躍するエージェントは以下の5つです。それぞれが1つの役割だけに集中しているのがポイントです。

  • codex-outline-planner: SEO最適化されたアウトライン設計
  • wp-article-writer: Gutenbergブロック形式のHTML記事執筆
  • wp-seo-reviewer: Yoast基準のメタデータ・キーワード最適化
  • wp-affiliate-linker: もしもアフィリエイト書籍リンク生成
  • wp-publisher: WordPress REST API経由の下書き投稿

Pythonライブラリ層からWordPress REST APIへつなぐ

エージェントが生成した記事HTML・画像・SEO情報を WordPress に送り込むのは Python スクリプトです。wp-auto-poster/lib/ ディレクトリに配置した wp_client.py が WordPress REST API を叩きます。

WordPress REST API では、POST /wp-json/wp/v2/posts エンドポイントに記事データを送ることで、下書きとして保存できます。認証には WordPress 5.6 以降に標準搭載されている「アプリケーションパスワード」を使います。プラグイン不要で、通常のログインパスワードとは分離された REST API 専用のトークンです。

# WordPress REST API への投稿イメージ(概念コード)
payload = {
    "title": "記事タイトル",
    "content": "<!-- Gutenbergブロック形式のHTML -->",
    "status": "draft",          # 必ず下書きで作成
    "featured_media": 1234,     # アイキャッチ画像のメディアID
    "categories": [5, 12],      # カテゴリID
}
response = requests.post(
    "https://example.com/wp-json/wp/v2/posts",
    json=payload,
    auth=("wp_user", "アプリケーションパスワード"),
)

(参考:WordPress REST API Handbook – Posts

generate-post フロー: リサーチから下書き投稿までの流れ

/generate-post テーマ名 を実行すると、以下の8ステップが順番に走ります。各ステップの成果物は drafts/{slug}/ ディレクトリに保存されます。

/generate-post <テーマ>
  │
  ├─ Step 1: Gemini リサーチ   → research_summary.md・sources.json
  ├─ Step 2: Codex アウトライン → outline.md
  ├─ Step 3: Claude 記事執筆   → article.html・image_requests.json
  ├─ Step 4: Codex 品質レビュー → review_notes.md
  ├─ Step 5: Claude 修正反映
  ├─ Step 6: SEO最適化         → meta.json
  ├─ Step 7: 画像生成          → images/eyecatch.png ほか
  └─ Step 8: WordPress 下書き投稿

このフローを見ると、Claude が担当しているのは Step 3(記事執筆)と Step 5(修正反映)の2つだけです。他のステップは Gemini や Codex に委譲しています。この設計が後述するトークン節約に大きく効いています。

記事品質を上げるために Claude・Codex・Gemini を役割分担した

最初に自動化を考えたとき、「Claude Code だけで全部やればいい」と思っていました。しかし実際にやってみると、品質面での課題が出てきました。そのため「記事品質を上げるにはどうすればいいか」を真剣に考えた結果、リサーチ・構成・執筆・レビュー・投稿を分担する仕組みに変えていきました。

各 AI の得意分野を整理すると、以下のようになります。

AI得意なタスク本システムでの役割
Claude複雑な推論・ドキュメント作成記事執筆・SEOレビュー・WP投稿
Codex高速実装・並列処理・構造設計アウトライン設計・品質レビュー
GeminiWeb調査・大規模コンテキストWebリサーチ・最新情報収集

GeminiにはWebリサーチと最新情報の確認を任せる

Gemini の最大の強みは「Google 検索との統合」と「巨大なコンテキストウィンドウ」です。そのため複数のWebページを一度に読み込んで、最新情報をまとめるリサーチ作業には最適です。

本システムでは、Gemini CLI を使ってリサーチを実行します。具体的には、複数の検索クエリを投げて結果を research_summary.md として保存します。Claude はこのファイルを受け取るだけなので、自分で検索する必要がありません。また、コスト面でも Gemini は Claude より安価なため、リサーチに大量のトークンを使っても影響が小さいのが助かっています。

(参考:Gemini CLI – GitHub

Codexにはアウトライン設計と構造化を任せる

Codex の強みは「高速な実装」と「並列処理」です。さらにサンドボックス環境での実行が得意なため、構造化されたアウトライン生成にも向いています。

本システムでは、Codex に codex-outline-planner というロールを与え、Gemini のリサーチ結果を元に SEO 最適化されたアウトライン(outline.md)を生成させています。H2/H3 の構成、フォーカスキーフレーズ、内部リンク候補まで決めた状態で Claude に渡します。そのため Claude は「アウトラインに沿って書くだけ」に集中できます。

(参考:Codex CLI – GitHub

Claudeには推論と執筆の中心を任せる

Claude の強みは「複雑な推論」と「高い一ショット成功率」です。特に複数ファイルの整合性を保ちながら、読みやすいドキュメントを生成するのが得意です。そのため記事執筆は Claude に任せています。

ただし、Claude はトークン消費が多く、制限が来やすいという弱点があります。そのためリサーチとアウトライン設計を先に終わらせた状態で Claude を呼ぶ設計にしています。Claude が受け取るのは「整理済みのリサーチ結果」と「完成されたアウトライン」の2つだけです。

SEOレビュー、画像生成、WordPress投稿までを一連の流れにする

記事執筆の後には、SEOレビュー・画像生成・WordPress 投稿が続きます。SEO レビューは wp-seo-reviewer エージェントが Yoast SEO の基準に沿ってメタデータを最適化します。画像生成は Codex ネイティブの画像エージェントが担当します。そして最後に wp-publisher エージェントが WordPress REST API を通じて下書き投稿します。

WordPress への投稿は必ず「下書き」です。最終的な公開判断は人間が行います。この一点だけは自動化していません。品質の最終チェックは人間の目が必要だと考えているためです。

関連記事: WordPress活用の記事一覧

Claude Code WordPress 自動投稿 マルチエージェント フロー図
generate-post フロー: Gemini→Codex→Claude→WordPress の連携構成

MCPよりローカルCLI呼び出しの方が自分には安定した

Claude Code は MCP(Model Context Protocol)に対応しており、300 以上の外部サービスと連携できます。最初はこの仕組みを使って Gemini や Codex と連携することを検討しました。しかし実際に試してみると、自分の用途では課題があることがわかりました。

MCPは外部連携の入口として便利だが、長時間タスクでは気になる点があった

MCP の良い点は「統一されたプロトコル」で外部サービスと連携できることです。設定さえすれば Claude Code から直接 Gemini や各種 API を呼べます。しかし、長時間かかるリサーチや記事生成タスクでは、進捗が見えにくいという問題がありました。

具体的には、MCP 経由でタスクを投げると「今どこまで進んでいるか」がわかりにくく、途中でセッションが不安定になる場合もありました。記事生成は数分かかるタスクなので、その間の状態把握が難しいのは運用上のストレスになります。

進捗の見えやすさと再実行性を重視してJSONモードのCLIに寄せた

そのため、現在はローカルで Gemini CLI・Codex CLI を直接呼び出す設計にしています。両方とも JSON モードに対応しており、Gemini CLI は -o stream-json、Codex CLI は --json オプションで構造化出力を取得できます。

JSON モードで出力すると、成否判定がフィールド単位でできるのが便利です。exit code だけでは「エラーが出たが途中まで成功している」ケースを判別しにくいのですが、JSON フィールドを見ることで正確に判断できます。このルールはプロジェクトの CLAUDE.md にも明記しています。

ローカルで呼び出すとログ、成果物、失敗時の切り分けが残しやすい

ローカル CLI の最大のメリットは「ログが残る」ことです。各ステップの出力が drafts/{slug}/ ディレクトリにファイルとして残るので、どこまで成功してどこで失敗したかを後から確認できます。また、特定のステップだけ再実行することも簡単です。

例えば、リサーチ(Step 1)と アウトライン(Step 2)は成功しているのに記事執筆(Step 3)で失敗した場合、Step 3 から再実行するだけで済みます。MCP 経由の場合は最初からやり直しになりがちですが、ローカル CLI ならファイルベースで状態を引き継げるのが強みです。

(参考:Claude Code MCP 連携ドキュメント – Anthropic

一番効いた工夫はClaudeのトークンを節約する設計だった

このシステムを作る中で、一番「やってよかった」と感じた設計が「Claude のトークン節約」です。これは最初から意識していたわけではなく、運用の中で気づいた課題への対応として生まれた工夫です。

リサーチは想像以上にトークンを消費する

最初は Claude Code だけでリサーチも記事執筆も全部やっていました。しかし実際にやってみると、リサーチのトークン消費量の多さに驚きました。複数のWebページを読み込んで情報をまとめるだけで、かなりのトークンを使います。

Claude はトークン制限(レート制限)に引っかかりやすく、リサーチを終えた後に「制限が来て記事執筆ができない」という状況が何度かありました。特にブログ記事向けのリサーチは、複数ページを参照して情報をまとめる必要があるため、想定よりはるかにトークンを使います。

Claudeはすぐ制限が来るので、重い前処理を外に出した

そこで方針を変えました。リサーチとアウトライン設計という「重い前処理」を Gemini と Codex に任せることにしました。Claude の制限を温存した上で、最も重要な「記事執筆」に集中させる設計です。

この変更後は、Claude がレート制限に引っかかるケースがほぼなくなりました。Claude は整理済みのインプットを受け取るので、コンテキストウィンドウも節約できます。結果的に品質も上がりました。記事執筆に使えるリソースが増えたためです。

リサーチ結果とアウトラインだけをClaudeに渡すと執筆に集中できる

現在の設計では、Claude が受け取るのは以下の3つだけです。

  • research_summary.md: Gemini がまとめたリサーチ結果
  • outline.md: Codex が設計したアウトライン(H2/H3・キーフレーズ・内部リンク候補込み)
  • ユーザーエピソード・記事の方針(スキル定義内に記載)

これだけあれば、Claude は「どのトピックを調べるか」「どの構成にするか」を考える必要がありません。執筆だけに集中できます。その結果、記事の品質が上がり、レート制限にも引っかかりにくくなりました。一石二鳥の設計です。

(参考:Claude Code 公式ドキュメント – Anthropic

Claude Code トークン節約設計 Gemini Codex 連携
重い前処理を外部AIに委譲してClaudeのトークンを節約する設計

キーワード入力だけの自動投稿ツールと何が違うのか

「AIブログ自動生成ツール」は今や多数あります。KoalaWriter、SEOWriting.ai、Agility Writer など、キーワードを入れるだけで記事を生成して WordPress に投稿してくれるツールが普及しています。そのため「なぜ自分で作るのか」という疑問は自然な反応です。

KoalaWriter系の強みは手軽さ、自作フローの強みはカスタマイズ性

既製の自動生成ツールの強みは「手軽さ」です。アカウントを作ってキーワードを入れれば、すぐに使い始められます。リアルタイム検索・画像生成・WordPress 直接投稿が標準機能として揃っています。

一方で、自作フローの強みは「カスタマイズ性」です。プロンプト・品質基準・投稿先・エージェント構成を自由に設定できます。例えば「著者エピソードを必ず組み込む」「Yoast SEO の基準で出典リンクを必ず入れる」「内部リンクは特定カテゴリURLを使う」といった細かい品質ルールを守らせることができます。既製ツールでは難しい部分です。

品質最優先なら、工程を分けて人間が意図を入れられる方が合っていた

筆者のブログは「体験記スタイル」を重視しています。自分の実体験や考え方を記事に入れることで、他のサイトと差別化しています。そのため「キーワードを入れるだけ」の自動生成では、自分が書いた記事という感覚が薄くなるのが気になっていました。

自作フローでは、ユーザーエピソードを最初にインプットとして与えます。それをエージェントが記事の中に自然に組み込みます。結果として「AIが書いた文体」ではなく「自分のブログらしい文体」の記事が生成されます。この点が既製ツールとの最大の違いです。

ただし保守コストはあるので、万人向けではない

自作フローのデメリットも正直に書きます。まず「保守コスト」がかかります。Claude Code・Gemini CLI・Codex CLI はそれぞれ継続的にアップデートされるので、動作が変わった際には対応が必要です。また、初期構築にもある程度の時間が必要です。

そのため「毎月5本以上記事を書いていて、品質にこだわりたいエンジニア」向けの選択肢だと思っています。月1〜2本の更新なら既製ツールの方がコスト効率は高いかもしれません。自分の更新頻度と品質へのこだわりに応じて選ぶのが良いでしょう。

関連記事: IT技術・自動化の記事一覧

(参考:KoalaWriter 公式サイト

参考資料

まとめ

Claude Code を使った WordPress 自動投稿の仕組みを、体験記スタイルでまとめました。以下が今回の要点です。

  • Claude Code の「スキル」機能を使えば、/generate-post テーマ名 の一言でリサーチから下書き投稿まで全自動で流れる
  • Claude・Codex・Gemini をそれぞれの得意分野で分担することで、品質とコストのバランスが取りやすい
  • Gemini はリサーチ(Web検索・最新情報収集)、Codex はアウトライン設計、Claude は記事執筆・レビューを担当する
  • MCP よりローカル CLI 呼び出しの方が、長時間タスクの進捗把握・ログ管理・再実行性で優れている
  • Webリサーチは想像以上にトークンを消費する。重い前処理を外部 AI に委譲することで、Claude のレート制限を回避できる
  • WordPress への投稿は必ず「下書き」。最終的な公開判断は人間が行う
  • 既製の自動生成ツール(KoalaWriter など)と比べると保守コストはあるが、品質ルールのカスタマイズ性が高い

このシステムは今も継続的に改善しています。Claude Code の機能が拡張されるたびに、分担の見直しや新しいエージェントの追加を行っています。生成 AI を使ったブログ運用に興味がある方は、ぜひ 生成AI活用カテゴリ の記事も参考にしてみてください。

コメント