palz-connector 1.1.1 → 1.1.3

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "palz-connector",
3
3
  "name": "Palz Connector Channel",
4
- "version": "1.1.1",
4
+ "version": "1.1.3",
5
5
  "description": "Palz IM 接入 OpenClaw",
6
6
  "channels": [
7
7
  "palz-connector"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "palz-connector",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "type": "module",
5
5
  "main": "index.ts",
6
6
  "description": "Palz IM 接入 OpenClaw — 模块化架构,基于 OpenClaw Runtime 消息管道",
package/src/bot.ts CHANGED
@@ -141,7 +141,7 @@ async function dispatchPalzMessage(params: HandlePalzMessageParams): Promise<voi
141
141
  log(`${tag}: [STEP 4 输出] mediaList=${JSON.stringify(mediaList.map((m) => ({ path: m.path, contentType: m.contentType })))} mediaPayload=${JSON.stringify(mediaPayload)}`);
142
142
 
143
143
  // STEP 5: 解析路由
144
- const routeInput = { cfg: "(cfg)", channel: "palz-connector", accountId, peer: { kind: "direct", id: peerId } };
144
+ const routeInput = { cfg: "(cfg)", channel: "palz-connector", accountId, peer: { kind: "direct", id: peerId }, agent_id: msg.agent_id };
145
145
  log(`${tag}: [STEP 5/6 路由解析] 输入: ${JSON.stringify(routeInput)}`);
146
146
  const route = core.channel.routing.resolveAgentRoute({
147
147
  cfg,
@@ -149,6 +149,13 @@ async function dispatchPalzMessage(params: HandlePalzMessageParams): Promise<voi
149
149
  accountId,
150
150
  peer: { kind: "direct", id: peerId },
151
151
  });
152
+
153
+ // 如果 IM 传入了 agent_id,覆盖路由结果
154
+ if (msg.agent_id) {
155
+ log(`${tag}: [STEP 5 覆盖] IM指定agent_id="${msg.agent_id}",覆盖原agentId="${route.agentId}"`);
156
+ route.agentId = msg.agent_id;
157
+ }
158
+
152
159
  log(`${tag}: [STEP 5 输出] agentId=${route.agentId} sessionKey=${route.sessionKey} accountId=${route.accountId} matchedBy=${route.matchedBy}`);
153
160
 
154
161
  // STEP 6a: 构建 envelope body
package/src/types.ts CHANGED
@@ -24,6 +24,8 @@ export interface PalzMessageEvent {
24
24
  stream?: boolean;
25
25
  msg_id: string;
26
26
  timestamp: number;
27
+ /** IM 传入的 agent_id,用于指定 OpenClaw agent */
28
+ agent_id?: string;
27
29
  }
28
30
 
29
31
  // ============ 配置 ============