@mcp-abap-adt/llm-agent-server-libs 19.1.2 → 19.2.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/factories/controller-factory.d.ts +18 -4
- package/dist/factories/controller-factory.d.ts.map +1 -1
- package/dist/factories/controller-factory.js +50 -10
- package/dist/factories/controller-factory.js.map +1 -1
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/pipelines/controller.d.ts.map +1 -1
- package/dist/pipelines/controller.js +41 -0
- package/dist/pipelines/controller.js.map +1 -1
- package/dist/pipelines/dag.d.ts.map +1 -1
- package/dist/pipelines/dag.js +2 -1
- package/dist/pipelines/dag.js.map +1 -1
- package/dist/pipelines/flat.d.ts.map +1 -1
- package/dist/pipelines/flat.js +2 -1
- package/dist/pipelines/flat.js.map +1 -1
- package/dist/pipelines/linear.d.ts.map +1 -1
- package/dist/pipelines/linear.js +2 -1
- package/dist/pipelines/linear.js.map +1 -1
- package/dist/pipelines/register-skill-sources.d.ts +21 -0
- package/dist/pipelines/register-skill-sources.d.ts.map +1 -0
- package/dist/pipelines/register-skill-sources.js +57 -0
- package/dist/pipelines/register-skill-sources.js.map +1 -0
- package/dist/pipelines/server-context.d.ts +37 -1
- package/dist/pipelines/server-context.d.ts.map +1 -1
- package/dist/pipelines/server-context.js.map +1 -1
- package/dist/smart-agent/config.d.ts.map +1 -1
- package/dist/smart-agent/config.js +4 -0
- package/dist/smart-agent/config.js.map +1 -1
- package/dist/smart-agent/controller/artifacts.d.ts +116 -0
- package/dist/smart-agent/controller/artifacts.d.ts.map +1 -0
- package/dist/smart-agent/controller/artifacts.js +192 -0
- package/dist/smart-agent/controller/artifacts.js.map +1 -0
- package/dist/smart-agent/controller/board.d.ts +73 -0
- package/dist/smart-agent/controller/board.d.ts.map +1 -0
- package/dist/smart-agent/controller/board.js +233 -0
- package/dist/smart-agent/controller/board.js.map +1 -0
- package/dist/smart-agent/controller/controller-coordinator-handler.d.ts +67 -7
- package/dist/smart-agent/controller/controller-coordinator-handler.d.ts.map +1 -1
- package/dist/smart-agent/controller/controller-coordinator-handler.js +923 -61
- package/dist/smart-agent/controller/controller-coordinator-handler.js.map +1 -1
- package/dist/smart-agent/controller/finalizer.d.ts +48 -0
- package/dist/smart-agent/controller/finalizer.d.ts.map +1 -0
- package/dist/smart-agent/controller/finalizer.js +126 -0
- package/dist/smart-agent/controller/finalizer.js.map +1 -0
- package/dist/smart-agent/controller/memorizer.d.ts +2 -2
- package/dist/smart-agent/controller/memorizer.d.ts.map +1 -1
- package/dist/smart-agent/controller/memorizer.js +2 -2
- package/dist/smart-agent/controller/memorizer.js.map +1 -1
- package/dist/smart-agent/controller/outcome.d.ts +28 -0
- package/dist/smart-agent/controller/outcome.d.ts.map +1 -0
- package/dist/smart-agent/controller/outcome.js +30 -0
- package/dist/smart-agent/controller/outcome.js.map +1 -0
- package/dist/smart-agent/controller/planner.d.ts +28 -5
- package/dist/smart-agent/controller/planner.d.ts.map +1 -1
- package/dist/smart-agent/controller/planner.js +111 -29
- package/dist/smart-agent/controller/planner.js.map +1 -1
- package/dist/smart-agent/controller/reviewer.d.ts +48 -0
- package/dist/smart-agent/controller/reviewer.d.ts.map +1 -0
- package/dist/smart-agent/controller/reviewer.js +116 -0
- package/dist/smart-agent/controller/reviewer.js.map +1 -0
- package/dist/smart-agent/controller/run-scope.d.ts +50 -0
- package/dist/smart-agent/controller/run-scope.d.ts.map +1 -0
- package/dist/smart-agent/controller/run-scope.js +99 -0
- package/dist/smart-agent/controller/run-scope.js.map +1 -0
- package/dist/smart-agent/controller/session-bundle.d.ts +5 -0
- package/dist/smart-agent/controller/session-bundle.d.ts.map +1 -1
- package/dist/smart-agent/controller/session-bundle.js +27 -0
- package/dist/smart-agent/controller/session-bundle.js.map +1 -1
- package/dist/smart-agent/controller/types.d.ts +117 -7
- package/dist/smart-agent/controller/types.d.ts.map +1 -1
- package/dist/smart-agent/controller/types.js +30 -1
- package/dist/smart-agent/controller/types.js.map +1 -1
- package/dist/smart-agent/embedder-knowledge-index.d.ts +28 -0
- package/dist/smart-agent/embedder-knowledge-index.d.ts.map +1 -0
- package/dist/smart-agent/embedder-knowledge-index.js +71 -0
- package/dist/smart-agent/embedder-knowledge-index.js.map +1 -0
- package/dist/smart-agent/jsonl-knowledge-backend.d.ts +26 -10
- package/dist/smart-agent/jsonl-knowledge-backend.d.ts.map +1 -1
- package/dist/smart-agent/jsonl-knowledge-backend.js +81 -9
- package/dist/smart-agent/jsonl-knowledge-backend.js.map +1 -1
- package/dist/smart-agent/pg-pool.d.ts +58 -0
- package/dist/smart-agent/pg-pool.d.ts.map +1 -0
- package/dist/smart-agent/pg-pool.js +149 -0
- package/dist/smart-agent/pg-pool.js.map +1 -0
- package/dist/smart-agent/skill-plugins-config.d.ts +97 -0
- package/dist/smart-agent/skill-plugins-config.d.ts.map +1 -0
- package/dist/smart-agent/skill-plugins-config.js +318 -0
- package/dist/smart-agent/skill-plugins-config.js.map +1 -0
- package/dist/smart-agent/skill-plugins-config.test.d.ts +2 -0
- package/dist/smart-agent/skill-plugins-config.test.d.ts.map +1 -0
- package/dist/smart-agent/skill-plugins-config.test.js.map +1 -0
- package/dist/smart-agent/skill-plugins-host-factory.d.ts +98 -0
- package/dist/smart-agent/skill-plugins-host-factory.d.ts.map +1 -0
- package/dist/smart-agent/skill-plugins-host-factory.js +284 -0
- package/dist/smart-agent/skill-plugins-host-factory.js.map +1 -0
- package/dist/smart-agent/skill-plugins-host-factory.test.d.ts +2 -0
- package/dist/smart-agent/skill-plugins-host-factory.test.d.ts.map +1 -0
- package/dist/smart-agent/skill-plugins-host-factory.test.js.map +1 -0
- package/dist/smart-agent/smart-server.d.ts +25 -0
- package/dist/smart-agent/smart-server.d.ts.map +1 -1
- package/dist/smart-agent/smart-server.js +139 -6
- package/dist/smart-agent/smart-server.js.map +1 -1
- package/package.json +9 -7
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Assemble a live {@link ISkillPluginHost} from a normalized
|
|
3
|
+
* {@link SkillPluginsConfig}.
|
|
4
|
+
*
|
|
5
|
+
* This is the WIRING layer for the skill plugin-host: it resolves the serving
|
|
6
|
+
* embedder, maps each config `source` to an {@link ISkillSource}, selects the
|
|
7
|
+
* catalog + store providers by config type, and returns either an INGEST host
|
|
8
|
+
* (materialises sources at `load()`) or a RECALL-ONLY host (serves an
|
|
9
|
+
* already-materialised catalog through a read-only backend).
|
|
10
|
+
*
|
|
11
|
+
* Dependencies are INJECTED so the factory is unit-testable with stubs:
|
|
12
|
+
* - `resolveEmbedder` — the embedder resolver (the server passes its own
|
|
13
|
+
* `resolveEmbedder` from `@mcp-abap-adt/llm-agent-rag`; tests pass a stub).
|
|
14
|
+
* - `makePgPool` — OPTIONAL pg `Pool` provider. The repo avoids a hard `pg`
|
|
15
|
+
* dependency, so a `postgres` catalog requires the caller to inject one;
|
|
16
|
+
* absent → a `postgres` catalog throws at build time.
|
|
17
|
+
* - `makeStoreProvider` / `makeCatalogStore` — OPTIONAL test seams to inject a
|
|
18
|
+
* mock Qdrant store / pg catalog without real I/O (the live path builds them
|
|
19
|
+
* from config). When provided they fully replace the config-driven build.
|
|
20
|
+
*
|
|
21
|
+
* Startup lifecycle (`await host.load()` + ctx exposure) is owned by SmartServer.
|
|
22
|
+
*/
|
|
23
|
+
import { makeHttpTransport, makeInMemoryStoreProvider, makeInProcessCatalogStore, makePgCatalogReader, makePgCatalogStore, makeQdrantBackendProvider, makeQdrantClient, makeQdrantReader, makeQdrantStoreProvider, makeSkillPluginHost, pointId, resolveSkillSourceStrategy, } from '@mcp-abap-adt/llm-agent-libs';
|
|
24
|
+
/**
|
|
25
|
+
* Host-code constant: the retrievalText composition + chunking contract version.
|
|
26
|
+
* Must agree between the embedder that WROTE a generation and the one that
|
|
27
|
+
* QUERIES it (carried in every published manifest).
|
|
28
|
+
*/
|
|
29
|
+
const RETRIEVAL_SCHEMA_VERSION = 1;
|
|
30
|
+
/**
|
|
31
|
+
* Build a `records` source's {@link ISkillSource}: wrap the pre-supplied records
|
|
32
|
+
* into an `acquire()` returning `{ collections, records }`, STAMPING the
|
|
33
|
+
* configured `id` as each record's `sourceId` and deriving a single-collection
|
|
34
|
+
* catalog from the distinct groups present.
|
|
35
|
+
*/
|
|
36
|
+
function makeRecordsSource(src) {
|
|
37
|
+
// Validate + stamp eagerly so a malformed record fails loudly at acquire().
|
|
38
|
+
const records = src.records.map((raw, ix) => {
|
|
39
|
+
const r = raw;
|
|
40
|
+
if (typeof r.group !== 'string' || r.group.length === 0) {
|
|
41
|
+
throw new Error(`skillPlugins source '${src.id}': record[${ix}] is missing a non-empty 'group'`);
|
|
42
|
+
}
|
|
43
|
+
if (typeof r.id !== 'string' || r.id.length === 0) {
|
|
44
|
+
throw new Error(`skillPlugins source '${src.id}': record[${ix}] is missing a non-empty 'id'`);
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
id: r.id,
|
|
48
|
+
sourceId: src.id, // STAMP the configured source id
|
|
49
|
+
group: r.group,
|
|
50
|
+
name: typeof r.name === 'string' ? r.name : r.id,
|
|
51
|
+
retrievalText: typeof r.retrievalText === 'string'
|
|
52
|
+
? r.retrievalText
|
|
53
|
+
: (r.content ?? ''),
|
|
54
|
+
content: typeof r.content === 'string' ? r.content : '',
|
|
55
|
+
provenance: typeof r.provenance === 'string' ? r.provenance : r.id,
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
// Derive one SkillGroupInfo per distinct group present in the records.
|
|
59
|
+
const collections = new Map();
|
|
60
|
+
for (const r of records) {
|
|
61
|
+
if (!collections.has(r.group)) {
|
|
62
|
+
collections.set(r.group, {
|
|
63
|
+
group: r.group,
|
|
64
|
+
description: r.group,
|
|
65
|
+
collection: r.group,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const result = {
|
|
70
|
+
collections: [...collections.values()],
|
|
71
|
+
records,
|
|
72
|
+
};
|
|
73
|
+
return { acquire: async () => result };
|
|
74
|
+
}
|
|
75
|
+
/** Map every config source to a `{ id, source }` ingest entry. */
|
|
76
|
+
function buildSources(cfg) {
|
|
77
|
+
const out = [];
|
|
78
|
+
for (const src of cfg.sources ?? []) {
|
|
79
|
+
if ('records' in src) {
|
|
80
|
+
out.push({ id: src.id, source: makeRecordsSource(src) });
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
// Fetched (registry) source → resolve the named strategy.
|
|
84
|
+
const strategy = resolveSkillSourceStrategy(src.strategy ?? 'one-group-per-plugin');
|
|
85
|
+
out.push({
|
|
86
|
+
id: src.id,
|
|
87
|
+
source: strategy({
|
|
88
|
+
source: src.id,
|
|
89
|
+
enabled: src.enabled ?? [],
|
|
90
|
+
transport: makeHttpTransport({ registry: src.registry ?? '' }),
|
|
91
|
+
chunk: cfg.chunk,
|
|
92
|
+
...(src.strategyConfig !== undefined
|
|
93
|
+
? { strategyConfig: src.strategyConfig }
|
|
94
|
+
: {}),
|
|
95
|
+
}),
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return out;
|
|
99
|
+
}
|
|
100
|
+
/** Build the catalog store by `catalog.type`. */
|
|
101
|
+
function buildCatalogStore(cfg, deps) {
|
|
102
|
+
if (deps.makeCatalogStore)
|
|
103
|
+
return deps.makeCatalogStore(cfg);
|
|
104
|
+
if (cfg.catalog.type === 'in-process')
|
|
105
|
+
return makeInProcessCatalogStore();
|
|
106
|
+
// postgres
|
|
107
|
+
if (!deps.makePgPool) {
|
|
108
|
+
throw new Error('skillPlugins: postgres catalog requires a pg pool provider (inject deps.makePgPool)');
|
|
109
|
+
}
|
|
110
|
+
return makePgCatalogStore({
|
|
111
|
+
pool: deps.makePgPool(cfg.catalog.connectionString),
|
|
112
|
+
...(cfg.catalog.table !== undefined ? { table: cfg.catalog.table } : {}),
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Assemble a live {@link ISkillPluginHost} from a normalized
|
|
117
|
+
* {@link SkillPluginsConfig}. INGEST when sources are present (default), else a
|
|
118
|
+
* RECALL-ONLY host over a read-only backend (requires a persistent store).
|
|
119
|
+
*
|
|
120
|
+
* The caller owns `host.load()` (SmartServer runs it once at startup).
|
|
121
|
+
*/
|
|
122
|
+
export async function buildSkillHostFromConfig(cfg, deps) {
|
|
123
|
+
const embedder = deps.resolveEmbedder({
|
|
124
|
+
...(cfg.embedder?.provider !== undefined
|
|
125
|
+
? { embedder: cfg.embedder.provider }
|
|
126
|
+
: {}),
|
|
127
|
+
...(cfg.embedder?.model !== undefined ? { model: cfg.embedder.model } : {}),
|
|
128
|
+
});
|
|
129
|
+
const embed = (text, options) => embedder.embed(text, options).then((r) => r.vector);
|
|
130
|
+
// ---- RECALL-ONLY (loadOnStartup:false) --------------------------------
|
|
131
|
+
// Serve an already-materialised catalog through a READ-ONLY backend (least
|
|
132
|
+
// privilege — no write credentials). Requires a persistent store + catalog.
|
|
133
|
+
if (cfg.loadOnStartup === false) {
|
|
134
|
+
if (cfg.store.type !== 'qdrant' || cfg.catalog.type !== 'postgres') {
|
|
135
|
+
throw new Error('skillPlugins: recall-only (loadOnStartup:false) requires a qdrant store + postgres catalog');
|
|
136
|
+
}
|
|
137
|
+
// Recall-only MUST use a READ pool (no DDL) — a read-only-credentialed
|
|
138
|
+
// process would crash trying to CREATE TABLE with the write pool.
|
|
139
|
+
if (!deps.makePgReadPool) {
|
|
140
|
+
throw new Error('skillPlugins: recall-only postgres catalog requires a read pool provider');
|
|
141
|
+
}
|
|
142
|
+
const makeReadPool = deps.makePgReadPool;
|
|
143
|
+
const collection = cfg.store.collection ?? 'skills';
|
|
144
|
+
const backendProvider = makeQdrantBackendProvider({
|
|
145
|
+
reader: makeQdrantReader({
|
|
146
|
+
url: cfg.store.url,
|
|
147
|
+
...(cfg.store.apiKey !== undefined
|
|
148
|
+
? { apiKey: cfg.store.apiKey }
|
|
149
|
+
: {}),
|
|
150
|
+
collection,
|
|
151
|
+
}),
|
|
152
|
+
catalogReader: makePgCatalogReader({
|
|
153
|
+
pool: makeReadPool(cfg.catalog.connectionString),
|
|
154
|
+
...(cfg.catalog.table !== undefined
|
|
155
|
+
? { table: cfg.catalog.table }
|
|
156
|
+
: {}),
|
|
157
|
+
}),
|
|
158
|
+
collection,
|
|
159
|
+
});
|
|
160
|
+
return makeSkillPluginHost({
|
|
161
|
+
backendProvider,
|
|
162
|
+
embedder,
|
|
163
|
+
// embeddingSpaceId is mandatory for a persistent store (parse-time enforced).
|
|
164
|
+
embeddingSpaceId: cfg.embeddingSpaceId,
|
|
165
|
+
retrievalSchemaVersion: RETRIEVAL_SCHEMA_VERSION,
|
|
166
|
+
...(cfg.dimension !== undefined ? { dimension: cfg.dimension } : {}),
|
|
167
|
+
// OMIT the key when unset so the recall host derives ALL collections from
|
|
168
|
+
// the catalog; an explicit list selects only those.
|
|
169
|
+
...(cfg.serveCollections
|
|
170
|
+
? { serveCollections: cfg.serveCollections }
|
|
171
|
+
: {}),
|
|
172
|
+
...(cfg.recallTimeoutMs !== undefined
|
|
173
|
+
? { recallTimeoutMs: cfg.recallTimeoutMs }
|
|
174
|
+
: {}),
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
// ---- INGEST -----------------------------------------------------------
|
|
178
|
+
const storeProvider = deps.makeStoreProvider
|
|
179
|
+
? deps.makeStoreProvider(cfg)
|
|
180
|
+
: cfg.store.type === 'in-memory'
|
|
181
|
+
? makeInMemoryStoreProvider({ embed })
|
|
182
|
+
: makeQdrantStoreProvider({
|
|
183
|
+
client: makeQdrantClient({
|
|
184
|
+
url: cfg.store.url,
|
|
185
|
+
...(cfg.store.apiKey !== undefined
|
|
186
|
+
? { apiKey: cfg.store.apiKey }
|
|
187
|
+
: {}),
|
|
188
|
+
collection: cfg.store.collection ?? 'skills',
|
|
189
|
+
}),
|
|
190
|
+
collection: cfg.store.collection ?? 'skills',
|
|
191
|
+
catalogStore: buildCatalogStore(cfg, deps),
|
|
192
|
+
embed,
|
|
193
|
+
pointId,
|
|
194
|
+
now: () => Date.now(),
|
|
195
|
+
retiredGraceMs: cfg.retiredGraceMs,
|
|
196
|
+
orphanGraceMs: cfg.orphanGraceMs,
|
|
197
|
+
});
|
|
198
|
+
const sources = buildSources(cfg);
|
|
199
|
+
return makeSkillPluginHost({
|
|
200
|
+
sources,
|
|
201
|
+
storeProvider,
|
|
202
|
+
embedder,
|
|
203
|
+
embeddingSpaceId: cfg.embeddingSpaceId ??
|
|
204
|
+
`${cfg.embedder?.provider ?? 'default'}:${cfg.embedder?.model ?? 'default'}`,
|
|
205
|
+
retrievalSchemaVersion: RETRIEVAL_SCHEMA_VERSION,
|
|
206
|
+
...(cfg.dimension !== undefined ? { dimension: cfg.dimension } : {}),
|
|
207
|
+
strict: cfg.strict,
|
|
208
|
+
catalogCasMaxAttempts: cfg.catalogCasMaxAttempts,
|
|
209
|
+
...(cfg.recallTimeoutMs !== undefined
|
|
210
|
+
? { recallTimeoutMs: cfg.recallTimeoutMs }
|
|
211
|
+
: {}),
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Fail-loud validation of the served-group subset AFTER `host.load()`, against
|
|
216
|
+
* the host's materialised `groups()`. A typo in `serveCollections` /
|
|
217
|
+
* `controllerSkillGroup` would otherwise SILENTLY disable skills (the filter in
|
|
218
|
+
* `registerSkillSources` drops unknown names) — the spec requires a STARTUP
|
|
219
|
+
* config error instead.
|
|
220
|
+
*
|
|
221
|
+
* Pure + side-effect-free so it is unit-testable without a full server: pass the
|
|
222
|
+
* loaded host and the normalized config.
|
|
223
|
+
*/
|
|
224
|
+
export function validateServedGroups(host, cfg) {
|
|
225
|
+
const available = host.groups().map((g) => g.group);
|
|
226
|
+
const availableSet = new Set(available);
|
|
227
|
+
if (cfg.serveCollections !== undefined) {
|
|
228
|
+
const unknown = cfg.serveCollections.filter((g) => !availableSet.has(g));
|
|
229
|
+
if (unknown.length > 0) {
|
|
230
|
+
throw new Error(`skillPlugins: serveCollections names unknown group(s) [${unknown.join(', ')}] — available groups: [${available.join(', ')}]`);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
// `controllerSkillGroup` (CONTROLLER PLANNER recall) and `serveCollections`
|
|
234
|
+
// (ASSEMBLER pipelines) are INDEPENDENT channels — the controller group is
|
|
235
|
+
// recalled on its own path that bypasses the assembler, so it need NOT be in
|
|
236
|
+
// serveCollections. Validate existence only.
|
|
237
|
+
if (cfg.controllerSkillGroup !== undefined) {
|
|
238
|
+
if (!availableSet.has(cfg.controllerSkillGroup)) {
|
|
239
|
+
throw new Error(`skillPlugins: controllerSkillGroup '${cfg.controllerSkillGroup}' is not an available group — available groups: [${available.join(', ')}]`);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Build → `await host.load()` → {@link validateServedGroups} as ONE fail-fast
|
|
245
|
+
* unit, ending any pg pools the build captured into `pools` if ANY step throws.
|
|
246
|
+
*
|
|
247
|
+
* The server registers a `closeFns` cleanup that ends these pools, but that
|
|
248
|
+
* registration happens much LATER in `start()` — if `load()` or validation
|
|
249
|
+
* throws, `start()` never returns a handle, so `close()` is never callable and
|
|
250
|
+
* the captured pools would leak open sockets (blocking process exit). Running
|
|
251
|
+
* the cleanup HERE on failure closes that gap; the normal-path pools are still
|
|
252
|
+
* ended by the later `closeFns` registration.
|
|
253
|
+
*
|
|
254
|
+
* `buildHost` is a thunk so the pool-capturing side effect (the server pushes
|
|
255
|
+
* each created pool into `pools` from its `makePgPool`/`makePgReadPool`) has
|
|
256
|
+
* already happened by the time we catch — i.e. we end exactly what was created.
|
|
257
|
+
* Side-effect-free of the server instance → unit-testable with a fake host.
|
|
258
|
+
*/
|
|
259
|
+
export async function initSkillHost(buildHost, cfg, pools) {
|
|
260
|
+
try {
|
|
261
|
+
const host = await buildHost();
|
|
262
|
+
await host.load();
|
|
263
|
+
// Fail loud on a misconfigured served-group subset (a typo'd
|
|
264
|
+
// serveCollections/controllerSkillGroup silently disables skills).
|
|
265
|
+
validateServedGroups(host, cfg);
|
|
266
|
+
if (cfg.controllerSkillGroup !== undefined) {
|
|
267
|
+
// Controller recall is an independent channel; eager-probe its group too so an
|
|
268
|
+
// incompatible controller-only group fails at STARTUP (not at first planner recall).
|
|
269
|
+
// host.load() only eager-probes the SERVED set (serveCollections ?? all), so a
|
|
270
|
+
// controllerSkillGroup OUTSIDE serveCollections would otherwise skip startup
|
|
271
|
+
// compat-checking. activeManifest() throws SkillsIncompatibleError on a
|
|
272
|
+
// serving-descriptor mismatch — inside this try, so a throw still ends the pools.
|
|
273
|
+
await host.rag(cfg.controllerSkillGroup).activeManifest();
|
|
274
|
+
}
|
|
275
|
+
return host;
|
|
276
|
+
}
|
|
277
|
+
catch (e) {
|
|
278
|
+
// `allSettled` so one pool's end() error does not mask the original.
|
|
279
|
+
await Promise.allSettled(pools.map((p) => p.end()));
|
|
280
|
+
pools.length = 0;
|
|
281
|
+
throw e;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
//# sourceMappingURL=skill-plugins-host-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-plugins-host-factory.js","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-host-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-plugins-host-factory.test.d.ts","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-host-factory.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-plugins-host-factory.test.js","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-host-factory.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,6 +160,13 @@ export interface SmartServerConfig {
|
|
|
160
160
|
skills?: SmartServerSkillsConfig;
|
|
161
161
|
/** Pre-built skill manager injected via DI. Takes precedence over `skills` config. */
|
|
162
162
|
skillManager?: ISkillManager;
|
|
163
|
+
/**
|
|
164
|
+
* Skill PLUGIN-HOST config (the `skillPlugins:` YAML key) — a SEPARATE feature
|
|
165
|
+
* from `skills:` above. It feeds consumer-supplied domain skills to the agnostic
|
|
166
|
+
* engine through a grouped skills-RAG (gnostification). When omitted, no host is
|
|
167
|
+
* built and behaviour is unchanged. See {@link SkillPluginsConfig}.
|
|
168
|
+
*/
|
|
169
|
+
skillPlugins?: SkillPluginsConfig;
|
|
163
170
|
/** Pre-built MCP clients injected via DI. Takes precedence over `mcp` config. */
|
|
164
171
|
mcpClients?: IMcpClient[];
|
|
165
172
|
/** Client adapters for auto-detecting prompt-based clients (e.g. Cline). */
|
|
@@ -212,7 +219,11 @@ export interface SmartServerHandle {
|
|
|
212
219
|
requestLogger: IRequestLogger;
|
|
213
220
|
}
|
|
214
221
|
import type { ISessionMetaStore, SessionMetaRow } from './session-meta-store.js';
|
|
222
|
+
import type { SkillPluginsConfig } from './skill-plugins-config.js';
|
|
215
223
|
export { generateConfigTemplate, loadYamlConfig, type ResolveConfigArgs, resolveCoordinatorActivation, resolveCoordinatorDispatch, resolveCoordinatorPlanning, resolveEnvVars, resolveSmartServerConfig, resolveToolSelectionStrategy, YAML_TEMPLATE, type YamlConfig, } from './config.js';
|
|
224
|
+
export { makePgPool, makePgReadPool } from './pg-pool.js';
|
|
225
|
+
export { parseSkillPluginsConfig, type SkillPluginsCatalogConfig, type SkillPluginsConfig, type SkillPluginsFetchedSource, type SkillPluginsRecordsSource, type SkillPluginsSource, type SkillPluginsStoreConfig, } from './skill-plugins-config.js';
|
|
226
|
+
export { type BuildSkillHostDeps, buildSkillHostFromConfig, type IClosablePool, initSkillHost, validateServedGroups, } from './skill-plugins-host-factory.js';
|
|
216
227
|
/**
|
|
217
228
|
* GLOBAL per-worker heavy clients — built once, injected by reference per
|
|
218
229
|
* session. In addition to LLM/embedder clients, the worker's OWN declared
|
|
@@ -462,6 +473,19 @@ export declare class SmartServer {
|
|
|
462
473
|
* semantic distance). Undefined when no embedder is configured.
|
|
463
474
|
*/
|
|
464
475
|
private _resolvedEmbedder?;
|
|
476
|
+
/**
|
|
477
|
+
* The live skill plugin-host, built ONCE in `start()` from `skillPlugins:`
|
|
478
|
+
* config and `await host.load()`-ed before serving. Held so `buildServerCtx`
|
|
479
|
+
* can thread it onto every pipeline context. Undefined when `skillPlugins:` is
|
|
480
|
+
* absent (everything unchanged).
|
|
481
|
+
*/
|
|
482
|
+
private _skillHost?;
|
|
483
|
+
/**
|
|
484
|
+
* pg pools created for the skill plugin-host's `postgres` catalog. Captured at
|
|
485
|
+
* build time so the server can close their real sockets on shutdown (a closer
|
|
486
|
+
* is registered in `closeFns`); otherwise live PG sockets outlive `close()`.
|
|
487
|
+
*/
|
|
488
|
+
private _skillPgPools;
|
|
465
489
|
/** Normalized LLM map + pipeline fallback + main temperature — captured in
|
|
466
490
|
* `start()` so buildServerCtx can hand the raw role-LLM materials to the
|
|
467
491
|
* context factory (mirrors the inline DAG/linear resolution). */
|
|
@@ -526,6 +550,7 @@ export declare class SmartServer {
|
|
|
526
550
|
private readonly _sessionCloseFns;
|
|
527
551
|
constructor(config: SmartServerConfig);
|
|
528
552
|
start(): Promise<SmartServerHandle>;
|
|
553
|
+
private _start;
|
|
529
554
|
/**
|
|
530
555
|
* Build a `SmartAgent` instance from a nested sub-agent config.
|
|
531
556
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart-server.d.ts","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"smart-server.d.ts","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { pathToFileURL } from 'node:url';
|
|
|
9
9
|
import { AdapterValidationError, buildExternalResults, normalizeAndValidateExternalTools, QueryEmbedding, toToolCallDelta, } from '@mcp-abap-adt/llm-agent';
|
|
10
10
|
import { ClaudeSkillManager, CodexSkillManager, ConfigWatcher, FileSystemPluginLoader, FileSystemSkillManager, getDefaultPluginDirs, HealthChecker, InMemoryKnowledgeBackend, KnowledgeRag, makeLlm, mergePluginExports, SessionGraphFactory, SessionLogger, SessionRegistry, SmartAgentBuilder, SmartAgentSubAgent, } from '@mcp-abap-adt/llm-agent-libs';
|
|
11
11
|
import { MCPClientWrapper, McpClientAdapter, } from '@mcp-abap-adt/llm-agent-mcp';
|
|
12
|
-
import { makeRag } from '@mcp-abap-adt/llm-agent-rag';
|
|
12
|
+
import { makeRag, prefetchEmbedderFactories, resolveEmbedder, } from '@mcp-abap-adt/llm-agent-rag';
|
|
13
13
|
import { PACKAGE_VERSION } from '../generated/version.js';
|
|
14
14
|
import { resolveAgentEmbedder } from './resolve-agent-embedder.js';
|
|
15
15
|
import { resolveSessionIdentity } from './session-identity-resolver.js';
|
|
@@ -77,9 +77,15 @@ import { LinearPipelinePlugin } from '../pipelines/linear.js';
|
|
|
77
77
|
import { createServerPipelineContext, } from '../pipelines/server-context.js';
|
|
78
78
|
import { StepperPipelinePlugin } from '../pipelines/stepper.js';
|
|
79
79
|
import { normalizeLlmConfig, resolveLlmConfig, resolveLlmConfigStrict, resolveToolSelectionStrategy, } from './config.js';
|
|
80
|
+
import { makeKnowledgeSemanticIndex } from './embedder-knowledge-index.js';
|
|
80
81
|
import { JsonlKnowledgeBackend } from './jsonl-knowledge-backend.js';
|
|
82
|
+
import { makePgPool, makePgReadPool } from './pg-pool.js';
|
|
81
83
|
import { InMemorySessionMetaStore } from './session-meta-store.js';
|
|
84
|
+
import { buildSkillHostFromConfig, initSkillHost, } from './skill-plugins-host-factory.js';
|
|
82
85
|
export { generateConfigTemplate, loadYamlConfig, resolveCoordinatorActivation, resolveCoordinatorDispatch, resolveCoordinatorPlanning, resolveEnvVars, resolveSmartServerConfig, resolveToolSelectionStrategy, YAML_TEMPLATE, } from './config.js';
|
|
86
|
+
export { makePgPool, makePgReadPool } from './pg-pool.js';
|
|
87
|
+
export { parseSkillPluginsConfig, } from './skill-plugins-config.js';
|
|
88
|
+
export { buildSkillHostFromConfig, initSkillHost, validateServedGroups, } from './skill-plugins-host-factory.js';
|
|
83
89
|
/**
|
|
84
90
|
* Drain every cached worker's `close` (if any), then clear the cache map.
|
|
85
91
|
* Used by config-reload (PUT /v1/config + hot-reload — Fix #14/18/21) and by
|
|
@@ -439,6 +445,19 @@ export class SmartServer {
|
|
|
439
445
|
* semantic distance). Undefined when no embedder is configured.
|
|
440
446
|
*/
|
|
441
447
|
_resolvedEmbedder;
|
|
448
|
+
/**
|
|
449
|
+
* The live skill plugin-host, built ONCE in `start()` from `skillPlugins:`
|
|
450
|
+
* config and `await host.load()`-ed before serving. Held so `buildServerCtx`
|
|
451
|
+
* can thread it onto every pipeline context. Undefined when `skillPlugins:` is
|
|
452
|
+
* absent (everything unchanged).
|
|
453
|
+
*/
|
|
454
|
+
_skillHost;
|
|
455
|
+
/**
|
|
456
|
+
* pg pools created for the skill plugin-host's `postgres` catalog. Captured at
|
|
457
|
+
* build time so the server can close their real sockets on shutdown (a closer
|
|
458
|
+
* is registered in `closeFns`); otherwise live PG sockets outlive `close()`.
|
|
459
|
+
*/
|
|
460
|
+
_skillPgPools = [];
|
|
442
461
|
/** Normalized LLM map + pipeline fallback + main temperature — captured in
|
|
443
462
|
* `start()` so buildServerCtx can hand the raw role-LLM materials to the
|
|
444
463
|
* context factory (mirrors the inline DAG/linear resolution). */
|
|
@@ -505,6 +524,30 @@ export class SmartServer {
|
|
|
505
524
|
this.cfg = config;
|
|
506
525
|
}
|
|
507
526
|
async start() {
|
|
527
|
+
// Startup pg-pool cleanup must span the ENTIRE start(): host.load() (via
|
|
528
|
+
// initSkillHost) creates pg pools, but fallible work AFTER it — makeRag,
|
|
529
|
+
// builder.build(), server.listen — can still throw/reject before the handle
|
|
530
|
+
// is returned and `closeFns` becomes callable. Without this guard those
|
|
531
|
+
// pools would leak open sockets and block process exit. initSkillHost keeps
|
|
532
|
+
// its own catch-cleanup (it clears the array, so this finally then no-ops —
|
|
533
|
+
// no double-end; pool end() is idempotent regardless). No-op when
|
|
534
|
+
// skillPlugins is unconfigured (_skillPgPools stays empty).
|
|
535
|
+
let started = false;
|
|
536
|
+
try {
|
|
537
|
+
// Single success path: the handle is only produced once server.listen
|
|
538
|
+
// succeeds (a listen error rejects this promise → finally cleans up).
|
|
539
|
+
const handle = await this._start();
|
|
540
|
+
started = true;
|
|
541
|
+
return handle;
|
|
542
|
+
}
|
|
543
|
+
finally {
|
|
544
|
+
if (!started) {
|
|
545
|
+
await Promise.allSettled(this._skillPgPools.map((p) => p.end()));
|
|
546
|
+
this._skillPgPools = [];
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
}
|
|
550
|
+
async _start() {
|
|
508
551
|
const log = this.cfg.log ?? this.noop;
|
|
509
552
|
const fileLogger = {
|
|
510
553
|
log: (e) => log(e),
|
|
@@ -644,6 +687,53 @@ export class SmartServer {
|
|
|
644
687
|
// Hold the resolved embedder so buildServerCtx can thread it onto every
|
|
645
688
|
// pipeline context (the controller pipeline needs it for target-state).
|
|
646
689
|
this._resolvedEmbedder = resolvedEmbedder;
|
|
690
|
+
// ---- Skill plugin-host (the `skillPlugins:` feature) ------------------
|
|
691
|
+
// Build the host ONCE from config and `load()` it before serving, so its
|
|
692
|
+
// fixed serving collection set is established at startup. Reuses the SAME
|
|
693
|
+
// embedder-resolution path as the agent RAG (prefetch + resolveEmbedder from
|
|
694
|
+
// llm-agent-rag). Absent `skillPlugins:` → no host, behaviour unchanged.
|
|
695
|
+
if (this.cfg.skillPlugins) {
|
|
696
|
+
const skillCfg = this.cfg.skillPlugins;
|
|
697
|
+
const reuseAgentEmbedder = skillCfg.embedder === undefined && resolvedEmbedder !== undefined;
|
|
698
|
+
// Prefetch the named embedder factory only when we will actually build a
|
|
699
|
+
// dedicated one (the agent embedder is already prefetched + wrapped).
|
|
700
|
+
if (!reuseAgentEmbedder) {
|
|
701
|
+
await prefetchEmbedderFactories([
|
|
702
|
+
skillCfg.embedder?.provider ?? 'ollama',
|
|
703
|
+
]);
|
|
704
|
+
}
|
|
705
|
+
// Build → load → validate as one fail-fast unit. If ANY step throws, the
|
|
706
|
+
// captured pg pools are ended INSIDE initSkillHost (the later closeFns
|
|
707
|
+
// cleanup never runs when start() rejects before returning a handle), so
|
|
708
|
+
// the pools cannot leak open sockets on a startup failure.
|
|
709
|
+
this._skillHost = await initSkillHost(() => buildSkillHostFromConfig(skillCfg, {
|
|
710
|
+
resolveEmbedder: (ec) => reuseAgentEmbedder
|
|
711
|
+
? resolvedEmbedder
|
|
712
|
+
: resolveEmbedder(ec, {
|
|
713
|
+
extraFactories: mergedEmbedderFactories,
|
|
714
|
+
}),
|
|
715
|
+
// Real pg `Pool` provider for a `postgres` catalog (qdrant
|
|
716
|
+
// deployment). Lazily imports `pg` and ensures the catalog table
|
|
717
|
+
// exists on first use; pass the configured table so the DDL targets
|
|
718
|
+
// the SAME table the catalog store reads/writes. Absent
|
|
719
|
+
// skillPlugins.catalog.type:postgres this is never invoked.
|
|
720
|
+
makePgPool: (connectionString) => {
|
|
721
|
+
const pool = makePgPool(connectionString, skillCfg.catalog.type === 'postgres'
|
|
722
|
+
? skillCfg.catalog.table
|
|
723
|
+
: undefined);
|
|
724
|
+
this._skillPgPools.push(pool);
|
|
725
|
+
return pool;
|
|
726
|
+
},
|
|
727
|
+
// READ-ONLY pg pool for the recall-only path — NEVER runs DDL, so a
|
|
728
|
+
// recall-only process with read-only pg credentials does not crash
|
|
729
|
+
// attempting to CREATE the catalog table it only reads.
|
|
730
|
+
makePgReadPool: (connectionString) => {
|
|
731
|
+
const pool = makePgReadPool(connectionString);
|
|
732
|
+
this._skillPgPools.push(pool);
|
|
733
|
+
return pool;
|
|
734
|
+
},
|
|
735
|
+
}), skillCfg, this._skillPgPools);
|
|
736
|
+
}
|
|
647
737
|
// ---- RAG resolution (interface-only) ----------------------------------
|
|
648
738
|
// Resolve the tools/history stores and any named collections HERE so the
|
|
649
739
|
// coordinator gate below can read the final `toolsRag`/`resolvedEmbedder`,
|
|
@@ -795,6 +885,12 @@ export class SmartServer {
|
|
|
795
885
|
}
|
|
796
886
|
}
|
|
797
887
|
const closeFns = [closeAgent];
|
|
888
|
+
// Close any pg pools created for the skill plugin-host's postgres catalog so
|
|
889
|
+
// their sockets do not outlive server shutdown.
|
|
890
|
+
closeFns.push(async () => {
|
|
891
|
+
for (const p of this._skillPgPools)
|
|
892
|
+
await p.end();
|
|
893
|
+
});
|
|
798
894
|
// Stepper-owned MCP clients (connected from YAML mcp: block when no
|
|
799
895
|
// DI/plugin clients existed). Dispose on server shutdown.
|
|
800
896
|
// TODO: IMcpClient does not currently expose a close() method; add
|
|
@@ -1241,6 +1337,10 @@ export class SmartServer {
|
|
|
1241
1337
|
*/
|
|
1242
1338
|
async buildSharedPipelineInfra(input) {
|
|
1243
1339
|
const { toolsRag, resolvedEmbedder, mcpClients } = input;
|
|
1340
|
+
// Record the resolved embedder BEFORE building the knowledge backend so the
|
|
1341
|
+
// backend can attach the embedder-backed semantic index (controller recall).
|
|
1342
|
+
if (resolvedEmbedder)
|
|
1343
|
+
this._resolvedEmbedder = resolvedEmbedder;
|
|
1244
1344
|
this.buildKnowledgeBackend();
|
|
1245
1345
|
// MCP clients for the callMcp bridge. DI/plugin clients win; otherwise
|
|
1246
1346
|
// connect the YAML `mcp:` block ONCE (connect is not safe to invoke twice
|
|
@@ -1259,12 +1359,21 @@ export class SmartServer {
|
|
|
1259
1359
|
* No MCP dependency — safe to call BEFORE the MCP client set is resolved.
|
|
1260
1360
|
*/
|
|
1261
1361
|
buildKnowledgeBackend() {
|
|
1362
|
+
if (this._stepperKnowledgeBackend)
|
|
1363
|
+
return;
|
|
1262
1364
|
const logDir = this.cfg.logDir;
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1365
|
+
// Attach an embedder-backed semantic index whenever an embedder is resolved —
|
|
1366
|
+
// for ANY pipeline. Do NOT throw here: buildKnowledgeBackend runs
|
|
1367
|
+
// unconditionally at startup and a flat/stepper deployment without an embedder
|
|
1368
|
+
// is valid; only the CONTROLLER mandates embedding recall, enforced at the
|
|
1369
|
+
// ControllerFactory boundary, not globally. With an index, the controller's
|
|
1370
|
+
// results-RAG recall ranks by meaning instead of recency.
|
|
1371
|
+
const semantic = this._resolvedEmbedder
|
|
1372
|
+
? makeKnowledgeSemanticIndex(this._resolvedEmbedder)
|
|
1373
|
+
: undefined;
|
|
1374
|
+
this._stepperKnowledgeBackend = logDir
|
|
1375
|
+
? new JsonlKnowledgeBackend(logDir, semantic)
|
|
1376
|
+
: new InMemoryKnowledgeBackend(semantic);
|
|
1268
1377
|
}
|
|
1269
1378
|
/**
|
|
1270
1379
|
* Build `_toolsRagHandle` — a real IToolsRagHandle over the tools RAG store +
|
|
@@ -1481,6 +1590,30 @@ export class SmartServer {
|
|
|
1481
1590
|
// target-state semantic distance).
|
|
1482
1591
|
stepperKnowledgeBackend: this._stepperKnowledgeBackend ?? new InMemoryKnowledgeBackend(),
|
|
1483
1592
|
embedder: this._resolvedEmbedder,
|
|
1593
|
+
// Skill plugin-host (built + loaded once in start()); undefined when no
|
|
1594
|
+
// `skillPlugins:` config — pipelines that don't read it are unaffected.
|
|
1595
|
+
...(this._skillHost
|
|
1596
|
+
? {
|
|
1597
|
+
skillHost: this._skillHost,
|
|
1598
|
+
skillRecall: {
|
|
1599
|
+
k: this.cfg.skillPlugins?.k ?? 4,
|
|
1600
|
+
...(this.cfg.skillPlugins?.threshold !== undefined
|
|
1601
|
+
? { threshold: this.cfg.skillPlugins.threshold }
|
|
1602
|
+
: {}),
|
|
1603
|
+
...(this.cfg.skillPlugins?.controllerSkillGroup !== undefined
|
|
1604
|
+
? {
|
|
1605
|
+
controllerSkillGroup: this.cfg.skillPlugins.controllerSkillGroup,
|
|
1606
|
+
}
|
|
1607
|
+
: {}),
|
|
1608
|
+
...(this.cfg.skillPlugins?.maxInjectChars !== undefined
|
|
1609
|
+
? { maxInjectChars: this.cfg.skillPlugins.maxInjectChars }
|
|
1610
|
+
: {}),
|
|
1611
|
+
...(this.cfg.skillPlugins?.serveCollections !== undefined
|
|
1612
|
+
? { serveCollections: this.cfg.skillPlugins.serveCollections }
|
|
1613
|
+
: {}),
|
|
1614
|
+
},
|
|
1615
|
+
}
|
|
1616
|
+
: {}),
|
|
1484
1617
|
// External tools are NOT carried on this build-time ctx: definitions arrive
|
|
1485
1618
|
// per-REQUEST (HTTP body.tools) and the controller routes them per-request
|
|
1486
1619
|
// via PipelineContext.externalTools inside the coordinator handler.
|