
Write HTML. Render video. Built for agents.
DisCatSharp gives you the core Discord client plus package-level pieces for commands, interactivity, hosting, voice, and web ingress. You can compose only the parts you need instead of wiring Discord API access from scratch.
Builders who want to make Discord bots and apps in C# with reusable client, command, and hosting packages.
You can build Discord apps with ready-made client, command, hosting, and voice pieces instead of assembling them yourself.
Provides Gateway, REST, entities, and events in the main `DisCatSharp` package.
`DisCatSharp.ApplicationCommands` adds slash commands, context menus, autocomplete, and command groups.
`DisCatSharp.CommandsNext` adds a text command framework for message-based bots.
`DisCatSharp.Interactivity` adds waits, pagination, components, modals, and response helpers.
`DisCatSharp.Hosting` and `DisCatSharp.Hosting.DependencyInjection` add Generic Host support and dependency-injection helpers.
`DisCatSharp.Hosting.AspNetCore` handles interactions, webhooks, OAuth callbacks, and linked roles.
`DisCatSharp.Voice` and `DisCatSharp.Voice.Natives` support Discord voice connections and DAVE.
The repo includes docs under `DisCatSharp.Docs` and points to getting-started guides and example apps.
dotnet add package DisCatSharp
dotnet add package DisCatSharp --prerelease
If you:
Then this is the right place for you!
We squashed DisCatSharp's Git history because of its clone size and accumulated clutter. The original history remains available through the releases, tags, and the archived pre-squash repository.
Install the latest stable release from NuGet:
dotnet add package DisCatSharp
To use the latest nightly release instead:
dotnet add package DisCatSharp --prerelease
Packages are also available from GitHub Packages.
Create a Discord bot account, store its token in the DISCORD_TOKEN environment variable, and connect the client:
using DisCatSharp;
using DisCatSharp.Enums;
string token = Environment.GetEnvironmentVariable("DISCORD_TOKEN")
?? throw new InvalidOperationException("Set the DISCORD_TOKEN environment variable.");
var discord = new DiscordClient(new DiscordConfiguration
{
Token = token,
TokenType = TokenType.Bot,
Intents = DiscordIntents.AllUnprivileged
});
await discord.ConnectAsync();
await Task.Delay(Timeout.InfiniteTimeSpan);
Continue with the complete first bot guide.
The documentation is available at docs.dcs.aitsys.dev. A backup is available at backup-docs.dcs.aitsys.dev.
Install the consumer skill globally for Codex:
gh skill install Aiko-IT-Systems/DisCatSharp use-discatsharp --agent codex --scope user --pin main
Then add the public, stateless documentation MCP as a Streamable HTTP server named discatsharp:
[mcp_servers.discatsharp]
url = "https://docs.dcs.aitsys.dev/mcp"
The MCP provides live documentation search, symbol lookup, full-page retrieval, and indexed source access. See the Agent Skills and MCP setup guide for GitHub Copilot, Claude Code, Gemini CLI, other Agent Skills clients, version pinning, and maintainer guidance.
Join our official support guild, open an issue, or email bugs@aitsys.dev.
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp | Core Discord API client with Gateway, REST, entities, and events. | ||
| DisCatSharp.ApplicationCommands | Slash commands, context menus, autocomplete, and command groups. | ||
| DisCatSharp.CommandsNext | Prefix and text command framework. | ||
| DisCatSharp.Interactivity | Interactive waits, pagination, components, modals, and response helpers. |
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp.Lavalink | Lavalink v4 client for remote audio playback. | ||
| DisCatSharp.Voice | Direct Discord voice connections with audio send, receive, and DAVE support. | ||
| DisCatSharp.Voice.Natives | Native runtime libraries used by DisCatSharp.Voice. |
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp.Configuration | Configuration models and binding for hosted bots. | ||
| DisCatSharp.Hosting | .NET Generic Host integration and bot lifetime management. | ||
| DisCatSharp.Hosting.AspNetCore | ASP.NET Core ingress for interactions, webhooks, OAuth callbacks, and linked roles. | ||
| DisCatSharp.Hosting.DependencyInjection | Dependency-injection helpers for clients and hosted bots. |
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp.ProjectTemplates | Project templates for creating hosted DisCatSharp bots. |
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp.Attributes | Shared annotations used by DisCatSharp packages and tooling. | ||
| DisCatSharp.Common | Shared utilities, regular expressions, and converters. | ||
| DisCatSharp.Experimental | Experimental and unsupported Discord features that may change without notice. | ||
| DisCatSharp.Analyzer | Recommended analyzers and code fixes for DisCatSharp applications. |
| Package | Purpose | LTS | Latest |
|---|---|---|---|
| DisCatSharp.Extensions.TwoFactorCommands | Require two-factor authentication for selected commands. | ||
| DisCatSharp.Extensions.OAuth2Web | Deprecated. Legacy OAuth web server; migrate to DisCatSharp.Hosting.AspNetCore. | ||
| DisCatSharp.Extensions.SimpleMusicCommands | Ready-to-use commands for building a simple music bot. |
Big thanks goes to the following people who helped us without being part of the core team ♥️
The special thanks goes to Nagisa. Make sure to check out her Instagram ♥️♥️
The second special thanks goes to Sentry (GitHub) for sponsoring us with a business account on Sentry for error tracking. You guys are the best 💕⭐
Sign in to join the discussion.
No comments yet. Be the first to say what this is good for.

Write HTML. Render video. Built for agents.
Ultra-lightweight, open-source, self-hosted personal AI agent framework in Python with WebUI, tools, memory, MCP, multi-agent workflows, automation, and chat apps
SkillOpt is a text-space optimizer that trains reusable natural-language skills for frozen LLM agents through trajectory-driven edits, validation-gated updates, and deployable best_skill.md artifacts.

Omnigent is an open-source AI agent framework and meta-harness: orchestrate Claude Code, Codex, Cursor, Pi, and custom agents — swap harnesses without rewriting, enforce policies and sandboxing, and collaborate in real time from any device.
A theoretical reconstruction of the Claude Mythos architecture, built from first principles using the available research literature.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!