# clisbot v0.1.43 Released: 2026-04-21 This is the consolidated public note for the work originally split across `v0.1.42` and `v0.1.43`. `v0.1.43` makes runtime recovery more durable, clarifies routed follow-up controls, makes tmux prompt submission checks more truthful, restores queued-start notifications in non-streaming message-tool flows, and stops Slack thread replies from inheriting stale attachments from the root message. ## In One Line `clisbot` now recovers more truthfully from runtime and tmux startup trouble, gives routed conversations clearer follow-up controls, and tightens prompt and attachment delivery so Slack and Telegram sessions behave more honestly under real load. ## Highlights ### 1. Runtime recovery is smoother and less likely to stall permanently - the default runtime monitor ladder now ramps through 1 minute, 3 minutes, 5 minutes, 10 minutes, 15 minutes, and finally 30 minutes - once the final stage is reached, the runtime keeps retrying at that delay instead of permanently giving up - Telegram polling conflicts now recover inside the runtime instead of forcing a hard stop when another process is temporarily using the same bot token - delayed owner alerts can surface persistent runtime-channel failures while recovery is still in progress ### 2. Routed follow-up controls and routed command guidance are clearer - `/mention` is now the fast shorthand for `/followup mention-only` - `/mention channel` and `/mention all` persist mention-only defaults at the right scope and also apply them to the current conversation immediately - `/transcript` now returns a compact recent session snapshot by default, while `/transcript full` keeps the longer pane view available when needed - routed Slack and Telegram guidance now surface the main follow-up and transcript controls more directly ### 3. Tmux prompt delivery is more truthful at the exact paste-versus-submit boundary - submit confirmation now baselines against the pane snapshot after the pasted prompt is visibly present - this closes the false-positive path where a visible paste could be mistaken for a successful Enter submit - startup session-id capture keeps its cooldown behavior when prompt delivery fails truthfully, which makes the first prompt path after `/status` less fragile ### 4. Queued messages now announce when they actually start running in more routed chat flows - queued-start notifications are now allowed to surface on the first `running` update even when the route uses `message-tool` with `streaming: off` - this brings Slack and Telegram behavior back in line with the intended queue lifecycle: queued first, then “now running”, then final settlement - the change stays narrow and does not reopen wider live-preview rendering in non-streaming flows ### 5. Slack thread replies no longer inherit attachments from the root thread message - Slack attachment hydration now looks only at the current inbound message when the event payload omits `files` - a text-only reply in a thread no longer pulls an old image or file from the root thread prompt into the new agent request - this keeps attachment mentions truthful to what the user actually sent in that specific message ### 6. Message-tool and operator guidance are cleaner - `message send` now prefers `--file` as the generic attachment flag, with `--media` kept as a compatibility alias - agent prompt guidance keeps the model on normal markdown output instead of implying destination-native raw payloads - `allowBots` remains safely defaulted to `false`, and the current note includes explicit regression coverage that routed bot-originated messages are dropped unless that config is intentionally enabled ## Schema And Contract Notes Schema version is now `0.1.43`. Current template: - `config/clisbot.json.template` ## Validation Validated with: - `bun run check` And supported by targeted regressions for: - runtime monitor restart backoff behavior - runtime process and supervisor recovery state - Telegram polling-conflict recovery - scoped follow-up command parsing and persistence - compact transcript versus full transcript rendering - tmux submit confirmation versus paste visibility - startup session-id capture retry and cooldown behavior - queued-start notifications in message-tool non-streaming flows - Slack text-only thread replies with a file on the root thread - Slack and Telegram `allowBots=false` ingress enforcement