SkyAI

SkyAI is a Valour.gg bot powered by a self-hosted Large Language Model via Open WebUI.

It supports per-channel conversational memory and is designed for self-hosted deployments.


Features


How It Works

SkyAI connects to:

Conversation history is stored in memory per channel and sent with each request to maintain contextual awareness. History is automatically trimmed to prevent excessive token usage.


Data & Privacy

SkyAI stores only the minimum data required for operation.

Stored In Memory (Per Channel)

Not Stored

Conversation history resets automatically when the bot restarts.

Full privacy policy:
https://github.com/SkyJoshua/SkyAI/blob/main/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:
https://github.com/SkyJoshua/SkyAI/blob/main/LICENSE

If you modify and deploy this project publicly (including as a hosted service), you must make your source code available under the same AGPL-3.0 license.


Installation

git clone https://github.com/YOUR_USERNAME/SkyAI.git
cd SkyAI
dotnet restore

All required NuGet packages are installed automatically via SkyAI.csproj.


Requirements


Configuration

Create a .env file in the root directory:

TOKEN=your-valour-bot-token
OPENWEBAPI=your-openwebui-api-key
OPENWEBURL=your-openwebui-url

Do not commit this file to version control.


Running the Bot

dotnet run

Commands

Command Description
s.ai <message> Send a prompt to the AI
s.cm Clear channel conversation memory
s.source Shows the source code of the bot

Self-Hosting Notes

Ensure Ollama is running:

ollama serve

Ensure your model is installed:

ollama list

Contributing

Contributions are welcome. By submitting a contribution, you agree that your contributions will be licensed under AGPL-3.0.

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request