@1mcp/agent 0.29.2 → 0.30.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/build/commands/serve/index.d.ts +58 -0
- package/build/commands/serve/index.d.ts.map +1 -1
- package/build/commands/serve/index.js +70 -0
- package/build/commands/serve/index.js.map +1 -1
- package/build/commands/serve/serve.d.ts +11 -0
- package/build/commands/serve/serve.d.ts.map +1 -1
- package/build/commands/serve/serve.js +73 -1
- package/build/commands/serve/serve.js.map +1 -1
- package/build/constants/mcp.d.ts +1 -1
- package/build/constants/mcp.js +1 -1
- package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -1
- package/build/core/capabilities/capabilityAggregator.js +42 -18
- package/build/core/capabilities/capabilityAggregator.js.map +1 -1
- package/build/core/capabilities/capabilityManager.d.ts +3 -2
- package/build/core/capabilities/capabilityManager.d.ts.map +1 -1
- package/build/core/capabilities/capabilityManager.js +3 -3
- package/build/core/capabilities/capabilityManager.js.map +1 -1
- package/build/core/capabilities/internal/installationTools.d.ts.map +1 -1
- package/build/core/capabilities/internal/installationTools.js +4 -0
- package/build/core/capabilities/internal/installationTools.js.map +1 -1
- package/build/core/capabilities/internal/lazyTools.d.ts +11 -0
- package/build/core/capabilities/internal/lazyTools.d.ts.map +1 -0
- package/build/core/capabilities/internal/lazyTools.js +48 -0
- package/build/core/capabilities/internal/lazyTools.js.map +1 -0
- package/build/core/capabilities/internal/managementTools.d.ts.map +1 -1
- package/build/core/capabilities/internal/managementTools.js +9 -0
- package/build/core/capabilities/internal/managementTools.js.map +1 -1
- package/build/core/capabilities/internalCapabilitiesProvider.d.ts +7 -1
- package/build/core/capabilities/internalCapabilitiesProvider.d.ts.map +1 -1
- package/build/core/capabilities/internalCapabilitiesProvider.js +31 -2
- package/build/core/capabilities/internalCapabilitiesProvider.js.map +1 -1
- package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +175 -0
- package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -0
- package/build/core/capabilities/lazyLoadingOrchestrator.js +515 -0
- package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -0
- package/build/core/capabilities/metaToolProvider.d.ts +118 -0
- package/build/core/capabilities/metaToolProvider.d.ts.map +1 -0
- package/build/core/capabilities/metaToolProvider.js +374 -0
- package/build/core/capabilities/metaToolProvider.js.map +1 -0
- package/build/core/capabilities/schemaCache.d.ts +124 -0
- package/build/core/capabilities/schemaCache.d.ts.map +1 -0
- package/build/core/capabilities/schemaCache.js +248 -0
- package/build/core/capabilities/schemaCache.js.map +1 -0
- package/build/core/capabilities/schemas/metaToolSchemas.d.ts +92 -0
- package/build/core/capabilities/schemas/metaToolSchemas.d.ts.map +1 -0
- package/build/core/capabilities/schemas/metaToolSchemas.js +68 -0
- package/build/core/capabilities/schemas/metaToolSchemas.js.map +1 -0
- package/build/core/capabilities/toolRegistry.d.ts +140 -0
- package/build/core/capabilities/toolRegistry.d.ts.map +1 -0
- package/build/core/capabilities/toolRegistry.js +284 -0
- package/build/core/capabilities/toolRegistry.js.map +1 -0
- package/build/core/client/clientManager.d.ts.map +1 -1
- package/build/core/client/clientManager.js +11 -5
- package/build/core/client/clientManager.js.map +1 -1
- package/build/core/flags/flagManager.d.ts.map +1 -1
- package/build/core/flags/flagManager.js +14 -1
- package/build/core/flags/flagManager.js.map +1 -1
- package/build/core/instructions/instructionAggregator.d.ts +21 -0
- package/build/core/instructions/instructionAggregator.d.ts.map +1 -1
- package/build/core/instructions/instructionAggregator.js +78 -3
- package/build/core/instructions/instructionAggregator.js.map +1 -1
- package/build/core/instructions/templateTypes.d.ts +40 -1
- package/build/core/instructions/templateTypes.d.ts.map +1 -1
- package/build/core/instructions/templateTypes.js +70 -0
- package/build/core/instructions/templateTypes.js.map +1 -1
- package/build/core/protocol/requestHandlers.d.ts +2 -1
- package/build/core/protocol/requestHandlers.d.ts.map +1 -1
- package/build/core/protocol/requestHandlers.js +112 -84
- package/build/core/protocol/requestHandlers.js.map +1 -1
- package/build/core/server/adapters/ExternalServerAdapter.d.ts +38 -0
- package/build/core/server/adapters/ExternalServerAdapter.d.ts.map +1 -0
- package/build/core/server/adapters/ExternalServerAdapter.js +50 -0
- package/build/core/server/adapters/ExternalServerAdapter.js.map +1 -0
- package/build/core/server/adapters/ServerRegistry.d.ts +63 -0
- package/build/core/server/adapters/ServerRegistry.d.ts.map +1 -0
- package/build/core/server/adapters/ServerRegistry.js +92 -0
- package/build/core/server/adapters/ServerRegistry.js.map +1 -0
- package/build/core/server/adapters/TemplateServerAdapter.d.ts +47 -0
- package/build/core/server/adapters/TemplateServerAdapter.d.ts.map +1 -0
- package/build/core/server/adapters/TemplateServerAdapter.js +99 -0
- package/build/core/server/adapters/TemplateServerAdapter.js.map +1 -0
- package/build/core/server/adapters/index.d.ts +5 -0
- package/build/core/server/adapters/index.d.ts.map +1 -0
- package/build/core/server/adapters/index.js +6 -0
- package/build/core/server/adapters/index.js.map +1 -0
- package/build/core/server/adapters/types.d.ts +122 -0
- package/build/core/server/adapters/types.d.ts.map +1 -0
- package/build/core/server/adapters/types.js +48 -0
- package/build/core/server/adapters/types.js.map +1 -0
- package/build/core/server/agentConfig.d.ts +19 -0
- package/build/core/server/agentConfig.d.ts.map +1 -1
- package/build/core/server/agentConfig.js +19 -0
- package/build/core/server/agentConfig.js.map +1 -1
- package/build/core/server/connectionManager.d.ts +17 -1
- package/build/core/server/connectionManager.d.ts.map +1 -1
- package/build/core/server/connectionManager.js +65 -5
- package/build/core/server/connectionManager.js.map +1 -1
- package/build/core/server/connectionResolver.d.ts +81 -0
- package/build/core/server/connectionResolver.d.ts.map +1 -0
- package/build/core/server/connectionResolver.js +140 -0
- package/build/core/server/connectionResolver.js.map +1 -0
- package/build/core/server/serverManager.d.ts +13 -0
- package/build/core/server/serverManager.d.ts.map +1 -1
- package/build/core/server/serverManager.js +49 -2
- package/build/core/server/serverManager.js.map +1 -1
- package/build/core/server/templateServerManager.d.ts +16 -0
- package/build/core/server/templateServerManager.d.ts.map +1 -1
- package/build/core/server/templateServerManager.js +45 -0
- package/build/core/server/templateServerManager.js.map +1 -1
- package/build/domains/preset/manager/presetManager.d.ts +5 -0
- package/build/domains/preset/manager/presetManager.d.ts.map +1 -1
- package/build/domains/preset/manager/presetManager.js +7 -0
- package/build/domains/preset/manager/presetManager.js.map +1 -1
- package/build/logger/logger.d.ts +13 -0
- package/build/logger/logger.d.ts.map +1 -1
- package/build/logger/logger.js +41 -0
- package/build/logger/logger.js.map +1 -1
- package/build/server.d.ts +3 -0
- package/build/server.d.ts.map +1 -1
- package/build/server.js +32 -0
- package/build/server.js.map +1 -1
- package/build/transport/http/middlewares/tagsExtractor.d.ts.map +1 -1
- package/build/transport/http/middlewares/tagsExtractor.js +71 -1
- package/build/transport/http/middlewares/tagsExtractor.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import type { OutboundConnection, OutboundConnections } from '../../core/types/client.js';
|
|
2
|
+
/**
|
|
3
|
+
* Interface for accessing template server hash mappings.
|
|
4
|
+
* This abstracts away the dependency on TemplateServerManager.
|
|
5
|
+
*/
|
|
6
|
+
export interface TemplateHashProvider {
|
|
7
|
+
/**
|
|
8
|
+
* Get the rendered hash for a specific session and template
|
|
9
|
+
*/
|
|
10
|
+
getRenderedHashForSession(sessionId: string, templateName: string): string | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Get all rendered hashes for a specific session
|
|
13
|
+
* Returns Map<templateName, renderedHash>
|
|
14
|
+
*/
|
|
15
|
+
getAllRenderedHashesForSession(sessionId: string): Map<string, string> | undefined;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* ConnectionResolver encapsulates the 3-tier connection resolution logic.
|
|
19
|
+
*
|
|
20
|
+
* Key format:
|
|
21
|
+
* - Static servers: name (no colon)
|
|
22
|
+
* - Shareable template servers: name:renderedHash
|
|
23
|
+
* - Per-client template servers: name:sessionId
|
|
24
|
+
*
|
|
25
|
+
* Resolution order:
|
|
26
|
+
* 1. Try session-scoped key (for per-client template servers: name:sessionId)
|
|
27
|
+
* 2. Try rendered hash-based key (for shareable template servers: name:renderedHash)
|
|
28
|
+
* 3. Fall back to direct name lookup (for static servers: name)
|
|
29
|
+
*/
|
|
30
|
+
export declare class ConnectionResolver {
|
|
31
|
+
private readonly outboundConns;
|
|
32
|
+
private readonly templateHashProvider?;
|
|
33
|
+
constructor(outboundConns: OutboundConnections, templateHashProvider?: TemplateHashProvider | undefined);
|
|
34
|
+
/**
|
|
35
|
+
* Resolve outbound connection by client name and session ID.
|
|
36
|
+
*
|
|
37
|
+
* @param clientName The client/server name
|
|
38
|
+
* @param sessionId The session ID (optional)
|
|
39
|
+
* @returns The resolved outbound connection or undefined
|
|
40
|
+
*/
|
|
41
|
+
resolve(clientName: string, sessionId?: string): OutboundConnection | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Filter outbound connections for a specific session.
|
|
44
|
+
*
|
|
45
|
+
* Key format:
|
|
46
|
+
* - Static servers: name (no colon) - always included
|
|
47
|
+
* - Shareable template servers: name:renderedHash - included if session uses this hash
|
|
48
|
+
* - Per-client template servers: name:sessionId - only included if session matches
|
|
49
|
+
*
|
|
50
|
+
* @param sessionId The session ID (optional)
|
|
51
|
+
* @returns A filtered map of outbound connections
|
|
52
|
+
*/
|
|
53
|
+
filterForSession(sessionId?: string): OutboundConnections;
|
|
54
|
+
/**
|
|
55
|
+
* Get all rendered hashes for a specific session.
|
|
56
|
+
* @param sessionId The session ID (optional)
|
|
57
|
+
* @returns Map of templateName to renderedHash, or undefined if no session
|
|
58
|
+
*/
|
|
59
|
+
private getSessionRenderedHashes;
|
|
60
|
+
/**
|
|
61
|
+
* Find any connection for a server by name, regardless of session.
|
|
62
|
+
* This is useful when session context is not available.
|
|
63
|
+
*
|
|
64
|
+
* Resolution order:
|
|
65
|
+
* 1. Try direct name lookup (for static servers)
|
|
66
|
+
* 2. Search for any connection where connection.name matches or key starts with serverName:
|
|
67
|
+
*
|
|
68
|
+
* @param serverName The server name to find
|
|
69
|
+
* @returns The connection key and connection, or undefined
|
|
70
|
+
*/
|
|
71
|
+
findByServerName(serverName: string): {
|
|
72
|
+
key: string;
|
|
73
|
+
connection: OutboundConnection;
|
|
74
|
+
} | undefined;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Factory function to create a ConnectionResolver with optional template hash provider.
|
|
78
|
+
* This provides a simpler API for common use cases.
|
|
79
|
+
*/
|
|
80
|
+
export declare function createConnectionResolver(outboundConns: OutboundConnections, templateHashProvider?: TemplateHashProvider): ConnectionResolver;
|
|
81
|
+
//# sourceMappingURL=connectionResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectionResolver.d.ts","sourceRoot":"","sources":["../../../src/core/server/connectionResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGzF;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAEvF;;;OAGG;IACH,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CACpF;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC;gBADrB,aAAa,EAAE,mBAAmB,EAClC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAG9D;;;;;;OAMG;IACH,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IA0B/E;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,mBAAmB;IA0CzD;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAOhC;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,kBAAkB,CAAA;KAAE,GAAG,SAAS;CAgBlG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,mBAAmB,EAClC,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,kBAAkB,CAEpB"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { errorIf } from '../../logger/logger.js';
|
|
2
|
+
/**
|
|
3
|
+
* ConnectionResolver encapsulates the 3-tier connection resolution logic.
|
|
4
|
+
*
|
|
5
|
+
* Key format:
|
|
6
|
+
* - Static servers: name (no colon)
|
|
7
|
+
* - Shareable template servers: name:renderedHash
|
|
8
|
+
* - Per-client template servers: name:sessionId
|
|
9
|
+
*
|
|
10
|
+
* Resolution order:
|
|
11
|
+
* 1. Try session-scoped key (for per-client template servers: name:sessionId)
|
|
12
|
+
* 2. Try rendered hash-based key (for shareable template servers: name:renderedHash)
|
|
13
|
+
* 3. Fall back to direct name lookup (for static servers: name)
|
|
14
|
+
*/
|
|
15
|
+
export class ConnectionResolver {
|
|
16
|
+
outboundConns;
|
|
17
|
+
templateHashProvider;
|
|
18
|
+
constructor(outboundConns, templateHashProvider) {
|
|
19
|
+
this.outboundConns = outboundConns;
|
|
20
|
+
this.templateHashProvider = templateHashProvider;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Resolve outbound connection by client name and session ID.
|
|
24
|
+
*
|
|
25
|
+
* @param clientName The client/server name
|
|
26
|
+
* @param sessionId The session ID (optional)
|
|
27
|
+
* @returns The resolved outbound connection or undefined
|
|
28
|
+
*/
|
|
29
|
+
resolve(clientName, sessionId) {
|
|
30
|
+
// Tier 1: Try session-scoped key first (for per-client template servers: name:sessionId)
|
|
31
|
+
if (sessionId) {
|
|
32
|
+
const sessionKey = `${clientName}:${sessionId}`;
|
|
33
|
+
const conn = this.outboundConns.get(sessionKey);
|
|
34
|
+
if (conn) {
|
|
35
|
+
return conn;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
// Tier 2: Try rendered hash-based key (for shareable template servers: name:renderedHash)
|
|
39
|
+
if (sessionId && this.templateHashProvider) {
|
|
40
|
+
const renderedHash = this.templateHashProvider.getRenderedHashForSession(sessionId, clientName);
|
|
41
|
+
if (renderedHash) {
|
|
42
|
+
const hashKey = `${clientName}:${renderedHash}`;
|
|
43
|
+
const conn = this.outboundConns.get(hashKey);
|
|
44
|
+
if (conn) {
|
|
45
|
+
return conn;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Tier 3: Fall back to direct name lookup (for static servers)
|
|
50
|
+
return this.outboundConns.get(clientName);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Filter outbound connections for a specific session.
|
|
54
|
+
*
|
|
55
|
+
* Key format:
|
|
56
|
+
* - Static servers: name (no colon) - always included
|
|
57
|
+
* - Shareable template servers: name:renderedHash - included if session uses this hash
|
|
58
|
+
* - Per-client template servers: name:sessionId - only included if session matches
|
|
59
|
+
*
|
|
60
|
+
* @param sessionId The session ID (optional)
|
|
61
|
+
* @returns A filtered map of outbound connections
|
|
62
|
+
*/
|
|
63
|
+
filterForSession(sessionId) {
|
|
64
|
+
const filtered = new Map();
|
|
65
|
+
// Get rendered hashes for this session
|
|
66
|
+
const sessionHashes = this.getSessionRenderedHashes(sessionId);
|
|
67
|
+
for (const [key, conn] of this.outboundConns.entries()) {
|
|
68
|
+
// Static servers (no : in key) - always include
|
|
69
|
+
if (!key.includes(':')) {
|
|
70
|
+
filtered.set(key, conn);
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
// Template servers (format: name:suffix)
|
|
74
|
+
const parts = key.split(':', 2);
|
|
75
|
+
// Validate split result - must have exactly 2 parts
|
|
76
|
+
if (parts.length !== 2) {
|
|
77
|
+
errorIf(() => ({
|
|
78
|
+
message: 'Invalid connection key format: expected exactly one colon delimiter',
|
|
79
|
+
meta: { key, parts: parts.length },
|
|
80
|
+
}));
|
|
81
|
+
continue; // Skip malformed keys
|
|
82
|
+
}
|
|
83
|
+
const [name, suffix] = parts;
|
|
84
|
+
// Per-client template servers (format: name:sessionId) - only include if session matches
|
|
85
|
+
if (suffix === sessionId) {
|
|
86
|
+
filtered.set(key, conn);
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
// Shareable template servers (format: name:renderedHash) - include if this session uses this hash
|
|
90
|
+
if (sessionHashes && sessionHashes.has(name) && sessionHashes.get(name) === suffix) {
|
|
91
|
+
filtered.set(key, conn);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return filtered;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get all rendered hashes for a specific session.
|
|
98
|
+
* @param sessionId The session ID (optional)
|
|
99
|
+
* @returns Map of templateName to renderedHash, or undefined if no session
|
|
100
|
+
*/
|
|
101
|
+
getSessionRenderedHashes(sessionId) {
|
|
102
|
+
if (!sessionId || !this.templateHashProvider) {
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
return this.templateHashProvider.getAllRenderedHashesForSession(sessionId);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Find any connection for a server by name, regardless of session.
|
|
109
|
+
* This is useful when session context is not available.
|
|
110
|
+
*
|
|
111
|
+
* Resolution order:
|
|
112
|
+
* 1. Try direct name lookup (for static servers)
|
|
113
|
+
* 2. Search for any connection where connection.name matches or key starts with serverName:
|
|
114
|
+
*
|
|
115
|
+
* @param serverName The server name to find
|
|
116
|
+
* @returns The connection key and connection, or undefined
|
|
117
|
+
*/
|
|
118
|
+
findByServerName(serverName) {
|
|
119
|
+
// Direct lookup for static servers
|
|
120
|
+
const directConn = this.outboundConns.get(serverName);
|
|
121
|
+
if (directConn) {
|
|
122
|
+
return { key: serverName, connection: directConn };
|
|
123
|
+
}
|
|
124
|
+
// Search for template servers
|
|
125
|
+
for (const [key, connection] of this.outboundConns.entries()) {
|
|
126
|
+
if (connection.name === serverName || key.startsWith(`${serverName}:`)) {
|
|
127
|
+
return { key, connection };
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return undefined;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Factory function to create a ConnectionResolver with optional template hash provider.
|
|
135
|
+
* This provides a simpler API for common use cases.
|
|
136
|
+
*/
|
|
137
|
+
export function createConnectionResolver(outboundConns, templateHashProvider) {
|
|
138
|
+
return new ConnectionResolver(outboundConns, templateHashProvider);
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=connectionResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectionResolver.js","sourceRoot":"","sources":["../../../src/core/server/connectionResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAmBhD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IAFnB,YACmB,aAAkC,EAClC,oBAA2C;QAD3C,kBAAa,GAAb,aAAa,CAAqB;QAClC,yBAAoB,GAApB,oBAAoB,CAAuB;IAC3D,CAAC;IAEJ;;;;;;OAMG;IACH,OAAO,CAAC,UAAkB,EAAE,SAAkB;QAC5C,yFAAyF;QACzF,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,UAAU,GAAG,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAChD,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,0FAA0F;QAC1F,IAAI,SAAS,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAChG,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,OAAO,GAAG,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC;gBAChD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,SAAkB;QACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA8B,CAAC;QAEvD,uCAAuC;QACvC,MAAM,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;QAE/D,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,gDAAgD;YAChD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACxB,SAAS;YACX,CAAC;YAED,yCAAyC;YACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAEhC,oDAAoD;YACpD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;oBACb,OAAO,EAAE,qEAAqE;oBAC9E,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;iBACnC,CAAC,CAAC,CAAC;gBACJ,SAAS,CAAC,sBAAsB;YAClC,CAAC;YAED,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;YAE7B,yFAAyF;YACzF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACxB,SAAS;YACX,CAAC;YAED,kGAAkG;YAClG,IAAI,aAAa,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;gBACnF,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,wBAAwB,CAAC,SAAkB;QACjD,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7C,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,UAAkB;QACjC,mCAAmC;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QACrD,CAAC;QAED,8BAA8B;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7D,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;gBACvE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,aAAkC,EAClC,oBAA2C;IAE3C,OAAO,IAAI,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
2
|
+
import { LazyLoadingOrchestrator } from '../../core/capabilities/lazyLoadingOrchestrator.js';
|
|
2
3
|
import { ClientTemplateTracker, FilterCache, TemplateIndex } from '../../core/filtering/index.js';
|
|
3
4
|
import { InstructionAggregator } from '../../core/instructions/instructionAggregator.js';
|
|
5
|
+
import { ServerRegistry } from '../../core/server/adapters/ServerRegistry.js';
|
|
4
6
|
import { TemplateServerManager } from '../../core/server/templateServerManager.js';
|
|
5
7
|
import type { InboundConnection, InboundConnectionConfig, MCPServerParams, OperationOptions, OutboundConnection, OutboundConnections } from '../../core/types/index.js';
|
|
6
8
|
import type { ContextData } from '../../types/context.js';
|
|
@@ -28,10 +30,12 @@ export declare class ServerManager {
|
|
|
28
30
|
private transports;
|
|
29
31
|
private serverConfigData;
|
|
30
32
|
private instructionAggregator?;
|
|
33
|
+
private lazyLoadingOrchestrator?;
|
|
31
34
|
private connectionManager;
|
|
32
35
|
private templateServerManager;
|
|
33
36
|
private mcpServerLifecycleManager;
|
|
34
37
|
private templateConfigurationManager;
|
|
38
|
+
private serverRegistry;
|
|
35
39
|
private filterCache;
|
|
36
40
|
private constructor();
|
|
37
41
|
static getOrCreateInstance(config: {
|
|
@@ -46,6 +50,14 @@ export declare class ServerManager {
|
|
|
46
50
|
* Set the instruction aggregator instance
|
|
47
51
|
*/
|
|
48
52
|
setInstructionAggregator(aggregator: InstructionAggregator): void;
|
|
53
|
+
/**
|
|
54
|
+
* Set the lazy loading orchestrator instance
|
|
55
|
+
*/
|
|
56
|
+
setLazyLoadingOrchestrator(orchestrator: LazyLoadingOrchestrator): void;
|
|
57
|
+
/**
|
|
58
|
+
* Get the lazy loading orchestrator instance
|
|
59
|
+
*/
|
|
60
|
+
getLazyLoadingOrchestrator(): LazyLoadingOrchestrator | undefined;
|
|
49
61
|
/**
|
|
50
62
|
* Set up context change listener for dynamic template processing
|
|
51
63
|
*/
|
|
@@ -69,6 +81,7 @@ export declare class ServerManager {
|
|
|
69
81
|
getServer(sessionId: string): InboundConnection | undefined;
|
|
70
82
|
getInboundConnections(): Map<string, InboundConnection>;
|
|
71
83
|
getTemplateServerManager(): TemplateServerManager;
|
|
84
|
+
getServerRegistry(): ServerRegistry;
|
|
72
85
|
updateClientsAndTransports(newClients: OutboundConnections, newTransports: Record<string, Transport>): void;
|
|
73
86
|
executeServerOperation<T>(inboundConn: InboundConnection, operation: (inboundConn: InboundConnection) => Promise<T>, options?: OperationOptions): Promise<T>;
|
|
74
87
|
startServer(serverName: string, config: MCPServerParams): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"serverManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ConfigManager } from '../../config/configManager.js';
|
|
2
2
|
import { getGlobalContextManager } from '../../core/context/globalContextManager.js';
|
|
3
3
|
import { getFilterCache } from '../../core/filtering/index.js';
|
|
4
|
+
import { ServerRegistry } from '../../core/server/adapters/ServerRegistry.js';
|
|
4
5
|
import { ConnectionManager } from '../../core/server/connectionManager.js';
|
|
5
6
|
import { MCPServerLifecycleManager } from '../../core/server/mcpServerLifecycleManager.js';
|
|
6
7
|
import { TemplateConfigurationManager } from '../../core/server/templateConfigurationManager.js';
|
|
@@ -23,11 +24,13 @@ export class ServerManager {
|
|
|
23
24
|
transports;
|
|
24
25
|
serverConfigData = null; // Cache the config data
|
|
25
26
|
instructionAggregator;
|
|
27
|
+
lazyLoadingOrchestrator;
|
|
26
28
|
// Component managers
|
|
27
29
|
connectionManager;
|
|
28
30
|
templateServerManager;
|
|
29
31
|
mcpServerLifecycleManager;
|
|
30
32
|
templateConfigurationManager;
|
|
33
|
+
serverRegistry;
|
|
31
34
|
// Filtering cache (kept separate as it's a shared resource)
|
|
32
35
|
filterCache = getFilterCache();
|
|
33
36
|
constructor(config, capabilities, outboundConns, transports) {
|
|
@@ -40,6 +43,7 @@ export class ServerManager {
|
|
|
40
43
|
this.templateServerManager = new TemplateServerManager();
|
|
41
44
|
this.mcpServerLifecycleManager = new MCPServerLifecycleManager();
|
|
42
45
|
this.templateConfigurationManager = new TemplateConfigurationManager();
|
|
46
|
+
this.serverRegistry = new ServerRegistry(outboundConns, this.templateServerManager);
|
|
43
47
|
}
|
|
44
48
|
static getOrCreateInstance(config, capabilities, outboundConns, transports) {
|
|
45
49
|
if (!ServerManager.instance) {
|
|
@@ -65,6 +69,9 @@ export class ServerManager {
|
|
|
65
69
|
*/
|
|
66
70
|
setInstructionAggregator(aggregator) {
|
|
67
71
|
this.instructionAggregator = aggregator;
|
|
72
|
+
// Set instruction aggregator on template server manager
|
|
73
|
+
// This ensures template servers can extract and cache their instructions
|
|
74
|
+
this.templateServerManager.setInstructionAggregator(aggregator);
|
|
68
75
|
// Listen for instruction changes and update existing server instances
|
|
69
76
|
aggregator.on('instructions-changed', () => {
|
|
70
77
|
this.updateServerInstructions();
|
|
@@ -73,6 +80,23 @@ export class ServerManager {
|
|
|
73
80
|
this.setupContextChangeListener();
|
|
74
81
|
debugIf('Instruction aggregator set for ServerManager');
|
|
75
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Set the lazy loading orchestrator instance
|
|
85
|
+
*/
|
|
86
|
+
setLazyLoadingOrchestrator(orchestrator) {
|
|
87
|
+
this.lazyLoadingOrchestrator = orchestrator;
|
|
88
|
+
this.connectionManager.setLazyLoadingOrchestrator(orchestrator);
|
|
89
|
+
if (this.instructionAggregator) {
|
|
90
|
+
this.instructionAggregator.setLazyLoadingOrchestrator(orchestrator);
|
|
91
|
+
}
|
|
92
|
+
debugIf('Lazy loading orchestrator set for ServerManager');
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get the lazy loading orchestrator instance
|
|
96
|
+
*/
|
|
97
|
+
getLazyLoadingOrchestrator() {
|
|
98
|
+
return this.lazyLoadingOrchestrator;
|
|
99
|
+
}
|
|
76
100
|
/**
|
|
77
101
|
* Set up context change listener for dynamic template processing
|
|
78
102
|
*/
|
|
@@ -132,8 +156,6 @@ export class ServerManager {
|
|
|
132
156
|
}
|
|
133
157
|
}
|
|
134
158
|
async connectTransport(transport, sessionId, opts, context) {
|
|
135
|
-
// Get filtered instructions based on client's filter criteria using InstructionAggregator
|
|
136
|
-
const filteredInstructions = this.instructionAggregator?.getFilteredInstructions(opts, this.outboundConns) || '';
|
|
137
159
|
// Load configuration data
|
|
138
160
|
// Always process templates when context is available to ensure context-specific rendering
|
|
139
161
|
const configManager = ConfigManager.getInstance();
|
|
@@ -152,10 +174,32 @@ export class ServerManager {
|
|
|
152
174
|
// Note: ConfigManager.loadConfigWithTemplates already handles conflict detection
|
|
153
175
|
// by filtering out static servers that conflict with template servers
|
|
154
176
|
}
|
|
177
|
+
// Populate server registry with external servers
|
|
178
|
+
if (this.serverConfigData.mcpServers) {
|
|
179
|
+
for (const [name, config] of Object.entries(this.serverConfigData.mcpServers)) {
|
|
180
|
+
if (!this.serverRegistry.has(name)) {
|
|
181
|
+
this.serverRegistry.registerExternal(name, config);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
155
185
|
// If we have context, create template-based servers
|
|
156
186
|
if (context && this.serverConfigData.mcpTemplates) {
|
|
157
187
|
await this.templateServerManager.createTemplateBasedServers(sessionId, context, opts, this.serverConfigData, this.outboundConns, this.transports);
|
|
188
|
+
// Populate server registry with template servers
|
|
189
|
+
for (const [name, config] of Object.entries(this.serverConfigData.mcpTemplates)) {
|
|
190
|
+
if (!this.serverRegistry.has(name)) {
|
|
191
|
+
this.serverRegistry.registerTemplate(name, config);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// CRITICAL: Refresh tool registry after template servers are added
|
|
195
|
+
// This ensures template server tools are included in lazy loading mode
|
|
196
|
+
if (this.lazyLoadingOrchestrator) {
|
|
197
|
+
await this.lazyLoadingOrchestrator.refreshCapabilities();
|
|
198
|
+
}
|
|
158
199
|
}
|
|
200
|
+
// IMPORTANT: Get filtered instructions AFTER template servers are created
|
|
201
|
+
// This ensures template server instructions are included in the initialize response
|
|
202
|
+
const filteredInstructions = this.instructionAggregator?.getFilteredInstructions(opts, this.outboundConns) || '';
|
|
159
203
|
// Connect the transport
|
|
160
204
|
await this.connectionManager.connectTransport(transport, sessionId, opts, context, filteredInstructions);
|
|
161
205
|
}
|
|
@@ -192,6 +236,9 @@ export class ServerManager {
|
|
|
192
236
|
getTemplateServerManager() {
|
|
193
237
|
return this.templateServerManager;
|
|
194
238
|
}
|
|
239
|
+
getServerRegistry() {
|
|
240
|
+
return this.serverRegistry;
|
|
241
|
+
}
|
|
195
242
|
updateClientsAndTransports(newClients, newTransports) {
|
|
196
243
|
this.outboundConns = newClients;
|
|
197
244
|
this.transports = newTransports;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverManager.js","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"serverManager.js","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
2
2
|
import { ClientTemplateTracker, TemplateIndex } from '../../core/filtering/index.js';
|
|
3
|
+
import { InstructionAggregator } from '../../core/instructions/instructionAggregator.js';
|
|
3
4
|
import { ClientInstancePool } from '../../core/server/clientInstancePool.js';
|
|
4
5
|
import type { OutboundConnections } from '../../core/types/client.js';
|
|
5
6
|
import { MCPServerParams } from '../../core/types/index.js';
|
|
@@ -18,10 +19,16 @@ export declare class TemplateServerManager {
|
|
|
18
19
|
private clientInstancePool;
|
|
19
20
|
private templateSessionMap?;
|
|
20
21
|
private cleanupTimer?;
|
|
22
|
+
private instructionAggregator?;
|
|
21
23
|
private sessionToRenderedHash;
|
|
22
24
|
private clientTemplateTracker;
|
|
23
25
|
private templateIndex;
|
|
26
|
+
private failedTemplates;
|
|
24
27
|
constructor();
|
|
28
|
+
/**
|
|
29
|
+
* Set the instruction aggregator for extracting and caching server instructions
|
|
30
|
+
*/
|
|
31
|
+
setInstructionAggregator(aggregator: InstructionAggregator): void;
|
|
25
32
|
/**
|
|
26
33
|
* Starts the periodic cleanup timer for idle template instances
|
|
27
34
|
*/
|
|
@@ -73,6 +80,15 @@ export declare class TemplateServerManager {
|
|
|
73
80
|
* Get the client instance pool
|
|
74
81
|
*/
|
|
75
82
|
getClientInstancePool(): ClientInstancePool;
|
|
83
|
+
/**
|
|
84
|
+
* Get failed template server creation attempts
|
|
85
|
+
*/
|
|
86
|
+
getFailedTemplates(): Array<{
|
|
87
|
+
templateName: string;
|
|
88
|
+
sessionId: string;
|
|
89
|
+
error: string;
|
|
90
|
+
timestamp: Date;
|
|
91
|
+
}>;
|
|
76
92
|
/**
|
|
77
93
|
* Get the rendered hash for a specific session and template
|
|
78
94
|
* Used by resolveOutboundConnection to determine the correct outbound key
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateServerManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/templateServerManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAA4B,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAA6B,MAAM,wCAAwC,CAAC;AAEvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAChD;AAED;;GAEG;AAEH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAAC,CAAsB;IACjD,OAAO,CAAC,YAAY,CAAC,CAAiC;IAGtD,OAAO,CAAC,qBAAqB,CAA0C;IAGvE,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,aAAa,CAAuB;;
|
|
1
|
+
{"version":3,"file":"templateServerManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/templateServerManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAA4B,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC9G,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAA6B,MAAM,wCAAwC,CAAC;AAEvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAChD;AAED;;GAEG;AAEH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAAC,CAAsB;IACjD,OAAO,CAAC,YAAY,CAAC,CAAiC;IACtD,OAAO,CAAC,qBAAqB,CAAC,CAAwB;IAGtD,OAAO,CAAC,qBAAqB,CAA0C;IAGvE,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,aAAa,CAAuB;IAG5C,OAAO,CAAC,eAAe,CAKf;;IAcR;;OAEG;IACI,wBAAwB,CAAC,UAAU,EAAE,qBAAqB,GAAG,IAAI;IAIxE;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACU,0BAA0B,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,uBAAuB,EAC7B,gBAAgB,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;KAAE,EAAE,wCAAwC;IAC9G,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC;IAmHhB;;OAEG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC;IAgIhB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA0BlC;;OAEG;IACI,wBAAwB,CAAC,aAAa,GAAE,MAAuB,GAAG,KAAK,CAAC;QAC7E,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAIF;;OAEG;IACU,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAuCpD;;OAEG;IACI,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI;IAO5E;;OAEG;IACI,iBAAiB,IAAI;QAC1B,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC;QAC9D,KAAK,EAAE,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC;QACpD,OAAO,EAAE,OAAO,CAAC;KAClB;IAWD;;OAEG;IACI,qBAAqB,IAAI,UAAU,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IAIpF;;OAEG;IACI,qBAAqB,IAAI,kBAAkB;IAIlD;;OAEG;IACI,kBAAkB,IAAI,KAAK,CAAC;QACjC,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,IAAI,CAAC;KACjB,CAAC;IAIF;;;OAGG;IACI,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI7F;;;;OAIG;IACI,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAIzF;;OAEG;IACI,OAAO,IAAI,IAAI;CAUvB"}
|
|
@@ -9,11 +9,14 @@ export class TemplateServerManager {
|
|
|
9
9
|
clientInstancePool;
|
|
10
10
|
templateSessionMap; // Maps template name to session ID for tracking
|
|
11
11
|
cleanupTimer; // Timer for idle instance cleanup
|
|
12
|
+
instructionAggregator;
|
|
12
13
|
// Maps sessionId -> (templateName -> renderedHash) for routing shareable servers
|
|
13
14
|
sessionToRenderedHash = new Map();
|
|
14
15
|
// Enhanced filtering components
|
|
15
16
|
clientTemplateTracker = new ClientTemplateTracker();
|
|
16
17
|
templateIndex = new TemplateIndex();
|
|
18
|
+
// Track failed template server creation attempts
|
|
19
|
+
failedTemplates = [];
|
|
17
20
|
constructor() {
|
|
18
21
|
// Initialize the client instance pool
|
|
19
22
|
this.clientInstancePool = new ClientInstancePool({
|
|
@@ -24,6 +27,12 @@ export class TemplateServerManager {
|
|
|
24
27
|
// Start cleanup timer for idle template instances
|
|
25
28
|
this.startCleanupTimer();
|
|
26
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Set the instruction aggregator for extracting and caching server instructions
|
|
32
|
+
*/
|
|
33
|
+
setInstructionAggregator(aggregator) {
|
|
34
|
+
this.instructionAggregator = aggregator;
|
|
35
|
+
}
|
|
27
36
|
/**
|
|
28
37
|
* Starts the periodic cleanup timer for idle template instances
|
|
29
38
|
*/
|
|
@@ -74,6 +83,24 @@ export class TemplateServerManager {
|
|
|
74
83
|
status: ClientStatus.Connected, // Template servers should be connected
|
|
75
84
|
capabilities: undefined, // Will be populated by setupCapabilities
|
|
76
85
|
});
|
|
86
|
+
// Extract and cache instructions for template servers
|
|
87
|
+
// This ensures instructions are available on first connection
|
|
88
|
+
if (this.instructionAggregator) {
|
|
89
|
+
try {
|
|
90
|
+
const instructions = instance.client.getInstructions();
|
|
91
|
+
if (instructions?.trim()) {
|
|
92
|
+
// Use clean template name (not the hash-suffixed outboundKey)
|
|
93
|
+
this.instructionAggregator.setInstructions(templateName, instructions);
|
|
94
|
+
debugIf(() => ({
|
|
95
|
+
message: `Cached instructions for template server: ${templateName}`,
|
|
96
|
+
meta: { templateName, instructionLength: instructions.length },
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
logger.warn(`Failed to extract instructions from template server ${templateName}: ${error}`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
77
104
|
// Track session -> rendered hash mapping for routing
|
|
78
105
|
if (!this.sessionToRenderedHash.has(sessionId)) {
|
|
79
106
|
this.sessionToRenderedHash.set(sessionId, new Map());
|
|
@@ -112,7 +139,19 @@ export class TemplateServerManager {
|
|
|
112
139
|
});
|
|
113
140
|
}
|
|
114
141
|
catch (error) {
|
|
142
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
115
143
|
logger.error(`Failed to create client instance from template ${templateName}:`, error);
|
|
144
|
+
// Track the failure
|
|
145
|
+
this.failedTemplates.push({
|
|
146
|
+
templateName,
|
|
147
|
+
sessionId,
|
|
148
|
+
error: errorMessage,
|
|
149
|
+
timestamp: new Date(),
|
|
150
|
+
});
|
|
151
|
+
// Keep only last 100 failures to prevent memory growth
|
|
152
|
+
if (this.failedTemplates.length > 100) {
|
|
153
|
+
this.failedTemplates.shift();
|
|
154
|
+
}
|
|
116
155
|
}
|
|
117
156
|
}
|
|
118
157
|
}
|
|
@@ -336,6 +375,12 @@ export class TemplateServerManager {
|
|
|
336
375
|
getClientInstancePool() {
|
|
337
376
|
return this.clientInstancePool;
|
|
338
377
|
}
|
|
378
|
+
/**
|
|
379
|
+
* Get failed template server creation attempts
|
|
380
|
+
*/
|
|
381
|
+
getFailedTemplates() {
|
|
382
|
+
return [...this.failedTemplates];
|
|
383
|
+
}
|
|
339
384
|
/**
|
|
340
385
|
* Get the rendered hash for a specific session and template
|
|
341
386
|
* Used by resolveOutboundConnection to determine the correct outbound key
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateServerManager.js","sourceRoot":"","sources":["../../../src/core/server/templateServerManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"templateServerManager.js","sourceRoot":"","sources":["../../../src/core/server/templateServerManager.ts"],"names":[],"mappings":"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"}
|