Devi (Dynamic Evaluation Implement) is a Discord selfbot, built with C# eval and quoting in mind
Clone or download
Latest commit da2c790 Oct 25, 2017

Dynamic Evaluation Implement by Emzi0767

Emzi's Central Dispatch


This code is no longer maintained, and selfbots are officially prohibited. Using Devi (or any selfbot) is a violation of ToS and will result in your account being terminated.

You have been warned.


A Discord selfbot built on top of DSharpPlus library. It's designed to provide a C# evaluator, quoting, and some other functionality.

More information is available on its GitHub page.


You need .NET Core SDK 2.0 to build the project, and .NET Core 2.0.0 runtime to run it. Both are available here.

  1. In order to build this project, you will need to add the following package sources to your NuGet:
  2. Next, you must restore all NuGet packages (dotnet restore).
  3. Then build the code in Release mode (dotnet build -c Release).
  4. Finally publish the bot (dotnet publish -c Release).
    • You can optionally package it as a self-contained application by specifying target RID such as linux-x64 or linux-arm (dotnet publish -c Release -r linux-x64).


In order for bot to run, you will need to set up your environment.


The PostgreSQL database is optional if you disable it in the bot's config. If you do intend to use the DB-backed features of the bot, you need to proceed with the setup.

  1. If you haven't done so already, install PostgreSQL server (version 9.6 or better).
  2. Create a database for bot's data.
  3. Create a user for the database.
  4. Execute the attached schema.sql script as the created user.


  1. Create a directory for the bot.
  2. Copy bot's Publish results to the bot directory.
  3. Copy devi.json, emoji.json, and donger.json from project source to bot's directory.
  4. Edit devi.json and put your user's access token and database in the file.
    • If you do not wish to use the DB-backed features of the bot, the config has an option to disable the database backend.


Execute dotnet Emzi0767.Devi.dll in your command line.

If you packaged the bot as a self-contained app, you will need to run the bot's executable. That is Emzi0767.Devi.exe for Windows, or ./Emzi0767.Devi for GNU/Linux.

It is recommended you run the bot in a terminal multiplexer, such as screen or tmux when running on GNU/Linux.


If you feel like supporting me by providing me with currency that I can exchange for goods and services, you can do so on my Patreon.


Should you still have any questions regarding the bot, feel free to join my server. I'll try to answer an questions:

Emzi's Central Dispatch