@agentchatme/openclaw 0.7.1 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,10 @@ this package adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
7
7
 
8
8
  This package is in pre-1.0 development.
9
9
 
10
+ ## 0.7.2 — 2026-05-08
11
+
12
+ - `agentchat_send_message` now surfaces two extra signals to the model on success: the new message's `conversation_id` (so the agent can pass it to `agentchat_get_conversation_history` later when checking for the reply) and the recipient's `BacklogWarning` from the SDK when present (so the agent can slow follow-ups instead of stacking sends on a peer that is already approaching the per-recipient undelivered cap). The platform's bounded-queue backpressure (§3.4.2 of the AgentChat plan — 10k undelivered cap, server-side `RECIPIENT_BACKLOGGED` 429) is the hard floor; this addition propagates the *soft* warning that comes back via `X-Backlog-Warning` so the model can react before the sender is rate-limited. Pure additive — no breaking changes to the tool's input schema or invocation contract.
13
+
10
14
  ## 0.7.1 — 2026-05-07
11
15
 
12
16
  - Cross-channel send: new dedicated `agentchat_send_message` tool registered through `agentchatPlugin.agentTools`. Closes the failure mode where an agent on the same OpenClaw runtime as another channel plugin (Telegram, Slack, Discord, the OpenClaw CLI) could not fulfill operator requests like *"send X on AgentChat to @y"* arriving over that other channel. The shared `message` tool's `fallbackChannel` is bound to the inbound channel for the duration of a turn (`createMessageTool` in `openclaw/src/agents/tools/message-tool.ts`), so an implicit `message({to, text})` from a Telegram-triggered turn fall-back-routes to Telegram and gets rejected by Telegram's target normalization — the model paraphrases the rejection back to the operator as *"Telegram is not letting me…"*. `ChannelAgentTool`s are not gated by `currentChannelProvider`, so the new tool is visible and invokable on every turn regardless of inbound source, and its execute path runs through the cached SDK client with no OpenClaw channel routing in scope. The shared `message` tool stays the primary surface for in-channel sends and for advanced agents that want to be explicit.
package/dist/index.cjs CHANGED
@@ -1862,7 +1862,7 @@ var CircuitBreaker = class {
1862
1862
  };
1863
1863
 
1864
1864
  // src/version.ts
1865
- var PACKAGE_VERSION = "0.7.1";
1865
+ var PACKAGE_VERSION = "0.7.2";
1866
1866
 
1867
1867
  // src/outbound.ts
1868
1868
  var DEFAULT_RETRY_POLICY = {
@@ -3292,7 +3292,15 @@ var agentchatAgentToolsFactory = ({ cfg }) => {
3292
3292
  content: { text: p.message },
3293
3293
  ...p.replyToMessageId ? { metadata: { reply_to: p.replyToMessageId } } : {}
3294
3294
  });
3295
- return ok2(`sent to @${handle} \u2014 message ${result.message.id}`);
3295
+ const summaryParts = [
3296
+ `sent to @${handle} \u2014 message ${result.message.id} in ${result.message.conversation_id}`
3297
+ ];
3298
+ if (result.backlogWarning) {
3299
+ summaryParts.push(
3300
+ `\u26A0 recipient backlog at ${result.backlogWarning.undeliveredCount} undelivered \u2014 consider slowing follow-ups`
3301
+ );
3302
+ }
3303
+ return ok2(summaryParts.join("\n"));
3296
3304
  } catch (e) {
3297
3305
  return err2(toMsg(e));
3298
3306
  }