openclaw-opincer 0.2.16 → 0.2.17

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.
@@ -2,7 +2,7 @@
2
2
  * channel.ts — Opincer channel plugin (WebSocket inbound, HTTP outbound)
3
3
  * Adapted for Opincer protocol: REGISTER → AUTH → receive envelopes
4
4
  *
5
- * Key differences from openclaw-pincer:
5
+ * Key differences from openclaw-opincer:
6
6
  * - WS URL: /api/v1/agents/{agent_id}/ws (not /ws?agent_id=)
7
7
  * - Groups API: /api/v1/agents/{id}/groups (not /api/v1/projects)
8
8
  * - Room WS: /api/v1/rooms/{room_id}/ws?api_key= (same)
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkKH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2CAA2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAusBD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;8BAkBD,GAAG;+BAIF,GAAG,aAAa,MAAM;;;;;4BAGnB,GAAG;;;;wBA0BP,GAAG;;;;CAkB5B,CAAC"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkKH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2CAA2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiuBD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;8BAkBD,GAAG;+BAIF,GAAG,aAAa,MAAM;;;;;4BAGnB,GAAG;;;;wBA0BP,GAAG;;;;CAkB5B,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * channel.ts — Opincer channel plugin (WebSocket inbound, HTTP outbound)
3
3
  * Adapted for Opincer protocol: REGISTER → AUTH → receive envelopes
4
4
  *
5
- * Key differences from openclaw-pincer:
5
+ * Key differences from openclaw-opincer:
6
6
  * - WS URL: /api/v1/agents/{agent_id}/ws (not /ws?agent_id=)
7
7
  * - Groups API: /api/v1/agents/{id}/groups (not /api/v1/projects)
8
8
  * - Room WS: /api/v1/rooms/{room_id}/ws?api_key= (same)
@@ -52,7 +52,7 @@ async function fetchRecentMessages(config, roomId, limit = 50) {
52
52
  try {
53
53
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/messages?limit=${limit}`;
54
54
  const res = await fetch(url, {
55
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId },
55
+ headers: { "X-API-Key": config.token },
56
56
  });
57
57
  if (!res.ok)
58
58
  return [];
@@ -84,7 +84,7 @@ async function generateSummary(config, roomId, messages) {
84
84
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/summary`;
85
85
  const res = await fetch(url, {
86
86
  method: "POST",
87
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "Content-Type": "application/json" },
87
+ headers: { "X-API-Key": config.token, "Content-Type": "application/json" },
88
88
  body: JSON.stringify({ messages }),
89
89
  });
90
90
  if (res.ok) {
@@ -173,7 +173,7 @@ async function httpPost(config, path, body) {
173
173
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1${path}`;
174
174
  const res = await fetch(url, {
175
175
  method: "POST",
176
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "Content-Type": "application/json" },
176
+ headers: { "X-API-Key": config.token, "Content-Type": "application/json" },
177
177
  body: JSON.stringify(body),
178
178
  });
179
179
  if (!res.ok)
@@ -184,7 +184,7 @@ async function fetchAgentGroups(config) {
184
184
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/agents/${config.agentId}/groups`;
185
185
  try {
186
186
  const res = await fetch(url, {
187
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "User-Agent": "openclaw-opincer/0.1" },
187
+ headers: { "X-API-Key": config.token, "User-Agent": "openclaw-opincer/0.1" },
188
188
  });
189
189
  if (!res.ok)
190
190
  return [];
@@ -198,6 +198,30 @@ async function fetchAgentGroups(config) {
198
198
  return [];
199
199
  }
200
200
  }
201
+ // ── Message dedup: prevent processing the same message twice ──────────────
202
+ // Shared across room WS and agent WS to catch duplicates from any source.
203
+ const processedMessageIds = new Set();
204
+ const DEDUP_MAX_SIZE = 2000;
205
+ function isMessageProcessed(msgId) {
206
+ if (!msgId)
207
+ return false;
208
+ if (processedMessageIds.has(msgId))
209
+ return true;
210
+ processedMessageIds.add(msgId);
211
+ // Evict oldest entries when set grows too large
212
+ if (processedMessageIds.size > DEDUP_MAX_SIZE) {
213
+ let count = 0;
214
+ for (const v of processedMessageIds) {
215
+ if (count++ < DEDUP_MAX_SIZE / 2) {
216
+ processedMessageIds.delete(v);
217
+ }
218
+ else {
219
+ break;
220
+ }
221
+ }
222
+ }
223
+ return false;
224
+ }
201
225
  // Subscribe to a single room WebSocket and dispatch messages
202
226
  function connectRoomWs(params) {
203
227
  const { config, ctx, roomId, isDM, signal } = params;
@@ -217,6 +241,12 @@ function connectRoomWs(params) {
217
241
  if (msg.type !== "room.message")
218
242
  return;
219
243
  const payload = msg.data ?? msg.payload ?? {};
244
+ const msgId = payload.id ?? msg.id ?? "";
245
+ // Dedup: skip if we already processed this message
246
+ if (isMessageProcessed(msgId)) {
247
+ console.log(`[openclaw-opincer] 🔁 Dedup: skipping already-processed message ${msgId.slice(0, 8)}`);
248
+ return;
249
+ }
220
250
  const sender = payload.sender_agent_id ?? "unknown";
221
251
  const content = payload.content ?? "";
222
252
  if (sender === config.agentId || !content)
@@ -250,7 +280,7 @@ function connectRoomWs(params) {
250
280
  // Subscribe to all agent groups, refresh every GROUP_REFRESH_INTERVAL ms
251
281
  function startGroupSubscriptions(params) {
252
282
  const { config, ctx, signal } = params;
253
- const GROUP_REFRESH_MS = 60000;
283
+ const GROUP_REFRESH_MS = 60_000;
254
284
  const subscribedRooms = new Set();
255
285
  async function refresh() {
256
286
  if (signal.aborted)
@@ -275,7 +305,7 @@ function connectWs(params) {
275
305
  function connect() {
276
306
  if (signal.aborted)
277
307
  return;
278
- const ws = new WebSocket(wsUrl(config), { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
308
+ const ws = new WebSocket(wsUrl(config), { headers: { "X-API-Key": config.token } });
279
309
  ws.on("open", () => {
280
310
  retryMs = 1000;
281
311
  console.log("[openclaw-opincer] WebSocket connected, sending REGISTER + AUTH");
@@ -372,6 +402,11 @@ function handleMessage(config, ctx, msg) {
372
402
  const text = payload.text ?? "";
373
403
  if (!text)
374
404
  return;
405
+ const msgId = msg.id ?? payload.id ?? "";
406
+ if (isMessageProcessed(msgId)) {
407
+ console.log(`[openclaw-opincer] 🔁 Dedup: skipping DM ${msgId.slice(0, 8)}`);
408
+ return;
409
+ }
375
410
  console.log(`[openclaw-opincer] 💬 DM from ${fromId.slice(0, 8)}: ${text.slice(0, 60)}`);
376
411
  dispatchToAgent(config, ctx, runtime, fromId, text, undefined);
377
412
  return;
@@ -421,7 +456,7 @@ async function notifyProjectRoom(config, projectId, taskId, taskTitle, assigneeN
421
456
  try {
422
457
  // Fetch project to get room_id
423
458
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects/${projectId}`;
424
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
459
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
425
460
  if (!res.ok)
426
461
  return;
427
462
  const project = await res.json();
@@ -450,7 +485,7 @@ async function fetchRoomProject(config, roomId) {
450
485
  }
451
486
  try {
452
487
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects`;
453
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
488
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
454
489
  if (!res.ok)
455
490
  return null;
456
491
  const data = await res.json();
@@ -468,7 +503,7 @@ async function fetchRoomProject(config, roomId) {
468
503
  async function fetchProjectTaskSummary(config, projectId) {
469
504
  try {
470
505
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects/${projectId}/tasks`;
471
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
506
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
472
507
  if (!res.ok)
473
508
  return null;
474
509
  const data = await res.json();
@@ -494,7 +529,7 @@ async function fetchProjectTaskSummary(config, projectId) {
494
529
  async function fetchRoomMembersWithStatus(config, roomId) {
495
530
  try {
496
531
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/members`;
497
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
532
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
498
533
  if (!res.ok)
499
534
  return [];
500
535
  const data = await res.json();
@@ -503,7 +538,7 @@ async function fetchRoomMembersWithStatus(config, roomId) {
503
538
  id: m.agent_id ?? m.id ?? "",
504
539
  name: m.name ?? m.agent_name ?? m.display_name ?? m.id?.slice(0, 8) ?? "?",
505
540
  status: m.status ?? m.online_status ?? "offline",
506
- })).filter(m => Boolean(m.id));
541
+ })).filter(m => m.id && m.id !== config.agentId);
507
542
  }
508
543
  catch {
509
544
  return [];
@@ -666,8 +701,6 @@ function dispatchToAgent(config, ctx, runtime, senderId, text, roomId) {
666
701
  `room_id: ${roomId}`,
667
702
  `api_base: ${baseUrl}/api/v1`,
668
703
  `api_key: ${config.token}`,
669
- `my_name_in_room: ${config.agentName}`,
670
- `my_agent_id: ${config.agentId}`,
671
704
  ...(roomProject
672
705
  ? [
673
706
  `project: ${roomProject.name} (project_id: ${roomProject.id})`,
@@ -679,12 +712,6 @@ function dispatchToAgent(config, ctx, runtime, senderId, text, roomId) {
679
712
  ``,
680
713
  `完整 API 参考请查阅你的 Opincer skill 文档。如果还没有,请先读取 https://www.opincer.com/skill.md 并保存为 skill。`,
681
714
  `规则: 写操作必须先得到用户明确指令。非项目群内禁止创建任务。`,
682
- ``,
683
- `🌊 虾圈(Plaza)— 发帖/点赞/评论(使用 X-API-Key 认证,无需 JWT):`,
684
- ` 发帖: POST /api/plaza/posts Header: X-API-Key: <api_key>`,
685
- ` Body: {"post_type":"update","content":"...","media_urls":[],"tags":[]}`,
686
- ` 点赞(toggle): POST /api/plaza/posts/{id}/like Header: X-API-Key: <api_key>`,
687
- ` 帖子列表: GET /api/plaza/posts?limit=20&sort=latest|hot Header: X-API-Key: <api_key>`,
688
715
  ].join("\n")
689
716
  : ``;
690
717
  // Reply hint — tells agent exactly how to send a response
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openclaw-opincer",
3
- "version": "0.2.16",
3
+ "version": "0.2.17",
4
4
  "description": "Opincer channel plugin for OpenClaw",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/channel.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * channel.ts — Opincer channel plugin (WebSocket inbound, HTTP outbound)
3
3
  * Adapted for Opincer protocol: REGISTER → AUTH → receive envelopes
4
4
  *
5
- * Key differences from openclaw-pincer:
5
+ * Key differences from openclaw-opincer:
6
6
  * - WS URL: /api/v1/agents/{agent_id}/ws (not /ws?agent_id=)
7
7
  * - Groups API: /api/v1/agents/{id}/groups (not /api/v1/projects)
8
8
  * - Room WS: /api/v1/rooms/{room_id}/ws?api_key= (same)
@@ -67,7 +67,7 @@ async function fetchRecentMessages(
67
67
  try {
68
68
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/messages?limit=${limit}`;
69
69
  const res = await fetch(url, {
70
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId },
70
+ headers: { "X-API-Key": config.token },
71
71
  });
72
72
  if (!res.ok) return [];
73
73
  const data = await res.json();
@@ -105,7 +105,7 @@ async function generateSummary(
105
105
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/summary`;
106
106
  const res = await fetch(url, {
107
107
  method: "POST",
108
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "Content-Type": "application/json" },
108
+ headers: { "X-API-Key": config.token, "Content-Type": "application/json" },
109
109
  body: JSON.stringify({ messages }),
110
110
  });
111
111
  if (res.ok) {
@@ -211,7 +211,7 @@ async function httpPost(config: OpincerConfig, path: string, body: any): Promise
211
211
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1${path}`;
212
212
  const res = await fetch(url, {
213
213
  method: "POST",
214
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "Content-Type": "application/json" },
214
+ headers: { "X-API-Key": config.token, "Content-Type": "application/json" },
215
215
  body: JSON.stringify(body),
216
216
  });
217
217
  if (!res.ok) throw new Error(`Opincer POST ${path} ${res.status}`);
@@ -227,7 +227,7 @@ async function fetchAgentGroups(config: OpincerConfig): Promise<AgentGroup[]> {
227
227
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/agents/${config.agentId}/groups`;
228
228
  try {
229
229
  const res = await fetch(url, {
230
- headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId, "User-Agent": "openclaw-opincer/0.1" },
230
+ headers: { "X-API-Key": config.token, "User-Agent": "openclaw-opincer/0.1" },
231
231
  });
232
232
  if (!res.ok) return [];
233
233
  const data = await res.json();
@@ -240,6 +240,29 @@ async function fetchAgentGroups(config: OpincerConfig): Promise<AgentGroup[]> {
240
240
  }
241
241
  }
242
242
 
243
+ // ── Message dedup: prevent processing the same message twice ──────────────
244
+ // Shared across room WS and agent WS to catch duplicates from any source.
245
+ const processedMessageIds = new Set<string>();
246
+ const DEDUP_MAX_SIZE = 2000;
247
+
248
+ function isMessageProcessed(msgId: string): boolean {
249
+ if (!msgId) return false;
250
+ if (processedMessageIds.has(msgId)) return true;
251
+ processedMessageIds.add(msgId);
252
+ // Evict oldest entries when set grows too large
253
+ if (processedMessageIds.size > DEDUP_MAX_SIZE) {
254
+ let count = 0;
255
+ for (const v of processedMessageIds) {
256
+ if (count++ < DEDUP_MAX_SIZE / 2) {
257
+ processedMessageIds.delete(v);
258
+ } else {
259
+ break;
260
+ }
261
+ }
262
+ }
263
+ return false;
264
+ }
265
+
243
266
  // Subscribe to a single room WebSocket and dispatch messages
244
267
  function connectRoomWs(params: {
245
268
  config: OpincerConfig;
@@ -266,6 +289,12 @@ function connectRoomWs(params: {
266
289
  const msg = JSON.parse(data.toString());
267
290
  if (msg.type !== "room.message") return;
268
291
  const payload = msg.data ?? msg.payload ?? {};
292
+ const msgId = payload.id ?? msg.id ?? "";
293
+ // Dedup: skip if we already processed this message
294
+ if (isMessageProcessed(msgId)) {
295
+ console.log(`[openclaw-opincer] 🔁 Dedup: skipping already-processed message ${msgId.slice(0, 8)}`);
296
+ return;
297
+ }
269
298
  const sender = payload.sender_agent_id ?? "unknown";
270
299
  const content = payload.content ?? "";
271
300
  if (sender === config.agentId || !content) return;
@@ -334,7 +363,7 @@ function connectWs(params: {
334
363
  function connect() {
335
364
  if (signal.aborted) return;
336
365
 
337
- const ws = new WebSocket(wsUrl(config), { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
366
+ const ws = new WebSocket(wsUrl(config), { headers: { "X-API-Key": config.token } });
338
367
 
339
368
  ws.on("open", () => {
340
369
  retryMs = 1000;
@@ -431,6 +460,11 @@ function handleMessage(config: OpincerConfig, ctx: any, msg: any) {
431
460
  if (msgType === "MESSAGE" || msgType === "agent.message") {
432
461
  const text = payload.text ?? "";
433
462
  if (!text) return;
463
+ const msgId = msg.id ?? payload.id ?? "";
464
+ if (isMessageProcessed(msgId)) {
465
+ console.log(`[openclaw-opincer] 🔁 Dedup: skipping DM ${msgId.slice(0, 8)}`);
466
+ return;
467
+ }
434
468
  console.log(`[openclaw-opincer] 💬 DM from ${fromId.slice(0, 8)}: ${text.slice(0, 60)}`);
435
469
  dispatchToAgent(config, ctx, runtime, fromId, text, undefined);
436
470
  return;
@@ -494,7 +528,7 @@ async function notifyProjectRoom(
494
528
  try {
495
529
  // Fetch project to get room_id
496
530
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects/${projectId}`;
497
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
531
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
498
532
  if (!res.ok) return;
499
533
  const project: { room_id?: string; name?: string } = await res.json();
500
534
  const roomId = project.room_id;
@@ -544,7 +578,7 @@ async function fetchRoomProject(config: OpincerConfig, roomId: string): Promise<
544
578
  }
545
579
  try {
546
580
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects`;
547
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
581
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
548
582
  if (!res.ok) return null;
549
583
  const data = await res.json();
550
584
  const projects: ProjectInfo[] = Array.isArray(data) ? data : (data.projects ?? data.data ?? []);
@@ -561,7 +595,7 @@ async function fetchRoomProject(config: OpincerConfig, roomId: string): Promise<
561
595
  async function fetchProjectTaskSummary(config: OpincerConfig, projectId: string): Promise<TaskSummary | null> {
562
596
  try {
563
597
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/projects/${projectId}/tasks`;
564
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
598
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
565
599
  if (!res.ok) return null;
566
600
  const data = await res.json();
567
601
  const tasks: Array<{ status: string }> = Array.isArray(data) ? data : (data.tasks ?? data.data ?? []);
@@ -582,7 +616,7 @@ async function fetchProjectTaskSummary(config: OpincerConfig, projectId: string)
582
616
  async function fetchRoomMembersWithStatus(config: OpincerConfig, roomId: string): Promise<AgentInfo[]> {
583
617
  try {
584
618
  const url = `${config.baseUrl.replace(/\/$/, "")}/api/v1/rooms/${roomId}/members`;
585
- const res = await fetch(url, { headers: { "X-API-Key": config.token, "X-Agent-ID": config.agentId } });
619
+ const res = await fetch(url, { headers: { "X-API-Key": config.token } });
586
620
  if (!res.ok) return [];
587
621
  const data = await res.json();
588
622
  const members: any[] = Array.isArray(data) ? data : (data.members ?? data.data ?? []);
@@ -590,7 +624,7 @@ async function fetchRoomMembersWithStatus(config: OpincerConfig, roomId: string)
590
624
  id: m.agent_id ?? m.id ?? "",
591
625
  name: m.name ?? m.agent_name ?? m.display_name ?? m.id?.slice(0, 8) ?? "?",
592
626
  status: m.status ?? m.online_status ?? "offline",
593
- })).filter(m => Boolean(m.id));
627
+ })).filter(m => m.id && m.id !== config.agentId);
594
628
  } catch {
595
629
  return [];
596
630
  }
@@ -776,8 +810,6 @@ function dispatchToAgent(
776
810
  `room_id: ${roomId}`,
777
811
  `api_base: ${baseUrl}/api/v1`,
778
812
  `api_key: ${config.token}`,
779
- `my_name_in_room: ${config.agentName}`,
780
- `my_agent_id: ${config.agentId}`,
781
813
  ...(roomProject
782
814
  ? [
783
815
  `project: ${roomProject.name} (project_id: ${roomProject.id})`,
@@ -789,12 +821,6 @@ function dispatchToAgent(
789
821
  ``,
790
822
  `完整 API 参考请查阅你的 Opincer skill 文档。如果还没有,请先读取 https://www.opincer.com/skill.md 并保存为 skill。`,
791
823
  `规则: 写操作必须先得到用户明确指令。非项目群内禁止创建任务。`,
792
- ``,
793
- `🌊 虾圈(Plaza)— 发帖/点赞/评论(使用 X-API-Key 认证,无需 JWT):`,
794
- ` 发帖: POST /api/plaza/posts Header: X-API-Key: <api_key>`,
795
- ` Body: {"post_type":"update","content":"...","media_urls":[],"tags":[]}`,
796
- ` 点赞(toggle): POST /api/plaza/posts/{id}/like Header: X-API-Key: <api_key>`,
797
- ` 帖子列表: GET /api/plaza/posts?limit=20&sort=latest|hot Header: X-API-Key: <api_key>`,
798
824
  ].join("\n")
799
825
  : ``;
800
826