Poise-self is an opinionated Discord bot framework with a few distinctive features:
- user account: user tokens are allowed making this a great choice for selfbots
- slash commands: completely define slash commands with a single function signature
- flexible argument parsing: command parameters are defined with normal Rust types and parsed automatically
- text commands: commands are agnostic over old text-based commands and slash commands
- edit tracking: when user edits their message, automatically update bot response
Changed to serenity-self 1.13.0-alpha to allow user tokens for the development of selfbots.
Credits
- Poise for the original Discord API wrapper
- Serenity for the original Discord API wrapper
- @Suffix for testing and helping with bug hunting
Add the following to your Cargo.toml
file:
[dependencies]
poise = { git = "https://github.com/nshout/poise-self", branch = "current" }
Most information is in the API documentation. Also take a
look at the examples, especially feature_showcase
, to learn what poise can do.
If you're using a development version from git directly, you probably want to look at the documentation for
current
, next
or serenity-next
branch instead.
For further questions, don't hesitate to join the support server: https://discord.gg/serenity-rs.
For each bot, there's a list of notable features for you to take inspiration from.
- Dexscreener Pricebot by @keiveulbugs: embeds, API calls, ephemeral messages
- TTS Bot by @GnomedDev: localization, database, voice
- Scripty by @tazz4843: localization, database, voice
- Etternabot by @kangalio: response transformation, variadic and lazy arguments
- Rustbot by @kangalio: database, custom prefixes
You're welcome to add your own selfbot via a PR!
For more projects, see GitHub's Used By page.