@fllf/agent-sdk 0.1.2 → 0.1.3
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/CHANGELOG.md +169 -0
- package/README.md +824 -198
- package/dist/agent/Agent.d.ts +16 -5
- package/dist/agent/Agent.d.ts.map +1 -1
- package/dist/agent/Agent.js +283 -2
- package/dist/agent/Agent.js.map +1 -1
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/types.d.ts +27 -3
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/config/config.d.ts +22 -3
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +194 -47
- package/dist/config/config.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/errors.d.ts +74 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +186 -0
- package/dist/errors.js.map +1 -0
- package/dist/executors/base-executor.d.ts +14 -0
- package/dist/executors/base-executor.d.ts.map +1 -0
- package/dist/executors/base-executor.js +31 -0
- package/dist/executors/base-executor.js.map +1 -0
- package/dist/executors/base.d.ts +36 -5
- package/dist/executors/base.d.ts.map +1 -1
- package/dist/executors/chat-request-builder.d.ts +10 -0
- package/dist/executors/chat-request-builder.d.ts.map +1 -0
- package/dist/executors/chat-request-builder.js +96 -0
- package/dist/executors/chat-request-builder.js.map +1 -0
- package/dist/executors/index.d.ts +4 -1
- package/dist/executors/index.d.ts.map +1 -1
- package/dist/executors/index.js +6 -1
- package/dist/executors/index.js.map +1 -1
- package/dist/executors/rag-executor.js +1 -1
- package/dist/executors/rag-executor.js.map +1 -1
- package/dist/executors/simple-chat-executor.d.ts +4 -2
- package/dist/executors/simple-chat-executor.d.ts.map +1 -1
- package/dist/executors/simple-chat-executor.js +59 -57
- package/dist/executors/simple-chat-executor.js.map +1 -1
- package/dist/executors/tool-calling-executor.d.ts +20 -2
- package/dist/executors/tool-calling-executor.d.ts.map +1 -1
- package/dist/executors/tool-calling-executor.js +189 -91
- package/dist/executors/tool-calling-executor.js.map +1 -1
- package/dist/history/base.d.ts +55 -2
- package/dist/history/base.d.ts.map +1 -1
- package/dist/history/base.js +49 -0
- package/dist/history/base.js.map +1 -1
- package/dist/history/compression.d.ts +49 -0
- package/dist/history/compression.d.ts.map +1 -0
- package/dist/history/compression.js +53 -0
- package/dist/history/compression.js.map +1 -0
- package/dist/history/context-window.d.ts +33 -0
- package/dist/history/context-window.d.ts.map +1 -0
- package/dist/history/context-window.js +68 -0
- package/dist/history/context-window.js.map +1 -0
- package/dist/history/in-memory.d.ts +6 -4
- package/dist/history/in-memory.d.ts.map +1 -1
- package/dist/history/in-memory.js +25 -39
- package/dist/history/in-memory.js.map +1 -1
- package/dist/history/index.d.ts +9 -2
- package/dist/history/index.d.ts.map +1 -1
- package/dist/history/index.js +18 -1
- package/dist/history/index.js.map +1 -1
- package/dist/history/postgres/index.d.ts +4 -0
- package/dist/history/postgres/index.d.ts.map +1 -0
- package/dist/history/postgres/index.js +20 -0
- package/dist/history/postgres/index.js.map +1 -0
- package/dist/history/postgres/postgres-message-history-store.d.ts +35 -0
- package/dist/history/postgres/postgres-message-history-store.d.ts.map +1 -0
- package/dist/history/postgres/postgres-message-history-store.js +195 -0
- package/dist/history/postgres/postgres-message-history-store.js.map +1 -0
- package/dist/history/postgres/schema.d.ts +18 -0
- package/dist/history/postgres/schema.d.ts.map +1 -0
- package/dist/history/postgres/schema.js +46 -0
- package/dist/history/postgres/schema.js.map +1 -0
- package/dist/history/postgres/sql.d.ts +29 -0
- package/dist/history/postgres/sql.d.ts.map +1 -0
- package/dist/history/postgres/sql.js +102 -0
- package/dist/history/postgres/sql.js.map +1 -0
- package/dist/history/postgres/types.d.ts +20 -0
- package/dist/history/postgres/types.d.ts.map +1 -0
- package/dist/history/postgres/types.js +3 -0
- package/dist/history/postgres/types.js.map +1 -0
- package/dist/history/tool-pairing.d.ts +11 -0
- package/dist/history/tool-pairing.d.ts.map +1 -0
- package/dist/history/tool-pairing.js +52 -0
- package/dist/history/tool-pairing.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/llm/LLM.d.ts +1 -0
- package/dist/llm/LLM.d.ts.map +1 -1
- package/dist/llm/LLM.js +136 -26
- package/dist/llm/LLM.js.map +1 -1
- package/dist/llm/errors.d.ts +11 -1
- package/dist/llm/errors.d.ts.map +1 -1
- package/dist/llm/errors.js +50 -1
- package/dist/llm/errors.js.map +1 -1
- package/dist/llm/factory.d.ts +14 -2
- package/dist/llm/factory.d.ts.map +1 -1
- package/dist/llm/factory.js +48 -9
- package/dist/llm/factory.js.map +1 -1
- package/dist/llm/index.d.ts +8 -3
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +10 -1
- package/dist/llm/index.js.map +1 -1
- package/dist/llm/providers/anthropic.d.ts +14 -0
- package/dist/llm/providers/anthropic.d.ts.map +1 -0
- package/dist/llm/providers/anthropic.js +336 -0
- package/dist/llm/providers/anthropic.js.map +1 -0
- package/dist/llm/providers/openai-compatible.d.ts +7 -0
- package/dist/llm/providers/openai-compatible.d.ts.map +1 -1
- package/dist/llm/providers/openai-compatible.js +151 -47
- package/dist/llm/providers/openai-compatible.js.map +1 -1
- package/dist/llm/stream-accumulator.d.ts +17 -0
- package/dist/llm/stream-accumulator.d.ts.map +1 -0
- package/dist/llm/stream-accumulator.js +83 -0
- package/dist/llm/stream-accumulator.js.map +1 -0
- package/dist/llm/tool-arguments.d.ts +6 -0
- package/dist/llm/tool-arguments.d.ts.map +1 -0
- package/dist/llm/tool-arguments.js +20 -0
- package/dist/llm/tool-arguments.js.map +1 -0
- package/dist/llm/types.d.ts +76 -4
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/messages/content.d.ts +36 -0
- package/dist/messages/content.d.ts.map +1 -0
- package/dist/messages/content.js +70 -0
- package/dist/messages/content.js.map +1 -0
- package/dist/messages/index.d.ts +4 -2
- package/dist/messages/index.d.ts.map +1 -1
- package/dist/messages/index.js +10 -1
- package/dist/messages/index.js.map +1 -1
- package/dist/messages/message.d.ts +11 -9
- package/dist/messages/message.d.ts.map +1 -1
- package/dist/messages/message.js +69 -4
- package/dist/messages/message.js.map +1 -1
- package/dist/messages/types.d.ts +12 -0
- package/dist/messages/types.d.ts.map +1 -1
- package/dist/observability/collecting-observer.d.ts +8 -0
- package/dist/observability/collecting-observer.d.ts.map +1 -0
- package/dist/observability/collecting-observer.js +15 -0
- package/dist/observability/collecting-observer.js.map +1 -0
- package/dist/observability/index.d.ts +1 -0
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +3 -1
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/observer.d.ts.map +1 -1
- package/dist/observability/observer.js +14 -1
- package/dist/observability/observer.js.map +1 -1
- package/dist/observability/types.d.ts +16 -1
- package/dist/observability/types.d.ts.map +1 -1
- package/dist/rag/chunking/auto-chunker.d.ts +7 -0
- package/dist/rag/chunking/auto-chunker.d.ts.map +1 -1
- package/dist/rag/chunking/auto-chunker.js +13 -0
- package/dist/rag/chunking/auto-chunker.js.map +1 -1
- package/dist/rag/chunking/chunker.d.ts.map +1 -1
- package/dist/rag/chunking/chunker.js +29 -5
- package/dist/rag/chunking/chunker.js.map +1 -1
- package/dist/rag/chunking/index.d.ts +2 -0
- package/dist/rag/chunking/index.d.ts.map +1 -1
- package/dist/rag/chunking/index.js +2 -0
- package/dist/rag/chunking/index.js.map +1 -1
- package/dist/rag/chunking/markdown-chunker.d.ts.map +1 -1
- package/dist/rag/chunking/markdown-chunker.js.map +1 -1
- package/dist/rag/chunking/qa-pair-chunker.d.ts +23 -0
- package/dist/rag/chunking/qa-pair-chunker.d.ts.map +1 -0
- package/dist/rag/chunking/qa-pair-chunker.js +162 -0
- package/dist/rag/chunking/qa-pair-chunker.js.map +1 -0
- package/dist/rag/chunking/semantic-chunker.d.ts +19 -0
- package/dist/rag/chunking/semantic-chunker.d.ts.map +1 -0
- package/dist/rag/chunking/semantic-chunker.js +291 -0
- package/dist/rag/chunking/semantic-chunker.js.map +1 -0
- package/dist/rag/embeddings/embedder.d.ts.map +1 -1
- package/dist/rag/embeddings/embedder.js +6 -0
- package/dist/rag/embeddings/embedder.js.map +1 -1
- package/dist/rag/generation/context-builder.d.ts +7 -0
- package/dist/rag/generation/context-builder.d.ts.map +1 -1
- package/dist/rag/generation/context-builder.js +4 -1
- package/dist/rag/generation/context-builder.js.map +1 -1
- package/dist/rag/ingestion/metadata.d.ts +6 -1
- package/dist/rag/ingestion/metadata.d.ts.map +1 -1
- package/dist/rag/ingestion/metadata.js +6 -2
- package/dist/rag/ingestion/metadata.js.map +1 -1
- package/dist/rag/pipeline.d.ts.map +1 -1
- package/dist/rag/pipeline.js +34 -11
- package/dist/rag/pipeline.js.map +1 -1
- package/dist/rag/retrieval/index.d.ts +1 -0
- package/dist/rag/retrieval/index.d.ts.map +1 -1
- package/dist/rag/retrieval/index.js +1 -0
- package/dist/rag/retrieval/index.js.map +1 -1
- package/dist/rag/retrieval/parent-child-expanding-retriever.d.ts +31 -0
- package/dist/rag/retrieval/parent-child-expanding-retriever.d.ts.map +1 -0
- package/dist/rag/retrieval/parent-child-expanding-retriever.js +194 -0
- package/dist/rag/retrieval/parent-child-expanding-retriever.js.map +1 -0
- package/dist/rag/stores/in-memory-keyword-store.d.ts.map +1 -1
- package/dist/rag/stores/in-memory-keyword-store.js +3 -8
- package/dist/rag/stores/in-memory-keyword-store.js.map +1 -1
- package/dist/rag/stores/keyword-tokenizer.d.ts +4 -0
- package/dist/rag/stores/keyword-tokenizer.d.ts.map +1 -0
- package/dist/rag/stores/keyword-tokenizer.js +113 -0
- package/dist/rag/stores/keyword-tokenizer.js.map +1 -0
- package/dist/rag/stores/postgres/pg-vector-store.d.ts.map +1 -1
- package/dist/rag/stores/postgres/pg-vector-store.js +21 -8
- package/dist/rag/stores/postgres/pg-vector-store.js.map +1 -1
- package/dist/rag/stores/postgres/postgres-document-store.d.ts.map +1 -1
- package/dist/rag/stores/postgres/postgres-document-store.js +26 -13
- package/dist/rag/stores/postgres/postgres-document-store.js.map +1 -1
- package/dist/rag/stores/postgres/postgres-keyword-store.d.ts.map +1 -1
- package/dist/rag/stores/postgres/postgres-keyword-store.js +43 -43
- package/dist/rag/stores/postgres/postgres-keyword-store.js.map +1 -1
- package/dist/rag/stores/postgres/sql.d.ts +22 -0
- package/dist/rag/stores/postgres/sql.d.ts.map +1 -1
- package/dist/rag/stores/postgres/sql.js +42 -0
- package/dist/rag/stores/postgres/sql.js.map +1 -1
- package/dist/rag/stores/types.d.ts +5 -0
- package/dist/rag/stores/types.d.ts.map +1 -1
- package/dist/rag/types.d.ts +6 -0
- package/dist/rag/types.d.ts.map +1 -1
- package/dist/testing/agent.d.ts +11 -0
- package/dist/testing/agent.d.ts.map +1 -0
- package/dist/testing/agent.js +45 -0
- package/dist/testing/agent.js.map +1 -0
- package/dist/testing/history-contract.d.ts +12 -0
- package/dist/testing/history-contract.d.ts.map +1 -0
- package/dist/testing/history-contract.js +111 -0
- package/dist/testing/history-contract.js.map +1 -0
- package/dist/testing/index.d.ts +11 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +16 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/models.d.ts +34 -0
- package/dist/testing/models.d.ts.map +1 -0
- package/dist/testing/models.js +74 -0
- package/dist/testing/models.js.map +1 -0
- package/dist/testing/tool-schema.d.ts +6 -0
- package/dist/testing/tool-schema.d.ts.map +1 -0
- package/dist/testing/tool-schema.js +29 -0
- package/dist/testing/tool-schema.js.map +1 -0
- package/dist/testing/tools.d.ts +21 -0
- package/dist/testing/tools.d.ts.map +1 -0
- package/dist/testing/tools.js +43 -0
- package/dist/testing/tools.js.map +1 -0
- package/dist/tools/base.d.ts +38 -7
- package/dist/tools/base.d.ts.map +1 -1
- package/dist/tools/base.js +238 -11
- package/dist/tools/base.js.map +1 -1
- package/dist/tools/builtin/advancedSearchTool.d.ts.map +1 -1
- package/dist/tools/builtin/advancedSearchTool.js +30 -4
- package/dist/tools/builtin/advancedSearchTool.js.map +1 -1
- package/dist/tools/builtin/ragSearchTool.d.ts +6 -3
- package/dist/tools/builtin/ragSearchTool.d.ts.map +1 -1
- package/dist/tools/builtin/ragSearchTool.js +8 -6
- package/dist/tools/builtin/ragSearchTool.js.map +1 -1
- package/dist/tools/executor.d.ts +30 -2
- package/dist/tools/executor.d.ts.map +1 -1
- package/dist/tools/executor.js +83 -15
- package/dist/tools/executor.js.map +1 -1
- package/dist/tools/index.d.ts +3 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/registry.d.ts +15 -3
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +21 -2
- package/dist/tools/registry.js.map +1 -1
- package/package.json +58 -4
package/dist/config/config.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Config = void 0;
|
|
4
|
+
const errors_1 = require("../errors");
|
|
4
5
|
class Config {
|
|
5
6
|
defaultModel;
|
|
6
7
|
defaultProvider;
|
|
7
8
|
temperature;
|
|
8
9
|
maxTokens;
|
|
10
|
+
maxInputTokens;
|
|
9
11
|
requestTimeoutMs;
|
|
10
12
|
maxRetries;
|
|
11
13
|
retryDelayMs;
|
|
@@ -13,11 +15,16 @@ class Config {
|
|
|
13
15
|
debug;
|
|
14
16
|
logLevel;
|
|
15
17
|
maxHistoryLength;
|
|
16
|
-
|
|
18
|
+
envWarnings;
|
|
19
|
+
constructor(options = {}, envWarnings = []) {
|
|
20
|
+
validateConfigOptions(options);
|
|
17
21
|
this.defaultModel = options.defaultModel;
|
|
18
22
|
this.defaultProvider = options.defaultProvider;
|
|
19
|
-
|
|
23
|
+
// 不再默认 0.7:未显式配置时把 temperature 留给模型自身的默认值,
|
|
24
|
+
// 也避免对拒绝该参数的推理模型强行下发。
|
|
25
|
+
this.temperature = options.temperature;
|
|
20
26
|
this.maxTokens = options.maxTokens;
|
|
27
|
+
this.maxInputTokens = options.maxInputTokens;
|
|
21
28
|
this.requestTimeoutMs = options.requestTimeoutMs;
|
|
22
29
|
this.maxRetries = options.maxRetries;
|
|
23
30
|
this.retryDelayMs = options.retryDelayMs;
|
|
@@ -25,76 +32,90 @@ class Config {
|
|
|
25
32
|
this.debug = options.debug ?? false;
|
|
26
33
|
this.logLevel = options.logLevel ?? 'INFO';
|
|
27
34
|
this.maxHistoryLength = options.maxHistoryLength ?? 100;
|
|
35
|
+
this.envWarnings = Object.freeze([...envWarnings]);
|
|
28
36
|
}
|
|
29
37
|
/**
|
|
30
38
|
* 环境变量只负责覆盖运行参数。
|
|
31
39
|
* 如果没有显式 MODEL,就让 LLM provider 使用自己的默认模型。
|
|
32
40
|
*/
|
|
33
|
-
static fromEnv() {
|
|
41
|
+
static fromEnv(fromEnvOptions = {}) {
|
|
42
|
+
const env = fromEnvOptions.env ?? process.env;
|
|
34
43
|
const options = {};
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
if (process.env.DEBUG !== undefined) {
|
|
42
|
-
options.debug = process.env.DEBUG.toLowerCase() === 'true';
|
|
43
|
-
}
|
|
44
|
-
if (process.env.LOG_LEVEL) {
|
|
45
|
-
options.logLevel = process.env.LOG_LEVEL;
|
|
46
|
-
}
|
|
47
|
-
if (process.env.TEMPERATURE !== undefined) {
|
|
48
|
-
const temperature = Number.parseFloat(process.env.TEMPERATURE);
|
|
49
|
-
if (!Number.isNaN(temperature)) {
|
|
50
|
-
options.temperature = temperature;
|
|
44
|
+
const warnings = [];
|
|
45
|
+
if (env.MODEL !== undefined) {
|
|
46
|
+
const model = readNonEmptyString(env, 'MODEL', warnings);
|
|
47
|
+
if (model !== undefined) {
|
|
48
|
+
options.defaultModel = model;
|
|
51
49
|
}
|
|
52
50
|
}
|
|
53
|
-
if (
|
|
54
|
-
const
|
|
55
|
-
if (
|
|
56
|
-
options.
|
|
51
|
+
if (env.MODEL_PROVIDER !== undefined) {
|
|
52
|
+
const provider = readNonEmptyString(env, 'MODEL_PROVIDER', warnings);
|
|
53
|
+
if (provider !== undefined) {
|
|
54
|
+
options.defaultProvider = provider;
|
|
57
55
|
}
|
|
58
56
|
}
|
|
59
|
-
if (
|
|
60
|
-
const
|
|
61
|
-
if (
|
|
62
|
-
options.
|
|
57
|
+
if (env.DEBUG !== undefined) {
|
|
58
|
+
const debug = readBoolean(env, 'DEBUG', warnings);
|
|
59
|
+
if (debug !== undefined) {
|
|
60
|
+
options.debug = debug;
|
|
63
61
|
}
|
|
64
62
|
}
|
|
65
|
-
if (
|
|
66
|
-
const
|
|
67
|
-
if (
|
|
68
|
-
options.
|
|
63
|
+
if (env.LOG_LEVEL !== undefined) {
|
|
64
|
+
const logLevel = readNonEmptyString(env, 'LOG_LEVEL', warnings);
|
|
65
|
+
if (logLevel !== undefined) {
|
|
66
|
+
options.logLevel = logLevel;
|
|
69
67
|
}
|
|
70
68
|
}
|
|
71
|
-
if (
|
|
72
|
-
|
|
73
|
-
if (!Number.isNaN(retryDelayMs)) {
|
|
74
|
-
options.retryDelayMs = retryDelayMs;
|
|
75
|
-
}
|
|
69
|
+
if (env.TEMPERATURE !== undefined) {
|
|
70
|
+
assignIfDefined(options, 'temperature', readNumber(env, 'TEMPERATURE', 'a finite number', warnings));
|
|
76
71
|
}
|
|
77
|
-
if (
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
72
|
+
if (env.MAX_TOKENS !== undefined) {
|
|
73
|
+
assignIfDefined(options, 'maxTokens', readPositiveInteger(env, 'MAX_TOKENS', warnings));
|
|
74
|
+
}
|
|
75
|
+
if (env.MAX_INPUT_TOKENS !== undefined) {
|
|
76
|
+
assignIfDefined(options, 'maxInputTokens', readPositiveInteger(env, 'MAX_INPUT_TOKENS', warnings));
|
|
77
|
+
}
|
|
78
|
+
if (env.REQUEST_TIMEOUT_MS !== undefined) {
|
|
79
|
+
assignIfDefined(options, 'requestTimeoutMs', readNonNegativeInteger(env, 'REQUEST_TIMEOUT_MS', warnings));
|
|
80
|
+
}
|
|
81
|
+
if (env.MAX_RETRIES !== undefined) {
|
|
82
|
+
assignIfDefined(options, 'maxRetries', readNonNegativeInteger(env, 'MAX_RETRIES', warnings));
|
|
83
|
+
}
|
|
84
|
+
if (env.RETRY_DELAY_MS !== undefined) {
|
|
85
|
+
assignIfDefined(options, 'retryDelayMs', readNonNegativeInteger(env, 'RETRY_DELAY_MS', warnings));
|
|
86
|
+
}
|
|
87
|
+
if (env.RETRY_MAX_DELAY_MS !== undefined) {
|
|
88
|
+
assignIfDefined(options, 'retryMaxDelayMs', readNonNegativeInteger(env, 'RETRY_MAX_DELAY_MS', warnings));
|
|
89
|
+
}
|
|
90
|
+
if (env.MAX_HISTORY_LENGTH !== undefined) {
|
|
91
|
+
assignIfDefined(options, 'maxHistoryLength', readPositiveInteger(env, 'MAX_HISTORY_LENGTH', warnings));
|
|
82
92
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
93
|
+
for (const warning of warnings) {
|
|
94
|
+
fromEnvOptions.onWarning?.(warning);
|
|
95
|
+
}
|
|
96
|
+
if (fromEnvOptions.strict && warnings.length > 0) {
|
|
97
|
+
const warning = warnings[0];
|
|
98
|
+
if (warning !== undefined) {
|
|
99
|
+
throw new errors_1.ConfigError(warning.message, {
|
|
100
|
+
code: 'invalid_env_config',
|
|
101
|
+
metadata: { ...warning },
|
|
102
|
+
});
|
|
87
103
|
}
|
|
104
|
+
throw new errors_1.ConfigError('Invalid environment configuration.', {
|
|
105
|
+
code: 'invalid_env_config',
|
|
106
|
+
});
|
|
88
107
|
}
|
|
89
|
-
return new Config(options);
|
|
108
|
+
return new Config(options, warnings);
|
|
90
109
|
}
|
|
91
110
|
toJSON() {
|
|
92
111
|
const options = {
|
|
93
|
-
temperature: this.temperature,
|
|
94
112
|
debug: this.debug,
|
|
95
113
|
logLevel: this.logLevel,
|
|
96
114
|
maxHistoryLength: this.maxHistoryLength,
|
|
97
115
|
};
|
|
116
|
+
if (this.temperature !== undefined) {
|
|
117
|
+
options.temperature = this.temperature;
|
|
118
|
+
}
|
|
98
119
|
if (this.defaultModel !== undefined) {
|
|
99
120
|
options.defaultModel = this.defaultModel;
|
|
100
121
|
}
|
|
@@ -104,6 +125,9 @@ class Config {
|
|
|
104
125
|
if (this.maxTokens !== undefined) {
|
|
105
126
|
options.maxTokens = this.maxTokens;
|
|
106
127
|
}
|
|
128
|
+
if (this.maxInputTokens !== undefined) {
|
|
129
|
+
options.maxInputTokens = this.maxInputTokens;
|
|
130
|
+
}
|
|
107
131
|
if (this.requestTimeoutMs !== undefined) {
|
|
108
132
|
options.requestTimeoutMs = this.requestTimeoutMs;
|
|
109
133
|
}
|
|
@@ -120,4 +144,127 @@ class Config {
|
|
|
120
144
|
}
|
|
121
145
|
}
|
|
122
146
|
exports.Config = Config;
|
|
147
|
+
function validateConfigOptions(options) {
|
|
148
|
+
validateOptionalString('defaultModel', options.defaultModel);
|
|
149
|
+
validateOptionalString('defaultProvider', options.defaultProvider);
|
|
150
|
+
validateOptionalFiniteNumber('temperature', options.temperature);
|
|
151
|
+
validateOptionalPositiveInteger('maxTokens', options.maxTokens);
|
|
152
|
+
validateOptionalPositiveInteger('maxInputTokens', options.maxInputTokens);
|
|
153
|
+
validateOptionalNonNegativeNumber('requestTimeoutMs', options.requestTimeoutMs);
|
|
154
|
+
validateOptionalNonNegativeInteger('maxRetries', options.maxRetries);
|
|
155
|
+
validateOptionalNonNegativeNumber('retryDelayMs', options.retryDelayMs);
|
|
156
|
+
validateOptionalNonNegativeNumber('retryMaxDelayMs', options.retryMaxDelayMs);
|
|
157
|
+
validateOptionalBoolean('debug', options.debug);
|
|
158
|
+
validateOptionalString('logLevel', options.logLevel);
|
|
159
|
+
validateOptionalPositiveInteger('maxHistoryLength', options.maxHistoryLength);
|
|
160
|
+
}
|
|
161
|
+
function validateOptionalString(option, value) {
|
|
162
|
+
if (value !== undefined && (typeof value !== 'string' || value.trim().length === 0)) {
|
|
163
|
+
throwInvalidConfigOption(option, 'must be a non-empty string');
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
function validateOptionalBoolean(option, value) {
|
|
167
|
+
if (value !== undefined && typeof value !== 'boolean') {
|
|
168
|
+
throwInvalidConfigOption(option, 'must be a boolean');
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
function validateOptionalFiniteNumber(option, value) {
|
|
172
|
+
if (value !== undefined && (typeof value !== 'number' || !Number.isFinite(value))) {
|
|
173
|
+
throwInvalidConfigOption(option, 'must be a finite number');
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
function validateOptionalPositiveInteger(option, value) {
|
|
177
|
+
if (value !== undefined
|
|
178
|
+
&& (typeof value !== 'number' || !Number.isInteger(value) || value <= 0)) {
|
|
179
|
+
throwInvalidConfigOption(option, 'must be a positive integer');
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
function validateOptionalNonNegativeNumber(option, value) {
|
|
183
|
+
if (value !== undefined
|
|
184
|
+
&& (typeof value !== 'number' || !Number.isFinite(value) || value < 0)) {
|
|
185
|
+
throwInvalidConfigOption(option, 'must be a non-negative finite number');
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
function validateOptionalNonNegativeInteger(option, value) {
|
|
189
|
+
if (value !== undefined
|
|
190
|
+
&& (typeof value !== 'number' || !Number.isInteger(value) || value < 0)) {
|
|
191
|
+
throwInvalidConfigOption(option, 'must be a non-negative integer');
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
function throwInvalidConfigOption(option, reason) {
|
|
195
|
+
throw new errors_1.ConfigError(`Invalid ConfigOptions.${option}: ${reason}.`, {
|
|
196
|
+
code: 'invalid_config_options',
|
|
197
|
+
metadata: {
|
|
198
|
+
option,
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
function readNonEmptyString(env, variable, warnings) {
|
|
203
|
+
const rawValue = env[variable];
|
|
204
|
+
const value = rawValue?.trim();
|
|
205
|
+
if (!value) {
|
|
206
|
+
addEnvWarning(warnings, variable, 'a non-empty string', 'empty_env_var');
|
|
207
|
+
return undefined;
|
|
208
|
+
}
|
|
209
|
+
return value;
|
|
210
|
+
}
|
|
211
|
+
function readBoolean(env, variable, warnings) {
|
|
212
|
+
const rawValue = env[variable]?.trim().toLowerCase();
|
|
213
|
+
if (rawValue === 'true') {
|
|
214
|
+
return true;
|
|
215
|
+
}
|
|
216
|
+
if (rawValue === 'false') {
|
|
217
|
+
return false;
|
|
218
|
+
}
|
|
219
|
+
addEnvWarning(warnings, variable, '"true" or "false"', 'invalid_env_var');
|
|
220
|
+
return undefined;
|
|
221
|
+
}
|
|
222
|
+
function readNumber(env, variable, expected, warnings) {
|
|
223
|
+
const rawValue = env[variable]?.trim();
|
|
224
|
+
if (!rawValue) {
|
|
225
|
+
addEnvWarning(warnings, variable, expected, 'empty_env_var');
|
|
226
|
+
return undefined;
|
|
227
|
+
}
|
|
228
|
+
const value = Number(rawValue);
|
|
229
|
+
if (!Number.isFinite(value)) {
|
|
230
|
+
addEnvWarning(warnings, variable, expected, 'invalid_env_var');
|
|
231
|
+
return undefined;
|
|
232
|
+
}
|
|
233
|
+
return value;
|
|
234
|
+
}
|
|
235
|
+
function readPositiveInteger(env, variable, warnings) {
|
|
236
|
+
const value = readNumber(env, variable, 'a positive integer', warnings);
|
|
237
|
+
if (value === undefined) {
|
|
238
|
+
return undefined;
|
|
239
|
+
}
|
|
240
|
+
if (!Number.isInteger(value) || value <= 0) {
|
|
241
|
+
addEnvWarning(warnings, variable, 'a positive integer', 'invalid_env_var');
|
|
242
|
+
return undefined;
|
|
243
|
+
}
|
|
244
|
+
return value;
|
|
245
|
+
}
|
|
246
|
+
function readNonNegativeInteger(env, variable, warnings) {
|
|
247
|
+
const value = readNumber(env, variable, 'a non-negative integer', warnings);
|
|
248
|
+
if (value === undefined) {
|
|
249
|
+
return undefined;
|
|
250
|
+
}
|
|
251
|
+
if (!Number.isInteger(value) || value < 0) {
|
|
252
|
+
addEnvWarning(warnings, variable, 'a non-negative integer', 'invalid_env_var');
|
|
253
|
+
return undefined;
|
|
254
|
+
}
|
|
255
|
+
return value;
|
|
256
|
+
}
|
|
257
|
+
function addEnvWarning(warnings, variable, expected, code) {
|
|
258
|
+
warnings.push({
|
|
259
|
+
code,
|
|
260
|
+
variable,
|
|
261
|
+
expected,
|
|
262
|
+
message: `Invalid environment variable ${variable}: expected ${expected}.`,
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
function assignIfDefined(options, key, value) {
|
|
266
|
+
if (value !== undefined) {
|
|
267
|
+
options[key] = value;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
123
270
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AAuCxC,MAAa,MAAM;IACN,YAAY,CAAqB;IACjC,eAAe,CAAgC;IAC/C,WAAW,CAAqB;IAChC,SAAS,CAAqB;IAC9B,cAAc,CAAqB;IACnC,gBAAgB,CAAqB;IACrC,UAAU,CAAqB;IAC/B,YAAY,CAAqB;IACjC,eAAe,CAAqB;IACpC,KAAK,CAAU;IACf,QAAQ,CAAS;IACjB,gBAAgB,CAAS;IACzB,WAAW,CAA8B;IAElD,YAAY,UAAyB,EAAE,EAAE,cAA2C,EAAE;QAClF,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,2CAA2C;QAC3C,sBAAsB;QACtB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC;QAC3C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,GAAG,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,iBAAuC,EAAE;QACpD,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;QAC9C,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAuB,EAAE,CAAC;QAExC,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YACjC,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;YACrE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,eAAe,GAAG,QAA6B,CAAC;YAC5D,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAChE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAChC,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAChC,eAAe,CACX,OAAO,EACP,aAAa,EACb,UAAU,CAAC,GAAG,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAC9D,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC/B,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACrC,eAAe,CACX,OAAO,EACP,gBAAgB,EAChB,mBAAmB,CAAC,GAAG,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CACzD,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACvC,eAAe,CACX,OAAO,EACP,kBAAkB,EAClB,sBAAsB,CAAC,GAAG,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAC9D,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAChC,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,sBAAsB,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACnC,eAAe,CACX,OAAO,EACP,cAAc,EACd,sBAAsB,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAC1D,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACvC,eAAe,CACX,OAAO,EACP,iBAAiB,EACjB,sBAAsB,CAAC,GAAG,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAC9D,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACvC,eAAe,CACX,OAAO,EACP,kBAAkB,EAClB,mBAAmB,CAAC,GAAG,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAC3D,CAAC;QACN,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,cAAc,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,oBAAW,CAAC,OAAO,CAAC,OAAO,EAAE;oBACnC,IAAI,EAAE,oBAAoB;oBAC1B,QAAQ,EAAE,EAAE,GAAG,OAAO,EAAE;iBAC3B,CAAC,CAAC;YACP,CAAC;YAED,MAAM,IAAI,oBAAW,CAAC,oCAAoC,EAAE;gBACxD,IAAI,EAAE,oBAAoB;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACF,MAAM,OAAO,GAAkB;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;SAC1C,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QACnD,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAzLD,wBAyLC;AAED,SAAS,qBAAqB,CAAC,OAAsB;IACjD,sBAAsB,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7D,sBAAsB,CAAC,iBAAiB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACnE,4BAA4B,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACjE,+BAA+B,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAChE,+BAA+B,CAAC,gBAAgB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1E,iCAAiC,CAAC,kBAAkB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChF,kCAAkC,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrE,iCAAiC,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACxE,iCAAiC,CAAC,iBAAiB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9E,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,sBAAsB,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,+BAA+B,CAAC,kBAAkB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,sBAAsB,CAAC,MAA2B,EAAE,KAAc;IACvE,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAClF,wBAAwB,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;IACnE,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,MAA2B,EAAE,KAAc;IACxE,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QACpD,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC1D,CAAC;AACL,CAAC;AAED,SAAS,4BAA4B,CAAC,MAA2B,EAAE,KAAc;IAC7E,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAChF,wBAAwB,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IAChE,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,MAA2B,EAAE,KAAc;IAChF,IACI,KAAK,KAAK,SAAS;WAChB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,EAC1E,CAAC;QACC,wBAAwB,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;IACnE,CAAC;AACL,CAAC;AAED,SAAS,iCAAiC,CAAC,MAA2B,EAAE,KAAc;IAClF,IACI,KAAK,KAAK,SAAS;WAChB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EACxE,CAAC;QACC,wBAAwB,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC;IAC7E,CAAC;AACL,CAAC;AAED,SAAS,kCAAkC,CAAC,MAA2B,EAAE,KAAc;IACnF,IACI,KAAK,KAAK,SAAS;WAChB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EACzE,CAAC;QACC,wBAAwB,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;IACvE,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,MAA2B,EAAE,MAAc;IACzE,MAAM,IAAI,oBAAW,CAAC,yBAAyB,MAAM,KAAK,MAAM,GAAG,EAAE;QACjE,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE;YACN,MAAM;SACT;KACJ,CAAC,CAAC;AACP,CAAC;AAED,SAAS,kBAAkB,CACvB,GAAsB,EACtB,QAAgB,EAChB,QAA4B;IAE5B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;QACzE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAChB,GAAsB,EACtB,QAAgB,EAChB,QAA4B;IAE5B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;IAC1E,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,UAAU,CACf,GAAsB,EACtB,QAAgB,EAChB,QAAgB,EAChB,QAA4B;IAE5B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC7D,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAC/D,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CACxB,GAAsB,EACtB,QAAgB,EAChB,QAA4B;IAE5B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IACxE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACzC,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAC;QAC3E,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAC3B,GAAsB,EACtB,QAAgB,EAChB,QAA4B;IAE5B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IAC5E,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACxC,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,wBAAwB,EAAE,iBAAiB,CAAC,CAAC;QAC/E,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAClB,QAA4B,EAC5B,QAAgB,EAChB,QAAgB,EAChB,IAA0B;IAE1B,QAAQ,CAAC,IAAI,CAAC;QACV,IAAI;QACJ,QAAQ;QACR,QAAQ;QACR,OAAO,EAAE,gCAAgC,QAAQ,cAAc,QAAQ,GAAG;KAC7E,CAAC,CAAC;AACP,CAAC;AAED,SAAS,eAAe,CACpB,OAAsB,EACtB,GAAS,EACT,KAAsC;IAEtC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACzB,CAAC;AACL,CAAC"}
|
package/dist/config/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EACR,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,GAChB,MAAM,UAAU,CAAC"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
export interface SDKErrorOptions {
|
|
2
|
+
code: string;
|
|
3
|
+
retryable?: boolean;
|
|
4
|
+
cause?: unknown;
|
|
5
|
+
metadata?: Record<string, unknown>;
|
|
6
|
+
}
|
|
7
|
+
export interface ComponentErrorOptions {
|
|
8
|
+
code?: string;
|
|
9
|
+
retryable?: boolean;
|
|
10
|
+
cause?: unknown;
|
|
11
|
+
metadata?: Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
export declare class AgentSDKError extends Error {
|
|
14
|
+
readonly code: string;
|
|
15
|
+
readonly retryable: boolean;
|
|
16
|
+
readonly metadata: Readonly<Record<string, unknown>> | undefined;
|
|
17
|
+
constructor(message: string, options: SDKErrorOptions);
|
|
18
|
+
}
|
|
19
|
+
export declare class AgentError extends AgentSDKError {
|
|
20
|
+
constructor(message: string, options?: ComponentErrorOptions);
|
|
21
|
+
}
|
|
22
|
+
export declare class AgentSessionError extends AgentError {
|
|
23
|
+
constructor(message: string, options?: ComponentErrorOptions);
|
|
24
|
+
}
|
|
25
|
+
export declare class AgentExecutionError extends AgentError {
|
|
26
|
+
constructor(message: string, options?: ComponentErrorOptions);
|
|
27
|
+
}
|
|
28
|
+
export declare class ToolError extends AgentSDKError {
|
|
29
|
+
readonly toolName: string | undefined;
|
|
30
|
+
constructor(message: string, options?: ComponentErrorOptions & {
|
|
31
|
+
toolName?: string;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
export declare class ToolNotFoundError extends ToolError {
|
|
35
|
+
constructor(toolName: string, options?: ComponentErrorOptions);
|
|
36
|
+
}
|
|
37
|
+
export declare class ToolExecutionError extends ToolError {
|
|
38
|
+
constructor(toolName: string, cause: unknown, options?: ComponentErrorOptions);
|
|
39
|
+
}
|
|
40
|
+
export declare class ToolConfigurationError extends ToolError {
|
|
41
|
+
constructor(message: string, options?: ComponentErrorOptions & {
|
|
42
|
+
toolName?: string;
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
export declare class ToolPermissionError extends ToolError {
|
|
46
|
+
constructor(toolName: string, options?: ComponentErrorOptions);
|
|
47
|
+
}
|
|
48
|
+
export declare class ToolTimeoutError extends ToolError {
|
|
49
|
+
constructor(toolName: string, timeoutMs: number, options?: ComponentErrorOptions);
|
|
50
|
+
}
|
|
51
|
+
export declare class ToolAbortError extends ToolError {
|
|
52
|
+
constructor(toolName: string, options?: ComponentErrorOptions);
|
|
53
|
+
}
|
|
54
|
+
export declare class HistoryError extends AgentSDKError {
|
|
55
|
+
constructor(message: string, options?: ComponentErrorOptions);
|
|
56
|
+
}
|
|
57
|
+
export interface HistoryVersionConflictInput {
|
|
58
|
+
expectedVersion: number;
|
|
59
|
+
actualVersion: number;
|
|
60
|
+
sessionId?: string;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* 乐观并发写入冲突:addMany 携带的 expectedVersion 与存储中的实际版本不一致。
|
|
64
|
+
* 默认 retryable:CAS 冲突的预期处理方式就是重读 getVersion/get 之后重试。
|
|
65
|
+
*/
|
|
66
|
+
export declare class HistoryVersionConflictError extends HistoryError {
|
|
67
|
+
readonly expectedVersion: number;
|
|
68
|
+
readonly actualVersion: number;
|
|
69
|
+
constructor(input: HistoryVersionConflictInput, options?: ComponentErrorOptions);
|
|
70
|
+
}
|
|
71
|
+
export declare class ConfigError extends AgentSDKError {
|
|
72
|
+
constructor(message: string, options?: ComponentErrorOptions);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,qBAAa,aAAc,SAAQ,KAAK;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;gBAErD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;CAOxD;AAED,qBAAa,UAAW,SAAQ,aAAa;gBAC7B,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAGnE;AAED,qBAAa,iBAAkB,SAAQ,UAAU;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAGnE;AAED,qBAAa,mBAAoB,SAAQ,UAAU;gBACnC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAGnE;AAED,qBAAa,SAAU,SAAQ,aAAa;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE1B,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAAqB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO;CAI3F;AAED,qBAAa,iBAAkB,SAAQ,SAAS;gBAChC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAYpE;AAED,qBAAa,kBAAmB,SAAQ,SAAS;gBACjC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,qBAA0B;CAapF;AAED,qBAAa,sBAAuB,SAAQ,SAAS;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAAqB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO;CAY3F;AAED,qBAAa,mBAAoB,SAAQ,SAAS;gBAClC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAYpE;AAED,qBAAa,gBAAiB,SAAQ,SAAS;gBAC/B,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAavF;AAED,qBAAa,cAAe,SAAQ,SAAS;gBAC7B,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAYpE;AAED,qBAAa,YAAa,SAAQ,aAAa;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAGnE;AAED,MAAM,WAAW,2BAA2B;IACxC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,YAAY;IACzD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,KAAK,EAAE,2BAA2B,EAAE,OAAO,GAAE,qBAA0B;CAkBtF;AAED,qBAAa,WAAY,SAAQ,aAAa;gBAC9B,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;CAGnE"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConfigError = exports.HistoryVersionConflictError = exports.HistoryError = exports.ToolAbortError = exports.ToolTimeoutError = exports.ToolPermissionError = exports.ToolConfigurationError = exports.ToolExecutionError = exports.ToolNotFoundError = exports.ToolError = exports.AgentExecutionError = exports.AgentSessionError = exports.AgentError = exports.AgentSDKError = void 0;
|
|
4
|
+
class AgentSDKError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
retryable;
|
|
7
|
+
metadata;
|
|
8
|
+
constructor(message, options) {
|
|
9
|
+
super(message, { cause: options.cause });
|
|
10
|
+
this.name = new.target.name;
|
|
11
|
+
this.code = options.code;
|
|
12
|
+
this.retryable = options.retryable ?? false;
|
|
13
|
+
this.metadata = options.metadata ? Object.freeze({ ...options.metadata }) : undefined;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.AgentSDKError = AgentSDKError;
|
|
17
|
+
class AgentError extends AgentSDKError {
|
|
18
|
+
constructor(message, options = {}) {
|
|
19
|
+
super(message, withDefaults(options, 'agent_error', false));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.AgentError = AgentError;
|
|
23
|
+
class AgentSessionError extends AgentError {
|
|
24
|
+
constructor(message, options = {}) {
|
|
25
|
+
super(message, withDefaults(options, 'agent_session', false));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.AgentSessionError = AgentSessionError;
|
|
29
|
+
class AgentExecutionError extends AgentError {
|
|
30
|
+
constructor(message, options = {}) {
|
|
31
|
+
super(message, withDefaults(options, 'agent_execution', false));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.AgentExecutionError = AgentExecutionError;
|
|
35
|
+
class ToolError extends AgentSDKError {
|
|
36
|
+
toolName;
|
|
37
|
+
constructor(message, options = {}) {
|
|
38
|
+
super(message, withDefaults(options, 'tool_error', false));
|
|
39
|
+
this.toolName = options.toolName;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.ToolError = ToolError;
|
|
43
|
+
class ToolNotFoundError extends ToolError {
|
|
44
|
+
constructor(toolName, options = {}) {
|
|
45
|
+
super(`Tool "${toolName}" is not registered.`, {
|
|
46
|
+
...options,
|
|
47
|
+
code: options.code ?? 'tool_not_found',
|
|
48
|
+
retryable: options.retryable ?? false,
|
|
49
|
+
toolName,
|
|
50
|
+
metadata: {
|
|
51
|
+
...options.metadata,
|
|
52
|
+
toolName,
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.ToolNotFoundError = ToolNotFoundError;
|
|
58
|
+
class ToolExecutionError extends ToolError {
|
|
59
|
+
constructor(toolName, cause, options = {}) {
|
|
60
|
+
super(`Tool "${toolName}" failed: ${getErrorMessage(cause)}`, {
|
|
61
|
+
...options,
|
|
62
|
+
code: options.code ?? 'tool_execution',
|
|
63
|
+
retryable: options.retryable ?? false,
|
|
64
|
+
cause,
|
|
65
|
+
toolName,
|
|
66
|
+
metadata: {
|
|
67
|
+
...options.metadata,
|
|
68
|
+
toolName,
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.ToolExecutionError = ToolExecutionError;
|
|
74
|
+
class ToolConfigurationError extends ToolError {
|
|
75
|
+
constructor(message, options = {}) {
|
|
76
|
+
const errorOptions = {
|
|
77
|
+
...options,
|
|
78
|
+
code: options.code ?? 'invalid_tool_options',
|
|
79
|
+
retryable: options.retryable ?? false,
|
|
80
|
+
};
|
|
81
|
+
if (options.toolName !== undefined) {
|
|
82
|
+
errorOptions.toolName = options.toolName;
|
|
83
|
+
}
|
|
84
|
+
super(message, errorOptions);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.ToolConfigurationError = ToolConfigurationError;
|
|
88
|
+
class ToolPermissionError extends ToolError {
|
|
89
|
+
constructor(toolName, options = {}) {
|
|
90
|
+
super(`Tool "${toolName}" was denied by the permission policy.`, {
|
|
91
|
+
...options,
|
|
92
|
+
code: options.code ?? 'tool_permission_denied',
|
|
93
|
+
retryable: options.retryable ?? false,
|
|
94
|
+
toolName,
|
|
95
|
+
metadata: {
|
|
96
|
+
...options.metadata,
|
|
97
|
+
toolName,
|
|
98
|
+
},
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
exports.ToolPermissionError = ToolPermissionError;
|
|
103
|
+
class ToolTimeoutError extends ToolError {
|
|
104
|
+
constructor(toolName, timeoutMs, options = {}) {
|
|
105
|
+
super(`Tool "${toolName}" timed out after ${timeoutMs}ms.`, {
|
|
106
|
+
...options,
|
|
107
|
+
code: options.code ?? 'tool_timeout',
|
|
108
|
+
retryable: options.retryable ?? true,
|
|
109
|
+
toolName,
|
|
110
|
+
metadata: {
|
|
111
|
+
...options.metadata,
|
|
112
|
+
toolName,
|
|
113
|
+
timeoutMs,
|
|
114
|
+
},
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.ToolTimeoutError = ToolTimeoutError;
|
|
119
|
+
class ToolAbortError extends ToolError {
|
|
120
|
+
constructor(toolName, options = {}) {
|
|
121
|
+
super(`Tool "${toolName}" was aborted.`, {
|
|
122
|
+
...options,
|
|
123
|
+
code: options.code ?? 'tool_aborted',
|
|
124
|
+
retryable: options.retryable ?? false,
|
|
125
|
+
toolName,
|
|
126
|
+
metadata: {
|
|
127
|
+
...options.metadata,
|
|
128
|
+
toolName,
|
|
129
|
+
},
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
exports.ToolAbortError = ToolAbortError;
|
|
134
|
+
class HistoryError extends AgentSDKError {
|
|
135
|
+
constructor(message, options = {}) {
|
|
136
|
+
super(message, withDefaults(options, 'history_error', false));
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
exports.HistoryError = HistoryError;
|
|
140
|
+
/**
|
|
141
|
+
* 乐观并发写入冲突:addMany 携带的 expectedVersion 与存储中的实际版本不一致。
|
|
142
|
+
* 默认 retryable:CAS 冲突的预期处理方式就是重读 getVersion/get 之后重试。
|
|
143
|
+
*/
|
|
144
|
+
class HistoryVersionConflictError extends HistoryError {
|
|
145
|
+
expectedVersion;
|
|
146
|
+
actualVersion;
|
|
147
|
+
constructor(input, options = {}) {
|
|
148
|
+
super(`Message history version conflict: expected version ${input.expectedVersion}, actual version ${input.actualVersion}.`, {
|
|
149
|
+
...options,
|
|
150
|
+
code: options.code ?? 'history_version_conflict',
|
|
151
|
+
retryable: options.retryable ?? true,
|
|
152
|
+
metadata: {
|
|
153
|
+
...options.metadata,
|
|
154
|
+
expectedVersion: input.expectedVersion,
|
|
155
|
+
actualVersion: input.actualVersion,
|
|
156
|
+
...(input.sessionId !== undefined ? { sessionId: input.sessionId } : {}),
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
this.expectedVersion = input.expectedVersion;
|
|
160
|
+
this.actualVersion = input.actualVersion;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
exports.HistoryVersionConflictError = HistoryVersionConflictError;
|
|
164
|
+
class ConfigError extends AgentSDKError {
|
|
165
|
+
constructor(message, options = {}) {
|
|
166
|
+
super(message, withDefaults(options, 'config_error', false));
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
exports.ConfigError = ConfigError;
|
|
170
|
+
function withDefaults(options, code, retryable) {
|
|
171
|
+
const normalized = {
|
|
172
|
+
code: options.code ?? code,
|
|
173
|
+
retryable: options.retryable ?? retryable,
|
|
174
|
+
};
|
|
175
|
+
if ('cause' in options) {
|
|
176
|
+
normalized.cause = options.cause;
|
|
177
|
+
}
|
|
178
|
+
if (options.metadata !== undefined) {
|
|
179
|
+
normalized.metadata = options.metadata;
|
|
180
|
+
}
|
|
181
|
+
return normalized;
|
|
182
|
+
}
|
|
183
|
+
function getErrorMessage(error) {
|
|
184
|
+
return error instanceof Error ? error.message : String(error);
|
|
185
|
+
}
|
|
186
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ChatMessage, ChatRequest } from '../llm';
|
|
2
|
+
import { Message } from '../messages';
|
|
3
|
+
import type { AgentContext, AgentExecutor, AgentResult } from './base';
|
|
4
|
+
import type { ChatRequestBuilderOptions } from './chat-request-builder';
|
|
5
|
+
export declare abstract class BaseExecutor implements AgentExecutor {
|
|
6
|
+
abstract run(context: AgentContext): Promise<AgentResult>;
|
|
7
|
+
protected createUserMessage(context: AgentContext): Message;
|
|
8
|
+
protected createAssistantMessage(content: string, metadata?: Record<string, unknown>): Message;
|
|
9
|
+
protected getHistoryWithUserMessage(context: AgentContext, userMessage: Message): Promise<Message[]>;
|
|
10
|
+
protected buildChatMessages(context: AgentContext, messages: Message[]): Promise<ChatMessage[]>;
|
|
11
|
+
protected buildChatRequest(context: AgentContext, messages: ChatMessage[], options?: ChatRequestBuilderOptions): ChatRequest;
|
|
12
|
+
protected commitMessages(context: AgentContext, messages: Message[]): Promise<Message[]>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=base-executor.d.ts.map
|