A Discord meeting assistant that automatically joins voice channels, records conversations, uploads to Google Drive, and generates structured summaries using Google Gemini AI.
- Automatic Operation: Joins when target user joins a voice channel
- High-Quality Recording: Captures audio and converts to MP3
- Google Drive Integration: Automatically uploads recordings to your Drive folder
- AI Summaries: Generates structured meeting notes using Gemini 1.5 Flash
- Discord Integration: Posts summaries with recording links to your specified channel
- Privacy-Focused: Only records when target user is present, auto-deletes local files
User Joins VC → Bot Joins & Records → User Leaves → Stop Recording
→ Merge Audio → Convert to MP3 → Upload to Google Drive
→ Generate AI Summary → Post to Discord (with Drive link)
- Runtime: Bun (v1.1+)
- Server: Hono
- Discord: discord.js v14 + @discordjs/voice
- LLM: Google Gemini 1.5 Flash
- Audio: prism-media + ffmpeg-static (WAV/MP3 format)
- Cloud Storage: Google Drive API
- Bun installed
- FFmpeg installed and in PATH
- Discord Bot Token (Discord Developer Portal)
- Google Gemini API Key (Google AI Studio)
- Google Cloud Service Account (for Drive uploads)
- Your Discord User ID
- Clone the repository:
git clone https://github.com/suppprith/scribe.git
cd scribe- Install dependencies:
bun install- Configure environment variables:
cp .env.example .envEdit .env and fill in your credentials:
# Discord
DISCORD_TOKEN=your_discord_bot_token_here
TARGET_USER_ID=your_discord_user_id_here
MEETING_NOTES_CHANNEL_ID=your_channel_id_here
# Gemini AI
GEMINI_API_KEY=your_gemini_api_key_here
# Google Drive
GOOGLE_SERVICE_ACCOUNT_EMAIL=[email protected]
GOOGLE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n"
GOOGLE_DRIVE_FOLDER_ID=your_folder_id_here- Go to Google Cloud Console
- Create a new project (or select existing)
- Enable the Google Drive API
- Go to Credentials → Create Credentials → Service Account
- Download the JSON key file
- Copy
client_emailtoGOOGLE_SERVICE_ACCOUNT_EMAIL - Copy
private_keytoGOOGLE_PRIVATE_KEY - Create a folder in Google Drive for recordings
- Share the folder with the service account email (Editor access)
- Copy the folder ID from the URL to
GOOGLE_DRIVE_FOLDER_ID
- Enable Developer Mode in Discord (User Settings → Advanced → Developer Mode)
- Right-click your username and select "Copy User ID"
Development mode (with hot reload):
bun run devProduction mode:
bun run start- Invite the bot to your Discord server
- Grant it permissions: View Channels, Connect, Speak
- When you (the target user) join a voice channel, the bot automatically:
- Joins the same channel
- Starts recording
- Leaves when you leave
- Converts recording to MP3 and uploads to Google Drive
- Sends a summary to your meeting notes channel with the Drive link