Changelog¶
Notable changes organized by milestone.
Current Development¶
Documentation Site¶
- Added front-facing documentation with MkDocs Material theme
- AI-readable
llms.txtentry point - Guides adapted from internal documentation
- API reference auto-generated from docstrings
Architecture¶
- Restructured
core/into 17 subpackages (110 modules) - Modular agent factory — agents created lazily from config data
- RealToolHost security pipeline (8 steps) wired into main.py
- SQLiteStore as canonical persistence layer
- StreamingCoordinator with bounded queue and backpressure
- Primary orchestrator pattern with worker delegation
Security¶
- Process isolation for risky tool execution (Windows job objects)
- Content guards — injection detection, content filtering
- Loop guards — resource budget enforcement
- Permission boundaries — path/network validation
- Provenance policy — artifact consent tracking
- Approval workflow with persistent grants/denials
Desktop App¶
- Tauri 2 React frontend (React 18 + TypeScript + Vite 6)
- Real-time SSE streaming
- Zustand state management
- Sidebar panels: params, modes, agents, models, privacy, audit log, grants
- Privacy indicators with capability tracking
Audio¶
- Parakeet-TDT STT backend (transformers >= 5.0 AutoModelForTDT)
- Chatterbox TTS faster fork integration
- Voice state machine (12 states, 22 events)
Data¶
- SQLiteStore with WAL mode (11 tables)
- ChromaDB embedding queries (memory_mode only)
- CrossEncoder reranker (memory_mode only)
- Conversation backup/import/search
Testing¶
- Comprehensive test suite across 17 subdirectories
- Shared fake implementations in
tests/testkit/ - Production integration tests for real Ollama scenarios
- Persona quality evaluation harness
Future Work¶
Deferred features (see docs/PARKED_DECISIONS.md in the repository):
- MCP (Model Context Protocol) adapter
- Plugin marketplace
- Encrypted export
- Provider federation (non-Ollama backends)
- ServiceRegistry DI enforcement