@essentialai/cogent-server 2.0.1 → 3.0.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 +24 -0
- package/dist/__tests__/helpers.d.ts +4 -0
- package/dist/__tests__/helpers.d.ts.map +1 -1
- package/dist/__tests__/helpers.js +14 -0
- package/dist/__tests__/helpers.js.map +1 -1
- package/dist/app.d.ts +4 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +29 -3
- package/dist/app.js.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/ws-auth.d.ts +11 -0
- package/dist/middleware/ws-auth.d.ts.map +1 -1
- package/dist/middleware/ws-auth.js +46 -0
- package/dist/middleware/ws-auth.js.map +1 -1
- package/dist/routes/adapter.d.ts +17 -0
- package/dist/routes/adapter.d.ts.map +1 -0
- package/dist/routes/adapter.js +119 -0
- package/dist/routes/adapter.js.map +1 -0
- package/dist/routes/channel-mappings.d.ts +17 -0
- package/dist/routes/channel-mappings.d.ts.map +1 -0
- package/dist/routes/channel-mappings.js +120 -0
- package/dist/routes/channel-mappings.js.map +1 -0
- package/dist/routes/messages.d.ts +2 -1
- package/dist/routes/messages.d.ts.map +1 -1
- package/dist/routes/messages.js +19 -3
- package/dist/routes/messages.js.map +1 -1
- package/dist/routes/peers.d.ts.map +1 -1
- package/dist/routes/peers.js +5 -1
- package/dist/routes/peers.js.map +1 -1
- package/dist/services/adapter-registry.d.ts +45 -0
- package/dist/services/adapter-registry.d.ts.map +1 -0
- package/dist/services/adapter-registry.js +121 -0
- package/dist/services/adapter-registry.js.map +1 -0
- package/dist/services/channel-index.d.ts +29 -0
- package/dist/services/channel-index.d.ts.map +1 -0
- package/dist/services/channel-index.js +53 -0
- package/dist/services/channel-index.js.map +1 -0
- package/dist/services/connection-manager.d.ts +10 -0
- package/dist/services/connection-manager.d.ts.map +1 -1
- package/dist/services/connection-manager.js +23 -0
- package/dist/services/connection-manager.js.map +1 -1
- package/dist/types.d.ts +17 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/pages/HowToPage.d.ts.map +1 -1
- package/dist/ui/pages/HowToPage.js +3 -3
- package/dist/ui/pages/HowToPage.js.map +1 -1
- package/dist/ui/pages/LandingPage.d.ts.map +1 -1
- package/dist/ui/pages/LandingPage.js +1 -1
- package/dist/ui/pages/LandingPage.js.map +1 -1
- package/dist/ws/adapter-handler.d.ts +30 -0
- package/dist/ws/adapter-handler.d.ts.map +1 -0
- package/dist/ws/adapter-handler.js +81 -0
- package/dist/ws/adapter-handler.js.map +1 -0
- package/dist/ws/frames.d.ts +31 -1
- package/dist/ws/frames.d.ts.map +1 -1
- package/dist/ws/frames.js +16 -0
- package/dist/ws/frames.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/services/connection-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/services/connection-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -20,6 +20,17 @@ export interface QueuedMessage {
|
|
|
20
20
|
/** Full message payload for delivery on reconnect. */
|
|
21
21
|
message: MessageRecord;
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* A mapping between a COGENT session and an external platform channel.
|
|
25
|
+
* Stored in SessionFileState for persistence across server restarts.
|
|
26
|
+
*/
|
|
27
|
+
export interface ChannelMapping {
|
|
28
|
+
platform: "slack" | "gchat" | "teams";
|
|
29
|
+
channelId: string;
|
|
30
|
+
channelName?: string;
|
|
31
|
+
mappedAt: string;
|
|
32
|
+
mappedBy?: string;
|
|
33
|
+
}
|
|
23
34
|
/**
|
|
24
35
|
* The full state of a single session, persisted as a JSON file on disk.
|
|
25
36
|
* Each session has its own file: `{sessionId}.json` in the state directory.
|
|
@@ -46,6 +57,12 @@ export interface SessionFileState {
|
|
|
46
57
|
* Default to `{}` on read when absent.
|
|
47
58
|
*/
|
|
48
59
|
messageQueue?: Record<string, QueuedMessage[]>;
|
|
60
|
+
/**
|
|
61
|
+
* Platform channel mappings, keyed by platform name (e.g., "slack").
|
|
62
|
+
* One channel per platform per session (1:1 mapping per platform).
|
|
63
|
+
* Optional so existing session files still parse correctly.
|
|
64
|
+
*/
|
|
65
|
+
channelMappings?: Record<string, ChannelMapping>;
|
|
49
66
|
}
|
|
50
67
|
/**
|
|
51
68
|
* Hono environment type for server routes.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,OAAO,EAAE,aAAa,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,wCAAwC;IACxC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,mDAAmD;IACnD,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,OAAO,EAAE,aAAa,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,wCAAwC;IACxC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,mDAAmD;IACnD,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAC/C;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAClD;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,gBAAgB,CAAC;KAC3B,CAAC;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HowToPage.d.ts","sourceRoot":"","sources":["../../../src/ui/pages/HowToPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAmTnC;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"HowToPage.d.ts","sourceRoot":"","sources":["../../../src/ui/pages/HowToPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAmTnC;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,EA67BvB,CAAC"}
|
|
@@ -271,7 +271,7 @@ const footer = css `
|
|
|
271
271
|
* for Cogent Bridge from the perspective of business owners,
|
|
272
272
|
* product owners, and project managers.
|
|
273
273
|
*/
|
|
274
|
-
export const HowToPage = () => (_jsx(Layout, { title: "How-To Guide", children: _jsxs("div", { class: container, children: [_jsx("a", { href: "/", class: backLink, children: "\u2190 Back to Home" }), _jsxs("div", { class: heroSection, children: [_jsx("h1", { class: heroTitle, children: "How Teams Deliver Faster with Cogent" }), _jsx("p", { class: heroSubtitle, children: "When your developers connect their Claude Code agents through Cogent, every team member stays aligned in real time. No more integration surprises, no more \"I didn't know you changed that.\" Just continuous sync across codebases." }), _jsx("p", { class: heroSubtitle, children: "This guide walks through the most common use cases with exact commands your teams will use every day." })] }), _jsxs("div", { class: toc, children: [_jsx("div", { class: tocTitle, children: "In This Guide" }), _jsxs("ul", { class: tocList, children: [_jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "00" }), _jsx("a", { href: "#prerequisites", children: "Prerequisites & Setup" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "01" }), _jsx("a", { href: "#parallel-dev", children: "Parallel Feature Development" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "02" }), _jsx("a", { href: "#bug-relay", children: "Cross-Team Bug Investigation" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "03" }), _jsx("a", { href: "#api-contracts", children: "API Contract Negotiation" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "04" }), _jsx("a", { href: "#code-review", children: "Cross-Agent Code Review" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "05" }), _jsx("a", { href: "#multi-service", children: "Multi-Service Orchestration" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "06" }), _jsx("a", { href: "#sprint-sync", children: "Sprint Kick-off Alignment" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "07" }), _jsx("a", { href: "#integration-test", children: "Real-Time Integration Testing" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "08" }), _jsx("a", { href: "#command-ref", children: "Command Reference" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "09" }), _jsx("a", { href: "#best-practices", children: "Best Practices for Managers" })] })] })] }), _jsxs("div", { class: section, children: [_jsx("span", { id: "prerequisites", class: sectionAnchor }), _jsx("h2", { class: sectionTitle, children: "00 \u2014 Prerequisites & Setup" }), _jsx("p", { class: sectionSubtitle, children: "Get every team member connected in under 2 minutes" }), _jsxs("p", { class: paragraph, children: ["Before your agents can collaborate, each developer needs Cogent Bridge installed as an MCP server in their Claude Code environment. There are two approaches:", _jsx("span", { class: highlight, children: " cloud mode" }), " (recommended for teams) and", _jsx("span", { class: highlight, children: " local mode" }), " (for same-machine sessions)."] }), _jsxs(Terminal, { title: "Install Cogent Bridge (Every Team Member)", children: [_jsx("p", { class: noteText, children: "Install the plugin for slash commands and automatic session discovery:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin marketplace add eaisdevelopment/cogent" })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin install cogent@cogent" })] }), _jsxs("p", { class: noteText, children: ["Restart Claude Code. Use ", _jsx("span", { class: inlineCode, children: "/cogent:register" }), " to join the bridge."] })] }), _jsxs(Terminal, { title: "Claude Desktop", children: [_jsx("p", { class: noteText, children: "Add Cogent Bridge to your Claude Desktop config file:" }), _jsxs("p", { class: noteText, style: "font-size: 0.8rem;", children: [_jsx("strong", { children: "macOS:" }), " ", _jsx("span", { class: inlineCode, children: "~/Library/Application Support/Claude/claude_desktop_config.json" }), _jsx("br", {}), _jsx("strong", { children: "Windows:" }), " ", _jsx("span", { class: inlineCode, children: "%APPDATA%\\Claude\\claude_desktop_config.json" })] }), _jsx("div", { class: codeBlock, children: `{
|
|
274
|
+
export const HowToPage = () => (_jsx(Layout, { title: "How-To Guide", children: _jsxs("div", { class: container, children: [_jsx("a", { href: "/", class: backLink, children: "\u2190 Back to Home" }), _jsxs("div", { class: heroSection, children: [_jsx("h1", { class: heroTitle, children: "How Teams Deliver Faster with Cogent" }), _jsx("p", { class: heroSubtitle, children: "When your developers connect their Claude Code agents through Cogent, every team member stays aligned in real time. No more integration surprises, no more \"I didn't know you changed that.\" Just continuous sync across codebases." }), _jsx("p", { class: heroSubtitle, children: "This guide walks through the most common use cases with exact commands your teams will use every day." })] }), _jsxs("div", { class: toc, children: [_jsx("div", { class: tocTitle, children: "In This Guide" }), _jsxs("ul", { class: tocList, children: [_jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "00" }), _jsx("a", { href: "#prerequisites", children: "Prerequisites & Setup" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "01" }), _jsx("a", { href: "#parallel-dev", children: "Parallel Feature Development" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "02" }), _jsx("a", { href: "#bug-relay", children: "Cross-Team Bug Investigation" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "03" }), _jsx("a", { href: "#api-contracts", children: "API Contract Negotiation" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "04" }), _jsx("a", { href: "#code-review", children: "Cross-Agent Code Review" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "05" }), _jsx("a", { href: "#multi-service", children: "Multi-Service Orchestration" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "06" }), _jsx("a", { href: "#sprint-sync", children: "Sprint Kick-off Alignment" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "07" }), _jsx("a", { href: "#integration-test", children: "Real-Time Integration Testing" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "08" }), _jsx("a", { href: "#command-ref", children: "Command Reference" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "09" }), _jsx("a", { href: "#best-practices", children: "Best Practices for Managers" })] }), _jsxs("li", { class: tocItem, children: [_jsx("span", { class: tocNumber, children: "10" }), _jsx("a", { href: "#slack-bridge", children: "Slack Integration (NEW)" })] })] })] }), _jsxs("div", { class: section, children: [_jsx("span", { id: "prerequisites", class: sectionAnchor }), _jsx("h2", { class: sectionTitle, children: "00 \u2014 Prerequisites & Setup" }), _jsx("p", { class: sectionSubtitle, children: "Get every team member connected in under 2 minutes" }), _jsxs("p", { class: paragraph, children: ["Before your agents can collaborate, each developer needs Cogent Bridge installed as an MCP server in their Claude Code environment. There are two approaches:", _jsx("span", { class: highlight, children: " cloud mode" }), " (recommended for teams) and", _jsx("span", { class: highlight, children: " local mode" }), " (for same-machine sessions)."] }), _jsxs(Terminal, { title: "Install Cogent Bridge (Every Team Member)", children: [_jsx("p", { class: noteText, children: "Install the plugin for slash commands and automatic session discovery:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin marketplace add eaisdevelopment/cogent" })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin install cogent@cogent" })] }), _jsxs("p", { class: noteText, children: ["Restart Claude Code. Use ", _jsx("span", { class: inlineCode, children: "/cogent:register" }), " to join the bridge."] })] }), _jsxs(Terminal, { title: "Claude Desktop", children: [_jsx("p", { class: noteText, children: "Add Cogent Bridge to your Claude Desktop config file:" }), _jsxs("p", { class: noteText, style: "font-size: 0.8rem;", children: [_jsx("strong", { children: "macOS:" }), " ", _jsx("span", { class: inlineCode, children: "~/Library/Application Support/Claude/claude_desktop_config.json" }), _jsx("br", {}), _jsx("strong", { children: "Windows:" }), " ", _jsx("span", { class: inlineCode, children: "%APPDATA%\\Claude\\claude_desktop_config.json" })] }), _jsx("div", { class: codeBlock, children: `{
|
|
275
275
|
"mcpServers": {
|
|
276
276
|
"cogent-bridge": {
|
|
277
277
|
"command": "npx",
|
|
@@ -281,7 +281,7 @@ export const HowToPage = () => (_jsx(Layout, { title: "How-To Guide", children:
|
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
|
-
}` }), _jsxs("p", { class: noteText, children: ["Restart Claude Desktop. You'll get the six ", _jsx("span", { class: inlineCode, children: "cogent_*" }), " MCP tools. Slash commands (", _jsx("span", { class: inlineCode, children: "/cogent:register" }), ") are Claude Code only \u2014 in Desktop, use natural language: ", _jsx("em", { children: "\"Create a Cogent channel called 'my-project' with secret 'team-secret'\"" }), "."] })] }), _jsxs(Terminal, { title: "Cloud Channel \u2014 The Team Pattern", children: [_jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 1:" }), " One team member creates a shared channel:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: commentLine, children: `# Ask Claude Code to create a channel for the team` }), "\n", _jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Create a Cogent channel called "sprint-42" with secret "our-team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Claude will use ", _jsx("span", { class: inlineCode, children: "cogent_create_session" }), " and return a channel name (e.g., ", _jsx("span", { class: inlineCode, children: "sprint-42" }), ") and a config snippet. If you omit the name, a friendly name is auto-generated (e.g., ", _jsx("span", { class: inlineCode, children: "swift-fox-a3f1" }), ")."] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 2:" }), " Share the ", _jsx("strong", { children: "channel name" }), " and ", _jsx("strong", { children: "secret" }), " with your team (Slack, email, etc.)"] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 3:" }), " Every other team member joins using the channel name:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Join Cogent channel "sprint-42" with secret "our-team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Claude will use ", _jsx("span", { class: inlineCode, children: "cogent_join_session" }), " to resolve the channel name and join. No UUIDs needed."] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 4:" }), " Each agent registers as a named peer:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Register on Cogent as peerId="backend", label="Backend Team"` })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "Pro Tip \u2014 Automate with CLAUDE.md" }), _jsxs("p", { class: noteText, children: ["Add Cogent Bridge instructions to each project's ", _jsx("span", { class: inlineCode, children: "CLAUDE.md" }), " file. When a developer opens Claude Code in that project, the agent automatically knows its role, peer ID, and communication protocol. No manual setup each time."] }), _jsx("div", { class: codeBlock, children: `# CLAUDE.md (in your project root)
|
|
284
|
+
}` }), _jsxs("p", { class: noteText, children: ["Restart Claude Desktop. You'll get the six ", _jsx("span", { class: inlineCode, children: "cogent_*" }), " MCP tools. Slash commands (", _jsx("span", { class: inlineCode, children: "/cogent:register" }), ") are Claude Code only \u2014 in Desktop, use natural language: ", _jsx("em", { children: "\"Create a Cogent channel called 'my-project' with secret 'team-secret'\"" }), "."] })] }), _jsxs(Terminal, { title: "Cloud Channel \u2014 The Team Pattern", children: [_jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 1:" }), " One team member creates a shared channel:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: commentLine, children: `# Ask Claude Code to create a channel for the team` }), "\n", _jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Create a Cogent channel called "sprint-42" with secret "our-team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Claude will use ", _jsx("span", { class: inlineCode, children: "cogent_create_session" }), " and return a channel name (e.g., ", _jsx("span", { class: inlineCode, children: "sprint-42" }), ") and a config snippet. If you omit the name, a friendly name is auto-generated (e.g., ", _jsx("span", { class: inlineCode, children: "swift-fox-a3f1" }), ")."] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 2:" }), " Share the ", _jsx("strong", { children: "channel name" }), " and ", _jsx("strong", { children: "secret" }), " with your team (Slack, email, etc.)"] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 3:" }), " Every other team member joins using the channel name:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Join Cogent channel "sprint-42" with secret "our-team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Claude will use ", _jsx("span", { class: inlineCode, children: "cogent_join_session" }), " to resolve the channel name and join. No UUIDs needed."] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Step 4:" }), " Each agent registers as a named peer:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Register on Cogent as peerId="backend", label="Backend Team"` })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "Updating" }), _jsxs("p", { class: noteText, children: [_jsx("strong", { children: "Plugin Marketplace:" }), " Re-run ", _jsx("span", { class: inlineCode, children: "claude plugin marketplace add eaisdevelopment/cogent" }), " to pull the latest version.", _jsx("strong", { children: "npx users:" }), " ", _jsx("span", { class: inlineCode, children: "npx -y" }), " always fetches the latest \u2014 just restart Claude.", _jsx("strong", { children: "Global install:" }), " Run ", _jsx("span", { class: inlineCode, children: "npm update -g @essentialai/cogent-bridge" }), "."] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "Pro Tip \u2014 Automate with CLAUDE.md" }), _jsxs("p", { class: noteText, children: ["Add Cogent Bridge instructions to each project's ", _jsx("span", { class: inlineCode, children: "CLAUDE.md" }), " file. When a developer opens Claude Code in that project, the agent automatically knows its role, peer ID, and communication protocol. No manual setup each time."] }), _jsx("div", { class: codeBlock, children: `# CLAUDE.md (in your project root)
|
|
285
285
|
|
|
286
286
|
## Cogent Bridge Protocol
|
|
287
287
|
You are the **Backend** team. On session start:
|
|
@@ -308,5 +308,5 @@ You are the **[Team Name]** agent.
|
|
|
308
308
|
|
|
309
309
|
### Team Dependencies
|
|
310
310
|
- "frontend" — consumes our API, notify of any contract changes
|
|
311
|
-
- "devops" — manages deployment, notify of new env vars or infra needs` })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "2. Name Your Peers Descriptively" }), _jsx("p", { class: noteText, children: "Use clear, role-based peer IDs that any team member can understand:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "backend" }), ", ", _jsx("span", { class: inlineCode, children: "frontend" }), ", ", _jsx("span", { class: inlineCode, children: "mobile" }), " \u2014 for team-based splits"] }), _jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "auth-service" }), ", ", _jsx("span", { class: inlineCode, children: "payments" }), ", ", _jsx("span", { class: inlineCode, children: "gateway" }), " \u2014 for microservice architectures"] }), _jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "reviewer" }), ", ", _jsx("span", { class: inlineCode, children: "qa" }), ", ", _jsx("span", { class: inlineCode, children: "security" }), " \u2014 for role-based workflows"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "3. Establish Communication Standards" }), _jsx("p", { class: noteText, children: "Define message formats in your CLAUDE.md so agents communicate consistently:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Bug reports:" }), " endpoint, expected, actual, reproduction steps"] }), _jsxs("li", { children: [_jsx("strong", { children: "API changes:" }), " method, path, request body, response shape, breaking?"] }), _jsxs("li", { children: [_jsx("strong", { children: "Status updates:" }), " what's done, what's in progress, what's blocked"] }), _jsxs("li", { children: [_jsx("strong", { children: "Review requests:" }), " files changed, design decisions, areas of concern"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "4. Use Sessions Strategically" }), _jsx("p", { class: noteText, children: "Create sessions that match your work patterns:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Per-sprint sessions:" }), " \"sprint-42\" \u2014 all agents join for the sprint duration"] }), _jsxs("li", { children: [_jsx("strong", { children: "Per-feature sessions:" }), " \"feature-payments\" \u2014 only relevant teams join"] }), _jsxs("li", { children: [_jsx("strong", { children: "Ad-hoc sessions:" }), " \"debug-login-issue\" \u2014 temporary session for incident response"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "5. Review Message History Regularly" }), _jsxs("p", { class: noteText, children: ["Use ", _jsx("span", { class: inlineCode, children: "cogent_get_history" }), " as a management tool. The message history captures every technical decision, every API contract negotiation, every bug report and resolution. This is far richer than any standup summary or ticket description."] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "6. Start Small, Scale Up" }), _jsx("p", { class: noteText, children: "Begin with two agents on one feature. Once your team sees the speed improvement, expand to multi-agent workflows. Common progression:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Week 1:" }), " Frontend + Backend on a single feature"] }), _jsxs("li", { children: [_jsx("strong", { children: "Week 2:" }), " Add a QA/testing agent"] }), _jsxs("li", { children: [_jsx("strong", { children: "Week 3:" }), " Full sprint with all team agents connected"] }), _jsxs("li", { children: [_jsx("strong", { children: "Month 2:" }), " Cross-team orchestration for complex features"] })] })] })] }), _jsxs("div", { class: footer, children: ["COGENT \u2014 Powered by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit;", children: "Essential AI Solutions Ltd." }), " \u2014 ", _jsx("a", { href: "/", style: "color: inherit;", children: "cogent.tools" })] })] }) }));
|
|
311
|
+
- "devops" — manages deployment, notify of new env vars or infra needs` })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "2. Name Your Peers Descriptively" }), _jsx("p", { class: noteText, children: "Use clear, role-based peer IDs that any team member can understand:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "backend" }), ", ", _jsx("span", { class: inlineCode, children: "frontend" }), ", ", _jsx("span", { class: inlineCode, children: "mobile" }), " \u2014 for team-based splits"] }), _jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "auth-service" }), ", ", _jsx("span", { class: inlineCode, children: "payments" }), ", ", _jsx("span", { class: inlineCode, children: "gateway" }), " \u2014 for microservice architectures"] }), _jsxs("li", { children: [_jsx("span", { class: inlineCode, children: "reviewer" }), ", ", _jsx("span", { class: inlineCode, children: "qa" }), ", ", _jsx("span", { class: inlineCode, children: "security" }), " \u2014 for role-based workflows"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "3. Establish Communication Standards" }), _jsx("p", { class: noteText, children: "Define message formats in your CLAUDE.md so agents communicate consistently:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Bug reports:" }), " endpoint, expected, actual, reproduction steps"] }), _jsxs("li", { children: [_jsx("strong", { children: "API changes:" }), " method, path, request body, response shape, breaking?"] }), _jsxs("li", { children: [_jsx("strong", { children: "Status updates:" }), " what's done, what's in progress, what's blocked"] }), _jsxs("li", { children: [_jsx("strong", { children: "Review requests:" }), " files changed, design decisions, areas of concern"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "4. Use Sessions Strategically" }), _jsx("p", { class: noteText, children: "Create sessions that match your work patterns:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Per-sprint sessions:" }), " \"sprint-42\" \u2014 all agents join for the sprint duration"] }), _jsxs("li", { children: [_jsx("strong", { children: "Per-feature sessions:" }), " \"feature-payments\" \u2014 only relevant teams join"] }), _jsxs("li", { children: [_jsx("strong", { children: "Ad-hoc sessions:" }), " \"debug-login-issue\" \u2014 temporary session for incident response"] })] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "5. Review Message History Regularly" }), _jsxs("p", { class: noteText, children: ["Use ", _jsx("span", { class: inlineCode, children: "cogent_get_history" }), " as a management tool. The message history captures every technical decision, every API contract negotiation, every bug report and resolution. This is far richer than any standup summary or ticket description."] })] }), _jsxs("div", { class: tipBox, children: [_jsx("div", { class: tipLabel, children: "6. Start Small, Scale Up" }), _jsx("p", { class: noteText, children: "Begin with two agents on one feature. Once your team sees the speed improvement, expand to multi-agent workflows. Common progression:" }), _jsxs("ul", { class: bulletList, children: [_jsxs("li", { children: [_jsx("strong", { children: "Week 1:" }), " Frontend + Backend on a single feature"] }), _jsxs("li", { children: [_jsx("strong", { children: "Week 2:" }), " Add a QA/testing agent"] }), _jsxs("li", { children: [_jsx("strong", { children: "Week 3:" }), " Full sprint with all team agents connected"] }), _jsxs("li", { children: [_jsx("strong", { children: "Month 2:" }), " Cross-team orchestration for complex features"] })] })] })] }), _jsxs("div", { class: section, children: [_jsx("span", { id: "slack-bridge", class: sectionAnchor }), _jsx("h2", { class: sectionTitle, children: "10 \u2014 Slack Integration (NEW)" }), _jsx("p", { class: sectionSubtitle, children: "Bridge Slack channels to COGENT sessions so humans and AI agents share one conversation" }), _jsxs("div", { class: scenarioBox, children: [_jsx("div", { class: scenarioLabel, children: "Scenario" }), _jsx("p", { class: noteText, children: "Your team communicates in Slack but your Claude Code agents collaborate via COGENT. With the Cogent Bridge Slack app, you can map a Slack channel directly to a COGENT session. Messages flow bidirectionally \u2014 Slack users and CC agents share the same conversation thread without switching tools." })] }), _jsxs("p", { class: paragraph, children: ["The Slack integration turns any Slack channel into a COGENT peer. When a Slack user types a message, the CC agent receives it as a normal COGENT message. When the CC agent responds, the reply appears in the Slack channel. ", _jsx("span", { class: highlight, children: "@mention resolution works both ways" }), " \u2014 Slack usernames map to COGENT peer IDs and vice versa."] }), _jsxs(Terminal, { title: "Step 1: Create a COGENT Session", children: [_jsx("p", { class: noteText, children: "First, create a session from any Claude Code instance (or reuse an existing one):" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Create a Cogent channel called "my-project" with secret "team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Note the ", _jsx("span", { class: inlineCode, children: "sessionId" }), " and ", _jsx("span", { class: inlineCode, children: "secret" }), " \u2014 you'll need them in the next step."] })] }), _jsxs(Terminal, { title: "Step 2: Map a Slack Channel", children: [_jsx("p", { class: noteText, children: "In any Slack channel where the Cogent Bridge app is installed, run:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "/" }), _jsx("span", { class: stepCommand, children: "cogent map <sessionId> <secret>" })] }), _jsx("p", { class: noteText, children: "This binds the Slack channel to the COGENT session. All messages in this channel will be relayed to connected CC agents, and agent responses will appear here." })] }), _jsxs(Terminal, { title: "Step 3: Configure the CC Agent", children: [_jsxs("p", { class: noteText, children: ["On the Claude Code side, ensure ", _jsx("span", { class: inlineCode, children: "COGENT_ENDPOINT" }), " is set and join the same session:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Join Cogent channel "my-project" with secret "team-secret"` }), "\n", _jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Register on Cogent as peerId="backend", label="Backend Agent"` })] }), _jsx("p", { class: noteText, children: "The CC agent is now a peer in the same session as the Slack channel. Messages sent from Slack arrive via the normal COGENT relay." })] }), _jsxs(Terminal, { title: "Slack Slash Commands", children: [_jsx("p", { class: noteText, children: "The Slack app provides several slash commands for interacting with the session:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "/" }), _jsx("span", { class: stepCommand, children: "cogent peers" }), _jsx("span", { class: commentLine, children: ` # List all peers in the session` })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "/" }), _jsx("span", { class: stepCommand, children: "cogent send @backend <message>" }), _jsx("span", { class: commentLine, children: ` # Send a targeted message to a specific peer` })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "/" }), _jsx("span", { class: stepCommand, children: "cogent status" }), _jsx("span", { class: commentLine, children: ` # Check session health and connection status` })] })] }), _jsxs("div", { class: flowDiagram, children: [_jsx("span", { class: diagramLabel, children: "Slack Channel CC Agent (backend)" }), "\n", " | |", "\n", " |", _jsx("span", { class: diagramArrow, children: " ---- /cogent map <session> ------> " }), " |", "\n", " | |", "\n", " | [user types message] |", "\n", " |", _jsx("span", { class: diagramArrow, children: " ---- relayed via COGENT ---------> " }), " |", "\n", " | |", "\n", " | [agent processes & responds]", "\n", " | |", "\n", " |", _jsx("span", { class: diagramArrow, children: " <--- response appears in Slack -- " }), " |", "\n", " | |", "\n", " | [team sees response in channel] |", "\n"] }), _jsxs("div", { class: outcomeBox, children: [_jsx("div", { class: outcomeLabel, children: "Business Impact" }), _jsx("p", { class: noteText, children: "Product managers and non-technical stakeholders interact with AI agents directly from Slack \u2014 no need to open a terminal or learn Claude Code. Developers monitor agent activity in real time alongside normal team chat. The entire team shares one communication channel." })] })] }), _jsx("hr", { class: divider }), _jsxs("div", { class: footer, children: ["COGENT \u2014 Powered by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit;", children: "Essential AI Solutions Ltd." }), " \u2014 ", _jsx("a", { href: "/", style: "color: inherit;", children: "cogent.tools" })] })] }) }));
|
|
312
312
|
//# sourceMappingURL=HowToPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HowToPage.js","sourceRoot":"","sources":["../../../src/ui/pages/HowToPage.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HowToPage.js","sourceRoot":"","sources":["../../../src/ui/pages/HowToPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LandingPage.d.ts","sourceRoot":"","sources":["../../../src/ui/pages/LandingPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAMnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE,2CAA2C;AAC3C,UAAU,gBAAgB;IACxB,KAAK,EAAE,WAAW,CAAC;CACpB;AAuKD;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"LandingPage.d.ts","sourceRoot":"","sources":["../../../src/ui/pages/LandingPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAMnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE,2CAA2C;AAC3C,UAAU,gBAAgB;IACxB,KAAK,EAAE,WAAW,CAAC;CACpB;AAuKD;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAmM5C,CAAC"}
|
|
@@ -156,5 +156,5 @@ export const LandingPage = ({ stats }) => (_jsx(Layout, { title: "COGENT", child
|
|
|
156
156
|
██║ ██║ ██║██║ ███╗█████╗ ██╔██╗ ██║ ██║
|
|
157
157
|
██║ ██║ ██║██║ ██║██╔══╝ ██║╚██╗██║ ██║
|
|
158
158
|
╚██████╗╚██████╔╝╚██████╔╝███████╗██║ ╚████║ ██║
|
|
159
|
-
╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═╝` }), _jsx("span", { class: cursor })] }), _jsx("p", { class: heroSubtitle, children: "Real-time relay for Claude Code inter-session communication" }), _jsxs("p", { class: heroSubtitle, style: "margin-top: 0.5rem; font-size: 0.8rem;", children: ["by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit; text-decoration: none;", children: "Essential AI Solutions" })] }), _jsx("p", { class: heroSubtitle, style: "margin-top: 1rem;", children: _jsx("a", { href: "/how-to", style: `color: ${colors.green}; font-weight: 700;`, children: "How-To Guide \u2192" }) })] }), _jsxs("div", { class: statsRow, children: [_jsx(StatCard, { id: "stat-sessions", value: stats.activeSessions, label: "Active Sessions" }), _jsx(StatCard, { id: "stat-agents", value: stats.connectedAgents, label: "Connected Agents" }), _jsx(StatCard, { id: "stat-messages", value: stats.totalMessagesRelayed, label: "Messages Relayed" })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Install via Plugin Marketplace (Recommended)" }), _jsxs(Terminal, { title: "Two Commands \u2014 Full Setup", children: [_jsx("p", { class: noteText, children: "Install the plugin with slash commands, auto-discovery, and cloud relay:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin marketplace add eaisdevelopment/cogent" })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin install cogent@cogent" })] }), _jsxs("p", { class: noteText, children: ["Restart Claude Code. Use ", _jsx("span", { class: stepCommand, children: "/cogent:register" }), " to join the bridge \u2014 session discovery, registration, and message protocol are handled automatically."] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Alternative: Manual MCP Setup" }), _jsxs(Terminal, { title: "MCP Tools Only (No Slash Commands)", children: [_jsx("p", { class: noteText, children: "Or use a single command to register the MCP server directly:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude mcp add cogent -e COGENT_ENDPOINT=https://cogent.tools -s user -- npx -y @essentialai/cogent-bridge" })] }), _jsxs("p", { class: noteText, children: ["This gives you the six ", _jsx("span", { class: stepCommand, children: "cogent_" }), " MCP tools. For slash commands (", _jsx("span", { class: stepCommand, children: "/cogent:register" }), ", etc.), use the Plugin Marketplace above."] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Quick Start" }), _jsxs(Terminal, { title: "Quick Start", children: [_jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "1." }), " Create a channel with a friendly name"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Create a Cogent channel called "my-project" with secret "team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Returns a channel name (e.g., ", _jsx("span", { class: stepCommand, children: "my-project" }), ") and a secret to share. Omit the name to auto-generate one (e.g., ", _jsx("span", { class: stepCommand, children: "swift-fox-a3f1" }), ")."] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "2." }), " Join from another Claude Code instance using the channel name"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Join Cogent channel "my-project" with secret "team-secret"` })] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "3." }), " Start communicating"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Register as "backend" and send a message to "frontend"` })] })] })] }), _jsxs("a", { href: "/how-to", class: howToLink, children: [_jsx("div", { class: howToTitle, children: "How Teams Deliver Faster with Cogent \u2192" }), _jsx("p", { class: howToDesc, children: "Real-world use cases, command examples, and best practices for parallel development, cross-team bug fixes, API contract negotiation, and more." })] }), _jsxs("div", { class: footer, children: ["COGENT \u2014 Powered by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit;", children: "Essential AI Solutions Ltd." }), " \u2014 ", _jsx("a", { href: "/", style: "color: inherit;", children: "cogent.tools" })] }), _jsx("script", { dangerouslySetInnerHTML: { __html: sseScript } })] }) }));
|
|
159
|
+
╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═╝` }), _jsx("span", { class: cursor })] }), _jsx("p", { class: heroSubtitle, children: "Real-time relay for Claude Code inter-session communication \u2014 now with Slack integration" }), _jsxs("p", { class: heroSubtitle, style: "margin-top: 0.5rem; font-size: 0.8rem;", children: ["by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit; text-decoration: none;", children: "Essential AI Solutions" })] }), _jsx("p", { class: heroSubtitle, style: "margin-top: 1rem;", children: _jsx("a", { href: "/how-to", style: `color: ${colors.green}; font-weight: 700;`, children: "How-To Guide \u2192" }) })] }), _jsxs("div", { class: statsRow, children: [_jsx(StatCard, { id: "stat-sessions", value: stats.activeSessions, label: "Active Sessions" }), _jsx(StatCard, { id: "stat-agents", value: stats.connectedAgents, label: "Connected Agents" }), _jsx(StatCard, { id: "stat-messages", value: stats.totalMessagesRelayed, label: "Messages Relayed" })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Install via Plugin Marketplace (Recommended)" }), _jsxs(Terminal, { title: "Two Commands \u2014 Full Setup", children: [_jsx("p", { class: noteText, children: "Install the plugin with slash commands, auto-discovery, and cloud relay:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin marketplace add eaisdevelopment/cogent" })] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin install cogent@cogent" })] }), _jsxs("p", { class: noteText, children: ["Restart Claude Code. Use ", _jsx("span", { class: stepCommand, children: "/cogent:register" }), " to join the bridge \u2014 session discovery, registration, and message protocol are handled automatically."] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Alternative: Manual MCP Setup" }), _jsxs(Terminal, { title: "MCP Tools Only (No Slash Commands)", children: [_jsx("p", { class: noteText, children: "Or use a single command to register the MCP server directly:" }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude mcp add cogent -e COGENT_ENDPOINT=https://cogent.tools -s user -- npx -y @essentialai/cogent-bridge" })] }), _jsxs("p", { class: noteText, children: ["This gives you the six ", _jsx("span", { class: stepCommand, children: "cogent_" }), " MCP tools. For slash commands (", _jsx("span", { class: stepCommand, children: "/cogent:register" }), ", etc.), use the Plugin Marketplace above."] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Updating to the Latest Version" }), _jsxs(Terminal, { title: "Stay Up to Date", children: [_jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Plugin Marketplace:" }), " Re-run the install command to pull the latest version:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "claude plugin marketplace add eaisdevelopment/cogent" })] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Manual MCP / Claude Desktop:" }), " If you used ", _jsx("span", { class: stepCommand, children: "npx -y @essentialai/cogent-bridge" }), ", you already get the latest version automatically on each restart. No action needed."] }), _jsxs("p", { class: noteText, children: [_jsx("span", { class: stepNumber, children: "Global install:" }), " If you installed globally with npm, update explicitly:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "$" }), _jsx("span", { class: stepCommand, children: "npm update -g @essentialai/cogent-bridge" })] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Quick Start" }), _jsxs(Terminal, { title: "Quick Start", children: [_jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "1." }), " Create a channel with a friendly name"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Create a Cogent channel called "my-project" with secret "team-secret"` })] }), _jsxs("p", { class: noteText, children: ["Returns a channel name (e.g., ", _jsx("span", { class: stepCommand, children: "my-project" }), ") and a secret to share. Omit the name to auto-generate one (e.g., ", _jsx("span", { class: stepCommand, children: "swift-fox-a3f1" }), ")."] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "2." }), " Join from another Claude Code instance using the channel name"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Join Cogent channel "my-project" with secret "team-secret"` })] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "3." }), " Start communicating"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: ">" }), _jsx("span", { class: stepCommand, children: ` Register as "backend" and send a message to "frontend"` })] })] })] }), _jsxs("div", { class: section, children: [_jsx("h2", { class: sectionTitle, children: "Slack Integration (NEW)" }), _jsxs(Terminal, { title: "Bridge Slack Channels to COGENT", children: [_jsx("p", { class: noteText, children: "Connect your Slack workspace to COGENT so humans and AI agents communicate in the same channel." }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "1." }), " Install the Cogent Bridge Slack app in your workspace"] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "2." }), " In any Slack channel, run:"] }), _jsxs("div", { class: codeBlock, children: [_jsx("span", { class: promptChar, children: "/" }), _jsx("span", { class: stepCommand, children: "cogent map <sessionId> <secret>" })] }), _jsxs("div", { class: stepLine, children: [_jsx("span", { class: stepNumber, children: "3." }), " Messages flow bidirectionally \u2014 Slack users and CC agents share the same conversation"] }), _jsxs("p", { class: noteText, children: ["Slash commands: ", _jsx("span", { class: stepCommand, children: "/cogent peers" }), " (list all peers), ", _jsx("span", { class: stepCommand, children: "/cogent send @backend msg" }), " (targeted message), ", _jsx("span", { class: stepCommand, children: "/cogent status" }), " (session health)"] })] })] }), _jsxs("a", { href: "/how-to", class: howToLink, children: [_jsx("div", { class: howToTitle, children: "How Teams Deliver Faster with Cogent \u2192" }), _jsx("p", { class: howToDesc, children: "Real-world use cases, command examples, and best practices for parallel development, cross-team bug fixes, API contract negotiation, and more." })] }), _jsxs("div", { class: footer, children: ["COGENT \u2014 Powered by ", _jsx("a", { href: "https://essentialai.uk", style: "color: inherit;", children: "Essential AI Solutions Ltd." }), " \u2014 ", _jsx("a", { href: "/", style: "color: inherit;", children: "cogent.tools" })] }), _jsx("script", { dangerouslySetInnerHTML: { __html: sseScript } })] }) }));
|
|
160
160
|
//# sourceMappingURL=LandingPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LandingPage.js","sourceRoot":"","sources":["../../../src/ui/pages/LandingPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAQzD,iBAAiB;AAEjB,MAAM,SAAS,GAA2B,GAAG,CAAA;;;;CAI5C,CAAC;AAEF,MAAM,WAAW,GAA2B,GAAG,CAAA;;;CAG9C,CAAC;AAEF,MAAM,SAAS,GAA2B,GAAG,CAAA;;;WAGlC,MAAM,CAAC,KAAK;;CAEtB,CAAC;AAEF,MAAM,SAAS,GAA2B,GAAG,CAAA;;;;WAIlC,MAAM,CAAC,KAAK;;;;CAItB,CAAC;AAEF,MAAM,YAAY,GAA2B,GAAG,CAAA;;WAErC,MAAM,CAAC,SAAS;;CAE1B,CAAC;AAEF,MAAM,MAAM,GAA2B,GAAG,CAAA;;;;gBAI1B,MAAM,CAAC,KAAK;;;eAGb,WAAW;CACzB,CAAC;AAEF,MAAM,QAAQ,GAA2B,GAAG,CAAA;;;;;;CAM3C,CAAC;AAEF,MAAM,OAAO,GAA2B,GAAG,CAAA;;CAE1C,CAAC;AAEF,MAAM,YAAY,GAA2B,GAAG,CAAA;;WAErC,MAAM,CAAC,IAAI;;;CAGrB,CAAC;AAEF,MAAM,SAAS,GAA2B,GAAG,CAAA;gBAC7B,MAAM,CAAC,EAAE;sBACH,MAAM,CAAC,MAAM;;;WAGxB,MAAM,CAAC,KAAK;;;;;CAKtB,CAAC;AAEF,MAAM,QAAQ,GAA2B,GAAG,CAAA;WACjC,MAAM,CAAC,SAAS;;;CAG1B,CAAC;AAEF,MAAM,UAAU,GAA2B,GAAG,CAAA;WACnC,MAAM,CAAC,KAAK;;CAEtB,CAAC;AAEF,MAAM,WAAW,GAA2B,GAAG,CAAA;WACpC,MAAM,CAAC,KAAK;CACtB,CAAC;AAEF,MAAM,QAAQ,GAA2B,GAAG,CAAA;;;CAG3C,CAAC;AAEF,MAAM,UAAU,GAA2B,GAAG,CAAA;WACnC,MAAM,CAAC,SAAS;;CAE1B,CAAC;AAEF,MAAM,SAAS,GAA2B,GAAG,CAAA;;gBAE7B,MAAM,CAAC,MAAM;sBACP,MAAM,CAAC,MAAM;;;;;;;;oBAQf,MAAM,CAAC,KAAK;;;CAG/B,CAAC;AAEF,MAAM,UAAU,GAA2B,GAAG,CAAA;;WAEnC,MAAM,CAAC,KAAK;;;CAGtB,CAAC;AAEF,MAAM,SAAS,GAA2B,GAAG,CAAA;;WAElC,MAAM,CAAC,SAAS;;CAE1B,CAAC;AAEF,MAAM,MAAM,GAA2B,GAAG,CAAA;;;WAG/B,MAAM,CAAC,SAAS;;0BAED,MAAM,CAAC,MAAM;;CAEtC,CAAC;AAEF,+CAA+C;AAC/C,MAAM,gBAAgB,GAAG;;;;;;;;;;EAUvB,CAAC;AAEH,4BAA4B;AAC5B,MAAM,SAAS,GAAG;;;;;;;;;CASjB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAyB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAC9D,KAAC,MAAM,IAAC,KAAK,EAAC,QAAQ,YACpB,eAAK,KAAK,EAAE,SAAS,aAEnB,eAAK,KAAK,EAAE,WAAW,aACrB,cAAI,KAAK,EAAE,SAAS,aAClB,cAAK,KAAK,EAAE,SAAS,YAAG;;;;;oDAKkB,GAAO,EACjD,eAAM,KAAK,EAAE,MAAM,GAAI,IACpB,EACL,YAAG,KAAK,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"LandingPage.js","sourceRoot":"","sources":["../../../src/ui/pages/LandingPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { WSEvents } from "hono/ws";
|
|
2
|
+
import type { AdapterRegistry } from "../services/adapter-registry.js";
|
|
3
|
+
import type { MessageQueueService } from "../services/message-queue.js";
|
|
4
|
+
import type { SessionStore } from "../services/session-store.js";
|
|
5
|
+
import type { ConnectionManager } from "../services/connection-manager.js";
|
|
6
|
+
/**
|
|
7
|
+
* Dependencies for the adapter WebSocket handler.
|
|
8
|
+
*/
|
|
9
|
+
export interface AdapterWsHandlerDeps {
|
|
10
|
+
adapterRegistry: AdapterRegistry;
|
|
11
|
+
messageQueue: MessageQueueService;
|
|
12
|
+
sessionStore: SessionStore;
|
|
13
|
+
connectionManager: ConnectionManager;
|
|
14
|
+
heartbeatIntervalMs: number;
|
|
15
|
+
heartbeatMaxMissed: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Create a WSEvents handler for a single adapter WebSocket connection.
|
|
19
|
+
*
|
|
20
|
+
* Manages the adapter connection lifecycle:
|
|
21
|
+
* - onOpen: heartbeat setup, register in AdapterRegistry, flush offline queue
|
|
22
|
+
* - onMessage: handle adapter_received and platform_delivered frames from adapter
|
|
23
|
+
* - onClose: remove from AdapterRegistry
|
|
24
|
+
* - onError: log and continue
|
|
25
|
+
*
|
|
26
|
+
* Adapter queue key: `_adapter:<platform>` (underscore prefix prevents
|
|
27
|
+
* collision with valid peer IDs which are UUID format).
|
|
28
|
+
*/
|
|
29
|
+
export declare function createAdapterWsHandler(sessionId: string, platform: string, deps: AdapterWsHandlerDeps): WSEvents;
|
|
30
|
+
//# sourceMappingURL=adapter-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-handler.d.ts","sourceRoot":"","sources":["../../src/ws/adapter-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,iCAAiC,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAQ3E;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,mBAAmB,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,oBAAoB,GACzB,QAAQ,CAmFV"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { setupHeartbeat } from "./heartbeat.js";
|
|
2
|
+
import { createQueuedMessagesFrame, createAdapterReceivedAckFrame, createPlatformDeliveredAckFrame, } from "./frames.js";
|
|
3
|
+
/**
|
|
4
|
+
* Create a WSEvents handler for a single adapter WebSocket connection.
|
|
5
|
+
*
|
|
6
|
+
* Manages the adapter connection lifecycle:
|
|
7
|
+
* - onOpen: heartbeat setup, register in AdapterRegistry, flush offline queue
|
|
8
|
+
* - onMessage: handle adapter_received and platform_delivered frames from adapter
|
|
9
|
+
* - onClose: remove from AdapterRegistry
|
|
10
|
+
* - onError: log and continue
|
|
11
|
+
*
|
|
12
|
+
* Adapter queue key: `_adapter:<platform>` (underscore prefix prevents
|
|
13
|
+
* collision with valid peer IDs which are UUID format).
|
|
14
|
+
*/
|
|
15
|
+
export function createAdapterWsHandler(sessionId, platform, deps) {
|
|
16
|
+
const adapterQueueKey = `_adapter:${platform}`;
|
|
17
|
+
return {
|
|
18
|
+
async onOpen(_evt, ws) {
|
|
19
|
+
const rawWs = ws.raw;
|
|
20
|
+
// 1. Set up heartbeat ping/pong (reuse existing heartbeat infrastructure)
|
|
21
|
+
const heartbeatInterval = setupHeartbeat(rawWs, deps.heartbeatIntervalMs, deps.heartbeatMaxMissed);
|
|
22
|
+
// 2. Register connection in the adapter registry
|
|
23
|
+
const conn = {
|
|
24
|
+
ws,
|
|
25
|
+
rawWs,
|
|
26
|
+
sessionId,
|
|
27
|
+
platform,
|
|
28
|
+
connectedAt: Date.now(),
|
|
29
|
+
heartbeatInterval,
|
|
30
|
+
};
|
|
31
|
+
deps.adapterRegistry.addConnection(conn);
|
|
32
|
+
// 3. Flush offline message queue for this adapter
|
|
33
|
+
const messages = await deps.messageQueue.dequeueAll(sessionId, adapterQueueKey);
|
|
34
|
+
if (messages.length > 0) {
|
|
35
|
+
const queueFrame = createQueuedMessagesFrame(messages);
|
|
36
|
+
ws.send(JSON.stringify(queueFrame));
|
|
37
|
+
}
|
|
38
|
+
console.error(`[AdapterWsHandler] Adapter connected: platform=${platform}, session=${sessionId}`);
|
|
39
|
+
},
|
|
40
|
+
onMessage(evt, _ws) {
|
|
41
|
+
// Parse incoming adapter frame
|
|
42
|
+
let parsed;
|
|
43
|
+
try {
|
|
44
|
+
const raw = typeof evt.data === "string" ? evt.data : evt.data.toString();
|
|
45
|
+
parsed = JSON.parse(raw);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
console.warn(`[AdapterWsHandler] Failed to parse frame from ${platform} adapter in session ${sessionId}`);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (parsed.type === "adapter_received" && parsed.payload) {
|
|
52
|
+
// Stage 2 ack: adapter has received the message
|
|
53
|
+
// Route the ack back to the original sender via ConnectionManager
|
|
54
|
+
const { messageId, fromPeerId } = parsed.payload;
|
|
55
|
+
if (messageId && fromPeerId && typeof messageId === "string" && typeof fromPeerId === "string") {
|
|
56
|
+
const ackFrame = createAdapterReceivedAckFrame(messageId, platform);
|
|
57
|
+
deps.connectionManager.sendToPeer(sessionId, fromPeerId, JSON.stringify(ackFrame));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else if (parsed.type === "platform_delivered" && parsed.payload) {
|
|
61
|
+
// Stage 3 ack: adapter has delivered to external platform
|
|
62
|
+
const { messageId, fromPeerId, platformMessageId } = parsed.payload;
|
|
63
|
+
if (messageId && fromPeerId && typeof messageId === "string" && typeof fromPeerId === "string") {
|
|
64
|
+
const ackFrame = createPlatformDeliveredAckFrame(messageId, platform, typeof platformMessageId === "string" ? platformMessageId : undefined);
|
|
65
|
+
deps.connectionManager.sendToPeer(sessionId, fromPeerId, JSON.stringify(ackFrame));
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
else if (parsed.type) {
|
|
69
|
+
console.debug(`[AdapterWsHandler] Unrecognized frame type "${parsed.type}" from ${platform} adapter`);
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
onClose(_evt, ws) {
|
|
73
|
+
deps.adapterRegistry.removeConnection(sessionId, platform, ws);
|
|
74
|
+
console.error(`[AdapterWsHandler] Adapter disconnected: platform=${platform}, session=${sessionId}`);
|
|
75
|
+
},
|
|
76
|
+
onError(evt, _ws) {
|
|
77
|
+
console.error(`[AdapterWsHandler] WebSocket error for ${platform} adapter in session ${sessionId}:`, evt);
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=adapter-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-handler.js","sourceRoot":"","sources":["../../src/ws/adapter-handler.ts"],"names":[],"mappings":"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"}
|
package/dist/ws/frames.d.ts
CHANGED
|
@@ -66,6 +66,32 @@ export interface DeliveryAckServerFrame {
|
|
|
66
66
|
};
|
|
67
67
|
timestamp: string;
|
|
68
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Stage 2 ack: adapter WebSocket has received the message.
|
|
71
|
+
* Sent from server to the original sender's WS after the adapter connection confirms receipt.
|
|
72
|
+
*/
|
|
73
|
+
export interface AdapterReceivedAckFrame {
|
|
74
|
+
type: "adapter_received";
|
|
75
|
+
payload: {
|
|
76
|
+
messageId: string;
|
|
77
|
+
platform: string;
|
|
78
|
+
};
|
|
79
|
+
timestamp: string;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Stage 3 ack: adapter has successfully delivered the message to the external platform
|
|
83
|
+
* (e.g., Slack chat.postMessage succeeded).
|
|
84
|
+
* Sent from server to the original sender's WS after the adapter reports successful platform delivery.
|
|
85
|
+
*/
|
|
86
|
+
export interface PlatformDeliveredAckFrame {
|
|
87
|
+
type: "platform_delivered";
|
|
88
|
+
payload: {
|
|
89
|
+
messageId: string;
|
|
90
|
+
platform: string;
|
|
91
|
+
platformMessageId?: string;
|
|
92
|
+
};
|
|
93
|
+
timestamp: string;
|
|
94
|
+
}
|
|
69
95
|
export interface DeliveryAckClientFrame {
|
|
70
96
|
type: "delivery_ack";
|
|
71
97
|
payload: {
|
|
@@ -78,7 +104,7 @@ export interface DeliveryAckClientFrame {
|
|
|
78
104
|
* Discriminated union of all server-to-client WebSocket frame types.
|
|
79
105
|
* The `type` field acts as the discriminator for client-side dispatch.
|
|
80
106
|
*/
|
|
81
|
-
export type WsServerFrame = MessageFrame | PeerConnectedFrame | PeerDisconnectedFrame | PeersSnapshotFrame | QueuedMessagesFrame | ErrorFrame | DeliveryAckServerFrame;
|
|
107
|
+
export type WsServerFrame = MessageFrame | PeerConnectedFrame | PeerDisconnectedFrame | PeersSnapshotFrame | QueuedMessagesFrame | ErrorFrame | DeliveryAckServerFrame | AdapterReceivedAckFrame | PlatformDeliveredAckFrame;
|
|
82
108
|
/** Create a frame delivering a single message to a peer. */
|
|
83
109
|
export declare function createMessageFrame(message: MessageRecord): MessageFrame;
|
|
84
110
|
/** Create a frame notifying peers that a new peer has connected via WebSocket. */
|
|
@@ -97,4 +123,8 @@ export declare function createQueuedMessagesFrame(messages: MessageRecord[]): Qu
|
|
|
97
123
|
export declare function createErrorFrame(code: string, message: string): ErrorFrame;
|
|
98
124
|
/** Create a delivery acknowledgment frame routed from recipient to sender. */
|
|
99
125
|
export declare function createDeliveryAckFrame(messageId: string, peerId: string): DeliveryAckServerFrame;
|
|
126
|
+
/** Create an adapter-received ack frame (Stage 2 of 3-stage delivery). */
|
|
127
|
+
export declare function createAdapterReceivedAckFrame(messageId: string, platform: string): AdapterReceivedAckFrame;
|
|
128
|
+
/** Create a platform-delivered ack frame (Stage 3 of 3-stage delivery). */
|
|
129
|
+
export declare function createPlatformDeliveredAckFrame(messageId: string, platform: string, platformMessageId?: string): PlatformDeliveredAckFrame;
|
|
100
130
|
//# sourceMappingURL=frames.d.ts.map
|
package/dist/ws/frames.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../src/ws/frames.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,WAAW;IACtB,oCAAoC;;IAEpC,iDAAiD;;IAEjD,sCAAsC;;IAEtC,+BAA+B;;IAE/B,wCAAwC;;CAEhC,CAAC;AAMX,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE;QAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CACtE;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,kBAAkB,GAClB,mBAAmB,GACnB,UAAU,GACV,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../src/ws/frames.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,WAAW;IACtB,oCAAoC;;IAEpC,iDAAiD;;IAEjD,sCAAsC;;IAEtC,+BAA+B;;IAE/B,wCAAwC;;CAEhC,CAAC;AAMX,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE;QAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7E,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CACtE;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,kBAAkB,GAClB,mBAAmB,GACnB,UAAU,GACV,sBAAsB,GACtB,uBAAuB,GACvB,yBAAyB,CAAC;AAM9B,4DAA4D;AAC5D,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,YAAY,CAMvE;AAED,kFAAkF;AAClF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,kBAAkB,CAMrB;AAED,mEAAmE;AACnE,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,GACb,qBAAqB,CAMvB;AAED,oFAAoF;AACpF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,QAAQ,EAAE,GAChB,kBAAkB,CAMpB;AAED,oFAAoF;AACpF,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,aAAa,EAAE,GACxB,mBAAmB,CAMrB;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,UAAU,CAMZ;AAED,8EAA8E;AAC9E,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,sBAAsB,CAMxB;AAED,0EAA0E;AAC1E,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,uBAAuB,CAMzB;AAED,2EAA2E;AAC3E,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,GACzB,yBAAyB,CAM3B"}
|
package/dist/ws/frames.js
CHANGED
|
@@ -73,4 +73,20 @@ export function createDeliveryAckFrame(messageId, peerId) {
|
|
|
73
73
|
timestamp: new Date().toISOString(),
|
|
74
74
|
};
|
|
75
75
|
}
|
|
76
|
+
/** Create an adapter-received ack frame (Stage 2 of 3-stage delivery). */
|
|
77
|
+
export function createAdapterReceivedAckFrame(messageId, platform) {
|
|
78
|
+
return {
|
|
79
|
+
type: "adapter_received",
|
|
80
|
+
payload: { messageId, platform },
|
|
81
|
+
timestamp: new Date().toISOString(),
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/** Create a platform-delivered ack frame (Stage 3 of 3-stage delivery). */
|
|
85
|
+
export function createPlatformDeliveredAckFrame(messageId, platform, platformMessageId) {
|
|
86
|
+
return {
|
|
87
|
+
type: "platform_delivered",
|
|
88
|
+
payload: { messageId, platform, platformMessageId },
|
|
89
|
+
timestamp: new Date().toISOString(),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
76
92
|
//# sourceMappingURL=frames.js.map
|
package/dist/ws/frames.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frames.js","sourceRoot":"","sources":["../../src/ws/frames.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,oCAAoC;IACpC,cAAc,EAAE,IAAI;IACpB,iDAAiD;IACjD,iBAAiB,EAAE,IAAI;IACvB,sCAAsC;IACtC,gBAAgB,EAAE,IAAI;IACtB,+BAA+B;IAC/B,cAAc,EAAE,IAAI;IACpB,wCAAwC;IACxC,eAAe,EAAE,IAAI;CACb,CAAC;
|
|
1
|
+
{"version":3,"file":"frames.js","sourceRoot":"","sources":["../../src/ws/frames.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,oCAAoC;IACpC,cAAc,EAAE,IAAI;IACpB,iDAAiD;IACjD,iBAAiB,EAAE,IAAI;IACvB,sCAAsC;IACtC,gBAAgB,EAAE,IAAI;IACtB,+BAA+B;IAC/B,cAAc,EAAE,IAAI;IACpB,wCAAwC;IACxC,eAAe,EAAE,IAAI;CACb,CAAC;AA6FX,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,4DAA4D;AAC5D,MAAM,UAAU,kBAAkB,CAAC,OAAsB;IACvD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,wBAAwB,CAAC,IAIxC;IACC,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,2BAA2B,CACzC,MAAc;IAEd,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,EAAE,MAAM,EAAE;QACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,wBAAwB,CACtC,KAAiB;IAEjB,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,EAAE,KAAK,EAAE;QAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,yBAAyB,CACvC,QAAyB;IAEzB,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,EAAE,QAAQ,EAAE;QACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,gBAAgB,CAC9B,IAAY,EACZ,OAAe;IAEf,OAAO;QACL,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,MAAc;IAEd,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,6BAA6B,CAC3C,SAAiB,EACjB,QAAgB;IAEhB,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE;QAChC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,+BAA+B,CAC7C,SAAiB,EACjB,QAAgB,EAChB,iBAA0B;IAE1B,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE;QACnD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC"}
|