@mclawnet/shared 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/encode-cwd.d.ts +15 -0
  2. package/dist/encode-cwd.d.ts.map +1 -0
  3. package/dist/encode-cwd.js +27 -0
  4. package/dist/encode-cwd.js.map +1 -0
  5. package/dist/index.d.ts +2 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/protocol/__tests__/events.test.d.ts +2 -0
  10. package/dist/protocol/__tests__/events.test.d.ts.map +1 -0
  11. package/dist/protocol/__tests__/events.test.js +86 -0
  12. package/dist/protocol/__tests__/events.test.js.map +1 -0
  13. package/dist/protocol/__tests__/protocol-version.test.d.ts +2 -0
  14. package/dist/protocol/__tests__/protocol-version.test.d.ts.map +1 -0
  15. package/dist/protocol/__tests__/protocol-version.test.js +38 -0
  16. package/dist/protocol/__tests__/protocol-version.test.js.map +1 -0
  17. package/dist/protocol/agent.d.ts +64 -11
  18. package/dist/protocol/agent.d.ts.map +1 -1
  19. package/dist/protocol/agent.js.map +1 -1
  20. package/dist/protocol/chat.d.ts +51 -6
  21. package/dist/protocol/chat.d.ts.map +1 -1
  22. package/dist/protocol/events.d.ts +102 -0
  23. package/dist/protocol/events.d.ts.map +1 -0
  24. package/dist/protocol/events.js +35 -0
  25. package/dist/protocol/events.js.map +1 -0
  26. package/dist/protocol/index.d.ts +3 -1
  27. package/dist/protocol/index.d.ts.map +1 -1
  28. package/dist/protocol/index.js +2 -0
  29. package/dist/protocol/index.js.map +1 -1
  30. package/dist/protocol/protocol-version.d.ts +4 -0
  31. package/dist/protocol/protocol-version.d.ts.map +1 -0
  32. package/dist/protocol/protocol-version.js +20 -0
  33. package/dist/protocol/protocol-version.js.map +1 -0
  34. package/dist/sandbox.d.ts +27 -0
  35. package/dist/sandbox.d.ts.map +1 -0
  36. package/dist/sandbox.js +7 -0
  37. package/dist/sandbox.js.map +1 -0
  38. package/dist/types/session.d.ts +1 -1
  39. package/dist/types/session.d.ts.map +1 -1
  40. package/package.json +5 -3
  41. package/dist/brain-types.d.ts +0 -101
  42. package/dist/brain-types.d.ts.map +0 -1
  43. package/dist/brain-types.js +0 -4
  44. package/dist/brain-types.js.map +0 -1
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Pure string transform that encodes an absolute path into a single-segment
3
+ * identifier ClawNet uses for per-project directories (e.g.
4
+ * `~/.clawnet/projects/<encodedCwd>/...`).
5
+ *
6
+ * POSIX: /Users/lcf/code/foo → -Users-lcf-code-foo
7
+ * Win32: C:\Users\lcf\code\foo → C--Users-lcf-code-foo (colon and \ both → -)
8
+ * \\server\share\path → --server-share-path
9
+ *
10
+ * Lives in @mclawnet/shared (browser-safe, no node:os/fs deps) so both the
11
+ * node-side @mclawnet/task and the browser-side UI can use the same encoding
12
+ * without drift. @mclawnet/task re-exports it; UI imports it directly.
13
+ */
14
+ export declare function encodeCwd(absPath: string): string;
15
+ //# sourceMappingURL=encode-cwd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encode-cwd.d.ts","sourceRoot":"","sources":["../src/encode-cwd.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAajD"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Pure string transform that encodes an absolute path into a single-segment
3
+ * identifier ClawNet uses for per-project directories (e.g.
4
+ * `~/.clawnet/projects/<encodedCwd>/...`).
5
+ *
6
+ * POSIX: /Users/lcf/code/foo → -Users-lcf-code-foo
7
+ * Win32: C:\Users\lcf\code\foo → C--Users-lcf-code-foo (colon and \ both → -)
8
+ * \\server\share\path → --server-share-path
9
+ *
10
+ * Lives in @mclawnet/shared (browser-safe, no node:os/fs deps) so both the
11
+ * node-side @mclawnet/task and the browser-side UI can use the same encoding
12
+ * without drift. @mclawnet/task re-exports it; UI imports it directly.
13
+ */
14
+ export function encodeCwd(absPath) {
15
+ const isPosix = absPath.startsWith("/");
16
+ const isWin = /^[a-zA-Z]:[\\/]/.test(absPath) || absPath.startsWith("\\\\");
17
+ if (!isPosix && !isWin) {
18
+ throw new Error(`encodeCwd requires an absolute path, got: ${absPath}`);
19
+ }
20
+ // Trim a single trailing slash/backslash (but never reduce a root to empty).
21
+ const trimmed = absPath.length > 1 && (absPath.endsWith("/") || absPath.endsWith("\\"))
22
+ ? absPath.slice(0, -1)
23
+ : absPath;
24
+ // Replace path separators and the Windows drive colon with a dash.
25
+ return trimmed.replace(/[\\/:]/g, "-");
26
+ }
27
+ //# sourceMappingURL=encode-cwd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encode-cwd.js","sourceRoot":"","sources":["../src/encode-cwd.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5E,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,6CAA6C,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,6EAA6E;IAC7E,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtB,CAAC,CAAC,OAAO,CAAC;IACd,mEAAmE;IACnE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,4 +3,6 @@ export * from "./schemas.js";
3
3
  export * from "./types/index.js";
4
4
  export * from "./protocol/index.js";
5
5
  export * from "./token-ladder.js";
6
+ export * from "./encode-cwd.js";
7
+ export * from "./sandbox.js";
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -4,4 +4,6 @@ export * from "./schemas.js";
4
4
  export * from "./types/index.js";
5
5
  export * from "./protocol/index.js";
6
6
  export * from "./token-ladder.js";
7
+ export * from "./encode-cwd.js";
8
+ export * from "./sandbox.js";
7
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=events.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.test.d.ts","sourceRoot":"","sources":["../../../src/protocol/__tests__/events.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,86 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { isWireEvent, isWireEventType, WIRE_EVENT_TYPES, } from "../events.js";
3
+ describe("WireEvent protocol", () => {
4
+ describe("WIRE_EVENT_TYPES", () => {
5
+ it("contains all 13 event types (8 dialog + 5 swarm)", () => {
6
+ expect(WIRE_EVENT_TYPES).toHaveLength(13);
7
+ });
8
+ it("includes all dialog types from Happy v2", () => {
9
+ expect(WIRE_EVENT_TYPES).toEqual(expect.arrayContaining([
10
+ "turn-start",
11
+ "turn-end",
12
+ "text",
13
+ "tool-call-start",
14
+ "tool-call-end",
15
+ "permission-request",
16
+ "permission-response",
17
+ "service",
18
+ ]));
19
+ });
20
+ it("includes swarm extensions", () => {
21
+ expect(WIRE_EVENT_TYPES).toEqual(expect.arrayContaining([
22
+ "role-spawned",
23
+ "role-status-changed",
24
+ "role-stopped",
25
+ "plan-updated",
26
+ "queen-patrol",
27
+ ]));
28
+ });
29
+ });
30
+ describe("isWireEventType", () => {
31
+ it("accepts known types", () => {
32
+ expect(isWireEventType("text")).toBe(true);
33
+ expect(isWireEventType("permission-request")).toBe(true);
34
+ expect(isWireEventType("plan-updated")).toBe(true);
35
+ });
36
+ it("rejects unknown / non-string", () => {
37
+ expect(isWireEventType("unknown")).toBe(false);
38
+ expect(isWireEventType("")).toBe(false);
39
+ expect(isWireEventType(null)).toBe(false);
40
+ expect(isWireEventType(123)).toBe(false);
41
+ });
42
+ });
43
+ describe("isWireEvent", () => {
44
+ const baseEvent = {
45
+ id: "evt_1",
46
+ sessionId: "sess_1",
47
+ seq: 1,
48
+ role: "agent",
49
+ type: "text",
50
+ ts: Date.now(),
51
+ payload: { text: "hi" },
52
+ };
53
+ it("accepts a minimal valid event", () => {
54
+ expect(isWireEvent(baseEvent)).toBe(true);
55
+ });
56
+ it("rejects when seq < 1", () => {
57
+ expect(isWireEvent({ ...baseEvent, seq: 0 })).toBe(false);
58
+ expect(isWireEvent({ ...baseEvent, seq: -1 })).toBe(false);
59
+ });
60
+ it("rejects when seq is not finite", () => {
61
+ expect(isWireEvent({ ...baseEvent, seq: Number.NaN })).toBe(false);
62
+ expect(isWireEvent({ ...baseEvent, seq: Number.POSITIVE_INFINITY })).toBe(false);
63
+ });
64
+ it("rejects unknown type", () => {
65
+ expect(isWireEvent({ ...baseEvent, type: "bogus" })).toBe(false);
66
+ });
67
+ it("rejects unknown role", () => {
68
+ expect(isWireEvent({ ...baseEvent, role: "robot" })).toBe(false);
69
+ });
70
+ it("rejects missing fields", () => {
71
+ expect(isWireEvent({})).toBe(false);
72
+ expect(isWireEvent(null)).toBe(false);
73
+ expect(isWireEvent("string")).toBe(false);
74
+ });
75
+ it("preserves typed payloads via TypedWireEvent", () => {
76
+ const ev = {
77
+ ...baseEvent,
78
+ type: "text",
79
+ payload: { text: "hello", finished: true },
80
+ };
81
+ expect(isWireEvent(ev)).toBe(true);
82
+ expect(ev.payload.text).toBe("hello");
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=events.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.test.js","sourceRoot":"","sources":["../../../src/protocol/__tests__/events.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=protocol-version.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-version.test.d.ts","sourceRoot":"","sources":["../../../src/protocol/__tests__/protocol-version.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { SESSION_PROTOCOL_VERSION, extractProtocolVersion, isProtocolVersionMismatch, } from "../protocol-version.js";
3
+ describe("SESSION_PROTOCOL_VERSION", () => {
4
+ it("is a positive integer", () => {
5
+ expect(Number.isInteger(SESSION_PROTOCOL_VERSION)).toBe(true);
6
+ expect(SESSION_PROTOCOL_VERSION).toBeGreaterThan(0);
7
+ });
8
+ });
9
+ describe("extractProtocolVersion", () => {
10
+ it("parses ?v=N from a relative URL", () => {
11
+ expect(extractProtocolVersion("/ws/chat?token=t&v=3")).toBe(3);
12
+ });
13
+ it("parses ?v=N from an absolute URL", () => {
14
+ expect(extractProtocolVersion("https://h.example/ws/chat?v=2&token=t")).toBe(2);
15
+ });
16
+ it("returns null when v is missing", () => {
17
+ expect(extractProtocolVersion("/ws/chat?token=t")).toBeNull();
18
+ });
19
+ it("returns null for non-numeric v", () => {
20
+ expect(extractProtocolVersion("/ws/chat?v=abc")).toBeNull();
21
+ });
22
+ it("returns null for malformed URL", () => {
23
+ expect(extractProtocolVersion("not a url ?? ")).toBeNull();
24
+ });
25
+ });
26
+ describe("isProtocolVersionMismatch", () => {
27
+ it("returns true when client version is missing", () => {
28
+ expect(isProtocolVersionMismatch(null)).toBe(true);
29
+ });
30
+ it("returns true when client version differs from server", () => {
31
+ expect(isProtocolVersionMismatch(SESSION_PROTOCOL_VERSION + 1)).toBe(true);
32
+ expect(isProtocolVersionMismatch(SESSION_PROTOCOL_VERSION - 1)).toBe(true);
33
+ });
34
+ it("returns false when client matches server", () => {
35
+ expect(isProtocolVersionMismatch(SESSION_PROTOCOL_VERSION)).toBe(false);
36
+ });
37
+ });
38
+ //# sourceMappingURL=protocol-version.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-version.test.js","sourceRoot":"","sources":["../../../src/protocol/__tests__/protocol-version.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAEhC,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC/B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,CAAC,wBAAwB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,sBAAsB,CAAC,uCAAuC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,CAAC,yBAAyB,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3E,MAAM,CAAC,yBAAyB,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,yBAAyB,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { SessionProcessState } from "../types/session.js";
2
+ import type { SandboxLevel } from "../sandbox.js";
2
3
  export interface AgentAuthRequired {
3
4
  type: "auth_required";
4
5
  }
@@ -34,7 +35,7 @@ export interface AgentClaudeExecute {
34
35
  sessionId: string;
35
36
  content: string;
36
37
  workDir?: string;
37
- claudeSessionId?: string;
38
+ backendSessionId?: string;
38
39
  useBrainCore?: boolean;
39
40
  }
40
41
  export interface AgentFsListDir {
@@ -55,7 +56,7 @@ export interface AgentLoadSessionHistory {
55
56
  type: "load_session_history";
56
57
  requestId: string;
57
58
  workDir: string;
58
- claudeSessionId: string;
59
+ backendSessionId: string;
59
60
  /** Pagination: return messages with seq < before. Omit/0 = newest tail. */
60
61
  before?: number;
61
62
  /** Max messages returned. Default 50, max 200. */
@@ -83,6 +84,7 @@ export interface AgentSwarmExecute {
83
84
  targetInstance?: string;
84
85
  crewConfig?: {
85
86
  templateName?: string;
87
+ displayName?: string;
86
88
  roles?: Array<{
87
89
  roleName: string;
88
90
  count?: number;
@@ -144,7 +146,7 @@ export interface SwarmResumeControl {
144
146
  agentId?: string;
145
147
  swarmId: string;
146
148
  }
147
- export type AgentServerMessage = AgentAuthRequired | AgentRegistered | AgentAck | AgentSessionCreate | AgentSessionClose | AgentClaudeInput | AgentClaudeExecute | AgentFsListDir | AgentListFolders | AgentListHistorySessions | AgentLoadSessionHistory | AgentProxyOpen | AgentProxyData | AgentProxyClose | AgentSwarmExecute | AgentListRoles | AgentListTemplates | AgentAbortExecution | AgentSessionForceRestart | AgentGenericRequest | SwarmSpawnControl | SwarmResumeControl | ProjectsListRequest | ProjectsGetRequest | ProjectsTasksRequest | ProjectsTaskRequest | ProjectsSwarmsRequest | ProjectsSwarmRequest | ProjectsInboxesRequest | ProjectsInboxRequest | ProjectsSwarmSessionIdRequest | ProjectsFilesListRequest | ProjectsFileReadRequest | ProjectsFileWriteRequest;
149
+ export type AgentServerMessage = AgentAuthRequired | AgentRegistered | AgentAck | AgentSessionCreate | AgentSessionClose | AgentClaudeInput | AgentClaudeExecute | HubPermissionDecision | AgentFsListDir | AgentListFolders | AgentListHistorySessions | AgentLoadSessionHistory | AgentProxyOpen | AgentProxyData | AgentProxyClose | AgentSwarmExecute | AgentListRoles | AgentListTemplates | AgentAbortExecution | AgentSessionForceRestart | AgentGenericRequest | SwarmSpawnControl | SwarmResumeControl | ProjectsListRequest | ProjectsGetRequest | ProjectsTasksRequest | ProjectsTaskRequest | ProjectsSwarmsRequest | ProjectsSwarmRequest | ProjectsInboxesRequest | ProjectsInboxRequest | ProjectsSwarmSessionIdRequest | ProjectsFilesListRequest | ProjectsFileReadRequest | ProjectsFileWriteRequest | ProjectsSwarmAddRoleRequest;
148
150
  export interface AgentAuth {
149
151
  type: "auth";
150
152
  token: string;
@@ -159,7 +161,7 @@ export interface AgentHeartbeat {
159
161
  export interface AgentSessionCreated {
160
162
  type: "session.created";
161
163
  sessionId: string;
162
- claudeSessionId: string;
164
+ backendSessionId: string;
163
165
  }
164
166
  export interface AgentSessionError {
165
167
  type: "session.error";
@@ -174,7 +176,7 @@ export interface AgentClaudeOutput {
174
176
  export interface AgentClaudeTurnComplete {
175
177
  type: "claude.turn_complete";
176
178
  sessionId: string;
177
- claudeSessionId?: string;
179
+ backendSessionId?: string;
178
180
  cost?: number;
179
181
  duration?: number;
180
182
  contextUsage?: {
@@ -184,14 +186,33 @@ export interface AgentClaudeTurnComplete {
184
186
  }
185
187
  /**
186
188
  * Agent → Hub: Claude CLI emitted its `system/init` frame, meaning the
187
- * backend session is now bound to a real claudeSessionId. Hub uses this to
189
+ * backend session is now bound to a real backendSessionId. Hub uses this to
188
190
  * persist the ID immediately (instead of waiting for turn_complete which
189
191
  * never fires if the turn crashes mid-flight).
190
192
  */
191
193
  export interface AgentClaudeSessionStarted {
192
194
  type: "claude.session_started";
193
195
  sessionId: string;
194
- claudeSessionId: string;
196
+ backendSessionId: string;
197
+ }
198
+ export interface AgentPermissionRequest {
199
+ type: "agent.permission_request";
200
+ sessionId: string;
201
+ requestId: string;
202
+ toolName: string;
203
+ args: Record<string, unknown>;
204
+ reason?: string;
205
+ backendType?: "claude" | "codex";
206
+ meta?: Record<string, unknown>;
207
+ turnId?: string;
208
+ agentId?: string;
209
+ }
210
+ export interface HubPermissionDecision {
211
+ type: "client.permission_decision";
212
+ sessionId: string;
213
+ requestId: string;
214
+ decision: "allow" | "allow_session" | "deny" | "abort";
215
+ reason?: string;
195
216
  }
196
217
  export interface AgentFsListDirResult {
197
218
  type: "fs.list_dir_result";
@@ -270,6 +291,19 @@ export interface AgentSwarmStatus {
270
291
  status: string;
271
292
  currentTask?: string;
272
293
  color?: string;
294
+ /**
295
+ * Per-role backend (claude | codex). Must round-trip through the hub
296
+ * into the DB's `crewConfig.roles` because continuation/recreation
297
+ * paths spawn roles from that stored value; missing it silently
298
+ * downgrades codex roles to claude after agent restart.
299
+ */
300
+ backend?: "claude" | "codex";
301
+ /**
302
+ * Per-role sandbox level. Same round-trip requirement as backend —
303
+ * omitting from the wire payload causes recreation paths to silently
304
+ * downgrade to the default workspace-write sandbox.
305
+ */
306
+ sandbox?: SandboxLevel;
273
307
  }>;
274
308
  plan?: unknown;
275
309
  }
@@ -315,7 +349,7 @@ export interface AgentSessionDied {
315
349
  sessionId: string;
316
350
  reason?: string;
317
351
  /**
318
- * (PR-C) Last-known claudeSessionId of the dead session, when available.
352
+ * (PR-C) Last-known backendSessionId of the dead session, when available.
319
353
  *
320
354
  * Hub uses this to decide what to keep in db when reconciling the
321
355
  * session.died event: db's `claude_session_id` is preserved (so the user
@@ -323,7 +357,7 @@ export interface AgentSessionDied {
323
357
  * because pre-PR-C agents don't send it and not every dead session ever
324
358
  * reached `system/init`.
325
359
  */
326
- claudeSessionId?: string;
360
+ backendSessionId?: string;
327
361
  }
328
362
  /** Agent → Hub: push available skill list to browsers */
329
363
  export interface AgentSkillListUpdate {
@@ -337,7 +371,7 @@ export interface AgentSessionStateReport {
337
371
  type: "session.state";
338
372
  sessionId: string;
339
373
  processState: SessionProcessState;
340
- claudeSessionId?: string;
374
+ backendSessionId?: string;
341
375
  }
342
376
  /** Hub -> Agent: generic request (browser-initiated) */
343
377
  export interface AgentGenericRequest {
@@ -364,7 +398,7 @@ export interface AgentGenericPush {
364
398
  event: string;
365
399
  data: Record<string, unknown>;
366
400
  }
367
- export type AgentClientMessage = AgentAuth | AgentHeartbeat | AgentSessionCreated | AgentSessionError | AgentClaudeOutput | AgentClaudeTurnComplete | AgentClaudeSessionStarted | AgentFsListDirResult | AgentFoldersListResult | AgentHistorySessionsResult | AgentSessionHistoryResult | AgentProxyOpened | AgentProxyData | AgentProxyClose | AgentSwarmOutput | AgentSwarmTurnComplete | AgentSwarmStatus | AgentRolesListResult | AgentTemplatesListResult | AgentExecutionAborted | AgentSessionDied | AgentSkillListUpdate | AgentSessionStateReport | AgentGenericResponse | AgentGenericPush | ProjectsListResult | ProjectsGetResult | ProjectsTasksResult | ProjectsTaskResult | ProjectsSwarmsResult | ProjectsSwarmResult | ProjectsInboxesResult | ProjectsInboxResult | ProjectsSwarmSessionIdResult | ProjectsFilesListResult | ProjectsFileReadResult | ProjectsFileWriteResult;
401
+ export type AgentClientMessage = AgentAuth | AgentHeartbeat | AgentSessionCreated | AgentSessionError | AgentClaudeOutput | AgentClaudeTurnComplete | AgentClaudeSessionStarted | AgentPermissionRequest | AgentFsListDirResult | AgentFoldersListResult | AgentHistorySessionsResult | AgentSessionHistoryResult | AgentProxyOpened | AgentProxyData | AgentProxyClose | AgentSwarmOutput | AgentSwarmTurnComplete | AgentSwarmStatus | AgentRolesListResult | AgentTemplatesListResult | AgentExecutionAborted | AgentSessionDied | AgentSkillListUpdate | AgentSessionStateReport | AgentGenericResponse | AgentGenericPush | ProjectsListResult | ProjectsGetResult | ProjectsTasksResult | ProjectsTaskResult | ProjectsSwarmsResult | ProjectsSwarmResult | ProjectsInboxesResult | ProjectsInboxResult | ProjectsSwarmSessionIdResult | ProjectsFilesListResult | ProjectsFileReadResult | ProjectsFileWriteResult | ProjectsSwarmAddRoleResult;
368
402
  /**
369
403
  * Capability string the agent advertises in its `auth` message to declare
370
404
  * support for the `projects.*` RPC namespace. The hub fails fast with HTTP
@@ -567,4 +601,23 @@ export interface ProjectsFileWriteResult {
567
601
  details?: Record<string, unknown>;
568
602
  } | null;
569
603
  }
604
+ export interface ProjectsSwarmAddRoleRequest {
605
+ type: "projects.swarm_add_role";
606
+ requestId: string;
607
+ encodedCwd: string;
608
+ swarmId: string;
609
+ roleName: string;
610
+ backend?: "claude" | "codex";
611
+ sandbox?: string;
612
+ customPrompt?: string;
613
+ taskPrompt?: string;
614
+ }
615
+ export interface ProjectsSwarmAddRoleResult {
616
+ type: "projects.swarm_add_role_result";
617
+ requestId: string;
618
+ ok: boolean;
619
+ swarmId?: string;
620
+ instanceId?: string;
621
+ error?: string;
622
+ }
570
623
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/protocol/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/protocol/agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/protocol/agent.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,uEAAuE;AAudvE,uEAAuE;AACvE,uEAAuE;AACvE,EAAE;AACF,2DAA2D;AAC3D,0EAA0E;AAC1E,oEAAoE;AACpE,wEAAwE;AACxE,4EAA4E;AAC5E,qEAAqE;AACrE,yEAAyE;AACzE,8EAA8E;AAC9E,4EAA4E;AAC5E,oBAAoB;AACpB,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,iEAAiE;AACjE,oEAAoE;AACpE,EAAE;AACF,2EAA2E;AAC3E,sCAAsC;AAEtC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/protocol/agent.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,uEAAuE;AAigBvE,uEAAuE;AACvE,uEAAuE;AACvE,EAAE;AACF,2DAA2D;AAC3D,0EAA0E;AAC1E,oEAAoE;AACpE,wEAAwE;AACxE,4EAA4E;AAC5E,qEAAqE;AACrE,yEAAyE;AACzE,8EAA8E;AAC9E,4EAA4E;AAC5E,oBAAoB;AACpB,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,iEAAiE;AACjE,oEAAoE;AACpE,EAAE;AACF,2EAA2E;AAC3E,sCAAsC;AAEtC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { SessionProcessState } from "../types/session.js";
2
+ import type { SandboxLevel } from "../sandbox.js";
2
3
  export interface ChatAuth {
3
4
  type: "auth";
4
5
  token: string;
@@ -7,7 +8,7 @@ export interface ChatCreateConversation {
7
8
  type: "create_conversation";
8
9
  agentId?: string;
9
10
  workDir?: string;
10
- claudeSessionId?: string;
11
+ backendSessionId?: string;
11
12
  useBrainCore?: boolean;
12
13
  }
13
14
  export interface ChatSendMessage {
@@ -33,7 +34,7 @@ export interface ChatLoadSessionHistory {
33
34
  type: "load_session_history";
34
35
  agentId: string;
35
36
  workDir: string;
36
- claudeSessionId: string;
37
+ backendSessionId: string;
37
38
  /** Pagination: return messages with seq < before. Omit/0 = newest tail. */
38
39
  before?: number;
39
40
  /** Max messages returned. Default 50, max 200. */
@@ -54,6 +55,8 @@ export interface ChatCreateSwarmConversation {
54
55
  workDir?: string;
55
56
  /** Template name to use (resolves roles on Agent side). */
56
57
  templateName?: string;
58
+ /** Optional user-supplied instance label propagated to SwarmCoordinator. */
59
+ displayName?: string;
57
60
  /** Direct role specs (used when templateName is not set). */
58
61
  roles?: Array<{
59
62
  roleName: string;
@@ -61,17 +64,28 @@ export interface ChatCreateSwarmConversation {
61
64
  eager?: boolean;
62
65
  customPrompt?: string;
63
66
  customDefinition?: CustomRoleDefinition;
67
+ backend?: "claude" | "codex";
68
+ sandbox?: SandboxLevel;
64
69
  }>;
65
70
  task?: string;
66
71
  }
67
72
  export interface ChatUpgradeToSwarm {
68
73
  type: "upgrade_to_swarm";
69
74
  sessionId: string;
75
+ /**
76
+ * Role specs for the upgrade. `backend` and `sandbox` are optional so
77
+ * existing callers (UI upgrade flow today) can omit them and each role
78
+ * falls back to its adapter default (`backend=claude`, sandbox per
79
+ * adapter). When the upgrade UI grows per-role selectors, populate
80
+ * these fields the same way ChatCreateSwarmConversation does.
81
+ */
70
82
  roles: Array<{
71
83
  roleName: string;
72
84
  count?: number;
73
85
  customPrompt?: string;
74
86
  customDefinition?: CustomRoleDefinition;
87
+ backend?: "claude" | "codex";
88
+ sandbox?: SandboxLevel;
75
89
  }>;
76
90
  task?: string;
77
91
  }
@@ -95,6 +109,16 @@ export interface ChatRequestSessionState {
95
109
  type: "request_session_state";
96
110
  sessionId: string;
97
111
  }
112
+ /**
113
+ * M1.S3: subscribe to the unified wire-event stream for a session.
114
+ * Hub replies with `event_backfill` (batched events with seq > afterSeq)
115
+ * followed by individual `event` pushes for new events as they land.
116
+ */
117
+ export interface ChatEventSubscribe {
118
+ type: "event_subscribe";
119
+ sessionId: string;
120
+ afterSeq: number;
121
+ }
98
122
  /** Browser -> Hub: generic request */
99
123
  export interface ChatGenericRequest {
100
124
  type: "generic.request";
@@ -120,12 +144,14 @@ export interface ChatGenericPush {
120
144
  event: string;
121
145
  data: Record<string, unknown>;
122
146
  }
123
- export type ChatClientMessage = ChatAuth | ChatCreateConversation | ChatSendMessage | ChatListDirectory | ChatListFolders | ChatListHistorySessions | ChatLoadSessionHistory | ChatCreateSwarmConversation | ChatUpgradeToSwarm | ChatListRoles | ChatListTemplates | ChatAbortExecution | ChatWatchSession | ChatRequestSessionState | ChatGenericRequest;
147
+ export type ChatClientMessage = ChatAuth | ChatCreateConversation | ChatSendMessage | ChatListDirectory | ChatListFolders | ChatListHistorySessions | ChatLoadSessionHistory | ChatCreateSwarmConversation | ChatUpgradeToSwarm | ChatListRoles | ChatListTemplates | ChatAbortExecution | ChatWatchSession | ChatRequestSessionState | ChatEventSubscribe | ChatGenericRequest;
124
148
  export interface ChatAuthResult {
125
149
  type: "auth_result";
126
150
  success: boolean;
127
151
  userId?: string;
128
152
  error?: string;
153
+ /** Server signals client bundle is stale; client should reload to pick up the new version. */
154
+ forceReload?: boolean;
129
155
  }
130
156
  export interface ChatConversationCreated {
131
157
  type: "conversation_created";
@@ -133,7 +159,7 @@ export interface ChatConversationCreated {
133
159
  agentId: string;
134
160
  agentName?: string;
135
161
  workDir?: string;
136
- claudeSessionId?: string;
162
+ backendSessionId?: string;
137
163
  isCrew?: boolean;
138
164
  title?: string;
139
165
  }
@@ -275,8 +301,27 @@ export interface ChatSessionState {
275
301
  type: "session_state";
276
302
  sessionId: string;
277
303
  processState: SessionProcessState;
278
- claudeSessionId?: string;
304
+ backendSessionId?: string;
279
305
  agentId?: string;
280
306
  }
281
- export type ChatServerMessage = ChatAuthResult | ChatConversationCreated | ChatConversationError | ChatClaudeOutput | ChatTurnCompleted | ChatContextUsage | ChatDirectoryListing | ChatFoldersList | ChatHistorySessionsList | ChatSessionHistory | ChatError | ChatSwarmOutput | ChatSwarmTurnCompleted | ChatSwarmStatus | ChatRolesList | ChatTemplatesList | ChatExecutionAborted | ChatSkillListUpdate | ChatSessionState | ChatGenericResponse | ChatGenericPush;
307
+ /**
308
+ * M1.S3: server → client wire-event push. Single event per frame; clients
309
+ * advance their local `afterSeq` cursor to event.seq on receipt.
310
+ */
311
+ export interface ChatEvent {
312
+ type: "event";
313
+ sessionId: string;
314
+ event: unknown;
315
+ }
316
+ /**
317
+ * M1.S3: batched backfill emitted in response to `event_subscribe`. Sent
318
+ * before any live `event` push to fill the gap up to `headSeq`.
319
+ */
320
+ export interface ChatEventBackfill {
321
+ type: "event_backfill";
322
+ sessionId: string;
323
+ events: unknown[];
324
+ headSeq: number;
325
+ }
326
+ export type ChatServerMessage = ChatAuthResult | ChatConversationCreated | ChatConversationError | ChatClaudeOutput | ChatTurnCompleted | ChatContextUsage | ChatDirectoryListing | ChatFoldersList | ChatHistorySessionsList | ChatSessionHistory | ChatError | ChatSwarmOutput | ChatSwarmTurnCompleted | ChatSwarmStatus | ChatRolesList | ChatTemplatesList | ChatExecutionAborted | ChatSkillListUpdate | ChatSessionState | ChatEvent | ChatEventBackfill | ChatGenericResponse | ChatGenericPush;
282
327
  //# sourceMappingURL=chat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/protocol/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/protocol/chat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ export type WireEventType = "turn-start" | "turn-end" | "text" | "tool-call-start" | "tool-call-end" | "permission-request" | "permission-response" | "service" | "role-spawned" | "role-status-changed" | "role-stopped" | "plan-updated" | "queen-patrol";
2
+ export type WireEventRole = "user" | "agent" | "system";
3
+ export interface WireEvent<P = unknown> {
4
+ id: string;
5
+ sessionId: string;
6
+ seq: number;
7
+ role: WireEventRole;
8
+ type: WireEventType;
9
+ turnId?: string;
10
+ parentId?: string;
11
+ agentId?: string;
12
+ localId?: string;
13
+ payload: P;
14
+ ts: number;
15
+ }
16
+ export interface TurnStartPayload {
17
+ turnId: string;
18
+ trigger?: "user" | "queen" | "system";
19
+ }
20
+ export interface TurnEndPayload {
21
+ turnId: string;
22
+ status: "complete" | "interrupted" | "error";
23
+ error?: string;
24
+ }
25
+ export interface TextPayload {
26
+ text: string;
27
+ finished?: boolean;
28
+ }
29
+ export interface ToolCallStartPayload {
30
+ toolCallId: string;
31
+ toolName: string;
32
+ args: Record<string, unknown>;
33
+ }
34
+ export interface ToolCallEndPayload {
35
+ toolCallId: string;
36
+ status: "success" | "error" | "cancelled";
37
+ result?: unknown;
38
+ error?: string;
39
+ }
40
+ export type PermissionDecision = "allow" | "allow_session" | "deny" | "abort";
41
+ export interface PermissionRequestPayload {
42
+ requestId: string;
43
+ toolName: string;
44
+ args: Record<string, unknown>;
45
+ reason?: string;
46
+ backendType?: "claude" | "codex";
47
+ meta?: Record<string, unknown>;
48
+ }
49
+ export interface PermissionResponsePayload {
50
+ requestId: string;
51
+ decision: PermissionDecision;
52
+ reason?: string;
53
+ }
54
+ export interface ServicePayload {
55
+ kind: string;
56
+ data?: unknown;
57
+ }
58
+ export interface RoleSpawnedPayload {
59
+ instanceId: string;
60
+ roleName: string;
61
+ roleType: string;
62
+ backendSessionId?: string;
63
+ }
64
+ export interface RoleStatusChangedPayload {
65
+ instanceId: string;
66
+ status: "idle" | "working" | "blocked" | "error" | "done";
67
+ currentTask?: string;
68
+ }
69
+ export interface RoleStoppedPayload {
70
+ instanceId: string;
71
+ reason?: string;
72
+ }
73
+ export interface PlanUpdatedPayload {
74
+ plan: unknown;
75
+ planStatus?: string;
76
+ }
77
+ export interface QueenPatrolPayload {
78
+ summary?: string;
79
+ decisions?: unknown[];
80
+ }
81
+ export type WireEventPayloadMap = {
82
+ "turn-start": TurnStartPayload;
83
+ "turn-end": TurnEndPayload;
84
+ text: TextPayload;
85
+ "tool-call-start": ToolCallStartPayload;
86
+ "tool-call-end": ToolCallEndPayload;
87
+ "permission-request": PermissionRequestPayload;
88
+ "permission-response": PermissionResponsePayload;
89
+ service: ServicePayload;
90
+ "role-spawned": RoleSpawnedPayload;
91
+ "role-status-changed": RoleStatusChangedPayload;
92
+ "role-stopped": RoleStoppedPayload;
93
+ "plan-updated": PlanUpdatedPayload;
94
+ "queen-patrol": QueenPatrolPayload;
95
+ };
96
+ export type TypedWireEvent<T extends WireEventType> = WireEvent<WireEventPayloadMap[T]> & {
97
+ type: T;
98
+ };
99
+ export declare const WIRE_EVENT_TYPES: readonly WireEventType[];
100
+ export declare function isWireEventType(value: unknown): value is WireEventType;
101
+ export declare function isWireEvent(value: unknown): value is WireEvent;
102
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/protocol/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ // Wire event protocol — unified seq stream for chat/swarm sessions.
2
+ // Design: plans/session-protocol/plan.md §3.1
3
+ export const WIRE_EVENT_TYPES = [
4
+ "turn-start",
5
+ "turn-end",
6
+ "text",
7
+ "tool-call-start",
8
+ "tool-call-end",
9
+ "permission-request",
10
+ "permission-response",
11
+ "service",
12
+ "role-spawned",
13
+ "role-status-changed",
14
+ "role-stopped",
15
+ "plan-updated",
16
+ "queen-patrol",
17
+ ];
18
+ export function isWireEventType(value) {
19
+ return typeof value === "string" && WIRE_EVENT_TYPES.includes(value);
20
+ }
21
+ export function isWireEvent(value) {
22
+ if (!value || typeof value !== "object")
23
+ return false;
24
+ const e = value;
25
+ return (typeof e.id === "string" &&
26
+ typeof e.sessionId === "string" &&
27
+ typeof e.seq === "number" &&
28
+ Number.isFinite(e.seq) &&
29
+ e.seq >= 1 &&
30
+ (e.role === "user" || e.role === "agent" || e.role === "system") &&
31
+ isWireEventType(e.type) &&
32
+ typeof e.ts === "number" &&
33
+ "payload" in e);
34
+ }
35
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/protocol/events.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,8CAA8C;AA2I9C,MAAM,CAAC,MAAM,gBAAgB,GAA6B;IACxD,YAAY;IACZ,UAAU;IACV,MAAM;IACN,iBAAiB;IACjB,eAAe;IACf,oBAAoB;IACpB,qBAAqB;IACrB,SAAS;IACT,cAAc;IACd,qBAAqB;IACrB,cAAc;IACd,cAAc;IACd,cAAc;CACN,CAAC;AAEX,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9F,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,CAAC,GAAG,KAA2B,CAAC;IACtC,OAAO,CACL,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;QACxB,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC/B,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ;QACzB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;QACtB,CAAC,CAAC,GAAG,IAAI,CAAC;QACV,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;QAChE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;QACvB,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;QACxB,SAAS,IAAI,CAAC,CACf,CAAC;AACJ,CAAC"}
@@ -1,6 +1,8 @@
1
1
  export type { AgentServerMessage, AgentClientMessage, AgentAuthRequired, AgentRegistered, AgentAck, AgentSessionCreate, AgentSessionClose, AgentClaudeInput, AgentClaudeExecute, AgentFsListDir, AgentListFolders, AgentListHistorySessions, AgentListRoles, AgentListTemplates, AgentAuth, AgentHeartbeat, AgentSessionCreated, AgentSessionError, AgentClaudeOutput, AgentClaudeTurnComplete, AgentClaudeSessionStarted, AgentFsListDirResult, AgentFoldersListResult, AgentHistorySessionsResult, AgentRolesListResult, AgentTemplatesListResult, AgentProxyOpen, AgentProxyData, AgentProxyClose, AgentProxyOpened, AgentGenericRequest, AgentGenericResponse, AgentGenericPush, AgentSkillListUpdate, AgentSessionStateReport, AgentSessionForceRestart, AgentSessionDied, } from "./agent.js";
2
2
  export { PROJECTS_RPC_CAPABILITY } from "./agent.js";
3
- export type { ChatClientMessage, ChatServerMessage, ChatAuth, ChatCreateConversation, ChatSendMessage, ChatListDirectory, ChatListFolders, ChatListHistorySessions, ChatUpgradeToSwarm, ChatListRoles, ChatListTemplates, ChatAuthResult, ChatConversationCreated, ChatConversationError, ChatClaudeOutput, ChatTurnCompleted, ChatContextUsage, ChatDirectoryListing, ChatFoldersList, ChatHistorySessionsList, ChatRolesList, ChatTemplatesList, ChatError, ChatGenericRequest, ChatGenericResponse, ChatGenericPush, ChatSkillListUpdate, ChatSessionState, ChatRequestSessionState, } from "./chat.js";
3
+ export type { ChatClientMessage, ChatServerMessage, ChatAuth, ChatCreateConversation, ChatSendMessage, ChatListDirectory, ChatListFolders, ChatListHistorySessions, ChatUpgradeToSwarm, ChatListRoles, ChatListTemplates, ChatAuthResult, ChatConversationCreated, ChatConversationError, ChatClaudeOutput, ChatTurnCompleted, ChatContextUsage, ChatDirectoryListing, ChatFoldersList, ChatHistorySessionsList, ChatRolesList, ChatTemplatesList, ChatError, ChatGenericRequest, ChatGenericResponse, ChatGenericPush, ChatSkillListUpdate, ChatSessionState, ChatRequestSessionState, ChatEventSubscribe, ChatEvent, ChatEventBackfill, } from "./chat.js";
4
+ export * from "./events.js";
5
+ export { SESSION_PROTOCOL_VERSION, extractProtocolVersion, isProtocolVersionMismatch, } from "./protocol-version.js";
4
6
  export type { ProxyMessage, ProxyOpen, ProxyOpened, ProxyData, ProxyClose, } from "./proxy.js";
5
7
  export type { ScheduleMode, ScheduleStatus, ScheduleRunStatus, Schedule, ScheduleLaunchConfig, ScheduleRun, CreateScheduleInput, UpdateSchedulePatch, ScheduleErrorCode, ScheduleErrorPayload, ScheduleListRequest, ScheduleCreateRequest, ScheduleUpdateRequest, ScheduleDeleteRequest, SchedulePauseRequest, ScheduleResumeRequest, ScheduleTriggerRequest, ScheduleRunsRequest, ScheduleLogRequest, ScheduleListResult, ScheduleCreateResult, ScheduleUpdateResult, ScheduleDeleteResult, SchedulePauseResult, ScheduleResumeResult, ScheduleTriggerResult, ScheduleRunsResult, ScheduleLogResult, ScheduleErrorResponse, ScheduleChangedPush, ScheduleRemovedPush, ScheduleRunPush, ScheduleClientMessage, ScheduleServerMessage, } from "./schedule.js";
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACd,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,EACR,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACd,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,EACR,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,SAAS,EACT,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAEnB,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,eAAe,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export { PROJECTS_RPC_CAPABILITY } from "./agent.js";
2
+ export * from "./events.js";
3
+ export { SESSION_PROTOCOL_VERSION, extractProtocolVersion, isProtocolVersionMismatch, } from "./protocol-version.js";
2
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAqCrD,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const SESSION_PROTOCOL_VERSION = 1;
2
+ export declare function extractProtocolVersion(url: string): number | null;
3
+ export declare function isProtocolVersionMismatch(clientVersion: number | null): boolean;
4
+ //# sourceMappingURL=protocol-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-version.d.ts","sourceRoot":"","sources":["../../src/protocol/protocol-version.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKjE;AAED,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAE/E"}
@@ -0,0 +1,20 @@
1
+ // Session protocol version handshake.
2
+ //
3
+ // Bumped together with breaking wire-protocol changes (e.g. new mandatory
4
+ // envelope fields, removed types). Clients send the version they were built
5
+ // against; hub rejects mismatched connections with `auth_result{success:false,
6
+ // forceReload:true}` so browsers can grab the new bundle on the next refresh.
7
+ //
8
+ // Background: plans/session-protocol/plan.md §四 ("UI 版本号 + forceReload 机制").
9
+ export const SESSION_PROTOCOL_VERSION = 1;
10
+ export function extractProtocolVersion(url) {
11
+ const m = /[?&]v=([^&#]*)/.exec(url);
12
+ if (!m)
13
+ return null;
14
+ const n = Number(m[1]);
15
+ return Number.isFinite(n) && Number.isInteger(n) ? n : null;
16
+ }
17
+ export function isProtocolVersionMismatch(clientVersion) {
18
+ return clientVersion !== SESSION_PROTOCOL_VERSION;
19
+ }
20
+ //# sourceMappingURL=protocol-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-version.js","sourceRoot":"","sources":["../../src/protocol/protocol-version.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,0EAA0E;AAC1E,4EAA4E;AAC5E,+EAA+E;AAC/E,8EAA8E;AAC9E,EAAE;AACF,6EAA6E;AAE7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAE1C,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,aAA4B;IACpE,OAAO,aAAa,KAAK,wBAAwB,CAAC;AACpD,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Per-role sandbox level — chosen by user per swarm role, defaults to
3
+ * `workspace-write`. Mapped to backend-specific implementation by each
4
+ * adapter:
5
+ *
6
+ * - codex-adapter: `-c sandbox_mode="<value>"` (OS-level seatbelt /
7
+ * landlock enforcement)
8
+ * - claude-adapter: maps to `--permission-mode`
9
+ * - read-only → `plan`
10
+ * - workspace-write / full-access → `bypassPermissions`
11
+ *
12
+ * NOTE: Claude has NO OS-level sandbox — the limits are LLM-soft and
13
+ * audit-only. UI should tooltip this to users so they don't assume
14
+ * `read-only` on claude is as strong as on codex.
15
+ *
16
+ * Values:
17
+ * - `read-only`: read anything, write nothing. Suitable for reviewer roles.
18
+ * - `workspace-write`: read anything, write within workDir + /tmp. Default
19
+ * for most roles. Network restricted on codex.
20
+ * - `full-access`: no filesystem sandbox. Required for dev roles that
21
+ * spawn GUI apps (browser, simulator) — macOS Mach IPC is blocked
22
+ * under `workspace-write`.
23
+ */
24
+ export type SandboxLevel = "read-only" | "workspace-write" | "full-access";
25
+ export declare const DEFAULT_SANDBOX: SandboxLevel;
26
+ export declare const SANDBOX_LEVELS: readonly SandboxLevel[];
27
+ //# sourceMappingURL=sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAE3E,eAAO,MAAM,eAAe,EAAE,YAAgC,CAAC;AAE/D,eAAO,MAAM,cAAc,EAAE,SAAS,YAAY,EAIxC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export const DEFAULT_SANDBOX = "workspace-write";
2
+ export const SANDBOX_LEVELS = [
3
+ "read-only",
4
+ "workspace-write",
5
+ "full-access",
6
+ ];
7
+ //# sourceMappingURL=sandbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAC,MAAM,eAAe,GAAiB,iBAAiB,CAAC;AAE/D,MAAM,CAAC,MAAM,cAAc,GAA4B;IACrD,WAAW;IACX,iBAAiB;IACjB,aAAa;CACL,CAAC"}
@@ -4,7 +4,7 @@ export interface Session {
4
4
  userId: string;
5
5
  agentId: string | null;
6
6
  agentName: string | null;
7
- claudeSessionId: string | null;
7
+ backendSessionId: string | null;
8
8
  workDir: string | null;
9
9
  title: string | null;
10
10
  backendType: BackendType;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/types/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/types/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mclawnet/shared",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -26,10 +26,12 @@
26
26
  "zod": "^3.24.0"
27
27
  },
28
28
  "devDependencies": {
29
- "typescript": "^5.8.3"
29
+ "typescript": "^5.8.3",
30
+ "vitest": "^4.0.18"
30
31
  },
31
32
  "scripts": {
32
33
  "build": "tsc",
33
- "clean": "rm -rf dist"
34
+ "clean": "rm -rf dist",
35
+ "test": "vitest run"
34
36
  }
35
37
  }
@@ -1,101 +0,0 @@
1
- export type BrainSetupStatus = "unknown" | "not_installed" | "needs_config" | "ready";
2
- export type RunnerStatus = "stopped" | "running" | "error";
3
- export interface RunnerState {
4
- status: RunnerStatus;
5
- pid?: number;
6
- lastRun?: string;
7
- nextRun?: string;
8
- sources: {
9
- name: string;
10
- lastFetch?: string;
11
- status: string;
12
- }[];
13
- }
14
- export interface DailyBriefing {
15
- date: string;
16
- tldr: string;
17
- content: string;
18
- actionCount: number;
19
- projectCount: number;
20
- generatedAt: string;
21
- }
22
- export interface ActionItem {
23
- id: string;
24
- priority: "today" | "this_week" | "fyi";
25
- title: string;
26
- source: "teams" | "email" | "meeting" | "ado";
27
- project?: string;
28
- timestamp: string;
29
- context?: string;
30
- done: boolean;
31
- }
32
- export interface ProjectStatus {
33
- slug: string;
34
- name: string;
35
- status: "healthy" | "warning" | "blocked";
36
- newMessageCount: number;
37
- pendingDecisionCount: number;
38
- lastActivity?: string;
39
- }
40
- export interface MeetingItem {
41
- id: string;
42
- title: string;
43
- startTime: string;
44
- endTime?: string;
45
- attendeeCount?: number;
46
- meetingType?: string;
47
- hasRecap: boolean;
48
- status: "completed" | "in_progress" | "upcoming";
49
- }
50
- export interface MeetingRecap {
51
- meetingId: string;
52
- title: string;
53
- date: string;
54
- meetingType: string;
55
- attendeeCount: number;
56
- tldr: string;
57
- forYou: string[];
58
- decisions: {
59
- tag: string;
60
- text: string;
61
- decidedBy?: string;
62
- }[];
63
- actionItems: {
64
- owner: string;
65
- action: string;
66
- due?: string;
67
- }[];
68
- openItems: {
69
- text: string;
70
- owner?: string;
71
- }[];
72
- fullContent: string;
73
- }
74
- export interface FeedItem {
75
- id: string;
76
- source: "teams" | "email" | "meeting" | "ado";
77
- sender: string;
78
- chat?: string;
79
- subject?: string;
80
- preview: string;
81
- timestamp: string;
82
- project?: string;
83
- isUnread?: boolean;
84
- }
85
- export interface FeedFilters {
86
- source?: "teams" | "email" | "meeting" | "ado";
87
- project?: string;
88
- search?: string;
89
- limit?: number;
90
- offset?: number;
91
- }
92
- export interface BrainNotification {
93
- id: string;
94
- type: "mention" | "action_due" | "project_update" | "briefing_ready";
95
- title: string;
96
- body: string;
97
- timestamp: string;
98
- dismissed: boolean;
99
- actionUrl?: string;
100
- }
101
- //# sourceMappingURL=brain-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brain-types.d.ts","sourceRoot":"","sources":["../src/brain-types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- // ── Brain Types ──────────────────────────────────────────────────────
2
- // Types for the Company Hub / BrainCore integration.
3
- export {};
4
- //# sourceMappingURL=brain-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brain-types.js","sourceRoot":"","sources":["../src/brain-types.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,qDAAqD"}