v2.44.0
Ships fixes and features since 2026-02-12: memory and Web UI polish, new tools and workflows, SerpApi search, orchestrator/MCP reliability, and speech/TTS hardening.
Highlights
Memory & routing
- Auto-memory injection tuned: always-include limited to addressing/response-style prefs (with new limit config); topic memories come from semantic search when relevant.
- Filters empty “no preference” style values; router guidance steers real deletes toward
forgetinstead of storing junk prefs. memory_dedupertool: analyze duplicates/conflicts, optional apply with dry run and safety modes.- New workflows:
youtube_ingest,memory_scan.
Web UI
- Clear chat (
POST /api/conversations/<id>/clear) and Import knowledge (.txt/.md, 1MB cap → jarvis-intel). - Bookmark search:
bookmark_searchtool +*shortcut in chat (Firefox-style). - Clickable URLs in tool and message details; chat bubble markdown (lists, bullets, links); canvas page links open in a new tab.
- Layout fix for very wide viewports (~1301px+).
- Workflow tool cards: saved messages now expose tool results in the shape the client expects (including older conversations).
- Log streamer: clearer args/success/error mapping and quicker debugging for canvas-style calls.
New & updated tools
youtube_video,qr_code_generator,git_release_notes,serpapi_search(+ workflow), canvas URL validation (reject truncated URLs; require real links).- Image:
gemini-3.1-flash-image-preview; removed deprecated xAI image model. create_reminder: normalizesa.m./p.m.spellings before parsing.
Search & canvas
- SerpApi: optional conversational → keyword query optimization (
query/query_effective,query_was_optimized,optimize_queryin tool config). - Workflows pass
source_queryinto canvas; smaller payloads to the canvas LLM to avoid truncated “top N” lists.
API, pipeline, and stability
- Rate limiting on the API query path; tool builder parsing fixes and max-tokens support.
- Pipeline steps always carry
errorandspeech; failed workflow steps surface errors in tool cards and persisted history. - Orchestrator: duplicate-tool handling prefers real tool speech and richer nested extraction; avoids reusing JSON-ish text as spoken output.
- MCP client deadlock fixed (non-reentrant lock during init) — fixes hung calls e.g. Brave Search in Docker.
Speech & TTS
- Stronger
sanitize_for_speech()(markdown links, URLs, domains,stash://, IPs, noisy paths) applied to auto WebUI TTS,/api/tts, and CLI--speak.
Models & deps
- Anthropic Sonnet 4.6; Qwen config refresh; Anthropic web search integration version update; repeated yt-dlp bumps via
uv.lock.
Ops & repo hygiene
bin/cleanup-all: web uploads retention (30d), safer disk usage when paths are missing.- Timezone lookup:
"City, State"falls back to city segment when the full string is unknown. - Git: permission/gitignore cleanup; stop tracking
config/price-alerts.yaml(local config pattern).
Configuration notes
- SerpApi: set
SERP_API_KEYif you useserpapi_search. - Memory:
AUTO_MEMORY_ALWAYS_INCLUDE_PREFERENCESwas replaced byAUTO_MEMORY_ALWAYS_INCLUDE_LIMIT(seecloud.env/local.envexamples).
Docs
- Changelog and index updates in
docs/README.md; tool docs underdocs/tools/.