Skip to content

v0.3.1 — Security patch + reasoning model support

Choose a tag to compare

released this 07 Mar 10:32
· 87 commits to main since this release

Security

  • file_delete elevated from T2 → T3 — recursive directory deletion now requires explicit approval when auto_approve_up_to is set to T2. Previously, an LLM could delete entire directory trees (including ~/Repos) without confirmation.

Fixes

  • Reasoning/thinking stream parsing — SSE reasoning and reasoning_content fields (used by Qwen 3.5, DeepSeek-R1, etc.) are now properly deserialized and emitted as ThinkingDelta events.
  • Thinking-only response fallback — When a reasoning model produces only thinking content with no visible text (common via OpenAI-compat APIs), the thinking is promoted to text so the user gets a response.
  • Provider preset defaults applied from config file — base_url and extra_headers for known providers (Ollama, Cerebras, Groq, etc.) were only applied when using env-var fallback config. Now correctly applied when loading from config.toml.
  • RunError event publishing — When the agent encounters an LLM error (e.g., expired API key), a RunError event is now published so the channel dispatcher doesn't hang indefinitely.

Full Changelog

v0.3.0...v0.3.1

Full Changelog: v0.3.0...v0.3.1