Back to Blog
Claude APIGitHub ActionsLINE Messaging APISlackSupabase自動化

LINEとSlackで承認するブログ自動生成の仕組み——Claude API・GitHub Actions・Supabaseの構成

LINEとSlackで承認するブログ自動生成の仕組み——Claude API・GitHub Actions・Supabaseの構成

2026年10月、本サイト(chiapuru.com)のブログ運営向けに、記事のテーマ提案から公開までをチャットで操作できる自動化ワークフローが試験的に構築されました。操作画面はLINEとSlackの2系統で、記事の生成にはAnthropic社のClaude API、実行基盤にはGitHub Actions(GitHubが提供する自動処理の仕組み)が使われています。

本記事では、このワークフローの全体像、各コンポーネントの役割、設計上の工夫、そして実験段階ゆえの制約を整理します。個人開発のブログ運営を自動化したい方が、構成を検討する際の参考になる内容です。

何を自動化しているのか?

自動化の対象は、ブログ運営の中でも「テーマ決め」「執筆」「公開判断」の3工程です。ただし、公開の最終判断は人間に残す設計になっています。

工程 担当 操作方法
テーマ候補の生成 Claude API(毎朝9時にGitHub Actionsが実行) 自動
テーマの選択 人間 LINEで「1」「2」「3」を返信、またはSlackのボタン、自由テーマの入力
記事の生成 Claude API(GitHub Actionsが実行) 自動
承認・却下 人間 LINEで返信、またはSlackのボタン
公開 GitHub Actions + Vercel 承認後に自動

「LLM(大規模言語モデル)に記事を書かせる」部分よりも、「人間が確認してから公開する」導線をチャットで完結させる部分が、この仕組みの中心にあります。

全体の流れはどうなっているのか?

処理は次の4段階で進みます。

[毎朝9時] GitHub Actions
   Claude APIがテーマ候補3つを生成 → LINE・Slackに通知
        ↓
[テーマ選択] LINE / Slack
   選択結果をSupabaseに保存 → GitHub Actionsを起動(repository_dispatch)
        ↓
[記事生成] GitHub Actions(create-article.yml)
   Claude APIでアウトライン→本文を生成
   hidden: true の下書きとして専用ブランチ(blog-draft/{ID})にpush
   → LINE・Slackに承認依頼を送信
        ↓
[承認] LINE / Slack
   承認 → GitHub Actionsが下書きのhiddenを外してmainへ反映
   → Vercelがmainの変更を検知して自動デプロイ
   却下 → ステータスを更新するのみ(記事は公開されない)

repository_dispatch とは、外部のプログラムからGitHub Actionsのワークフローを起動するための仕組みです。LINEのWebhook(外部サービスから送られる通知を受け取る窓口)やSlack用のAPIが、この仕組みで記事生成や公開処理を呼び出します。

Loading member content…

Share:
View all posts