@opensumi/ide-ai-native 3.8.1 → 3.8.2-next-1741408460.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/lib/browser/components/ChatToolRender.d.ts.map +1 -1
- package/lib/browser/components/ChatToolRender.js +18 -12
- package/lib/browser/components/ChatToolRender.js.map +1 -1
- package/lib/browser/components/ChatToolRender.module.less +27 -15
- package/lib/browser/mcp/config/components/mcp-config.view.d.ts.map +1 -1
- package/lib/browser/mcp/config/components/mcp-config.view.js +12 -8
- package/lib/browser/mcp/config/components/mcp-config.view.js.map +1 -1
- package/lib/browser/mcp/config/mcp-config.contribution.js.map +1 -1
- package/package.json +23 -23
- package/src/browser/components/ChatToolRender.module.less +27 -15
- package/src/browser/components/ChatToolRender.tsx +14 -12
- package/src/browser/mcp/config/components/mcp-config.view.tsx +4 -0
- package/src/browser/mcp/config/mcp-config.contribution.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatToolRender.d.ts","sourceRoot":"","sources":["../../../src/browser/components/ChatToolRender.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAE,gBAAgB,EAAQ,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatToolRender.d.ts","sourceRoot":"","sources":["../../../src/browser/components/ChatToolRender.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAE,gBAAgB,EAAQ,MAAM,2BAA2B,CAAC;AAQnE,eAAO,MAAM,cAAc,UAAW;IAAE,KAAK,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,6BAkF/F,CAAC"}
|
|
@@ -8,6 +8,7 @@ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
|
8
8
|
const components_1 = require("@opensumi/ide-core-browser/lib/components");
|
|
9
9
|
const ai_native_1 = require("@opensumi/ide-core-browser/lib/components/ai-native");
|
|
10
10
|
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
11
|
+
const localize_1 = require("@opensumi/ide-core-common/lib/localize");
|
|
11
12
|
const types_1 = require("../types");
|
|
12
13
|
const ChatEditor_1 = require("./ChatEditor");
|
|
13
14
|
const ChatToolRender_module_less_1 = tslib_1.__importDefault(require("./ChatToolRender.module.less"));
|
|
@@ -51,19 +52,24 @@ const ChatToolRender = (props) => {
|
|
|
51
52
|
setIsExpanded(!isExpanded);
|
|
52
53
|
};
|
|
53
54
|
const stateInfo = getStateInfo(value.state);
|
|
54
|
-
return ToolComponent && (value.state === 'complete' || value.state === 'result') ? (react_1.default.createElement(ToolComponent, { state: value.state, args: getParsedArgs(), result: value.result, index: value.index, messageId: messageId, toolCallId: value.id })) : (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default
|
|
55
|
-
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default
|
|
56
|
-
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default
|
|
57
|
-
react_1.default.createElement(components_1.Icon, { iconClass: `codicon codicon-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
55
|
+
return ToolComponent && (value.state === 'complete' || value.state === 'result') ? (react_1.default.createElement(ToolComponent, { state: value.state, args: getParsedArgs(), result: value.result, index: value.index, messageId: messageId, toolCallId: value.id })) : (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.chat_tool_render },
|
|
56
|
+
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.tool_header, onClick: toggleExpand },
|
|
57
|
+
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.tool_name },
|
|
58
|
+
react_1.default.createElement(components_1.Icon, { iconClass: `codicon codicon-chevron-${isExpanded ? 'down' : 'right'}` }),
|
|
59
|
+
react_1.default.createElement(components_1.Icon, { size: 'small', iconClass: (0, classnames_1.default)('codicon codicon-tools', ChatToolRender_module_less_1.default.tool_icon) }),
|
|
60
|
+
react_1.default.createElement("span", { className: ChatToolRender_module_less_1.default.tool_label }, label)),
|
|
61
|
+
value.state && (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.tool_state },
|
|
62
|
+
react_1.default.createElement("span", { className: ChatToolRender_module_less_1.default.state_icon }, stateInfo.icon)))),
|
|
63
|
+
react_1.default.createElement("div", { className: (0, classnames_1.default)(ChatToolRender_module_less_1.default.tool_content, { [ChatToolRender_module_less_1.default.expanded]: isExpanded }) },
|
|
64
|
+
((_b = value === null || value === void 0 ? void 0 : value.function) === null || _b === void 0 ? void 0 : _b.arguments) && (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.tool_arguments },
|
|
65
|
+
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.section_label },
|
|
66
|
+
(0, localize_1.localize)('ai.native.mcp.tool.arguments'),
|
|
67
|
+
":"),
|
|
64
68
|
react_1.default.createElement(ChatEditor_1.CodeEditorWithHighlight, { input: (_c = value === null || value === void 0 ? void 0 : value.function) === null || _c === void 0 ? void 0 : _c.arguments, language: 'json', relationId: (0, ide_core_common_1.uuid)(4) }))),
|
|
65
|
-
(value === null || value === void 0 ? void 0 : value.result) && (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default
|
|
66
|
-
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default
|
|
69
|
+
(value === null || value === void 0 ? void 0 : value.result) && (react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.tool_result },
|
|
70
|
+
react_1.default.createElement("div", { className: ChatToolRender_module_less_1.default.section_label },
|
|
71
|
+
(0, localize_1.localize)('ai.native.mcp.tool.results'),
|
|
72
|
+
":"),
|
|
67
73
|
react_1.default.createElement(ChatEditor_1.CodeEditorWithHighlight, { input: value.result, language: 'json', relationId: (0, ide_core_common_1.uuid)(4) }))))));
|
|
68
74
|
};
|
|
69
75
|
exports.ChatToolRender = ChatToolRender;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatToolRender.js","sourceRoot":"","sources":["../../../src/browser/components/ChatToolRender.tsx"],"names":[],"mappings":";;;;AAAA,oEAA6B;AAC7B,uDAAwC;AAExC,iEAA2D;AAC3D,0EAAiE;AACjE,mFAA8E;AAC9E,+DAAmE;
|
|
1
|
+
{"version":3,"file":"ChatToolRender.js","sourceRoot":"","sources":["../../../src/browser/components/ChatToolRender.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
.
|
|
1
|
+
.chat_tool_render {
|
|
2
2
|
margin: 8px 0;
|
|
3
3
|
border: 1px solid var(--design-borderColor);
|
|
4
4
|
border-radius: 6px;
|
|
5
5
|
overflow: hidden;
|
|
6
6
|
|
|
7
|
-
.
|
|
7
|
+
.tool_header {
|
|
8
8
|
display: flex;
|
|
9
9
|
align-items: center;
|
|
10
10
|
justify-content: space-between;
|
|
11
|
-
padding:
|
|
11
|
+
padding: 4px;
|
|
12
12
|
background-color: var(--design-block-background);
|
|
13
13
|
cursor: pointer;
|
|
14
14
|
user-select: none;
|
|
@@ -18,14 +18,25 @@
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
.
|
|
21
|
+
.tool_name {
|
|
22
|
+
font-size: 12px;
|
|
22
23
|
display: flex;
|
|
23
24
|
align-items: center;
|
|
24
25
|
font-weight: 500;
|
|
25
26
|
color: var(--design-text-foreground);
|
|
26
27
|
}
|
|
27
28
|
|
|
28
|
-
.
|
|
29
|
+
.tool_icon {
|
|
30
|
+
font-size: 12px !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.tool_label {
|
|
34
|
+
margin-left: 5px;
|
|
35
|
+
font-size: 11px;
|
|
36
|
+
color: var(--descriptionForeground);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.expand_icon {
|
|
29
40
|
display: inline-block;
|
|
30
41
|
margin-right: 8px;
|
|
31
42
|
transition: transform 0.2s;
|
|
@@ -36,29 +47,29 @@
|
|
|
36
47
|
}
|
|
37
48
|
}
|
|
38
49
|
|
|
39
|
-
.
|
|
50
|
+
.tool_state {
|
|
40
51
|
display: flex;
|
|
41
52
|
align-items: center;
|
|
42
53
|
font-size: 12px;
|
|
43
54
|
color: var(--design-text-placeholderForeground);
|
|
44
55
|
}
|
|
45
56
|
|
|
46
|
-
.
|
|
57
|
+
.state_icon {
|
|
47
58
|
display: flex;
|
|
48
59
|
align-items: center;
|
|
49
60
|
margin-right: 6px;
|
|
50
61
|
}
|
|
51
62
|
|
|
52
|
-
.
|
|
63
|
+
.loading_icon {
|
|
53
64
|
width: 12px;
|
|
54
65
|
height: 12px;
|
|
55
66
|
}
|
|
56
67
|
|
|
57
|
-
.
|
|
68
|
+
.state_label {
|
|
58
69
|
margin-left: 4px;
|
|
59
70
|
}
|
|
60
71
|
|
|
61
|
-
.
|
|
72
|
+
.tool_content {
|
|
62
73
|
max-height: 0;
|
|
63
74
|
overflow: hidden;
|
|
64
75
|
transition: max-height 0.3s ease-out;
|
|
@@ -69,18 +80,19 @@
|
|
|
69
80
|
}
|
|
70
81
|
}
|
|
71
82
|
|
|
72
|
-
.
|
|
73
|
-
.
|
|
74
|
-
|
|
83
|
+
.tool_arguments,
|
|
84
|
+
.tool_result {
|
|
85
|
+
font-size: 11px;
|
|
86
|
+
padding: 5px;
|
|
75
87
|
}
|
|
76
88
|
|
|
77
|
-
.
|
|
89
|
+
.section_label {
|
|
78
90
|
font-size: 12px;
|
|
79
91
|
color: var(--design-text-placeholderForeground);
|
|
80
92
|
margin-bottom: 8px;
|
|
81
93
|
}
|
|
82
94
|
|
|
83
|
-
.
|
|
95
|
+
.tool_result {
|
|
84
96
|
border-top: 1px solid var(--design-borderColor);
|
|
85
97
|
}
|
|
86
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.view.d.ts","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-config.view.d.ts","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAgB3C,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EA8OjC,CAAC"}
|
|
@@ -8,7 +8,8 @@ const ide_components_1 = require("@opensumi/ide-components");
|
|
|
8
8
|
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
9
9
|
const preferences_1 = require("@opensumi/ide-core-browser/lib/preferences");
|
|
10
10
|
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
11
|
-
const common_1 = require("
|
|
11
|
+
const common_1 = require("@opensumi/ide-overlay/lib/common");
|
|
12
|
+
const common_2 = require("../../../../common");
|
|
12
13
|
const types_1 = require("../../../../common/types");
|
|
13
14
|
const mcp_server_proxy_service_1 = require("../../mcp-server-proxy.service");
|
|
14
15
|
const mcp_config_module_less_1 = tslib_1.__importDefault(require("./mcp-config.module.less"));
|
|
@@ -16,8 +17,9 @@ const mcp_server_form_1 = require("./mcp-server-form");
|
|
|
16
17
|
const MCPConfigView = () => {
|
|
17
18
|
const mcpServerProxyService = (0, ide_core_browser_1.useInjectable)(mcp_server_proxy_service_1.MCPServerProxyService);
|
|
18
19
|
const preferenceService = (0, ide_core_browser_1.useInjectable)(preferences_1.PreferenceService);
|
|
19
|
-
const sumiMCPServerBackendProxy = (0, ide_core_browser_1.useInjectable)(
|
|
20
|
+
const sumiMCPServerBackendProxy = (0, ide_core_browser_1.useInjectable)(common_2.SumiMCPServerProxyServicePath);
|
|
20
21
|
const logger = (0, ide_core_browser_1.useInjectable)(ide_core_browser_1.ILogger);
|
|
22
|
+
const messageService = (0, ide_core_browser_1.useInjectable)(common_1.IMessageService);
|
|
21
23
|
const [servers, setServers] = react_1.default.useState([]);
|
|
22
24
|
const [formVisible, setFormVisible] = react_1.default.useState(false);
|
|
23
25
|
const [editingServer, setEditingServer] = react_1.default.useState();
|
|
@@ -46,15 +48,15 @@ const MCPConfigView = () => {
|
|
|
46
48
|
const servers = preferenceService.get(ide_core_browser_1.AINativeSettingSectionsId.MCPServers, []);
|
|
47
49
|
let updatedServers = servers;
|
|
48
50
|
// 处理内置服务器的特殊情况
|
|
49
|
-
if (serverName ===
|
|
50
|
-
const builtinServerExists = servers.some((server) => server.name ===
|
|
51
|
+
if (serverName === common_2.BUILTIN_MCP_SERVER_NAME) {
|
|
52
|
+
const builtinServerExists = servers.some((server) => server.name === common_2.BUILTIN_MCP_SERVER_NAME);
|
|
51
53
|
if (!builtinServerExists && !start) {
|
|
52
54
|
// 如果是停止内置服务器且之前没有配置,添加一个新的配置项
|
|
53
55
|
// 内置服务器不需要 command,因为它是直接集成在 IDE 中的
|
|
54
56
|
updatedServers = [
|
|
55
57
|
...servers,
|
|
56
58
|
{
|
|
57
|
-
name:
|
|
59
|
+
name: common_2.BUILTIN_MCP_SERVER_NAME,
|
|
58
60
|
enabled: false,
|
|
59
61
|
command: '', // 内置服务器的 command 为空字符串
|
|
60
62
|
type: types_1.MCP_SERVER_TYPE.STDIO,
|
|
@@ -64,7 +66,7 @@ const MCPConfigView = () => {
|
|
|
64
66
|
else {
|
|
65
67
|
// 如果已经存在配置,更新 enabled 状态
|
|
66
68
|
updatedServers = servers.map((server) => {
|
|
67
|
-
if (server.name ===
|
|
69
|
+
if (server.name === common_2.BUILTIN_MCP_SERVER_NAME) {
|
|
68
70
|
return { ...server, enabled: start };
|
|
69
71
|
}
|
|
70
72
|
return server;
|
|
@@ -84,7 +86,9 @@ const MCPConfigView = () => {
|
|
|
84
86
|
await loadServers();
|
|
85
87
|
}
|
|
86
88
|
catch (error) {
|
|
89
|
+
const msg = error.message || error;
|
|
87
90
|
logger.error(`Failed to ${start ? 'start' : 'stop'} server ${serverName}:`, error);
|
|
91
|
+
messageService.error(`Failed to ${start ? 'start' : 'stop'} server ${serverName}:` + msg);
|
|
88
92
|
}
|
|
89
93
|
}, [mcpServerProxyService, preferenceService, sumiMCPServerBackendProxy, loadServers]);
|
|
90
94
|
const handleAddServer = (0, react_1.useCallback)(() => {
|
|
@@ -144,11 +148,11 @@ const MCPConfigView = () => {
|
|
|
144
148
|
react_1.default.createElement("div", { className: mcp_config_module_less_1.default.serverTitleRow },
|
|
145
149
|
react_1.default.createElement("h3", { className: mcp_config_module_less_1.default.serverName }, server.name)),
|
|
146
150
|
react_1.default.createElement("div", { className: mcp_config_module_less_1.default.serverActions },
|
|
147
|
-
server.name !==
|
|
151
|
+
server.name !== common_2.BUILTIN_MCP_SERVER_NAME && (react_1.default.createElement("button", { className: mcp_config_module_less_1.default.iconButton, title: 'Edit', onClick: () => handleEditServer(server) },
|
|
148
152
|
react_1.default.createElement("i", { className: 'codicon codicon-edit' }))),
|
|
149
153
|
react_1.default.createElement("button", { className: mcp_config_module_less_1.default.iconButton, title: server.isStarted ? 'Stop' : 'Start', onClick: () => handleServerControl(server.name, !server.isStarted) },
|
|
150
154
|
react_1.default.createElement("i", { className: `codicon ${server.isStarted ? 'codicon-debug-stop' : 'codicon-debug-start'}` })),
|
|
151
|
-
server.name !==
|
|
155
|
+
server.name !== common_2.BUILTIN_MCP_SERVER_NAME && (react_1.default.createElement("button", { className: mcp_config_module_less_1.default.iconButton, title: 'Delete', onClick: () => handleDeleteServer(server.name) },
|
|
152
156
|
react_1.default.createElement("i", { className: 'codicon codicon-trash' }))))),
|
|
153
157
|
react_1.default.createElement("div", { className: mcp_config_module_less_1.default.serverDetail },
|
|
154
158
|
react_1.default.createElement("div", { className: mcp_config_module_less_1.default.detailRow },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.view.js","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":";;;;AAAA,oEAA6B;AAC7B,uDAA2C;AAE3C,6DAAiD;AACjD,iEAA+F;AAC/F,4EAA+E;AAC/E,+DAAqD;
|
|
1
|
+
{"version":3,"file":"mcp-config.view.js","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.contribution.js","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAyC;AACzC,sEAAuE;AACvE,+
|
|
1
|
+
{"version":3,"file":"mcp-config.contribution.js","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAyC;AACzC,sEAAuE;AACvE,+DAAwD;AACxD,kEAMgD;AAChD,6DAA8D;AAC9D,+DAAuE;AAEvE,kEAA6D;AAE7D,MAAM,aAAa,GAAG,4BAA4B,CAAC;AACtC,QAAA,+BAA+B,GAAG,YAAY,CAAC;AAKrD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAUhC,uBAAuB,CAAC,QAAiC;QACvD,QAAQ,CAAC,uBAAuB,CAAC;YAC/B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,uCAA+B;YACvC,SAAS,EAAE,+BAAa;YACxB,UAAU,EAAE,iCAAyB,CAAC,iBAAiB;SACxD,CAAC,CAAC;QAEH,QAAQ,CAAC,+BAA+B,CAAC,uCAA+B,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;YAC9F,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,aAAa;aAC3B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,OAAwB;QACvC,OAAO,CAAC,wBAAwB,CAAC;YAC/B,MAAM,EAAE,uCAA+B;YACvC,eAAe,EAAE,KAAK,EAAE,GAAQ,EAA+B,EAAE;gBAC/D,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;gBAE5C,OAAO;oBACL,GAAG;oBACH,IAAI,EAAE,mBAAmB;oBACzB,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE;wBACR,UAAU;qBACX;iBACF,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA3CY,sDAAqB;AAEb;IADlB,IAAA,cAAS,EAAC,0BAAiB,CAAC;;+DAC0B;AAGpC;IADlB,IAAA,cAAS,EAAC,qBAAW,CAAC;sCACS,qBAAW;0DAAC;AAG5C;IADC,IAAA,cAAS,GAAE;sCACE,uBAAY;2DAAC;gCARhB,qBAAqB;IADjC,IAAA,wBAAM,EAAC,iCAAyB,CAAC;GACrB,qBAAqB,CA2CjC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-ai-native",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.2-next-1741408460.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"src"
|
|
@@ -24,26 +24,26 @@
|
|
|
24
24
|
"@ai-sdk/openai": "^1.1.9",
|
|
25
25
|
"@ai-sdk/openai-compatible": "^0.1.11",
|
|
26
26
|
"@modelcontextprotocol/sdk": "^1.3.1",
|
|
27
|
-
"@opensumi/ide-addons": "3.8.
|
|
28
|
-
"@opensumi/ide-components": "3.8.
|
|
29
|
-
"@opensumi/ide-connection": "3.8.
|
|
30
|
-
"@opensumi/ide-core-common": "3.8.
|
|
31
|
-
"@opensumi/ide-core-node": "3.8.
|
|
32
|
-
"@opensumi/ide-debug": "3.8.
|
|
33
|
-
"@opensumi/ide-design": "3.8.
|
|
34
|
-
"@opensumi/ide-editor": "3.8.
|
|
35
|
-
"@opensumi/ide-file-search": "3.8.
|
|
36
|
-
"@opensumi/ide-file-service": "3.8.
|
|
37
|
-
"@opensumi/ide-main-layout": "3.8.
|
|
38
|
-
"@opensumi/ide-markers": "3.8.
|
|
39
|
-
"@opensumi/ide-monaco": "3.8.
|
|
40
|
-
"@opensumi/ide-overlay": "3.8.
|
|
41
|
-
"@opensumi/ide-preferences": "3.8.
|
|
42
|
-
"@opensumi/ide-search": "3.8.
|
|
43
|
-
"@opensumi/ide-terminal-next": "3.8.
|
|
44
|
-
"@opensumi/ide-theme": "3.8.
|
|
45
|
-
"@opensumi/ide-utils": "3.8.
|
|
46
|
-
"@opensumi/ide-workspace": "3.8.
|
|
27
|
+
"@opensumi/ide-addons": "3.8.2-next-1741408460.0",
|
|
28
|
+
"@opensumi/ide-components": "3.8.2-next-1741408460.0",
|
|
29
|
+
"@opensumi/ide-connection": "3.8.2-next-1741408460.0",
|
|
30
|
+
"@opensumi/ide-core-common": "3.8.2-next-1741408460.0",
|
|
31
|
+
"@opensumi/ide-core-node": "3.8.2-next-1741408460.0",
|
|
32
|
+
"@opensumi/ide-debug": "3.8.2-next-1741408460.0",
|
|
33
|
+
"@opensumi/ide-design": "3.8.2-next-1741408460.0",
|
|
34
|
+
"@opensumi/ide-editor": "3.8.2-next-1741408460.0",
|
|
35
|
+
"@opensumi/ide-file-search": "3.8.2-next-1741408460.0",
|
|
36
|
+
"@opensumi/ide-file-service": "3.8.2-next-1741408460.0",
|
|
37
|
+
"@opensumi/ide-main-layout": "3.8.2-next-1741408460.0",
|
|
38
|
+
"@opensumi/ide-markers": "3.8.2-next-1741408460.0",
|
|
39
|
+
"@opensumi/ide-monaco": "3.8.2-next-1741408460.0",
|
|
40
|
+
"@opensumi/ide-overlay": "3.8.2-next-1741408460.0",
|
|
41
|
+
"@opensumi/ide-preferences": "3.8.2-next-1741408460.0",
|
|
42
|
+
"@opensumi/ide-search": "3.8.2-next-1741408460.0",
|
|
43
|
+
"@opensumi/ide-terminal-next": "3.8.2-next-1741408460.0",
|
|
44
|
+
"@opensumi/ide-theme": "3.8.2-next-1741408460.0",
|
|
45
|
+
"@opensumi/ide-utils": "3.8.2-next-1741408460.0",
|
|
46
|
+
"@opensumi/ide-workspace": "3.8.2-next-1741408460.0",
|
|
47
47
|
"@xterm/xterm": "5.5.0",
|
|
48
48
|
"ai": "^4.1.45",
|
|
49
49
|
"ansi-regex": "^2.0.0",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"zod-to-json-schema": "^3.24.1"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@opensumi/ide-core-browser": "3.8.
|
|
62
|
+
"@opensumi/ide-core-browser": "3.8.2-next-1741408460.0"
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "b55c757320fcd2eb6b231308882b7cfa1fb559af"
|
|
65
65
|
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
.
|
|
1
|
+
.chat_tool_render {
|
|
2
2
|
margin: 8px 0;
|
|
3
3
|
border: 1px solid var(--design-borderColor);
|
|
4
4
|
border-radius: 6px;
|
|
5
5
|
overflow: hidden;
|
|
6
6
|
|
|
7
|
-
.
|
|
7
|
+
.tool_header {
|
|
8
8
|
display: flex;
|
|
9
9
|
align-items: center;
|
|
10
10
|
justify-content: space-between;
|
|
11
|
-
padding:
|
|
11
|
+
padding: 4px;
|
|
12
12
|
background-color: var(--design-block-background);
|
|
13
13
|
cursor: pointer;
|
|
14
14
|
user-select: none;
|
|
@@ -18,14 +18,25 @@
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
.
|
|
21
|
+
.tool_name {
|
|
22
|
+
font-size: 12px;
|
|
22
23
|
display: flex;
|
|
23
24
|
align-items: center;
|
|
24
25
|
font-weight: 500;
|
|
25
26
|
color: var(--design-text-foreground);
|
|
26
27
|
}
|
|
27
28
|
|
|
28
|
-
.
|
|
29
|
+
.tool_icon {
|
|
30
|
+
font-size: 12px !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.tool_label {
|
|
34
|
+
margin-left: 5px;
|
|
35
|
+
font-size: 11px;
|
|
36
|
+
color: var(--descriptionForeground);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.expand_icon {
|
|
29
40
|
display: inline-block;
|
|
30
41
|
margin-right: 8px;
|
|
31
42
|
transition: transform 0.2s;
|
|
@@ -36,29 +47,29 @@
|
|
|
36
47
|
}
|
|
37
48
|
}
|
|
38
49
|
|
|
39
|
-
.
|
|
50
|
+
.tool_state {
|
|
40
51
|
display: flex;
|
|
41
52
|
align-items: center;
|
|
42
53
|
font-size: 12px;
|
|
43
54
|
color: var(--design-text-placeholderForeground);
|
|
44
55
|
}
|
|
45
56
|
|
|
46
|
-
.
|
|
57
|
+
.state_icon {
|
|
47
58
|
display: flex;
|
|
48
59
|
align-items: center;
|
|
49
60
|
margin-right: 6px;
|
|
50
61
|
}
|
|
51
62
|
|
|
52
|
-
.
|
|
63
|
+
.loading_icon {
|
|
53
64
|
width: 12px;
|
|
54
65
|
height: 12px;
|
|
55
66
|
}
|
|
56
67
|
|
|
57
|
-
.
|
|
68
|
+
.state_label {
|
|
58
69
|
margin-left: 4px;
|
|
59
70
|
}
|
|
60
71
|
|
|
61
|
-
.
|
|
72
|
+
.tool_content {
|
|
62
73
|
max-height: 0;
|
|
63
74
|
overflow: hidden;
|
|
64
75
|
transition: max-height 0.3s ease-out;
|
|
@@ -69,18 +80,19 @@
|
|
|
69
80
|
}
|
|
70
81
|
}
|
|
71
82
|
|
|
72
|
-
.
|
|
73
|
-
.
|
|
74
|
-
|
|
83
|
+
.tool_arguments,
|
|
84
|
+
.tool_result {
|
|
85
|
+
font-size: 11px;
|
|
86
|
+
padding: 5px;
|
|
75
87
|
}
|
|
76
88
|
|
|
77
|
-
.
|
|
89
|
+
.section_label {
|
|
78
90
|
font-size: 12px;
|
|
79
91
|
color: var(--design-text-placeholderForeground);
|
|
80
92
|
margin-bottom: 8px;
|
|
81
93
|
}
|
|
82
94
|
|
|
83
|
-
.
|
|
95
|
+
.tool_result {
|
|
84
96
|
border-top: 1px solid var(--design-borderColor);
|
|
85
97
|
}
|
|
86
98
|
}
|
|
@@ -5,6 +5,7 @@ import { useInjectable } from '@opensumi/ide-core-browser';
|
|
|
5
5
|
import { Icon } from '@opensumi/ide-core-browser/lib/components';
|
|
6
6
|
import { Loading } from '@opensumi/ide-core-browser/lib/components/ai-native';
|
|
7
7
|
import { IChatToolContent, uuid } from '@opensumi/ide-core-common';
|
|
8
|
+
import { localize } from '@opensumi/ide-core-common/lib/localize';
|
|
8
9
|
|
|
9
10
|
import { IMCPServerRegistry, TokenMCPServerRegistry } from '../types';
|
|
10
11
|
|
|
@@ -64,28 +65,29 @@ export const ChatToolRender = (props: { value: IChatToolContent['content']; mess
|
|
|
64
65
|
toolCallId={value.id}
|
|
65
66
|
/>
|
|
66
67
|
) : (
|
|
67
|
-
<div className={styles
|
|
68
|
-
<div className={styles
|
|
69
|
-
<div className={styles
|
|
70
|
-
<Icon iconClass={`codicon codicon-
|
|
71
|
-
{
|
|
68
|
+
<div className={styles.chat_tool_render}>
|
|
69
|
+
<div className={styles.tool_header} onClick={toggleExpand}>
|
|
70
|
+
<div className={styles.tool_name}>
|
|
71
|
+
<Icon iconClass={`codicon codicon-chevron-${isExpanded ? 'down' : 'right'}`} />
|
|
72
|
+
<Icon size='small' iconClass={cls('codicon codicon-tools', styles.tool_icon)} />
|
|
73
|
+
<span className={styles.tool_label}>{label}</span>
|
|
72
74
|
</div>
|
|
73
75
|
{value.state && (
|
|
74
|
-
<div className={styles
|
|
75
|
-
<span className={styles
|
|
76
|
+
<div className={styles.tool_state}>
|
|
77
|
+
<span className={styles.state_icon}>{stateInfo.icon}</span>
|
|
76
78
|
</div>
|
|
77
79
|
)}
|
|
78
80
|
</div>
|
|
79
|
-
<div className={cls(styles
|
|
81
|
+
<div className={cls(styles.tool_content, { [styles.expanded]: isExpanded })}>
|
|
80
82
|
{value?.function?.arguments && (
|
|
81
|
-
<div className={styles
|
|
82
|
-
<div className={styles
|
|
83
|
+
<div className={styles.tool_arguments}>
|
|
84
|
+
<div className={styles.section_label}>{localize('ai.native.mcp.tool.arguments')}:</div>
|
|
83
85
|
<CodeEditorWithHighlight input={value?.function?.arguments} language={'json'} relationId={uuid(4)} />
|
|
84
86
|
</div>
|
|
85
87
|
)}
|
|
86
88
|
{value?.result && (
|
|
87
|
-
<div className={styles
|
|
88
|
-
<div className={styles
|
|
89
|
+
<div className={styles.tool_result}>
|
|
90
|
+
<div className={styles.section_label}>{localize('ai.native.mcp.tool.results')}:</div>
|
|
89
91
|
<CodeEditorWithHighlight input={value.result} language={'json'} relationId={uuid(4)} />
|
|
90
92
|
</div>
|
|
91
93
|
)}
|
|
@@ -5,6 +5,7 @@ import { Badge } from '@opensumi/ide-components';
|
|
|
5
5
|
import { AINativeSettingSectionsId, ILogger, useInjectable } from '@opensumi/ide-core-browser';
|
|
6
6
|
import { PreferenceService } from '@opensumi/ide-core-browser/lib/preferences';
|
|
7
7
|
import { localize } from '@opensumi/ide-core-common';
|
|
8
|
+
import { IMessageService } from '@opensumi/ide-overlay/lib/common';
|
|
8
9
|
|
|
9
10
|
import { BUILTIN_MCP_SERVER_NAME, ISumiMCPServerBackend, SumiMCPServerProxyServicePath } from '../../../../common';
|
|
10
11
|
import { MCPServerDescription } from '../../../../common/mcp-server-manager';
|
|
@@ -19,6 +20,7 @@ export const MCPConfigView: React.FC = () => {
|
|
|
19
20
|
const preferenceService = useInjectable<PreferenceService>(PreferenceService);
|
|
20
21
|
const sumiMCPServerBackendProxy = useInjectable<ISumiMCPServerBackend>(SumiMCPServerProxyServicePath);
|
|
21
22
|
const logger = useInjectable<ILogger>(ILogger);
|
|
23
|
+
const messageService = useInjectable<IMessageService>(IMessageService);
|
|
22
24
|
const [servers, setServers] = React.useState<MCPServer[]>([]);
|
|
23
25
|
const [formVisible, setFormVisible] = React.useState(false);
|
|
24
26
|
const [editingServer, setEditingServer] = React.useState<MCPServerFormData | undefined>();
|
|
@@ -88,7 +90,9 @@ export const MCPConfigView: React.FC = () => {
|
|
|
88
90
|
await preferenceService.set(AINativeSettingSectionsId.MCPServers, updatedServers);
|
|
89
91
|
await loadServers();
|
|
90
92
|
} catch (error) {
|
|
93
|
+
const msg = error.message || error;
|
|
91
94
|
logger.error(`Failed to ${start ? 'start' : 'stop'} server ${serverName}:`, error);
|
|
95
|
+
messageService.error(`Failed to ${start ? 'start' : 'stop'} server ${serverName}:` + msg);
|
|
92
96
|
}
|
|
93
97
|
},
|
|
94
98
|
[mcpServerProxyService, preferenceService, sumiMCPServerBackendProxy, loadServers],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Autowired } from '@opensumi/di';
|
|
2
2
|
import { LabelService } from '@opensumi/ide-core-browser/lib/services';
|
|
3
|
-
import { Domain,
|
|
3
|
+
import { Domain, URI } from '@opensumi/ide-core-common';
|
|
4
4
|
import {
|
|
5
5
|
BrowserEditorContribution,
|
|
6
6
|
EditorComponentRegistry,
|