Your personal AI orchestrator.

Turn Discord into a persistent AI workspace.

View on GitHub

What is DiscoClaw?

Not a chatbot. An orchestrator.

Discord
DiscoClaw
AI Runtimes

Unlike chat UIs that forget you after every session, DiscoClaw is a persistent layer between Discord and your AI runtimes. It remembers context across conversations, manages tasks, runs autonomous crons, and routes to the right model — all from your own dedicated private server. It works while you sleep.

Features

Memory

Remembers you across sessions, channels, and restarts. Three-layer memory: conversation, workspace, and long-term.

Tasks

Track work in Discord forum threads with bidirectional sync. Create, update, and close tasks without leaving chat.

Crons & Webhooks

Scheduled tasks and webhook-triggered actions defined in plain language. Morning briefings, repo checks, CI hooks — on a timer or on demand.

Pipelines

Chain AI reasoning, shell commands, and Discord actions into multi-step workflows. Each step's output feeds the next. Analyze → act → notify — all composable, all auditable.

Multi-Runtime

Claude, OpenAI, Gemini, Codex — use different models for different tasks. Authenticate with your existing plan or API key. Use the cheap model for crons, the smart one for code. You control the spend.

Browser Tools

WebFetch to Chrome DevTools — a full automation ladder. Research, screenshot, scrape, interact.

Files, Not Infra

No databases. State is JSON and markdown you can actually read. Backups are cp ‑r. Debug with cat. Intentionally simple — because for a single-user tool, it's all you need.

Recipes

Portable, auditable integration specs in markdown. Build a workflow, export it as a recipe, share it. Another DiscoClaw instance picks it up and runs it — no code required.

Your feature here.

DiscoClaw is a foundation. Describe what you need, and your AI builds it — with the tools already in the box. The only limit is what you ask for.

The DiscoClaw Way

Single user, by design.

DiscoClaw lives in your own private Discord server — a personal AI workspace that's entirely yours. Not limited to single user. Designed for it. No auth layers, no permission matrices, no tenant isolation. Just full trust between you and your machine.

Why Discord?

Channels give you natural context separation — code in one, finances in another, personal projects in a third. Threads for deep dives. Full history and search built in. Rich embeds, file sharing, mobile push notifications. And it runs everywhere: web, Mac, Windows, Linux, iOS, Android. Why build a worse version of something that already exists?

Files over databases.

JSON, markdown, flat files. You can read the state with cat. You can back it up with cp. No migrations, no schemas.

Foundation, not a framework.

No plugin marketplace. No integration catalog. DiscoClaw gives you the primitives — memory, pipelines, runtimes, tools — and you tell it what to build. Describe what you want in conversation and it builds it with you. Share what you've built as recipes — portable, auditable integration specs that other DiscoClaw instances can pick up and run.

Your machine, your data.

Runs on your hardware. Memory stays local. Conversations stay inside your own Discord server. No cloud services between you and your AI beyond the API calls themselves.

Get Started

Three commands. Two env vars. Zero infrastructure.

~/discoclaw
# Clone and install
$ git clone https://github.com/dmarsh233/discoclaw.git
$ cd discoclaw && pnpm install

# Set your two required env vars
$ cp .env.example .env
$ vim .env
DISCORD_TOKEN=your-bot-token
DISCORD_ALLOW_USER_IDS=your-discord-id

# Launch
$ pnpm dev

Full setup guide in the README.

Discord Bot Setup Walkthrough

New to Discord bots? Follow these steps to create your private DiscoClaw workspace from scratch.

0

Create a Private Discord Server

Click the + button at the bottom of Discord's server list to create a new server. Use this dedicated server for DiscoClaw — don't start in a shared or public server.

This is your personal AI workspace. Keep it private — just you and the bot.
1

Create the Bot Application

Go to the Discord Developer Portal and create a new application. Give it a name (e.g. "DiscoClaw").

Developer Portal Applications New Application
2

Enable Message Content Intent

This is the #1 setup failure mode. Without this, the bot connects and appears online, but msg.content will be empty — the bot silently ignores every message.

Your Application Bot Privileged Gateway Intents Message Content Intent ✓
If you skip this, everything will look like it's working — but the bot won't respond to anything.
3

Copy the Bot Token

On the Bot page, click Reset Token (or copy it if you just created the app). Paste it into your .env file immediately.

Your Application Bot Reset Token → Copy
DISCORD_TOKEN=paste-your-token-here
4

Invite the Bot to Your Server

Use the OAuth2 URL Generator to create an invite link. For a private server, Administrator is the simplest option — one checkbox, everything works.

Your Application OAuth2 URL Generator
Scope: bot
Permission: Administrator (private server)
Copy generated URL → Open in browser → Select your server
For shared servers, use the Moderator profile instead. See the full docs for all permission profiles.
5

Get Your User & Channel IDs

Enable Developer Mode in Discord to copy IDs by right-clicking.

Discord Settings Advanced Developer Mode ✓

Then right-click your username → Copy User ID, and right-click a channel → Copy Channel ID.

DISCORD_ALLOW_USER_IDS=your-user-id
DISCORD_CHANNEL_IDS=your-channel-id
6

Validate

Run the smoke test to verify your token and connection, then DM the bot to confirm it responds.

pnpm discord:smoke-test
Smoke test prints "Discord bot ready"
DM the bot → it responds
Post in allowlisted channel → responds
Non-allowlisted channel → silence (correct!)