@seastudio/sdk 3.6.0 → 3.7.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.
@@ -1,4 +1,4 @@
1
- import { allTools } from './chunk-UFFMPHL3.js';
1
+ import { allTools } from './chunk-GZRP7JKO.js';
2
2
  import { normalizeMCPTool, normalizeMCPToolObjectSchema, getDefaultClient } from './chunk-TJ3CGHWJ.js';
3
3
 
4
4
  // src/mcp/index.ts
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkNP6AI7I4_cjs = require('./chunk-NP6AI7I4.cjs');
3
+ var chunkHAFMJ47Q_cjs = require('./chunk-HAFMJ47Q.cjs');
4
4
  var chunk3I7UM66P_cjs = require('./chunk-3I7UM66P.cjs');
5
5
 
6
6
  // src/mcp/index.ts
@@ -11,7 +11,7 @@ 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/AIGC \u57FA\u7840\u80FD\u529B", tools: chunkNP6AI7I4_cjs.allTools }
14
+ { id: "seastudio", name: "SeaStudio", description: "\u6587\u4EF6/Shell/AIGC \u57FA\u7840\u80FD\u529B", tools: chunkHAFMJ47Q_cjs.allTools }
15
15
  ];
16
16
  function mcpToolToOpenAI(tool) {
17
17
  const normalizedTool = chunk3I7UM66P_cjs.normalizeMCPTool(tool);
@@ -29,7 +29,7 @@ function mcpToolToOpenAI(tool) {
29
29
  };
30
30
  }
31
31
  function listAllTools() {
32
- return [...chunkNP6AI7I4_cjs.allTools];
32
+ return [...chunkHAFMJ47Q_cjs.allTools];
33
33
  }
34
34
  function toPackageName(source) {
35
35
  if (source === "seastudio") {
@@ -62,7 +62,7 @@ function normalizeAvailableTool(raw) {
62
62
  };
63
63
  }
64
64
  var MCP_TOOL_PACKAGE_INDEX = new Map(
65
- chunkNP6AI7I4_cjs.allTools.map((tool) => [tool.name, "seastudio"])
65
+ chunkHAFMJ47Q_cjs.allTools.map((tool) => [tool.name, "seastudio"])
66
66
  );
67
67
  function getMCPToolPackageIndex() {
68
68
  return new Map(MCP_TOOL_PACKAGE_INDEX);
@@ -1003,20 +1003,46 @@ var seastudio = {
1003
1003
  }
1004
1004
  },
1005
1005
  browser: {
1006
- getState: async () => parseToolResult(await callTool("browser.getState")),
1007
- createTab: async (url) => parseToolResult(await callTool("browser.createTab", { url })),
1008
- closeTab: async (tabId) => parseToolResult(await callTool("browser.closeTab", { tabId })),
1009
- activateTab: async (tabId) => parseToolResult(await callTool("browser.activateTab", { tabId })),
1010
- navigate: async (tabId, url) => parseToolResult(await callTool("browser.navigate", { tabId, url })),
1011
- goBack: async (tabId) => parseToolResult(await callTool("browser.goBack", { tabId })),
1012
- goForward: async (tabId) => parseToolResult(await callTool("browser.goForward", { tabId })),
1013
- reload: async (tabId) => parseToolResult(await callTool("browser.reload", { tabId })),
1014
- stop: async (tabId) => parseToolResult(await callTool("browser.stop", { tabId })),
1015
- setViewportRect: async (tabId, rect) => parseToolResult(await callTool("browser.setViewportRect", {
1016
- ...tabId ? { tabId } : {},
1017
- rect
1018
- })),
1019
- respondToCertificateError: async (requestId, allow) => parseToolResult(await callTool("browser.respondToCertificateError", { requestId, allow }))
1006
+ session: {
1007
+ open: async (options = {}) => parseToolResult(await callTool("seastudio-browser_session_open", { ...options })),
1008
+ list: async () => parseToolResult(await callTool("seastudio-browser_session_list")),
1009
+ get: async (browserSessionId) => parseToolResult(await callTool("seastudio-browser_session_get", { browserSessionId })),
1010
+ close: async (browserSessionId) => parseToolResult(
1011
+ await callTool("seastudio-browser_session_close", { browserSessionId })
1012
+ )
1013
+ },
1014
+ tab: {
1015
+ create: async (browserSessionId, url) => parseToolResult(
1016
+ await callTool("seastudio-browser_tab_create", { browserSessionId, url })
1017
+ ),
1018
+ close: async (browserSessionId, tabId) => parseToolResult(
1019
+ await callTool("seastudio-browser_tab_close", { browserSessionId, tabId })
1020
+ ),
1021
+ activate: async (browserSessionId, tabId) => parseToolResult(
1022
+ await callTool("seastudio-browser_tab_activate", { browserSessionId, tabId })
1023
+ ),
1024
+ navigate: async (browserSessionId, tabId, url) => parseToolResult(
1025
+ await callTool("seastudio-browser_tab_navigate", { browserSessionId, tabId, url })
1026
+ ),
1027
+ goBack: async (browserSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_tab_go_back", { browserSessionId, tabId })),
1028
+ goForward: async (browserSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_tab_go_forward", { browserSessionId, tabId })),
1029
+ reload: async (browserSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_tab_reload", { browserSessionId, tabId })),
1030
+ stop: async (browserSessionId, tabId) => parseToolResult(await callTool("seastudio-browser_tab_stop", { browserSessionId, tabId }))
1031
+ },
1032
+ viewport: {
1033
+ bind: async (browserSessionId, rect, ownerInstanceId) => parseToolResult(
1034
+ await callTool("seastudio-browser_viewport_bind", {
1035
+ browserSessionId,
1036
+ rect,
1037
+ ...ownerInstanceId ? { ownerInstanceId } : {}
1038
+ })
1039
+ )
1040
+ },
1041
+ certificate: {
1042
+ respond: async (browserSessionId, requestId, allow) => parseToolResult(
1043
+ await callTool("seastudio-browser_certificate_respond", { browserSessionId, requestId, allow })
1044
+ )
1045
+ }
1020
1046
  }
1021
1047
  };
1022
1048
  async function runOneShotShellCommand(command, options = {}) {
@@ -1461,128 +1487,204 @@ var skillTools = [
1461
1487
  ];
1462
1488
 
1463
1489
  // src/mcp/seastudio/tools-browser.ts
1490
+ var browserSessionIdParam = {
1491
+ browserSessionId: { type: "string", description: "Browser session ID" }
1492
+ };
1464
1493
  var tabIdParam = {
1465
- tabId: { type: "string", description: "Browser runtime tab ID" }
1494
+ tabId: { type: "string", description: "Browser tab ID" }
1466
1495
  };
1467
1496
  var browserRuntimeTools = [
1468
1497
  annotateTool({
1469
- name: "browser.getState",
1470
- description: "\u8BFB\u53D6\u5F53\u524D browser runtime \u6807\u7B7E\u9875\u72B6\u6001\u3002",
1498
+ name: "seastudio-browser_session_open",
1499
+ description: "\u521B\u5EFA\u6216\u6253\u5F00\u4E00\u4E2A\u5BBF\u4E3B Browser Session\uFF0C\u8FD4\u56DE browserSessionId\u3002Session \u53EF\u88AB agent \u548C Browser \u63D2\u4EF6\u5171\u540C\u64CD\u4F5C\u3002",
1500
+ inputSchema: {
1501
+ type: "object",
1502
+ properties: {
1503
+ label: { type: "string", description: "\u53EF\u9009 session \u663E\u793A\u540D\u79F0\u3002" },
1504
+ partitionKey: { type: "string", description: "\u53EF\u9009\u7F51\u7AD9\u6570\u636E\u5206\u533A key\uFF1B\u76F8\u540C key \u5171\u4EAB cookie/localStorage\u3002" },
1505
+ homepage: { type: "string", description: "\u53EF\u9009\u9ED8\u8BA4\u9996\u9875\u3002" }
1506
+ }
1507
+ }
1508
+ }, {
1509
+ operationKind: "mutate",
1510
+ requiresExecutionEvidence: false,
1511
+ rawDomain: "browser"
1512
+ }),
1513
+ annotateTool({
1514
+ name: "seastudio-browser_session_list",
1515
+ description: "\u5217\u51FA\u5F53\u524D\u6240\u6709 Browser Session\u3002",
1471
1516
  inputSchema: {
1472
1517
  type: "object",
1473
1518
  properties: {}
1474
1519
  }
1475
1520
  }, {
1476
1521
  operationKind: "read",
1477
- requiresExecutionEvidence: false
1522
+ requiresExecutionEvidence: false,
1523
+ rawDomain: "browser"
1524
+ }),
1525
+ annotateTool({
1526
+ name: "seastudio-browser_session_get",
1527
+ description: "\u8BFB\u53D6\u6307\u5B9A Browser Session \u7684\u5F53\u524D\u72B6\u6001\u3002",
1528
+ inputSchema: {
1529
+ type: "object",
1530
+ properties: browserSessionIdParam,
1531
+ required: ["browserSessionId"]
1532
+ }
1533
+ }, {
1534
+ operationKind: "read",
1535
+ requiresExecutionEvidence: false,
1536
+ rawDomain: "browser"
1537
+ }),
1538
+ annotateTool({
1539
+ name: "seastudio-browser_session_close",
1540
+ description: "\u5173\u95ED Browser Session \u5E76\u91CA\u653E\u5176 tabs \u4E0E surface \u7ED1\u5B9A\u3002",
1541
+ inputSchema: {
1542
+ type: "object",
1543
+ properties: browserSessionIdParam,
1544
+ required: ["browserSessionId"]
1545
+ }
1546
+ }, {
1547
+ operationKind: "mutate",
1548
+ requiresExecutionEvidence: false,
1549
+ rawDomain: "browser"
1478
1550
  }),
1479
1551
  annotateTool({
1480
- name: "browser.createTab",
1481
- description: "\u5728\u5BBF\u4E3B browser runtime \u4E2D\u521B\u5EFA\u4E00\u4E2A\u771F\u5B9E webview \u6807\u7B7E\u9875\uFF0C\u53EF\u9009\u4F20\u5165\u521D\u59CB URL\u3002",
1552
+ name: "seastudio-browser_tab_create",
1553
+ description: "\u5728 Browser Session \u4E2D\u521B\u5EFA\u4E00\u4E2A tab\u3002",
1482
1554
  inputSchema: {
1483
1555
  type: "object",
1484
1556
  properties: {
1485
- url: { type: "string", description: "\u521D\u59CB URL\uFF1B\u4E3A\u7A7A\u65F6\u7531\u5BBF\u4E3B\u4F7F\u7528\u9ED8\u8BA4\u9996\u9875\u3002" }
1486
- }
1557
+ ...browserSessionIdParam,
1558
+ url: { type: "string", description: "\u521D\u59CB URL\uFF1B\u4E3A\u7A7A\u65F6\u4F7F\u7528 session homepage\u3002" }
1559
+ },
1560
+ required: ["browserSessionId"]
1487
1561
  }
1488
1562
  }, {
1489
1563
  operationKind: "mutate",
1490
- requiresExecutionEvidence: false
1564
+ requiresExecutionEvidence: false,
1565
+ rawDomain: "browser"
1491
1566
  }),
1492
1567
  annotateTool({
1493
- name: "browser.closeTab",
1494
- description: "\u5173\u95ED browser runtime \u6807\u7B7E\u9875\u3002",
1568
+ name: "seastudio-browser_tab_close",
1569
+ description: "\u5173\u95ED Browser Session \u4E2D\u7684 tab\u3002",
1495
1570
  inputSchema: {
1496
1571
  type: "object",
1497
- properties: tabIdParam,
1498
- required: ["tabId"]
1572
+ properties: {
1573
+ ...browserSessionIdParam,
1574
+ ...tabIdParam
1575
+ },
1576
+ required: ["browserSessionId", "tabId"]
1499
1577
  }
1500
1578
  }, {
1501
1579
  operationKind: "mutate",
1502
- requiresExecutionEvidence: false
1580
+ requiresExecutionEvidence: false,
1581
+ rawDomain: "browser"
1503
1582
  }),
1504
1583
  annotateTool({
1505
- name: "browser.activateTab",
1506
- description: "\u6FC0\u6D3B browser runtime \u6807\u7B7E\u9875\u3002",
1584
+ name: "seastudio-browser_tab_activate",
1585
+ description: "\u6FC0\u6D3B Browser Session \u4E2D\u7684 tab\u3002",
1507
1586
  inputSchema: {
1508
1587
  type: "object",
1509
- properties: tabIdParam,
1510
- required: ["tabId"]
1588
+ properties: {
1589
+ ...browserSessionIdParam,
1590
+ ...tabIdParam
1591
+ },
1592
+ required: ["browserSessionId", "tabId"]
1511
1593
  }
1512
1594
  }, {
1513
1595
  operationKind: "mutate",
1514
- requiresExecutionEvidence: false
1596
+ requiresExecutionEvidence: false,
1597
+ rawDomain: "browser"
1515
1598
  }),
1516
1599
  annotateTool({
1517
- name: "browser.navigate",
1518
- description: "\u8BA9 browser runtime \u6807\u7B7E\u9875\u5BFC\u822A\u5230\u6307\u5B9A URL \u6216\u641C\u7D22\u8BCD\u3002",
1600
+ name: "seastudio-browser_tab_navigate",
1601
+ description: "\u8BA9 Browser Session \u4E2D\u7684 tab \u5BFC\u822A\u5230 URL \u6216\u641C\u7D22\u8BCD\u3002",
1519
1602
  inputSchema: {
1520
1603
  type: "object",
1521
1604
  properties: {
1605
+ ...browserSessionIdParam,
1522
1606
  ...tabIdParam,
1523
1607
  url: { type: "string", description: "\u76EE\u6807 URL \u6216\u641C\u7D22\u8BCD\u3002" }
1524
1608
  },
1525
- required: ["tabId", "url"]
1609
+ required: ["browserSessionId", "tabId", "url"]
1526
1610
  }
1527
1611
  }, {
1528
1612
  operationKind: "mutate",
1529
- requiresExecutionEvidence: false
1613
+ requiresExecutionEvidence: false,
1614
+ rawDomain: "browser"
1530
1615
  }),
1531
1616
  annotateTool({
1532
- name: "browser.goBack",
1533
- description: "\u8BA9 browser runtime \u6807\u7B7E\u9875\u540E\u9000\u3002",
1617
+ name: "seastudio-browser_tab_go_back",
1618
+ description: "\u8BA9 Browser Session \u4E2D\u7684 tab \u540E\u9000\u3002",
1534
1619
  inputSchema: {
1535
1620
  type: "object",
1536
- properties: tabIdParam,
1537
- required: ["tabId"]
1621
+ properties: {
1622
+ ...browserSessionIdParam,
1623
+ ...tabIdParam
1624
+ },
1625
+ required: ["browserSessionId", "tabId"]
1538
1626
  }
1539
1627
  }, {
1540
1628
  operationKind: "mutate",
1541
- requiresExecutionEvidence: false
1629
+ requiresExecutionEvidence: false,
1630
+ rawDomain: "browser"
1542
1631
  }),
1543
1632
  annotateTool({
1544
- name: "browser.goForward",
1545
- description: "\u8BA9 browser runtime \u6807\u7B7E\u9875\u524D\u8FDB\u3002",
1633
+ name: "seastudio-browser_tab_go_forward",
1634
+ description: "\u8BA9 Browser Session \u4E2D\u7684 tab \u524D\u8FDB\u3002",
1546
1635
  inputSchema: {
1547
1636
  type: "object",
1548
- properties: tabIdParam,
1549
- required: ["tabId"]
1637
+ properties: {
1638
+ ...browserSessionIdParam,
1639
+ ...tabIdParam
1640
+ },
1641
+ required: ["browserSessionId", "tabId"]
1550
1642
  }
1551
1643
  }, {
1552
1644
  operationKind: "mutate",
1553
- requiresExecutionEvidence: false
1645
+ requiresExecutionEvidence: false,
1646
+ rawDomain: "browser"
1554
1647
  }),
1555
1648
  annotateTool({
1556
- name: "browser.reload",
1557
- description: "\u5237\u65B0 browser runtime \u6807\u7B7E\u9875\u3002",
1649
+ name: "seastudio-browser_tab_reload",
1650
+ description: "\u5237\u65B0 Browser Session \u4E2D\u7684 tab\u3002",
1558
1651
  inputSchema: {
1559
1652
  type: "object",
1560
- properties: tabIdParam,
1561
- required: ["tabId"]
1653
+ properties: {
1654
+ ...browserSessionIdParam,
1655
+ ...tabIdParam
1656
+ },
1657
+ required: ["browserSessionId", "tabId"]
1562
1658
  }
1563
1659
  }, {
1564
1660
  operationKind: "mutate",
1565
- requiresExecutionEvidence: false
1661
+ requiresExecutionEvidence: false,
1662
+ rawDomain: "browser"
1566
1663
  }),
1567
1664
  annotateTool({
1568
- name: "browser.stop",
1569
- description: "\u505C\u6B62 browser runtime \u6807\u7B7E\u9875\u52A0\u8F7D\u3002",
1665
+ name: "seastudio-browser_tab_stop",
1666
+ description: "\u505C\u6B62 Browser Session \u4E2D\u7684 tab \u52A0\u8F7D\u3002",
1570
1667
  inputSchema: {
1571
1668
  type: "object",
1572
- properties: tabIdParam,
1573
- required: ["tabId"]
1669
+ properties: {
1670
+ ...browserSessionIdParam,
1671
+ ...tabIdParam
1672
+ },
1673
+ required: ["browserSessionId", "tabId"]
1574
1674
  }
1575
1675
  }, {
1576
1676
  operationKind: "mutate",
1577
- requiresExecutionEvidence: false
1677
+ requiresExecutionEvidence: false,
1678
+ rawDomain: "browser"
1578
1679
  }),
1579
1680
  annotateTool({
1580
- name: "browser.setViewportRect",
1581
- description: "\u4E0A\u62A5\u63D2\u4EF6 UI \u4E2D browser viewport \u7684\u4F4D\u7F6E\u5C3A\u5BF8\uFF0C\u8BA9\u5BBF\u4E3B\u5B9A\u4F4D\u771F\u5B9E webview\u3002",
1681
+ name: "seastudio-browser_viewport_bind",
1682
+ description: "\u628A\u4E00\u4E2A Browser Session \u7ED1\u5B9A\u5230\u5F53\u524D UI viewport\uFF0C\u7528\u4E8E\u5BBF\u4E3B\u6E32\u67D3\u771F\u5B9E webview surface\u3002",
1582
1683
  inputSchema: {
1583
1684
  type: "object",
1584
1685
  properties: {
1585
- tabId: { type: "string", description: "\u5F53\u524D tab ID\uFF0C\u53EF\u4E3A\u7A7A\u3002" },
1686
+ ...browserSessionIdParam,
1687
+ ownerInstanceId: { type: "string", description: "\u53EF\u9009 UI owner instance id\u3002" },
1586
1688
  rect: {
1587
1689
  type: "object",
1588
1690
  properties: {
@@ -1594,26 +1696,29 @@ var browserRuntimeTools = [
1594
1696
  required: ["x", "y", "width", "height"]
1595
1697
  }
1596
1698
  },
1597
- required: ["rect"]
1699
+ required: ["browserSessionId", "rect"]
1598
1700
  }
1599
1701
  }, {
1600
1702
  operationKind: "mutate",
1601
- requiresExecutionEvidence: false
1703
+ requiresExecutionEvidence: false,
1704
+ rawDomain: "browser"
1602
1705
  }),
1603
1706
  annotateTool({
1604
- name: "browser.respondToCertificateError",
1605
- description: "\u54CD\u5E94 browser runtime \u8BC1\u4E66\u9519\u8BEF\u51B3\u7B56\u3002",
1707
+ name: "seastudio-browser_certificate_respond",
1708
+ description: "\u54CD\u5E94 Browser Session \u8BC1\u4E66\u9519\u8BEF\u51B3\u7B56\u3002",
1606
1709
  inputSchema: {
1607
1710
  type: "object",
1608
1711
  properties: {
1712
+ ...browserSessionIdParam,
1609
1713
  requestId: { type: "string", description: "\u8BC1\u4E66\u9519\u8BEF\u8BF7\u6C42 ID\u3002" },
1610
1714
  allow: { type: "boolean", description: "\u662F\u5426\u7EE7\u7EED\u52A0\u8F7D\u8BE5\u8BC1\u4E66\u9519\u8BEF\u9875\u9762\u3002" }
1611
1715
  },
1612
- required: ["requestId", "allow"]
1716
+ required: ["browserSessionId", "requestId", "allow"]
1613
1717
  }
1614
1718
  }, {
1615
1719
  operationKind: "mutate",
1616
- requiresExecutionEvidence: false
1720
+ requiresExecutionEvidence: false,
1721
+ rawDomain: "browser"
1617
1722
  })
1618
1723
  ];
1619
1724
 
@@ -1653,15 +1758,13 @@ var SeastudioNotifications = {
1653
1758
  PROPOSAL_FEEDBACK: "seastudio:proposal-feedback",
1654
1759
  /** 插件实例请求更新宿主 plugin tab 标题 */
1655
1760
  PLUGIN_TAB_TITLE_CHANGED: "plugin:tab-title_changed",
1656
- /** Browser runtime 标签页列表或 active tab 变化 */
1657
- BROWSER_TABS_CHANGED: "browser:tabs_changed",
1658
- /** Browser runtime 导航状态变化 */
1659
- BROWSER_NAVIGATION_STATE_CHANGED: "browser:navigation_state_changed",
1660
- /** Browser runtime 加载状态变化 */
1661
- BROWSER_LOAD_STATE_CHANGED: "browser:load_state_changed",
1662
- /** Browser runtime 证书错误,需要插件 UI 决策 */
1761
+ /** Browser Session 状态变化 */
1762
+ BROWSER_SESSION_CHANGED: "browser:session_changed",
1763
+ /** Browser Session 关闭 */
1764
+ BROWSER_SESSION_CLOSED: "browser:session_closed",
1765
+ /** Browser Session 证书错误,需要客户端 UI 决策 */
1663
1766
  BROWSER_CERTIFICATE_ERROR: "browser:certificate_error",
1664
- /** Browser runtime 收到网页新标签请求 */
1767
+ /** Browser Session 收到网页新标签请求 */
1665
1768
  BROWSER_NEW_TAB_REQUESTED: "browser:new_tab_requested",
1666
1769
  /**
1667
1770
  * Agent 对话 session:新建。消息历史仍由 Agent 前端持有,宿主仅同步列表用于侧栏。