v1.7
Prompt Guidance Overhaul, Streaming Tool Dispatch, & Plugin Discovery
April 3, 2026
v1.7 tightens default prompts to a compact assembled stack while preserving guardrails, dispatches tool calls as soon as a complete JSON object appears in the model stream, and adds discovery cards on the welcome experience so new users can find the Plugin Hub and messaging integrations quickly.
✨ New Features
- Early tool dispatch via streaming JSON detection — Tool calls run as soon as the first fully closed top-level brace-delimited JSON object is detected in the model stream; the stream stops there instead of waiting for trailing tokens. The
DirtyJsonparser exposes acompletedflag when the root object is explicitly closed (not merely at end-of-file), and extraction is limited to brace-delimited objects that match real tool-call shapes. - Plugin discovery cards on welcome & onboarding — An always-on
_discoveryplugin adds feature cards on the welcome/dashboard surface for the Plugin Hub and integrations (Telegram, Email, WhatsApp), with persistent dismiss/restore and CTAs into the right plugin config screens. Cards appear in the final onboarding step and stay hidden while the missing-API-key banner is shown. Implemented entirely through the existing WebUI extension mechanism without rewriting core welcome-screen code.
⚡ Improvements
- Compact default prompts with guardrails — Default assembled prompts across the core stack, plugin-owned prompts, and the agent0 overlay now sit under roughly 3 000 tokens while retaining essential guardrails.
- Restored guidance after over-trimming — Brought back tool-call JSON examples, communication/solving/tips guidance, and the agent0 profile after aggressive cuts caused regressions on frontier models.
- Stricter JSON and response style defaults — Added guidance so models treat the closing brace as an end-of-sequence signal, and defaulted answers to concise with expansion when needed.
- Profile and knowledge file cleanup — Removed the obsolete
a0_smallprofile and renamed the tool-call knowledge reference to a generic framework file. - Prompt regression test — Added a test that checks the assembled default prompt stays within the token budget and still includes critical guardrails.
🐛 Bug Fixes
- Plugin config when directory is missing — Fixed a crash during config retrieval when a plugin directory cannot be found:
get_plugin_configandget_default_plugin_configreturn early instead of passing aNonepath into the filesystem layer.