Skip to content

A personal-use Discord app created to replicate the useful functionality of ye selfbots of olde with official bot APIs.

License

Notifications You must be signed in to change notification settings

Kyza/discord_selfbot

Repository files navigation

discord_selfbot

A personal-use Discord app created to replicate the useful functionality of ye selfbots of olde with official bot APIs.

Installation

Requirements

  • Git
  • Docker

Setup

git clone https://github.com/Kyza/discord_selfbot.git
cd discord_selfbot

Create a copy of the example.config.ron file and rename it to config.ron. Then edit it to your situation.

You'll need to create a bot on the Discord developer portal and get the token and application ID for it.

Make sure you enable the User Install installation context. It's also recommended that you disable Public Bot as well.

Use the Discord-provided installation link to install the bot on your account.

docker compose up

This might take a while the first time you run it.

Notes

By default the bot should send messages as non-ephemeral, but if you want to make it ephemeral you can use the ephemeral argument.

As long as you don't change any files you can use update_restart.cmd to pull the latest code and restart it.

Commands

  • /age - Sends the timestamp of the ID or user's creation date.
  • /bible - Checks how many words are in the Bible.
    • Context menu supported.
  • /cobalt - Downloads media from a URL using the Cobalt API and sends it.
    • Disabled until Cobalt gets an official API.
  • /help - Shows the help menu.
  • /embed - Creates and sends an embed from either fields or multiple from a RON representation.
  • /escape - Escapes basic markdown characters.
  • /favoritize - Converts any image type into a 2 frame WebP so that it can be added to your favorited GIFs list.
    • Context menu supported.
  • /ffmpeg - Runs a basic FFmpeg command on uploaded media.
  • /fix - Makes social media links embed properly.
    • Works for X, Bluesky, TikTok, Instagram, and Reddit.
  • /github - Sends a formatted link to a GitHub profile or repository.
  • /jxl - Converts an image to JXL.
    • Context menu supported.
  • /ocr - Runs OCR on an image.
    • This sucks currently. Someone please find me a decent API or library.
  • /roll - Rolls dice notation.
  • /screenshot - Screenshots a website.
  • /snowstamp - Lets you easily create a timestamp from an ID or a datetime.
  • /translate - Translates text using DeepL.
    • Context menu supported.
    • DeepL's API signup has been broken for me for the past few months, so this uses thirtyfour and geckodriver.
      • It can only handle one translation at a time.
      • Firefox currently has a bug where it has to be run with sudo to work.
      • I have some code that will run a new geckodriver instance for each translation, but it's not working yet because of that and more.
      • SeleniumHQ/selenium#12862
      • mozilla/geckodriver#2082
  • /unicode - Converts text to and from Unicode.
  • /uptime - Tells you how long the bot has been up for.
  • /wayback - Generates an archive.org (Wayback Machine) URL for a given URL.
  • /webp - Converts an image to WebP.
    • Context menu supported.
  • /wolfram - Asks Wolfram Alpha a question.
  • /youtube - [Experimental] Downloads and sends a YouTube video and sends it.
    • Sometimes it works, sometimes it doesn't.

About

A personal-use Discord app created to replicate the useful functionality of ye selfbots of olde with official bot APIs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published