2.3 KiB
SkyBot
SkyBot is a Valour.gg bot built with .NET 10.
Features
- Designed for self-hosting
- Open-source under AGPL-3.0
- Built with .NET 10
- Command system with automatic registration
Command Categories
- Fun — echo, 8ball, mock and similar utilities
- Info — bot info, ping, uptime, command listing, planet/user info
- Moderation — kick, ban, and per-channel command restrictions
- RP — emotes (35 actions via nekos.best) and a marriage system
- Utils — accept, decline, confirm, cancel for pending actions
- Dev — owner-only tools including blacklist management, planet control, and message utilities
Full command list: COMMANDS.md
Data & Privacy
SkyBot stores only the minimum data required for operation. Marriage records, blacklist entries, and channel restrictions are persisted to a local SQLite database. All other data is stored in-memory and is lost on restart.
SkyBot does not store:
- Message content
- Direct messages
- Personal user data beyond what is needed for the marriage and blacklist systems
Full privacy policy: PRIVACY.md
License
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).
See the LICENSE file for details.
Because this project is licensed under AGPL-3.0, if you modify and deploy it publicly (including as a hosted service), you must make your source code available under the same license.
Requirements
- .NET 10
- A Valour bot token
Installation
git clone <your-repo-url>
cd SkyBot/SkyBot
dotnet restore
All required NuGet packages will be installed automatically using the provided SkyBot.csproj file.
Configuration
Create a .env file in the root directory of the project:
TOKEN=your-bot-token-here
Then open Config.cs and update the following values:
public static readonly long OwnerId = your-owner-id-here;
public static readonly string Prefix = "your-prefix-here";
- Replace
your-owner-id-herewith your Valour user ID. - Replace
your-prefix-herewith your desired command prefix (e.g.sd/).
Never commit your .env file to the repository. Ensure it is listed in your .gitignore.
Running the Bot
dotnet run