@frontmcp/sdk 1.4.0 → 1.5.0-rc.1
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/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
- package/auth/flows/oauth.token.flow.d.ts.map +1 -1
- package/auth/flows/session.verify.flow.d.ts.map +1 -1
- package/auth/instances/instance.local-primary-auth.d.ts.map +1 -1
- package/common/decorators/app.decorator.d.ts +13 -1
- package/common/decorators/app.decorator.d.ts.map +1 -1
- package/common/decorators/front-mcp.decorator.d.ts.map +1 -1
- package/common/metadata/front-mcp.metadata.d.ts +24 -0
- package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
- package/common/schemas/http-output.schema.d.ts +17 -0
- package/common/schemas/http-output.schema.d.ts.map +1 -1
- package/common/tokens/server.tokens.d.ts +3 -0
- package/common/tokens/server.tokens.d.ts.map +1 -1
- package/common/types/options/skills-http/interfaces.d.ts +15 -1
- package/common/types/options/skills-http/interfaces.d.ts.map +1 -1
- package/common/types/options/skills-http/schema.d.ts +4 -0
- package/common/types/options/skills-http/schema.d.ts.map +1 -1
- package/common/utils/path.utils.d.ts +15 -0
- package/common/utils/path.utils.d.ts.map +1 -1
- package/esm/index.mjs +1190 -295
- package/esm-loader/esm-cache.d.ts +10 -0
- package/esm-loader/esm-cache.d.ts.map +1 -1
- package/esm-loader/esm-module-loader.d.ts.map +1 -1
- package/flows/flow.instance.d.ts +14 -0
- package/flows/flow.instance.d.ts.map +1 -1
- package/flows/flow.registry.d.ts +9 -1
- package/flows/flow.registry.d.ts.map +1 -1
- package/front-mcp/front-mcp.d.ts +14 -0
- package/front-mcp/front-mcp.d.ts.map +1 -1
- package/front-mcp/front-mcp.providers.d.ts +4 -0
- package/front-mcp/front-mcp.providers.d.ts.map +1 -1
- package/index.d.ts +9 -5
- package/index.d.ts.map +1 -1
- package/index.js +1423 -522
- package/logger/instances/instance.file-logger.d.ts.map +1 -1
- package/package.json +29 -29
- package/scope/flows/http.request.flow.d.ts +17 -1
- package/scope/flows/http.request.flow.d.ts.map +1 -1
- package/scope/optional-dependency.util.d.ts +25 -0
- package/scope/optional-dependency.util.d.ts.map +1 -1
- package/scope/scope.instance.d.ts +9 -1
- package/scope/scope.instance.d.ts.map +1 -1
- package/server/server.instance.d.ts.map +1 -1
- package/server/server.validation.d.ts.map +1 -1
- package/skill/index.d.ts +1 -0
- package/skill/index.d.ts.map +1 -1
- package/skill/providers/memory-skill.provider.d.ts +61 -1
- package/skill/providers/memory-skill.provider.d.ts.map +1 -1
- package/skill/skill-index-cache.interface.d.ts +33 -0
- package/skill/skill-index-cache.interface.d.ts.map +1 -0
- package/skill/skill-instructions.helper.d.ts +13 -0
- package/skill/skill-instructions.helper.d.ts.map +1 -1
- package/skill/skill-storage.interface.d.ts +13 -0
- package/skill/skill-storage.interface.d.ts.map +1 -1
- package/skill/skill.registry.d.ts +27 -0
- package/skill/skill.registry.d.ts.map +1 -1
- package/transport/build-scoped-server-options.d.ts +35 -0
- package/transport/build-scoped-server-options.d.ts.map +1 -0
- package/transport/in-memory-server.d.ts.map +1 -1
- package/transport/index.d.ts +17 -0
- package/transport/index.d.ts.map +1 -1
- package/transport/web-fetch-handler.d.ts +106 -0
- package/transport/web-fetch-handler.d.ts.map +1 -0
- package/transport/web-response.renderer.d.ts +13 -0
- package/transport/web-response.renderer.d.ts.map +1 -0
- package/transport/web-standard-mcp.d.ts +63 -0
- package/transport/web-standard-mcp.d.ts.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.file-logger.d.ts","sourceRoot":"","sources":["../../../src/logger/instances/instance.file-logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"instance.file-logger.d.ts","sourceRoot":"","sources":["../../../src/logger/instances/instance.file-logger.ts"],"names":[],"mappings":"AAGA,OAAO,EAA0B,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAiC7F;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAIa,wBAAyB,SAAQ,qBAAqB;IACjE,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;;IAmCjC,+EAA+E;IAC/E,KAAK,IAAI,IAAI;IAWb,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;IAgBzB,2EAA2E;IAC3E,OAAO,CAAC,MAAM;CAsBf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frontmcp/sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0-rc.1",
|
|
4
4
|
"description": "FrontMCP SDK",
|
|
5
5
|
"author": "AgentFront <info@agentfront.dev>",
|
|
6
6
|
"homepage": "https://docs.agentfront.dev",
|
|
@@ -86,61 +86,61 @@
|
|
|
86
86
|
"node": ">=24.0.0"
|
|
87
87
|
},
|
|
88
88
|
"peerDependencies": {
|
|
89
|
-
"express": "^4.18.0 || ^5.0.0",
|
|
90
|
-
"cors": "^2.8.5",
|
|
91
|
-
"raw-body": "^3.0.0",
|
|
92
|
-
"content-type": "^1.0.5",
|
|
93
|
-
"@vercel/kv": "^3.0.0",
|
|
94
|
-
"@frontmcp/storage-sqlite": "1.4.0",
|
|
95
|
-
"openai": "^4.0.0 || ^5.0.0 || ^6.0.0",
|
|
96
89
|
"@anthropic-ai/sdk": "^0.30.0 || ^0.78.0",
|
|
97
|
-
"@
|
|
98
|
-
"@
|
|
99
|
-
"
|
|
90
|
+
"@enclave-vm/core": "^2.14.0",
|
|
91
|
+
"@frontmcp/observability": "1.5.0-rc.1",
|
|
92
|
+
"@frontmcp/storage-sqlite": "1.5.0-rc.1",
|
|
100
93
|
"@opentelemetry/api": "^1.9.0",
|
|
101
|
-
"@opentelemetry/sdk-trace-base": "^
|
|
94
|
+
"@opentelemetry/sdk-trace-base": "^2.8.0",
|
|
95
|
+
"@vercel/kv": "^3.0.0",
|
|
96
|
+
"content-type": "^1.0.5",
|
|
97
|
+
"cors": "^2.8.5",
|
|
98
|
+
"express": "^4.18.0 || ^5.0.0",
|
|
99
|
+
"openai": "^4.0.0 || ^5.0.0 || ^6.0.0",
|
|
100
|
+
"raw-body": "^3.0.0",
|
|
101
|
+
"vectoriadb": "^2.3.0"
|
|
102
102
|
},
|
|
103
103
|
"peerDependenciesMeta": {
|
|
104
|
-
"@
|
|
104
|
+
"@anthropic-ai/sdk": {
|
|
105
105
|
"optional": true
|
|
106
106
|
},
|
|
107
|
-
"@
|
|
107
|
+
"@enclave-vm/core": {
|
|
108
108
|
"optional": true
|
|
109
109
|
},
|
|
110
|
-
"
|
|
110
|
+
"@frontmcp/observability": {
|
|
111
111
|
"optional": true
|
|
112
112
|
},
|
|
113
|
-
"@
|
|
113
|
+
"@frontmcp/storage-sqlite": {
|
|
114
114
|
"optional": true
|
|
115
115
|
},
|
|
116
|
-
"@
|
|
116
|
+
"@opentelemetry/api": {
|
|
117
117
|
"optional": true
|
|
118
118
|
},
|
|
119
|
-
"@
|
|
119
|
+
"@opentelemetry/sdk-trace-base": {
|
|
120
120
|
"optional": true
|
|
121
121
|
},
|
|
122
|
-
"
|
|
122
|
+
"@vercel/kv": {
|
|
123
123
|
"optional": true
|
|
124
124
|
},
|
|
125
|
-
"
|
|
125
|
+
"openai": {
|
|
126
126
|
"optional": true
|
|
127
127
|
},
|
|
128
|
-
"
|
|
128
|
+
"vectoriadb": {
|
|
129
129
|
"optional": true
|
|
130
130
|
}
|
|
131
131
|
},
|
|
132
132
|
"dependencies": {
|
|
133
|
+
"@frontmcp/auth": "1.5.0-rc.1",
|
|
134
|
+
"@frontmcp/di": "1.5.0-rc.1",
|
|
135
|
+
"@frontmcp/guard": "1.5.0-rc.1",
|
|
136
|
+
"@frontmcp/lazy-zod": "1.5.0-rc.1",
|
|
137
|
+
"@frontmcp/protocol": "1.5.0-rc.1",
|
|
138
|
+
"@frontmcp/uipack": "1.5.0-rc.1",
|
|
139
|
+
"@frontmcp/utils": "1.5.0-rc.1",
|
|
133
140
|
"@types/cors": "^2.8.17",
|
|
134
|
-
"@frontmcp/utils": "1.4.0",
|
|
135
|
-
"@frontmcp/guard": "1.4.0",
|
|
136
|
-
"@frontmcp/di": "1.4.0",
|
|
137
|
-
"@frontmcp/lazy-zod": "1.4.0",
|
|
138
|
-
"@frontmcp/uipack": "1.4.0",
|
|
139
|
-
"@frontmcp/auth": "1.4.0",
|
|
140
|
-
"@frontmcp/protocol": "1.4.0",
|
|
141
141
|
"ioredis": "^5.8.0",
|
|
142
|
-
"js-yaml": "^4.1.1",
|
|
143
142
|
"jose": "^6.1.3",
|
|
143
|
+
"js-yaml": "^4.1.1",
|
|
144
144
|
"reflect-metadata": "^0.2.2",
|
|
145
145
|
"semver": "^7.6.0"
|
|
146
146
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FlowBase, httpInputSchema, httpOutputSchema, type FlowRunOptions, type ScopeEntry, type ServerRequest } from '../../common';
|
|
2
2
|
declare const plan: {
|
|
3
3
|
readonly pre: ["traceRequest", "acquireQuota", "acquireSemaphore", "checkAuthorization", "router"];
|
|
4
|
-
readonly execute: ["handleLegacySse", "handleSse", "handleStreamableHttp", "handleStatefulHttp", "handleStatelessHttp", "handleDeleteSession"];
|
|
4
|
+
readonly execute: ["handleWebFetch", "handleLegacySse", "handleSse", "handleStreamableHttp", "handleStatefulHttp", "handleStatelessHttp", "handleDeleteSession"];
|
|
5
5
|
readonly finalize: ["audit", "metrics", "releaseSemaphore", "releaseQuota", "finalize"];
|
|
6
6
|
readonly error: [];
|
|
7
7
|
};
|
|
@@ -110,6 +110,22 @@ export default class HttpRequestFlow extends FlowBase<typeof name> {
|
|
|
110
110
|
*/
|
|
111
111
|
private bindOrchestrationAccessor;
|
|
112
112
|
router(): Promise<void>;
|
|
113
|
+
/**
|
|
114
|
+
* Web-fetch (V8-isolate) MCP execute stage. The worker carries its native Web
|
|
115
|
+
* `Request` on the normalized `ServerRequest` under {@link
|
|
116
|
+
* ServerRequestTokens.webRequest}; its presence is the web-mode signal. When
|
|
117
|
+
* present, this stage runs the MCP request through the SDK's
|
|
118
|
+
* `WebStandardStreamableHTTPServerTransport` (via {@link runWebStandardMcp})
|
|
119
|
+
* and responds with the resulting Web `Response` — so the worker runs the SAME
|
|
120
|
+
* `http:request` flow (auth, quota, router, audit, metrics + hooks all apply)
|
|
121
|
+
* and only the transport rendering differs per runtime.
|
|
122
|
+
*
|
|
123
|
+
* On the Node/Express path there is no `webRequest`, so this is a no-op and the
|
|
124
|
+
* request falls through to the Node-`ServerResponse`-coupled handle stages.
|
|
125
|
+
* Auth has already been enforced by `router` (a 401/403 short-circuits before
|
|
126
|
+
* execute), and the verified authorization is read from the request token.
|
|
127
|
+
*/
|
|
128
|
+
handleWebFetch(): Promise<void>;
|
|
113
129
|
handleLegacySse(): Promise<void>;
|
|
114
130
|
handleSse(): Promise<void>;
|
|
115
131
|
handleStreamableHttp(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.request.flow.d.ts","sourceRoot":"","sources":["../../../src/scope/flows/http.request.flow.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http.request.flow.d.ts","sourceRoot":"","sources":["../../../src/scope/flows/http.request.flow.ts"],"names":[],"mappings":"AAaA,OAAO,EAIL,QAAQ,EAGR,eAAe,EACf,gBAAgB,EAShB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;AAGtB,QAAA,MAAM,IAAI;;;;;CAmC2B,CAAC;AAEtC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAIjC,CAAC;AAEH,QAAA,MAAM,IAAI,EAAG,cAAuB,CAAC;AAGrC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,cAAc,EAAE,cAAc,CAC5B,eAAe,EACf,OAAO,IAAI,EACX,OAAO,eAAe,EACtB,OAAO,gBAAgB,EACvB,OAAO,sBAAsB,CAC9B,CAAC;KACH;CACF;AAYD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,QAAQ,CAAC,OAAO,IAAI,CAAC;IAChE,MAAM,wCAA8C;IACpD,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,SAAS,CAAM;IAEvB,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU;IActD,YAAY;IAkDZ,YAAY;IA8BZ,kBAAkB;IAmDxB;;;;;;;;;;;;;;;OAeG;YACW,yBAAyB;IAwCjC,MAAM;IA4NZ;;;;;;;;;;;;;;OAcG;IAEG,cAAc;IAuEd,eAAe;IAuBf,SAAS;IAuBT,oBAAoB;IAuBpB,kBAAkB;IAuBlB,mBAAmB;IAuBnB,mBAAmB;IAgDnB,QAAQ;IAcd;;;OAGG;IACH,OAAO,CAAC,QAAQ;CA8CjB"}
|
|
@@ -36,4 +36,29 @@ export interface OptionalDependencyProbe {
|
|
|
36
36
|
* helper module itself never references `require`).
|
|
37
37
|
*/
|
|
38
38
|
export declare function probeOptionalDependency(moduleName: string, loadError: unknown, resolve: (id: string) => string): OptionalDependencyProbe;
|
|
39
|
+
/**
|
|
40
|
+
* Lazily load an OPTIONAL peer dependency, turning a failed load into a clear,
|
|
41
|
+
* accurate error instead of an opaque `ERR_MODULE_NOT_FOUND`.
|
|
42
|
+
*
|
|
43
|
+
* Pairs with {@link probeOptionalDependency}: on failure it classifies the cause
|
|
44
|
+
* so the message tells the truth (#453):
|
|
45
|
+
* - `not-installed` → "install the peer" (reinstalling helps).
|
|
46
|
+
* - `load-failed` → "resolved but failed to load" (reinstalling will NOT
|
|
47
|
+
* help; it's an export-condition / transpile / transitive-peer mismatch).
|
|
48
|
+
*
|
|
49
|
+
* Loading an optional peer eagerly at module scope crashes every consumer that
|
|
50
|
+
* never uses the feature — so the import MUST be deferred to the feature's
|
|
51
|
+
* use-site and routed through here.
|
|
52
|
+
*
|
|
53
|
+
* @param moduleName - bare specifier of the optional peer (used in messages + probe).
|
|
54
|
+
* @param importer - loader for the module. Pass a literal `() => import('pkg')`
|
|
55
|
+
* so the bundler keeps it a real dynamic import; a variable specifier would
|
|
56
|
+
* defeat static analysis.
|
|
57
|
+
* @param resolve - resolver used to classify the failure; pass `require.resolve`.
|
|
58
|
+
* Kept injectable so this stays unit-testable and ESM-safe (this module never
|
|
59
|
+
* references `require` itself).
|
|
60
|
+
* @param feature - short phrase naming what needs the peer, woven into the hint
|
|
61
|
+
* (e.g. `'skill storage'`).
|
|
62
|
+
*/
|
|
63
|
+
export declare function importOptionalPeer<T>(moduleName: string, importer: () => Promise<T>, resolve: (id: string) => string, feature: string): Promise<T>;
|
|
39
64
|
//# sourceMappingURL=optional-dependency.util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optional-dependency.util.d.ts","sourceRoot":"","sources":["../../src/scope/optional-dependency.util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,MAAM,EAAE,eAAe,GAAG,aAAa,CAAC;IACxC,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAC9B,uBAAuB,CAWzB"}
|
|
1
|
+
{"version":3,"file":"optional-dependency.util.d.ts","sourceRoot":"","sources":["../../src/scope/optional-dependency.util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,MAAM,EAAE,eAAe,GAAG,aAAa,CAAC;IACxC,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAC9B,uBAAuB,CAWzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,EAC/B,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,CAAC,CAAC,CAmBZ"}
|
|
@@ -8,7 +8,7 @@ import { AuthRegistry } from '../auth/auth.registry';
|
|
|
8
8
|
import { type ChannelNotificationService } from '../channel/channel-notification.service';
|
|
9
9
|
import type ChannelRegistry from '../channel/channel.registry';
|
|
10
10
|
import { type ChannelEventBus } from '../channel/sources/app-event.source';
|
|
11
|
-
import { FrontMcpLogger, FrontMcpServer, ScopeEntry, type FlowInputOf, type FlowName, type FlowOutputOf, type FlowType, type FrontMcpAuth, type ScopeRecord, type Token, type Type } from '../common';
|
|
11
|
+
import { FrontMcpLogger, FrontMcpServer, ScopeEntry, type FlowInputOf, type FlowName, type FlowOutputOf, type FlowType, type FrontMcpAuth, type ScopeRecord, type ServerRequest, type Token, type Type } from '../common';
|
|
12
12
|
import { type ElicitationStore } from '../elicitation';
|
|
13
13
|
import { HaManager } from '../ha';
|
|
14
14
|
import { HealthService } from '../health';
|
|
@@ -237,6 +237,14 @@ export declare class Scope extends ScopeEntry {
|
|
|
237
237
|
} | undefined;
|
|
238
238
|
registryFlows(...flows: FlowType[]): Promise<void>;
|
|
239
239
|
runFlow<Name extends FlowName>(name: Name, input: FlowInputOf<Name>, deps?: Map<Token, Type>): Promise<FlowOutputOf<Name> | undefined>;
|
|
240
|
+
/**
|
|
241
|
+
* Find the registered flow that handles this HTTP request (by method +
|
|
242
|
+
* `middleware.path` + `canActivate`), excluding `http:request` (which the
|
|
243
|
+
* web-fetch handler runs directly for the MCP entry path). Lets the
|
|
244
|
+
* Worker/web-fetch adapter dispatch auth/well-known/oauth flows the same way
|
|
245
|
+
* the Express host routes them — without a middleware server.
|
|
246
|
+
*/
|
|
247
|
+
findHttpFlowName(request: ServerRequest): Promise<FlowName | undefined>;
|
|
240
248
|
runFlowForOutput<Name extends FlowName>(name: Name, input: FlowInputOf<Name>, deps?: Map<Token, Type>): Promise<FlowOutputOf<Name>>;
|
|
241
249
|
/**
|
|
242
250
|
* Shut down the scope and release resources.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.instance.d.ts","sourceRoot":"","sources":["../../src/scope/scope.instance.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,aAAa,MAAM,yBAAyB,CAAC;AAEpD,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAE1F,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAI3E,OAAO,EACL,cAAc,EACd,cAAc,EAEd,UAAU,EAEV,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,KAAK,EACV,KAAK,IAAI,EACV,MAAM,WAAW,CAAC;AAQnB,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAK/E,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAIlD,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC;AAInD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,cAAwC,MAAM,2BAA2B,CAAC;AACjF,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAI7D,OAAO,EAA2B,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEhF,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAKL,YAAY,EAKZ,KAAK,SAAS,EACf,MAAM,SAAS,CAAC;AAEjB,OAAO,YAAY,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAA6C,cAAc,EAAE,MAAM,YAAY,CAAC;AAGvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,gBAAgB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"scope.instance.d.ts","sourceRoot":"","sources":["../../src/scope/scope.instance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.instance.d.ts","sourceRoot":"","sources":["../../src/server/server.instance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.instance.d.ts","sourceRoot":"","sources":["../../src/server/server.instance.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EAEd,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAKtE,qBAAa,sBAAuB,SAAQ,cAAc;IACxD,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAC,CAAyB;IAC/C,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,cAAc,CAAC,CAA0B;gBAErC,UAAU,EAAE,WAAW;IAMnC,OAAO,CAAC,aAAa;IAwBrB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB;IAInE,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB;IAIpE,eAAe,CAAC,OAAO,EAAE,oBAAoB,GAAG,oBAAoB;IAI7E;;;OAGG;IACH,gBAAgB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,GAAG,IAAI;IAK1F;;;OAGG;IACH,eAAe,CAAC,YAAY,EAAE,sBAAsB,GAAG,IAAI;IAI3D;;;OAGG;IACH,iBAAiB,CAAC,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,uBAAuB,GAAG,IAAI;IAK/F;;;;OAIG;IACH,gBAAgB,CAAC,aAAa,EAAE,uBAAuB,GAAG,IAAI;IAI9D,OAAO;IA0BP,UAAU,IAAI,OAAO;IAIf,KAAK;CAqBZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.validation.d.ts","sourceRoot":"","sources":["../../src/server/server.validation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAqC,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAsDnF,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"server.validation.d.ts","sourceRoot":"","sources":["../../src/server/server.validation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAqC,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAsDnF,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAuKtF"}
|
package/skill/index.d.ts
CHANGED
|
@@ -49,6 +49,7 @@ export { SkillInstance, createSkillInstance } from './skill.instance';
|
|
|
49
49
|
export { SkillEmitter } from './skill.events';
|
|
50
50
|
export type { SkillChangeEvent, SkillChangeKind, SkillChangeScope } from './skill.events';
|
|
51
51
|
export type { SkillStorageProvider, SkillStorageProviderType, SkillSearchOptions, SkillSearchResult, SkillLoadResult, SkillListOptions, SkillListResult, MutableSkillStorageProvider, } from './skill-storage.interface';
|
|
52
|
+
export type { SkillIndexCache, SkillIndexScoring } from './skill-index-cache.interface';
|
|
52
53
|
export { MemorySkillProvider } from './providers/memory-skill.provider';
|
|
53
54
|
export type { MemorySkillProviderOptions } from './providers/memory-skill.provider';
|
|
54
55
|
export { ExternalSkillProviderBase } from './providers/external-skill.provider';
|
package/skill/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skill/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAGH,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,sBAAsB,EAAE,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGrH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG1F,YAAY,EACV,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skill/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAGH,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,sBAAsB,EAAE,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGrH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG1F,YAAY,EACV,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACV,iBAAiB,EACjB,4BAA4B,EAC5B,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAChG,YAAY,EACV,0BAA0B,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,iCAAiC,GAClC,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,QAAQ,CAAC;AAChB,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,cAAc,EACd,wBAAwB,EACxB,mBAAmB,EACnB,UAAU,GACX,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,eAAe,EACf,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC5F,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AACtF,YAAY,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AAU9F,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAG9D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI1D,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,+BAA+B,EAC/B,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,UAAU,EACV,aAAa,EACb,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAC3G,YAAY,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxH,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAGvF,OAAO,EAAE,wBAAwB,EAAE,KAAK,yBAAyB,EAAE,KAAK,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGjH,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAG1E,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5G,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAInE,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAG5E,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,QAAQ,CAAC;AAC9E,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,QAAQ,CAAC;AAGvG,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type SkillIndexCache, type SkillIndexScoring } from '../skill-index-cache.interface';
|
|
1
2
|
import { type SkillContent } from '../../common/interfaces';
|
|
2
3
|
import { type MutableSkillStorageProvider, type SkillListOptions, type SkillListResult, type SkillLoadResult, type SkillSearchOptions, type SkillSearchResult, type SkillStorageProviderType } from '../skill-storage.interface';
|
|
3
4
|
import { type SkillToolValidator } from '../skill-validator';
|
|
@@ -19,6 +20,20 @@ export interface MemorySkillProviderOptions {
|
|
|
19
20
|
* Optional tool validator for enriching results.
|
|
20
21
|
*/
|
|
21
22
|
toolValidator?: SkillToolValidator;
|
|
23
|
+
/**
|
|
24
|
+
* Ranking function for the underlying vector DB. `bm25` gives stronger keyword
|
|
25
|
+
* relevance; `cosine` (default) preserves the historical behavior. Only takes
|
|
26
|
+
* effect when the installed `vectoriadb` supports it (newer versions); older
|
|
27
|
+
* versions silently ignore it and use cosine.
|
|
28
|
+
* @default 'cosine'
|
|
29
|
+
*/
|
|
30
|
+
scoring?: SkillIndexScoring;
|
|
31
|
+
/**
|
|
32
|
+
* Optional cache for the built index so a cold start can restore it instead of
|
|
33
|
+
* recomputing IDF + embeddings for the whole corpus. Used only when the
|
|
34
|
+
* installed `vectoriadb` exposes snapshot support.
|
|
35
|
+
*/
|
|
36
|
+
indexCache?: SkillIndexCache;
|
|
22
37
|
}
|
|
23
38
|
/**
|
|
24
39
|
* In-memory skill storage provider using TF-IDF for search.
|
|
@@ -28,13 +43,58 @@ export interface MemorySkillProviderOptions {
|
|
|
28
43
|
*/
|
|
29
44
|
export declare class MemorySkillProvider implements MutableSkillStorageProvider {
|
|
30
45
|
readonly type: SkillStorageProviderType;
|
|
31
|
-
private vectorDB
|
|
46
|
+
private vectorDB?;
|
|
47
|
+
private readonly vectorDBReady;
|
|
32
48
|
private skills;
|
|
33
49
|
private defaultTopK;
|
|
34
50
|
private defaultMinScore;
|
|
35
51
|
private toolValidator?;
|
|
36
52
|
private initialized;
|
|
53
|
+
/** Ranking mode passed to the vector DB (cosine | bm25). */
|
|
54
|
+
private readonly scoring;
|
|
55
|
+
/** Optional snapshot cache for fast cold-start (e.g. KV-backed on the edge). */
|
|
56
|
+
private indexCache?;
|
|
57
|
+
/**
|
|
58
|
+
* Whether the vector index reflects the current document set. Adds/removes
|
|
59
|
+
* mark it stale; the FIRST search after a mutation builds (or restores) it
|
|
60
|
+
* exactly once. This defers the expensive IDF/embedding pass off the
|
|
61
|
+
* registration hot-path — registering N skills no longer triggers N reindexes.
|
|
62
|
+
*/
|
|
63
|
+
private indexReady;
|
|
37
64
|
constructor(options?: MemorySkillProviderOptions);
|
|
65
|
+
private initVectorDB;
|
|
66
|
+
/**
|
|
67
|
+
* Attach (or replace) the snapshot cache after construction — useful when the
|
|
68
|
+
* cache binding only exists at request time (e.g. a Cloudflare KV namespace on
|
|
69
|
+
* `env`). Marks the index stale so the next search consults the new cache.
|
|
70
|
+
*/
|
|
71
|
+
setIndexCache(cache: SkillIndexCache | undefined): void;
|
|
72
|
+
/**
|
|
73
|
+
* Ensure the vector index reflects the current document set, building it AT
|
|
74
|
+
* MOST once per mutation batch. When a snapshot cache is configured and the
|
|
75
|
+
* vector DB supports snapshots, a content-hash hit restores the index without
|
|
76
|
+
* recomputing IDF/embeddings (the cold-start fast path); a miss rebuilds and
|
|
77
|
+
* persists the snapshot for next time. Cache failures degrade to a local
|
|
78
|
+
* rebuild — they never block search.
|
|
79
|
+
*/
|
|
80
|
+
private ensureIndexed;
|
|
81
|
+
/**
|
|
82
|
+
* Eagerly build (or restore from cache) the search index now, rather than on
|
|
83
|
+
* the first search. A host calls this after registration completes to move the
|
|
84
|
+
* one-time index build off the first request's critical path (e.g. the edge
|
|
85
|
+
* does this right after attaching the KV cache).
|
|
86
|
+
*/
|
|
87
|
+
warm(): Promise<void>;
|
|
88
|
+
/** Force the vector DB to (re)compute its index now. */
|
|
89
|
+
private reindexNow;
|
|
90
|
+
/**
|
|
91
|
+
* Stable content hash of the indexed skill set + scoring mode. Changing any
|
|
92
|
+
* skill's searchable text, the set of skills, or the scoring mode changes the
|
|
93
|
+
* key, so a stale snapshot is never restored.
|
|
94
|
+
*/
|
|
95
|
+
private computeIndexKey;
|
|
96
|
+
/** Await the lazy vectoriadb load (throws the clear install hint if absent). */
|
|
97
|
+
private db;
|
|
38
98
|
/**
|
|
39
99
|
* Set the tool validator after construction.
|
|
40
100
|
* Useful when the validator isn't available at construction time.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-skill.provider.d.ts","sourceRoot":"","sources":["../../../src/skill/providers/memory-skill.provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memory-skill.provider.d.ts","sourceRoot":"","sources":["../../../src/skill/providers/memory-skill.provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pluggable cache for a skill provider's built search index (the TF-IDF / BM25
|
|
3
|
+
* "embedding" model + per-skill vectors).
|
|
4
|
+
*
|
|
5
|
+
* Building the index means tokenizing every skill, computing IDF across the
|
|
6
|
+
* corpus, and embedding each document. On a long-lived server that happens once;
|
|
7
|
+
* on a serverless/edge runtime (Cloudflare Workers) it happens on EVERY cold
|
|
8
|
+
* start. This cache lets a host persist the built index (e.g. to Cloudflare KV)
|
|
9
|
+
* keyed by a content hash of the indexed skills, so a cold start can restore the
|
|
10
|
+
* index instead of recomputing it — a large cold-start win for big catalogs.
|
|
11
|
+
*
|
|
12
|
+
* Implementations only round-trip an opaque, JSON-safe snapshot (`unknown`); the
|
|
13
|
+
* provider owns its shape (it is the vector DB's snapshot). The cache key is a
|
|
14
|
+
* stable hash of the indexed skill set + scoring mode, so changing the skills or
|
|
15
|
+
* scoring naturally invalidates the entry.
|
|
16
|
+
*/
|
|
17
|
+
export interface SkillIndexCache {
|
|
18
|
+
/**
|
|
19
|
+
* Return the cached snapshot for `key`, or `undefined` on a miss. MUST treat a
|
|
20
|
+
* corrupt/unparseable entry as a miss (resolve `undefined`) rather than throw —
|
|
21
|
+
* a bad cache entry should degrade to a rebuild, never brick search.
|
|
22
|
+
*/
|
|
23
|
+
get(key: string): Promise<unknown | undefined>;
|
|
24
|
+
/** Persist `snapshot` under `key`. Failures should be swallowed (best-effort). */
|
|
25
|
+
set(key: string, snapshot: unknown): Promise<void>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Ranking function for the skill search index.
|
|
29
|
+
* - `cosine` (default): cosine similarity over normalized TF-IDF vectors.
|
|
30
|
+
* - `bm25`: Okapi BM25 — term-saturating, length-normalized relevance.
|
|
31
|
+
*/
|
|
32
|
+
export type SkillIndexScoring = 'cosine' | 'bm25';
|
|
33
|
+
//# sourceMappingURL=skill-index-cache.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-index-cache.interface.d.ts","sourceRoot":"","sources":["../../src/skill/skill-index-cache.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC/C,kFAAkF;IAClF,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,MAAM,CAAC"}
|
|
@@ -56,6 +56,19 @@ interface ComposeOptions {
|
|
|
56
56
|
* Exported so the security test suite can pin down the escape ordering.
|
|
57
57
|
*/
|
|
58
58
|
export declare function sanitizeDescription(raw: string | undefined): string;
|
|
59
|
+
/**
|
|
60
|
+
* Sanitize a skill NAME for safe embedding as a bold catalog label. The name is
|
|
61
|
+
* attacker-influenced (bundle-supplied) and was previously interpolated RAW into
|
|
62
|
+
* `- **${name}**:` — a name with NEWLINES could break out of its bullet and
|
|
63
|
+
* inject fake catalog lines / "SYSTEM:" framing into the catalog (surfaced in the
|
|
64
|
+
* `search_skill` tool description AND the initialize `instructions`). Strip all
|
|
65
|
+
* line breaks + control chars (the STRUCTURAL injection vector), collapse
|
|
66
|
+
* whitespace, and hard-cap the length. Emphasis chars (`_`/`*`) are intentionally
|
|
67
|
+
* NOT escaped — they're common in legitimate identifiers and a single line of
|
|
68
|
+
* markdown can't inject cross-line instructions; malicious TEXT content (vs
|
|
69
|
+
* structure) is defended by bundle signing, not by escaping.
|
|
70
|
+
*/
|
|
71
|
+
export declare function sanitizeName(raw: string | undefined): string;
|
|
59
72
|
/**
|
|
60
73
|
* Build a bounded catalog summary of MCP-visible skills.
|
|
61
74
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-instructions.helper.d.ts","sourceRoot":"","sources":["../../src/skill/skill-instructions.helper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,MAAM,MAAM,wBAAwB,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAoBhF,UAAU,cAAc;IACtB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+DAA+D;IAC/D,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,wBAAwB,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYnE;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,sBAAsB,GAAG,SAAS,GAAG,MAAM,CAsCnG;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CA0B7E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAM1F;AAED;;;;GAIG;AACH,UAAU,mBAAmB;IAC3B,MAAM,IAAI,OAAO,CAAC;IAClB,mBAAmB,IAAI,KAAK,CAAC;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACpD"}
|
|
1
|
+
{"version":3,"file":"skill-instructions.helper.d.ts","sourceRoot":"","sources":["../../src/skill/skill-instructions.helper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,MAAM,MAAM,wBAAwB,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAoBhF,UAAU,cAAc;IACtB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+DAA+D;IAC/D,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,wBAAwB,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYnE;AAKD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAO5D;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,sBAAsB,GAAG,SAAS,GAAG,MAAM,CAsCnG;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CA0B7E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAM1F;AAED;;;;GAIG;AACH,UAAU,mBAAmB;IAC3B,MAAM,IAAI,OAAO,CAAC;IAClB,mBAAmB,IAAI,KAAK,CAAC;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACpD"}
|
|
@@ -31,6 +31,19 @@ export interface SkillSearchOptions {
|
|
|
31
31
|
* Filter by specific tools (skills must reference these tools).
|
|
32
32
|
*/
|
|
33
33
|
tools?: string[];
|
|
34
|
+
/**
|
|
35
|
+
* Anti-query / negative search term(s). A skill's relevance score is reduced
|
|
36
|
+
* by how strongly it matches these terms — surfacing what the user wants while
|
|
37
|
+
* demoting what they explicitly do NOT want (e.g. query "rate limiting",
|
|
38
|
+
* negativeQuery "enforcement" to prefer guidance over enforcement skills).
|
|
39
|
+
* Honored when the installed `vectoriadb` supports it; ignored otherwise.
|
|
40
|
+
*/
|
|
41
|
+
negativeQuery?: string | string[];
|
|
42
|
+
/**
|
|
43
|
+
* Weight applied to the negative-query penalty (higher = stronger demotion).
|
|
44
|
+
* @default 1
|
|
45
|
+
*/
|
|
46
|
+
negativeWeight?: number;
|
|
34
47
|
}
|
|
35
48
|
/**
|
|
36
49
|
* Options for listing skills.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-storage.interface.d.ts","sourceRoot":"","sources":["../../src/skill/skill-storage.interface.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"skill-storage.interface.d.ts","sourceRoot":"","sources":["../../src/skill/skill-storage.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import type ProviderRegistry from '../provider/provider.registry';
|
|
|
7
7
|
import { RegistryAbstract, type RegistryBuildMapResult } from '../regsitry';
|
|
8
8
|
import { type SkillValidationReport } from './errors/skill-validation.error';
|
|
9
9
|
import type { ExternalSkillProviderBase } from './providers/external-skill.provider';
|
|
10
|
+
import { type SkillIndexCache, type SkillIndexScoring } from './skill-index-cache.interface';
|
|
10
11
|
import { type SkillIndexEntry } from './sep-2640';
|
|
11
12
|
import { type SkillListOptions, type SkillListResult, type SkillLoadResult, type SkillSearchOptions, type SkillSearchResult } from './skill-storage.interface';
|
|
12
13
|
import { type SkillChangeEvent } from './skill.events';
|
|
@@ -43,6 +44,18 @@ export interface SkillRegistryOptions {
|
|
|
43
44
|
* @default false
|
|
44
45
|
*/
|
|
45
46
|
failOnInvalidSkills?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Ranking function for the in-memory search index (forwarded to the storage
|
|
49
|
+
* provider's vector DB). `bm25` for stronger keyword relevance; defaults to
|
|
50
|
+
* `cosine`.
|
|
51
|
+
*/
|
|
52
|
+
scoring?: SkillIndexScoring;
|
|
53
|
+
/**
|
|
54
|
+
* Optional snapshot cache for the search index so a cold start can restore it
|
|
55
|
+
* instead of recomputing. Typically supplied later via {@link SkillRegistry.setIndexCache}
|
|
56
|
+
* when the cache binding only exists at request time (e.g. Cloudflare KV).
|
|
57
|
+
*/
|
|
58
|
+
indexCache?: SkillIndexCache;
|
|
46
59
|
}
|
|
47
60
|
/**
|
|
48
61
|
* Options for getting skills from the registry.
|
|
@@ -312,6 +325,20 @@ export default class SkillRegistry extends RegistryAbstract<SkillInstance, Skill
|
|
|
312
325
|
* provider update lagged or failed) would mask the newer dynamic content.
|
|
313
326
|
* Provider-only rows pass through unchanged; overlay-only rows are appended.
|
|
314
327
|
*/
|
|
328
|
+
/**
|
|
329
|
+
* Attach (or replace) the snapshot cache used to persist/restore the search
|
|
330
|
+
* index — for runtimes where the cache binding only exists at request time
|
|
331
|
+
* (e.g. a Cloudflare KV namespace on `env`). No-op if the storage provider
|
|
332
|
+
* doesn't support index caching. Pair with {@link warmIndex} to build/restore
|
|
333
|
+
* the index off the first request's critical path.
|
|
334
|
+
*/
|
|
335
|
+
setIndexCache(cache: SkillIndexCache | undefined): void;
|
|
336
|
+
/**
|
|
337
|
+
* Eagerly build (or restore from the cache) the search index now. Called by a
|
|
338
|
+
* host after registration so the one-time index build (or a KV restore) is
|
|
339
|
+
* paid here rather than inside the first `search`. No-op if unsupported.
|
|
340
|
+
*/
|
|
341
|
+
warmIndex(): Promise<void>;
|
|
315
342
|
search(query: string, options?: SkillSearchOptions): Promise<SkillSearchResult[]>;
|
|
316
343
|
/**
|
|
317
344
|
* Load a skill by ID or name.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.registry.d.ts","sourceRoot":"","sources":["../../src/skill/skill.registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAa,KAAK,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AAEvF,OAAO,KAAK,gBAAgB,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE5E,OAAO,EAEL,KAAK,qBAAqB,EAE3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EAEvB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,uBAAuB,CAAC;IAEhD;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"skill.registry.d.ts","sourceRoot":"","sources":["../../src/skill/skill.registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the MCP `ServerOptions` (capabilities + serverInfo) for a Scope.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from `createInMemoryServer` so every transport that stands up an
|
|
5
|
+
* `McpServer` for a Scope — in-memory, and the Web-fetch handler used by the
|
|
6
|
+
* Cloudflare Worker target — advertises the SAME capability set. Capability
|
|
7
|
+
* drift between transports is a real bug class (a client over HTTP sees an
|
|
8
|
+
* extension the same Scope hides over the Worker), so this is the single
|
|
9
|
+
* source of truth.
|
|
10
|
+
*/
|
|
11
|
+
import { type ServerCapabilities } from '@frontmcp/protocol';
|
|
12
|
+
import { type Scope } from '../scope/scope.instance';
|
|
13
|
+
/**
|
|
14
|
+
* The MCP `ServerOptions.capabilities` type doesn't model the forward-compat
|
|
15
|
+
* `extensions` key (reserved for SEP-2133), so we widen it locally rather than
|
|
16
|
+
* casting through `Record<string, never>`. Runtime passthrough is unchanged.
|
|
17
|
+
*/
|
|
18
|
+
export type ServerCapabilitiesWithExtensions = ServerCapabilities & {
|
|
19
|
+
extensions?: Record<string, unknown>;
|
|
20
|
+
};
|
|
21
|
+
export interface ScopedServerOptions {
|
|
22
|
+
instructions: string;
|
|
23
|
+
capabilities: ServerCapabilitiesWithExtensions;
|
|
24
|
+
serverInfo: Scope['metadata']['info'];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Compute the MCP server capabilities + serverInfo for a Scope.
|
|
28
|
+
*
|
|
29
|
+
* SEP-2640 / SEP-2133 capabilities live inside `experimental` / `extensions`,
|
|
30
|
+
* so we lift those keys out of EVERY fragment (not just `scope.skills`) and
|
|
31
|
+
* merge them — otherwise a client would miss extension capabilities that
|
|
32
|
+
* another transport advertises against the same Scope.
|
|
33
|
+
*/
|
|
34
|
+
export declare function buildScopedServerOptions(scope: Scope, instructions?: string): ScopedServerOptions;
|
|
35
|
+
//# sourceMappingURL=build-scoped-server-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-scoped-server-options.d.ts","sourceRoot":"","sources":["../../src/transport/build-scoped-server-options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD;;;;GAIG;AACH,MAAM,MAAM,gCAAgC,GAAG,kBAAkB,GAAG;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,gCAAgC,CAAC;IAC/C,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;CACvC;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,SAAK,GAAG,mBAAmB,CA8D7F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"in-memory-server.d.ts","sourceRoot":"","sources":["../../src/transport/in-memory-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"in-memory-server.d.ts","sourceRoot":"","sources":["../../src/transport/in-memory-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGnE,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7B,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,gDAAgD;IAChD,eAAe,EAAE,SAAS,CAAC;IAC3B,4CAA4C;IAC5C,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IACnD,sCAAsC;IACtC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,oBAAoB,CAAC,CA0D/B"}
|