jinn-cli 0.2.0 → 0.3.1

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 (135) hide show
  1. package/LICENSE +21 -0
  2. package/dist/bin/jimmy.js +1 -1
  3. package/dist/src/cli/chrome-allow.d.ts.map +1 -1
  4. package/dist/src/cli/chrome-allow.js +14 -5
  5. package/dist/src/cli/chrome-allow.js.map +1 -1
  6. package/dist/src/cli/list.js +1 -1
  7. package/dist/src/cli/list.js.map +1 -1
  8. package/dist/src/cli/nuke.js +2 -2
  9. package/dist/src/cli/nuke.js.map +1 -1
  10. package/dist/src/cli/setup.d.ts.map +1 -1
  11. package/dist/src/cli/setup.js +2 -1
  12. package/dist/src/cli/setup.js.map +1 -1
  13. package/dist/src/connectors/slack/index.d.ts +9 -1
  14. package/dist/src/connectors/slack/index.d.ts.map +1 -1
  15. package/dist/src/connectors/slack/index.js +172 -8
  16. package/dist/src/connectors/slack/index.js.map +1 -1
  17. package/dist/src/connectors/slack/threads.d.ts +1 -4
  18. package/dist/src/connectors/slack/threads.d.ts.map +1 -1
  19. package/dist/src/connectors/slack/threads.js +17 -7
  20. package/dist/src/connectors/slack/threads.js.map +1 -1
  21. package/dist/src/connectors/slack/threads.test.js +42 -8
  22. package/dist/src/connectors/slack/threads.test.js.map +1 -1
  23. package/dist/src/cron/runner.d.ts.map +1 -1
  24. package/dist/src/cron/runner.js +16 -5
  25. package/dist/src/cron/runner.js.map +1 -1
  26. package/dist/src/engines/claude.d.ts.map +1 -1
  27. package/dist/src/engines/claude.js +19 -4
  28. package/dist/src/engines/claude.js.map +1 -1
  29. package/dist/src/engines/codex.js +2 -2
  30. package/dist/src/engines/codex.js.map +1 -1
  31. package/dist/src/gateway/api.d.ts.map +1 -1
  32. package/dist/src/gateway/api.js +207 -3
  33. package/dist/src/gateway/api.js.map +1 -1
  34. package/dist/src/gateway/lifecycle.d.ts.map +1 -1
  35. package/dist/src/gateway/lifecycle.js +16 -6
  36. package/dist/src/gateway/lifecycle.js.map +1 -1
  37. package/dist/src/gateway/org.d.ts.map +1 -1
  38. package/dist/src/gateway/org.js +1 -0
  39. package/dist/src/gateway/org.js.map +1 -1
  40. package/dist/src/gateway/server.d.ts.map +1 -1
  41. package/dist/src/gateway/server.js +40 -1
  42. package/dist/src/gateway/server.js.map +1 -1
  43. package/dist/src/gateway/watcher.d.ts.map +1 -1
  44. package/dist/src/gateway/watcher.js +9 -2
  45. package/dist/src/gateway/watcher.js.map +1 -1
  46. package/dist/src/mcp/gateway-server.d.ts +13 -0
  47. package/dist/src/mcp/gateway-server.d.ts.map +1 -0
  48. package/dist/src/mcp/gateway-server.js +375 -0
  49. package/dist/src/mcp/gateway-server.js.map +1 -0
  50. package/dist/src/mcp/resolver.d.ts +19 -0
  51. package/dist/src/mcp/resolver.d.ts.map +1 -0
  52. package/dist/src/mcp/resolver.js +153 -0
  53. package/dist/src/mcp/resolver.js.map +1 -0
  54. package/dist/src/sessions/context.d.ts +1 -0
  55. package/dist/src/sessions/context.d.ts.map +1 -1
  56. package/dist/src/sessions/context.js +34 -3
  57. package/dist/src/sessions/context.js.map +1 -1
  58. package/dist/src/sessions/limits.d.ts +7 -0
  59. package/dist/src/sessions/limits.d.ts.map +1 -0
  60. package/dist/src/sessions/limits.js +42 -0
  61. package/dist/src/sessions/limits.js.map +1 -0
  62. package/dist/src/sessions/manager.d.ts +3 -1
  63. package/dist/src/sessions/manager.d.ts.map +1 -1
  64. package/dist/src/sessions/manager.js +38 -17
  65. package/dist/src/sessions/manager.js.map +1 -1
  66. package/dist/src/sessions/registry.d.ts +6 -0
  67. package/dist/src/sessions/registry.d.ts.map +1 -1
  68. package/dist/src/sessions/registry.js +34 -5
  69. package/dist/src/sessions/registry.js.map +1 -1
  70. package/dist/src/shared/effort.d.ts +17 -0
  71. package/dist/src/shared/effort.d.ts.map +1 -0
  72. package/dist/src/shared/effort.js +44 -0
  73. package/dist/src/shared/effort.js.map +1 -0
  74. package/dist/src/shared/paths.d.ts +2 -0
  75. package/dist/src/shared/paths.d.ts.map +1 -1
  76. package/dist/src/shared/paths.js +2 -0
  77. package/dist/src/shared/paths.js.map +1 -1
  78. package/dist/src/shared/types.d.ts +57 -1
  79. package/dist/src/shared/types.d.ts.map +1 -1
  80. package/dist/src/stt/stt.d.ts +24 -0
  81. package/dist/src/stt/stt.d.ts.map +1 -0
  82. package/dist/src/stt/stt.js +203 -0
  83. package/dist/src/stt/stt.js.map +1 -0
  84. package/dist/web/404.html +1 -1
  85. package/dist/web/_next/static/chunks/198-3e82ded4f04a0aae.js +1 -0
  86. package/dist/web/_next/static/chunks/{704-af2893821e1d18dc.js → 704-ca24be493a922639.js} +1 -1
  87. package/dist/web/_next/static/chunks/{73-c226535579393e21.js → 73-2d6e730cea0fe6c8.js} +1 -1
  88. package/dist/web/_next/static/chunks/app/_not-found/{page-bb075b0779827928.js → page-7d43a486b7014af3.js} +1 -1
  89. package/dist/web/_next/static/chunks/app/chat/page-2f3c561ed768ed58.js +1 -0
  90. package/dist/web/_next/static/chunks/app/costs/{page-d6c03718defdb599.js → page-13a6f2c65a827f8a.js} +1 -1
  91. package/dist/web/_next/static/chunks/app/cron/{page-4c563eef2b6231fe.js → page-0ee07a679c7b79aa.js} +1 -1
  92. package/dist/web/_next/static/chunks/app/kanban/{page-55a73165a36f4077.js → page-a7facadd4194faae.js} +1 -1
  93. package/dist/web/_next/static/chunks/app/layout-fd975d16033dab25.js +1 -0
  94. package/dist/web/_next/static/chunks/app/logs/page-6de6b16523e85193.js +1 -0
  95. package/dist/web/_next/static/chunks/app/org/{page-d5cd8d9b7864737b.js → page-cd9d362e77f4799e.js} +1 -1
  96. package/dist/web/_next/static/chunks/app/{page-b81992940fd1dbc6.js → page-b98417ed4f4d45a0.js} +1 -1
  97. package/dist/web/_next/static/chunks/app/sessions/page-7148306182017841.js +1 -0
  98. package/dist/web/_next/static/chunks/app/settings/page-34c9276e2a012445.js +1 -0
  99. package/dist/web/_next/static/chunks/app/skills/page-18cf3b7bb9a7339c.js +1 -0
  100. package/dist/web/_next/static/chunks/main-app-0c65af8a0fd99888.js +1 -0
  101. package/dist/web/_next/static/css/24da9dfc818cea32.css +1 -0
  102. package/dist/web/chat.html +1 -1
  103. package/dist/web/chat.txt +5 -5
  104. package/dist/web/costs.html +2 -2
  105. package/dist/web/costs.txt +5 -5
  106. package/dist/web/cron.html +1 -1
  107. package/dist/web/cron.txt +5 -5
  108. package/dist/web/index.html +1 -1
  109. package/dist/web/index.txt +5 -5
  110. package/dist/web/kanban.html +1 -1
  111. package/dist/web/kanban.txt +5 -5
  112. package/dist/web/logs.html +2 -2
  113. package/dist/web/logs.txt +5 -5
  114. package/dist/web/org.html +1 -1
  115. package/dist/web/org.txt +5 -5
  116. package/dist/web/sessions.html +1 -1
  117. package/dist/web/sessions.txt +5 -5
  118. package/dist/web/settings.html +1 -1
  119. package/dist/web/settings.txt +5 -5
  120. package/dist/web/skills.html +1 -1
  121. package/dist/web/skills.txt +5 -5
  122. package/package.json +9 -9
  123. package/template/config.default.yaml +33 -1
  124. package/template/docs/mcp.md +108 -0
  125. package/dist/web/_next/static/chunks/198-fd91406a158c5c25.js +0 -1
  126. package/dist/web/_next/static/chunks/app/chat/page-6d5bc707a45c92c6.js +0 -1
  127. package/dist/web/_next/static/chunks/app/layout-5129b67d5f126cf0.js +0 -1
  128. package/dist/web/_next/static/chunks/app/logs/page-e18889d67e48c9c9.js +0 -1
  129. package/dist/web/_next/static/chunks/app/sessions/page-c83c890177c18258.js +0 -1
  130. package/dist/web/_next/static/chunks/app/settings/page-2583d55551abdf72.js +0 -1
  131. package/dist/web/_next/static/chunks/app/skills/page-df9465e314561bb5.js +0 -1
  132. package/dist/web/_next/static/chunks/main-app-437f51faf74fbb3b.js +0 -1
  133. package/dist/web/_next/static/css/4a6a5bca9238c104.css +0 -1
  134. /package/dist/web/_next/static/{jt8R5JvUgfB9CMfFwWFr0 → Zn588p2VvgjCSLr44R__1}/_buildManifest.js +0 -0
  135. /package/dist/web/_next/static/{jt8R5JvUgfB9CMfFwWFr0 → Zn588p2VvgjCSLr44R__1}/_ssgManifest.js +0 -0
@@ -0,0 +1,153 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { JINN_HOME } from "../shared/paths.js";
4
+ import { logger } from "../shared/logger.js";
5
+ /**
6
+ * Resolve the MCP servers that should be available for a given employee
7
+ * based on global config and employee-level overrides.
8
+ */
9
+ export function resolveMcpServers(globalMcp, employee) {
10
+ const servers = {};
11
+ if (!globalMcp)
12
+ return { mcpServers: servers };
13
+ // Build the full set of available MCP servers from global config
14
+ const available = buildAvailableServers(globalMcp);
15
+ // Determine which servers this employee gets
16
+ const employeeMcp = employee?.mcp;
17
+ if (employeeMcp === false) {
18
+ // Employee explicitly opted out of all MCP servers
19
+ return { mcpServers: {} };
20
+ }
21
+ if (Array.isArray(employeeMcp)) {
22
+ // Employee wants only specific servers
23
+ for (const name of employeeMcp) {
24
+ if (available[name]) {
25
+ servers[name] = available[name];
26
+ }
27
+ else {
28
+ logger.warn(`Employee ${employee?.name} requests MCP server "${name}" but it's not configured`);
29
+ }
30
+ }
31
+ }
32
+ else {
33
+ // Employee gets all enabled servers (default behavior, or mcp: true)
34
+ Object.assign(servers, available);
35
+ }
36
+ return { mcpServers: servers };
37
+ }
38
+ /**
39
+ * Build the map of all available (enabled) MCP servers from global config.
40
+ */
41
+ function buildAvailableServers(config) {
42
+ const servers = {};
43
+ // Browser automation via Playwright
44
+ if (config.browser?.enabled !== false) {
45
+ const provider = config.browser?.provider || "playwright";
46
+ if (provider === "playwright") {
47
+ servers.browser = {
48
+ command: "npx",
49
+ args: ["-y", "@anthropic-ai/mcp-server-playwright"],
50
+ };
51
+ }
52
+ else if (provider === "puppeteer") {
53
+ servers.browser = {
54
+ command: "npx",
55
+ args: ["-y", "@anthropic-ai/mcp-server-puppeteer"],
56
+ };
57
+ }
58
+ }
59
+ // Web search via Brave
60
+ if (config.search?.enabled) {
61
+ const apiKey = resolveEnvVar(config.search.apiKey);
62
+ if (apiKey) {
63
+ servers.search = {
64
+ command: "npx",
65
+ args: ["-y", "brave-search-mcp"],
66
+ env: { BRAVE_API_KEY: apiKey },
67
+ };
68
+ }
69
+ else {
70
+ logger.warn("MCP search enabled but no API key configured (set mcp.search.apiKey or BRAVE_API_KEY env var)");
71
+ }
72
+ }
73
+ // Web fetch (content extraction)
74
+ if (config.fetch?.enabled) {
75
+ servers.fetch = {
76
+ command: "npx",
77
+ args: ["-y", "@anthropic-ai/mcp-server-fetch"],
78
+ };
79
+ }
80
+ // Gateway MCP server (built-in, always uses the local gateway)
81
+ if (config.gateway?.enabled !== false) {
82
+ const gatewayMcpPath = path.resolve(path.dirname(new URL(import.meta.url).pathname), "..", "..", "dist", "src", "mcp", "gateway-server.js");
83
+ // Only add if the built file exists; otherwise fall back to ts-node path
84
+ const scriptPath = fs.existsSync(gatewayMcpPath)
85
+ ? gatewayMcpPath
86
+ : path.resolve(path.dirname(new URL(import.meta.url).pathname), "gateway-server.js");
87
+ servers.gateway = {
88
+ command: "node",
89
+ args: [scriptPath],
90
+ env: {
91
+ JINN_GATEWAY_URL: `http://127.0.0.1:${process.env.JINN_PORT || "7777"}`,
92
+ },
93
+ };
94
+ }
95
+ // Custom user-defined MCP servers
96
+ if (config.custom) {
97
+ for (const [name, serverConfig] of Object.entries(config.custom)) {
98
+ if (serverConfig.enabled === false)
99
+ continue;
100
+ const { enabled, ...rest } = serverConfig;
101
+ // Resolve env vars in the custom config
102
+ if (rest.env) {
103
+ for (const [key, value] of Object.entries(rest.env)) {
104
+ rest.env[key] = resolveEnvVar(value) || value;
105
+ }
106
+ }
107
+ servers[name] = rest;
108
+ }
109
+ }
110
+ return servers;
111
+ }
112
+ /**
113
+ * Write a resolved MCP config to a temp file and return the path.
114
+ * Claude Code reads this via --mcp-config <path>.
115
+ */
116
+ export function writeMcpConfigFile(config, sessionId) {
117
+ const tmpDir = path.join(JINN_HOME, "tmp", "mcp");
118
+ fs.mkdirSync(tmpDir, { recursive: true });
119
+ const filePath = path.join(tmpDir, `${sessionId}.json`);
120
+ fs.writeFileSync(filePath, JSON.stringify(config, null, 2));
121
+ return filePath;
122
+ }
123
+ /**
124
+ * Clean up a temp MCP config file.
125
+ */
126
+ export function cleanupMcpConfigFile(sessionId) {
127
+ const filePath = path.join(JINN_HOME, "tmp", "mcp", `${sessionId}.json`);
128
+ try {
129
+ if (fs.existsSync(filePath))
130
+ fs.unlinkSync(filePath);
131
+ }
132
+ catch {
133
+ // Ignore cleanup errors
134
+ }
135
+ }
136
+ /**
137
+ * Resolve a value that may reference an environment variable.
138
+ * Supports ${VAR_NAME} syntax.
139
+ */
140
+ function resolveEnvVar(value) {
141
+ if (!value)
142
+ return undefined;
143
+ const match = value.match(/^\$\{(.+)\}$/);
144
+ if (match) {
145
+ return process.env[match[1]] || undefined;
146
+ }
147
+ // Also check if the raw value is a plain env var name
148
+ if (value.startsWith("$")) {
149
+ return process.env[value.slice(1)] || undefined;
150
+ }
151
+ return value;
152
+ }
153
+ //# sourceMappingURL=resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/mcp/resolver.ts"],"names":[],"mappings":"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"}
@@ -16,5 +16,6 @@ export declare function buildContext(opts: {
16
16
  portalName?: string;
17
17
  operatorName?: string;
18
18
  language?: string;
19
+ channelName?: string;
19
20
  }): string;
20
21
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/sessions/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAK/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAqET"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/sessions/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAK/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAqET"}
@@ -60,7 +60,7 @@ export function buildContext(opts) {
60
60
  sections.push(envCtx);
61
61
  // ── Delegation protocol ──────────────────────────────────
62
62
  if (!opts.employee) {
63
- sections.push(buildDelegationProtocol(gatewayUrl, portalName));
63
+ sections.push(buildDelegationProtocol(gatewayUrl, portalName, opts.config));
64
64
  }
65
65
  // ── Gateway API reference ─────────────────────────────────
66
66
  sections.push(buildApiReference(gatewayUrl, portalName));
@@ -140,7 +140,15 @@ function buildSessionContext(opts) {
140
140
  if (opts.sessionId)
141
141
  ctx += `- Session ID: ${opts.sessionId}\n`;
142
142
  ctx += `- Source: ${opts.source}\n`;
143
- ctx += `- Channel: ${opts.channel}\n`;
143
+ if (opts.channelName) {
144
+ ctx += `- Channel: #${opts.channelName} (${opts.channel})\n`;
145
+ }
146
+ else if (opts.source === "slack" && opts.channel.startsWith("D")) {
147
+ ctx += `- Channel: Direct Message (${opts.channel})\n`;
148
+ }
149
+ else {
150
+ ctx += `- Channel: ${opts.channel}\n`;
151
+ }
144
152
  if (opts.thread)
145
153
  ctx += `- Thread: ${opts.thread}\n`;
146
154
  ctx += `- User: ${opts.user}\n`;
@@ -349,7 +357,13 @@ function trimContext(sections) {
349
357
  }
350
358
  return result;
351
359
  }
352
- function buildDelegationProtocol(gatewayUrl, _portalName) {
360
+ function buildDelegationProtocol(gatewayUrl, _portalName, config) {
361
+ const defaultEngine = config?.engines.default || "claude";
362
+ const engineConfig = defaultEngine === "codex" ? config?.engines.codex : config?.engines.claude;
363
+ const childOverride = engineConfig?.childEffortOverride;
364
+ const effortOverrideNote = childOverride
365
+ ? `\n\n> **Note**: \`childEffortOverride\` is currently set to \`"${childOverride}"\` in config. All child sessions will use this effort level regardless of your per-task choice.`
366
+ : "";
353
367
  return `## Employee Delegation Protocol
354
368
 
355
369
  You are the COO. You NEVER become an employee — you orchestrate them. When the user mentions employees with \`@employee-name\` in their message, or when a task clearly fits an employee's role, you delegate by creating **linked child sessions**.
@@ -499,6 +513,23 @@ Managers need delegation instructions in their persona. When promoting an employ
499
513
  - They should apply oversight levels to their reports' work
500
514
  - They report summaries back to you (the COO)
501
515
 
516
+ ### Effort Level Management
517
+
518
+ When delegating tasks, assess complexity and set \`effortLevel\` in the API request body:
519
+
520
+ | Effort | Use for | Examples |
521
+ |--------|---------|----------|
522
+ | \`low\` | Simple lookups, status checks, information retrieval | "What's on the board?", "Check the latest run" |
523
+ | \`medium\` | Standard tasks, content creation, routine analysis | "Write a blog post", "Analyze last week's metrics" |
524
+ | \`high\` | Code changes, architecture, complex research, multi-step | "Refactor the auth module", "Design a new feature" |
525
+
526
+ Include in your delegation API call:
527
+ \`\`\`json
528
+ {"prompt": "...", "employee": "...", "parentSessionId": "...", "effortLevel": "high"}
529
+ \`\`\`
530
+
531
+ If unsure, default to \`medium\`. Use your judgment — these are guidelines, not rigid rules. A trivial rename is \`low\` even though it's "code changes."${effortOverrideNote}
532
+
502
533
  ### Your session ID
503
534
 
504
535
  Your current session ID is provided in the "Current session" section above. Use it as \`parentSessionId\` when spawning children and for the \`/children\` lookup.`;
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/sessions/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/sessions/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { JinnConfig, Employee, Engine } from "../shared/types.js";
2
+ /**
3
+ * Check all running sessions and kill any that exceed their time or cost limits.
4
+ * Called periodically by the gateway.
5
+ */
6
+ export declare function enforceSessionLimits(config: JinnConfig, engines: Map<string, Engine>, employees: Map<string, Employee>): void;
7
+ //# sourceMappingURL=limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../../src/sessions/limits.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAKvE;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,GAC/B,IAAI,CA6BN"}
@@ -0,0 +1,42 @@
1
+ import { isInterruptibleEngine } from "../shared/types.js";
2
+ import { listSessions, updateSession } from "./registry.js";
3
+ import { logger } from "../shared/logger.js";
4
+ /**
5
+ * Check all running sessions and kill any that exceed their time or cost limits.
6
+ * Called periodically by the gateway.
7
+ */
8
+ export function enforceSessionLimits(config, engines, employees) {
9
+ const running = listSessions({ status: "running" });
10
+ const now = Date.now();
11
+ for (const session of running) {
12
+ // Resolve limits: employee override > global config
13
+ const employee = session.employee ? employees.get(session.employee) : undefined;
14
+ const maxDurationMs = (config.sessions?.maxDurationMinutes ?? 30) * 60 * 1000;
15
+ const maxCost = employee?.maxCostUsd ?? config.sessions?.maxCostUsd ?? 10;
16
+ // Check duration
17
+ const startedAt = new Date(session.lastActivity).getTime();
18
+ const elapsed = now - startedAt;
19
+ if (elapsed > maxDurationMs) {
20
+ logger.warn(`Session ${session.id} exceeded max duration (${Math.round(elapsed / 60000)}min > ${config.sessions?.maxDurationMinutes ?? 30}min). Killing.`);
21
+ killSession(session.id, session.engine, engines, "Exceeded max duration");
22
+ continue;
23
+ }
24
+ // Check cost
25
+ if (session.totalCost > maxCost) {
26
+ logger.warn(`Session ${session.id} exceeded max cost ($${session.totalCost.toFixed(2)} > $${maxCost.toFixed(2)}). Killing.`);
27
+ killSession(session.id, session.engine, engines, "Exceeded max cost");
28
+ }
29
+ }
30
+ }
31
+ function killSession(sessionId, engineName, engines, reason) {
32
+ const engine = engines.get(engineName);
33
+ if (engine && isInterruptibleEngine(engine)) {
34
+ engine.kill(sessionId, reason);
35
+ }
36
+ updateSession(sessionId, {
37
+ status: "error",
38
+ lastActivity: new Date().toISOString(),
39
+ lastError: reason,
40
+ });
41
+ }
42
+ //# sourceMappingURL=limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.js","sourceRoot":"","sources":["../../../src/sessions/limits.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAkB,EAClB,OAA4B,EAC5B,SAAgC;IAEhC,MAAM,OAAO,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,oDAAoD;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAC9E,MAAM,OAAO,GAAG,QAAQ,EAAE,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC;QAE1E,iBAAiB;QACjB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;QAC3D,MAAM,OAAO,GAAG,GAAG,GAAG,SAAS,CAAC;QAChC,IAAI,OAAO,GAAG,aAAa,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CACT,WAAW,OAAO,CAAC,EAAE,2BAA2B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,kBAAkB,IAAI,EAAE,gBAAgB,CAC9I,CAAC;YACF,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC;YAC1E,SAAS;QACX,CAAC;QAED,aAAa;QACb,IAAI,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CACT,WAAW,OAAO,CAAC,EAAE,wBAAwB,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAChH,CAAC;YACF,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,SAAiB,EACjB,UAAkB,EAClB,OAA4B,EAC5B,MAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvC,IAAI,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IACD,aAAa,CAAC,SAAS,EAAE;QACvB,MAAM,EAAE,OAAO;QACf,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACtC,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -16,7 +16,9 @@ export declare class SessionManager {
16
16
  setConnectorProvider(provider: () => Map<string, Connector>): void;
17
17
  getEngine(name: string): Engine | undefined;
18
18
  getQueue(): SessionQueue;
19
- route(msg: IncomingMessage, connector: Connector, opts?: RouteOptions): Promise<void>;
19
+ route(msg: IncomingMessage, connector: Connector, opts?: RouteOptions): Promise<{
20
+ sessionId: string;
21
+ } | void>;
20
22
  private runSession;
21
23
  handleCommand(msg: IncomingMessage, connector: Connector): Promise<boolean>;
22
24
  resetSession(sessionKey: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/sessions/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,MAAM,EACN,eAAe,EACf,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAS5B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM1C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,iBAAiB,CAAiD;gBAGxE,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,cAAc,GAAE,MAAM,EAAO;IAO/B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAIlE,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI3C,QAAQ,IAAI,YAAY;IAIlB,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;YAiDjF,UAAU;IA+HlB,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAoFjF,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;YAQxB,iBAAiB;CAiDhC"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/sessions/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,MAAM,EACN,eAAe,EACf,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAU5B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAQ1C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,iBAAiB,CAAiD;gBAGxE,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,cAAc,GAAE,MAAM,EAAO;IAO/B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAIlE,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI3C,QAAQ,IAAI,YAAY;IAIlB,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;YAqDzG,UAAU;IAiJlB,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAoFjF,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;YAQxB,iBAAiB;CAiDhC"}
@@ -1,10 +1,12 @@
1
- import { createSession, deleteSession, getSessionBySessionKey, insertMessage, updateSession, } from "./registry.js";
1
+ import { accumulateSessionCost, createSession, deleteSession, getSessionBySessionKey, insertMessage, updateSession, } from "./registry.js";
2
2
  import { buildContext } from "./context.js";
3
3
  import { SessionQueue } from "./queue.js";
4
4
  import { JINN_HOME } from "../shared/paths.js";
5
5
  import { logger } from "../shared/logger.js";
6
+ import { resolveEffort } from "../shared/effort.js";
6
7
  import { loadJobs } from "../cron/jobs.js";
7
8
  import { setCronJobEnabled, triggerCronJob } from "../cron/scheduler.js";
9
+ import { resolveMcpServers, writeMcpConfigFile, cleanupMcpConfigFile } from "../mcp/resolver.js";
8
10
  export class SessionManager {
9
11
  config;
10
12
  engines;
@@ -64,7 +66,9 @@ export class SessionManager {
64
66
  if (session.status === "running" && this.queue.isRunning(msg.sessionKey) && connector.getCapabilities().reactions) {
65
67
  await connector.addReaction(target, "clock1").catch(() => { });
66
68
  }
69
+ const sessionId = session.id;
67
70
  await this.queue.enqueue(msg.sessionKey, () => this.runSession(session, msg, attachmentPaths, connector, target, opts.employee));
71
+ return { sessionId };
68
72
  }
69
73
  async runSession(session, msg, attachments, connector, target, employee) {
70
74
  const engine = this.engines.get(session.engine);
@@ -79,10 +83,10 @@ export class SessionManager {
79
83
  if (decorateMessages && capabilities.reactions) {
80
84
  await connector.addReaction(target, "eyes").catch(() => { });
81
85
  }
82
- let thinkingTs;
83
- if (decorateMessages) {
84
- const placeholderResult = await connector.replyMessage(target, "_Thinking..._").catch(() => undefined);
85
- thinkingTs = typeof placeholderResult === "string" ? placeholderResult : undefined;
86
+ // Set native typing indicator (Slack assistant.threads.setStatus)
87
+ const threadTs = target.thread || target.messageTs;
88
+ if (decorateMessages && connector.setTypingStatus) {
89
+ await connector.setTypingStatus(target.channel, threadTs, "is thinking...").catch(() => { });
86
90
  }
87
91
  updateSession(session.id, {
88
92
  status: "running",
@@ -91,6 +95,8 @@ export class SessionManager {
91
95
  transportMeta: msg.transportMeta ?? null,
92
96
  lastActivity: new Date().toISOString(),
93
97
  });
98
+ // Resolve MCP config before try block so it's accessible in catch for cleanup
99
+ let mcpConfigPath;
94
100
  try {
95
101
  const systemPrompt = buildContext({
96
102
  source: session.source,
@@ -101,10 +107,18 @@ export class SessionManager {
101
107
  connectors: this.connectorNames,
102
108
  config: this.config,
103
109
  sessionId: session.id,
110
+ channelName: msg.transportMeta?.channelName || undefined,
104
111
  });
105
112
  const engineConfig = session.engine === "codex"
106
113
  ? this.config.engines.codex
107
114
  : this.config.engines.claude;
115
+ if (session.engine === "claude") {
116
+ const mcpConfig = resolveMcpServers(this.config.mcp, employee);
117
+ if (Object.keys(mcpConfig.mcpServers).length > 0) {
118
+ mcpConfigPath = writeMcpConfigFile(mcpConfig, session.id);
119
+ }
120
+ }
121
+ const effortLevel = resolveEffort(engineConfig, session, employee);
108
122
  const result = await engine.run({
109
123
  prompt: msg.text,
110
124
  resumeSessionId: session.engineSessionId ?? undefined,
@@ -112,8 +126,9 @@ export class SessionManager {
112
126
  cwd: JINN_HOME,
113
127
  bin: engineConfig.bin,
114
128
  model: session.model ?? engineConfig.model,
115
- effortLevel: engineConfig.effortLevel,
129
+ effortLevel,
116
130
  cliFlags: employee?.cliFlags,
131
+ mcpConfigPath,
117
132
  attachments: attachments.length > 0 ? attachments : undefined,
118
133
  sessionId: session.id,
119
134
  });
@@ -121,14 +136,18 @@ export class SessionManager {
121
136
  ? result.result
122
137
  : result.error || "(No response from engine)";
123
138
  insertMessage(session.id, "assistant", responseText);
124
- if (thinkingTs && capabilities.messageEdits) {
125
- await connector.editMessage({ ...target, messageTs: thinkingTs }, responseText).catch(async () => {
126
- await connector.replyMessage(target, responseText);
127
- });
139
+ // Clean up temp MCP config
140
+ if (mcpConfigPath)
141
+ cleanupMcpConfigFile(session.id);
142
+ // Track cost
143
+ if (result.cost || result.numTurns) {
144
+ accumulateSessionCost(session.id, result.cost ?? 0, result.numTurns ?? 1);
128
145
  }
129
- else {
130
- await connector.replyMessage(target, responseText);
146
+ // Clear typing indicator before sending response
147
+ if (decorateMessages && connector.setTypingStatus) {
148
+ await connector.setTypingStatus(target.channel, threadTs, "").catch(() => { });
131
149
  }
150
+ await connector.replyMessage(target, responseText);
132
151
  if (decorateMessages && capabilities.reactions) {
133
152
  await connector.removeReaction(target, "eyes").catch(() => { });
134
153
  }
@@ -147,17 +166,19 @@ export class SessionManager {
147
166
  catch (err) {
148
167
  const errMsg = err instanceof Error ? err.message : String(err);
149
168
  logger.error(`Session ${session.id} error: ${errMsg}`);
169
+ // Clean up temp MCP config on error
170
+ if (mcpConfigPath)
171
+ cleanupMcpConfigFile(session.id);
150
172
  updateSession(session.id, {
151
173
  status: "error",
152
174
  lastActivity: new Date().toISOString(),
153
175
  lastError: errMsg,
154
176
  });
155
- if (thinkingTs && capabilities.messageEdits) {
156
- await connector.editMessage({ ...target, messageTs: thinkingTs }, `Error: ${errMsg}`).catch(() => { });
157
- }
158
- else {
159
- await connector.replyMessage(target, `Error: ${errMsg}`).catch(() => { });
177
+ // Clear typing indicator on error
178
+ if (decorateMessages && connector.setTypingStatus) {
179
+ await connector.setTypingStatus(target.channel, threadTs, "").catch(() => { });
160
180
  }
181
+ await connector.replyMessage(target, `Error: ${errMsg}`).catch(() => { });
161
182
  if (decorateMessages && capabilities.reactions) {
162
183
  await connector.removeReaction(target, "eyes").catch(() => { });
163
184
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/sessions/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/sessions/manager.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface CreateSessionOpts {
15
15
  model?: string;
16
16
  title?: string;
17
17
  parentSessionId?: string;
18
+ effortLevel?: string;
18
19
  }
19
20
  export declare function createSession(opts: CreateSessionOpts & {
20
21
  prompt?: string;
@@ -45,7 +46,12 @@ export declare function listSessions(filter?: ListSessionsFilter): Session[];
45
46
  * Called on gateway startup — if the gateway is starting, no sessions can actually be running.
46
47
  */
47
48
  export declare function recoverStaleSessions(): number;
49
+ /**
50
+ * Accumulate cost and turns for a session (called after each engine run).
51
+ */
52
+ export declare function accumulateSessionCost(id: string, cost: number, turns: number): void;
48
53
  export declare function deleteSession(id: string): boolean;
54
+ export declare function deleteSessions(ids: string[]): number;
49
55
  export interface SessionMessage {
50
56
  id: string;
51
57
  role: string;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/sessions/registry.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAgF5E,wBAAgB,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAY1C;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CA2BvE;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAuDzG;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAI1D;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAE5E;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAI9E;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,GAAG,SAAS,CA2C3F;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,EAAE,CAqBnE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAO7C;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAKjD;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpF;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,EAAE,CAG/D"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/sessions/registry.ts"],"names":[],"mappings":"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"}