728c7763e23d9fd2fecd589a8251c5c37360abe8
Introduce optional web search enrichment flow for chat and regenerate requests. New /websearch endpoint calls enrich_prompt via SearXNG and returns enriched_prompt + citation sources. DB: add sources_json column to chat_messages via ensure_sources_column migration helper. Backend: persist sources_json for assistant replies (streaming and non-streaming); extend ChatRequest/RegenerateRequest to accept enriched_message and sources; history endpoint returns sources. Frontend: add toggle for web search, settings for SearXNG URL + engines, and optional enrichment calls in sendMessage/regenerate. Render citation sources as rounded chips labeled with base domain under assistant replies. Dependencies: add beautifulsoup4, httpx[http2], numpy for enrichment pipeline.
Description
Heimgeist is a project with a backend written in Python handling schemas and main logic, along with a frontend using JavaScript for audio input, managed via npm.
Languages
Python
53.4%
JavaScript
38.8%
CSS
6.4%
Shell
1.3%