Google Antigravity×Discord連携による自動記事投稿システム構築ガイド

Tech Trends AI
- 2 minutes read - 290 wordsはじめに
現代のブログ運営では、質の高いコンテンツ作成と効率的な配信が重要な課題となっています。本記事では、Google AntigravityとDiscord Webhookを組み合わせた自動記事投稿システムの構築について、実際の運用環境での調査結果を基に詳しく解説します。
システム概要
主要コンポーネント
- Google Antigravity API - 高度なAIコンテンツ生成
- Discord Webhook - リアルタイム通知システム
- Hugo静的サイトジェネレーター - 高速ブログ構築
- OpenClawプラットフォーム - 統合管理システム
Google Antigravity認証設定
OpenClawプラグインの有効化
# Google Antigravity認証プラグインを有効化
openclaw plugins enable google-antigravity-auth
# Gateway再起動後、認証を実行
openclaw models auth login --provider google-antigravity --set-default
認証情報の設定
Google Antigravityでは以下のスコープが必要です:
https://www.googleapis.com/auth/cloud-platformhttps://www.googleapis.com/auth/userinfo.emailhttps://www.googleapis.com/auth/userinfo.profilehttps://www.googleapis.com/auth/ccloghttps://www.googleapis.com/auth/experimentsandconfigs
Discord Webhook連携
認証情報の管理
# Discord認証情報ファイル
/root/.discord_credentials
# 必要な環境変数
DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/[YOUR_WEBHOOK_ID]/[YOUR_WEBHOOK_TOKEN]
DISCORD_BOT_TOKEN=[YOUR_BOT_TOKEN]
DISCORD_CHANNEL_ID=[YOUR_CHANNEL_ID]
通知スクリプトの仕組み
システムでは/root/discord_notify.shを使用してDiscordへの通知を行います:
#!/bin/bash
# メッセージをJSON形式でDiscord Webhookに送信
curl -X POST "$DISCORD_WEBHOOK_URL" \
-H "Content-Type: application/json" \
-d "{\"content\": \"$MESSAGE\", \"username\": \"OpenClaw AI\"}"
ブログ記事投稿ワークフロー
1. Hugo設定
/root/tech-trends-ai.com/hugo.tomlでの主要設定:
baseURL = 'https://tech-trends-ai.com/'
languageCode = 'ja'
title = 'Tech Trends AI - AI技術とSaaSの最新トレンド'
theme = 'ananke'
[params]
description = 'AI技術、SaaS開発、テックトレンドに関する情報を発信するブログ'
show_reading_time = true
date_format = '2006年1月2日'
2. 記事作成プロセス
記事は/root/tech-trends-ai.com/content/posts/ディレクトリに配置:
---
title: "記事タイトル"
date: 2026-02-20
description: "記事の説明"
tags: ["タグ1", "タグ2"]
categories: ["カテゴリ1"]
draft: false
---
記事本文...
3. 自動デプロイシステム
/root/deploy_blog.shによる自動化:
#!/bin/bash
cd /root/tech-trends-ai.com
# アイキャッチ画像生成
python3 /root/generate_eyecatch.py
# Hugoビルド
/usr/local/bin/hugo --quiet --buildFuture
# Nginxサーバーへ同期
rsync -a --delete --exclude admin /root/tech-trends-ai.com/public/ /var/www/tech-trends-ai.com/html/
# パーミッション設定
chown -R www-data:www-data /var/www/tech-trends-ai.com/html/
# X(Twitter)への自動投稿
python3 /root/x_auto_poster.py
X(Twitter)自動投稿連携
API認証設定
# X API認証情報
API_KEY = 'YOUR_API_KEY'
API_SECRET = 'YOUR_API_SECRET'
ACCESS_TOKEN = 'YOUR_ACCESS_TOKEN'
ACCESS_SECRET = 'YOUR_ACCESS_SECRET'
投稿文生成ロジック
Claude CLIを使用した動的な投稿文生成:
def generate_tweet(title, url):
"""80文字以内、ハッシュタグ2個までの制約で投稿文を生成"""
prompt = f'以下のタイトルのブログ記事を紹介するXポストを生成してください。80字以内。ハッシュタグ2個まで。\n\nタイトル: {title}'
result = subprocess.run(
['claude', '-p', prompt, '--max-turns', '1'],
capture_output=True, text=True, timeout=30
)
if result.returncode == 0:
return f"{result.stdout.strip()}\n{url}"
Discord通知システム
AutonomousDBを使用した通知管理
class DiscordCommunicator:
def __init__(self):
self.db = AutonomousDB()
self.check_interval = 30 # 30秒間隔
def process_notifications(self):
"""待機中の通知を処理"""
notifications = self.db.get_pending_notifications()
for notif in notifications:
success = self.send_message(notif['message'])
if success:
self.db.mark_notification_sent(notif['id'])
運用における重要ポイント
セキュリティ管理
- 認証情報の保護:
/root/.discord_credentialsはパーミッション600で保護 - API制限の考慮: レート制限への適切な対応
- エラーハンドリング: 失敗時の再試行ロジック実装
パフォーマンス最適化
- 非同期処理: Discord通知とX投稿の並列実行
- キャッシュ活用: 投稿済み記事の管理でデータベース負荷軽減
- ログ管理: 詳細なログ出力による運用状況の把握
監視とメンテナンス
各システムコンポーネントは専用ログファイルで状況を記録:
/root/logs/discord_communicator.log- Discord通信ログ/root/logs/x_auto_poster.log- X投稿ログ/root/logs/blog_deploy.log- ブログデプロイログ
トラブルシューティング
よくある問題と対処法
Discord Webhook失敗
- 認証情報の確認
- ネットワーク接続の確認
- Webhook URLの有効性チェック
X API エラー
- レート制限の確認
- API キーの有効性確認
- 投稿文字数制限の遵守
Hugo ビルドエラー
- Markdown構文の確認
- frontmatterの形式チェック
- 画像パスの確認
まとめ
Google Antigravity×Discord連携による自動記事投稿システムは、高度なAI機能とリアルタイム通知を組み合わせることで、効率的なブログ運営を実現します。適切なセキュリティ設定と監視体制を構築することで、安定した長期運用が可能となります。
今後のアップデートでは、より高度な記事品質管理機能やマルチプラットフォーム対応などの拡張が期待されます。
この記事は実際の運用環境での調査結果を基に作成されており、具体的な実装方法と運用ノウハウを提供しています。