Agent! 1.0.95.189
✨ Live Streaming HUD
- Thinking deltas and tool-call announcements now stream to the LLM Output HUD in real time — no more silent stalls while the model reasons (Claude, OpenAI-compatible, Ollama, and Codex providers).
- Inline 🧠 / ⚙️ stream markers render compactly (
🧠🧠🧠⚙️tool) with blank lines collapsed for a clean, dense stream. - New Show HUD toggle in HUD options; the viewfinder icon turns green when the HUD is on, gray when off.
- New Smooth Streaming toggle (typewriter drip effect) — turn it off and LLM output appears instantly.
⚡️ Performance & Responsiveness
- Drip renderer rewritten with adaptive chunked appending — eliminates O(n²) index walks on long outputs.
- Drip renderer now indexes by Unicode scalars, so emoji grapheme merges can't skip or eat characters.
- Claude system prompt split into stable + dynamic cache blocks for prompt-cache hits on the first turn.
- Rate-limit backoff is now logged before LLM requests instead of stalling silently.
- Hook execution is non-blocking with a 30-second timeout.
🛠 Refactoring & Code Health
CodexService.swift(948 lines) split intoCodexAuth.swift,CodexPatchApplier.swift, andCodexService.swift.KeychainServicerefactored: 38 named accessors collapsed into enum-keyed get/set (keys preserved).- 7 per-provider model fetchers collapsed into one generic keypath-driven
fetchProviderModels. withFolderPrefixdeduped across Ollama/OpenAI-compatible services into sharedLLMMessagePrefix.- Removed 4 empty placeholder JSONs (send_message/send_image) from the repo, bundle resources, and project file.
🔒 Reliability & Auditing
- New
ShellSafetyServicetest suite — 26 tests covering all shell guardrail rules. - Console audit trail completed: every tool call and every helper command is now logged.
🎨 UI Polish
- Header toolbar reordered by usage frequency.
Full Changelog: v1.0.93.187...v1.0.94.189