@mcp-abap-adt/llm-agent 2.9.2 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/smart-agent/agent.d.ts +18 -1
- package/dist/smart-agent/agent.d.ts.map +1 -1
- package/dist/smart-agent/agent.js +176 -21
- package/dist/smart-agent/agent.js.map +1 -1
- package/dist/smart-agent/builder.d.ts +114 -51
- package/dist/smart-agent/builder.d.ts.map +1 -1
- package/dist/smart-agent/builder.js +234 -110
- package/dist/smart-agent/builder.js.map +1 -1
- package/dist/smart-agent/cli.d.ts +1 -0
- package/dist/smart-agent/cli.d.ts.map +1 -1
- package/dist/smart-agent/cli.js +2 -0
- package/dist/smart-agent/cli.js.map +1 -1
- package/dist/smart-agent/config/config-watcher.d.ts +4 -0
- package/dist/smart-agent/config/config-watcher.d.ts.map +1 -1
- package/dist/smart-agent/config/config-watcher.js +8 -0
- package/dist/smart-agent/config/config-watcher.js.map +1 -1
- package/dist/smart-agent/config.d.ts +2 -1
- package/dist/smart-agent/config.d.ts.map +1 -1
- package/dist/smart-agent/config.js +46 -4
- package/dist/smart-agent/config.js.map +1 -1
- package/dist/smart-agent/interfaces/index.d.ts +1 -1
- package/dist/smart-agent/interfaces/index.d.ts.map +1 -1
- package/dist/smart-agent/interfaces/index.js.map +1 -1
- package/dist/smart-agent/interfaces/rag.d.ts +16 -0
- package/dist/smart-agent/interfaces/rag.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/condition-evaluator.d.ts +35 -0
- package/dist/smart-agent/pipeline/condition-evaluator.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/condition-evaluator.js +143 -0
- package/dist/smart-agent/pipeline/condition-evaluator.js.map +1 -0
- package/dist/smart-agent/pipeline/context.d.ts +104 -0
- package/dist/smart-agent/pipeline/context.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/context.js +19 -0
- package/dist/smart-agent/pipeline/context.js.map +1 -0
- package/dist/smart-agent/pipeline/default-pipeline.d.ts +45 -0
- package/dist/smart-agent/pipeline/default-pipeline.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/default-pipeline.js +118 -0
- package/dist/smart-agent/pipeline/default-pipeline.js.map +1 -0
- package/dist/smart-agent/pipeline/executor.d.ts +54 -0
- package/dist/smart-agent/pipeline/executor.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/executor.js +133 -0
- package/dist/smart-agent/pipeline/executor.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/assemble.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/assemble.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/assemble.js +57 -0
- package/dist/smart-agent/pipeline/handlers/assemble.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/classify.d.ts +21 -0
- package/dist/smart-agent/pipeline/handlers/classify.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/classify.js +53 -0
- package/dist/smart-agent/pipeline/handlers/classify.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/expand.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/expand.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/expand.js +24 -0
- package/dist/smart-agent/pipeline/handlers/expand.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/index.d.ts +28 -0
- package/dist/smart-agent/pipeline/handlers/index.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/index.js +39 -0
- package/dist/smart-agent/pipeline/handlers/index.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.d.ts +25 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.js +53 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-upsert.d.ts +17 -0
- package/dist/smart-agent/pipeline/handlers/rag-upsert.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-upsert.js +47 -0
- package/dist/smart-agent/pipeline/handlers/rag-upsert.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rerank.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/rerank.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rerank.js +38 -0
- package/dist/smart-agent/pipeline/handlers/rerank.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/summarize.d.ts +17 -0
- package/dist/smart-agent/pipeline/handlers/summarize.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/summarize.js +47 -0
- package/dist/smart-agent/pipeline/handlers/summarize.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.d.ts +32 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.js +416 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.d.ts +21 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.js +95 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/translate.d.ts +18 -0
- package/dist/smart-agent/pipeline/handlers/translate.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/translate.js +39 -0
- package/dist/smart-agent/pipeline/handlers/translate.js.map +1 -0
- package/dist/smart-agent/pipeline/index.d.ts +14 -0
- package/dist/smart-agent/pipeline/index.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/index.js +16 -0
- package/dist/smart-agent/pipeline/index.js.map +1 -0
- package/dist/smart-agent/pipeline/stage-handler.d.ts +36 -0
- package/dist/smart-agent/pipeline/stage-handler.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/stage-handler.js +24 -0
- package/dist/smart-agent/pipeline/stage-handler.js.map +1 -0
- package/dist/smart-agent/pipeline/types.d.ts +129 -0
- package/dist/smart-agent/pipeline/types.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/types.js +54 -0
- package/dist/smart-agent/pipeline/types.js.map +1 -0
- package/dist/smart-agent/pipeline.d.ts +22 -6
- package/dist/smart-agent/pipeline.d.ts.map +1 -1
- package/dist/smart-agent/pipeline.js +5 -142
- package/dist/smart-agent/pipeline.js.map +1 -1
- package/dist/smart-agent/plugins/index.d.ts +4 -0
- package/dist/smart-agent/plugins/index.d.ts.map +1 -0
- package/dist/smart-agent/plugins/index.js +3 -0
- package/dist/smart-agent/plugins/index.js.map +1 -0
- package/dist/smart-agent/plugins/loader.d.ts +67 -0
- package/dist/smart-agent/plugins/loader.d.ts.map +1 -0
- package/dist/smart-agent/plugins/loader.js +114 -0
- package/dist/smart-agent/plugins/loader.js.map +1 -0
- package/dist/smart-agent/plugins/types.d.ts +149 -0
- package/dist/smart-agent/plugins/types.d.ts.map +1 -0
- package/dist/smart-agent/plugins/types.js +111 -0
- package/dist/smart-agent/plugins/types.js.map +1 -0
- package/dist/smart-agent/providers.d.ts +76 -0
- package/dist/smart-agent/providers.d.ts.map +1 -0
- package/dist/smart-agent/providers.js +173 -0
- package/dist/smart-agent/providers.js.map +1 -0
- package/dist/smart-agent/rag/embedder-factories.d.ts +9 -0
- package/dist/smart-agent/rag/embedder-factories.d.ts.map +1 -0
- package/dist/smart-agent/rag/embedder-factories.js +27 -0
- package/dist/smart-agent/rag/embedder-factories.js.map +1 -0
- package/dist/smart-agent/rag/index.d.ts +7 -0
- package/dist/smart-agent/rag/index.d.ts.map +1 -1
- package/dist/smart-agent/rag/index.js +4 -0
- package/dist/smart-agent/rag/index.js.map +1 -1
- package/dist/smart-agent/smart-server.d.ts +25 -1
- package/dist/smart-agent/smart-server.d.ts.map +1 -1
- package/dist/smart-agent/smart-server.js +122 -27
- package/dist/smart-agent/smart-server.js.map +1 -1
- package/package.json +2 -1
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* SmartAgentBuilder — fluent builder for SmartAgent.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Assembles a SmartAgent from interface-based components.
|
|
5
|
+
* The builder itself has NO knowledge of concrete providers —
|
|
6
|
+
* all dependencies must be injected via `withXxx()` methods or
|
|
7
|
+
* resolved externally by the composition root (SmartServer, CLI).
|
|
7
8
|
*
|
|
8
|
-
* Usage
|
|
9
|
-
* const
|
|
10
|
-
*
|
|
11
|
-
* Usage — swap RAG and logger:
|
|
12
|
-
* const handle = await new SmartAgentBuilder({ llm: { apiKey } })
|
|
9
|
+
* Usage:
|
|
10
|
+
* const handle = await new SmartAgentBuilder()
|
|
11
|
+
* .withMainLlm(myLlm)
|
|
13
12
|
* .withRag({ facts: myRag, feedback: myRag, state: myRag })
|
|
14
|
-
* .withLogger(myLogger)
|
|
15
13
|
* .build();
|
|
16
14
|
*/
|
|
17
15
|
import { SmartAgent, type SmartAgentConfig, type SmartAgentRagStores } from './agent.js';
|
|
@@ -20,9 +18,12 @@ import type { IContextAssembler } from './interfaces/assembler.js';
|
|
|
20
18
|
import type { ISubpromptClassifier } from './interfaces/classifier.js';
|
|
21
19
|
import type { ILlm } from './interfaces/llm.js';
|
|
22
20
|
import type { IMcpClient } from './interfaces/mcp-client.js';
|
|
23
|
-
import {
|
|
21
|
+
import type { TokenUsage } from './llm/token-counting-llm.js';
|
|
24
22
|
import type { ILogger } from './logger/types.js';
|
|
25
23
|
import type { IMetrics } from './metrics/types.js';
|
|
24
|
+
import type { IStageHandler } from './pipeline/stage-handler.js';
|
|
25
|
+
import type { StructuredPipelineDefinition } from './pipeline/types.js';
|
|
26
|
+
import type { IPluginLoader } from './plugins/types.js';
|
|
26
27
|
import type { IPromptInjectionDetector, IToolPolicy, SessionPolicy } from './policy/types.js';
|
|
27
28
|
import type { IQueryExpander } from './rag/query-expander.js';
|
|
28
29
|
import type { IReranker } from './reranker/types.js';
|
|
@@ -30,36 +31,6 @@ import { CircuitBreaker, type CircuitBreakerConfig } from './resilience/circuit-
|
|
|
30
31
|
import type { ISessionManager } from './session/types.js';
|
|
31
32
|
import type { ITracer } from './tracer/types.js';
|
|
32
33
|
import type { IOutputValidator } from './validator/types.js';
|
|
33
|
-
export interface BuilderLlmConfig {
|
|
34
|
-
/** DeepSeek API key (required for default LLM) */
|
|
35
|
-
apiKey: string;
|
|
36
|
-
/** Default: 'deepseek-chat' */
|
|
37
|
-
model?: string;
|
|
38
|
-
/** Main LLM temperature. Default: 0.7 */
|
|
39
|
-
temperature?: number;
|
|
40
|
-
/** Classifier LLM temperature. Default: 0.1 */
|
|
41
|
-
classifierTemperature?: number;
|
|
42
|
-
}
|
|
43
|
-
export interface BuilderRagConfig {
|
|
44
|
-
/** 'ollama' | 'openai' | 'in-memory' | 'qdrant'. Default: 'ollama' */
|
|
45
|
-
type?: 'ollama' | 'openai' | 'in-memory' | 'qdrant';
|
|
46
|
-
/** Base URL for embedding service or Qdrant server */
|
|
47
|
-
url?: string;
|
|
48
|
-
/** API key (for openai type or Qdrant auth) */
|
|
49
|
-
apiKey?: string;
|
|
50
|
-
/** Embedding model name */
|
|
51
|
-
model?: string;
|
|
52
|
-
/** Qdrant collection name (required for qdrant type) */
|
|
53
|
-
collectionName?: string;
|
|
54
|
-
/** Cosine similarity dedup threshold. Default: 0.92 */
|
|
55
|
-
dedupThreshold?: number;
|
|
56
|
-
/** Per-request timeout for embedding calls in milliseconds. Default: 30 000 */
|
|
57
|
-
timeoutMs?: number;
|
|
58
|
-
/** Semantic similarity weight 0..1. Default: 0.7 */
|
|
59
|
-
vectorWeight?: number;
|
|
60
|
-
/** Lexical matching weight 0..1. Default: 0.3 */
|
|
61
|
-
keywordWeight?: number;
|
|
62
|
-
}
|
|
63
34
|
export interface BuilderMcpConfig {
|
|
64
35
|
type: 'http' | 'stdio';
|
|
65
36
|
/** HTTP: MCP endpoint URL */
|
|
@@ -82,10 +53,6 @@ export interface BuilderPromptsConfig {
|
|
|
82
53
|
historySummary?: string;
|
|
83
54
|
}
|
|
84
55
|
export interface SmartAgentBuilderConfig {
|
|
85
|
-
/** LLM credentials (required for default LLM factory). */
|
|
86
|
-
llm: BuilderLlmConfig;
|
|
87
|
-
/** RAG store config for default Ollama/InMemory stores. */
|
|
88
|
-
rag?: BuilderRagConfig;
|
|
89
56
|
/** MCP connection(s). Pass an array to connect multiple servers simultaneously. */
|
|
90
57
|
mcp?: BuilderMcpConfig | BuilderMcpConfig[];
|
|
91
58
|
/** SmartAgent orchestration limits. */
|
|
@@ -107,8 +74,7 @@ export interface SmartAgentHandle {
|
|
|
107
74
|
streamChat: ILlm['streamChat'];
|
|
108
75
|
/**
|
|
109
76
|
* Returns accumulated LLM token usage (prompt + completion + total + requests).
|
|
110
|
-
*
|
|
111
|
-
* Returns zeroes if both mainLlm and classifierLlm were overridden.
|
|
77
|
+
* Returns zeroes if usage tracking is not available on the injected LLM.
|
|
112
78
|
*/
|
|
113
79
|
getUsage(): TokenUsage;
|
|
114
80
|
/** Gracefully close MCP connections. Call on shutdown. */
|
|
@@ -138,15 +104,20 @@ export declare class SmartAgentBuilder {
|
|
|
138
104
|
private _outputValidator?;
|
|
139
105
|
private _sessionManager?;
|
|
140
106
|
private _circuitBreakerConfig?;
|
|
141
|
-
|
|
142
|
-
|
|
107
|
+
private _getUsage?;
|
|
108
|
+
private _agentOverrides;
|
|
109
|
+
private _pluginLoader?;
|
|
110
|
+
private _pipelineDefinition?;
|
|
111
|
+
private _customStageHandlers;
|
|
112
|
+
constructor(cfg?: SmartAgentBuilderConfig);
|
|
113
|
+
/** Set the main LLM used in the tool loop (required). */
|
|
143
114
|
withMainLlm(llm: ILlm): this;
|
|
144
|
-
/**
|
|
115
|
+
/** Set the helper LLM used for summarization and translation. */
|
|
145
116
|
withHelperLlm(llm: ILlm): this;
|
|
146
|
-
/**
|
|
117
|
+
/** Set the LLM used by the intent classifier. If not set, mainLlm is used. */
|
|
147
118
|
withClassifierLlm(llm: ILlm): this;
|
|
148
119
|
/**
|
|
149
|
-
*
|
|
120
|
+
* Set individual RAG stores. Unspecified stores default to InMemoryRag.
|
|
150
121
|
* Pass the same instance for all three to share a single store.
|
|
151
122
|
*/
|
|
152
123
|
withRag(stores: Partial<SmartAgentRagStores>): this;
|
|
@@ -181,6 +152,98 @@ export declare class SmartAgentBuilder {
|
|
|
181
152
|
withSessionManager(manager: ISessionManager): this;
|
|
182
153
|
/** Enable circuit breakers for LLM and embedder calls. */
|
|
183
154
|
withCircuitBreaker(config?: CircuitBreakerConfig): this;
|
|
155
|
+
/** Set a custom token usage provider. */
|
|
156
|
+
withUsageProvider(getUsage: () => TokenUsage): this;
|
|
157
|
+
/** Set the execution mode: 'smart' (full pipeline), 'hard' (MCP-only), 'pass' (direct LLM). */
|
|
158
|
+
withMode(mode: 'hard' | 'pass' | 'smart'): this;
|
|
159
|
+
/** Set the maximum number of tool-loop iterations. */
|
|
160
|
+
withMaxIterations(n: number): this;
|
|
161
|
+
/** Set the maximum number of tool calls per request. */
|
|
162
|
+
withMaxToolCalls(n: number): this;
|
|
163
|
+
/** Set the request timeout in milliseconds. */
|
|
164
|
+
withTimeout(ms: number): this;
|
|
165
|
+
/** Set the number of RAG results to retrieve per store. */
|
|
166
|
+
withRagQueryK(k: number): this;
|
|
167
|
+
/** Enable or disable query expansion for RAG queries. */
|
|
168
|
+
withQueryExpansion(enabled: boolean): this;
|
|
169
|
+
/** Enable or disable reasoning/strategy blocks in the response. */
|
|
170
|
+
withShowReasoning(enabled: boolean): this;
|
|
171
|
+
/** Set the SSE heartbeat interval in milliseconds during tool execution. */
|
|
172
|
+
withHeartbeatInterval(ms: number): this;
|
|
173
|
+
/** Enable or disable the classification pipeline stage. When disabled, input is treated as a single action. */
|
|
174
|
+
withClassification(enabled: boolean): this;
|
|
175
|
+
/** Set RAG retrieval mode: 'auto' (SAP context), 'always', or 'never'. */
|
|
176
|
+
withRagRetrieval(mode: 'auto' | 'always' | 'never'): this;
|
|
177
|
+
/** Enable or disable translation of non-ASCII RAG queries to English. */
|
|
178
|
+
withRagTranslation(enabled: boolean): this;
|
|
179
|
+
/** Enable or disable upserting classified subprompts to RAG stores. */
|
|
180
|
+
withRagUpsert(enabled: boolean): this;
|
|
181
|
+
/** Set the history message count threshold for auto-summarization. */
|
|
182
|
+
withHistorySummarization(limit: number): this;
|
|
183
|
+
/** Set the session token budget for multi-turn conversations. */
|
|
184
|
+
withSessionTokenBudget(budget: number): this;
|
|
185
|
+
/**
|
|
186
|
+
* Set a plugin loader for automatic plugin discovery.
|
|
187
|
+
*
|
|
188
|
+
* During `build()`, the loader's `load()` method is called and all
|
|
189
|
+
* discovered registrations are applied to the builder (stage handlers,
|
|
190
|
+
* embedder factories, reranker, query expander, output validator).
|
|
191
|
+
*
|
|
192
|
+
* The library ships {@link FileSystemPluginLoader} as the default.
|
|
193
|
+
* Consumers can provide their own `IPluginLoader` implementation to
|
|
194
|
+
* load plugins from npm packages, remote registries, or any other source.
|
|
195
|
+
*
|
|
196
|
+
* Explicit `withStageHandler()`, `withReranker()`, etc. calls take
|
|
197
|
+
* precedence over plugin-loaded registrations.
|
|
198
|
+
*
|
|
199
|
+
* @example Filesystem (default)
|
|
200
|
+
* ```ts
|
|
201
|
+
* import { FileSystemPluginLoader, getDefaultPluginDirs } from '@mcp-abap-adt/llm-agent';
|
|
202
|
+
* builder.withPluginLoader(new FileSystemPluginLoader({
|
|
203
|
+
* dirs: getDefaultPluginDirs(),
|
|
204
|
+
* }));
|
|
205
|
+
* ```
|
|
206
|
+
*
|
|
207
|
+
* @example Custom npm loader
|
|
208
|
+
* ```ts
|
|
209
|
+
* builder.withPluginLoader(new NpmPluginLoader(['my-plugin-a']));
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
withPluginLoader(loader: IPluginLoader): this;
|
|
213
|
+
/**
|
|
214
|
+
* Set a structured pipeline definition.
|
|
215
|
+
*
|
|
216
|
+
* When set, SmartAgent uses the {@link PipelineExecutor} to run the
|
|
217
|
+
* defined stages instead of the default hardcoded flow.
|
|
218
|
+
*
|
|
219
|
+
* The pipeline can come from structured YAML or be built programmatically.
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```ts
|
|
223
|
+
* builder.withPipeline({
|
|
224
|
+
* version: '1',
|
|
225
|
+
* stages: [
|
|
226
|
+
* { id: 'classify', type: 'classify' },
|
|
227
|
+
* { id: 'assemble', type: 'assemble' },
|
|
228
|
+
* { id: 'tool-loop', type: 'tool-loop' },
|
|
229
|
+
* ],
|
|
230
|
+
* });
|
|
231
|
+
* ```
|
|
232
|
+
*/
|
|
233
|
+
withPipeline(pipeline: StructuredPipelineDefinition): this;
|
|
234
|
+
/**
|
|
235
|
+
* Register a custom stage handler for the structured pipeline.
|
|
236
|
+
*
|
|
237
|
+
* Custom handlers extend the pipeline with domain-specific operations.
|
|
238
|
+
* The handler's `type` name can then be used in YAML stage definitions.
|
|
239
|
+
*
|
|
240
|
+
* @example
|
|
241
|
+
* ```ts
|
|
242
|
+
* builder.withStageHandler('custom-enrich', new MyEnrichHandler());
|
|
243
|
+
* // Then in YAML: { id: 'enrich', type: 'custom-enrich' }
|
|
244
|
+
* ```
|
|
245
|
+
*/
|
|
246
|
+
withStageHandler(type: string, handler: IStageHandler): this;
|
|
184
247
|
build(): Promise<SmartAgentHandle>;
|
|
185
248
|
}
|
|
186
249
|
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/smart-agent/builder.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/smart-agent/builder.ts"],"names":[],"mappings":"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"}
|