> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fs.soquincy.qzz.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Freesona changelog and release notes

> Track new features, updates, and fixes shipped to Freesona — including AI providers, ChromaDB knowledge base, memory, and moderation.

<Update label="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](/features/knowledge-base).

  **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](/features/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](/features/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](/reference/commands).

  **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](/features/media).

  **Anniversary tracking and warning system.** Automatically track member anniversaries and issue moderator warnings with a configurable threshold. See [Moderation](/guides/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](/features/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](/features/media).

  **Expanded runtime controls.** `/rss setchannel` and `/rss clearchannel` let you configure RSS delivery per channel. See [RSS Feeds](/guides/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](/reference/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](/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](/guides/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.
</Update>
