@kilnai/runtime 0.21.2 → 0.23.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/dist/gateway/gateway-routes.d.ts +2 -1
- package/dist/gateway/gateway-routes.d.ts.map +1 -1
- package/dist/gateway/gateway-routes.js +21 -0
- package/dist/gateway/gateway-routes.js.map +1 -1
- package/dist/gateway/gateway-server.d.ts.map +1 -1
- package/dist/gateway/gateway-server.js +300 -2
- package/dist/gateway/gateway-server.js.map +1 -1
- package/dist/gateway/tenant-tool-factory.d.ts +2 -0
- package/dist/gateway/tenant-tool-factory.d.ts.map +1 -1
- package/dist/gateway/tenant-tool-factory.js +4 -0
- package/dist/gateway/tenant-tool-factory.js.map +1 -1
- package/dist/mcp/gateway-mcp-server.d.ts +8 -0
- package/dist/mcp/gateway-mcp-server.d.ts.map +1 -1
- package/dist/mcp/gateway-mcp-server.js +108 -13
- package/dist/mcp/gateway-mcp-server.js.map +1 -1
- package/dist/mcp/gateway-mcp-types.d.ts +37 -0
- package/dist/mcp/gateway-mcp-types.d.ts.map +1 -1
- package/dist/mcp/index.d.ts +1 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/swarm-store.d.ts +36 -0
- package/dist/mcp/swarm-store.d.ts.map +1 -0
- package/dist/mcp/swarm-store.js +138 -0
- package/dist/mcp/swarm-store.js.map +1 -0
- package/dist/mcp/tool-schemas.d.ts +334 -0
- package/dist/mcp/tool-schemas.d.ts.map +1 -1
- package/dist/mcp/tool-schemas.js +126 -5
- package/dist/mcp/tool-schemas.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Hono } from "hono";
|
|
2
2
|
import type { App, SttAdapter, ContactMemoryService } from "@kilnai/core";
|
|
3
|
-
import type { GatewayAppBinding, SecurityConfig, AuditLog } from "@kilnai/core";
|
|
3
|
+
import type { GatewayAppBinding, SecurityConfig, AuditLog, GatewayMcpConfig } from "@kilnai/core";
|
|
4
4
|
import type { ChannelRegistry } from "../channels/channel-registry.js";
|
|
5
5
|
import type { WebChannel } from "../channels/web-channel.js";
|
|
6
6
|
import type { ModeBAppRuntime } from "./mode-b-routes.js";
|
|
@@ -47,6 +47,7 @@ export interface LoadedApp {
|
|
|
47
47
|
export interface GatewayServerConfig {
|
|
48
48
|
readonly port: number;
|
|
49
49
|
readonly apps: readonly LoadedApp[];
|
|
50
|
+
readonly mcp?: GatewayMcpConfig;
|
|
50
51
|
readonly delegationRegistry?: DelegationRegistry;
|
|
51
52
|
readonly healthRegistry?: HealthRegistry;
|
|
52
53
|
readonly startTime?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-routes.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-routes.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"gateway-routes.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,6 +57,27 @@ export function createGatewayApp(config) {
|
|
|
57
57
|
subsystems,
|
|
58
58
|
});
|
|
59
59
|
});
|
|
60
|
+
if (config.mcp?.enabled) {
|
|
61
|
+
app.get("/.well-known/oauth-authorization-server", (c) => {
|
|
62
|
+
const baseUrl = new URL(c.req.url).origin;
|
|
63
|
+
return c.json({
|
|
64
|
+
issuer: baseUrl,
|
|
65
|
+
token_endpoint: `${baseUrl}/oauth/token`,
|
|
66
|
+
response_types_supported: ["token"],
|
|
67
|
+
grant_types_supported: ["urn:ietf:params:oauth:grant-type:token-exchange"],
|
|
68
|
+
token_endpoint_auth_methods_supported: ["none", "client_secret_basic"],
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
app.get("/.well-known/oauth-protected-resource", (c) => {
|
|
72
|
+
const baseUrl = new URL(c.req.url).origin;
|
|
73
|
+
return c.json({
|
|
74
|
+
resource: baseUrl,
|
|
75
|
+
authorization_servers: [baseUrl],
|
|
76
|
+
bearer_methods_supported: ["header"],
|
|
77
|
+
resource_documentation: `${baseUrl}/mcp`,
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
}
|
|
60
81
|
// Dev mode routes (local development only -- no auth)
|
|
61
82
|
if (config.devMode) {
|
|
62
83
|
if (config.studioDistPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-routes.js","sourceRoot":"","sources":["../../src/gateway/gateway-routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway-routes.js","sourceRoot":"","sources":["../../src/gateway/gateway-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-server.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-server.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAA6F,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAmClJ,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAClI,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,2DAA2D;IAC3D,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtD,gFAAgF;IAChF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;
|
|
1
|
+
{"version":3,"file":"gateway-server.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-server.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAA6F,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAmClJ,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAClI,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,2DAA2D;IAC3D,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtD,gFAAgF;IAChF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAmED,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4sCnG;AAkKD,wBAAsB,cAAc,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuF9E"}
|
|
@@ -22,11 +22,11 @@ import { DevTokenStore } from "./dev-token-store.js";
|
|
|
22
22
|
import { ConversationEventEmitter } from "./conversation-event-emitter.js";
|
|
23
23
|
import { createSttAdapter } from "./stt-factory.js";
|
|
24
24
|
import { createKnowledgePipeline, createSourceManager, createContactMemoryService } from "./knowledge-factory.js";
|
|
25
|
-
import { extractText } from "@kilnai/core";
|
|
25
|
+
import { extractText, textPart, textParts } from "@kilnai/core";
|
|
26
26
|
import { WebhookDedup } from "./webhook-dedup.js";
|
|
27
27
|
import { IntegrationRegistry } from "./integration-registry.js";
|
|
28
28
|
import { LocalCredentialResolver } from "./local-credential-resolver.js";
|
|
29
|
-
import { configureIntegrationDeps } from "./tenant-tool-factory.js";
|
|
29
|
+
import { configureIntegrationDeps, getIntegrationDeps } from "./tenant-tool-factory.js";
|
|
30
30
|
import { SqliteEmailThreadStore } from "./sqlite-email-thread-store.js";
|
|
31
31
|
import { SqliteEnrichmentStore } from "../enrichment/sqlite-enrichment-store.js";
|
|
32
32
|
import { CompositeEventStore } from "../observability/composite-event-store.js";
|
|
@@ -79,6 +79,22 @@ function resolveStudioDist() {
|
|
|
79
79
|
return undefined;
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
+
class ProviderScorerLlmBridge {
|
|
83
|
+
adapter;
|
|
84
|
+
model;
|
|
85
|
+
constructor(adapter, model) {
|
|
86
|
+
this.adapter = adapter;
|
|
87
|
+
this.model = model;
|
|
88
|
+
}
|
|
89
|
+
async evaluate(prompt) {
|
|
90
|
+
const response = await this.adapter.createMessage({
|
|
91
|
+
system: `You are an evaluation judge running as model ${this.model}.`,
|
|
92
|
+
messages: [{ role: "user", parts: [textPart(prompt)] }],
|
|
93
|
+
maxTokens: 512,
|
|
94
|
+
});
|
|
95
|
+
return extractText(response.parts);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
82
98
|
export async function startGateway(configPath, options) {
|
|
83
99
|
let content;
|
|
84
100
|
try {
|
|
@@ -659,6 +675,7 @@ export async function startGateway(configPath, options) {
|
|
|
659
675
|
const honoApp = createGatewayApp({
|
|
660
676
|
port,
|
|
661
677
|
apps: loadedApps,
|
|
678
|
+
mcp: gatewayConfig.mcp,
|
|
662
679
|
delegationRegistry,
|
|
663
680
|
healthRegistry,
|
|
664
681
|
startTime,
|
|
@@ -844,6 +861,18 @@ export async function startGateway(configPath, options) {
|
|
|
844
861
|
const mcpApiKey = gatewayConfig.mcp.auth?.type === "api-key" && gatewayConfig.mcp.auth.keyEnv
|
|
845
862
|
? process.env[gatewayConfig.mcp.auth.keyEnv]
|
|
846
863
|
: undefined;
|
|
864
|
+
const evalProvider = gatewayConfig.mcp.eval
|
|
865
|
+
? createProviderFromConfig({
|
|
866
|
+
name: gatewayConfig.mcp.eval.provider,
|
|
867
|
+
model: gatewayConfig.mcp.eval.model,
|
|
868
|
+
apiKeyEnv: gatewayConfig.mcp.eval.apiKeyEnv,
|
|
869
|
+
})
|
|
870
|
+
: undefined;
|
|
871
|
+
const evalBridge = evalProvider && gatewayConfig.mcp.eval
|
|
872
|
+
? new ProviderScorerLlmBridge(evalProvider, gatewayConfig.mcp.eval.model ?? "claude-haiku-4-5-20251001")
|
|
873
|
+
: undefined;
|
|
874
|
+
const { SwarmStore } = await import("../mcp/swarm-store.js");
|
|
875
|
+
const swarmStore = devMemoryStores ? new SwarmStore(devMemoryStores.get("project")) : undefined;
|
|
847
876
|
const mcpServer = new GatewayMcpServer({
|
|
848
877
|
deps: {
|
|
849
878
|
getMemoryByScope: devMemoryStores
|
|
@@ -887,6 +916,100 @@ export async function startGateway(configPath, options) {
|
|
|
887
916
|
return false;
|
|
888
917
|
}
|
|
889
918
|
: undefined,
|
|
919
|
+
getCrossAgentMemory: devMemoryStores
|
|
920
|
+
? async (teamId, q, tags, limit) => {
|
|
921
|
+
const store = devMemoryStores.get("project");
|
|
922
|
+
if (!store)
|
|
923
|
+
return [];
|
|
924
|
+
const teamTag = `_team:${teamId}`;
|
|
925
|
+
const requiredTags = [teamTag, ...parseCommaTags(tags)];
|
|
926
|
+
const maxResults = limit ?? 50;
|
|
927
|
+
if (q) {
|
|
928
|
+
const results = await store.search(q, maxResults);
|
|
929
|
+
return results
|
|
930
|
+
.filter((r) => hasAllTags(r.entry.tags, requiredTags))
|
|
931
|
+
.slice(0, maxResults)
|
|
932
|
+
.map((r) => ({
|
|
933
|
+
id: r.entry.id,
|
|
934
|
+
layer: r.entry.layer,
|
|
935
|
+
content: r.entry.content,
|
|
936
|
+
tags: r.entry.tags,
|
|
937
|
+
score: r.score,
|
|
938
|
+
snippet: r.snippet,
|
|
939
|
+
}));
|
|
940
|
+
}
|
|
941
|
+
return store
|
|
942
|
+
.listEntries({ tags: requiredTags.join(","), limit: maxResults })
|
|
943
|
+
.slice(0, maxResults)
|
|
944
|
+
.map((e) => ({
|
|
945
|
+
id: e.id,
|
|
946
|
+
layer: e.layer,
|
|
947
|
+
content: e.content,
|
|
948
|
+
tags: e.tags,
|
|
949
|
+
}));
|
|
950
|
+
}
|
|
951
|
+
: undefined,
|
|
952
|
+
setCrossAgentMemory: devMemoryStores
|
|
953
|
+
? async (teamId, key, content, tags) => {
|
|
954
|
+
const store = devMemoryStores.get("project");
|
|
955
|
+
if (!store)
|
|
956
|
+
return { id: "" };
|
|
957
|
+
const teamTag = `_team:${teamId}`;
|
|
958
|
+
const mergedTags = uniqueTags([teamTag, `key:${key}`, ...parseCommaTags(tags)]);
|
|
959
|
+
const id = await store.save({ layer: "project", content, tags: mergedTags });
|
|
960
|
+
return { id };
|
|
961
|
+
}
|
|
962
|
+
: undefined,
|
|
963
|
+
deleteCrossAgentMemory: devMemoryStores
|
|
964
|
+
? async (teamId, id) => {
|
|
965
|
+
const store = devMemoryStores.get("project");
|
|
966
|
+
if (!store)
|
|
967
|
+
return false;
|
|
968
|
+
const teamTag = `_team:${teamId}`;
|
|
969
|
+
const entry = store.listEntries({ limit: 1000000 }).find((e) => e.id === id);
|
|
970
|
+
if (!entry || !entry.tags.includes(teamTag))
|
|
971
|
+
return false;
|
|
972
|
+
await store.forget(id);
|
|
973
|
+
return true;
|
|
974
|
+
}
|
|
975
|
+
: undefined,
|
|
976
|
+
listCrossAgentMemory: devMemoryStores
|
|
977
|
+
? async (teamId, tags, limit) => {
|
|
978
|
+
const store = devMemoryStores.get("project");
|
|
979
|
+
if (!store)
|
|
980
|
+
return [];
|
|
981
|
+
const teamTag = `_team:${teamId}`;
|
|
982
|
+
const tagFilter = uniqueTags([teamTag, ...parseCommaTags(tags)]).join(",");
|
|
983
|
+
const maxResults = limit ?? 50;
|
|
984
|
+
return store
|
|
985
|
+
.listEntries({ tags: tagFilter, limit: maxResults })
|
|
986
|
+
.slice(0, maxResults)
|
|
987
|
+
.map((e) => ({
|
|
988
|
+
id: e.id,
|
|
989
|
+
layer: e.layer,
|
|
990
|
+
content: e.content,
|
|
991
|
+
tags: e.tags,
|
|
992
|
+
}));
|
|
993
|
+
}
|
|
994
|
+
: undefined,
|
|
995
|
+
swarmJoin: swarmStore
|
|
996
|
+
? (swarmId, agentId, description) => swarmStore.join(swarmId, agentId, description)
|
|
997
|
+
: undefined,
|
|
998
|
+
swarmLeave: swarmStore
|
|
999
|
+
? (swarmId, agentId) => swarmStore.leave(swarmId, agentId)
|
|
1000
|
+
: undefined,
|
|
1001
|
+
swarmStatus: swarmStore
|
|
1002
|
+
? (swarmId) => swarmStore.status(swarmId)
|
|
1003
|
+
: undefined,
|
|
1004
|
+
swarmBroadcast: swarmStore
|
|
1005
|
+
? (swarmId, agentId, message) => swarmStore.broadcast(swarmId, agentId, message)
|
|
1006
|
+
: undefined,
|
|
1007
|
+
swarmClaim: swarmStore
|
|
1008
|
+
? (swarmId, agentId, resourceId) => swarmStore.claim(swarmId, agentId, resourceId)
|
|
1009
|
+
: undefined,
|
|
1010
|
+
swarmRelease: swarmStore
|
|
1011
|
+
? (swarmId, agentId, resourceId) => swarmStore.release(swarmId, agentId, resourceId)
|
|
1012
|
+
: undefined,
|
|
890
1013
|
searchKnowledge: async (appName, query, limit) => {
|
|
891
1014
|
const loaded = loadedApps.find((a) => a.name === appName);
|
|
892
1015
|
if (!loaded?.knowledgePipeline)
|
|
@@ -916,6 +1039,170 @@ export async function startGateway(configPath, options) {
|
|
|
916
1039
|
apps[appName] = pipeline.metrics;
|
|
917
1040
|
return { enabled: true, apps };
|
|
918
1041
|
},
|
|
1042
|
+
// Integration Runtime (Phase 4)
|
|
1043
|
+
listIntegrations: () => {
|
|
1044
|
+
const deps = getIntegrationDeps();
|
|
1045
|
+
if (!deps)
|
|
1046
|
+
return [];
|
|
1047
|
+
return deps.registry.all().map((a) => ({
|
|
1048
|
+
provider: a.provider,
|
|
1049
|
+
version: a.version,
|
|
1050
|
+
operations: a.operations.map((op) => ({ name: op.name, description: op.description })),
|
|
1051
|
+
}));
|
|
1052
|
+
},
|
|
1053
|
+
executeIntegration: async (provider, operation, tenantId, input) => {
|
|
1054
|
+
const deps = getIntegrationDeps();
|
|
1055
|
+
if (!deps)
|
|
1056
|
+
throw new KilnError("CONFIG_INVALID", "Integration runtime not configured");
|
|
1057
|
+
const adapter = deps.registry.get(provider);
|
|
1058
|
+
if (!adapter)
|
|
1059
|
+
throw new KilnError("CONFIG_INVALID", `Integration provider "${provider}" not registered`);
|
|
1060
|
+
const { IntegrationExecutor } = await import("./integration-executor.js");
|
|
1061
|
+
const executor = new IntegrationExecutor(adapter, deps.credentialResolver, tenantId, provider);
|
|
1062
|
+
return executor.execute(operation, input);
|
|
1063
|
+
},
|
|
1064
|
+
// Routing diagnostics
|
|
1065
|
+
testRouting: async (tenantId, message) => {
|
|
1066
|
+
for (const loaded of loadedApps) {
|
|
1067
|
+
const tr = loaded.tenantRuntime;
|
|
1068
|
+
if (!tr)
|
|
1069
|
+
continue;
|
|
1070
|
+
const tenant = tr.tenantRegistry.get(tenantId);
|
|
1071
|
+
if (!tenant || !tenant.routing || !tenant.agents?.length)
|
|
1072
|
+
continue;
|
|
1073
|
+
const { DefaultTenantRouter } = await import("../tenant/tenant-router.js");
|
|
1074
|
+
const userParts = textParts(message);
|
|
1075
|
+
const text = extractText(userParts);
|
|
1076
|
+
const allRules = [];
|
|
1077
|
+
for (const rule of tenant.routing.rules ?? []) {
|
|
1078
|
+
try {
|
|
1079
|
+
allRules.push({ pattern: rule.match, agent: rule.agent, matched: new RegExp(rule.match, "i").test(text) });
|
|
1080
|
+
}
|
|
1081
|
+
catch {
|
|
1082
|
+
allRules.push({ pattern: rule.match, agent: rule.agent, matched: false });
|
|
1083
|
+
}
|
|
1084
|
+
}
|
|
1085
|
+
const router = new DefaultTenantRouter(tenant.routing);
|
|
1086
|
+
const result = router.route(userParts);
|
|
1087
|
+
const agent = tenant.agents.find((a) => a.id === result.agentId);
|
|
1088
|
+
return {
|
|
1089
|
+
agentId: result.agentId,
|
|
1090
|
+
agentName: agent?.name ?? result.agentId,
|
|
1091
|
+
tier: result.tier,
|
|
1092
|
+
matchedPattern: result.matchedPattern ?? null,
|
|
1093
|
+
confidence: result.confidence ?? null,
|
|
1094
|
+
allRules,
|
|
1095
|
+
};
|
|
1096
|
+
}
|
|
1097
|
+
throw new KilnError("CONFIG_INVALID", `Tenant "${tenantId}" not found or has no routing configured`);
|
|
1098
|
+
},
|
|
1099
|
+
// Eval scoring (rule-based scorers only — no LLM dependency)
|
|
1100
|
+
evalScore: async (input, output, expected, scorerNames) => {
|
|
1101
|
+
const { ExactMatchScorer, JsonValidityScorer, EffortScorer, RoutingAccuracyScorer, ToolCallingAccuracyScorer } = await import("@kilnai/core");
|
|
1102
|
+
const allScorers = [
|
|
1103
|
+
new ExactMatchScorer(),
|
|
1104
|
+
new JsonValidityScorer(),
|
|
1105
|
+
new EffortScorer(),
|
|
1106
|
+
new RoutingAccuracyScorer(),
|
|
1107
|
+
new ToolCallingAccuracyScorer(),
|
|
1108
|
+
];
|
|
1109
|
+
const scorers = scorerNames?.length
|
|
1110
|
+
? allScorers.filter((s) => scorerNames.includes(s.name))
|
|
1111
|
+
: allScorers;
|
|
1112
|
+
const results = await Promise.all(scorers.map((s) => s.score({ input, output, expected })));
|
|
1113
|
+
return results;
|
|
1114
|
+
},
|
|
1115
|
+
evalScoreLlm: gatewayConfig.mcp?.eval
|
|
1116
|
+
? async (input, output, expected, context, scorerNames, scorerOptions) => {
|
|
1117
|
+
if (!evalBridge)
|
|
1118
|
+
return [];
|
|
1119
|
+
const { FaithfulnessScorer, RelevanceScorer, CoherenceScorer, HallucinationScorer, ToxicityScorer, PolicyAdherenceScorer, ContextRelevanceScorer, ToolTrajectoryScorer, MultiTurnConsistencyScorer, SafetyPreservationScorer, HandoffQualityScorer, CustomPromptScorer, } = await import("@kilnai/core");
|
|
1120
|
+
const isRecord = (v) => typeof v === "object" && v !== null && !Array.isArray(v);
|
|
1121
|
+
const options = isRecord(scorerOptions) ? scorerOptions : {};
|
|
1122
|
+
const policies = Array.isArray(options["policies"]) && options["policies"].every((p) => typeof p === "string")
|
|
1123
|
+
? options["policies"]
|
|
1124
|
+
: [];
|
|
1125
|
+
const customPrompt = typeof options["prompt"] === "string" && options["prompt"].trim()
|
|
1126
|
+
? options["prompt"]
|
|
1127
|
+
: `Evaluate this output quality.
|
|
1128
|
+
|
|
1129
|
+
Input: {{input}}
|
|
1130
|
+
Output: {{output}}
|
|
1131
|
+
Expected: {{expected}}
|
|
1132
|
+
Context: {{context}}
|
|
1133
|
+
|
|
1134
|
+
Respond EXACTLY in this format:
|
|
1135
|
+
SCORE: <number from 0.0 to 1.0>
|
|
1136
|
+
REASONING: <one sentence explanation>`;
|
|
1137
|
+
const metadata = {};
|
|
1138
|
+
if (isRecord(options["metadata"]))
|
|
1139
|
+
Object.assign(metadata, options["metadata"]);
|
|
1140
|
+
for (const key of ["toolCalls", "conversationHistory", "handoffHistory", "attackType"]) {
|
|
1141
|
+
if (key in options)
|
|
1142
|
+
metadata[key] = options[key];
|
|
1143
|
+
}
|
|
1144
|
+
const allScorers = [
|
|
1145
|
+
new FaithfulnessScorer(evalBridge),
|
|
1146
|
+
new RelevanceScorer(evalBridge),
|
|
1147
|
+
new CoherenceScorer(evalBridge),
|
|
1148
|
+
new HallucinationScorer(evalBridge),
|
|
1149
|
+
new ToxicityScorer(evalBridge),
|
|
1150
|
+
new PolicyAdherenceScorer(evalBridge, policies),
|
|
1151
|
+
new ContextRelevanceScorer(evalBridge),
|
|
1152
|
+
new ToolTrajectoryScorer(evalBridge),
|
|
1153
|
+
new MultiTurnConsistencyScorer(evalBridge),
|
|
1154
|
+
new SafetyPreservationScorer(evalBridge),
|
|
1155
|
+
new HandoffQualityScorer(evalBridge),
|
|
1156
|
+
new CustomPromptScorer("custom-prompt", customPrompt, evalBridge),
|
|
1157
|
+
];
|
|
1158
|
+
const scorers = scorerNames?.length
|
|
1159
|
+
? allScorers.filter((s) => scorerNames.includes(s.name))
|
|
1160
|
+
: allScorers;
|
|
1161
|
+
return Promise.all(scorers.map((s) => s.score({ input, output, expected, context, metadata })));
|
|
1162
|
+
}
|
|
1163
|
+
: undefined,
|
|
1164
|
+
// Enrichment access
|
|
1165
|
+
getEnrichment: async (sessionId) => {
|
|
1166
|
+
for (const loaded of loadedApps) {
|
|
1167
|
+
const store = loaded.enrichmentAdminConfig?.enrichmentStore;
|
|
1168
|
+
if (!store)
|
|
1169
|
+
continue;
|
|
1170
|
+
const enrichment = await store.get(sessionId);
|
|
1171
|
+
if (enrichment)
|
|
1172
|
+
return enrichment;
|
|
1173
|
+
}
|
|
1174
|
+
return undefined;
|
|
1175
|
+
},
|
|
1176
|
+
listEnrichments: async (tenantId, limit, cursor) => {
|
|
1177
|
+
for (const loaded of loadedApps) {
|
|
1178
|
+
const store = loaded.enrichmentAdminConfig?.enrichmentStore;
|
|
1179
|
+
if (!store)
|
|
1180
|
+
continue;
|
|
1181
|
+
const result = await store.listByTenant(tenantId, limit ?? 20, cursor);
|
|
1182
|
+
return {
|
|
1183
|
+
enrichments: result.enrichments,
|
|
1184
|
+
nextCursor: result.nextCursor,
|
|
1185
|
+
};
|
|
1186
|
+
}
|
|
1187
|
+
return { enrichments: [] };
|
|
1188
|
+
},
|
|
1189
|
+
// Budget enforcement
|
|
1190
|
+
checkBudget: async (tenantId, appName) => {
|
|
1191
|
+
const loaded = loadedApps.find((a) => a.name === appName);
|
|
1192
|
+
const billing = loaded?.tenantRuntime?.billing;
|
|
1193
|
+
if (!billing)
|
|
1194
|
+
return { allowed: true, remaining: -1, unit: "unknown" };
|
|
1195
|
+
const { checkBudget: check } = await import("./budget-middleware.js");
|
|
1196
|
+
return check(billing, tenantId);
|
|
1197
|
+
},
|
|
1198
|
+
reportUsage: async (tenantId, appName, messages, tokens, model) => {
|
|
1199
|
+
const loaded = loadedApps.find((a) => a.name === appName);
|
|
1200
|
+
const billing = loaded?.tenantRuntime?.billing;
|
|
1201
|
+
if (!billing)
|
|
1202
|
+
return;
|
|
1203
|
+
const { reportUsage: report } = await import("./budget-middleware.js");
|
|
1204
|
+
await report(billing, { tenantId, messages, tokens, model });
|
|
1205
|
+
},
|
|
919
1206
|
},
|
|
920
1207
|
apiKey: mcpApiKey,
|
|
921
1208
|
});
|
|
@@ -948,6 +1235,17 @@ const VALID_MEMORY_LAYERS = ["user", "agent", "project"];
|
|
|
948
1235
|
function resolveMemoryLayer(scope) {
|
|
949
1236
|
return VALID_MEMORY_LAYERS.includes(scope) ? scope : "project";
|
|
950
1237
|
}
|
|
1238
|
+
function parseCommaTags(tags) {
|
|
1239
|
+
if (!tags)
|
|
1240
|
+
return [];
|
|
1241
|
+
return tags.split(",").map((t) => t.trim()).filter(Boolean);
|
|
1242
|
+
}
|
|
1243
|
+
function uniqueTags(tags) {
|
|
1244
|
+
return [...new Set(tags.filter(Boolean))];
|
|
1245
|
+
}
|
|
1246
|
+
function hasAllTags(entryTags, requiredTags) {
|
|
1247
|
+
return requiredTags.every((tag) => entryTags.includes(tag));
|
|
1248
|
+
}
|
|
951
1249
|
/** Create a ProviderAdapter from a Mode B provider config */
|
|
952
1250
|
function createProviderFromConfig(config) {
|
|
953
1251
|
const apiKey = config.apiKeyEnv ? process.env[config.apiKeyEnv] ?? "" : "";
|