MCPcopy Index your code
hub / github.com/aiko-chan-ai/DiscordBotClient

github.com/aiko-chan-ai/DiscordBotClient @v3.9.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.9.1 ↗ · + Follow
148 symbols 577 edges 154 files 19 documented · 13%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DiscordBotClient

DiscordBotClient allows you to use your bot, just like any other user account, except for Friends and Groups.

Overview

[!WARNING]

Third party clients are discouraged and against the Discord TOS.

DiscordBotClient is a custom Discord client that aims to support bot accounts and be aimed at power-users.

The application only uses the official Discord API and doesn't send data to third parties. However, this application is not an official product by Discord Inc.

Demo Screenshot


Installation

Windows

DiscordBotClient can be installed in Windows via Winget:

winget install aiko-chan-ai.DiscordBotClient

Using prebuilt binaries

If you don't want to build the application yourself or use some kind of package management system, you can get the latest binaries for the three major systems in the release overview:

[!TIP]

Platform Binary Type Download Link
Windows NSIS installer DiscordBotClient-win-x64.exe
Linux .AppImage DiscordBotClient-linux-x86_64.AppImage
Mac arm64 (Apple Silicon) .dmg DiscordBotClient-mac-arm64.dmg
Mac x64 (Intel) .dmg DiscordBotClient-mac-x64.dmg

[!WARNING]

The application is not signed with a valid certificate on macOS or Windows.

As a result, on Windows, SmartScreen or Windows Defender may be triggered — you can simply bypass or whitelist it.

On macOS, you may see a warning that says:

“DiscordBotClient” is damaged and can’t be opened. You should move it to the Trash.

You can safely ignore this warning by following the instructions in this link: https://github.com/aiko-chan-ai/DiscordBotClient/issues/194#issuecomment-2555817658

See: About anti-virus detection for more information.

Building from source

In order to execute the following commands, you need to install NodeJS v24 or higher. You can find Node.JS packages at https://nodejs.org/en. On top of that, you need to have git installed. It can be found at https://git-scm.com/downloads.

~~UPDATES MUST BE INSTALLED MANUALLY~~[^6]

Open a command line and execute the following commands:

git clone https://github.com/aiko-chan-ai/DiscordBotClient.git
cd DiscordBotClient
npm run requirement
npm run vencord
npm run build:ts
npm run build

This will create an executable called DiscordBotClient or DiscordBotClient.exe in the dist folder, depending on whether you are using Windows or not.


Login

Logging in works via the UI on first startup of the application.

screenshot

[!NOTE] Enable MessageContent intent, other intents are optional.

[!TIP] If you want a list of members and their status, enable all intents.

image


Features

  • Sharding
  • View Guilds (Lazy load them)
  • Manage Guilds, Channels
  • Messages (Send, View History, Embeds, Components (V2)[^7], Reactions, Manage, Create Poll)
  • ~~Create a Guild~~[^1]
  • Voice[^2]
  • Nitro[^3]
  • Direct Message[^4]
  • Vencord Built-in

[^1]: See https://discord.com/developers/docs/change-log?topic=HTTP+API#deprecating-guild-creation-by-apps

[^2]: Except for features related to streams.

[^3]: Nitro features are reduced: Unable to use stickers everywhere, cannot send files larger than 10 MB, and cannot set avatar decorations.

[^4]: Implemented with restrictions on the client.


Version

  • Currently, I will only support the latest version of this application; other versions will not receive bug fixes.

  • The versions removed from the table were unstable and did not work properly.

Discord Build Hash Vencord Client version Release Status App Status
Latest ? ? v3.9.? ~~Beta~~
Stable 510733 2fcef2a v1.14.5 v3.9.1 Latest
Stable 510733[^7] 2fcef2a v1.14.5 v3.9.0[^8] EOL ⛔ ⚠
Stable 491153[^6] 496afea v1.14.1 v3.8.3 Deprecated
Stable 479219 582c5bf v1.13.8 v3.8.2 Deprecated
Stable 453248 0a497ab v1.13.1 v3.8.1 Deprecated
Stable 415772 0c81c46 v1.12.5 v3.7.4 EOL ✔ ⚠
Stable 403437 fa5cfe9 v1.12.2 v3.7.2 EOL ✔ ⚠
Stable 394055 f598231 v1.11.9 v3.7.1 EOL ✔ ⚠
Stable 391738 51404a7 v1.11.9 v3.7.0 EOL ⛔ ⚠
Stable 360320 38aca73 v1.10.9 v3.6.2 EOL ✔ ⚠
Stable 355624 8dc6074 v1.10.9 v3.6.1 EOL ✔ ⚠
Stable 204762 78f82ba v1.2.8 v2.4.2 EOL[^5] ✔ ⚠
  • ✔ – Fully functional and expected to be free of critical bugs.
  • ℹ – Supports at least basic functionality, but is still under development. Minor issues may occur.
  • ⛔ – This version has major issues (e.g., related to app startup). It is not recommended for use.
  • ⚠ – This version has reached its end of support.

[^5]: Latest version that supports Windows 7 / 8 / 8.1 is 2.4.2. However, you can build this application with an older version of Electron and Node.js, and expect it to work correctly.

[^6]: Testing the automatic update feature for Windows and Linux. macOS is not supported because the application lacks a valid certificate.

[^7]: The first version that supports the advanced message editor (beta), including support for Embeds and Components V1 & V2. Note: Support for interactive components is outside the scope of this project.

[^8]: Version 3.9.0 cannot be used due to a login error (if you have already logged in, you can still use it).


Troubleshooting

If you happen to encounter a crash or a bug, please submit a bug report via the project's GitHub issue tracker.

FAQ

In order to find answers to common questions, check out the FAQ in the wiki:

About anti-virus detection

Sometimes, DiscordBotClient will be flagged as malware by several anti-virus programs (Avast, AVG, Norton, McAfee, Windows Defender, etc.). However, this is a false positive.

The reason for this is that the application is not signed.

If downloaded from my GitHub, the program is safe to use (I cannot give this promise if you download it from somewhere else!). It is okay if you do not trust me; you can always go ahead and compile it yourself.

For a tutorial on how to exclude this program from your antivirus so it can run anyway, check out these links:

Windows Defender: https://support.microsoft.com/en-us/windows/add-an-exclusion-to-windows-security-811816c0-4dfd-af4a-47e4-c301afe13b26
Avast: https://support.avast.com/en-ww/article/Antivirus-scan-exclusions#pc
AVG: https://support.avg.com/SupportArticleView?l=en&urlName=avg-antivirus-scan-exclusion
Norton: https://support.norton.com/sp/en/us/home/current/solutions/v3672136
McAfee: https://www.mcafee.com/support/?page=shell&shell=article-view&articleId=TS102056
For other antiviruses, try searching for "<antivirus name> add exception"

Similar projects

Here is a list of similar projects:

Hit me up if you have a similar project, and I'll gladly add it to the list.

Star History

Star History Chart


How to update to the latest Discord version ?

[!TIP] This is a general guide for building from source, including downloading the latest scripts from Discord, obtaining the newest versions of Vencord and VencordDBCPlugin.

  1. Clone this repository and navigate into its directory (skip this step if you have already done so).
git clone https://github.com/aiko-chan-ai/DiscordBotClient.git
cd DiscordBotClient
  1. Install dependencies and fetch the latest Vencord & VencordDBCPlugin

[!NOTE] If you've done this before, just run “npm install” here and “git pull” for both the Vencord and VencordDBCPlugin repositories.

npm run requirement
  1. Generate a snapshot for the latest version of Discord Web
npm run core:update

Credits

Thanks to ChrisEric for the source code that uses a local proxy to emulate a different version of Discord.

This project was mainly inspired by SamuelScheit Discord Bot Client, which he sadly didn't develop any further.

And a big thank you to Vencord developers for making it easier for me to create this app.

Disclaimer

Discord is trademark of Discord Inc. and solely mentioned for the sake of descriptivity. Mention of it does not imply any affiliation with or endorsement by Discord Inc.

Extension points exported contracts — how you extend this code

BigInt (Interface)
(no doc) [1 implementers]
src/overrides.d.ts
TUserExperiment (Interface)
(no doc)
src/AppUtils/Experiments.ts
EmojiCacheEntry (Interface)
(no doc)
src/AppCore/routes/users/@me/emojis.ts
GuildExperimentResponse (Interface)
(no doc)
scripts/updateGuildExperiments.ts
Request (Interface)
(no doc)
src/overrides.d.ts
Isku (Interface)
(no doc)
src/AppUtils/NitroData.ts
ModifyCurrentGuildProfile (Interface)
(no doc)
src/AppCore/routes/guilds/#id/profile/index.ts
Window (Interface)
(no doc)
src/overrides.d.ts

Core symbols most depended-on inside this repo

log
called by 41
src/AppCore/ElectronPreload.ts
error
called by 26
src/AppCore/ElectronPreload.ts
toString
called by 20
src/AppCore/Config.ts
resolve
called by 17
src/AppUtils/DiscordBitField/BitField.ts
info
called by 15
src/AppCore/ElectronPreload.ts
has
called by 9
src/AppUtils/DiscordBitField/BitField.ts
getDataFromRequest
called by 8
src/AppUtils/Utils.ts
getIDFromToken
called by 7
src/AppUtils/Utils.ts

Shape

Method 55
Function 51
Class 26
Interface 16

Languages

TypeScript100%

Modules by API surface

src/AppCore/ElectronPreload.ts20 symbols
src/AppCore/index.ts17 symbols
src/AppUtils/DiscordBitField/BitField.ts16 symbols
src/AppUtils/Utils.ts12 symbols
src/AppCore/Config.ts10 symbols
src/AppUtils/UserBadges.ts6 symbols
src/AppUtils/Experiments.ts5 symbols
src/AppCore/routes/guilds/#id/profile/index.ts5 symbols
src/overrides.d.ts4 symbols
src/AppUtils/RegisterRoutes.ts4 symbols
src/AppUtils/NitroData.ts4 symbols
scripts/vencordBuild.ts4 symbols

For agents

$ claude mcp add DiscordBotClient \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page