@essentialai/cogent-bridge 1.3.3 → 1.3.5
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/cloud/http-client.d.ts.map +1 -1
- package/dist/cloud/http-client.js +4 -0
- package/dist/cloud/http-client.js.map +1 -1
- package/dist/services/auto-relay.d.ts +17 -12
- package/dist/services/auto-relay.d.ts.map +1 -1
- package/dist/services/auto-relay.js +70 -0
- package/dist/services/auto-relay.js.map +1 -1
- package/dist/tools/get-history.d.ts.map +1 -1
- package/dist/tools/get-history.js +6 -2
- package/dist/tools/get-history.js.map +1 -1
- package/dist/tools/send-message.d.ts.map +1 -1
- package/dist/tools/send-message.js +7 -0
- package/dist/tools/send-message.js.map +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/cloud/http-client.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,qBAAa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAH1B,OAAO,CAAC,KAAK,CAAS;gBAGH,OAAO,EAAE,MAAM,EAChC,KAAK,EAAE,MAAM;IAKf,OAAO,CAAC,OAAO;IAOf;;;OAGG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IActE;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/cloud/http-client.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,qBAAa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAH1B,OAAO,CAAC,KAAK,CAAS;gBAGH,OAAO,EAAE,MAAM,EAChC,KAAK,EAAE,MAAM;IAKf,OAAO,CAAC,OAAO;IAOf;;;OAGG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IActE;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAiBtD;;;OAGG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAYzD;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAInC;;;;OAIG;YACW,gBAAgB;CAyB/B"}
|
|
@@ -47,6 +47,10 @@ export class HttpClient {
|
|
|
47
47
|
if (!resp.ok) {
|
|
48
48
|
await this.throwMappedError(resp);
|
|
49
49
|
}
|
|
50
|
+
// Handle 204 No Content (e.g., heartbeat endpoint)
|
|
51
|
+
if (resp.status === 204 || resp.headers?.get("content-length") === "0") {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
50
54
|
return resp.json();
|
|
51
55
|
}
|
|
52
56
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/cloud/http-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/cloud/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { MessageRecord } from "../types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Auto-relay service that processes incoming cloud messages by calling local
|
|
4
|
-
* execClaude() and sending the response back via the cloud backend.
|
|
5
|
-
*
|
|
6
|
-
* When a WebSocket message arrives for the local peer, this service:
|
|
7
|
-
* 1. Validates it's an incoming message (not our own, not already a response)
|
|
8
|
-
* 2. Injects it into the local Claude Code session via execClaude()
|
|
9
|
-
* 3. Sends the Claude response back to the original sender as a new message
|
|
10
|
-
*
|
|
11
|
-
* This enables automatic back-and-forth dialog between two cloud peers,
|
|
12
|
-
* matching the local-mode behavior where execClaude is called synchronously.
|
|
13
|
-
*/
|
|
14
2
|
export declare class AutoRelayService {
|
|
15
3
|
private localPeerId;
|
|
16
4
|
private localSessionId;
|
|
17
5
|
private localCwd;
|
|
18
6
|
private processing;
|
|
19
7
|
private queue;
|
|
8
|
+
private expectingResponseFrom;
|
|
20
9
|
/**
|
|
21
10
|
* Set the local peer info. Called from register-peer tool after
|
|
22
11
|
* successful registration so we know which session to inject into.
|
|
23
12
|
*/
|
|
24
13
|
setLocalPeer(peerId: string, sessionId: string, cwd: string): void;
|
|
14
|
+
/**
|
|
15
|
+
* Mark that we expect a response from a peer (because we just sent them
|
|
16
|
+
* an explicit message via send_message). When their response arrives,
|
|
17
|
+
* inject it into the local session but do NOT relay our output back.
|
|
18
|
+
* This breaks the infinite auto-relay loop.
|
|
19
|
+
*/
|
|
20
|
+
expectResponse(fromPeerId: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Clear the expectation for a peer.
|
|
23
|
+
*/
|
|
24
|
+
clearExpectation(fromPeerId: string): void;
|
|
25
25
|
/**
|
|
26
26
|
* Process an incoming cloud message by invoking local execClaude()
|
|
27
27
|
* and relaying the response back to the sender.
|
|
@@ -38,6 +38,11 @@ export declare class AutoRelayService {
|
|
|
38
38
|
* Internal: process a single message -- call execClaude and relay response.
|
|
39
39
|
*/
|
|
40
40
|
private _processMessage;
|
|
41
|
+
/**
|
|
42
|
+
* Inject a message into the local session without relaying the response.
|
|
43
|
+
* Used for expected responses to our own send_message calls.
|
|
44
|
+
*/
|
|
45
|
+
private _injectOnly;
|
|
41
46
|
/**
|
|
42
47
|
* Stop the auto-relay service: clear queue and reset state.
|
|
43
48
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-relay.d.ts","sourceRoot":"","sources":["../../src/services/auto-relay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"auto-relay.d.ts","sourceRoot":"","sources":["../../src/services/auto-relay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqD5C,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,qBAAqB,CAA0B;IAEvD;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAOlE;;;;;OAKG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAKxC;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAI1C;;;;;;;;;;OAUG;IACG,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA0DvD;;OAEG;YACW,eAAe;IA2D7B;;;OAGG;YACW,WAAW;IAgCzB;;OAEG;IACH,IAAI,IAAI,IAAI;CASb;AAED,0DAA0D;AAC1D,eAAO,MAAM,SAAS,kBAAyB,CAAC"}
|
|
@@ -24,12 +24,24 @@ function formatRelayMessage(fromLabel, fromPeerId, message) {
|
|
|
24
24
|
* This enables automatic back-and-forth dialog between two cloud peers,
|
|
25
25
|
* matching the local-mode behavior where execClaude is called synchronously.
|
|
26
26
|
*/
|
|
27
|
+
/**
|
|
28
|
+
* Format an incoming response for inject-only mode (no relay back).
|
|
29
|
+
* Used when the local peer explicitly sent a message and is receiving the reply.
|
|
30
|
+
*/
|
|
31
|
+
function formatInjectOnlyMessage(fromLabel, fromPeerId, message) {
|
|
32
|
+
return (`[Cogent Bridge: Response from ${fromLabel} (${fromPeerId})]\n\n` +
|
|
33
|
+
`${message}\n\n` +
|
|
34
|
+
`---\n` +
|
|
35
|
+
`This is the response to your earlier cogent_send_message. No reply will be relayed.\n` +
|
|
36
|
+
`To continue the conversation, use cogent_send_message again.`);
|
|
37
|
+
}
|
|
27
38
|
export class AutoRelayService {
|
|
28
39
|
localPeerId = null;
|
|
29
40
|
localSessionId = null;
|
|
30
41
|
localCwd = null;
|
|
31
42
|
processing = false;
|
|
32
43
|
queue = [];
|
|
44
|
+
expectingResponseFrom = new Set();
|
|
33
45
|
/**
|
|
34
46
|
* Set the local peer info. Called from register-peer tool after
|
|
35
47
|
* successful registration so we know which session to inject into.
|
|
@@ -40,6 +52,22 @@ export class AutoRelayService {
|
|
|
40
52
|
this.localCwd = cwd;
|
|
41
53
|
logger.info(`Auto-relay configured for peer ${peerId} (session: ${sessionId})`);
|
|
42
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Mark that we expect a response from a peer (because we just sent them
|
|
57
|
+
* an explicit message via send_message). When their response arrives,
|
|
58
|
+
* inject it into the local session but do NOT relay our output back.
|
|
59
|
+
* This breaks the infinite auto-relay loop.
|
|
60
|
+
*/
|
|
61
|
+
expectResponse(fromPeerId) {
|
|
62
|
+
this.expectingResponseFrom.add(fromPeerId);
|
|
63
|
+
logger.debug(`Auto-relay: expecting response from ${fromPeerId} (will inject-only)`);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Clear the expectation for a peer.
|
|
67
|
+
*/
|
|
68
|
+
clearExpectation(fromPeerId) {
|
|
69
|
+
this.expectingResponseFrom.delete(fromPeerId);
|
|
70
|
+
}
|
|
43
71
|
/**
|
|
44
72
|
* Process an incoming cloud message by invoking local execClaude()
|
|
45
73
|
* and relaying the response back to the sender.
|
|
@@ -69,6 +97,15 @@ export class AutoRelayService {
|
|
|
69
97
|
if (msg.response !== null) {
|
|
70
98
|
return;
|
|
71
99
|
}
|
|
100
|
+
// Guard: we sent this peer an explicit message and are expecting their response.
|
|
101
|
+
// Inject the response into our session but do NOT relay our output back.
|
|
102
|
+
// This prevents the infinite A->B->A->B auto-relay loop.
|
|
103
|
+
if (this.expectingResponseFrom.has(msg.fromPeerId)) {
|
|
104
|
+
this.expectingResponseFrom.delete(msg.fromPeerId);
|
|
105
|
+
logger.info(`Auto-relay: inject-only response from ${msg.fromPeerId} (we initiated this exchange)`);
|
|
106
|
+
await this._injectOnly(msg);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
72
109
|
// Serialize processing: queue if already busy
|
|
73
110
|
if (this.processing) {
|
|
74
111
|
logger.debug(`Auto-relay: queuing message from ${msg.fromPeerId} (busy processing)`);
|
|
@@ -147,6 +184,38 @@ export class AutoRelayService {
|
|
|
147
184
|
logger.error(`Auto-relay: execClaude threw after ${durationMs}ms: ${err}`);
|
|
148
185
|
}
|
|
149
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* Inject a message into the local session without relaying the response.
|
|
189
|
+
* Used for expected responses to our own send_message calls.
|
|
190
|
+
*/
|
|
191
|
+
async _injectOnly(msg) {
|
|
192
|
+
if (!this.localSessionId || !this.localCwd)
|
|
193
|
+
return;
|
|
194
|
+
let fromLabel = msg.fromPeerId;
|
|
195
|
+
try {
|
|
196
|
+
const backend = getBackend();
|
|
197
|
+
const senderPeer = await backend.getPeer(msg.fromPeerId);
|
|
198
|
+
if (senderPeer) {
|
|
199
|
+
fromLabel = senderPeer.label;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
// Fall back to peerId as label
|
|
204
|
+
}
|
|
205
|
+
const formatted = formatInjectOnlyMessage(fromLabel, msg.fromPeerId, msg.message);
|
|
206
|
+
try {
|
|
207
|
+
const result = await execClaude(this.localSessionId, formatted, this.localCwd);
|
|
208
|
+
if (result.exitCode === 0) {
|
|
209
|
+
logger.info(`Auto-relay: inject-only complete from ${msg.fromPeerId} (response discarded)`);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
logger.warn(`Auto-relay: inject-only execClaude failed (exit=${result.exitCode})`);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
catch (err) {
|
|
216
|
+
logger.error(`Auto-relay: inject-only execClaude threw: ${err}`);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
150
219
|
/**
|
|
151
220
|
* Stop the auto-relay service: clear queue and reset state.
|
|
152
221
|
*/
|
|
@@ -156,6 +225,7 @@ export class AutoRelayService {
|
|
|
156
225
|
this.localSessionId = null;
|
|
157
226
|
this.localCwd = null;
|
|
158
227
|
this.processing = false;
|
|
228
|
+
this.expectingResponseFrom.clear();
|
|
159
229
|
logger.debug("Auto-relay stopped");
|
|
160
230
|
}
|
|
161
231
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-relay.js","sourceRoot":"","sources":["../../src/services/auto-relay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,SAAS,kBAAkB,CACzB,SAAiB,EACjB,UAAkB,EAClB,OAAe;IAEf,OAAO,CACL,+BAA+B,SAAS,KAAK,UAAU,QAAQ;QAC/D,GAAG,OAAO,MAAM;QAChB,OAAO;QACP,uFAAuF,SAAS,IAAI;QACpG,4EAA4E,CAC7E,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,gBAAgB;IACnB,WAAW,GAAkB,IAAI,CAAC;IAClC,cAAc,GAAkB,IAAI,CAAC;IACrC,QAAQ,GAAkB,IAAI,CAAC;IAC/B,UAAU,GAAY,KAAK,CAAC;IAC5B,KAAK,GAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"auto-relay.js","sourceRoot":"","sources":["../../src/services/auto-relay.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-history.d.ts","sourceRoot":"","sources":["../../src/tools/get-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"get-history.d.ts","sourceRoot":"","sources":["../../src/tools/get-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA4C9D"}
|
|
@@ -7,7 +7,9 @@ export function registerGetHistoryTool(server) {
|
|
|
7
7
|
title: "Get Message History",
|
|
8
8
|
description: "Retrieve the message history for the bridge. " +
|
|
9
9
|
"Optionally filter by a specific peer ID. " +
|
|
10
|
-
"Returns messages in chronological order, most recent last."
|
|
10
|
+
"Returns messages in chronological order, most recent last. " +
|
|
11
|
+
"IMPORTANT: Do NOT pass a small limit — always omit the limit parameter to get the full default of 150 messages. " +
|
|
12
|
+
"Users need to see their complete conversation history.",
|
|
11
13
|
inputSchema: {
|
|
12
14
|
peerId: z
|
|
13
15
|
.string()
|
|
@@ -17,7 +19,9 @@ export function registerGetHistoryTool(server) {
|
|
|
17
19
|
.number()
|
|
18
20
|
.optional()
|
|
19
21
|
.default(150)
|
|
20
|
-
.describe("Maximum number of messages to return
|
|
22
|
+
.describe("Maximum number of messages to return. Defaults to 150. " +
|
|
23
|
+
"Do NOT reduce this — users expect to see their full history. " +
|
|
24
|
+
"Only set this if the user explicitly asks for fewer messages."),
|
|
21
25
|
},
|
|
22
26
|
annotations: {
|
|
23
27
|
readOnlyHint: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-history.js","sourceRoot":"","sources":["../../src/tools/get-history.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,+CAA+C;YAC/C,2CAA2C;YAC3C,
|
|
1
|
+
{"version":3,"file":"get-history.js","sourceRoot":"","sources":["../../src/tools/get-history.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,+CAA+C;YAC/C,2CAA2C;YAC3C,6DAA6D;YAC7D,kHAAkH;YAClH,wDAAwD;QAC1D,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wCAAwC,CAAC;YACrD,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,OAAO,CAAC,GAAG,CAAC;iBACZ,QAAQ,CACP,yDAAyD;gBACzD,+DAA+D;gBAC/D,+DAA+D,CAChE;SACJ;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QAC1B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzD,OAAO,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACnD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-message.d.ts","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"send-message.d.ts","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoBpE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0J/D"}
|
|
@@ -3,6 +3,7 @@ import { getBackend, isCloudEndpoint } from "../backend/index.js";
|
|
|
3
3
|
import { BridgeError, BridgeErrorCode, successResult, errorResult } from "../errors.js";
|
|
4
4
|
import { getConfig } from "../config.js";
|
|
5
5
|
import { logger } from "../logger.js";
|
|
6
|
+
import { autoRelay } from "../services/auto-relay.js";
|
|
6
7
|
const RETRY_TIMEOUT_MS = 30_000;
|
|
7
8
|
function formatBridgeMessage(fromLabel, fromPeerId, message) {
|
|
8
9
|
return (`[Cogent Bridge message from ${fromLabel} (${fromPeerId})]\n\n` +
|
|
@@ -96,6 +97,12 @@ export function registerSendMessageTool(server) {
|
|
|
96
97
|
success,
|
|
97
98
|
error: success ? null : result.stderr,
|
|
98
99
|
});
|
|
100
|
+
// In cloud mode, tell auto-relay to expect the response from this peer.
|
|
101
|
+
// When it arrives via WS, it will be injected into our session but NOT
|
|
102
|
+
// relayed back, preventing the infinite auto-relay loop.
|
|
103
|
+
if (isCloud && success) {
|
|
104
|
+
autoRelay.expectResponse(toPeerId);
|
|
105
|
+
}
|
|
99
106
|
return successResult({
|
|
100
107
|
success,
|
|
101
108
|
response: responseText,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "io.github.eaisdevelopment/cogent",
|
|
4
4
|
"title": "Cogent Bridge from Essential AI Solutions (essentialai.uk)",
|
|
5
5
|
"description": "MCP bridge for inter-session communication between Claude Code instances",
|
|
6
|
-
"version": "1.3.
|
|
6
|
+
"version": "1.3.4",
|
|
7
7
|
"repository": {
|
|
8
8
|
"url": "https://github.com/eaisdevelopment/cogent",
|
|
9
9
|
"source": "github"
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
{
|
|
13
13
|
"registryType": "npm",
|
|
14
14
|
"identifier": "@essentialai/cogent-bridge",
|
|
15
|
-
"version": "1.3.
|
|
15
|
+
"version": "1.3.4",
|
|
16
16
|
"runtimeHint": "npx",
|
|
17
17
|
"transport": {
|
|
18
18
|
"type": "stdio"
|