🤖 Discordのチャットからブログ記事が公開されるまでの仕組み
💡 この記事は、まさにこの記事で説明しているフローを使って作られました。Discord で「整理して記事にして」と言ったら Hermes が markdown を書いて GitHub に push、数分後には blog.taktamur.me に反映されています。
システム構成
[Discord] ──message──▶ [Hermes Agent] ──git push──▶ [GitHub: taktamur/hugo-scrap-blog]
│
Cloudflare Pages(自動検知)
│
hugo build + デプロイ
│
▼
https://blog.taktamur.me/
| レイヤー | 役割 |
|---|---|
| Discord | ユーザー入力。チャット感覚で記事のネタを投げる |
| Hermes Agent | AI アシスタント。Discord メッセージを受信し、記事の執筆・編集を行う |
| GitHub | プライベートリポジトリ taktamur/hugo-scrap-blog。記事の markdown ファイルを管理 |
| Cloudflare Pages | Git 連携で自動ビルド&デプロイ。push を検知して hugo を実行 |
| blog.taktamur.me | 公開ブログ。Hugo で生成された静的サイト |
ステップ別の流れ
- 投稿 — Discord の
#一般チャンネル(またはスレッド)に「これ記事にして」と書く - 受信&整形 — Hermes Agent が内容を受け取り、日付・タグを判断して markdown に整形
- ファイル作成 —
/tmp/hugo-scrap-proto/scrap-blog/content/scraps/に.mdファイルを生成(事前にgit pullを実行) - Git push —
git add→git commit→git push origin main - 自動デプロイ — Cloudflare Pages が push を検知し、
hugoビルド → デプロイ(数分で完了) - 公開 —
https://blog.taktamur.me/に記事が表示される
記事ファイルの中身
---
date: 2026-07-25
tags: ["タグ1", "タグ2"]
---
## 🤖 見出し(LLM生成記事は 🤖 マーカー付き)
本文はここに。Markdown形式で自由に書く。
- タイトル(
title)は不要 — frontmatter はdateとtagsだけ - 最初の
## 🤖 見出し行が HTML の<title>になる - タグは日本語可(
preserveTaxonomyNames: true) 🤖マーカーで LLM が書いた記事であることを明示
なぜ Hugo + Cloudflare Pages なのか
- 静的サイト — データベース不要、高速、セキュリティリスクが少ない
- Git 管理 — 記事はすべて markdown ファイル。Git で履歴管理、巻き戻しも簡単
- 無料ホスティング — Cloudflare Pages は無料枠で十分
- 自動デプロイ — push するだけ。CI/CD の設定不要
運用上の注意点
- 記事を書く前に必ず
git pullを実行(他端末からの push とのコンフリクト防止) - Cloudflare Pages の環境変数:
HUGO_VERSION=0.164.0,TZ=Asia/Tokyo hugo.yamlにbuildFuture: trueを設定(JST 深夜の記事が UTC で未来日扱いされるのを防止)- デプロイ状態の確認は
wrangler pages deployment list --project-name=hugo-scrap-blog