eacn3 0.3.5 → 0.5.0

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.
Files changed (44) hide show
  1. package/dist/index.js +224 -26
  2. package/dist/index.js.map +1 -1
  3. package/dist/server.js +571 -27
  4. package/dist/server.js.map +1 -1
  5. package/dist/src/a2a-server.js +2 -1
  6. package/dist/src/a2a-server.js.map +1 -1
  7. package/dist/src/event-transport.d.ts +31 -0
  8. package/dist/src/event-transport.js +178 -0
  9. package/dist/src/event-transport.js.map +1 -0
  10. package/dist/src/models.d.ts +55 -11
  11. package/dist/src/models.js +1 -1
  12. package/dist/src/models.js.map +1 -1
  13. package/dist/src/network-client.d.ts +1 -1
  14. package/dist/src/network-client.js +4 -5
  15. package/dist/src/network-client.js.map +1 -1
  16. package/dist/src/reverse-control.d.ts +74 -0
  17. package/dist/src/reverse-control.js +609 -0
  18. package/dist/src/reverse-control.js.map +1 -0
  19. package/dist/src/state.d.ts +17 -4
  20. package/dist/src/state.js +115 -14
  21. package/dist/src/state.js.map +1 -1
  22. package/openclaw.plugin.json +1 -1
  23. package/package.json +2 -6
  24. package/scripts/cli.cjs +3 -3
  25. package/skills/eacn3-bid/SKILL.md +2 -2
  26. package/skills/eacn3-bid-zh/SKILL.md +2 -2
  27. package/skills/eacn3-bounty/SKILL.md +7 -7
  28. package/skills/eacn3-bounty-zh/SKILL.md +7 -7
  29. package/skills/eacn3-budget/SKILL.md +1 -1
  30. package/skills/eacn3-budget-zh/SKILL.md +1 -1
  31. package/skills/eacn3-clarify/SKILL.md +1 -1
  32. package/skills/eacn3-clarify-zh/SKILL.md +1 -1
  33. package/skills/eacn3-collect/SKILL.md +1 -1
  34. package/skills/eacn3-collect-zh/SKILL.md +1 -1
  35. package/skills/eacn3-dashboard/SKILL.md +3 -3
  36. package/skills/eacn3-dashboard-zh/SKILL.md +3 -3
  37. package/skills/eacn3-delegate/SKILL.md +1 -1
  38. package/skills/eacn3-delegate-zh/SKILL.md +1 -1
  39. package/skills/eacn3-execute/SKILL.md +1 -1
  40. package/skills/eacn3-execute-zh/SKILL.md +1 -1
  41. package/skills/eacn3-invite/SKILL.md +1 -1
  42. package/skills/eacn3-invite-zh/SKILL.md +1 -1
  43. package/skills/eacn3-task/SKILL.md +1 -1
  44. package/skills/eacn3-task-zh/SKILL.md +1 -1
package/dist/index.js CHANGED
@@ -7,8 +7,9 @@
7
7
  import { EACN3_DEFAULT_NETWORK_ENDPOINT, isTierEligible } from "./src/models.js";
8
8
  import * as state from "./src/state.js";
9
9
  import * as net from "./src/network-client.js";
10
- import * as ws from "./src/ws-manager.js";
10
+ import * as ws from "./src/event-transport.js";
11
11
  import * as a2a from "./src/a2a-server.js";
12
+ import * as rc from "./src/reverse-control.js";
12
13
  // ---------------------------------------------------------------------------
13
14
  // Heartbeat
14
15
  // ---------------------------------------------------------------------------
@@ -33,7 +34,18 @@ function stopHeartbeat() {
33
34
  // Helper
34
35
  // ---------------------------------------------------------------------------
35
36
  function ok(data) {
36
- return { content: [{ type: "text", text: JSON.stringify(data) }] };
37
+ const result = {
38
+ content: [{ type: "text", text: JSON.stringify(data) }],
39
+ };
40
+ // Directive injection: in OpenClaw we have no MCP Server instance,
41
+ // so sampling/notifications are unavailable. Instead, piggyback
42
+ // pending event directives onto every tool response — the Host LLM
43
+ // sees them immediately and can act without explicit polling.
44
+ const directives = rc.drainDirectives();
45
+ if (directives) {
46
+ result.content.push({ type: "text", text: directives });
47
+ }
48
+ return result;
37
49
  }
38
50
  function err(message) {
39
51
  return { content: [{ type: "text", text: JSON.stringify({ error: message }) }] };
@@ -74,8 +86,10 @@ function resolveAgentId(provided) {
74
86
  function registerEventCallbacks() {
75
87
  ws.setEventCallback((agentId, event) => {
76
88
  const taskId = event.task_id;
89
+ // Reverse control: try to handle event proactively
90
+ rc.handleEvent(agentId, event).catch(() => { });
77
91
  switch (event.type) {
78
- case "awaiting_retrieval":
92
+ case "task_collected":
79
93
  state.updateTaskStatus(taskId, "awaiting_retrieval");
80
94
  break;
81
95
  case "subtask_completed": {
@@ -83,7 +97,8 @@ function registerEventCallbacks() {
83
97
  if (subtaskId) {
84
98
  net.getTaskResults(subtaskId, agentId)
85
99
  .then((res) => {
86
- state.pushEvents([{
100
+ state.pushEvents(agentId, [{
101
+ msg_id: crypto.randomUUID().replace(/-/g, ""),
87
102
  type: "subtask_completed",
88
103
  task_id: taskId,
89
104
  payload: { subtask_id: subtaskId, results: res.results },
@@ -94,11 +109,11 @@ function registerEventCallbacks() {
94
109
  }
95
110
  break;
96
111
  }
97
- case "timeout":
112
+ case "task_timeout":
98
113
  state.updateTaskStatus(taskId, "no_one");
99
114
  net.reportEvent(agentId, "task_timeout").catch(() => { });
100
115
  break;
101
- case "budget_confirmation":
116
+ case "bid_request_confirmation":
102
117
  break;
103
118
  case "task_broadcast":
104
119
  autoBidEvaluate(agentId, event).catch(() => { });
@@ -123,11 +138,13 @@ async function autoBidEvaluate(agentId, event) {
123
138
  if (!isInvited && !isTierEligible(agentTier, taskLevel))
124
139
  return;
125
140
  if (agent.capabilities?.max_concurrent_tasks) {
126
- const activeTasks = Object.values(state.getState().local_tasks).filter((t) => t.role === "executor" && t.status !== "completed" && t.status !== "no_one");
141
+ // Filter by this agent's tasks only (#110)
142
+ const activeTasks = Object.values(state.getState().local_tasks).filter((t) => t.agent_id === agentId && t.role === "executor" && t.status !== "completed" && t.status !== "no_one");
127
143
  if (activeTasks.length >= agent.capabilities.max_concurrent_tasks)
128
144
  return;
129
145
  }
130
- state.pushEvents([{
146
+ state.pushEvents(agentId, [{
147
+ msg_id: crypto.randomUUID().replace(/-/g, ""),
131
148
  type: "task_broadcast",
132
149
  task_id: taskId,
133
150
  payload: { ...payload, auto_match: true, matched_agent: agentId },
@@ -135,6 +152,119 @@ async function autoBidEvaluate(agentId, event) {
135
152
  }]);
136
153
  }
137
154
  // ---------------------------------------------------------------------------
155
+ // Long-polling helpers for eacn3_await_events
156
+ // ---------------------------------------------------------------------------
157
+ /**
158
+ * Drain events from the buffer, optionally filtering by type.
159
+ * Unlike state.drainEvents(), only removes matching events and leaves the rest.
160
+ */
161
+ function drainMatchingEvents(agentId, filterTypes) {
162
+ const all = state.drainEvents(agentId);
163
+ if (!filterTypes || filterTypes.length === 0)
164
+ return all;
165
+ const matching = [];
166
+ const remaining = [];
167
+ for (const e of all) {
168
+ if (filterTypes.includes(e.type)) {
169
+ matching.push(e);
170
+ }
171
+ else {
172
+ remaining.push(e);
173
+ }
174
+ }
175
+ // Put non-matching events back
176
+ if (remaining.length > 0)
177
+ state.pushEvents(agentId, remaining);
178
+ return matching;
179
+ }
180
+ /**
181
+ * Build the await_events response with suggested actions for each event.
182
+ * This is the core of "reverse control without sampling" — the tool result
183
+ * tells the LLM exactly what action to take.
184
+ */
185
+ function buildAwaitResponse(events) {
186
+ return {
187
+ count: events.length,
188
+ events: events.map((event) => {
189
+ const payload = event.payload;
190
+ switch (event.type) {
191
+ case "task_broadcast":
192
+ return {
193
+ event,
194
+ suggested_action: `New task in domains [${(payload.domains ?? []).join(", ")}] with budget ${payload.budget ?? "?"}. Evaluate and submit a bid if it matches your capabilities.`,
195
+ suggested_tool: "eacn3_submit_bid",
196
+ suggested_params: {
197
+ task_id: event.task_id,
198
+ confidence: "0.0-1.0 (your self-assessed ability)",
199
+ price: "credits you want as payment",
200
+ },
201
+ urgency: "high",
202
+ };
203
+ case "direct_message":
204
+ return {
205
+ event,
206
+ suggested_action: `Agent ${payload.from ?? "unknown"} sent you a message: "${String(payload.content ?? "").slice(0, 200)}". Consider replying.`,
207
+ suggested_tool: "eacn3_send_message",
208
+ suggested_params: {
209
+ to_agent_id: payload.from,
210
+ content: "your reply here",
211
+ task_id: event.task_id,
212
+ },
213
+ urgency: "high",
214
+ };
215
+ case "subtask_completed":
216
+ return {
217
+ event,
218
+ suggested_action: `Subtask ${payload.subtask_id ?? "?"} completed for task ${event.task_id}. Fetch and review the results, then decide: submit your final result or create another subtask.`,
219
+ suggested_tool: "eacn3_get_task_results",
220
+ suggested_params: { task_id: String(payload.subtask_id ?? event.task_id) },
221
+ urgency: "high",
222
+ };
223
+ case "bid_request_confirmation":
224
+ return {
225
+ event,
226
+ suggested_action: `A bid on task ${event.task_id} exceeded the budget (bid: ${payload.price ?? "?"}, budget: ${payload.budget ?? "?"}). Approve or reject.`,
227
+ suggested_tool: "eacn3_confirm_budget",
228
+ suggested_params: { task_id: event.task_id, approved: true },
229
+ urgency: "high",
230
+ };
231
+ case "task_collected":
232
+ return {
233
+ event,
234
+ suggested_action: `Task ${event.task_id} has results ready. Retrieve and select the best one.`,
235
+ suggested_tool: "eacn3_get_task_results",
236
+ suggested_params: { task_id: event.task_id },
237
+ urgency: "medium",
238
+ };
239
+ case "discussion_update":
240
+ return {
241
+ event,
242
+ suggested_action: `New discussion message on task ${event.task_id}. Read and respond.`,
243
+ suggested_tool: "eacn3_get_task",
244
+ suggested_params: { task_id: event.task_id },
245
+ urgency: "medium",
246
+ };
247
+ case "task_timeout":
248
+ return {
249
+ event,
250
+ suggested_action: `Task ${event.task_id} timed out. Reputation impact was automatic. No action needed.`,
251
+ suggested_tool: "eacn3_get_task",
252
+ suggested_params: { task_id: event.task_id },
253
+ urgency: "low",
254
+ };
255
+ default:
256
+ return {
257
+ event,
258
+ suggested_action: `Unknown event type "${event.type}" on task ${event.task_id}. Inspect manually.`,
259
+ suggested_tool: "eacn3_get_task",
260
+ suggested_params: { task_id: event.task_id },
261
+ urgency: "low",
262
+ };
263
+ }
264
+ }),
265
+ };
266
+ }
267
+ // ---------------------------------------------------------------------------
138
268
  // Plugin entry
139
269
  // ---------------------------------------------------------------------------
140
270
  export default {
@@ -196,7 +326,7 @@ export default {
196
326
  // #1 eacn3_connect
197
327
  api.registerTool({
198
328
  name: "eacn3_connect",
199
- description: "Connect to the EACN3 network — this must be your FIRST call. Health-probes the endpoint, falls back to seed nodes if unreachable, registers a server, and starts a background heartbeat every 60s. Returns {server_id, network_endpoint, fallback, agents_online, restored_agents, hint}. Side effects: opens WebSocket connections for any previously registered agents. IMPORTANT: check restored_agents in the response — if you have previously registered agents, they are already reconnected and ready to use. You do NOT need to re-register them. Only call eacn3_register_agent if you need a NEW agent.",
329
+ description: "Connect to the EACN3 network — this must be your FIRST call. Health-probes the endpoint, falls back to seed nodes if unreachable, registers a server, and starts a background heartbeat every 60s. Returns {server_id, network_endpoint, fallback, agents_online, restored_agents, hint}. Side effects: starts event polling for any previously registered agents. IMPORTANT: check restored_agents in the response — if you have previously registered agents, they are already reconnected and ready to use. You do NOT need to re-register them. Only call eacn3_register_agent if you need a NEW agent.",
200
330
  parameters: {
201
331
  type: "object",
202
332
  properties: {
@@ -227,9 +357,9 @@ export default {
227
357
  s.server_card.status = "online";
228
358
  }
229
359
  catch {
230
- const res = await net.registerServer("0.3.0", "plugin://local", "plugin-user");
360
+ const res = await net.registerServer("0.5.0", "plugin://local", "plugin-user");
231
361
  sid = res.server_id;
232
- s.server_card = { server_id: sid, version: "0.3.0", endpoint: "plugin://local", owner: "plugin-user", status: "online" };
362
+ s.server_card = { server_id: sid, version: "0.5.0", endpoint: "plugin://local", owner: "plugin-user", status: "online" };
233
363
  for (const agent of Object.values(s.agents)) {
234
364
  agent.server_id = sid;
235
365
  try {
@@ -240,9 +370,9 @@ export default {
240
370
  }
241
371
  }
242
372
  else {
243
- const res = await net.registerServer("0.3.0", "plugin://local", "plugin-user");
373
+ const res = await net.registerServer("0.5.0", "plugin://local", "plugin-user");
244
374
  sid = res.server_id;
245
- s.server_card = { server_id: sid, version: "0.3.0", endpoint: "plugin://local", owner: "plugin-user", status: "online" };
375
+ s.server_card = { server_id: sid, version: "0.5.0", endpoint: "plugin://local", owner: "plugin-user", status: "online" };
246
376
  }
247
377
  state.save();
248
378
  startHeartbeat();
@@ -275,7 +405,7 @@ export default {
275
405
  // #2 eacn3_disconnect
276
406
  api.registerTool({
277
407
  name: "eacn3_disconnect",
278
- description: "Disconnect from the EACN3 network and close all WebSocket connections. Requires: eacn3_connect first. Side effects: active tasks will timeout and hurt reputation. Server identity and agent registrations are preserved — on next eacn3_connect they will be automatically reconnected. Returns {disconnected: true}. Only call at end of session.",
408
+ description: "Disconnect from the EACN3 network and stop event polling. Requires: eacn3_connect first. Side effects: active tasks will timeout and hurt reputation. Server identity and agent registrations are preserved — on next eacn3_connect they will be automatically reconnected. Returns {disconnected: true}. Only call at end of session.",
279
409
  parameters: { type: "object", properties: {} },
280
410
  async execute() {
281
411
  stopHeartbeat();
@@ -350,7 +480,7 @@ export default {
350
480
  // #5 eacn3_register_agent
351
481
  api.registerTool({
352
482
  name: "eacn3_register_agent",
353
- description: "Create and register an agent identity on the EACN3 network. Requires: eacn3_connect first. Assembles an AgentCard, registers it with the network, persists it locally, and opens a WebSocket for real-time event push (task_broadcast, subtask_completed, etc.). Returns {agent_id, seeds, domains}. Domains control which task broadcasts you receive — be specific (e.g. 'python-coding' not 'coding').",
483
+ description: "Create and register an agent identity on the EACN3 network. Requires: eacn3_connect first. Assembles an AgentCard, registers it with the network, persists it locally, and starts polling for push events (task_broadcast, subtask_completed, etc.). Returns {agent_id, seeds, domains}. Domains control which task broadcasts you receive — be specific (e.g. 'python-coding' not 'coding').",
354
484
  parameters: {
355
485
  type: "object",
356
486
  properties: {
@@ -397,10 +527,19 @@ export default {
397
527
  const res = await net.registerAgent(card);
398
528
  state.addAgent(card);
399
529
  ws.connect(agentId);
530
+ // Configure reverse control — in OpenClaw mode, sampling is never
531
+ // available, so the engine relies on directive injection + long-polling.
532
+ rc.configure(agentId, { enabled: true, policies: {} });
400
533
  return ok({
401
534
  registered: true, agent_id: agentId, seeds: res.seeds, domains: params.domains,
402
535
  url: agentUrl,
403
536
  a2a_server: a2a.isRunning() ? { port: a2a.getServerPort() } : null,
537
+ reverse_control: {
538
+ enabled: true,
539
+ sampling_available: false,
540
+ mode: "openclaw",
541
+ hint: "Use eacn3_await_events for reactive event handling (long-polling). Directive injection is active on all tool responses.",
542
+ },
404
543
  });
405
544
  },
406
545
  });
@@ -451,11 +590,12 @@ export default {
451
590
  // #8 eacn3_unregister_agent
452
591
  api.registerTool({
453
592
  name: "eacn3_unregister_agent",
454
- description: "Remove an agent from the network and close its WebSocket connection. Side effects: deletes agent from local state, stops receiving events for this agent. Active tasks assigned to this agent will timeout and hurt reputation. Returns {unregistered: true, agent_id}.",
593
+ description: "Remove an agent from the network and stop its event polling. Side effects: deletes agent from local state, stops receiving events for this agent. Active tasks assigned to this agent will timeout and hurt reputation. Returns {unregistered: true, agent_id}.",
455
594
  parameters: { type: "object", properties: { agent_id: { type: "string" } }, required: ["agent_id"] },
456
595
  async execute(_id, params) {
457
596
  const res = await net.unregisterAgent(params.agent_id);
458
597
  ws.disconnect(params.agent_id);
598
+ rc.unconfigure(params.agent_id);
459
599
  state.removeAgent(params.agent_id);
460
600
  // Stop A2A server if no agents remain
461
601
  if (state.listAgents().length === 0 && a2a.isRunning()) {
@@ -467,11 +607,11 @@ export default {
467
607
  // #9 eacn3_list_my_agents
468
608
  api.registerTool({
469
609
  name: "eacn3_list_my_agents",
470
- description: "List all agents registered on this local server instance. Returns {count, agents[]} where each agent includes agent_id, name, domains, tier, and ws_connected (WebSocket status). No network call — reads local state only. Use to check which agents are active and receiving events.",
610
+ description: "List all agents registered on this local server instance. Returns {count, agents[]} where each agent includes agent_id, name, domains, tier, and polling_active (event polling status). No network call — reads local state only. Use to check which agents are active and receiving events.",
471
611
  parameters: { type: "object", properties: {} },
472
612
  async execute() {
473
613
  const agents = state.listAgents();
474
- return ok({ count: agents.length, agents: agents.map((a) => ({ agent_id: a.agent_id, name: a.name, domains: a.domains, tier: a.tier, ws_connected: ws.isConnected(a.agent_id) })) });
614
+ return ok({ count: agents.length, agents: agents.map((a) => ({ agent_id: a.agent_id, name: a.name, domains: a.domains, tier: a.tier, polling_active: ws.isConnected(a.agent_id) })) });
475
615
  },
476
616
  });
477
617
  // #10 eacn3_discover_agents
@@ -591,7 +731,7 @@ export default {
591
731
  level: params.level ?? "general",
592
732
  invited_agent_ids: params.invited_agent_ids,
593
733
  });
594
- state.updateTask({ task_id: taskId, role: "initiator", status: task.status, domains: params.domains ?? [], description_summary: params.description.slice(0, 100), created_at: new Date().toISOString() });
734
+ state.updateTask({ task_id: taskId, agent_id: initiatorId, role: "initiator", status: task.status, domains: params.domains ?? [], description_summary: params.description.slice(0, 100), created_at: new Date().toISOString() });
595
735
  return ok({ task_id: taskId, status: task.status, budget: params.budget, local_matches: matchedLocal.map((a) => a.agent_id) });
596
736
  },
597
737
  });
@@ -626,14 +766,14 @@ export default {
626
766
  // #21 eacn3_update_discussions
627
767
  api.registerTool({
628
768
  name: "eacn3_update_discussions",
629
- description: "Post a clarification or discussion message on a task visible to all bidders. Requires: you must be the task initiator. Side effects: triggers a 'discussions_updated' WebSocket event to all bidding agents. Returns confirmation. Use to provide additional context or answer bidder questions.",
769
+ description: "Post a clarification or discussion message on a task visible to all bidders. Requires: you must be the task initiator. Side effects: triggers a 'discussion_update' push event to all bidding agents. Returns confirmation. Use to provide additional context or answer bidder questions.",
630
770
  parameters: { type: "object", properties: { task_id: { type: "string" }, message: { type: "string" }, initiator_id: { type: "string", description: "Initiator agent ID (auto-injected if omitted)" } }, required: ["task_id", "message"] },
631
771
  async execute(_id, params) { const initiatorId = resolveAgentId(params.initiator_id); return ok(await net.updateDiscussions(params.task_id, initiatorId, params.message)); },
632
772
  });
633
773
  // #22 eacn3_confirm_budget
634
774
  api.registerTool({
635
775
  name: "eacn3_confirm_budget",
636
- description: "Approve or reject a bid that exceeded your task's budget, triggered by a 'budget_confirmation' event. Set approved=true to accept (optionally raising the budget with new_budget); approved=false to reject the bid. Side effects: if approved, additional credits are frozen from your balance; the bid transitions from 'pending_confirmation' to 'accepted'. Returns updated task status.",
776
+ description: "Approve or reject a bid that exceeded your task's budget, triggered by a 'bid_request_confirmation' event. Set approved=true to accept (optionally raising the budget with new_budget); approved=false to reject the bid. Side effects: if approved, additional credits are frozen from your balance; the bid transitions from 'pending_confirmation' to 'accepted'. Returns updated task status.",
637
777
  parameters: { type: "object", properties: { task_id: { type: "string" }, approved: { type: "boolean" }, new_budget: { type: "number" }, initiator_id: { type: "string", description: "Initiator agent ID (auto-injected if omitted)" } }, required: ["task_id", "approved"] },
638
778
  async execute(_id, params) { const initiatorId = resolveAgentId(params.initiator_id); return ok(await net.confirmBudget(params.task_id, initiatorId, params.approved, params.new_budget)); },
639
779
  });
@@ -688,7 +828,7 @@ export default {
688
828
  // Tier/level filtering and invite bypass are handled server-side in matcher.check_bid().
689
829
  const res = await net.submitBid(params.task_id, agentId, params.confidence, params.price);
690
830
  if (res.status && res.status !== "rejected") {
691
- state.updateTask({ task_id: params.task_id, role: "executor", status: "bidding", domains: [], description_summary: "", created_at: new Date().toISOString() });
831
+ state.updateTask({ task_id: params.task_id, agent_id: agentId, role: "executor", status: "bidding", domains: [], description_summary: "", created_at: new Date().toISOString() });
692
832
  }
693
833
  return ok(res);
694
834
  }),
@@ -754,6 +894,7 @@ export default {
754
894
  const senderId = resolveAgentId(params.sender_id);
755
895
  const targetId = params.agent_id;
756
896
  const message = {
897
+ msg_id: crypto.randomUUID().replace(/-/g, ""),
757
898
  type: "direct_message",
758
899
  task_id: "",
759
900
  payload: { from: senderId, content: params.content },
@@ -762,7 +903,7 @@ export default {
762
903
  // Local agent — direct push to event buffer
763
904
  const localAgent = state.getAgent(targetId);
764
905
  if (localAgent) {
765
- state.pushEvents([message]);
906
+ state.pushEvents(targetId, [message]);
766
907
  return ok({ sent: true, to: targetId, from: senderId, local: true });
767
908
  }
768
909
  // Remote agent — POST to their URL callback (A2A direct, agent.md:160-168)
@@ -849,11 +990,68 @@ export default {
849
990
  // #32 eacn3_get_events
850
991
  api.registerTool({
851
992
  name: "eacn3_get_events",
852
- description: "Drain the in-memory event buffer, returning all pending events and clearing them. Returns {count, events[]} where event types include: task_broadcast, discussions_updated, subtask_completed, awaiting_retrieval, budget_confirmation, timeout, direct_message. Call periodically in your main loop. Events arrive via WebSocket and accumulate until drained — missing events means missed tasks and messages.",
993
+ description: "Drain the in-memory event buffer for a specific agent, returning its pending events and clearing them. Returns {count, events[], reverse_control} where event types include: task_broadcast, bid_request_confirmation, bid_result, discussion_update, subtask_completed, task_collected, task_timeout, adjudication_task, direct_message. Call periodically in your main loop. Events arrive via HTTP polling and accumulate until drained — missing events means missed tasks and messages.",
994
+ parameters: { type: "object", properties: { agent_id: { type: "string", description: "Agent ID to drain events for (auto-injected if omitted)" } } },
995
+ async execute(_id, params) {
996
+ const agentId = resolveAgentId(params.agent_id);
997
+ const events = state.drainEvents(agentId);
998
+ return ok({ count: events.length, events, reverse_control: rc.getStatus() });
999
+ },
1000
+ });
1001
+ // #39 eacn3_await_events — long-polling reverse control for OpenClaw
1002
+ api.registerTool({
1003
+ name: "eacn3_await_events",
1004
+ description: "Block until a network event arrives or timeout expires, then return with the event AND a suggested action. This is the primary reverse-control mechanism for OpenClaw (where MCP sampling is unavailable). Instead of polling eacn3_get_events in a loop, call this tool — it waits for the network to push something, then tells you exactly what to do. Returns {event, suggested_action, params} or {timeout: true} if nothing happened. Prefer this over eacn3_get_events for reactive agent loops.",
1005
+ parameters: {
1006
+ type: "object",
1007
+ properties: {
1008
+ agent_id: { type: "string", description: "Agent ID to await events for (auto-injected if omitted)" },
1009
+ timeout_seconds: { type: "number", description: "Max seconds to wait. Default 30, max 120." },
1010
+ event_types: { type: "array", items: { type: "string" }, description: "Only return for these event types. Default: all types." },
1011
+ },
1012
+ },
1013
+ async execute(_id, params) {
1014
+ const agentId = resolveAgentId(params.agent_id);
1015
+ const timeoutSec = Math.min(Math.max(params.timeout_seconds ?? 30, 1), 120);
1016
+ const filterTypes = params.event_types;
1017
+ // Check if there are already buffered events
1018
+ const immediate = drainMatchingEvents(agentId, filterTypes);
1019
+ if (immediate.length > 0) {
1020
+ return ok(buildAwaitResponse(immediate));
1021
+ }
1022
+ // Long-poll: wait for new events via a Promise that resolves
1023
+ // when event-transport pushes an event or timeout expires.
1024
+ const result = await new Promise((resolve) => {
1025
+ const deadline = setTimeout(() => {
1026
+ cleanup();
1027
+ resolve([]);
1028
+ }, timeoutSec * 1000);
1029
+ // Check periodically (every 500ms) if new events have been buffered
1030
+ const poll = setInterval(() => {
1031
+ const events = drainMatchingEvents(agentId, filterTypes);
1032
+ if (events.length > 0) {
1033
+ cleanup();
1034
+ resolve(events);
1035
+ }
1036
+ }, 500);
1037
+ function cleanup() {
1038
+ clearTimeout(deadline);
1039
+ clearInterval(poll);
1040
+ }
1041
+ });
1042
+ if (result.length === 0) {
1043
+ return ok({ timeout: true, waited_seconds: timeoutSec, hint: "No events arrived. Call again to keep waiting, or proceed with other work." });
1044
+ }
1045
+ return ok(buildAwaitResponse(result));
1046
+ },
1047
+ });
1048
+ // #40 eacn3_reverse_control_status
1049
+ api.registerTool({
1050
+ name: "eacn3_reverse_control_status",
1051
+ description: "Get the current status of the MCP reverse control engine. Shows whether sampling is available (always false in OpenClaw — use eacn3_await_events instead), configured agents, pending directive count, and rate limiting info.",
853
1052
  parameters: { type: "object", properties: {} },
854
1053
  async execute() {
855
- const events = state.drainEvents();
856
- return ok({ count: events.length, events });
1054
+ return ok({ ...rc.getStatus(), openclaw_mode: true, recommended_tool: "eacn3_await_events" });
857
1055
  },
858
1056
  });
859
1057
  },
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}