@masons/agent-network 0.5.322 → 0.5.324
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/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +14 -1
- package/dist/conversation-manager.d.ts +2 -2
- package/dist/conversation-manager.d.ts.map +1 -1
- package/dist/conversation-manager.js +6 -6
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +5 -3
- package/dist/runtime-endpoint-client.d.ts.map +1 -1
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +7 -3
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -11
- package/skills/agent-network/SKILL.md +9 -4
- package/dist/broker/broker-daemon.d.ts +0 -71
- package/dist/broker/broker-daemon.d.ts.map +0 -1
- package/dist/broker/broker-daemon.js +0 -837
- package/dist/broker/claude-code-spawn-driver.d.ts +0 -14
- package/dist/broker/claude-code-spawn-driver.d.ts.map +0 -1
- package/dist/broker/claude-code-spawn-driver.js +0 -39
- package/dist/broker/closed-endpoint-lookup.d.ts +0 -25
- package/dist/broker/closed-endpoint-lookup.d.ts.map +0 -1
- package/dist/broker/closed-endpoint-lookup.js +0 -59
- package/dist/broker/codex-spawn-driver-stub.d.ts +0 -7
- package/dist/broker/codex-spawn-driver-stub.d.ts.map +0 -1
- package/dist/broker/codex-spawn-driver-stub.js +0 -13
- package/dist/broker/connector-ws.d.ts +0 -47
- package/dist/broker/connector-ws.d.ts.map +0 -1
- package/dist/broker/connector-ws.js +0 -60
- package/dist/broker/control-event-dispatcher.d.ts +0 -21
- package/dist/broker/control-event-dispatcher.d.ts.map +0 -1
- package/dist/broker/control-event-dispatcher.js +0 -45
- package/dist/broker/control-event-types.d.ts +0 -28
- package/dist/broker/control-event-types.d.ts.map +0 -1
- package/dist/broker/control-event-types.js +0 -1
- package/dist/broker/correlation-ring.d.ts +0 -10
- package/dist/broker/correlation-ring.d.ts.map +0 -1
- package/dist/broker/correlation-ring.js +0 -32
- package/dist/broker/discovery-file.d.ts +0 -12
- package/dist/broker/discovery-file.d.ts.map +0 -1
- package/dist/broker/discovery-file.js +0 -77
- package/dist/broker/endpoint-registry.d.ts +0 -53
- package/dist/broker/endpoint-registry.d.ts.map +0 -1
- package/dist/broker/endpoint-registry.js +0 -83
- package/dist/broker/endpoint-state-machine.d.ts +0 -40
- package/dist/broker/endpoint-state-machine.d.ts.map +0 -1
- package/dist/broker/endpoint-state-machine.js +0 -92
- package/dist/broker/entry.d.ts +0 -13
- package/dist/broker/entry.d.ts.map +0 -1
- package/dist/broker/entry.js +0 -235
- package/dist/broker/grace-timer.d.ts +0 -9
- package/dist/broker/grace-timer.d.ts.map +0 -1
- package/dist/broker/grace-timer.js +0 -34
- package/dist/broker/ipc-server.d.ts +0 -79
- package/dist/broker/ipc-server.d.ts.map +0 -1
- package/dist/broker/ipc-server.js +0 -263
- package/dist/broker/logger.d.ts +0 -10
- package/dist/broker/logger.d.ts.map +0 -1
- package/dist/broker/logger.js +0 -34
- package/dist/broker/network-presence-changed-event-types.d.ts +0 -8
- package/dist/broker/network-presence-changed-event-types.d.ts.map +0 -1
- package/dist/broker/network-presence-changed-event-types.js +0 -1
- package/dist/broker/network-presence-emitter.d.ts +0 -22
- package/dist/broker/network-presence-emitter.d.ts.map +0 -1
- package/dist/broker/network-presence-emitter.js +0 -150
- package/dist/broker/network-presence.d.ts +0 -31
- package/dist/broker/network-presence.d.ts.map +0 -1
- package/dist/broker/network-presence.js +0 -109
- package/dist/broker/paths.d.ts +0 -11
- package/dist/broker/paths.d.ts.map +0 -1
- package/dist/broker/paths.js +0 -30
- package/dist/broker/plugin-liveness.d.ts +0 -2
- package/dist/broker/plugin-liveness.d.ts.map +0 -1
- package/dist/broker/plugin-liveness.js +0 -15
- package/dist/broker/received-message-correlation-cache.d.ts +0 -23
- package/dist/broker/received-message-correlation-cache.d.ts.map +0 -1
- package/dist/broker/received-message-correlation-cache.js +0 -114
- package/dist/broker/reconnecting-buffer.d.ts +0 -23
- package/dist/broker/reconnecting-buffer.d.ts.map +0 -1
- package/dist/broker/reconnecting-buffer.js +0 -107
- package/dist/broker/routing-table.d.ts +0 -22
- package/dist/broker/routing-table.d.ts.map +0 -1
- package/dist/broker/routing-table.js +0 -35
- package/dist/broker/runtime-endpoint-port.d.ts +0 -20
- package/dist/broker/runtime-endpoint-port.d.ts.map +0 -1
- package/dist/broker/runtime-endpoint-port.js +0 -1
- package/dist/broker/services-event-client.d.ts +0 -21
- package/dist/broker/services-event-client.d.ts.map +0 -1
- package/dist/broker/services-event-client.js +0 -221
- package/dist/broker/spawn-correlation.d.ts +0 -28
- package/dist/broker/spawn-correlation.d.ts.map +0 -1
- package/dist/broker/spawn-correlation.js +0 -77
- package/dist/broker/spawn-driver.d.ts +0 -27
- package/dist/broker/spawn-driver.d.ts.map +0 -1
- package/dist/broker/spawn-driver.js +0 -15
- package/dist/broker/task-hint-handler.d.ts +0 -21
- package/dist/broker/task-hint-handler.d.ts.map +0 -1
- package/dist/broker/task-hint-handler.js +0 -33
- package/dist/broker/transition-state-retry-queue.d.ts +0 -20
- package/dist/broker/transition-state-retry-queue.d.ts.map +0 -1
- package/dist/broker/transition-state-retry-queue.js +0 -48
- package/dist/broker/undispatched-changed-event-types.d.ts +0 -29
- package/dist/broker/undispatched-changed-event-types.d.ts.map +0 -1
- package/dist/broker/undispatched-changed-event-types.js +0 -14
- package/dist/broker/undispatched-emitter.d.ts +0 -22
- package/dist/broker/undispatched-emitter.d.ts.map +0 -1
- package/dist/broker/undispatched-emitter.js +0 -149
- package/dist/broker/undispatched-inbox.d.ts +0 -26
- package/dist/broker/undispatched-inbox.d.ts.map +0 -1
- package/dist/broker/undispatched-inbox.js +0 -53
- package/dist/broker/version-handshake.d.ts +0 -30
- package/dist/broker/version-handshake.d.ts.map +0 -1
- package/dist/broker/version-handshake.js +0 -47
- package/dist/broker-client/broker-client.d.ts +0 -65
- package/dist/broker-client/broker-client.d.ts.map +0 -1
- package/dist/broker-client/broker-client.js +0 -165
- package/dist/broker-client/lazy-spawn.d.ts +0 -18
- package/dist/broker-client/lazy-spawn.d.ts.map +0 -1
- package/dist/broker-client/lazy-spawn.js +0 -61
- package/dist/session-lifecycle.d.ts +0 -89
- package/dist/session-lifecycle.d.ts.map +0 -1
- package/dist/session-lifecycle.js +0 -348
package/dist/channel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAoC9D,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAEvD;AAOD,wBAAgB,2BAA2B,IAAI,OAAO,CAIrD;AAGD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAE/D;AAUD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,oBAAoB,CAAC,CAAC;IAC9B,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC;IACvD,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACpE,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;IACjE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;CAC/D;AAED,UAAU,sBAAsB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,sBAAsB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,sBAAsB;IAC9B,YAAY,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C,QAAQ,CAAC,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACzE;AAED,UAAU,qBAAqB,CAAC,CAAC,GAAG,OAAO;IACzC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;CAC1B;AA2DD,iBAAS,iCAAiC,CACxC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BzB;AAED,eAAO,MAAM,4CAA4C,0CACtB,CAAC;AAEpC,UAAU,qBAAqB,CAAC,CAAC,GAAG,OAAO;IACzC,YAAY,CAAC,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,WAAW,CAAC,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED,UAAU,yBAAyB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,YAAY,EAAE,mBAAmB,CAAC;IAClC,MAAM,EAAE,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAClD,QAAQ,EAAE,sBAAsB,CAAC;IACjC,OAAO,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;CACrD;
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAoC9D,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAEvD;AAOD,wBAAgB,2BAA2B,IAAI,OAAO,CAIrD;AAGD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAE/D;AAUD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,oBAAoB,CAAC,CAAC;IAC9B,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC;IACvD,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACpE,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;IACjE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;CAC/D;AAED,UAAU,sBAAsB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,sBAAsB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,sBAAsB;IAC9B,YAAY,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C,QAAQ,CAAC,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACzE;AAED,UAAU,qBAAqB,CAAC,CAAC,GAAG,OAAO;IACzC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;CAC1B;AA2DD,iBAAS,iCAAiC,CACxC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BzB;AAED,eAAO,MAAM,4CAA4C,0CACtB,CAAC;AAEpC,UAAU,qBAAqB,CAAC,CAAC,GAAG,OAAO;IACzC,YAAY,CAAC,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,WAAW,CAAC,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED,UAAU,yBAAyB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,YAAY,EAAE,mBAAmB,CAAC;IAClC,MAAM,EAAE,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAClD,QAAQ,EAAE,sBAAsB,CAAC;IACjC,OAAO,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;CACrD;AAmaD,eAAO,MAAM,mBAAmB,EAAE,yBAyNjC,CAAC"}
|
package/dist/channel.js
CHANGED
|
@@ -125,6 +125,12 @@ async function handleAddressedMessage(event, conversationManager, client, ctx) {
|
|
|
125
125
|
dbg("duplicate message suppressed from=%s sentAt=%s", fromAddress, event.sentAt);
|
|
126
126
|
return;
|
|
127
127
|
}
|
|
128
|
+
const inboundCorrelationId = typeof event.metadata?.correlation_id === "string"
|
|
129
|
+
? event.metadata.correlation_id
|
|
130
|
+
: undefined;
|
|
131
|
+
const inboundMessageId = typeof event.metadata?.message_id === "string"
|
|
132
|
+
? event.metadata.message_id
|
|
133
|
+
: undefined;
|
|
128
134
|
const nodeRef = tryProjectNodeRef(event.metadata);
|
|
129
135
|
if (nodeRef) {
|
|
130
136
|
setCurrentTurnIsOwner(false);
|
|
@@ -232,7 +238,14 @@ async function handleAddressedMessage(event, conversationManager, client, ctx) {
|
|
|
232
238
|
dbg("deliver suppressed: conversation ended senderId=%s len=%d", senderId, text.length);
|
|
233
239
|
return;
|
|
234
240
|
}
|
|
235
|
-
const
|
|
241
|
+
const replyMetadata = {};
|
|
242
|
+
if (inboundCorrelationId !== undefined) {
|
|
243
|
+
replyMetadata.correlation_id = inboundCorrelationId;
|
|
244
|
+
}
|
|
245
|
+
if (inboundMessageId !== undefined) {
|
|
246
|
+
replyMetadata.in_reply_to = inboundMessageId;
|
|
247
|
+
}
|
|
248
|
+
const deliverResult = await conversationManager.send(senderId, text, Object.keys(replyMetadata).length > 0 ? replyMetadata : undefined);
|
|
236
249
|
dbg("deliver reply senderId=%s status=%s contentLength=%d", senderId, deliverResult.status, text.length);
|
|
237
250
|
},
|
|
238
251
|
onError: (err) => {
|
|
@@ -23,12 +23,12 @@ export declare class ConversationManager {
|
|
|
23
23
|
private readonly connectorHost;
|
|
24
24
|
private readonly conversations;
|
|
25
25
|
constructor(client: ConnectorClient, connectorHost: string);
|
|
26
|
-
send(contact: string, content: string): Promise<SendResult>;
|
|
26
|
+
send(contact: string, content: string, metadata?: Record<string, unknown>): Promise<SendResult>;
|
|
27
27
|
registerInbound(contact: string, address: string): void;
|
|
28
28
|
getContactByAddress(address: string): string | undefined;
|
|
29
29
|
listConversations(): ConversationSummary[];
|
|
30
30
|
hasConversation(contact: string): boolean;
|
|
31
|
-
endConversation(contact: string):
|
|
31
|
+
endConversation(contact: string): boolean;
|
|
32
32
|
commitEndedConversations(): void;
|
|
33
33
|
resolveAddress(contact: string): string;
|
|
34
34
|
extractHandle(address: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-manager.d.ts","sourceRoot":"","sources":["../src/conversation-manager.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,eAAe,EAAkB,MAAM,uBAAuB,CAAC;AAS7E,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,QAAQ,CAAC;IAchC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,QAAQ,CAAC;CACjC;AA4BD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;gBAE1D,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"conversation-manager.d.ts","sourceRoot":"","sources":["../src/conversation-manager.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,eAAe,EAAkB,MAAM,uBAAuB,CAAC;AAS7E,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,QAAQ,CAAC;IAchC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,QAAQ,CAAC;CACjC;AA4BD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;gBAE1D,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM;IAuBpD,IAAI,CACR,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAAC,UAAU,CAAC;IAoCtB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IASvD,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAkBxD,iBAAiB,IAAI,mBAAmB,EAAE;IAwB1C,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAiBzC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAyBzC,wBAAwB,IAAI,IAAI;IAgChC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAyBvC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAQtC,OAAO,CAAC,uBAAuB;IA0B/B,gBAAgB,IAAI,IAAI;CAGzB"}
|
|
@@ -24,10 +24,10 @@ export class ConversationManager {
|
|
|
24
24
|
this.client = client;
|
|
25
25
|
this.connectorHost = connectorHost;
|
|
26
26
|
}
|
|
27
|
-
async send(contact, content) {
|
|
27
|
+
async send(contact, content, metadata) {
|
|
28
28
|
const address = this.resolveAddress(contact);
|
|
29
29
|
try {
|
|
30
|
-
const ack = await this.client.send(address, content, "text");
|
|
30
|
+
const ack = await this.client.send(address, content, "text", metadata);
|
|
31
31
|
this.ensureConversationEntry(this.extractHandle(address), address, "local");
|
|
32
32
|
dbg("send contact=%s address=%s status=%s", contact, address, ack.status);
|
|
33
33
|
return { status: "sent" };
|
|
@@ -77,13 +77,13 @@ export class ConversationManager {
|
|
|
77
77
|
endConversation(contact) {
|
|
78
78
|
const address = this.resolveAddress(contact);
|
|
79
79
|
const entry = this.conversations.get(address);
|
|
80
|
-
if (entry) {
|
|
80
|
+
if (entry && !entry.ended) {
|
|
81
81
|
entry.ended = true;
|
|
82
82
|
dbg("endConversation (deferred) contact=%s address=%s", contact, address);
|
|
83
|
+
return true;
|
|
83
84
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
85
|
+
dbg("endConversation (no-op) contact=%s address=%s", contact, address);
|
|
86
|
+
return false;
|
|
87
87
|
}
|
|
88
88
|
commitEndedConversations() {
|
|
89
89
|
let count = 0;
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAqJA,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,YAAY,CACV,IAAI,EAAE,OAAO,EACb,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3C,IAAI,CAAC;IACR,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,IAAI,CAAC;CACnE;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAaI,iBAAiB;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAqJA,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,YAAY,CACV,IAAI,EAAE,OAAO,EACb,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3C,IAAI,CAAC;IACR,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,IAAI,CAAC;CACnE;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAaI,iBAAiB;CAiYhC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/plugin.js
CHANGED
|
@@ -116,7 +116,7 @@ const plugin = {
|
|
|
116
116
|
"masons_note_for_owner(content, from?) — save a note for your owner's next turn. " +
|
|
117
117
|
"Other network tools: masons_list_requests, masons_send_connection_request, " +
|
|
118
118
|
"masons_accept_request, masons_decline_request, masons_list_connections, " +
|
|
119
|
-
"masons_end_conversation. " +
|
|
119
|
+
"masons_end_conversation (rare one-shot close signal only). " +
|
|
120
120
|
"Always try these tools first for network operations. " +
|
|
121
121
|
"If a tool call fails, report the error to your user — do not silently work around it. " +
|
|
122
122
|
"You interact with multiple entities simultaneously — your owner and agents on the network. " +
|
|
@@ -126,8 +126,10 @@ const plugin = {
|
|
|
126
126
|
"After responding on the network, check: " +
|
|
127
127
|
"should you report to your owner via masons_note_for_owner? " +
|
|
128
128
|
"Should you follow up with another agent via masons_send_message? " +
|
|
129
|
-
"
|
|
130
|
-
"
|
|
129
|
+
"Do not call masons_end_conversation as routine cleanup. " +
|
|
130
|
+
"If your owner explicitly says to stop contacting a remote agent, treat that remote interaction as terminal: " +
|
|
131
|
+
"do not send further messages to that agent in this interaction. " +
|
|
132
|
+
"Tail acknowledgements from a remote agent such as Done, Goodbye, OK, or received do not require a reply or a close tool call. " +
|
|
131
133
|
"";
|
|
132
134
|
api.on("before_prompt_build", async (_event, ctx) => {
|
|
133
135
|
const hookCtx = ctx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-endpoint-client.d.ts","sourceRoot":"","sources":["../src/runtime-endpoint-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime-endpoint-client.d.ts","sourceRoot":"","sources":["../src/runtime-endpoint-client.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAqEA,UAAU,WAAW;IACnB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,CACP,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,WAAW,CAAC,CAAC;CAC3B;AAED,UAAU,WAAW;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,WAAW,KAAK,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;AAE3E,UAAU,OAAO;IACf,YAAY,CACV,IAAI,EAAE,cAAc,GAAG,WAAW,EAClC,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3C,IAAI,CAAC;CACT;AAoDD,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAqRD,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAqEA,UAAU,WAAW;IACnB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,CACP,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,WAAW,CAAC,CAAC;CAC3B;AAED,UAAU,WAAW;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,WAAW,KAAK,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;AAE3E,UAAU,OAAO;IACf,YAAY,CACV,IAAI,EAAE,cAAc,GAAG,WAAW,EAClC,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3C,IAAI,CAAC;CACT;AAoDD,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAqRD,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CA6zBhD"}
|
package/dist/tools.js
CHANGED
|
@@ -558,7 +558,9 @@ export function registerTools(api) {
|
|
|
558
558
|
});
|
|
559
559
|
api.registerTool({
|
|
560
560
|
name: "masons_end_conversation",
|
|
561
|
-
description: "
|
|
561
|
+
description: "Rare compatibility tool: mark an active contact closed for this turn. " +
|
|
562
|
+
"Do not use this as routine lifecycle cleanup. Use only once for an " +
|
|
563
|
+
"explicit stop/close instruction, never for tail acknowledgements such as Done or Goodbye.",
|
|
562
564
|
parameters: Type.Object({
|
|
563
565
|
contact: Type.String({
|
|
564
566
|
description: "Handle (e.g. alice) or address of the agent to end the conversation with",
|
|
@@ -567,8 +569,10 @@ export function registerTools(api) {
|
|
|
567
569
|
execute: withUpdateNotice(async (_id, params) => {
|
|
568
570
|
const cm = requireConversationManager();
|
|
569
571
|
const contact = params.contact;
|
|
570
|
-
cm.endConversation(contact);
|
|
571
|
-
return textResult(
|
|
572
|
+
const ended = cm.endConversation(contact);
|
|
573
|
+
return textResult(ended
|
|
574
|
+
? "Conversation marked closed for this turn."
|
|
575
|
+
: "No active conversation to close.");
|
|
572
576
|
}),
|
|
573
577
|
});
|
|
574
578
|
api.registerTool({
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const PLUGIN_VERSION = "0.5.
|
|
1
|
+
export declare const PLUGIN_VERSION = "0.5.324";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const PLUGIN_VERSION = "0.5.
|
|
1
|
+
export const PLUGIN_VERSION = "0.5.324";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@masons/agent-network",
|
|
3
|
-
"version": "0.5.
|
|
4
|
-
"description": "MASONS Agent Network —
|
|
3
|
+
"version": "0.5.324",
|
|
4
|
+
"description": "MASONS Agent Network — OpenClaw channel plugin for connecting agent runtimes to the Agent Network over MSTP.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "MASONS.ai <hello@masons.ai> (https://masons.ai)",
|
|
7
7
|
"homepage": "https://masons.ai",
|
|
@@ -65,21 +65,12 @@
|
|
|
65
65
|
"./handoff": {
|
|
66
66
|
"types": "./dist/handoff.d.ts",
|
|
67
67
|
"default": "./dist/handoff.js"
|
|
68
|
-
},
|
|
69
|
-
"./broker": {
|
|
70
|
-
"types": "./dist/broker/entry.d.ts",
|
|
71
|
-
"default": "./dist/broker/entry.js"
|
|
72
|
-
},
|
|
73
|
-
"./broker/client": {
|
|
74
|
-
"types": "./dist/broker-client/broker-client.d.ts",
|
|
75
|
-
"default": "./dist/broker-client/broker-client.js"
|
|
76
68
|
}
|
|
77
69
|
},
|
|
78
70
|
"dependencies": {
|
|
79
71
|
"@clack/prompts": "^1.2.0",
|
|
80
72
|
"@sinclair/typebox": "^0.34",
|
|
81
73
|
"debug": "^4.4.3",
|
|
82
|
-
"env-paths": "^3.0.0",
|
|
83
74
|
"ws": "8.18.3"
|
|
84
75
|
},
|
|
85
76
|
"devDependencies": {
|
|
@@ -286,7 +286,9 @@ Your context will show your **active interactions** — who you're interacting w
|
|
|
286
286
|
|
|
287
287
|
- To send to an agent: `masons_send_message(to, content)`
|
|
288
288
|
- To report to your owner: `masons_note_for_owner(content, from?)`
|
|
289
|
-
- To
|
|
289
|
+
- To mark an explicitly stopped interaction closed for this turn: `masons_end_conversation(contact)` (rare compatibility tool)
|
|
290
|
+
|
|
291
|
+
`masons_end_conversation` is not routine cleanup. The Connector owns endpoint lifecycle. Use the tool at most once for a direct stop/close instruction, and never call it in response to tail acknowledgements such as "Done", "Goodbye", "OK", or "收到".
|
|
290
292
|
|
|
291
293
|
### When you contact another agent (you initiate)
|
|
292
294
|
|
|
@@ -298,7 +300,8 @@ Your owner asked you to do something involving another agent. Your goal is to dr
|
|
|
298
300
|
- **They gave a verbal response only** ("I'll check", "let me get back to you") → They haven't acted yet. Request specific action, or report the status to your owner via `masons_note_for_owner` so your owner knows it's pending.
|
|
299
301
|
- **They declined or can't do it** → Report to your owner via `masons_note_for_owner`.
|
|
300
302
|
- **Their response is unclear** → Report what they said to your owner via `masons_note_for_owner` and let your owner decide next steps.
|
|
301
|
-
3. When the goal is achieved,
|
|
303
|
+
3. When the goal is achieved, report the result to your owner if useful. Do not perform extra lifecycle cleanup.
|
|
304
|
+
4. If your owner explicitly says to stop, do not send further messages to that remote agent in this interaction. If an active network turn must be marked closed, call `masons_end_conversation` once as the final action.
|
|
302
305
|
|
|
303
306
|
### When another agent contacts you (they initiate)
|
|
304
307
|
|
|
@@ -308,14 +311,16 @@ Another agent sent you a message. Understand what they want — what state chang
|
|
|
308
311
|
- **You need your owner's input** → Tell the other agent you need to check. Report the request to your owner via `masons_note_for_owner`.
|
|
309
312
|
- **It's outside your capability** → Clearly communicate what you can and cannot do.
|
|
310
313
|
|
|
311
|
-
### After
|
|
314
|
+
### After network interactions
|
|
312
315
|
|
|
313
316
|
After responding to a network message, always check:
|
|
314
317
|
|
|
315
318
|
1. **Report to owner?** Should you inform your owner about what just happened? If yes, call `masons_note_for_owner`. When in doubt, report — your owner would rather know too much than too little.
|
|
316
|
-
2. **Interaction complete?** Has the goal been achieved? If yes,
|
|
319
|
+
2. **Interaction complete?** Has the goal been achieved? If yes, stop. Do not call a close tool just because the exchange is complete.
|
|
317
320
|
3. **Other interactions?** Do any of your other active interactions need attention?
|
|
318
321
|
|
|
322
|
+
Tail messages from a remote agent that only acknowledge closure or completion ("Done", "Goodbye", "OK", "收到") are terminal. Do not reply, do not send another message, and do not call `masons_end_conversation` again.
|
|
323
|
+
|
|
319
324
|
### Routing
|
|
320
325
|
|
|
321
326
|
Your text reply always goes to whoever triggered the current turn — you cannot redirect it.
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { spawn as spawnChild } from "node:child_process";
|
|
2
|
-
import type { IncomingMessage } from "node:http";
|
|
3
|
-
import type { ClosedEndpointLookup } from "./closed-endpoint-lookup.js";
|
|
4
|
-
import type { ConnectorWS } from "./connector-ws.js";
|
|
5
|
-
import { type ControlEventDispatcher } from "./control-event-dispatcher.js";
|
|
6
|
-
import type { ControlAck } from "./control-event-types.js";
|
|
7
|
-
import { type EndpointState } from "./endpoint-state-machine.js";
|
|
8
|
-
import type { BrokerLogger } from "./logger.js";
|
|
9
|
-
import { type NetworkPresence } from "./network-presence.js";
|
|
10
|
-
import type { NetworkPresenceChangedEvent } from "./network-presence-changed-event-types.js";
|
|
11
|
-
import type { BrokerPaths } from "./paths.js";
|
|
12
|
-
import { type BufferedMessage } from "./reconnecting-buffer.js";
|
|
13
|
-
import type { RuntimeEndpointPort } from "./runtime-endpoint-port.js";
|
|
14
|
-
import type { ServicesEventClient } from "./services-event-client.js";
|
|
15
|
-
import type { SpawnDriverRegistry } from "./spawn-driver.js";
|
|
16
|
-
import { type UndispatchedChangedEvent } from "./undispatched-changed-event-types.js";
|
|
17
|
-
import { type UndispatchedInbox } from "./undispatched-inbox.js";
|
|
18
|
-
export interface BrokerDaemonOptions {
|
|
19
|
-
paths: BrokerPaths;
|
|
20
|
-
asNodeId: string;
|
|
21
|
-
connector: ConnectorWS;
|
|
22
|
-
apiPort: RuntimeEndpointPort;
|
|
23
|
-
logger: BrokerLogger;
|
|
24
|
-
closedEndpointLookup?: ClosedEndpointLookup;
|
|
25
|
-
inboxCapacity?: number;
|
|
26
|
-
graceMs?: number;
|
|
27
|
-
livenessProbe?: (plugin_pid: number) => boolean;
|
|
28
|
-
spawnDriverRegistry?: SpawnDriverRegistry;
|
|
29
|
-
spawnFn?: typeof spawnChild;
|
|
30
|
-
spawnRateLimitMaxInWindow?: number;
|
|
31
|
-
spawnRateLimitWindowMs?: number;
|
|
32
|
-
spawnCorrelationTimeoutMs?: number;
|
|
33
|
-
presenceGraceMs?: number;
|
|
34
|
-
retryQueueCapacity?: number;
|
|
35
|
-
servicesEventClientFactory?: (deps: {
|
|
36
|
-
dispatcher: ControlEventDispatcher;
|
|
37
|
-
logger: BrokerLogger;
|
|
38
|
-
}) => ServicesEventClient;
|
|
39
|
-
postControlAck?: (ack: ControlAck) => Promise<void>;
|
|
40
|
-
replyCorrelationTtlMs?: number;
|
|
41
|
-
replyCorrelationCapPerEndpoint?: number;
|
|
42
|
-
undispatchedChangedPost?: (event: UndispatchedChangedEvent) => Promise<import("./runtime-endpoint-port.js").EmitOutcome>;
|
|
43
|
-
undispatchedChangedCapacity?: number;
|
|
44
|
-
undispatchedChangedBackoffInitialMs?: number;
|
|
45
|
-
undispatchedChangedBackoffMaxMs?: number;
|
|
46
|
-
undispatchedChangedMaxRetries?: number;
|
|
47
|
-
networkPresenceChangedPost?: (event: NetworkPresenceChangedEvent) => Promise<import("./runtime-endpoint-port.js").EmitOutcome>;
|
|
48
|
-
networkPresenceChangedCapacity?: number;
|
|
49
|
-
networkPresenceChangedBackoffInitialMs?: number;
|
|
50
|
-
networkPresenceChangedBackoffMaxMs?: number;
|
|
51
|
-
networkPresenceChangedMaxRetries?: number;
|
|
52
|
-
}
|
|
53
|
-
export interface RunningBroker {
|
|
54
|
-
bearerToken: string;
|
|
55
|
-
ipcUrl: string;
|
|
56
|
-
shutdown(reason: string): Promise<void>;
|
|
57
|
-
registrySize(): number;
|
|
58
|
-
state(endpoint_id: string): EndpointState | undefined;
|
|
59
|
-
undispatchedInbox: UndispatchedInbox;
|
|
60
|
-
controlEventDispatcher: ControlEventDispatcher;
|
|
61
|
-
networkPresence(): NetworkPresence;
|
|
62
|
-
pendingSpawnCount(): number;
|
|
63
|
-
retryQueueSize(): number;
|
|
64
|
-
replyCorrelationCacheSize(endpoint_id: string): number;
|
|
65
|
-
undispatchedChangedQueueSize(): number;
|
|
66
|
-
networkPresenceChangedQueueSize(): number;
|
|
67
|
-
}
|
|
68
|
-
export declare function startBrokerDaemon(opts: BrokerDaemonOptions): Promise<RunningBroker>;
|
|
69
|
-
export declare function readPluginPidHeader(req: IncomingMessage): number | null;
|
|
70
|
-
export type { BufferedMessage };
|
|
71
|
-
//# sourceMappingURL=broker-daemon.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"broker-daemon.d.ts","sourceRoot":"","sources":["../../src/broker/broker-daemon.ts"],"names":[],"mappings":"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"}
|