尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
2026-10-02: Cloudflare向けの共通つむぎTTS・読み上げBotを開発中です。 新構成は apps/voice/ と deploy/cloudflare/ にあり、構成・移行・検証ゲートを参照してください。 停止設定のCloudflare反映と、指定サーバーへの5コマンド登録・読み戻しは確認済みです。 2026-10-03の短時間試験で、HTTPコマンドからのGateway/VC接続と実際の読み上げを確認しました。試験は終了し、両Containerは停止・上限0です。 話者名の読み上げ・/model での声変更は開発中・未反映です。音質の問題は別途確認が必要です。以下は旧Go版の説明です。 このプロジェクトは、Go言語で実装された高性能なDiscord AI音声ボットです。 リアルタイムの音声認識(STT)、大規模言語モデル(LLM)、高品質な音声合成(TTS)を統合し、Discordのボイスチャンネルで自然な日本語会話を実現します。檢視完整 README ↗
2026-10-02: Cloudflare向けの共通つむぎTTS・読み上げBotを開発中です。 新構成は
apps/voice/とdeploy/cloudflare/にあり、構成・移行・検証ゲートを参照してください。 停止設定のCloudflare反映と、指定サーバーへの5コマンド登録・読み戻しは確認済みです。 2026-10-03の短時間試験で、HTTPコマンドからのGateway/VC接続と実際の読み上げを確認しました。試験は終了し、両Containerは停止・上限0です。 話者名の読み上げ・/modelでの声変更は開発中・未反映です。音質の問題は別途確認が必要です。以下は旧Go版の説明です。
このプロジェクトは、Go言語で実装された高性能なDiscord AI音声ボットです。 リアルタイムの音声認識(STT)、大規模言語モデル(LLM)、高品質な音声合成(TTS)を統合し、Discordのボイスチャンネルで自然な日本語会話を実現します。
src/bot-go/
├── cmd/bot/ # メインエントリーポイント
├── internal/ # 内部パッケージ
│ ├── ai/ # AI サービス (Whisper, LLM, TTS, Vision)
│ ├── bot/ # ボットコアロジックとハンドラー
│ ├── config/ # 設定管理
│ └── voice/ # 音声録音とVADシステム
├── .air.toml # Air設定ファイル
├── .env.example # 環境変数テンプレート
├── go.mod # Go依存関係
└── start_watch.sh # 開発用スクリプト
このボットは以下の処理フローで動作します:
Discord音声 → UDPパケット → RTP解析 → Opus抽出 → VAD解析
↓
音声検出 → 録音開始 → Opusパケットバッファ → 無音検出
↓
録音停止 → Opusデコード(gopus) → PCM組み立て → WAV生成
↓
go-whisper API → 日本語音声認識 → テキスト出力
認識テキスト → LLM処理(Ollama/Dify) → AI応答生成
↓
AivisSpeech TTS → 音声合成 → Discordボイスチャンネル再生
# Go 1.21+ が必要
go version
# プロジェクトのクローン
git clone https://github.com/g-kari/discord-friend.git
cd discord-friend/src/bot-go
# Go モジュールの依存関係をインストール
go mod download
# システム依存関係(Ubuntu/Debian)
sudo apt-get install libopus-dev
# システム依存関係(macOS)
brew install opus
# 環境変数ファイルをコピー
cp .env.example .env
# .env ファイルを編集(必須項目を設定)
# Discord
DISCORD_BOT_TOKEN=your_discord_bot_token
# AI Services
PREFER_LOCAL_LLM=true
OLLAMA_API_URL=http://localhost:11434
OPENAI_API_KEY=your_openai_key # 音声認識用
# Voice Services
AIVISSPEECH_API_URL=http://localhost:50021
WHISPER_API_URL=http://localhost:8080
# Bot Settings
DEFAULT_RECORDING_DURATION=10
LOG_LEVEL=INFO
# 1. AivisSpeech (VOICEVOX) を起動
docker run -p 50021:50021 voicevox/voicevox_engine:latest
# 2. Ollama を起動(ローカルLLM用)
ollama serve
ollama pull qwen2.5:7b # 日本語モデル
# 3. go-whisper を起動(音声認識用)
# 詳細: https://github.com/mutablelogic/go-whisper
# 開発モード(自動リロード)
./start_watch.sh
# 直接実行
go run cmd/bot/main.go
# ビルドして実行
go build -o discord-bot cmd/bot/main.go
./discord-bot
/join - ボイスチャンネルに参加(VAD自動開始)/leave - ボイスチャンネルから退出/record - 手動音声録音(10秒間)/listen - Voice Activity Detection の開始/停止/screenshot - スクリーンショット撮影・解析/screen_share - スクリーン共有解析の開始/停止/ping - ボットの状態確認cd src/bot-go
# 依存関係のインストール
go mod download
# ホットリロード開発サーバー
./start_watch.sh
# 直接実行
go run cmd/bot/main.go
# ビルド
go build -o discord-bot cmd/bot/main.go
# テスト実行
go test ./...
# コードフォーマット
go fmt ./...
# リント(golangci-lintが必要)
golangci-lint run
./start_watch.sh で自動リロードlogs/bot.log で詳細デバッグ/join で参加後、話すかけるか /record で手動録音# 最近の音声関連ログを確認
tail -100 logs/bot.log | grep -E "(VOICE|OPUS|WAV|WHISPER|VAD)"
# リアルタイムログ監視
tail -f logs/bot.log
# エラーパターンの確認
grep -n "ERROR\|FAILED\|❌" logs/bot.log | tail -20
# VAD統計の分析
grep "VAD Statistics" logs/bot.log
.env ファイルに設定(リポジトリにコミットしない)logs/bot.log にパケットレベルの詳細デバッグ情報/join コマンドでボイスチャンネルに参加してから話す⚠️ 重要: APIキーなどの機密情報をリポジトリにコミットしないでください。
# Git 履歴の機密情報チェック
python scripts/check_git_secrets.py
# pre-commit フックの設定
ln -sf ../../scripts/pre-commit.sh .git/hooks/pre-commit
.env ファイルに保存.gitignore 設定: .env ファイルをGit管理対象外に.env.example にはサンプル値のみ詳細は scripts/README.md を参照してください。
このプロジェクトは複数のオープンソースライブラリを使用しています:
プロジェクトへの貢献を歓迎します!
詳細な貢献方法については CLAUDE.md の「Git Commit Guidelines」を参照してください。