# clisbot v0.1.53 Released: 2026-05-24 `v0.1.53` is the public release after `v0.1.52`. ## Summary `v0.1.53` is a broad channel/control/config/agents cleanup release. It keeps the public bot-first workflow intact while making the internals easier to maintain, fixes several queue, loop, message-tool, and channel edge cases found during beta testing, adds admin-only sensitive channel permissions, and refreshes the main README plus localized user guides for Slack, Telegram, Zalo Bot, and Zalo Personal. ## Operator Impact - Required action: update and restart normally. - Behavior users should notice: - CLI count/times loops reserve all requested iterations as durable queue items immediately. - Queued and immediate `message-tool` runs settle with the same final-reply rule. - Slack, Telegram, and Zalo Bot recent context no longer leaks prior slash/control command text into the next prompt. - Zalo Bot setup is easier because the guide includes the Bot Creator QR code and official create-bot doc link. - Zalo Personal docs now explain safe defaults, media attachments, media groups, and operator channel actions more clearly. - Compatibility notes: no manual migration is required. Configs before schema `0.1.53` are backed up and rewritten to add `contactsManage`, `groupsManage`, and `sensitiveChannelActionManage` for existing admin roles. - Known risks: this release includes broad internal file moves. The local and beta validation passed, but operators should still watch startup, routes, queue, loop, and channel-specific behavior after restart. Zalo Bot remains append-only and does not support live draft streaming previews. ## Functional Changes ### Channels #### Added - Added Zalo Personal media and attachment handling updates, including local inbound image attachment staging, media-group coalescing, and clearer safe default guidance for personal-account DM/group routing. - Added Zalo Bot setup onboarding with an embedded QR code for Zalo Bot Creator and a link to the official create-bot documentation. - Added localized channel setup guides and root README mirrors for Vietnamese, Simplified Chinese, and Korean. #### Changed - Reorganized channel integration boundaries around `integration`, `message`, `surface`, `config`, `pairing`, and provider-owned folders. - Reworked the root README into the main FAQ/troubleshooting and quick-start surface, including OpenClaw/Hermes positioning, supported channel capability mapping, AI-assisted setup prompts, bug-report guidance, and channel-specific guide links. - Updated channel integration and agent progress docs to make live reply update capability explicit: channels that cannot update or clear an existing reply must not fake streaming reconcile by posting duplicate progress messages. #### Fixed - Fixed recent conversation replay so Slack, Telegram, and Zalo Bot all store slash/control commands as marker-only entries instead of leaking prior control text into the next prompt. - Fixed Zalo Bot live streaming truthfulness: Zalo Bot is append-only, so `/streaming on`, `/streaming latest`, and `/streaming all` now report that live preview streaming is unsupported instead of mutating config and duplicating progress bubbles. - Fixed Slack processing indicators so assistant thread status clears when runs detach or complete, and stale persistent Slack statuses are swept for idle thread sessions when the Slack service starts after a restart or reload. ### Auth #### Added - Added admin-only sensitive channel permissions for contact management, group management, and other channel-native sensitive actions such as poll mutations or voter-revealing poll reads. ### Agents #### Fixed - Fixed explicit `/queue` and route-queued `message-tool` settlement so queue start notifications are standalone lifecycle messages, not editable streaming drafts, and final settlement follows the same fresh-final-marker rule as normal prompt delivery. - Fixed progress-only `message-tool` replies so they do not suppress pane fallback settlement unless a fresh final marker is present. ### Control #### Changed - Reorganized `control`, `config`, and `agents` into smaller owner folders with clearer command/runtime/session/queue/loop responsibilities. - Added and installed the `release-clisbot` skill as the canonical beta/stable release workflow. - Removed release/publish recovery guidance from `clisbot update --help`; update help now stays scoped to install/update target choice, docs, install flow, and verification. #### Fixed - Fixed CLI count/times loops so `clisbot loops create ... 3 ...` no longer waits for target-session idleness and instead persists every requested iteration as a pending queue item. ### Configuration #### Fixed - Fixed runtime status rendering for installs whose config omits disabled provider bot records, such as a Slack/Telegram-only config that does not have `bots.zaloBot.default`. - Kept enabled-provider config validation strict: an enabled provider still fails loudly when its configured default bot record is missing. - Suppressed stale channel health details for disabled channels so old runtime metadata does not make a disabled provider look active. ## Non-Functional Changes ### Stability #### Fixed - Added regression coverage for disabled/missing provider bot records across Slack, Telegram, and Zalo Bot runtime summaries. - Added regression coverage that CLI count loops persist queued iterations immediately even when the target session runtime is already `running`. - Added cross-channel regression coverage for queue/message-tool settlement, append-only Zalo Bot streaming, recent-context slash command filtering, and Slack persistent indicator recovery. ### DX #### Changed - Reduced duplicate release-process documentation so release mechanics have one owner: the `release-clisbot` skill. - Kept release docs pointer-only where they previously duplicated npm commands. - Added surface-access model documentation and generic README backup in `docs/user-guide/` so the new root README can stay focused on user-facing onboarding and FAQ content. #### Fixed - Added regression coverage that update help does not mention publish recovery, npm login, EOTP, or `--otp`. - Updated loop CLI help and user/docs test expectations so future agents see the queue-reservation contract instead of the removed synchronous CLI model. ## Update Notes - Update path: any version before `0.1.53` -> `0.1.53` - Manual action: none - Risk level: medium because this is a broad internal refactor with channel and config surface changes - Automatic config update: yes; configs before schema `0.1.53` are backed up and rewritten to add the new admin-only sensitive channel permissions - Breaking change: no ## Pre-Release History - `0.1.53-beta.1`: first broad boundary-refactor beta. - `0.1.53-beta.2`: fixes runtime `status` summary rendering for legacy configs that omit disabled provider bot records, and adds regression coverage for the same class of mistake across built-in providers. - `0.1.53-beta.3`: removes stale publish recovery text from `clisbot update --help`. - `0.1.53-beta.4`: fixes CLI count/times loop creation to reserve durable queue items immediately instead of waiting for the target session to become idle. - `0.1.53-beta.5`: fixes queue/message-tool settlement, recent-context command filtering, Zalo Bot append-only streaming truthfulness, and Slack persistent indicator cleanup after restart or reload. - `0.1.53-beta.6`: adds the README/user-guide refresh, localized docs mirrors, Zalo Bot QR onboarding, and Zalo Personal attachment/media-group guidance. ## Validation - `bun run check` - `bun run build` - `git diff --check` - `npm publish --dry-run --access public` - Targeted CLI/channel loop regression tests for count-loop queue reservation. - Targeted queue/message-tool, recent-context, Zalo Bot, Slack indicator, and channel breadth regression tests. - Live Slack queue, loop, slash command, help, and message E2E were validated during the refactor test matrix. ## Links - Feature docs: [docs/features/channels/README.md](../features/channels/README.md) - Update guide: [docs/updates/update-guide.md](../updates/update-guide.md) - Migration: [docs/migrations/index.md](../migrations/index.md) - Operator brief: [docs/updates/releases/v0.1.53-release-guide.md](../updates/releases/v0.1.53-release-guide.md)