Skip to main content
July 12, 2026

New Features

ChromaDB knowledge base with hybrid commands. Freesona now ships with a local, provider-neutral vector store you control. Feed it PDFs, EPUBs, plain text, or JSON, and the bot will automatically retrieve relevant chunks as context during every reply. Manage entries with /kbadd, /kblist, /kbdelete, and /kbsearch — all data stays on your server. Read the Knowledge Base guide.Multi-provider support. Freesona now supports eight AI providers: Google Gemini, OpenAI, Ollama, NVIDIA NIM, Azure AI Foundry, Groq, OpenRouter, and GitHub Models. Set your default with the AI_PROVIDER environment variable, and switch providers at runtime — no restart required. See AI Providers.GitHub Models as a BYOK provider. Point Freesona at GitHub Models by setting AI_PROVIDER=github and providing a GITHUB_TOKEN. The provider is OpenAI-compatible and accepts both github and github-models as aliases. See AI Providers.Runtime provider switching. New /provider show, /provider set <name>, and /provider reset commands let bot owners change providers on the fly. See the command reference.Math cog with Wolfram|Alpha and local SymPy. Use ~math <equation> to solve expressions. Simple queries are handled locally via SymPy; complex ones fall back to Wolfram|Alpha. See Media and Utilities.Anniversary tracking and warning system. Automatically track member anniversaries and issue moderator warnings with a configurable threshold. See Moderation.

Updates

Long-term memory is now provider-neutral and stable. Facts are keyed by guild_id + user_id, so users’ remembered facts persist across restarts and provider switches. Short-term conversation continuity on Gemini is now scoped per user, per channel, preventing threads from bleeding into each other. See Memory.Multimodal support for non-Gemini providers. Image payloads now work across compatible providers (nominal support), with base64 payloads enabled on NVIDIA NIM. See Media and Utilities.Expanded runtime controls. /rss setchannel and /rss clearchannel let you configure RSS delivery per channel. See RSS Feeds.New environment variables. Added AI_PROVIDER, AI_PROVIDER_MODEL, OPENAI_BASE_URL, NVIDIA_NIM_BASE_URL, CHROMA_COLLECTION, CHROMA_PERSIST_DIRECTORY, and ANNIVERSARIES_FILE_PATH. See Environment Variables.Debounced responses are now per-user, per-channel. Autonomy also gained a per-user cooldown to prevent runaway replies.Native Discord replies and typing indicators. The bot now responds as a threaded reply to the triggering message. It also shows a typing indicator while generating, so you can tell when a response is on the way.Configuration sample. The bundled config.json has been renamed to config.sample.json so your local config is never overwritten on update. See Configuration.Port is no longer hardcoded. The built-in HTTP health-check and webhook server now honors the HTTP_PORT environment variable (default 10000). See Hosting.

Fixes

  • Fixed multi-user identity confusion by tagging user prompts with usernames during generation.
  • Fixed memory exceptions when fact extraction returned malformed JSON.
  • Fixed vision hallucinations on NVIDIA NIM.
  • Fixed rate limiter errors on Gemini.
  • Fixed autonomy errors when the bot fired on a blocked channel.
  • Fixed non-blocking ChromaDB calls so retrieval no longer stalls generation.
  • Removed the deprecated Google Custom Search integration; hardened related security paths.