aiko-chan-ai / DiscordBotClient

A patched version of discord, with bot login & Vencord support
GNU General Public License v3.0
615 stars 38 forks source link
css discord discord-api discord-bot discord-bot-client discord-client html javascript nodejs

Discord Bot Client

Discord Bot Client allows you to use your bot, just like any other user account, except Friends and Groups.

Overview

[!WARNING] Third party clients are discouraged and against the Discord TOS.

Discord Bot Client 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

Discord Bot Client 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:

πŸ“¦ Downloads

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 It seems I can only choose one MacOS version in Github Actions, so I choose arm64 (Apple Silicon) 😭
But you can build from source πŸŽ‰

Building from source

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

UPDATES HAVE TO BE INSTALLED MANUALLY

Open a command line and execute the following commands:

[!IMPORTANT] Currently the client is using Vencord version 1.8.9, don't update the index.html file to avoid breaking

git clone https://github.com/aiko-chan-ai/DiscordBotClient.git
cd DiscordBotClient
git clone https://github.com/aiko-chan-ai/VencordDBC.git
npm run requirement
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 status, enable all intents.

image


Features


Version

Discord Build Hash Vencord Client version Status
Stable 302556 366c746 v1.8.9 v3.3.0 - * Latest
Stable 275565 ede2af3 v1.7.2 v3.2.0 - v3.2.1 Deprecated
Stable 263796 739ec78 v1.6.7 v3.0.0 - v3.1.3 Deprecated
Stable 204762 78f82ba v1.2.8 v2.4.0 - v2.4.2 EOL
Stable 185832 29333f6 v1.1.4 v2.1.0 - v2.3.1 EOL
Stable 161052 c7e0778 ❌ v1.0.0 - v2.0.1 EOL

Troubleshooting

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

FAQ

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

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 ?

  1. Clone the repository and cd into it.
git clone https://github.com/aiko-chan-ai/DiscordBotClient.git
cd DiscordBotClient
git clone https://github.com/aiko-chan-ai/VencordDBC.git
  1. Install required dependencies.

    npm run requirement
  2. Download the latest script from Discord

    [!CAUTION] From Stable version 302556 and above, Discord has changed the Webpack module structure, updating the index.html file will break the client.

    npm run fetchLatestDiscordBuild
  3. Update BotClient plugin in VencordDBC (and make a PR)

Credits

Thanks to ChrisEric for helping me create a local proxy server! (code)

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

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