@opensumi/ide-ai-native 3.8.3-next-1741917543.0 → 3.8.3-next-1741920696.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.
Files changed (117) hide show
  1. package/lib/browser/chat/chat-agent.service.d.ts +1 -1
  2. package/lib/browser/chat/chat-agent.service.d.ts.map +1 -1
  3. package/lib/browser/chat/chat-agent.service.js +7 -7
  4. package/lib/browser/chat/chat-agent.service.js.map +1 -1
  5. package/lib/browser/chat/chat.view.d.ts.map +1 -1
  6. package/lib/browser/chat/chat.view.js +69 -31
  7. package/lib/browser/chat/chat.view.js.map +1 -1
  8. package/lib/browser/components/ChatEditor.d.ts +11 -2
  9. package/lib/browser/components/ChatEditor.d.ts.map +1 -1
  10. package/lib/browser/components/ChatEditor.js +60 -6
  11. package/lib/browser/components/ChatEditor.js.map +1 -1
  12. package/lib/browser/components/ChatHistory.d.ts.map +1 -1
  13. package/lib/browser/components/ChatHistory.js +15 -15
  14. package/lib/browser/components/ChatHistory.js.map +1 -1
  15. package/lib/browser/components/ChatMentionInput.d.ts +25 -0
  16. package/lib/browser/components/ChatMentionInput.d.ts.map +1 -0
  17. package/lib/browser/components/ChatMentionInput.js +229 -0
  18. package/lib/browser/components/ChatMentionInput.js.map +1 -0
  19. package/lib/browser/components/ChatThinking.d.ts +1 -1
  20. package/lib/browser/components/ChatThinking.d.ts.map +1 -1
  21. package/lib/browser/components/ChatThinking.js +8 -2
  22. package/lib/browser/components/ChatThinking.js.map +1 -1
  23. package/lib/browser/components/change-list.module.less +2 -0
  24. package/lib/browser/components/{ChatContext/ContextSelector.d.ts → chat-context/context-selector.d.ts} +1 -1
  25. package/lib/browser/components/chat-context/context-selector.d.ts.map +1 -0
  26. package/lib/browser/components/{ChatContext/ContextSelector.js → chat-context/context-selector.js} +1 -1
  27. package/lib/browser/components/chat-context/context-selector.js.map +1 -0
  28. package/lib/browser/components/chat-context/index.d.ts.map +1 -0
  29. package/lib/browser/components/{ChatContext → chat-context}/index.js +2 -2
  30. package/lib/browser/components/chat-context/index.js.map +1 -0
  31. package/lib/browser/components/chat-history.module.less +33 -16
  32. package/lib/browser/components/components.module.less +39 -3
  33. package/lib/browser/components/mention-input/mention-input.d.ts +5 -0
  34. package/lib/browser/components/mention-input/mention-input.d.ts.map +1 -0
  35. package/lib/browser/components/mention-input/mention-input.js +763 -0
  36. package/lib/browser/components/mention-input/mention-input.js.map +1 -0
  37. package/lib/browser/components/mention-input/mention-input.module.less +333 -0
  38. package/lib/browser/components/mention-input/mention-item.d.ts +10 -0
  39. package/lib/browser/components/mention-input/mention-item.d.ts.map +1 -0
  40. package/lib/browser/components/mention-input/mention-item.js +16 -0
  41. package/lib/browser/components/mention-input/mention-item.js.map +1 -0
  42. package/lib/browser/components/mention-input/mention-panel.d.ts +15 -0
  43. package/lib/browser/components/mention-input/mention-panel.d.ts.map +1 -0
  44. package/lib/browser/components/mention-input/mention-panel.js +49 -0
  45. package/lib/browser/components/mention-input/mention-panel.js.map +1 -0
  46. package/lib/browser/components/mention-input/types.d.ts +78 -0
  47. package/lib/browser/components/mention-input/types.d.ts.map +1 -0
  48. package/lib/browser/components/mention-input/types.js +16 -0
  49. package/lib/browser/components/mention-input/types.js.map +1 -0
  50. package/lib/browser/context/llm-context.service.d.ts +10 -2
  51. package/lib/browser/context/llm-context.service.d.ts.map +1 -1
  52. package/lib/browser/context/llm-context.service.js +76 -2
  53. package/lib/browser/context/llm-context.service.js.map +1 -1
  54. package/lib/browser/mcp/config/components/mcp-config.module.less +61 -30
  55. package/lib/browser/mcp/config/components/mcp-config.view.d.ts.map +1 -1
  56. package/lib/browser/mcp/config/components/mcp-config.view.js +17 -19
  57. package/lib/browser/mcp/config/components/mcp-config.view.js.map +1 -1
  58. package/lib/browser/mcp/config/components/mcp-server-form.js +1 -1
  59. package/lib/browser/mcp/config/components/mcp-server-form.js.map +1 -1
  60. package/lib/browser/mcp/config/components/mcp-server-form.module.less +3 -0
  61. package/lib/browser/mcp/mcp-server-proxy.service.d.ts +1 -0
  62. package/lib/browser/mcp/mcp-server-proxy.service.d.ts.map +1 -1
  63. package/lib/common/index.d.ts +2 -1
  64. package/lib/common/index.d.ts.map +1 -1
  65. package/lib/common/index.js +1 -1
  66. package/lib/common/llm-context.d.ts +15 -1
  67. package/lib/common/llm-context.d.ts.map +1 -1
  68. package/lib/common/llm-context.js.map +1 -1
  69. package/lib/common/prompts/context-prompt-provider.d.ts +12 -2
  70. package/lib/common/prompts/context-prompt-provider.d.ts.map +1 -1
  71. package/lib/common/prompts/context-prompt-provider.js +95 -30
  72. package/lib/common/prompts/context-prompt-provider.js.map +1 -1
  73. package/lib/common/types.d.ts +1 -1
  74. package/lib/common/types.d.ts.map +1 -1
  75. package/lib/common/utils.d.ts +1 -0
  76. package/lib/common/utils.d.ts.map +1 -1
  77. package/lib/common/utils.js +9 -1
  78. package/lib/common/utils.js.map +1 -1
  79. package/lib/node/mcp/sumi-mcp-server.d.ts +3 -3
  80. package/lib/node/mcp/sumi-mcp-server.d.ts.map +1 -1
  81. package/lib/node/mcp/sumi-mcp-server.js +11 -7
  82. package/lib/node/mcp/sumi-mcp-server.js.map +1 -1
  83. package/package.json +23 -23
  84. package/src/browser/chat/chat-agent.service.ts +7 -7
  85. package/src/browser/chat/chat.view.tsx +81 -24
  86. package/src/browser/components/ChatEditor.tsx +128 -9
  87. package/src/browser/components/ChatHistory.tsx +16 -30
  88. package/src/browser/components/ChatMentionInput.tsx +276 -0
  89. package/src/browser/components/ChatThinking.tsx +10 -4
  90. package/src/browser/components/change-list.module.less +2 -0
  91. package/src/browser/components/{ChatContext → chat-context}/index.tsx +1 -1
  92. package/src/browser/components/chat-history.module.less +33 -16
  93. package/src/browser/components/components.module.less +39 -3
  94. package/src/browser/components/mention-input/mention-input.module.less +333 -0
  95. package/src/browser/components/mention-input/mention-input.tsx +952 -0
  96. package/src/browser/components/mention-input/mention-item.tsx +24 -0
  97. package/src/browser/components/mention-input/mention-panel.tsx +89 -0
  98. package/src/browser/components/mention-input/types.ts +84 -0
  99. package/src/browser/context/llm-context.service.ts +85 -3
  100. package/src/browser/mcp/config/components/mcp-config.module.less +61 -30
  101. package/src/browser/mcp/config/components/mcp-config.view.tsx +49 -32
  102. package/src/browser/mcp/config/components/mcp-server-form.module.less +3 -0
  103. package/src/browser/mcp/config/components/mcp-server-form.tsx +1 -1
  104. package/src/common/index.ts +2 -2
  105. package/src/common/llm-context.ts +16 -1
  106. package/src/common/prompts/context-prompt-provider.ts +130 -36
  107. package/src/common/types.ts +1 -1
  108. package/src/common/utils.ts +8 -0
  109. package/src/node/mcp/sumi-mcp-server.ts +11 -7
  110. package/lib/browser/components/ChatContext/ContextSelector.d.ts.map +0 -1
  111. package/lib/browser/components/ChatContext/ContextSelector.js.map +0 -1
  112. package/lib/browser/components/ChatContext/index.d.ts.map +0 -1
  113. package/lib/browser/components/ChatContext/index.js.map +0 -1
  114. /package/lib/browser/components/{ChatContext → chat-context}/index.d.ts +0 -0
  115. /package/lib/browser/components/{ChatContext → chat-context}/style.module.less +0 -0
  116. /package/src/browser/components/{ChatContext/ContextSelector.tsx → chat-context/context-selector.tsx} +0 -0
  117. /package/src/browser/components/{ChatContext → chat-context}/style.module.less +0 -0
@@ -0,0 +1,333 @@
1
+ .input_container {
2
+ position: relative;
3
+ width: 100%;
4
+ margin: 0 auto;
5
+ border-radius: 4px;
6
+
7
+ .model_selector {
8
+ margin-right: 5px;
9
+ min-width: 150px;
10
+ }
11
+
12
+ .editor_area {
13
+ position: relative;
14
+ padding: 0 15px;
15
+ min-height: 42px;
16
+ max-height: 105px;
17
+ }
18
+
19
+ .editor {
20
+ width: 100%;
21
+ background-color: transparent;
22
+ border: none;
23
+ font-size: 14px;
24
+ line-height: 1.5;
25
+ outline: none;
26
+ resize: none;
27
+ min-height: 24px;
28
+ max-height: 120px;
29
+ overflow-y: auto;
30
+ border-radius: 4px;
31
+ word-break: break-word;
32
+
33
+ .mention_tag {
34
+ margin: 0 2px;
35
+ vertical-align: middle;
36
+ }
37
+ }
38
+
39
+ .editor:empty:before,
40
+ .editor[data-content=''] + .editor:before {
41
+ content: attr(data-placeholder);
42
+ color: var(--descriptionForeground);
43
+ pointer-events: none;
44
+ display: block;
45
+ }
46
+
47
+ .ai_enhance_icon {
48
+ border-radius: 6px;
49
+ padding: 2px 3px;
50
+ display: flex;
51
+ align-items: center;
52
+ cursor: pointer;
53
+ white-space: nowrap;
54
+ box-sizing: border-box;
55
+
56
+ span {
57
+ color: var(--design-text-foreground);
58
+ }
59
+
60
+ &:hover {
61
+ background-color: var(--badge-background);
62
+
63
+ span {
64
+ color: var(--badge-foreground);
65
+ }
66
+ }
67
+
68
+ > span {
69
+ &::before {
70
+ font-size: 14px;
71
+ }
72
+ }
73
+ }
74
+
75
+ .footer {
76
+ padding: 12px 15px;
77
+ display: flex;
78
+ justify-content: flex-start;
79
+ align-items: center;
80
+ flex-direction: row;
81
+
82
+ .left_control {
83
+ display: flex;
84
+ align-items: center;
85
+ justify-content: flex-start;
86
+ flex-direction: row;
87
+ flex: 1;
88
+ }
89
+
90
+ .right_control {
91
+ display: flex;
92
+ align-items: center;
93
+ justify-content: flex-end;
94
+ flex-direction: row;
95
+
96
+ .send_logo,
97
+ .stop_logo {
98
+ background-color: var(--badge-background);
99
+ color: var(--badge-foreground);
100
+ .stop_logo_icon {
101
+ line-height: 16px;
102
+ color: var(--kt-dangerButton-background);
103
+ }
104
+ }
105
+ .send_logo {
106
+ &:hover {
107
+ background-color: var(--kt-primaryButton-background);
108
+
109
+ .send_logo_icon {
110
+ color: var(--kt-primaryButton-foreground);
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+
117
+ .send_button {
118
+ color: var(--icon-foreground);
119
+ border: none;
120
+ border-radius: 4px;
121
+ padding: 6px 12px;
122
+ cursor: pointer;
123
+ display: flex;
124
+ align-items: center;
125
+ justify-content: center;
126
+ transition: background-color 0.2s;
127
+ }
128
+
129
+ .send_button:hover {
130
+ background-color: var(--notification-success-background);
131
+ }
132
+ }
133
+
134
+ .mention_panel_container {
135
+ position: absolute;
136
+ top: -20px;
137
+ left: 0;
138
+ right: 0;
139
+ width: 100%;
140
+ z-index: 1000;
141
+ transform: translateY(-100%);
142
+ display: flex;
143
+ justify-content: center;
144
+ }
145
+
146
+ .mention_panel {
147
+ background-color: var(--editor-background);
148
+ color: var(--editor-foreground);
149
+ border-radius: 6px;
150
+ max-height: 300px;
151
+ overflow-y: auto;
152
+ z-index: 1000;
153
+ padding: 8px 4px;
154
+ width: 100%;
155
+ }
156
+
157
+ .mention_item {
158
+ padding: 0 8px;
159
+ border-radius: 8px;
160
+ cursor: pointer;
161
+ line-height: 22px;
162
+ height: 22px;
163
+ display: flex;
164
+ align-items: center;
165
+ transition: all 0.2s ease;
166
+ justify-content: space-between;
167
+ color: var(--foreground);
168
+ border-radius: 4px;
169
+ margin-bottom: 5px;
170
+
171
+ &:last-child {
172
+ margin-bottom: 0;
173
+ }
174
+ }
175
+
176
+ .mention_list {
177
+ margin: 0;
178
+ padding: 0;
179
+ list-style: none;
180
+ }
181
+
182
+ .mention_item.active {
183
+ color: var(--kt-tree-inactiveSelectionForeground);
184
+ background: var(--kt-tree-inactiveSelectionBackground);
185
+ }
186
+
187
+ .mention_item:hover:not(.active) {
188
+ color: var(--kt-tree-inactiveSelectionForeground);
189
+ background: var(--kt-tree-inactiveSelectionBackground);
190
+ }
191
+
192
+ .mention_item_left {
193
+ display: flex;
194
+ align-items: center;
195
+ flex: 1;
196
+ }
197
+
198
+ .mention_item_icon {
199
+ margin-right: 8px;
200
+ width: 18px;
201
+ height: 18px;
202
+ display: flex;
203
+ align-items: center;
204
+ justify-content: center;
205
+ }
206
+
207
+ .mention_item_text {
208
+ font-size: 13px;
209
+ margin-right: 6px;
210
+ display: inline;
211
+ white-space: pre;
212
+ }
213
+
214
+ .mention_item_description {
215
+ color: var(--descriptionForeground);
216
+ font-size: 13px;
217
+ display: inline;
218
+ flex: 1;
219
+ text-overflow: ellipsis;
220
+ overflow: hidden;
221
+ white-space: nowrap;
222
+ margin-left: 5px;
223
+ text-align: right;
224
+ }
225
+
226
+ .mention_item_right {
227
+ color: #8b949e;
228
+ font-size: 12px;
229
+ }
230
+
231
+ .mention_panel_title {
232
+ padding: 8px 12px;
233
+ font-size: 12px;
234
+ display: flex;
235
+ justify-content: space-between;
236
+ align-items: center;
237
+ }
238
+
239
+ .back_button {
240
+ background: none;
241
+ border: none;
242
+ cursor: pointer;
243
+ font-size: 12px;
244
+ display: flex;
245
+ align-items: center;
246
+ }
247
+
248
+ .back_button:hover {
249
+ text-decoration: underline;
250
+ }
251
+
252
+ .mention_tag {
253
+ background-color: var(--chat-slashCommandBackground);
254
+ color: var(--chat-slashCommandForeground);
255
+ border-radius: 4px;
256
+ padding: 0 4px;
257
+ margin: 0 3px;
258
+ user-select: all;
259
+ cursor: default;
260
+ display: inline-flex;
261
+ align-items: center;
262
+ justify-content: center;
263
+ }
264
+
265
+ .mention_icon {
266
+ display: inline-flex;
267
+ align-items: center;
268
+ justify-content: center;
269
+ margin-right: 3px;
270
+ font-size: 12px;
271
+ }
272
+
273
+ .empty_state {
274
+ padding: 5px 10px;
275
+ text-align: center;
276
+ color: var(--descriptionForeground);
277
+ font-size: 14px;
278
+ }
279
+
280
+ .model_selector {
281
+ margin-right: 5px;
282
+ }
283
+
284
+ .mcp_logo {
285
+ margin-right: 5px;
286
+ }
287
+
288
+ .send_logo {
289
+ color: var(--icon-foreground);
290
+ cursor: pointer;
291
+ margin-left: auto;
292
+
293
+ &:hover {
294
+ color: var(--notification-success-foreground);
295
+ }
296
+ }
297
+
298
+ .popover_icon {
299
+ // 移除 margin-left: auto
300
+ }
301
+
302
+ .loading_container {
303
+ display: none;
304
+ }
305
+
306
+ .loading_bar {
307
+ position: absolute;
308
+ top: 0;
309
+ left: 0;
310
+ height: 2px;
311
+ width: 100%;
312
+ background: linear-gradient(90deg, transparent, var(--kt-primaryButton-background), transparent);
313
+ background-size: 200% 100%;
314
+ animation: loading-bar 1.5s infinite;
315
+ z-index: 10;
316
+ }
317
+
318
+ @keyframes loading-bar {
319
+ 0% {
320
+ background-position: 100% 0;
321
+ }
322
+
323
+ 100% {
324
+ background-position: -100% 0;
325
+ }
326
+ }
327
+
328
+ .no_results {
329
+ padding: 12px;
330
+ text-align: center;
331
+ color: #666;
332
+ font-style: italic;
333
+ }