@seastudio/sdk 5.0.0 → 5.2.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/README.md CHANGED
@@ -19,9 +19,9 @@ pnpm add @seastudio/sdk
19
19
  | `@seastudio/sdk/mcp/seastudio` | SeaStudio host tools, notifications, and DTO types |
20
20
  | `@seastudio/sdk/styles/cosmos.css` | Shared design-system CSS |
21
21
 
22
- ## Identity Notification Contract
22
+ ## Authentication Session Contract
23
23
 
24
- External plugins can subscribe to host-owned identity state without receiving SeaArt tokens.
24
+ External plugins can subscribe to host-owned authentication session state without receiving SeaArt tokens.
25
25
 
26
26
  ```ts
27
27
  import { SeastudioNotifications, type AuthSessionChangedParams } from '@seastudio/sdk/mcp';
@@ -1,4 +1,4 @@
1
- import { getDefaultClient } from './chunk-TJ3CGHWJ.js';
1
+ import { getDefaultClient } from './chunk-6XG5DRQW.js';
2
2
 
3
3
  // src/mcp/seastudio/tools/file.ts
4
4
  function annotateTool(tool, annotations, outputSchema) {
@@ -537,29 +537,29 @@ var shellTools = [
537
537
  ];
538
538
 
539
539
  // src/mcp/seastudio/tools/browser.ts
540
- var SINGLETON_BROWSER_RUNTIME_SESSION_ID = "browser-runtime-session-default";
541
- var browserRuntimeSessionIdParam = {
542
- browserRuntimeSessionId: {
540
+ var SINGLETON_BROWSER_ID = "browser-default";
541
+ var browserIdParam = {
542
+ browserId: {
543
543
  type: "string",
544
- description: "Browser runtime session ID\uFF0C\u53EF\u9009\uFF1B\u7F3A\u7701\u4E3A\u5168\u5C40\u5355\u4F8B browser-runtime-session-default\u3002"
544
+ description: "Browser ID\uFF0C\u53EF\u9009\uFF1B\u7F3A\u7701\u4E3A\u5168\u5C40\u5355\u4F8B browser-default\u3002"
545
545
  }
546
546
  };
547
547
  var tabIdParam = {
548
548
  tabId: { type: "string", description: "Browser tab ID\u3002close/activate/navigate/goBack/goForward/reload/stop \u9700\u8981\u3002" }
549
549
  };
550
- var browserRuntimeTools = [
550
+ var browserTools = [
551
551
  annotateTool({
552
- name: "seastudio-browser_runtime_session",
553
- description: "\u8BFB\u53D6\u6216\u91CD\u7F6E\u5168\u5C40 BrowserRuntimeSession\uFF08\u5355\u4F8B\u5185\u6838\uFF09\u3002\u4F7F\u7528 action \u9009\u62E9 open\u3001list\u3001get \u6216 close\u3002open/get \u8FD4\u56DE\u540C\u4E00\u4E2A browserRuntimeSessionId\uFF1Bclose \u4F1A\u6E05\u7A7A\u5168\u90E8 tab \u4F46\u4FDD\u7559 runtime session \u58F3\u3002",
552
+ name: "seastudio-browser",
553
+ description: "\u8BFB\u53D6\u6216\u91CD\u7F6E Host Browser\u3002\u4F7F\u7528 action \u9009\u62E9 open\u3001list\u3001get \u6216 close\u3002open/get \u8FD4\u56DE\u540C\u4E00\u4E2A browserId\uFF1Bclose \u4F1A\u6E05\u7A7A\u5168\u90E8 tab\u3002",
554
554
  inputSchema: {
555
555
  type: "object",
556
556
  properties: {
557
557
  action: {
558
558
  type: "string",
559
559
  enum: ["open", "list", "get", "close"],
560
- description: "BrowserRuntimeSession \u52A8\u4F5C\u3002\u5168\u5C40\u4EC5\u4E00\u4E2A runtime session\uFF1BbrowserRuntimeSessionId \u53EF\u9009\u3002"
560
+ description: "Browser \u52A8\u4F5C\u3002\u5F53\u524D\u5168\u5C40\u53EA\u6709\u4E00\u4E2A browser\uFF1BbrowserId \u53EF\u9009\u3002"
561
561
  },
562
- ...browserRuntimeSessionIdParam,
562
+ ...browserIdParam,
563
563
  homepage: { type: "string", description: "open \u7684\u53EF\u9009\u9ED8\u8BA4\u9996\u9875\u3002" }
564
564
  },
565
565
  required: ["action"]
@@ -570,20 +570,20 @@ var browserRuntimeTools = [
570
570
  rawDomain: "browser"
571
571
  }),
572
572
  annotateTool({
573
- name: "seastudio-browser_runtime_tab",
574
- description: "\u7BA1\u7406\u5168\u5C40 BrowserRuntimeSession \u4E2D\u7684 tab\u3002\u4F7F\u7528 action \u9009\u62E9 create\u3001close\u3001activate\u3001navigate\u3001goBack\u3001goForward\u3001reload \u6216 stop\u3002\u6BCF\u4E2A Host Browser \u63D2\u4EF6\u5B9E\u4F8B\u901A\u5E38\u5BF9\u5E94\u4E00\u4E2A ownerInstanceId tab\u3002",
573
+ name: "seastudio-browser_tab",
574
+ description: "\u7BA1\u7406\u5168\u5C40 Browser \u4E2D\u7684 tab\u3002\u4F7F\u7528 action \u9009\u62E9 create\u3001close\u3001activate\u3001navigate\u3001goBack\u3001goForward\u3001reload \u6216 stop\u3002\u6BCF\u4E2A Host browser \u63D2\u4EF6\u5B9E\u4F8B\u901A\u5E38\u5BF9\u5E94\u4E00\u4E2A ownerInstanceId tab\u3002",
575
575
  inputSchema: {
576
576
  type: "object",
577
577
  properties: {
578
578
  action: {
579
579
  type: "string",
580
580
  enum: ["create", "close", "activate", "navigate", "goBack", "goForward", "reload", "stop"],
581
- description: "Browser tab \u52A8\u4F5C\u3002browserRuntimeSessionId \u53EF\u9009\uFF1Bcreate \u53EF\u4F20 ownerInstanceId \u7ED1\u5B9A Host \u63D2\u4EF6\u5B9E\u4F8B\u3002"
581
+ description: "Browser tab \u52A8\u4F5C\u3002browserId \u53EF\u9009\uFF1Bcreate \u53EF\u4F20 ownerInstanceId \u7ED1\u5B9A Host \u63D2\u4EF6\u5B9E\u4F8B\u3002"
582
582
  },
583
- ...browserRuntimeSessionIdParam,
583
+ ...browserIdParam,
584
584
  ...tabIdParam,
585
585
  url: { type: "string", description: "create \u7684\u521D\u59CB URL\uFF0C\u6216 navigate \u7684\u76EE\u6807 URL/\u641C\u7D22\u8BCD\u3002" },
586
- ownerInstanceId: { type: "string", description: "create \u65F6\u7ED1\u5B9A Host Browser \u63D2\u4EF6 instanceId\u3002" }
586
+ ownerInstanceId: { type: "string", description: "create \u65F6\u7ED1\u5B9A Host browser \u63D2\u4EF6 instanceId\u3002" }
587
587
  },
588
588
  required: ["action"]
589
589
  }
@@ -593,17 +593,17 @@ var browserRuntimeTools = [
593
593
  rawDomain: "browser"
594
594
  }),
595
595
  annotateTool({
596
- name: "seastudio-browser_runtime",
597
- description: "\u5904\u7406 Browser runtime \u4E0E UI viewport\u3001\u8BC1\u4E66\u9519\u8BEF\u548C\u9875\u9762\u811A\u672C\u6267\u884C\u76F8\u5173\u7684\u5BBF\u4E3B\u4EA4\u4E92\u3002",
596
+ name: "seastudio-browser_view",
597
+ description: "\u5904\u7406 Browser \u4E0E UI surface\u3001\u8BC1\u4E66\u9519\u8BEF\u548C\u9875\u9762\u811A\u672C\u6267\u884C\u76F8\u5173\u7684\u5BBF\u4E3B\u4EA4\u4E92\u3002",
598
598
  inputSchema: {
599
599
  type: "object",
600
600
  properties: {
601
601
  action: {
602
602
  type: "string",
603
603
  enum: ["bindViewport", "respondCertificate", "evaluate"],
604
- description: "Browser runtime \u52A8\u4F5C\u3002bindViewport \u9700\u8981 rect\uFF1BrespondCertificate \u9700\u8981 requestId \u548C allow\uFF1Bevaluate \u9700\u8981 tabId \u548C script\u3002"
604
+ description: "Browser host \u52A8\u4F5C\u3002bindViewport \u9700\u8981 rect\uFF1BrespondCertificate \u9700\u8981 requestId \u548C allow\uFF1Bevaluate \u9700\u8981 tabId \u548C script\u3002"
605
605
  },
606
- ...browserRuntimeSessionIdParam,
606
+ ...browserIdParam,
607
607
  ...tabIdParam,
608
608
  ownerInstanceId: { type: "string", description: "bindViewport \u7684 UI owner instance id\u3002" },
609
609
  rect: {
@@ -619,7 +619,7 @@ var browserRuntimeTools = [
619
619
  },
620
620
  requestId: { type: "string", description: "respondCertificate \u7684\u8BC1\u4E66\u9519\u8BEF\u8BF7\u6C42 ID\u3002" },
621
621
  allow: { type: "boolean", description: "respondCertificate \u662F\u5426\u7EE7\u7EED\u52A0\u8F7D\u8BE5\u8BC1\u4E66\u9519\u8BEF\u9875\u9762\u3002" },
622
- script: { type: "string", description: "evaluate \u8981\u5728 BrowserRuntime webview \u4E2D\u6267\u884C\u7684 JavaScript\u3002" },
622
+ script: { type: "string", description: "evaluate \u8981\u5728 Browser \u9875\u9762\u4E2D\u6267\u884C\u7684 JavaScript\u3002" },
623
623
  timeoutMs: { type: "number", description: "evaluate \u8D85\u65F6\u65F6\u95F4\uFF0C\u5355\u4F4D\u6BEB\u79D2\u3002" }
624
624
  },
625
625
  required: ["action"]
@@ -630,12 +630,12 @@ var browserRuntimeTools = [
630
630
  rawDomain: "browser"
631
631
  }),
632
632
  annotateTool({
633
- name: "seastudio-browser_runtime_show",
634
- description: "\u5728 Browser \u63D2\u4EF6\u4E2D\u663E\u793A\u6307\u5B9A URL\uFF08\u53EF\u89C6\u5316\uFF09\u3002\u4F1A\u6253\u5F00\u6216\u6FC0\u6D3B\u5BF9\u5E94 Host \u6807\u7B7E\u9875\uFF0C\u5E76\u628A\u9875\u9762\u5448\u73B0\u7ED9\u7528\u6237\u3002",
633
+ name: "seastudio-browser_show",
634
+ description: "\u5728 Host Browser \u4E2D\u663E\u793A\u6307\u5B9A URL\uFF08\u53EF\u89C6\u5316\uFF09\u3002\u4F1A\u6253\u5F00\u6216\u6FC0\u6D3B\u5BF9\u5E94 Host \u6807\u7B7E\u9875\uFF0C\u5E76\u628A\u9875\u9762\u5448\u73B0\u7ED9\u7528\u6237\u3002",
635
635
  inputSchema: {
636
636
  type: "object",
637
637
  properties: {
638
- url: { type: "string", description: "\u8981\u5728 Browser \u63D2\u4EF6\u4E2D\u663E\u793A\u7684 URL \u6216\u641C\u7D22\u8BCD\u3002" }
638
+ url: { type: "string", description: "\u8981\u5728 Host Browser \u4E2D\u663E\u793A\u7684 URL \u6216\u641C\u7D22\u8BCD\u3002" }
639
639
  },
640
640
  required: ["url"]
641
641
  }
@@ -890,40 +890,50 @@ var seastudio = {
890
890
  }
891
891
  },
892
892
  browser: {
893
- runtimeSession: {
894
- open: async (options = {}) => parseToolResult(await callTool("seastudio-browser_runtime_session", { action: "open", ...options })),
895
- list: async () => parseToolResult(await callTool("seastudio-browser_runtime_session", { action: "list" })),
896
- get: async (browserRuntimeSessionId = SINGLETON_BROWSER_RUNTIME_SESSION_ID) => parseToolResult(await callTool("seastudio-browser_runtime_session", { action: "get", browserRuntimeSessionId })),
897
- close: async (browserRuntimeSessionId = SINGLETON_BROWSER_RUNTIME_SESSION_ID) => parseToolResult(
898
- await callTool("seastudio-browser_runtime_session", { action: "close", browserRuntimeSessionId })
899
- )
900
- },
901
- runtimeTab: {
902
- create: async (browserRuntimeSessionId = SINGLETON_BROWSER_RUNTIME_SESSION_ID, url, ownerInstanceId) => parseToolResult(
903
- await callTool("seastudio-browser_runtime_tab", {
893
+ open: async (options = {}) => parseToolResult(await callTool("seastudio-browser", { action: "open", ...options })),
894
+ list: async () => parseToolResult(await callTool("seastudio-browser", { action: "list" })),
895
+ get: async (browserId = SINGLETON_BROWSER_ID) => parseToolResult(await callTool("seastudio-browser", { action: "get", browserId })),
896
+ close: async (browserId = SINGLETON_BROWSER_ID) => parseToolResult(
897
+ await callTool("seastudio-browser", { action: "close", browserId })
898
+ ),
899
+ show: async (url) => parseToolResult(
900
+ await callTool("seastudio-browser_show", { url })
901
+ ),
902
+ evaluate: async (browserId, tabId, script, timeoutMs) => parseToolResult(
903
+ await callTool("seastudio-browser_view", {
904
+ action: "evaluate",
905
+ browserId,
906
+ tabId,
907
+ script,
908
+ ...timeoutMs ? { timeoutMs } : {}
909
+ })
910
+ ),
911
+ tab: {
912
+ create: async (browserId = SINGLETON_BROWSER_ID, url, ownerInstanceId) => parseToolResult(
913
+ await callTool("seastudio-browser_tab", {
904
914
  action: "create",
905
- browserRuntimeSessionId,
915
+ browserId,
906
916
  ...url ? { url } : {},
907
917
  ...ownerInstanceId ? { ownerInstanceId } : {}
908
918
  })
909
919
  ),
910
- close: async (browserRuntimeSessionId, tabId) => parseToolResult(
911
- await callTool("seastudio-browser_runtime_tab", { action: "close", browserRuntimeSessionId, tabId })
920
+ close: async (browserId, tabId) => parseToolResult(
921
+ await callTool("seastudio-browser_tab", { action: "close", browserId, tabId })
912
922
  ),
913
- activate: async (browserRuntimeSessionId, tabId) => parseToolResult(
914
- await callTool("seastudio-browser_runtime_tab", { action: "activate", browserRuntimeSessionId, tabId })
923
+ activate: async (browserId, tabId) => parseToolResult(
924
+ await callTool("seastudio-browser_tab", { action: "activate", browserId, tabId })
915
925
  ),
916
- navigate: async (browserRuntimeSessionId, tabId, url) => parseToolResult(
917
- await callTool("seastudio-browser_runtime_tab", { action: "navigate", browserRuntimeSessionId, tabId, url })
926
+ navigate: async (browserId, tabId, url) => parseToolResult(
927
+ await callTool("seastudio-browser_tab", { action: "navigate", browserId, tabId, url })
918
928
  ),
919
- goBack: async (browserRuntimeSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_runtime_tab", { action: "goBack", browserRuntimeSessionId, tabId })),
920
- goForward: async (browserRuntimeSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_runtime_tab", { action: "goForward", browserRuntimeSessionId, tabId })),
921
- reload: async (browserRuntimeSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_runtime_tab", { action: "reload", browserRuntimeSessionId, tabId })),
922
- stop: async (browserRuntimeSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_runtime_tab", { action: "stop", browserRuntimeSessionId, tabId })),
929
+ goBack: async (browserId, tabId) => parseToolResult(await callTool("seastudio-browser_tab", { action: "goBack", browserId, tabId })),
930
+ goForward: async (browserId, tabId) => parseToolResult(await callTool("seastudio-browser_tab", { action: "goForward", browserId, tabId })),
931
+ reload: async (browserId, tabId) => parseToolResult(await callTool("seastudio-browser_tab", { action: "reload", browserId, tabId })),
932
+ stop: async (browserId, tabId) => parseToolResult(await callTool("seastudio-browser_tab", { action: "stop", browserId, tabId })),
923
933
  getOrCreateForInstance: async (ownerInstanceId, url) => parseToolResult(
924
- await callTool("seastudio-browser_runtime_tab", {
934
+ await callTool("seastudio-browser_tab", {
925
935
  action: "create",
926
- browserRuntimeSessionId: SINGLETON_BROWSER_RUNTIME_SESSION_ID,
936
+ browserId: SINGLETON_BROWSER_ID,
927
937
  ownerInstanceId,
928
938
  ...url ? { url } : {}
929
939
  })
@@ -931,31 +941,17 @@ var seastudio = {
931
941
  },
932
942
  viewport: {
933
943
  bind: async (rect, options = {}) => parseToolResult(
934
- await callTool("seastudio-browser_runtime", {
944
+ await callTool("seastudio-browser_view", {
935
945
  action: "bindViewport",
936
- browserRuntimeSessionId: options.browserRuntimeSessionId ?? SINGLETON_BROWSER_RUNTIME_SESSION_ID,
946
+ browserId: options.browserId ?? SINGLETON_BROWSER_ID,
937
947
  rect,
938
948
  ...options.ownerInstanceId ? { ownerInstanceId: options.ownerInstanceId } : {}
939
949
  })
940
950
  )
941
951
  },
942
- runtime: {
943
- show: async (url) => parseToolResult(
944
- await callTool("seastudio-browser_runtime_show", { url })
945
- ),
946
- evaluate: async (browserRuntimeSessionId, tabId, script, timeoutMs) => parseToolResult(
947
- await callTool("seastudio-browser_runtime", {
948
- action: "evaluate",
949
- browserRuntimeSessionId,
950
- tabId,
951
- script,
952
- ...timeoutMs ? { timeoutMs } : {}
953
- })
954
- )
955
- },
956
952
  certificate: {
957
- respond: async (browserRuntimeSessionId, requestId, allow) => parseToolResult(
958
- await callTool("seastudio-browser_runtime", { action: "respondCertificate", browserRuntimeSessionId, requestId, allow })
953
+ respond: async (browserId, requestId, allow) => parseToolResult(
954
+ await callTool("seastudio-browser_view", { action: "respondCertificate", browserId, requestId, allow })
959
955
  )
960
956
  }
961
957
  }
@@ -1200,14 +1196,14 @@ var SeastudioNotifications = {
1200
1196
  PROPOSAL_FEEDBACK: "seastudio:proposal-feedback",
1201
1197
  /** 插件实例请求更新宿主 plugin tab 标题 */
1202
1198
  PLUGIN_TAB_TITLE_CHANGED: "plugin:tab-title_changed",
1203
- /** BrowserRuntimeSession 状态变化 */
1204
- BROWSER_RUNTIME_SESSION_CHANGED: "browser-runtime:session_changed",
1205
- /** BrowserRuntimeSession 关闭 */
1206
- BROWSER_RUNTIME_SESSION_CLOSED: "browser-runtime:session_closed",
1207
- /** BrowserRuntimeSession 证书错误,需要客户端 UI 决策 */
1208
- BROWSER_RUNTIME_CERTIFICATE_ERROR: "browser-runtime:certificate_error",
1209
- /** BrowserRuntimeSession 收到网页新标签请求 */
1210
- BROWSER_RUNTIME_NEW_TAB_REQUESTED: "browser-runtime:new_tab_requested",
1199
+ /** Browser 状态变化 */
1200
+ BROWSER_STATE_CHANGED: "browser:state_changed",
1201
+ /** Browser 关闭 */
1202
+ BROWSER_CLOSED: "browser:closed",
1203
+ /** Browser 证书错误,需要客户端 UI 决策 */
1204
+ BROWSER_CERTIFICATE_ERROR: "browser:certificate_error",
1205
+ /** Browser 收到网页新标签请求 */
1206
+ BROWSER_NEW_TAB_REQUESTED: "browser:new_tab_requested",
1211
1207
  /**
1212
1208
  * Agent 对话 session:新建。消息历史仍由 Agent 前端持有,宿主仅同步列表用于侧栏。
1213
1209
  * 通常由 Agent 通过 notifications/publish 发出;其他订阅者(含 host-ui)可据此更新 UI。
@@ -1256,6 +1252,10 @@ var SeastudioNotifications = {
1256
1252
  HOST_APP_VISIBILITY: "host:app_visibility",
1257
1253
  /** Host MCP tools/list 发生变化(例如 Seaflow bridge 动态注册工具) */
1258
1254
  RUNTIME_TOOLS_CHANGED: "mcp:runtime_tools_changed",
1255
+ /** Host 精确路由到插件实例的工具调用请求 */
1256
+ PLUGIN_TOOL_CALL: "plugin:tool_call",
1257
+ /** 插件实例返回给 Host 的工具调用结果 */
1258
+ PLUGIN_TOOL_RESULT: "plugin:tool_result",
1259
1259
  /** 主程序用户登录态变化;不包含访问令牌 */
1260
1260
  AUTH_SESSION_CHANGED: "auth:session_changed"
1261
1261
  };
@@ -1272,8 +1272,8 @@ var allTools = [
1272
1272
  ...agentTabTools,
1273
1273
  ...projectTools,
1274
1274
  ...skillTools,
1275
- ...browserRuntimeTools
1275
+ ...browserTools
1276
1276
  ];
1277
1277
  var tools = allTools;
1278
1278
 
1279
- export { SINGLETON_BROWSER_RUNTIME_SESSION_ID, SeastudioNotifications, SeastudioRequests, agentManagementTools, agentTabTools, allTools, annotateTool, batchFlattenCopyEvidenceOutputSchema, browserRuntimeTools, callTool, callToolText, dualPathEvidenceOutputSchema, editorTools, fileDownloadEvidenceOutputSchema, fileSaveAsEvidenceOutputSchema, fileTools, fileUrlEvidenceOutputSchema, gitTools, pluginManagementTools, pluginTabTools, projectTools, request, rootedPathEvidenceOutputSchema, rootedWriteEvidenceOutputSchema, runOneShotShellCommand, seastudio, shellSessionCloseEvidenceOutputSchema, shellSessionOpenEvidenceOutputSchema, shellSessionRunEvidenceOutputSchema, shellSessionSignalEvidenceOutputSchema, shellSessionSnapshotEvidenceOutputSchema, shellTools, skillTools, tools };
1279
+ export { SINGLETON_BROWSER_ID, SeastudioNotifications, SeastudioRequests, agentManagementTools, agentTabTools, allTools, annotateTool, batchFlattenCopyEvidenceOutputSchema, browserTools, callTool, callToolText, dualPathEvidenceOutputSchema, editorTools, fileDownloadEvidenceOutputSchema, fileSaveAsEvidenceOutputSchema, fileTools, fileUrlEvidenceOutputSchema, gitTools, pluginManagementTools, pluginTabTools, projectTools, request, rootedPathEvidenceOutputSchema, rootedWriteEvidenceOutputSchema, runOneShotShellCommand, seastudio, shellSessionCloseEvidenceOutputSchema, shellSessionOpenEvidenceOutputSchema, shellSessionRunEvidenceOutputSchema, shellSessionSignalEvidenceOutputSchema, shellSessionSnapshotEvidenceOutputSchema, shellTools, skillTools, tools };
@@ -204,12 +204,6 @@ function setDefaultTransport(transport) {
204
204
  }
205
205
 
206
206
  // src/mcp/core/client.ts
207
- var LONG_RUNNING_TOOL_TIMEOUTS = /* @__PURE__ */ new Set([
208
- "seaflow-canvas_task_wait_result",
209
- "seaflow-canvas_execute_node_and_wait",
210
- "seaflow-canvas_task_reconnect"
211
- ]);
212
- var LONG_RUNNING_TOOL_TIMEOUT_MS = 125e3;
213
207
  var readPositiveTimeout = (value) => {
214
208
  if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
215
209
  return null;
@@ -286,9 +280,6 @@ var MCPClient = class {
286
280
  if (argTimeout != null) {
287
281
  return Math.max(this.timeout, argTimeout + 5e3);
288
282
  }
289
- if (LONG_RUNNING_TOOL_TIMEOUTS.has(name)) {
290
- return Math.max(this.timeout, LONG_RUNNING_TOOL_TIMEOUT_MS);
291
- }
292
283
  return this.timeout;
293
284
  }
294
285
  async callTool(name, args = {}, options) {
@@ -206,12 +206,6 @@ function setDefaultTransport(transport) {
206
206
  }
207
207
 
208
208
  // src/mcp/core/client.ts
209
- var LONG_RUNNING_TOOL_TIMEOUTS = /* @__PURE__ */ new Set([
210
- "seaflow-canvas_task_wait_result",
211
- "seaflow-canvas_execute_node_and_wait",
212
- "seaflow-canvas_task_reconnect"
213
- ]);
214
- var LONG_RUNNING_TOOL_TIMEOUT_MS = 125e3;
215
209
  var readPositiveTimeout = (value) => {
216
210
  if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
217
211
  return null;
@@ -288,9 +282,6 @@ var MCPClient = class {
288
282
  if (argTimeout != null) {
289
283
  return Math.max(this.timeout, argTimeout + 5e3);
290
284
  }
291
- if (LONG_RUNNING_TOOL_TIMEOUTS.has(name)) {
292
- return Math.max(this.timeout, LONG_RUNNING_TOOL_TIMEOUT_MS);
293
- }
294
285
  return this.timeout;
295
286
  }
296
287
  async callTool(name, args = {}, options) {
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkEGCXEVBD_cjs = require('./chunk-EGCXEVBD.cjs');
4
- var chunk3I7UM66P_cjs = require('./chunk-3I7UM66P.cjs');
3
+ var chunkLWANMGZ7_cjs = require('./chunk-LWANMGZ7.cjs');
4
+ var chunk77OAWBLL_cjs = require('./chunk-77OAWBLL.cjs');
5
5
 
6
6
  // src/mcp/index.ts
7
7
  async function loadPlugin(pluginName) {
@@ -11,11 +11,11 @@ async function loadPlugin(pluginName) {
11
11
  throw new Error(`Unknown plugin: ${pluginName}. \u63D2\u4EF6 MCP \u4E0D\u518D\u901A\u8FC7 SDK \u9759\u6001\u5BFC\u5165\u3002`);
12
12
  }
13
13
  var MCP_PACKAGES = [
14
- { id: "seastudio", name: "SeaStudio", description: "\u6587\u4EF6/Shell/Git/\u63D2\u4EF6\u57FA\u7840\u80FD\u529B", tools: chunkEGCXEVBD_cjs.allTools }
14
+ { id: "seastudio", name: "SeaStudio", description: "\u6587\u4EF6/Shell/Git/\u63D2\u4EF6\u57FA\u7840\u80FD\u529B", tools: chunkLWANMGZ7_cjs.allTools }
15
15
  ];
16
16
  function mcpToolToOpenAI(tool) {
17
- const normalizedTool = chunk3I7UM66P_cjs.normalizeMCPTool(tool);
18
- const outputSchema = normalizedTool.outputSchema ? chunk3I7UM66P_cjs.normalizeMCPToolObjectSchema(normalizedTool.outputSchema) : void 0;
17
+ const normalizedTool = chunk77OAWBLL_cjs.normalizeMCPTool(tool);
18
+ const outputSchema = normalizedTool.outputSchema ? chunk77OAWBLL_cjs.normalizeMCPToolObjectSchema(normalizedTool.outputSchema) : void 0;
19
19
  return {
20
20
  type: "function",
21
21
  ...normalizedTool.annotations ? { annotations: { ...normalizedTool.annotations } } : {},
@@ -23,13 +23,13 @@ function mcpToolToOpenAI(tool) {
23
23
  function: {
24
24
  name: normalizedTool.name,
25
25
  description: normalizedTool.description,
26
- parameters: chunk3I7UM66P_cjs.normalizeMCPToolObjectSchema(normalizedTool.inputSchema),
26
+ parameters: chunk77OAWBLL_cjs.normalizeMCPToolObjectSchema(normalizedTool.inputSchema),
27
27
  ...outputSchema ? { outputSchema } : {}
28
28
  }
29
29
  };
30
30
  }
31
31
  function listAllTools() {
32
- return [...chunkEGCXEVBD_cjs.allTools];
32
+ return [...chunkLWANMGZ7_cjs.allTools];
33
33
  }
34
34
  function toPackageName(source) {
35
35
  if (source === "seastudio") {
@@ -54,7 +54,7 @@ function normalizeAvailableTool(raw) {
54
54
  if (typeof tool.description !== "string") {
55
55
  tool.description = tool.description == null ? "" : String(tool.description);
56
56
  }
57
- const normalized = chunk3I7UM66P_cjs.normalizeMCPTool(tool);
57
+ const normalized = chunk77OAWBLL_cjs.normalizeMCPTool(tool);
58
58
  const source = typeof tool.source === "string" && tool.source.trim() ? tool.source.trim() : "seastudio";
59
59
  return {
60
60
  ...normalized,
@@ -62,13 +62,13 @@ function normalizeAvailableTool(raw) {
62
62
  };
63
63
  }
64
64
  var MCP_TOOL_PACKAGE_INDEX = new Map(
65
- chunkEGCXEVBD_cjs.allTools.map((tool) => [tool.name, "seastudio"])
65
+ chunkLWANMGZ7_cjs.allTools.map((tool) => [tool.name, "seastudio"])
66
66
  );
67
67
  function getMCPToolPackageIndex() {
68
68
  return new Map(MCP_TOOL_PACKAGE_INDEX);
69
69
  }
70
70
  async function listAvailableTools() {
71
- const result = await chunk3I7UM66P_cjs.getDefaultClient().request("tools/list");
71
+ const result = await chunk77OAWBLL_cjs.getDefaultClient().request("tools/list");
72
72
  const rawTools = Array.isArray(result?.tools) ? result.tools : [];
73
73
  return rawTools.map(normalizeAvailableTool).filter((tool) => Boolean(tool));
74
74
  }