High-performance multi-platform utility bot written in Go.
Currently under development.
Support planned for many features (gamba, etc.) and platforms (Twitch, Discord, etc.).
Commands are available on the commands page.
The bot is currently running on the Twitch account af2bot
.
It's hosted on an Oracle Cloud arm64 VM.
To add the bot to your channel, type $join
in af2bot
's chat.
To have the bot leave your channel, type $leave
in your chat.
To run the bot locally:
- Install Go
- Clone the repository and
cd
into it - Copy
config/config_example.toml
toconfig.toml
in the main directory - Fill in the empty fields in
config.toml
, notably API keys and usernames - Run
go run .
To run tests, run go test ./...
Some documentation is generated.
After making changes, run go generate ./...
from the main directory to
regenerate the docs.
To run in production:
- Install Go
- Clone the repository and
cd
into it - Run
git switch release
- Copy
config/config_example.toml
toconfig.toml
in the main directory - Fill in the empty fields in
config.toml
, notably API keys and usernames - Reboot the machine
- Run
go run .
to start the bot
Note: It's recommended to run the bot in a tmux or screen session so the bot continues running when you disconnect from the machine.
By default, the SQLite database will be stored in the current directory. To
change where the data is stored, set AIRBOT_SQLITE_DATA_DIR
, i.e.
AIRBOT_SQLITE_DATA_DIR=/some/dir go run .
To update the bot, run git pull
, then restart the bot.