@mcp-abap-adt/llm-agent-server 29.0.0 → 30.1.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/README.md CHANGED
@@ -92,6 +92,7 @@ ref and the section uses its role's default.
92
92
  | each `llm:` entry | `LLM` | `LLM_API_KEY`, or `LLM_SERVICE_KEY` for SAP AI Core |
93
93
  | `rag.store`, a qdrant `skillPlugins.store` | `RAG_STORE` | `RAG_STORE_API_KEY` (Qdrant) or `RAG_STORE_USER` + `RAG_STORE_PASSWORD` |
94
94
  | `rag.embedder` | `RAG_EMBEDDER` | `RAG_EMBEDDER_API_KEY`, or `RAG_EMBEDDER_SERVICE_KEY` for SAP AI Core |
95
+ | `decision:` (TypeSafe) | `DECISION` | `DECISION_API_KEY` |
95
96
 
96
97
  **The skill store shares `RAG_STORE` with `rag.store`.** A qdrant `skillPlugins.store` with no
97
98
  `credentialRef` reads the `RAG_STORE` default too, so the two share its one credential kind:
@@ -17,6 +17,7 @@ export type CredentialFor = (ref: string) => CredentialEntry | undefined;
17
17
  export declare const DEFAULT_LLM_REF = "LLM";
18
18
  export declare const DEFAULT_STORE_REF = "RAG_STORE";
19
19
  export declare const DEFAULT_EMBEDDER_REF = "RAG_EMBEDDER";
20
+ export declare const DEFAULT_DECISION_REF = "DECISION";
20
21
  /**
21
22
  * A function, not a map literal, so nothing is read or parsed until a ref asks —
22
23
  * and memoized, so the same ref always hands back the SAME credential object.
@@ -1 +1 @@
1
- {"version":3,"file":"credential-for.d.ts","sourceRoot":"","sources":["../../src/composition/credential-for.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAIvC,MAAM,MAAM,aAAa,GACrB,iBAAiB,GACjB,iBAAiB,GACjB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,eAAe,GAAG;IAC5B;mFAC+E;IAC/E,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;AAEzE;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAC7C,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,GACvD,aAAa,CAQf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAuC9C;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,EAAE,OAAO,GACf,MAAM,GAAG,SAAS,CAWpB"}
1
+ {"version":3,"file":"credential-for.d.ts","sourceRoot":"","sources":["../../src/composition/credential-for.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAIvC,MAAM,MAAM,aAAa,GACrB,iBAAiB,GACjB,iBAAiB,GACjB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,eAAe,GAAG;IAC5B;mFAC+E;IAC/E,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;AAEzE;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAC7C,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AACnD,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,GACvD,aAAa,CAQf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,CAAC,GAAG,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAuC9C;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,EAAE,OAAO,GACf,MAAM,GAAG,SAAS,CAWpB"}
@@ -9,6 +9,7 @@ import { serviceKeyCredential } from '@mcp-abap-adt/sap-aicore-auth';
9
9
  export const DEFAULT_LLM_REF = 'LLM';
10
10
  export const DEFAULT_STORE_REF = 'RAG_STORE';
11
11
  export const DEFAULT_EMBEDDER_REF = 'RAG_EMBEDDER';
12
+ export const DEFAULT_DECISION_REF = 'DECISION';
12
13
  /**
13
14
  * A function, not a map literal, so nothing is read or parsed until a ref asks —
14
15
  * and memoized, so the same ref always hands back the SAME credential object.
@@ -1 +1 @@
1
- {"version":3,"file":"credential-for.js","sourceRoot":"","sources":["../../src/composition/credential-for.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credential-for.js","sourceRoot":"","sources":["../../src/composition/credential-for.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export { legacyEnvHint } from './credential-for.js';
3
3
  export { createModelResolver } from './model-resolver.js';
4
4
  export type CompositionDeps = Pick<BuildAgentDeps, 'makeLlm' | 'resolveEmbedder' | 'makeRag'> & {
5
5
  buildSkillHost: NonNullable<BuildAgentDeps['buildSkillHost']>;
6
+ makeDecisionModel: NonNullable<BuildAgentDeps['makeDecisionModel']>;
6
7
  };
7
8
  /**
8
9
  * The three construction seams the library no longer defaults (§4.6.3, §4.6.4)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAQ1E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,cAAc,EACd,SAAS,GAAG,iBAAiB,GAAG,SAAS,CAC1C,GAAG;IACF,cAAc,EAAE,WAAW,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;CAC/D,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CAQjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAS1E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,cAAc,EACd,SAAS,GAAG,iBAAiB,GAAG,SAAS,CAC1C,GAAG;IACF,cAAc,EAAE,WAAW,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,iBAAiB,EAAE,WAAW,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC;CACrE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CASjB"}
@@ -1,6 +1,7 @@
1
1
  import { createBuildSkillHost } from './build-skill-host.js';
2
2
  import { envCredentialEntries, memoizeCredentials } from './credential-for.js';
3
3
  import { createLookup } from './lookup.js';
4
+ import { createMakeDecisionModel } from './make-decision-model.js';
4
5
  import { createMakeLlm } from './make-llm.js';
5
6
  import { createMakeRag } from './make-rag.js';
6
7
  import { createResolveEmbedder } from './resolve-embedder.js';
@@ -19,6 +20,7 @@ export function buildCompositionDeps(env = process.env) {
19
20
  resolveEmbedder: createResolveEmbedder(lookup),
20
21
  makeRag: createMakeRag(lookup),
21
22
  buildSkillHost: createBuildSkillHost(lookup),
23
+ makeDecisionModel: createMakeDecisionModel(lookup),
22
24
  };
23
25
  }
24
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAS1D;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAO;QACL,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC;QAC9B,eAAe,EAAE,qBAAqB,CAAC,MAAM,CAAC;QAC9C,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC;QAC9B,cAAc,EAAE,oBAAoB,CAAC,MAAM,CAAC;KAC7C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAU1D;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAO;QACL,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC;QAC9B,eAAe,EAAE,qBAAqB,CAAC,MAAM,CAAC;QAC9C,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC;QAC9B,cAAc,EAAE,oBAAoB,CAAC,MAAM,CAAC;QAC5C,iBAAiB,EAAE,uBAAuB,CAAC,MAAM,CAAC;KACnD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { IDecisionModel } from '@mcp-abap-adt/llm-agent';
2
+ import type { SmartServerDecisionConfig } from '@mcp-abap-adt/llm-agent-server-libs';
3
+ import { type TypeSafeDecisionConfig } from '@mcp-abap-adt/typesafe-decision';
4
+ import type { Lookup } from './lookup.js';
5
+ /** Injectable so a test records what each constructor receives. */
6
+ export interface DecisionProviderCtors {
7
+ typesafe: new (cfg: TypeSafeDecisionConfig) => IDecisionModel;
8
+ }
9
+ export declare const SHIPPED_DECISION_PROVIDERS: DecisionProviderCtors;
10
+ /**
11
+ * `BuildAgentDeps.makeDecisionModel`. The provider config is built from NAMED
12
+ * fields — nothing spreads `cfg` — so `credentialRef` cannot ride along, and an
13
+ * optional field absent from the section stays absent (unset is not sent).
14
+ */
15
+ export declare function createMakeDecisionModel(lookup: Lookup, ctors?: DecisionProviderCtors): (cfg: SmartServerDecisionConfig) => Promise<IDecisionModel>;
16
+ //# sourceMappingURL=make-decision-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-decision-model.d.ts","sourceRoot":"","sources":["../../src/composition/make-decision-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,mEAAmE;AACnE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,KAAK,GAAG,EAAE,sBAAsB,KAAK,cAAc,CAAC;CAC/D;AAED,eAAO,MAAM,0BAA0B,EAAE,qBAExC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,qBAAkD,GACxD,CAAC,GAAG,EAAE,yBAAyB,KAAK,OAAO,CAAC,cAAc,CAAC,CAyB7D"}
@@ -0,0 +1,31 @@
1
+ import { TypeSafeDecisionModel, } from '@mcp-abap-adt/typesafe-decision';
2
+ import { DEFAULT_DECISION_REF } from './credential-for.js';
3
+ export const SHIPPED_DECISION_PROVIDERS = {
4
+ typesafe: TypeSafeDecisionModel,
5
+ };
6
+ /**
7
+ * `BuildAgentDeps.makeDecisionModel`. The provider config is built from NAMED
8
+ * fields — nothing spreads `cfg` — so `credentialRef` cannot ride along, and an
9
+ * optional field absent from the section stays absent (unset is not sent).
10
+ */
11
+ export function createMakeDecisionModel(lookup, ctors = SHIPPED_DECISION_PROVIDERS) {
12
+ return async (cfg) => {
13
+ switch (cfg.provider) {
14
+ case 'typesafe': {
15
+ const credential = lookup(cfg.credentialRef, DEFAULT_DECISION_REF, 'decision typesafe').require('api-key');
16
+ return new ctors.typesafe({
17
+ credential,
18
+ ...(cfg.model !== undefined ? { model: cfg.model } : {}),
19
+ ...(cfg.baseUrl !== undefined ? { baseUrl: cfg.baseUrl } : {}),
20
+ ...(cfg.timeoutMs !== undefined ? { timeoutMs: cfg.timeoutMs } : {}),
21
+ ...(cfg.maxRetries !== undefined
22
+ ? { maxRetries: cfg.maxRetries }
23
+ : {}),
24
+ });
25
+ }
26
+ default:
27
+ throw new Error(`unknown decision provider '${String(cfg.provider)}'`);
28
+ }
29
+ };
30
+ }
31
+ //# sourceMappingURL=make-decision-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-decision-model.js","sourceRoot":"","sources":["../../src/composition/make-decision-model.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAQ3D,MAAM,CAAC,MAAM,0BAA0B,GAA0B;IAC/D,QAAQ,EAAE,qBAAqB;CAChC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAc,EACd,QAA+B,0BAA0B;IAEzD,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE;QACnB,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;YACrB,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,UAAU,GAAG,MAAM,CACvB,GAAG,CAAC,aAAa,EACjB,oBAAoB,EACpB,mBAAmB,CACpB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrB,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC;oBACxB,UAAU;oBACV,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxD,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9D,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpE,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS;wBAC9B,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE;wBAChC,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;YACL,CAAC;YACD;gBACE,MAAM,IAAI,KAAK,CACb,8BAA8B,MAAM,CAAE,GAA8B,CAAC,QAAQ,CAAC,GAAG,CAClF,CAAC;QACN,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"make-llm.d.ts","sourceRoot":"","sources":["../../src/composition/make-llm.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,gBAAgB,GAAG,WAAW,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE,KAAK,aAAa,GAAG,KAAK,GAAG,EAAE,eAAe,KAAK,gBAAgB,CAAC;AAEpE,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,KAAK,GAAG,EAAE,YAAY,KAAK,gBAAgB,CAAC;IACpD,SAAS,EAAE,KAAK,GAAG,EAAE,eAAe,KAAK,gBAAgB,CAAC;IAC1D,QAAQ,EAAE,KAAK,GAAG,EAAE,cAAc,KAAK,gBAAgB,CAAC;IACxD,MAAM,EAAE,KAAK,GAAG,EAAE,YAAY,KAAK,gBAAgB,CAAC;IACpD;;;;;OAKG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CAC5C;AAED,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,gBAAwC,GAC9C,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CA8D9C"}
1
+ {"version":3,"file":"make-llm.d.ts","sourceRoot":"","sources":["../../src/composition/make-llm.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,gBAAgB,GAAG,WAAW,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE,KAAK,aAAa,GAAG,KAAK,GAAG,EAAE,eAAe,KAAK,gBAAgB,CAAC;AAEpE,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,KAAK,GAAG,EAAE,YAAY,KAAK,gBAAgB,CAAC;IACpD,SAAS,EAAE,KAAK,GAAG,EAAE,eAAe,KAAK,gBAAgB,CAAC;IAC1D,QAAQ,EAAE,KAAK,GAAG,EAAE,cAAc,KAAK,gBAAgB,CAAC;IACxD,MAAM,EAAE,KAAK,GAAG,EAAE,YAAY,KAAK,gBAAgB,CAAC;IACpD;;;;;OAKG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CAC5C;AAED,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,gBAAwC,GAC9C,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAyE9C"}
@@ -27,6 +27,12 @@ export function createMakeLlm(lookup, ctors = SHIPPED_LLM_PROVIDERS) {
27
27
  maxTokens: cfg.maxTokens,
28
28
  whenThrottled: cfg.whenThrottled,
29
29
  };
30
+ // A knob only one provider understands is refused elsewhere, not dropped:
31
+ // the config said something, and silently ignoring it runs against a
32
+ // resource group nobody chose.
33
+ if (cfg.resourceGroup !== undefined && cfg.provider !== 'sap-ai-sdk') {
34
+ throw new Error(`llm resourceGroup applies to provider 'sap-ai-sdk' only, not '${String(cfg.provider)}'`);
35
+ }
30
36
  const provider = await (async () => {
31
37
  switch (cfg.provider) {
32
38
  case 'openai':
@@ -64,6 +70,9 @@ export function createMakeLlm(lookup, ctors = SHIPPED_LLM_PROVIDERS) {
64
70
  ...knobs,
65
71
  credential: entry.require('bearer'),
66
72
  apiBaseUrl: entry.requireApiBaseUrl(),
73
+ ...(cfg.resourceGroup !== undefined
74
+ ? { resourceGroup: cfg.resourceGroup }
75
+ : {}),
67
76
  });
68
77
  default:
69
78
  throw new Error(`unknown llm provider '${String(cfg.provider)}'`);
@@ -1 +1 @@
1
- {"version":3,"file":"make-llm.js","sourceRoot":"","sources":["../../src/composition/make-llm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make-llm.js","sourceRoot":"","sources":["../../src/composition/make-llm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-embedder.d.ts","sourceRoot":"","sources":["../../src/composition/resolve-embedder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAEL,KAAK,yBAAyB,EAC9B,eAAe,IAAI,kBAAkB,EACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAqB1C;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,OAAO,kBAAuC,GACnD,CACD,GAAG,EAAE,yBAAyB,EAC9B,OAAO,CAAC,EAAE,yBAAyB,KAChC,SAAS,CAoEb"}
1
+ {"version":3,"file":"resolve-embedder.d.ts","sourceRoot":"","sources":["../../src/composition/resolve-embedder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAEL,KAAK,yBAAyB,EAC9B,eAAe,IAAI,kBAAkB,EACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAqB1C;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,OAAO,kBAAuC,GACnD,CACD,GAAG,EAAE,yBAAyB,EAC9B,OAAO,CAAC,EAAE,yBAAyB,KAChC,SAAS,CAgFb"}
@@ -37,6 +37,11 @@ export function createResolveEmbedder(lookup, impl = libResolveEmbedder) {
37
37
  };
38
38
  return impl(resolution, options);
39
39
  }
40
+ if (cfg.inputType !== undefined &&
41
+ cfg.provider !== 'sap-ai-core' &&
42
+ cfg.provider !== 'sap-aicore') {
43
+ throw new Error(`embedder inputType applies to provider 'sap-ai-core' only, not '${cfg.provider}'`);
44
+ }
40
45
  const entry = lookup(cfg.credentialRef, DEFAULT_EMBEDDER_REF, cfg.provider);
41
46
  const model = requireModel(cfg);
42
47
  const batch = cfg.maxBatchSize !== undefined ? { maxBatchSize: cfg.maxBatchSize } : {};
@@ -58,6 +63,9 @@ export function createResolveEmbedder(lookup, impl = libResolveEmbedder) {
58
63
  ? { resourceGroup: cfg.resourceGroup }
59
64
  : {}),
60
65
  ...(cfg.scenario !== undefined ? { scenario: cfg.scenario } : {}),
66
+ ...(cfg.inputType !== undefined
67
+ ? { inputType: cfg.inputType }
68
+ : {}),
61
69
  ...batch,
62
70
  credential: entry.require('bearer'),
63
71
  apiBaseUrl: entry.requireApiBaseUrl(),
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-embedder.js","sourceRoot":"","sources":["../../src/composition/resolve-embedder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-embedder.js","sourceRoot":"","sources":["../../src/composition/resolve-embedder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/llm-agent-server",
3
- "version": "29.0.0",
3
+ "version": "30.1.0",
4
4
  "description": "Default SmartAgent implementation with LLM providers, MCP client, HTTP server, and CLI.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -28,41 +28,42 @@
28
28
  "release:check": "tsc -p tsconfig.json --noEmit"
29
29
  },
30
30
  "dependencies": {
31
- "@mcp-abap-adt/anthropic-llm": "^29.0.0",
32
- "@mcp-abap-adt/deepseek-llm": "^29.0.0",
33
- "@mcp-abap-adt/hana-vector-rag": "^29.0.0",
31
+ "@mcp-abap-adt/anthropic-llm": "^30.1.0",
32
+ "@mcp-abap-adt/deepseek-llm": "^30.1.0",
33
+ "@mcp-abap-adt/hana-vector-rag": "^30.1.0",
34
34
  "@mcp-abap-adt/interfaces-auth": "^2.1.0",
35
35
  "@mcp-abap-adt/interfaces-utils": "^1.1.0",
36
- "@mcp-abap-adt/llm-agent": "^29.0.0",
37
- "@mcp-abap-adt/llm-agent-libs": "^29.0.0",
38
- "@mcp-abap-adt/llm-agent-mcp": "^29.0.0",
39
- "@mcp-abap-adt/llm-agent-rag": "^29.0.0",
40
- "@mcp-abap-adt/llm-agent-server-libs": "^29.0.0",
41
- "@mcp-abap-adt/ollama-embedder": "^29.0.0",
42
- "@mcp-abap-adt/ollama-llm": "^29.0.0",
43
- "@mcp-abap-adt/openai-embedder": "^29.0.0",
44
- "@mcp-abap-adt/openai-llm": "^29.0.0",
45
- "@mcp-abap-adt/pg-vector-rag": "^29.0.0",
46
- "@mcp-abap-adt/qdrant-rag": "^29.0.0",
47
- "@mcp-abap-adt/sap-aicore-auth": "^29.0.0",
48
- "@mcp-abap-adt/sap-aicore-embedder": "^29.0.0",
49
- "@mcp-abap-adt/sap-aicore-llm": "^29.0.0",
36
+ "@mcp-abap-adt/llm-agent": "^30.1.0",
37
+ "@mcp-abap-adt/llm-agent-libs": "^30.1.0",
38
+ "@mcp-abap-adt/llm-agent-mcp": "^30.1.0",
39
+ "@mcp-abap-adt/llm-agent-rag": "^30.1.0",
40
+ "@mcp-abap-adt/llm-agent-server-libs": "^30.1.0",
41
+ "@mcp-abap-adt/ollama-embedder": "^30.1.0",
42
+ "@mcp-abap-adt/ollama-llm": "^30.1.0",
43
+ "@mcp-abap-adt/openai-embedder": "^30.1.0",
44
+ "@mcp-abap-adt/openai-llm": "^30.1.0",
45
+ "@mcp-abap-adt/pg-vector-rag": "^30.1.0",
46
+ "@mcp-abap-adt/qdrant-rag": "^30.1.0",
47
+ "@mcp-abap-adt/sap-aicore-auth": "^30.1.0",
48
+ "@mcp-abap-adt/sap-aicore-embedder": "^30.1.0",
49
+ "@mcp-abap-adt/sap-aicore-llm": "^30.1.0",
50
+ "@mcp-abap-adt/typesafe-decision": "^30.1.0",
50
51
  "@modelcontextprotocol/sdk": "^1.30.1",
51
52
  "dotenv": "^17.3.1",
52
53
  "yaml": "^2.9.1",
53
54
  "zod": "^4.6.5"
54
55
  },
55
56
  "devDependencies": {
56
- "@mcp-abap-adt/anthropic-llm": "^29.0.0",
57
- "@mcp-abap-adt/deepseek-llm": "^29.0.0",
58
- "@mcp-abap-adt/hana-vector-rag": "^29.0.0",
59
- "@mcp-abap-adt/ollama-embedder": "^29.0.0",
60
- "@mcp-abap-adt/openai-embedder": "^29.0.0",
61
- "@mcp-abap-adt/openai-llm": "^29.0.0",
62
- "@mcp-abap-adt/pg-vector-rag": "^29.0.0",
63
- "@mcp-abap-adt/qdrant-rag": "^29.0.0",
64
- "@mcp-abap-adt/sap-aicore-embedder": "^29.0.0",
65
- "@mcp-abap-adt/sap-aicore-llm": "^29.0.0",
57
+ "@mcp-abap-adt/anthropic-llm": "^30.1.0",
58
+ "@mcp-abap-adt/deepseek-llm": "^30.1.0",
59
+ "@mcp-abap-adt/hana-vector-rag": "^30.1.0",
60
+ "@mcp-abap-adt/ollama-embedder": "^30.1.0",
61
+ "@mcp-abap-adt/openai-embedder": "^30.1.0",
62
+ "@mcp-abap-adt/openai-llm": "^30.1.0",
63
+ "@mcp-abap-adt/pg-vector-rag": "^30.1.0",
64
+ "@mcp-abap-adt/qdrant-rag": "^30.1.0",
65
+ "@mcp-abap-adt/sap-aicore-embedder": "^30.1.0",
66
+ "@mcp-abap-adt/sap-aicore-llm": "^30.1.0",
66
67
  "@opentelemetry/api": "^1.9.1",
67
68
  "@sap-ai-sdk/ai-api": "^2.16.0",
68
69
  "@sap-ai-sdk/orchestration": "^2.16.0",