@opensumi/ide-ai-native 3.8.1-next-1741251026.0 → 3.8.1-next-1741253659.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.
@@ -0,0 +1,16 @@
1
+ import { IChatProgress } from '@opensumi/ide-core-browser';
2
+ import { SumiReadableStream } from '@opensumi/ide-utils/lib/stream';
3
+ import { Range } from '@opensumi/monaco-editor-core';
4
+ import { CodeBlockData } from '../../common/types';
5
+ import { BaseApplyService } from '../mcp/base-apply.service';
6
+ export declare class ApplyService extends BaseApplyService {
7
+ private readonly modelService;
8
+ private readonly aiBackService;
9
+ private readonly chatProxyService;
10
+ protected doApply(codeBlock: CodeBlockData): Promise<{
11
+ range?: Range;
12
+ stream?: SumiReadableStream<IChatProgress, Error>;
13
+ result?: string;
14
+ }>;
15
+ }
16
+ //# sourceMappingURL=apply.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.service.d.ts","sourceRoot":"","sources":["../../../src/browser/chat/apply.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAqC,aAAa,EAAa,MAAM,4BAA4B,CAAC;AAEzG,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAI7D,qBACa,YAAa,SAAQ,gBAAgB;IAEhD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA8B;IAG3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAE/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;cAEpC,OAAO,CAAC,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC;QACzD,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,kBAAkB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CA4BH"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApplyService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const di_1 = require("@opensumi/di");
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const browser_1 = require("@opensumi/ide-editor/lib/browser");
8
+ const common_1 = require("../../common");
9
+ const base_apply_service_1 = require("../mcp/base-apply.service");
10
+ const chat_proxy_service_1 = require("./chat-proxy.service");
11
+ let ApplyService = class ApplyService extends base_apply_service_1.BaseApplyService {
12
+ async doApply(codeBlock) {
13
+ const uri = new ide_core_browser_1.URI(ide_core_browser_1.path.join(this.appConfig.workspaceDir, codeBlock.relativePath));
14
+ const modelReference = await this.modelService.createModelReference(uri);
15
+ const fileContent = modelReference.instance.getMonacoModel().getValue();
16
+ const stream = await this.aiBackService.requestStream(`Merge all changes from the <update> snippet into the <code> below.
17
+ - Preserve the code's structure, order, comments, and indentation exactly.
18
+ - Output only the updated code, enclosed within <updated-code> and </updated-code> tags.
19
+ - Do not include any additional text, explanations, placeholders, ellipses, or code fences.
20
+
21
+ <code>${fileContent}</code>
22
+
23
+ <update>${codeBlock.codeEdit}</update>
24
+
25
+ Provide the complete updated code.
26
+ `, {
27
+ ...this.chatProxyService.getRequestOptions(),
28
+ trimTexts: ['<updated-code>', '</updated-code>'],
29
+ system: 'You are a coding assistant that helps merge code updates, ensuring every modification is fully integrated.',
30
+ });
31
+ return {
32
+ stream,
33
+ };
34
+ }
35
+ };
36
+ exports.ApplyService = ApplyService;
37
+ tslib_1.__decorate([
38
+ (0, di_1.Autowired)(browser_1.IEditorDocumentModelService),
39
+ tslib_1.__metadata("design:type", Object)
40
+ ], ApplyService.prototype, "modelService", void 0);
41
+ tslib_1.__decorate([
42
+ (0, di_1.Autowired)(ide_core_browser_1.AIBackSerivcePath),
43
+ tslib_1.__metadata("design:type", Object)
44
+ ], ApplyService.prototype, "aiBackService", void 0);
45
+ tslib_1.__decorate([
46
+ (0, di_1.Autowired)(common_1.ChatProxyServiceToken),
47
+ tslib_1.__metadata("design:type", chat_proxy_service_1.ChatProxyService)
48
+ ], ApplyService.prototype, "chatProxyService", void 0);
49
+ exports.ApplyService = ApplyService = tslib_1.__decorate([
50
+ (0, di_1.Injectable)()
51
+ ], ApplyService);
52
+ //# sourceMappingURL=apply.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.service.js","sourceRoot":"","sources":["../../../src/browser/chat/apply.service.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,iEAAyG;AACzG,8DAA+E;AAI/E,yCAAqD;AAErD,kEAA6D;AAE7D,6DAAwD;AAGjD,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,qCAAgB;IAStC,KAAK,CAAC,OAAO,CAAC,SAAwB;QAK9C,MAAM,GAAG,GAAG,IAAI,sBAAG,CAAC,uBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QACpF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CACnD;;;;;YAKM,WAAW;;cAET,SAAS,CAAC,QAAQ;;;CAG/B,EACK;YACE,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE;YAC5C,SAAS,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;YAChD,MAAM,EACJ,4GAA4G;SAC/G,CACF,CAAC;QAEF,OAAO;YACL,MAAM;SACP,CAAC;IACJ,CAAC;CACF,CAAA;AAzCY,oCAAY;AAEN;IADhB,IAAA,cAAS,EAAC,qCAA2B,CAAC;;kDACoB;AAG1C;IADhB,IAAA,cAAS,EAAC,oCAAiB,CAAC;;mDACkB;AAE9B;IADhB,IAAA,cAAS,EAAC,8BAAqB,CAAC;sCACE,qCAAgB;sDAAC;uBAPzC,YAAY;IADxB,IAAA,eAAU,GAAE;GACA,YAAY,CAyCxB"}
@@ -16,6 +16,14 @@ export declare class ChatProxyService extends Disposable {
16
16
  private readonly messageService;
17
17
  private readonly appConfig;
18
18
  private chatDeferred;
19
+ getRequestOptions(): {
20
+ clientId: string;
21
+ model: string | undefined;
22
+ modelId: string | undefined;
23
+ apiKey: string;
24
+ baseURL: string;
25
+ system: string | undefined;
26
+ };
19
27
  registerDefaultAgent(): void;
20
28
  }
21
29
  //# sourceMappingURL=chat-proxy.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-proxy.service.d.ts","sourceRoot":"","sources":["../../../src/browser/chat/chat-proxy.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,UAAU,EAMX,MAAM,2BAA2B,CAAC;AAoBnC;;GAEG;AACH,qBACa,gBAAiB,SAAQ,UAAU;IAE9C,MAAM,CAAC,QAAQ,CAAC,QAAQ,wBAAwB;IAGhD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IAGrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAG/C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAG1D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAG9D,OAAO,CAAC,aAAa,CAAc;IAGnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IAGzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;IAGzD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC,OAAO,CAAC,YAAY,CAAwC;IAErD,oBAAoB;CAyG5B"}
1
+ {"version":3,"file":"chat-proxy.service.d.ts","sourceRoot":"","sources":["../../../src/browser/chat/chat-proxy.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,UAAU,EAMX,MAAM,2BAA2B,CAAC;AAoBnC;;GAEG;AACH,qBACa,gBAAiB,SAAQ,UAAU;IAE9C,MAAM,CAAC,QAAQ,CAAC,QAAQ,wBAAwB;IAGhD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IAGrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAG/C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAG1D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAG9D,OAAO,CAAC,aAAa,CAAc;IAGnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IAGzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;IAGzD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC,OAAO,CAAC,YAAY,CAAwC;IAErD,iBAAiB;;;;;;;;IA2BjB,oBAAoB;CAoF5B"}
@@ -22,6 +22,35 @@ let ChatProxyService = ChatProxyService_1 = class ChatProxyService extends ide_c
22
22
  super(...arguments);
23
23
  this.chatDeferred = new ide_core_common_1.Deferred();
24
24
  }
25
+ getRequestOptions() {
26
+ const model = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.LLMModelSelection);
27
+ const modelId = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.ModelID);
28
+ let apiKey = '';
29
+ let baseURL = '';
30
+ if (model === 'deepseek') {
31
+ apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.DeepseekApiKey, '');
32
+ }
33
+ else if (model === 'openai') {
34
+ apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiApiKey, '');
35
+ }
36
+ else if (model === 'anthropic') {
37
+ apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.AnthropicApiKey, '');
38
+ }
39
+ else {
40
+ // openai-compatible 为兜底
41
+ apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiApiKey, '');
42
+ baseURL = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiBaseURL, '');
43
+ }
44
+ const agent = this.chatAgentService.getAgent(ChatProxyService_1.AGENT_ID);
45
+ return {
46
+ clientId: this.applicationService.clientId,
47
+ model,
48
+ modelId,
49
+ apiKey,
50
+ baseURL,
51
+ system: agent === null || agent === void 0 ? void 0 : agent.metadata.systemPrompt,
52
+ };
53
+ }
25
54
  registerDefaultAgent() {
26
55
  this.chatAgentViewService.registerChatComponent({
27
56
  id: 'toolCall',
@@ -46,35 +75,11 @@ let ChatProxyService = ChatProxyService_1 = class ChatProxyService extends ide_c
46
75
  prompt = slashCommandPrompt;
47
76
  }
48
77
  }
49
- const model = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.LLMModelSelection);
50
- const modelId = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.ModelID);
51
- let apiKey = '';
52
- let baseURL = '';
53
- if (model === 'deepseek') {
54
- apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.DeepseekApiKey, '');
55
- }
56
- else if (model === 'openai') {
57
- apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiApiKey, '');
58
- }
59
- else if (model === 'anthropic') {
60
- apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.AnthropicApiKey, '');
61
- }
62
- else {
63
- // openai-compatible 为兜底
64
- apiKey = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiApiKey, '');
65
- baseURL = this.preferenceService.get(ai_native_1.AINativeSettingSectionsId.OpenaiBaseURL, '');
66
- }
67
- const agent = this.chatAgentService.getAgent(ChatProxyService_1.AGENT_ID);
68
78
  const stream = await this.aiBackService.requestStream(prompt, {
69
79
  requestId: request.requestId,
70
80
  sessionId: request.sessionId,
71
81
  history,
72
- clientId: this.applicationService.clientId,
73
- apiKey,
74
- model,
75
- modelId,
76
- baseURL,
77
- system: agent === null || agent === void 0 ? void 0 : agent.metadata.systemPrompt,
82
+ ...this.getRequestOptions(),
78
83
  }, token);
79
84
  (0, stream_1.listenReadable)(stream, {
80
85
  onData: (data) => {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-proxy.service.js","sourceRoot":"","sources":["../../../src/browser/chat/chat-proxy.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-proxy.service.js","sourceRoot":"","sources":["../../../src/browser/chat/chat-proxy.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAGL,qBAAqB,EACrB,aAAa,EASd,MAAM,4BAA4B,CAAC;AA8DpC,qBACa,cAAe,SAAQ,aAAa;IAE/C,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;;IAOzD,oBAAoB,WAAqD;IACzE,SAAS,EAAE,QAAQ,EAAE,CAkHnB;IAEF,YAAY;;;;;;;;;;;;SAcV;CACH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAGL,qBAAqB,EACrB,aAAa,EASd,MAAM,4BAA4B,CAAC;AAgEpC,qBACa,cAAe,SAAQ,aAAa;IAE/C,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;;IAOzD,oBAAoB,WAAqD;IACzE,SAAS,EAAE,QAAQ,EAAE,CAsHnB;IAEF,YAAY;;;;;;;;;;;;SAcV;CACH"}
@@ -10,6 +10,7 @@ const llm_context_1 = require("../common/llm-context");
10
10
  const mcp_server_manager_1 = require("../common/mcp-server-manager");
11
11
  const context_prompt_provider_1 = require("../common/prompts/context-prompt-provider");
12
12
  const ai_core_contribution_1 = require("./ai-core.contribution");
13
+ const apply_service_1 = require("./chat/apply.service");
13
14
  const chat_agent_service_1 = require("./chat/chat-agent.service");
14
15
  const chat_agent_view_service_1 = require("./chat/chat-agent.view.service");
15
16
  const chat_manager_service_1 = require("./chat/chat-manager.service");
@@ -32,6 +33,7 @@ const rename_feature_registry_1 = require("./contrib/rename/rename.feature.regis
32
33
  const terminal_ai_contributon_1 = require("./contrib/terminal/terminal-ai.contributon");
33
34
  const terminal_feature_registry_1 = require("./contrib/terminal/terminal.feature.registry");
34
35
  const service_1 = require("./languages/service");
36
+ const base_apply_service_1 = require("./mcp/base-apply.service");
35
37
  const mcp_config_commands_1 = require("./mcp/config/mcp-config.commands");
36
38
  const mcp_config_contribution_1 = require("./mcp/config/mcp-config.contribution");
37
39
  const mcp_server_proxy_service_1 = require("./mcp/mcp-server-proxy.service");
@@ -165,6 +167,10 @@ let AINativeModule = class AINativeModule extends ide_core_browser_1.BrowserModu
165
167
  token: context_prompt_provider_1.ChatAgentPromptProvider,
166
168
  useClass: context_prompt_provider_1.DefaultChatAgentPromptProvider,
167
169
  },
170
+ {
171
+ token: base_apply_service_1.BaseApplyService,
172
+ useClass: apply_service_1.ApplyService,
173
+ },
168
174
  ];
169
175
  this.backServices = [
170
176
  {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"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"}
@@ -140,7 +140,7 @@ let BaseLanguageModel = class BaseLanguageModel {
140
140
  }
141
141
  // 处理最后一行可能存在的后缀
142
142
  if (pendingLines.length > 0) {
143
- let lastLine = pendingLines[pendingLines.length - 1];
143
+ let lastLine = pendingLines[pendingLines.length - 1].trim();
144
144
  if (lastLine.endsWith(trimTexts[1])) {
145
145
  // 移除后缀
146
146
  lastLine = lastLine.substring(0, lastLine.length - trimTexts[1].length);
@@ -1 +1 @@
1
- {"version":3,"file":"base-language-model.js","sourceRoot":"","sources":["../../src/node/base-language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-language-model.js","sourceRoot":"","sources":["../../src/node/base-language-model.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-ai-native",
3
- "version": "3.8.1-next-1741251026.0",
3
+ "version": "3.8.1-next-1741253659.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.1-next-1741251026.0",
28
- "@opensumi/ide-components": "3.8.1-next-1741251026.0",
29
- "@opensumi/ide-connection": "3.8.1-next-1741251026.0",
30
- "@opensumi/ide-core-common": "3.8.1-next-1741251026.0",
31
- "@opensumi/ide-core-node": "3.8.1-next-1741251026.0",
32
- "@opensumi/ide-debug": "3.8.1-next-1741251026.0",
33
- "@opensumi/ide-design": "3.8.1-next-1741251026.0",
34
- "@opensumi/ide-editor": "3.8.1-next-1741251026.0",
35
- "@opensumi/ide-file-search": "3.8.1-next-1741251026.0",
36
- "@opensumi/ide-file-service": "3.8.1-next-1741251026.0",
37
- "@opensumi/ide-main-layout": "3.8.1-next-1741251026.0",
38
- "@opensumi/ide-markers": "3.8.1-next-1741251026.0",
39
- "@opensumi/ide-monaco": "3.8.1-next-1741251026.0",
40
- "@opensumi/ide-overlay": "3.8.1-next-1741251026.0",
41
- "@opensumi/ide-preferences": "3.8.1-next-1741251026.0",
42
- "@opensumi/ide-search": "3.8.1-next-1741251026.0",
43
- "@opensumi/ide-terminal-next": "3.8.1-next-1741251026.0",
44
- "@opensumi/ide-theme": "3.8.1-next-1741251026.0",
45
- "@opensumi/ide-utils": "3.8.1-next-1741251026.0",
46
- "@opensumi/ide-workspace": "3.8.1-next-1741251026.0",
27
+ "@opensumi/ide-addons": "3.8.1-next-1741253659.0",
28
+ "@opensumi/ide-components": "3.8.1-next-1741253659.0",
29
+ "@opensumi/ide-connection": "3.8.1-next-1741253659.0",
30
+ "@opensumi/ide-core-common": "3.8.1-next-1741253659.0",
31
+ "@opensumi/ide-core-node": "3.8.1-next-1741253659.0",
32
+ "@opensumi/ide-debug": "3.8.1-next-1741253659.0",
33
+ "@opensumi/ide-design": "3.8.1-next-1741253659.0",
34
+ "@opensumi/ide-editor": "3.8.1-next-1741253659.0",
35
+ "@opensumi/ide-file-search": "3.8.1-next-1741253659.0",
36
+ "@opensumi/ide-file-service": "3.8.1-next-1741253659.0",
37
+ "@opensumi/ide-main-layout": "3.8.1-next-1741253659.0",
38
+ "@opensumi/ide-markers": "3.8.1-next-1741253659.0",
39
+ "@opensumi/ide-monaco": "3.8.1-next-1741253659.0",
40
+ "@opensumi/ide-overlay": "3.8.1-next-1741253659.0",
41
+ "@opensumi/ide-preferences": "3.8.1-next-1741253659.0",
42
+ "@opensumi/ide-search": "3.8.1-next-1741253659.0",
43
+ "@opensumi/ide-terminal-next": "3.8.1-next-1741253659.0",
44
+ "@opensumi/ide-theme": "3.8.1-next-1741253659.0",
45
+ "@opensumi/ide-utils": "3.8.1-next-1741253659.0",
46
+ "@opensumi/ide-workspace": "3.8.1-next-1741253659.0",
47
47
  "@xterm/xterm": "5.5.0",
48
48
  "ai": "^4.1.45",
49
49
  "ansi-regex": "^2.0.0",
@@ -58,7 +58,7 @@
58
58
  "zod-to-json-schema": "^3.24.1"
59
59
  },
60
60
  "devDependencies": {
61
- "@opensumi/ide-core-browser": "3.8.1-next-1741251026.0"
61
+ "@opensumi/ide-core-browser": "3.8.1-next-1741253659.0"
62
62
  },
63
- "gitHead": "288cef3ccee1c336f47ffc832287a9b256528c8a"
63
+ "gitHead": "c26a8e014a6e0dc205b830c484301c351ab91ca6"
64
64
  }
@@ -0,0 +1,55 @@
1
+ import { Autowired, Injectable } from '@opensumi/di';
2
+ import { AIBackSerivcePath, IAIBackService, IChatProgress, URI, path } from '@opensumi/ide-core-browser';
3
+ import { IEditorDocumentModelService } from '@opensumi/ide-editor/lib/browser';
4
+ import { SumiReadableStream } from '@opensumi/ide-utils/lib/stream';
5
+ import { Range } from '@opensumi/monaco-editor-core';
6
+
7
+ import { ChatProxyServiceToken } from '../../common';
8
+ import { CodeBlockData } from '../../common/types';
9
+ import { BaseApplyService } from '../mcp/base-apply.service';
10
+
11
+ import { ChatProxyService } from './chat-proxy.service';
12
+
13
+ @Injectable()
14
+ export class ApplyService extends BaseApplyService {
15
+ @Autowired(IEditorDocumentModelService)
16
+ private readonly modelService: IEditorDocumentModelService;
17
+
18
+ @Autowired(AIBackSerivcePath)
19
+ private readonly aiBackService: IAIBackService;
20
+ @Autowired(ChatProxyServiceToken)
21
+ private readonly chatProxyService: ChatProxyService;
22
+
23
+ protected async doApply(codeBlock: CodeBlockData): Promise<{
24
+ range?: Range;
25
+ stream?: SumiReadableStream<IChatProgress, Error>;
26
+ result?: string;
27
+ }> {
28
+ const uri = new URI(path.join(this.appConfig.workspaceDir, codeBlock.relativePath));
29
+ const modelReference = await this.modelService.createModelReference(uri);
30
+ const fileContent = modelReference.instance.getMonacoModel().getValue();
31
+ const stream = await this.aiBackService.requestStream(
32
+ `Merge all changes from the <update> snippet into the <code> below.
33
+ - Preserve the code's structure, order, comments, and indentation exactly.
34
+ - Output only the updated code, enclosed within <updated-code> and </updated-code> tags.
35
+ - Do not include any additional text, explanations, placeholders, ellipses, or code fences.
36
+
37
+ <code>${fileContent}</code>
38
+
39
+ <update>${codeBlock.codeEdit}</update>
40
+
41
+ Provide the complete updated code.
42
+ `,
43
+ {
44
+ ...this.chatProxyService.getRequestOptions(),
45
+ trimTexts: ['<updated-code>', '</updated-code>'],
46
+ system:
47
+ 'You are a coding assistant that helps merge code updates, ensuring every modification is fully integrated.',
48
+ },
49
+ );
50
+
51
+ return {
52
+ stream,
53
+ };
54
+ }
55
+ }
@@ -76,6 +76,33 @@ export class ChatProxyService extends Disposable {
76
76
 
77
77
  private chatDeferred: Deferred<void> = new Deferred<void>();
78
78
 
79
+ public getRequestOptions() {
80
+ const model = this.preferenceService.get<string>(AINativeSettingSectionsId.LLMModelSelection);
81
+ const modelId = this.preferenceService.get<string>(AINativeSettingSectionsId.ModelID);
82
+ let apiKey: string = '';
83
+ let baseURL: string = '';
84
+ if (model === 'deepseek') {
85
+ apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.DeepseekApiKey, '');
86
+ } else if (model === 'openai') {
87
+ apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiApiKey, '');
88
+ } else if (model === 'anthropic') {
89
+ apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.AnthropicApiKey, '');
90
+ } else {
91
+ // openai-compatible 为兜底
92
+ apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiApiKey, '');
93
+ baseURL = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiBaseURL, '');
94
+ }
95
+ const agent = this.chatAgentService.getAgent(ChatProxyService.AGENT_ID);
96
+ return {
97
+ clientId: this.applicationService.clientId,
98
+ model,
99
+ modelId,
100
+ apiKey,
101
+ baseURL,
102
+ system: agent?.metadata.systemPrompt,
103
+ };
104
+ }
105
+
79
106
  public registerDefaultAgent() {
80
107
  this.chatAgentViewService.registerChatComponent({
81
108
  id: 'toolCall',
@@ -116,34 +143,13 @@ export class ChatProxyService extends Disposable {
116
143
  }
117
144
  }
118
145
 
119
- const model = this.preferenceService.get<string>(AINativeSettingSectionsId.LLMModelSelection);
120
- const modelId = this.preferenceService.get<string>(AINativeSettingSectionsId.ModelID);
121
- let apiKey: string = '';
122
- let baseURL: string = '';
123
- if (model === 'deepseek') {
124
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.DeepseekApiKey, '');
125
- } else if (model === 'openai') {
126
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiApiKey, '');
127
- } else if (model === 'anthropic') {
128
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.AnthropicApiKey, '');
129
- } else {
130
- // openai-compatible 为兜底
131
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiApiKey, '');
132
- baseURL = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiBaseURL, '');
133
- }
134
- const agent = this.chatAgentService.getAgent(ChatProxyService.AGENT_ID);
135
146
  const stream = await this.aiBackService.requestStream(
136
147
  prompt,
137
148
  {
138
149
  requestId: request.requestId,
139
150
  sessionId: request.sessionId,
140
151
  history,
141
- clientId: this.applicationService.clientId,
142
- apiKey,
143
- model,
144
- modelId,
145
- baseURL,
146
- system: agent?.metadata.systemPrompt,
152
+ ...this.getRequestOptions(),
147
153
  },
148
154
  token,
149
155
  );
@@ -33,6 +33,7 @@ import { MCPServerManager, MCPServerManagerPath } from '../common/mcp-server-man
33
33
  import { ChatAgentPromptProvider, DefaultChatAgentPromptProvider } from '../common/prompts/context-prompt-provider';
34
34
 
35
35
  import { AINativeBrowserContribution } from './ai-core.contribution';
36
+ import { ApplyService } from './chat/apply.service';
36
37
  import { ChatAgentService } from './chat/chat-agent.service';
37
38
  import { ChatAgentViewService } from './chat/chat-agent.view.service';
38
39
  import { ChatManagerService } from './chat/chat-manager.service';
@@ -55,6 +56,7 @@ import { RenameCandidatesProviderRegistry } from './contrib/rename/rename.featur
55
56
  import { TerminalAIContribution } from './contrib/terminal/terminal-ai.contributon';
56
57
  import { TerminalFeatureRegistry } from './contrib/terminal/terminal.feature.registry';
57
58
  import { LanguageParserService } from './languages/service';
59
+ import { BaseApplyService } from './mcp/base-apply.service';
58
60
  import { MCPConfigCommandContribution } from './mcp/config/mcp-config.commands';
59
61
  import { MCPConfigContribution } from './mcp/config/mcp-config.contribution';
60
62
  import { MCPServerProxyService } from './mcp/mcp-server-proxy.service';
@@ -199,6 +201,10 @@ export class AINativeModule extends BrowserModule {
199
201
  token: ChatAgentPromptProvider,
200
202
  useClass: DefaultChatAgentPromptProvider,
201
203
  },
204
+ {
205
+ token: BaseApplyService,
206
+ useClass: ApplyService,
207
+ },
202
208
  ];
203
209
 
204
210
  backServices = [
@@ -198,7 +198,7 @@ export abstract class BaseLanguageModel {
198
198
 
199
199
  // 处理最后一行可能存在的后缀
200
200
  if (pendingLines.length > 0) {
201
- let lastLine = pendingLines[pendingLines.length - 1];
201
+ let lastLine = pendingLines[pendingLines.length - 1].trim();
202
202
 
203
203
  if (lastLine.endsWith(trimTexts[1])) {
204
204
  // 移除后缀