@theia/ai-anthropic 1.77.0-next.4 → 1.77.0-next.43

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 (26) hide show
  1. package/lib/node/anthropic-backend-module.d.ts.map +1 -1
  2. package/lib/node/anthropic-backend-module.js +8 -0
  3. package/lib/node/anthropic-backend-module.js.map +1 -1
  4. package/lib/node/anthropic-language-model.d.ts +51 -18
  5. package/lib/node/anthropic-language-model.d.ts.map +1 -1
  6. package/lib/node/anthropic-language-model.js +96 -48
  7. package/lib/node/anthropic-language-model.js.map +1 -1
  8. package/lib/node/anthropic-language-model.spec.js +272 -60
  9. package/lib/node/anthropic-language-model.spec.js.map +1 -1
  10. package/lib/node/anthropic-language-models-manager-impl.d.ts +2 -2
  11. package/lib/node/anthropic-language-models-manager-impl.d.ts.map +1 -1
  12. package/lib/node/anthropic-language-models-manager-impl.js +35 -11
  13. package/lib/node/anthropic-language-models-manager-impl.js.map +1 -1
  14. package/lib/node/anthropic-language-models-manager-impl.spec.js +97 -14
  15. package/lib/node/anthropic-language-models-manager-impl.spec.js.map +1 -1
  16. package/lib/node/anthropic-reasoning.d.ts +1 -2
  17. package/lib/node/anthropic-reasoning.d.ts.map +1 -1
  18. package/lib/node/anthropic-reasoning.js +8 -8
  19. package/lib/node/anthropic-reasoning.js.map +1 -1
  20. package/package.json +4 -4
  21. package/src/node/anthropic-backend-module.ts +11 -1
  22. package/src/node/anthropic-language-model.spec.ts +278 -118
  23. package/src/node/anthropic-language-model.ts +135 -56
  24. package/src/node/anthropic-language-models-manager-impl.spec.ts +97 -16
  25. package/src/node/anthropic-language-models-manager-impl.ts +35 -34
  26. package/src/node/anthropic-reasoning.ts +8 -9
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/anthropic-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAgB/D,wBAGG"}
1
+ {"version":3,"file":"anthropic-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/anthropic-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAa,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AA0B1E,wBAGG"}
@@ -19,12 +19,20 @@ const inversify_1 = require("@theia/core/shared/inversify");
19
19
  const anthropic_language_models_manager_1 = require("../common/anthropic-language-models-manager");
20
20
  const core_1 = require("@theia/core");
21
21
  const anthropic_language_models_manager_impl_1 = require("./anthropic-language-models-manager-impl");
22
+ const anthropic_language_model_1 = require("./anthropic-language-model");
22
23
  const connection_container_module_1 = require("@theia/core/lib/node/messaging/connection-container-module");
23
24
  const anthropic_preferences_1 = require("../common/anthropic-preferences");
24
25
  // We use a connection module to handle AI services separately for each frontend.
25
26
  const anthropicConnectionModule = connection_container_module_1.ConnectionContainerModule.create(({ bind, bindBackendService, bindFrontendService }) => {
26
27
  bind(anthropic_language_models_manager_impl_1.AnthropicLanguageModelsManagerImpl).toSelf().inSingletonScope();
27
28
  bind(anthropic_language_models_manager_1.AnthropicLanguageModelsManager).toService(anthropic_language_models_manager_impl_1.AnthropicLanguageModelsManagerImpl);
29
+ bind(anthropic_language_model_1.AnthropicModel).toSelf().inTransientScope();
30
+ bind(anthropic_language_model_1.AnthropicLanguageModelFactory).toFactory(({ container }) => params => {
31
+ const child = new inversify_1.Container();
32
+ child.parent = container;
33
+ child.bind(anthropic_language_model_1.AnthropicModelParams).toConstantValue(params);
34
+ return child.get(anthropic_language_model_1.AnthropicModel);
35
+ });
28
36
  bind(core_1.ConnectionHandler).toDynamicValue(ctx => new core_1.RpcConnectionHandler(anthropic_language_models_manager_1.ANTHROPIC_LANGUAGE_MODELS_MANAGER_PATH, () => ctx.container.get(anthropic_language_models_manager_1.AnthropicLanguageModelsManager))).inSingletonScope();
29
37
  });
30
38
  exports.default = new inversify_1.ContainerModule(bind => {
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-backend-module.js","sourceRoot":"","sources":["../../src/node/anthropic-backend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,4DAA+D;AAC/D,mGAAqI;AACrI,sCAA8F;AAC9F,qGAA8F;AAC9F,4GAAuG;AACvG,2EAA6E;AAE7E,iFAAiF;AACjF,MAAM,yBAAyB,GAAG,uDAAyB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,EAAE,EAAE;IACrH,IAAI,CAAC,2EAAkC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACrE,IAAI,CAAC,kEAA8B,CAAC,CAAC,SAAS,CAAC,2EAAkC,CAAC,CAAC;IACnF,IAAI,CAAC,wBAAiB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CACzC,IAAI,2BAAoB,CAAC,0EAAsC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,kEAA8B,CAAC,CAAC,CAC5H,CAAC,gBAAgB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,6BAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,kDAA0B,EAAE,CAAC,CAAC;IACrF,IAAI,CAAC,uDAAyB,CAAC,CAAC,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"anthropic-backend-module.js","sourceRoot":"","sources":["../../src/node/anthropic-backend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,4DAA0E;AAC1E,mGAAqI;AACrI,sCAA8F;AAC9F,qGAA8F;AAC9F,yEAAiH;AACjH,4GAAuG;AACvG,2EAA6E;AAE7E,iFAAiF;AACjF,MAAM,yBAAyB,GAAG,uDAAyB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,EAAE,EAAE;IACrH,IAAI,CAAC,2EAAkC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACrE,IAAI,CAAC,kEAA8B,CAAC,CAAC,SAAS,CAAC,2EAAkC,CAAC,CAAC;IACnF,IAAI,CAAC,yCAAc,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACjD,IAAI,CAAC,wDAA6B,CAAC,CAAC,SAAS,CACzC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE;QACxB,MAAM,KAAK,GAAG,IAAI,qBAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,+CAAoB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,GAAG,CAAC,yCAAc,CAAC,CAAC;IACrC,CAAC,CACJ,CAAC;IACF,IAAI,CAAC,wBAAiB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CACzC,IAAI,2BAAoB,CAAC,0EAAsC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,kEAA8B,CAAC,CAAC,CAC5H,CAAC,gBAAgB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,6BAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,kDAA0B,EAAE,CAAC,CAAC;IACrF,IAAI,CAAC,uDAAyB,CAAC,CAAC,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
- import { LanguageModel, LanguageModelMessage, LanguageModelRequest, LanguageModelResponse, LanguageModelStatus, LanguageModelStreamResponse, LanguageModelTextResponse, ReasoningApi, ReasoningSupport, ServerToolDescriptor, UserRequest } from '@theia/ai-core';
2
- import { CancellationToken } from '@theia/core';
1
+ import { LanguageModel, LanguageModelMessage, LanguageModelRequest, LanguageModelResponse, LanguageModelStatus, LanguageModelStreamResponse, LanguageModelTextResponse, ReasoningApi, ReasoningSupport, ServerToolDescriptor, ToolCallExecutor, UserRequest } from '@theia/ai-core';
2
+ import { CancellationToken, ILogger } from '@theia/core';
3
3
  import { Anthropic } from '@anthropic-ai/sdk';
4
4
  import type { MessageParam } from '@anthropic-ai/sdk/resources';
5
5
  export declare const DEFAULT_MAX_TOKENS = 4096;
@@ -14,9 +14,10 @@ export declare const ANTHROPIC_RESULT_BLOCK_DATA_KEY = "anthropicResultBlock";
14
14
  * @param messages Array of LanguageModelRequestMessage to transform
15
15
  * @param addCacheControl whether to add prompt-cache control to the system message
16
16
  * @param compactionEnabled whether the request will use the beta endpoint, so compaction replay blocks may be emitted
17
+ * @param dropEmptyThinking whether to drop signed thinking blocks with empty text, which gateways stripping the text produce
17
18
  * @returns Object containing transformed messages and optional system message
18
19
  */
19
- export declare function transformToAnthropicParams(messages: readonly LanguageModelMessage[], addCacheControl?: boolean, compactionEnabled?: boolean): {
20
+ export declare function transformToAnthropicParams(messages: readonly LanguageModelMessage[], addCacheControl?: boolean, compactionEnabled?: boolean, dropEmptyThinking?: boolean): {
20
21
  messages: MessageParam[];
21
22
  systemMessage?: Anthropic.Messages.TextBlockParam[];
22
23
  };
@@ -30,10 +31,30 @@ export declare function mergeConsecutiveSameRoleMessages(messages: MessageParam[
30
31
  */
31
32
  export declare function addCacheControlToLastMessage(messages: Anthropic.Messages.MessageParam[]): Anthropic.Messages.MessageParam[];
32
33
  export declare const AnthropicModelIdentifier: unique symbol;
33
- /**
34
- * Implements the Anthropic language model integration for Theia. Reasoning-level
35
- * translation lives in {@link anthropicReasoningFor}.
36
- */
34
+ export interface AnthropicModelParams {
35
+ id: string;
36
+ model: string;
37
+ status: LanguageModelStatus;
38
+ enableStreaming: boolean;
39
+ useCaching: boolean;
40
+ apiKey: () => string | undefined;
41
+ url: string | undefined;
42
+ maxTokens?: number;
43
+ maxRetries?: number;
44
+ proxy?: string;
45
+ reasoningSupport?: ReasoningSupport;
46
+ reasoningApi?: ReasoningApi;
47
+ maxInputTokens?: number;
48
+ serverTools?: ServerToolDescriptor[];
49
+ serverSideCompactionSupport?: boolean;
50
+ serverSideCompactionEnabledByDefault?: boolean;
51
+ serverSideCompactionTokenThresholdByDefault?: number;
52
+ headers?: Record<string, string>;
53
+ released?: number;
54
+ }
55
+ export declare const AnthropicModelParams: unique symbol;
56
+ export declare const AnthropicLanguageModelFactory: unique symbol;
57
+ export type AnthropicLanguageModelFactory = (params: AnthropicModelParams) => AnthropicModel;
37
58
  /** Options for {@link createAnthropicClient}. */
38
59
  export interface AnthropicClientOptions {
39
60
  /** The key to authenticate with. A custom endpoint may need none. */
@@ -50,8 +71,12 @@ export interface AnthropicClientOptions {
50
71
  * the SDK accepts.
51
72
  */
52
73
  export declare function createAnthropicClient(options: AnthropicClientOptions): Anthropic;
74
+ /**
75
+ * Implements the Anthropic language model integration for Theia. Reasoning-level
76
+ * translation lives in {@link anthropicReasoningFor}.
77
+ */
53
78
  export declare class AnthropicModel implements LanguageModel {
54
- readonly id: string;
79
+ id: string;
55
80
  model: string;
56
81
  status: LanguageModelStatus;
57
82
  enableStreaming: boolean;
@@ -60,20 +85,22 @@ export declare class AnthropicModel implements LanguageModel {
60
85
  url: string | undefined;
61
86
  maxTokens: number;
62
87
  maxRetries: number;
63
- proxy?: string | undefined;
64
- reasoningSupport?: ReasoningSupport | undefined;
65
- reasoningApi?: ReasoningApi | undefined;
66
- supportsXHighEffort?: boolean | undefined;
67
- maxInputTokens?: number | undefined;
68
- serverTools?: ServerToolDescriptor[] | undefined;
88
+ proxy?: string;
89
+ reasoningSupport?: ReasoningSupport;
90
+ reasoningApi?: ReasoningApi;
91
+ maxInputTokens?: number;
92
+ serverTools?: ServerToolDescriptor[];
69
93
  serverSideCompactionSupport: boolean;
70
94
  serverSideCompactionEnabledByDefault: boolean;
71
- serverSideCompactionTokenThresholdByDefault?: number | undefined;
72
- headers?: Record<string, string> | undefined;
73
- released?: number | undefined;
95
+ serverSideCompactionTokenThresholdByDefault?: number;
96
+ headers?: Record<string, string>;
97
+ released?: number;
74
98
  /** Provider identifier, used to key per-provider settings (e.g. server tool selections) and the capabilities UI. */
75
99
  readonly vendor = "anthropic";
76
- constructor(id: string, model: string, status: LanguageModelStatus, enableStreaming: boolean, useCaching: boolean, apiKey: () => string | undefined, url: string | undefined, maxTokens?: number, maxRetries?: number, proxy?: string | undefined, reasoningSupport?: ReasoningSupport | undefined, reasoningApi?: ReasoningApi | undefined, supportsXHighEffort?: boolean | undefined, maxInputTokens?: number | undefined, serverTools?: ServerToolDescriptor[] | undefined, serverSideCompactionSupport?: boolean, serverSideCompactionEnabledByDefault?: boolean, serverSideCompactionTokenThresholdByDefault?: number | undefined, headers?: Record<string, string> | undefined, released?: number | undefined);
100
+ protected readonly params: AnthropicModelParams;
101
+ protected readonly toolCallExecutor: ToolCallExecutor;
102
+ protected readonly logger: ILogger;
103
+ protected init(): void;
77
104
  protected getSettings(request: LanguageModelRequest): Readonly<Record<string, unknown>>;
78
105
  /** Resolves whether this request will route through the Anthropic Beta Messages API for server-side compaction. */
79
106
  protected useServerSideCompaction(request: LanguageModelRequest): boolean;
@@ -89,5 +116,11 @@ export declare class AnthropicModel implements LanguageModel {
89
116
  protected createServerTools(request: LanguageModelRequest): Anthropic.Messages.ToolUnion[];
90
117
  protected handleNonStreamingRequest(anthropic: Anthropic, request: UserRequest): Promise<LanguageModelTextResponse>;
91
118
  protected initializeAnthropic(): Anthropic;
119
+ /**
120
+ * Whether requests go to a custom (API-compatible) endpoint rather than the official Anthropic API.
121
+ * Such gateways may strip thinking text while forwarding signatures, so empty thinking blocks are dropped on replay.
122
+ * Checks the client's resolved base URL, which also reflects the `ANTHROPIC_BASE_URL` environment variable.
123
+ */
124
+ protected isCustomEndpoint(anthropic: Anthropic): boolean;
92
125
  }
93
126
  //# sourceMappingURL=anthropic-language-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-language-model.d.ts","sourceRoot":"","sources":["../../src/node/anthropic-language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic-language-model.d.ts","sourceRoot":"","sources":["../../src/node/anthropic-language-model.ts"],"names":[],"mappings":"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"}
@@ -15,13 +15,15 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.AnthropicModel = exports.AnthropicModelIdentifier = exports.ANTHROPIC_RESULT_BLOCK_DATA_KEY = exports.DEFAULT_MAX_TOKENS = void 0;
18
+ exports.AnthropicModel = exports.AnthropicLanguageModelFactory = exports.AnthropicModelParams = exports.AnthropicModelIdentifier = exports.ANTHROPIC_RESULT_BLOCK_DATA_KEY = exports.DEFAULT_MAX_TOKENS = void 0;
19
19
  exports.transformToAnthropicParams = transformToAnthropicParams;
20
20
  exports.mergeConsecutiveSameRoleMessages = mergeConsecutiveSameRoleMessages;
21
21
  exports.addCacheControlToLastMessage = addCacheControlToLastMessage;
22
22
  exports.createAnthropicClient = createAnthropicClient;
23
+ const tslib_1 = require("tslib");
23
24
  const ai_core_1 = require("@theia/ai-core");
24
25
  const core_1 = require("@theia/core");
26
+ const inversify_1 = require("@theia/core/shared/inversify");
25
27
  const sdk_1 = require("@anthropic-ai/sdk");
26
28
  const node_1 = require("@theia/ai-core/lib/node");
27
29
  const anthropic_reasoning_1 = require("./anthropic-reasoning");
@@ -33,21 +35,27 @@ exports.DEFAULT_MAX_TOKENS = 4096;
33
35
  * for rendering (see {@link buildServerToolResultPart}).
34
36
  */
35
37
  exports.ANTHROPIC_RESULT_BLOCK_DATA_KEY = 'anthropicResultBlock';
38
+ /** Origin of the official Anthropic API, the SDK's default base URL. */
39
+ const ANTHROPIC_API_ORIGIN = 'https://api.anthropic.com';
36
40
  /**
37
- * Anthropic rejects replayed thinking blocks without content ('each thinking block must contain thinking')
38
- * or without a signature. Both can reach us from API-compatible endpoints that omit thinking text or
39
- * signature deltas, and from streams cancelled before the signature arrived.
41
+ * Anthropic rejects replayed thinking blocks without a signature, which reach us from API-compatible endpoints
42
+ * that omit signature deltas and from streams cancelled before the signature arrived.
43
+ *
44
+ * Signed blocks with empty text are legitimate on the official API (e.g. `display: 'omitted'`) and must be
45
+ * passed back as received. API-compatible gateways may however strip the text while forwarding the signature,
46
+ * which Anthropic rejects ('each thinking block must contain thinking'). As both look identical, empty blocks
47
+ * are only dropped when `dropEmptyThinking` is set, i.e. for custom endpoints.
40
48
  */
41
- const isReplayableThinking = (thinking, signature) => !!thinking?.trim() && !!signature;
49
+ const isReplayableThinking = (thinking, signature, dropEmptyThinking) => !!signature && (!dropEmptyThinking || !!thinking?.trim());
42
50
  /** The tool loop replays streamed messages raw (bypassing {@link createMessageContent}); drop thinking blocks Anthropic would reject. */
43
- const dropUnreplayableThinking = (content) => content.filter(block => {
44
- if (block.type === 'thinking' && !isReplayableThinking(block.thinking, block.signature)) {
51
+ const dropUnreplayableThinking = (content, dropEmptyThinking) => content.filter(block => {
52
+ if (block.type === 'thinking' && !isReplayableThinking(block.thinking, block.signature, dropEmptyThinking)) {
45
53
  console.debug('Anthropic: dropping thinking block from tool loop replay that cannot be replayed (missing thinking text or signature)');
46
54
  return false;
47
55
  }
48
56
  return true;
49
57
  });
50
- const createMessageContent = (message, compactionEnabled) => {
58
+ const createMessageContent = (message, compactionEnabled, dropEmptyThinking) => {
51
59
  if (ai_core_1.LanguageModelMessage.isCompactionMessage(message)) {
52
60
  // Only replay our own provider's compaction blocks, and only when the request will use the beta endpoint.
53
61
  // Returning [] for a skipped/foreign/disabled compaction message lets the surrounding real history carry the context.
@@ -62,7 +70,7 @@ const createMessageContent = (message, compactionEnabled) => {
62
70
  }
63
71
  else if (ai_core_1.LanguageModelMessage.isThinkingMessage(message)) {
64
72
  // Returning [] drops an unreplayable thinking block so the surrounding history still replays.
65
- if (!isReplayableThinking(message.thinking, message.signature)) {
73
+ if (!isReplayableThinking(message.thinking, message.signature, dropEmptyThinking)) {
66
74
  console.debug('Anthropic: dropping thinking block from history that cannot be replayed (missing thinking text or signature)');
67
75
  return [];
68
76
  }
@@ -141,9 +149,10 @@ function isNonThinkingParam(content) {
141
149
  * @param messages Array of LanguageModelRequestMessage to transform
142
150
  * @param addCacheControl whether to add prompt-cache control to the system message
143
151
  * @param compactionEnabled whether the request will use the beta endpoint, so compaction replay blocks may be emitted
152
+ * @param dropEmptyThinking whether to drop signed thinking blocks with empty text, which gateways stripping the text produce
144
153
  * @returns Object containing transformed messages and optional system message
145
154
  */
146
- function transformToAnthropicParams(messages, addCacheControl = true, compactionEnabled = false) {
155
+ function transformToAnthropicParams(messages, addCacheControl = true, compactionEnabled = false, dropEmptyThinking = false) {
147
156
  // Extract the system message (if any), as it is a separate parameter in the Anthropic API.
148
157
  const systemMessageObj = messages.find(message => message.actor === 'system');
149
158
  const systemMessageText = systemMessageObj && ai_core_1.LanguageModelMessage.isTextMessage(systemMessageObj) && systemMessageObj.text || undefined;
@@ -155,7 +164,7 @@ function transformToAnthropicParams(messages, addCacheControl = true, compaction
155
164
  .filter(message => !(ai_core_1.LanguageModelMessage.isServerToolUseMessage(message) && message.name === anthropic_server_tools_1.ANTHROPIC_TOOL_SEARCH))
156
165
  .map(message => ({
157
166
  role: toAnthropicRole(message),
158
- content: createMessageContent(message, compactionEnabled)
167
+ content: createMessageContent(message, compactionEnabled, dropEmptyThinking)
159
168
  }))
160
169
  // Drop messages whose content converted to empty (e.g. a skipped compaction message), so no empty turns are sent.
161
170
  .filter(message => !Array.isArray(message.content) || message.content.length > 0);
@@ -265,6 +274,8 @@ function formatToolCallResult(result) {
265
274
  }
266
275
  return result;
267
276
  }
277
+ exports.AnthropicModelParams = Symbol('AnthropicModelParams');
278
+ exports.AnthropicLanguageModelFactory = Symbol('AnthropicLanguageModelFactory');
268
279
  /**
269
280
  * Builds a finished server tool call stream part from a provider result block. The raw block is stored on
270
281
  * `data` for faithful replay, while `result` holds a compact, human-readable summary for rendering (the raw
@@ -297,35 +308,44 @@ function createAnthropicClient(options) {
297
308
  defaultHeaders: options.headers
298
309
  });
299
310
  }
300
- class AnthropicModel {
301
- constructor(id, model, status, enableStreaming, useCaching, apiKey, url, maxTokens = exports.DEFAULT_MAX_TOKENS, maxRetries = 3, proxy, reasoningSupport, reasoningApi, supportsXHighEffort, maxInputTokens, serverTools, serverSideCompactionSupport = false, serverSideCompactionEnabledByDefault = false, serverSideCompactionTokenThresholdByDefault, headers, released) {
302
- this.id = id;
303
- this.model = model;
304
- this.status = status;
305
- this.enableStreaming = enableStreaming;
306
- this.useCaching = useCaching;
307
- this.apiKey = apiKey;
308
- this.url = url;
309
- this.maxTokens = maxTokens;
310
- this.maxRetries = maxRetries;
311
- this.proxy = proxy;
312
- this.reasoningSupport = reasoningSupport;
313
- this.reasoningApi = reasoningApi;
314
- this.supportsXHighEffort = supportsXHighEffort;
315
- this.maxInputTokens = maxInputTokens;
316
- this.serverTools = serverTools;
317
- this.serverSideCompactionSupport = serverSideCompactionSupport;
318
- this.serverSideCompactionEnabledByDefault = serverSideCompactionEnabledByDefault;
319
- this.serverSideCompactionTokenThresholdByDefault = serverSideCompactionTokenThresholdByDefault;
320
- this.headers = headers;
321
- this.released = released;
311
+ /**
312
+ * Implements the Anthropic language model integration for Theia. Reasoning-level
313
+ * translation lives in {@link anthropicReasoningFor}.
314
+ */
315
+ let AnthropicModel = class AnthropicModel {
316
+ constructor() {
322
317
  /** Provider identifier, used to key per-provider settings (e.g. server tool selections) and the capabilities UI. */
323
318
  this.vendor = 'anthropic';
324
319
  }
320
+ init() {
321
+ const params = this.params;
322
+ this.id = params.id;
323
+ this.model = params.model;
324
+ this.status = params.status;
325
+ this.enableStreaming = params.enableStreaming;
326
+ this.useCaching = params.useCaching;
327
+ this.apiKey = params.apiKey;
328
+ this.url = params.url;
329
+ this.maxTokens = params.maxTokens ?? exports.DEFAULT_MAX_TOKENS;
330
+ this.maxRetries = params.maxRetries ?? 3;
331
+ this.proxy = params.proxy;
332
+ this.reasoningSupport = params.reasoningSupport;
333
+ this.reasoningApi = params.reasoningApi;
334
+ this.maxInputTokens = params.maxInputTokens;
335
+ this.serverTools = params.serverTools;
336
+ this.serverSideCompactionSupport = params.serverSideCompactionSupport ?? false;
337
+ this.serverSideCompactionEnabledByDefault = params.serverSideCompactionEnabledByDefault ?? false;
338
+ this.serverSideCompactionTokenThresholdByDefault = params.serverSideCompactionTokenThresholdByDefault;
339
+ this.headers = params.headers;
340
+ this.released = params.released;
341
+ }
325
342
  getSettings(request) {
343
+ const level = request.reasoning && this.reasoningSupport
344
+ ? ai_core_1.ReasoningSupport.clampLevel(this.reasoningSupport, request.reasoning.level)
345
+ : undefined;
326
346
  return {
327
347
  ...request.settings,
328
- ...(0, anthropic_reasoning_1.anthropicReasoningFor)(request.reasoning?.level, this.reasoningApi, this.supportsXHighEffort)
348
+ ...(0, anthropic_reasoning_1.anthropicReasoningFor)(level, this.reasoningApi)
329
349
  };
330
350
  }
331
351
  /** Resolves whether this request will route through the Anthropic Beta Messages API for server-side compaction. */
@@ -370,14 +390,14 @@ class AnthropicModel {
370
390
  async handleStreamingRequest(anthropic, request, cancellationToken, toolMessages) {
371
391
  const settings = this.getSettings(request);
372
392
  const useCompaction = this.useServerSideCompaction(request);
373
- const { messages, systemMessage } = transformToAnthropicParams(request.messages, this.useCaching, useCompaction);
393
+ const { messages, systemMessage } = transformToAnthropicParams(request.messages, this.useCaching, useCompaction, this.isCustomEndpoint(anthropic));
374
394
  let anthropicMessages = [...messages, ...(toolMessages ?? [])];
375
395
  if (this.useCaching && anthropicMessages.length) {
376
396
  anthropicMessages = addCacheControlToLastMessage(anthropicMessages);
377
397
  }
378
398
  const tools = this.createTools(request);
379
399
  if (request.deferredToolIds?.length && tools) {
380
- console.debug('Anthropic: converted tools for deferred loading:', tools.map(tool => ({
400
+ this.logger.debug('Anthropic: converted tools for deferred loading:', tools.map(tool => ({
381
401
  name: 'name' in tool ? tool.name : undefined,
382
402
  type: 'type' in tool ? tool.type : 'custom',
383
403
  defer_loading: 'defer_loading' in tool ? tool.defer_loading : undefined
@@ -559,14 +579,7 @@ class AnthropicModel {
559
579
  }
560
580
  }
561
581
  if (toolCalls.length > 0) {
562
- const toolResult = await Promise.all(toolCalls.map(async (tc) => {
563
- const tool = request.tools?.find(t => t.name === tc.name);
564
- const argsObject = tc.args.length === 0 ? '{}' : tc.args;
565
- const handlerResult = tool
566
- ? await tool.handler(argsObject, ai_core_1.ToolInvocationContext.create(tc.id))
567
- : (0, ai_core_1.createToolCallError)(`Tool '${tc.name}' not found in the available tools for this request.`, 'tool-not-available');
568
- return { name: tc.name, result: handlerResult, id: tc.id, arguments: argsObject };
569
- }));
582
+ const toolResult = await that.toolCallExecutor.executeToolCalls(toolCalls.map(tc => ({ id: tc.id, name: tc.name, arguments: tc.args.length === 0 ? '{}' : tc.args })), request.tools, { cancellationToken });
570
583
  const calls = toolResult.map(tr => ({ finished: true, id: tr.id, result: tr.result, function: { name: tr.name, arguments: tr.arguments } }));
571
584
  yield { tool_calls: calls };
572
585
  const toolResponseMessage = {
@@ -579,7 +592,7 @@ class AnthropicModel {
579
592
  };
580
593
  const result = await that.handleStreamingRequest(anthropic, request, cancellationToken, [
581
594
  ...(toolMessages ?? []),
582
- ...currentMessages.map(m => ({ role: m.role, content: dropUnreplayableThinking(m.content) }))
595
+ ...currentMessages.map(m => ({ role: m.role, content: dropUnreplayableThinking(m.content, that.isCustomEndpoint(anthropic)) }))
583
596
  .filter(m => m.content.length > 0),
584
597
  toolResponseMessage
585
598
  ]);
@@ -590,7 +603,7 @@ class AnthropicModel {
590
603
  },
591
604
  };
592
605
  stream.on('error', (error) => {
593
- console.error('Error in Anthropic streaming:', error);
606
+ this.logger.error('Error in Anthropic streaming:', error);
594
607
  });
595
608
  return { stream: asyncIterator };
596
609
  }
@@ -630,7 +643,7 @@ class AnthropicModel {
630
643
  async handleNonStreamingRequest(anthropic, request) {
631
644
  const settings = this.getSettings(request);
632
645
  const useCompaction = this.useServerSideCompaction(request);
633
- const { messages, systemMessage } = transformToAnthropicParams(request.messages, true, useCompaction);
646
+ const { messages, systemMessage } = transformToAnthropicParams(request.messages, true, useCompaction, this.isCustomEndpoint(anthropic));
634
647
  const params = this.applyCompactionParams({
635
648
  max_tokens: this.maxTokens,
636
649
  messages,
@@ -664,6 +677,41 @@ class AnthropicModel {
664
677
  }
665
678
  return createAnthropicClient({ apiKey, baseURL: this.url, proxyUrl: this.proxy, headers: this.headers });
666
679
  }
667
- }
680
+ /**
681
+ * Whether requests go to a custom (API-compatible) endpoint rather than the official Anthropic API.
682
+ * Such gateways may strip thinking text while forwarding signatures, so empty thinking blocks are dropped on replay.
683
+ * Checks the client's resolved base URL, which also reflects the `ANTHROPIC_BASE_URL` environment variable.
684
+ */
685
+ isCustomEndpoint(anthropic) {
686
+ try {
687
+ return new URL(anthropic.baseURL).origin !== ANTHROPIC_API_ORIGIN;
688
+ }
689
+ catch {
690
+ return true;
691
+ }
692
+ }
693
+ };
668
694
  exports.AnthropicModel = AnthropicModel;
695
+ tslib_1.__decorate([
696
+ (0, inversify_1.inject)(exports.AnthropicModelParams),
697
+ tslib_1.__metadata("design:type", Object)
698
+ ], AnthropicModel.prototype, "params", void 0);
699
+ tslib_1.__decorate([
700
+ (0, inversify_1.inject)(ai_core_1.ToolCallExecutor),
701
+ tslib_1.__metadata("design:type", Object)
702
+ ], AnthropicModel.prototype, "toolCallExecutor", void 0);
703
+ tslib_1.__decorate([
704
+ (0, inversify_1.inject)(core_1.ILogger),
705
+ (0, inversify_1.named)('ai-anthropic:AnthropicModel'),
706
+ tslib_1.__metadata("design:type", Object)
707
+ ], AnthropicModel.prototype, "logger", void 0);
708
+ tslib_1.__decorate([
709
+ (0, inversify_1.postConstruct)(),
710
+ tslib_1.__metadata("design:type", Function),
711
+ tslib_1.__metadata("design:paramtypes", []),
712
+ tslib_1.__metadata("design:returntype", void 0)
713
+ ], AnthropicModel.prototype, "init", null);
714
+ exports.AnthropicModel = AnthropicModel = tslib_1.__decorate([
715
+ (0, inversify_1.injectable)()
716
+ ], AnthropicModel);
669
717
  //# sourceMappingURL=anthropic-language-model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-language-model.js","sourceRoot":"","sources":["../../src/node/anthropic-language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic-language-model.js","sourceRoot":"","sources":["../../src/node/anthropic-language-model.ts"],"names":[],"mappings":"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"}