@essentialai/cogent-bridge 3.5.10 → 3.6.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.
- package/CHANGELOG.md +28 -0
- package/dist/backend/file-backend.d.ts +1 -1
- package/dist/backend/file-backend.d.ts.map +1 -1
- package/dist/backend/file-backend.js +2 -2
- package/dist/backend/file-backend.js.map +1 -1
- package/dist/backend/http-backend.d.ts +1 -1
- package/dist/backend/http-backend.d.ts.map +1 -1
- package/dist/backend/http-backend.js +14 -1
- package/dist/backend/http-backend.js.map +1 -1
- package/dist/backend/storage-backend.d.ts +5 -1
- package/dist/backend/storage-backend.d.ts.map +1 -1
- package/dist/config.d.ts +3 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +9 -0
- package/dist/config.js.map +1 -1
- package/dist/services/auto-relay.d.ts +50 -0
- package/dist/services/auto-relay.d.ts.map +1 -1
- package/dist/services/auto-relay.js +177 -45
- package/dist/services/auto-relay.js.map +1 -1
- package/dist/services/cc-cli.d.ts +11 -0
- package/dist/services/cc-cli.d.ts.map +1 -1
- package/dist/services/cc-cli.js +69 -0
- package/dist/services/cc-cli.js.map +1 -1
- package/dist/services/claude-preflight.d.ts.map +1 -1
- package/dist/services/claude-preflight.js +1 -0
- package/dist/services/claude-preflight.js.map +1 -1
- package/dist/services/codex-cli.d.ts.map +1 -1
- package/dist/services/codex-cli.js +18 -4
- package/dist/services/codex-cli.js.map +1 -1
- package/dist/services/durable-identity.d.ts +11 -0
- package/dist/services/durable-identity.d.ts.map +1 -0
- package/dist/services/durable-identity.js +14 -0
- package/dist/services/durable-identity.js.map +1 -0
- package/dist/services/peer-registry.d.ts +1 -1
- package/dist/services/peer-registry.d.ts.map +1 -1
- package/dist/services/peer-registry.js +8 -1
- package/dist/services/peer-registry.js.map +1 -1
- package/dist/startup.d.ts.map +1 -1
- package/dist/startup.js +8 -1
- package/dist/startup.js.map +1 -1
- package/dist/tools/register-peer.d.ts.map +1 -1
- package/dist/tools/register-peer.js +29 -3
- package/dist/tools/register-peer.js.map +1 -1
- package/dist/types.d.ts +30 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
|
@@ -8,6 +8,7 @@ import { logger } from "../logger.js";
|
|
|
8
8
|
import { heartbeat } from "../services/heartbeat.js";
|
|
9
9
|
import { autoRelay } from "../services/auto-relay.js";
|
|
10
10
|
import { resolveSession } from "../services/session-resolver.js";
|
|
11
|
+
import { deriveWorkspaceId } from "../services/durable-identity.js";
|
|
11
12
|
import { CLIENT_VERSION } from "../constants.js";
|
|
12
13
|
import { getLastNudge } from "../backend/npm-update-check.js";
|
|
13
14
|
export function registerRegisterPeerTool(server) {
|
|
@@ -36,6 +37,12 @@ export function registerRegisterPeerTool(server) {
|
|
|
36
37
|
.describe("Peer participation mode. \"agent\" (default) auto-responds via execClaude on inbound directed messages. " +
|
|
37
38
|
"\"observer\" registers a passive watcher that receives WS frames and remains targetable but never spawns a subprocess. " +
|
|
38
39
|
"Useful for operators using their MCP client to monitor a channel without polluting transcript with phantom replies."),
|
|
40
|
+
role: z
|
|
41
|
+
.enum(["implementer", "reviewer", "auditor", "coordinator"])
|
|
42
|
+
.optional()
|
|
43
|
+
.describe("Structured A2A role (Slice 4). Makes multi-agent collaboration explicit rather than noise: " +
|
|
44
|
+
"\"implementer\" writes code, \"reviewer\"/\"auditor\" check it, \"coordinator\" is the single visible task owner. " +
|
|
45
|
+
"Advertised on the peer (surfaced in cogent_list_peers); at most one coordinator per channel by convention."),
|
|
39
46
|
},
|
|
40
47
|
annotations: {
|
|
41
48
|
readOnlyHint: false,
|
|
@@ -43,7 +50,7 @@ export function registerRegisterPeerTool(server) {
|
|
|
43
50
|
idempotentHint: true,
|
|
44
51
|
openWorldHint: false,
|
|
45
52
|
},
|
|
46
|
-
}, async ({ peerId, sessionId, cwd, label, mode }) => {
|
|
53
|
+
}, async ({ peerId, sessionId, cwd, label, mode, role }) => {
|
|
47
54
|
try {
|
|
48
55
|
const config = getConfig();
|
|
49
56
|
// Config-based check for auto-create (needs the endpoint URL).
|
|
@@ -129,12 +136,31 @@ export function registerRegisterPeerTool(server) {
|
|
|
129
136
|
// channelSessionId = the cloud/relay session id, kept distinct from
|
|
130
137
|
// the local .jsonl id the resolver finds (they used to collide).
|
|
131
138
|
// capabilities = what this peer can do for the reply contract.
|
|
139
|
+
// Slice 3 (Story 8.4): an agent-mode peer advertises the reply-contract
|
|
140
|
+
// tier it captures with. Both platforms now use the structured
|
|
141
|
+
// machine_readable_event_stream (Claude `--output-format json` `.result`;
|
|
142
|
+
// Codex `-o` last-message file) — the bridge never guesses from raw
|
|
143
|
+
// stdout; a fallback is surfaced as a visible capture_downgrade.
|
|
132
144
|
const channelSessionId = sessionId;
|
|
133
|
-
const capabilities = mode === "observer"
|
|
145
|
+
const capabilities = mode === "observer"
|
|
146
|
+
? ["observer"]
|
|
147
|
+
: ["auto-resume", "reply:machine_readable_event_stream"];
|
|
148
|
+
// Slice 4 (Story 8.5): advertise the structured A2A role so multi-agent
|
|
149
|
+
// collaboration is explicit (surfaced in cogent_list_peers), not noise.
|
|
150
|
+
if (role) {
|
|
151
|
+
capabilities.push(`role:${role}`);
|
|
152
|
+
}
|
|
153
|
+
// Slice 5 / Story 8.6: derive a DURABLE identity that does not depend on
|
|
154
|
+
// the mutable, lossy cwd hint. workspaceId = stable SHA-256 of the cwd
|
|
155
|
+
// (deriveWorkspaceId — single-sourced so re-register derives it the same);
|
|
156
|
+
// threadId = the session id (the durable conversation thread). Sent on the
|
|
157
|
+
// wire in cloud mode so the relay can route/resolve on them.
|
|
158
|
+
const workspaceId = deriveWorkspaceId(cwd);
|
|
159
|
+
const threadId = sessionId;
|
|
134
160
|
// Pass our own cogent-bridge npm version so the server (and any
|
|
135
161
|
// operator inspecting cogent_list_peers) can tell at a glance which
|
|
136
162
|
// client version each peer is running. Plumbs through to PeerInfo.
|
|
137
|
-
const peer = await backend.registerPeer(peerId, sessionId, cwd, label, CLIENT_VERSION, mode, channelSessionId, capabilities);
|
|
163
|
+
const peer = await backend.registerPeer(peerId, sessionId, cwd, label, CLIENT_VERSION, mode, channelSessionId, capabilities, workspaceId, threadId);
|
|
138
164
|
// Set local peer info for auto-relay (cloud mode: incoming messages trigger local execClaude).
|
|
139
165
|
// Auto-detect the real local CC session ID from the filesystem — the user/agent may
|
|
140
166
|
// pass the cloud session ID by mistake, which won't work with `claude --resume`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-peer.js","sourceRoot":"","sources":["../../src/tools/register-peer.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EACT,gEAAgE;YAChE,+DAA+D;YAC/D,0DAA0D;QAC5D,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CAAC,+DAA+D,CAAC;YAC5E,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,CAAC,6CAA6C,CAAC;YAC1D,GAAG,EAAE,CAAC;iBACH,MAAM,EAAE;iBACR,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,CAAC,kEAAkE,CAAC;YAC/E,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;iBAC3B,QAAQ,EAAE;iBACV,OAAO,CAAC,OAAO,CAAC;iBAChB,QAAQ,CACP,0GAA0G;gBAC1G,yHAAyH;gBACzH,qHAAqH,CACtH;SACJ;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"register-peer.js","sourceRoot":"","sources":["../../src/tools/register-peer.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -30,6 +30,15 @@ export interface PeerInfo {
|
|
|
30
30
|
* for the later relay slice; NOT sent on the wire yet. Added 3.5.9.
|
|
31
31
|
*/
|
|
32
32
|
capabilities?: string[];
|
|
33
|
+
/**
|
|
34
|
+
* Durable workspace identifier (Slice 5 / Story 8.6). A STABLE id for the
|
|
35
|
+
* workspace that does NOT depend on the mutable, lossy cwd hint. UNLIKE
|
|
36
|
+
* channelSessionId/capabilities, this IS sent on the relay wire (the server
|
|
37
|
+
* .strict() schema was extended in lockstep). Optional; back-compat.
|
|
38
|
+
*/
|
|
39
|
+
workspaceId?: string;
|
|
40
|
+
/** Durable thread/conversation identifier (Slice 5 / Story 8.6). On the wire; optional. */
|
|
41
|
+
threadId?: string;
|
|
33
42
|
}
|
|
34
43
|
export interface MessageRecord {
|
|
35
44
|
id: string;
|
|
@@ -64,6 +73,14 @@ export interface MessageRecord {
|
|
|
64
73
|
* correlation only; NOT sent on the relay wire in this version. Added 3.5.9.
|
|
65
74
|
*/
|
|
66
75
|
traceId?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Platform this message ORIGINATED from (the relay stamps it, default "cc").
|
|
78
|
+
* Read by Slice 4 (Story 8.5) to distinguish an AGENT-origin broadcast
|
|
79
|
+
* (cc/codex — manual by default, anti-debate) from a HUMAN-origin broadcast
|
|
80
|
+
* (slack/gchat/web — still auto-relays so a Slack user gets an answer).
|
|
81
|
+
* Absent on older records → treated as agent-origin (safe default).
|
|
82
|
+
*/
|
|
83
|
+
originPlatform?: "cc" | "codex" | "slack" | "gchat" | "web";
|
|
67
84
|
}
|
|
68
85
|
export interface SendMessageResult {
|
|
69
86
|
success: boolean;
|
|
@@ -75,5 +92,18 @@ export interface CliExecResult {
|
|
|
75
92
|
stdout: string;
|
|
76
93
|
stderr: string;
|
|
77
94
|
exitCode: number | null;
|
|
95
|
+
/**
|
|
96
|
+
* Slice 3 (Story 8.4) — how the reply was captured:
|
|
97
|
+
* - "event_stream": parsed from a structured envelope (Claude `--output-format
|
|
98
|
+
* json` `.result`; Codex `-o` last-message file) — the
|
|
99
|
+
* `machine_readable_event_stream` tier, trusted (`stable:true`).
|
|
100
|
+
* - "stdout_compat": fell back to raw stdout because a structured envelope was
|
|
101
|
+
* unavailable — `stable:false`; the downgrade is surfaced in the wake trace,
|
|
102
|
+
* never disguised as a clean auto-capture (AC3).
|
|
103
|
+
* Absent on non-reply results (timeouts, spawn/CLI errors).
|
|
104
|
+
*/
|
|
105
|
+
captureContract?: "event_stream" | "stdout_compat";
|
|
106
|
+
/** Slice 3: true only for a trusted structured capture. */
|
|
107
|
+
stable?: boolean;
|
|
78
108
|
}
|
|
79
109
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;CAC7D;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,cAAc,GAAG,eAAe,CAAC;IACnD,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB"}
|
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": "3.
|
|
6
|
+
"version": "3.6.0",
|
|
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": "3.
|
|
15
|
+
"version": "3.6.0",
|
|
16
16
|
"runtimeHint": "npx",
|
|
17
17
|
"transport": {
|
|
18
18
|
"type": "stdio"
|