Open Source · Self-Hosted · TypeScript

Bring Devin AI to your Discord Server or DM

Launch coding sessions with a mention or slash command, collaborate in dedicated threads with live status updates, and handle PRs, tests, and bug fixes without leaving your channels.

# engineering
warengonzaga
warengonzaga

@Devin Write a Python script that fetches top stories from Hacker News

Devin: Write a Python script that... 3 messages
Devin: Write a Python script that...
Devin
Devin APP

Talk to Devin in this thread

💡 Tip: Type mute to stop Devin from reading your messages

Devin
Devin APP

On it! Writing a Python script to fetch top stories from the Hacker News API now.

Features

Everything you need to integrate Devin AI into your Discord workflow

⚑

Slash Commands

Start sessions, reply, stop, list active sessions, use templates, and manage runtime settings with slash commands.

πŸ’¬

@Mention Support

Tag the bot in any channel to instantly start a Devin session with your prompt.

🧡

Threaded Conversations

Each session gets a dedicated thread with real-time updates and full conversation history.

πŸ“Š

Adaptive Polling

Fast updates during active work, slower when idle. Efficient and always up to date.

πŸ“Ž

File Attachments

Upload files directly to Devin through Discord. Share code, configs, or any file your task needs.

πŸ“‹

Template System

Pre-built templates for common tasks: PRs, code reviews, tests, and bug fixes.

🎨

Status Embeds

Color-coded session status with emoji indicators so you always know what Devin is doing.

πŸ”„

Restart Recovery

Session ownership and thread mapping persist across bot restarts via PostgreSQL.

🏠

Self-Hosted

Full control over your data and deployment. Run it on your own infrastructure.

Commands

Interact with Devin directly from Discord

/devin start

Start a new Devin session with a freeform task description

/devin template

Start a session from a pre-built template for common workflows

/devin reply

Send a follow-up message to Devin in a session thread

/devin stop

Terminate an active session from within the session thread

/devin sessions

List all currently active Devin sessions in your server

/devin settings mode

View or set the runtime Devin mode (normal, fast, lite, ultra)

/devin settings cap

View or set runtime global/per-user session caps (0 = unlimited)

@Devin <task>

Mention the bot in any channel to start a session instantly

Thread Keywords

mute Stop forwarding messages to Devin
unmute Resume forwarding messages to Devin
!aside Message is ignored by Devin
EXIT Terminate the session

Templates

Get started quickly with pre-built prompts for common tasks

πŸ”€

Open a PR

Write code and open a pull request with a single command.

πŸ”

Code Review

Review an existing pull request for issues and suggestions.

πŸ§ͺ

Write Tests

Add test coverage to your repository quickly and efficiently.

πŸ›

Fix a Bug

Investigate and fix bugs with Devin's help.

Status Indicators

Always know what Devin is doing with color-coded status embeds

Working

Devin is actively working on your task

Blocked

Devin needs input or clarification

Finished

Task completed successfully

Error

Session expired, stopped, or failed

Tech Stack

Built with modern, reliable technologies

Language
TypeScript 5.8+
Runtime
Node.js 22-26
Framework
discord.js v14
Toolchain
Bun
Linter
Biome
Database
PostgreSQL 14+
Testing
Bun Test
CI
GitHub Actions

Quick Start

Get up and running in minutes

1

Clone and install

git clone https://github.com/wgtechlabs/devin-discord-bot.git
cd devin-discord-bot
bun install
2

Configure

cp .env.example .env

Edit .env with your Discord bot token, client ID, database URL, and Devin API key.

3

Run

# Development (with hot reload)
bun run dev

# Production
bun run build
bun run start

Or deploy instantly with one click:

Deploy on Railway

Deploying via Railway directly supports the project and ongoing maintenance.

Ready to bring Devin AI to your Discord?

Open source, self-hosted, and built for developer teams.

Using Railway to deploy helps support this project directly.