rasbot is a self-hosted Twitch bot that provides an easy-to-use interface for extending your bot with custom Python code.
rasbot is intended to run locally, so it has access to your Twitch emotes, and companion applications, such as osu!StreamCompanion:
Find rasbot useful? Buy me a coffee ☕!
- Download and install Python version 3.11.0+, ensuring you tick "Add python.exe to PATH" at the bottom of the first screen.
- Download the Source Code:
Using git:
git clone https://github.com/jack-avery/rasbot
Or, click on Code at the top right and Download ZIP.
- Run
main.py
. If this is your first time using rasbot, you will be ran through a guided setup for your authentication.
If you set up rasbot correctly, it will log some information and print something similar to:
Joined #raspy_on_osu! (57511738)
You will be asked about telemetry when you first start rasbot. I would appreciate at least error reporting.
All telemetry is completely anonymous. You can see exactly what is sent here.
rasbot checks for and performs updates automatically with each start and will let you know if one is ready!
You can disable auto-update checking and notifications entirely inupdate.py
.
Create a command:
r!cmd add <command name> <cooldown?> <parameters?> <response>
Edit a command:
r!cmd edit <command name> <name/cooldown/privilege/hidden/response> <value?>
Remove a command:
r!cmd remove <name>
Valid parameters include:
-{status}only
: Set the command to be usable by {status} only, e.g. -modonly
for Moderators and above, -subonly
for Subscribers and above.
-hidden
: Set the command to be hidden from the help
command.
rasbot is designed modularly and allows you to add to the base application easily with "plug-and-play"-style extensions. You can see some sample modules, including built-in functions in the modules
folder.
To include a module as part of a command, encompass the module name in %
, e.g.:
r!cmd add np %osu/np%
For documentation on configuring modules or creating your own, see this.
Has something gone horribly wrong? Or do you just think something's missing?
Feel free to create a new issue, join the Discord, or message me directly on Discord about it: raspy#0292
.
If you're reporting a bug, it's most useful to me if you can get what the console outputs for me.
If rasbot is crashing instantly on launch, you'll need to start it from Command Prompt / another terminal:
You can use the commandmain.py --debug
for rasbot to show more information during startup.