February 26, 2026
Visible Intent and Integrated Voice
Massive push on system observability, local voice integration, and closing the feedback loop for tool performance and selection.
Surfacing the Cognitive Layer
A major focus of this push was making Chalie’s internal processes legible. We introduced a persistent task strip in the chat UI that makes background work visible in real-time. The Brain dashboard’s Cognition tab has been expanded into six distinct sub-tabs—Thinking, Memory, Tools, Identity, etc.—allowing for a deep dive into how Chalie is routing decisions and maintaining its narrative autobiography. To ground all of this, we finally shipped the formal Vision document to act as a design compass for the project.
Zero-Config Local Voice
We’ve moved away from external voice endpoints in favor of a built-in, local Docker service for TTS and STT. Using Whisper (base) for transcription and KittenML for Jasper’s voice, the system now runs entirely on-premise without extra setup. We implemented an Nginx resolver fail-safe to ensure the frontend degrades gracefully if the voice container is opted-out or absent, and tuned model defaults to fit comfortably within 4GB Docker environments.
Closing the Tool Feedback Loop
Chalie is now learning from its own performance. We fixed several silent bugs that were preventing latency and correctness data from being recorded. This data now flows back into the triage and ACT loops, allowing the system to rank tools based on historical reliability rather than just hardcoded prompts. We also added full OAuth support for tools, enabling more complex integrations without sacrificing the security of the local-first architecture.
Infrastructure Hardening & Testing
The unit test suite saw a massive expansion, jumping from around 500 to 945 passing tests. We removed tool-specific handler tests to focus on Chalie as an agnostic framework, ensuring that individual tool failures don’t clutter the core build log. On the stability front, we addressed critical OOM crash loops observed in production by raising memory limits and hardening the cognitive drift engine against unclosed LLM thinking tags that were breaking JSON parsing.
Refined Human-in-the-Loop
We improved the feedback clarity for the ‘critic’ service. When Chalie decides to put a human in the loop, it now provides specific reasoning for the escalation (e.g., ‘I was about to send this, but I paused because it seemed ambiguous’). This aligns with the core philosophy of preserving user attention while ensuring high-stakes actions are always supervised.