DEV Community

Sh4rlock
Sh4rlock

Posted on

๐Ÿš€ SoloEngine v0.2.1 Release โ€” LLM Provider Architecture Refactoring, Stop Mechanism & Streaming Output Optimization

[v0.2.1] - 2026-06-03

๐Ÿš€ Added

  • SubAgent Token Tracking โ€” SubAgent completion events now carry token usage data. The frontend Agent group view displays real-time token consumption per Agent.
  • Project Isolation โ€” All file-operation endpoints accept an agentic_flow_id parameter, isolating sandbox file systems per flow instance.
  • MiMo Model Support โ€” Added Xiaomi MiMo as a new LLM provider (LLMProvider.MIMO), implemented via an OpenAI-compatible interface.

๐Ÿ”ง Improved

  • LLM Stop Mechanism โ€” Removed blocking await response.aclose() calls from individual model layers. Cancellation now raises CancelledError immediately, delegating cleanup to the upper layer and reducing stop-response latency.
  • LLM Streaming Callbacks โ€” stream_callback no longer buffers chunks until the loop finishes. It now pushes incremental deltas in real time, making intermediate output visible on the frontend as it arrives.
  • Standalone Provider Configuration โ€” LLM provider settings have been extracted from hardcoded constants into data/config/llm_providers.json. The new get_provider_config() interface supports custom providers, default models, and model lists.
  • Unified Model Creation Interface โ€” All providers now pass connection parameters through client_kwargs. Added support for frequency_penalty and presence_penalty.
  • Centralized LLM Configuration โ€” The canvas introduces a configMap for centralized LLM management. Components read config from the store. The /providers API endpoint now returns a color field alongside provider data.
  • Streaming Data Updates โ€” Streaming output now batches UI updates via requestAnimationFrame instead of direct setState calls. Added duplicate-block detection. useRunWebSocket respects active stop signals.
  • Message & File-Change Management โ€” Undo operations follow a unified path and clean up associated file_changes and blob records simultaneously. Removed CAS counting โ€” cleanup now follows reference relationships directly.
  • Canvas Interactions โ€” Canvas connectors now render arrow markers, making flow direction explicit.
  • Run Panel โ€” SubAgent groups display token counts with improved nested layout. The file browser resets its state automatically when switching projects.
  • Project Management โ€” get_recent_projects filters directly by agentic_flow_id, correcting data-field mapping issues.

๐Ÿ—‘๏ธ Removed

  • CAS reference-counting methods (ref_count, decrement_ref_count, cleanup_orphan_blobs, etc.)
  • SoloAgentConfig.memory field
  • frontend/src/config/providerDefaults.ts โ€” its functionality is now handled by canvasStore.configMap
  • frontend/src/store/runProjectStore.ts โ€” merged into runPanelStore.ts
  • Hardcoded model lists, default-model mappings, and redundant string constants from LLMFactory

๐Ÿค Join Us

We're looking for like-minded contributors who share our passion for SoloEngine and Agentic AI. Every contribution โ€” from a typo fix to a full feature โ€” makes SoloEngine better.

๐Ÿ“ Contributing Guide ยท ๐Ÿ’ฌ Discussions ยท ๐Ÿ“ง Contact Us

Top comments (0)