github iOfficeAI/AionUi v1.9.21

10 hours ago

Highlights

Aion CLI: Reliability & Protocol Upgrades

  • Replaced the unreliable 15-second idle fallback with a proper process-exit handler and a ping/pong heartbeat protocol — long tool executions no longer trigger fake "finish" events, and truly stuck processes are now detected and recovered deterministically.
  • Fixed a crash when tool commands contained non-ASCII characters (e.g. Chinese): UTF-8 safe truncation now prevents the aionrs process from panicking mid-session.
  • Aligned max turn behavior with Claude Code — the main agent now runs unlimited turns by default (configurable), sub-agents allow up to 200 turns, and hitting the limit is treated as a graceful stop instead of an error. Team collaboration sessions no longer dead-end at 30 turns.
  • Added diagnostic logging when autocompact is skipped, making it easier to understand why context management didn't trigger.

Attachments: Safer Path & Binary Handling

  • Fixed attachment previews and metadata reads that were pointing to fake workspace paths — real absolute paths are now preserved in message markers.
  • Binary attachments in ACP sessions are kept as file references instead of being inlined as garbled UTF-8 into the prompt, avoiding prompt pollution and model confusion.

WeChat: Ordered Streaming Fix

  • Weixin assistant text drafts are now flushed before silent tool, status, and plan events — preserving the correct message order during streaming. ACP and Codex tool-only turns also now complete cleanly in the WeChat channel.

Bug Fixes

  • Fixed agent-switch failure on the guid page for built-in preset assistants (e.g. "Morph PPT") — the switcher now searches both assistants and acp.customAgents storage.
  • Fixed the aionrs channel send path to use the correct { content, msg_id } payload; Gemini keeps its existing { input, msg_id } contract.
  • Fixed broken quick-navigation links in all 9 non-English READMEs (Chinese, Japanese, Korean, Spanish, Portuguese, Russian, Turkish, Traditional Chinese, Ukrainian) — they now render as clickable links on GitHub.

What's Changed

  • fix(docs): add missing blank line in quick navigation for non-English READMEs by @IceyLiu in #2627
  • fix(guid): search both storage sources when switching preset agent type by @piorpua in #2633
  • fix(channels): send content payload for aionrs by @piorpua in #2637
  • fix(attachments): avoid fake paths and binary prompt injection by @piorpua in #2634
  • fix(weixin): flush assistant text before silent events by @JerryLiu369 in #2638
  • chore: bump version to 1.9.21 by @piorpua in #2649
  • fix(aionrs): replace idle fake-finish with process exit error and heartbeat by @piorpua in #2650

Aion CLI (aionrs) Changes

  • 0.1.15 (2026-04-24) — Added ping/pong heartbeat protocol support (#68)
  • 0.1.14 (2026-04-23) — Aligned maxTurns logic with Claude Code (#66); fixed UTF-8 panic in tool describe and added autocompact skip logging (#63)

Full Changelog: v1.9.20...v1.9.21

Don't miss a new AionUi release

NewReleases is sending notifications on new releases.