Gemini → Discord デイリーブリーフィング ワークフロー
n8n で構築した Gemini API → Discord 自動ブリーフィング
概要
毎朝7時に Gemini 3.0 Flash API でパーソナライズされたデイリー提案を生成し、Discord Webhook でチャンネルに自動投稿する。
ワークフロー情報
| 項目 | 値 |
|---|---|
| ワークフロー名 | Gemini API → Discord 毎朝ブリーフィング |
| n8n ID | IDSQkmadZpXSjSgu |
| URL | https://n8n.siruera.com/workflow/IDSQkmadZpXSjSgu |
| 状態 | ✅ アクティブ |
| 実行タイミング | 毎朝 7:00(JST) |
| JSONバックアップ | C:\ai_work\B-space\n8n-workflows\gemini-daily-briefing.json |
ノード構成
毎朝7時トリガー → Gemini 3.0 Flash API → レスポンス解析 → Discord Webhook 送信
(Schedule) (HTTP Request) (Code) (HTTP Request)
1. 毎朝7時トリガー
- タイプ:
scheduleTrigger - 毎日 JST 7:00 に実行
2. Gemini 3.0 Flash API
- エンドポイント:
generativelanguage.googleapis.com/v1beta/models/gemini-3.0-flash-preview:generateContent - 認証:
GEMINI_API_KEY(URLパラメータ) - temperature: 0.9 / maxOutputTokens: 2048
3. レスポンス解析(Code)
- Gemini APIのJSONからテキスト抽出
- Discord 2000文字制限対応(チャンク分割)
- 日本時間でタイムスタンプ生成
4. Discord Webhook 送信
- Embed形式(オレンジ色 FFA500)
- タイトル: 🔥 Gemini デイリーブリーフィング
プロンプト内容
AIビジネス・ライフパートナーとして以下3つの提案を毎朝生成:
- プロジェクト案1 — ビジネス×出会いのハイブリッド
- プロジェクト案2 — 美容・自分磨きのアクション
- プロジェクト案3 — システム自動化・Obsidian活用術
各提案に「今日すぐできる第一歩」を含む。
A方式ワークフロー(待機中)
| 項目 | 値 |
|---|---|
| ワークフロー名 | Gemini 予約アクション → Discord 転送 |
| n8n ID | 9I6VS5X7eyY8lilQ |
| URL | https://n8n.siruera.com/workflow/9I6VS5X7eyY8lilQ |
| 状態 | ⏸️ 非アクティブ(Google Labs CC 有効化待ち) |
| 仕組み | Gmail Trigger → フィルター → Discord Webhook |
NOTE
Google Labs CC が有効化されたら、A方式もアクティブにすることで Gemini 予約アクションの内容をそのまま Discord に転送可能。
認証情報
| キー | 保存先 |
|---|---|
GEMINI_API_KEY | new_bot/.env |
N8N_API_KEY | new_bot/.env |
N8N_BASE_URL | new_bot/.env(https://n8n.siruera.com) |
| Discord Webhook URL | ワークフロー内にハードコード |
API経由でのワークフロー操作
# ワークフロー取得
Invoke-RestMethod -Uri 'https://n8n.siruera.com/api/v1/workflows/IDSQkmadZpXSjSgu' -Headers @{ 'X-N8N-API-KEY' = $env:N8N_API_KEY }
# アクティブ化
Invoke-RestMethod -Uri '...workflows/IDSQkmadZpXSjSgu/activate' -Method POST -Headers @{ 'X-N8N-API-KEY' = $env:N8N_API_KEY }
# 非アクティブ化
Invoke-RestMethod -Uri '...workflows/IDSQkmadZpXSjSgu/deactivate' -Method POST -Headers @{ 'X-N8N-API-KEY' = $env:N8N_API_KEY }変更履歴
| 日付 | 変更内容 |
|---|---|
| 2026-02-28 | A/B両方式のワークフロー作成・インポート |
| 2026-02-28 | B方式: カスタムプロンプト適用、モデルを3.0 Flash-previewに変更、実行時間を7時に変更 |
| 2026-03-03 | テーマ動的取得ノード追加、モデルを gemini-2.5-flash に変更 |
| 2026-03-04 | テーマ取得ノードのURL修正(Docker networking問題の解決) |
変更ログ詳細
2026-03-04: テーマ取得ノード修正(Docker networking)
問題: 2026-03-03にテーマ動的取得機能を追加。「テーマ取得」ノード(HTTP GET http://127.0.0.1:8100/focus)がワークフローに挿入されたが、n8nはVPS上のDockerコンテナ内で動作しているため、コンテナ内の 127.0.0.1 はホストではなくコンテナ自身を指す → 接続拒否 → ワークフロー全体が即時失敗。
原因分析:
- n8nコンテナのネットワーク:
n8n_default - Dockerゲートウェイ IP:
172.19.0.1 - ホスト上の bot API(port 8100)にはゲートウェイ経由でアクセス可能
修正内容:
- テーマ取得ノードのURLを
http://127.0.0.1:8100/focus→http://172.19.0.1:8100/focusに変更 - n8n APIを使用してワークフローをプログラマティックに更新・再アクティブ化
テーマ変更方法(機能確認済み):
/daily-themeスラッシュコマンド(daily_suggestion.pycog)- デイリー提案チャンネルで「テーマ: 〇〇」と投稿
/daily-theme-showで現在のテーマ確認