- Local
- Docker
- Railway
- Render
Use the included setup scripts for a guided local setup. The scripts handle everything from WindowsWhat the scripts do:
.env creation to launching the bot.Linux / macOS- Create
.envfrom.env.sampleon first run. Open it and fill in your real Discord IDs and provider keys before continuing. - Validate
BOT_TOKEN,CHANNEL_ID,AI_PROVIDER, and the matching provider API key (for example,GOOGLE_API_KEYfor Gemini,OPENAI_API_KEYfor OpenAI). - Create a
.venvvirtual environment and install dependencies fromrequirements.txt. - Run
scripts/check_project.pyto verify syntax and config. - Launch the bot with
python main.py.
.env and just want to start the bot manually, run:The local setup scripts are for manual hosting only. Do not use them for Docker or cloud platforms. On Docker, Railway, and Render, the platform owns the bootstrap process.
Persistence
Freesona uses a small set of files to store all runtime state. Keep these files on a persistent volume in any cloud environment:
On a local setup these files live in the project folder. On Docker, Railway, or Render, point all
*_FILE_PATH environment variables at your /data/ mount to ensure they survive restarts and redeployments.