@geminilight/mindos 1.1.49 → 1.1.51
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/agent/prompt/agent-prompt.txt +26 -4
- package/dist/agent/runtime/adapter-contracts.d.ts +10 -0
- package/dist/agent/runtime/adapter-contracts.d.ts.map +1 -0
- package/dist/agent/runtime/adapter-contracts.js +144 -0
- package/dist/agent/runtime/adapter-contracts.js.map +1 -0
- package/dist/agent/runtime/compatibility.d.ts +12 -0
- package/dist/agent/runtime/compatibility.d.ts.map +1 -0
- package/dist/agent/runtime/compatibility.js +401 -0
- package/dist/agent/runtime/compatibility.js.map +1 -0
- package/dist/agent/runtime/descriptors.d.ts.map +1 -1
- package/dist/agent/runtime/descriptors.js +41 -3
- package/dist/agent/runtime/descriptors.js.map +1 -1
- package/dist/agent/runtime/detection.d.ts.map +1 -1
- package/dist/agent/runtime/detection.js +116 -0
- package/dist/agent/runtime/detection.js.map +1 -1
- package/dist/agent/runtime/index.d.ts +2 -0
- package/dist/agent/runtime/index.d.ts.map +1 -1
- package/dist/agent/runtime/index.js +2 -0
- package/dist/agent/runtime/index.js.map +1 -1
- package/dist/agent/runtime/lifecycle.d.ts +6 -0
- package/dist/agent/runtime/lifecycle.d.ts.map +1 -0
- package/dist/agent/runtime/lifecycle.js +311 -0
- package/dist/agent/runtime/lifecycle.js.map +1 -0
- package/dist/agent/runtime/registry.d.ts +139 -2
- package/dist/agent/runtime/registry.d.ts.map +1 -1
- package/dist/agent/runtime/registry.js.map +1 -1
- package/dist/agent/runtime/skill-runtime-matcher.d.ts +32 -0
- package/dist/agent/runtime/skill-runtime-matcher.d.ts.map +1 -0
- package/dist/agent/runtime/skill-runtime-matcher.js +380 -0
- package/dist/agent/runtime/skill-runtime-matcher.js.map +1 -0
- package/dist/agent/runtime/skill-runtime-requirements.d.ts +23 -0
- package/dist/agent/runtime/skill-runtime-requirements.d.ts.map +1 -0
- package/dist/agent/runtime/skill-runtime-requirements.js +15 -0
- package/dist/agent/runtime/skill-runtime-requirements.js.map +1 -0
- package/dist/agent/tool/capability-registry.js +2 -0
- package/dist/agent/tool/capability-registry.js.map +1 -1
- package/dist/agent/turn/index.d.ts +18 -2
- package/dist/agent/turn/index.d.ts.map +1 -1
- package/dist/agent/turn/index.js +52 -1
- package/dist/agent/turn/index.js.map +1 -1
- package/dist/protocols/acp/agent-descriptors.d.ts +49 -2
- package/dist/protocols/acp/agent-descriptors.d.ts.map +1 -1
- package/dist/protocols/acp/agent-descriptors.js +281 -19
- package/dist/protocols/acp/agent-descriptors.js.map +1 -1
- package/dist/protocols/acp/detect-local.d.ts +2 -1
- package/dist/protocols/acp/detect-local.d.ts.map +1 -1
- package/dist/protocols/acp/detect-local.js +150 -3
- package/dist/protocols/acp/detect-local.js.map +1 -1
- package/dist/protocols/acp/index.d.ts +4 -4
- package/dist/protocols/acp/index.d.ts.map +1 -1
- package/dist/protocols/acp/index.js +24 -24
- package/dist/protocols/acp/index.js.map +1 -1
- package/dist/protocols/acp/session.d.ts +4 -1
- package/dist/protocols/acp/session.d.ts.map +1 -1
- package/dist/protocols/acp/session.js +287 -11
- package/dist/protocols/acp/session.js.map +1 -1
- package/dist/protocols/acp/subprocess.d.ts +3 -1
- package/dist/protocols/acp/subprocess.d.ts.map +1 -1
- package/dist/protocols/acp/subprocess.js +67 -2
- package/dist/protocols/acp/subprocess.js.map +1 -1
- package/dist/protocols/acp/types.d.ts +104 -13
- package/dist/protocols/acp/types.d.ts.map +1 -1
- package/dist/protocols/acp/types.js.map +1 -1
- package/dist/server/contract.d.ts.map +1 -1
- package/dist/server/contract.js +8 -0
- package/dist/server/contract.js.map +1 -1
- package/dist/server/handlers/acp.d.ts +13 -9
- package/dist/server/handlers/acp.d.ts.map +1 -1
- package/dist/server/handlers/acp.js +34 -36
- package/dist/server/handlers/acp.js.map +1 -1
- package/dist/server/handlers/agent-runtimes.d.ts +1 -1
- package/dist/server/handlers/agent-runtimes.d.ts.map +1 -1
- package/dist/server/handlers/agent-runtimes.js.map +1 -1
- package/dist/server/handlers/agent-turn.d.ts +5 -0
- package/dist/server/handlers/agent-turn.d.ts.map +1 -1
- package/dist/server/handlers/agent-turn.js +47 -0
- package/dist/server/handlers/agent-turn.js.map +1 -1
- package/dist/server/handlers/mcp-runtime-projections.d.ts +49 -0
- package/dist/server/handlers/mcp-runtime-projections.d.ts.map +1 -0
- package/dist/server/handlers/mcp-runtime-projections.js +216 -0
- package/dist/server/handlers/mcp-runtime-projections.js.map +1 -0
- package/dist/server/handlers/runtime-adapter-projections.d.ts +90 -0
- package/dist/server/handlers/runtime-adapter-projections.d.ts.map +1 -0
- package/dist/server/handlers/runtime-adapter-projections.js +329 -0
- package/dist/server/handlers/runtime-adapter-projections.js.map +1 -0
- package/dist/server/handlers/runtime-artifact-projections.d.ts +57 -0
- package/dist/server/handlers/runtime-artifact-projections.d.ts.map +1 -0
- package/dist/server/handlers/runtime-artifact-projections.js +147 -0
- package/dist/server/handlers/runtime-artifact-projections.js.map +1 -0
- package/dist/server/handlers/runtime-automation-projections.d.ts +49 -0
- package/dist/server/handlers/runtime-automation-projections.d.ts.map +1 -0
- package/dist/server/handlers/runtime-automation-projections.js +114 -0
- package/dist/server/handlers/runtime-automation-projections.js.map +1 -0
- package/dist/server/handlers/runtime-permission-projections.d.ts +71 -0
- package/dist/server/handlers/runtime-permission-projections.d.ts.map +1 -0
- package/dist/server/handlers/runtime-permission-projections.js +223 -0
- package/dist/server/handlers/runtime-permission-projections.js.map +1 -0
- package/dist/server/handlers/runtime-readiness.d.ts +68 -0
- package/dist/server/handlers/runtime-readiness.d.ts.map +1 -0
- package/dist/server/handlers/runtime-readiness.js +481 -0
- package/dist/server/handlers/runtime-readiness.js.map +1 -0
- package/dist/server/handlers/runtime-session-projections.d.ts +81 -0
- package/dist/server/handlers/runtime-session-projections.d.ts.map +1 -0
- package/dist/server/handlers/runtime-session-projections.js +267 -0
- package/dist/server/handlers/runtime-session-projections.js.map +1 -0
- package/dist/server/handlers/skill-links.d.ts +1 -1
- package/dist/server/handlers/skill-links.d.ts.map +1 -1
- package/dist/server/handlers/skill-links.js +17 -2
- package/dist/server/handlers/skill-links.js.map +1 -1
- package/dist/server/handlers/skill-metadata.d.ts +12 -0
- package/dist/server/handlers/skill-metadata.d.ts.map +1 -0
- package/dist/server/handlers/skill-metadata.js +179 -0
- package/dist/server/handlers/skill-metadata.js.map +1 -0
- package/dist/server/handlers/skill-runtime-matches.d.ts +25 -0
- package/dist/server/handlers/skill-runtime-matches.d.ts.map +1 -0
- package/dist/server/handlers/skill-runtime-matches.js +75 -0
- package/dist/server/handlers/skill-runtime-matches.js.map +1 -0
- package/dist/server/handlers/skills.d.ts +2 -0
- package/dist/server/handlers/skills.d.ts.map +1 -1
- package/dist/server/handlers/skills.js +8 -24
- package/dist/server/handlers/skills.js.map +1 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +95 -5
- package/dist/server/http.js.map +1 -1
- package/dist/server/index.d.ts +13 -2
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +12 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/route-ownership.d.ts.map +1 -1
- package/dist/server/route-ownership.js +8 -0
- package/dist/server/route-ownership.js.map +1 -1
- package/package.json +9 -9
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { AgentRuntimeCompatibilityOwner, AgentRuntimeCompatibilityRequirementStatus, AgentRuntimeDescriptor, AgentRuntimeKind, AgentRuntimeStatus } from '../../agent/runtime/registry.js';
|
|
2
|
+
import { type MindosServerResponse } from '../response.js';
|
|
3
|
+
import type { MindosMcpAgentProfile } from './mcp-agents.js';
|
|
4
|
+
import type { MindosMcpConfigFile } from './mcp-tools.js';
|
|
5
|
+
export type AgentRuntimeMcpProjectionStatus = 'ready' | 'projectable' | 'limited' | 'blocked' | 'unknown';
|
|
6
|
+
export type AgentRuntimeMcpProjectionReason = {
|
|
7
|
+
id: string;
|
|
8
|
+
status: AgentRuntimeCompatibilityRequirementStatus;
|
|
9
|
+
owner: AgentRuntimeCompatibilityOwner;
|
|
10
|
+
summary: string;
|
|
11
|
+
};
|
|
12
|
+
export type AgentRuntimeMcpProjection = {
|
|
13
|
+
schemaVersion: 1;
|
|
14
|
+
runtimeId: string;
|
|
15
|
+
runtimeName: string;
|
|
16
|
+
runtimeKind: AgentRuntimeKind;
|
|
17
|
+
runtimeStatus: AgentRuntimeStatus;
|
|
18
|
+
mcpAgentKey?: string;
|
|
19
|
+
status: AgentRuntimeMcpProjectionStatus;
|
|
20
|
+
configuredServerCount: number;
|
|
21
|
+
configuredServers: string[];
|
|
22
|
+
configuredSources: string[];
|
|
23
|
+
mindosConfigServerCount: number;
|
|
24
|
+
mindosConfigServers: string[];
|
|
25
|
+
projectedServerCount: number;
|
|
26
|
+
projectedServers: string[];
|
|
27
|
+
supportsNativeConfig: boolean;
|
|
28
|
+
supportsMindosProjection: boolean;
|
|
29
|
+
reasons: AgentRuntimeMcpProjectionReason[];
|
|
30
|
+
blockers?: string[];
|
|
31
|
+
};
|
|
32
|
+
export type AgentRuntimeMcpProjectionsPayload = {
|
|
33
|
+
schemaVersion: 1;
|
|
34
|
+
projections: AgentRuntimeMcpProjection[];
|
|
35
|
+
};
|
|
36
|
+
export type AgentRuntimeMcpProjectionServices = {
|
|
37
|
+
listRuntimes(): AgentRuntimeDescriptor[] | Promise<AgentRuntimeDescriptor[]>;
|
|
38
|
+
listMcpAgents(): MindosMcpAgentProfile[] | Promise<MindosMcpAgentProfile[]>;
|
|
39
|
+
readMcpConfig?(): MindosMcpConfigFile;
|
|
40
|
+
};
|
|
41
|
+
export declare function handleAgentRuntimeMcpProjectionsGet(searchParams: URLSearchParams, services: AgentRuntimeMcpProjectionServices): Promise<MindosServerResponse<AgentRuntimeMcpProjectionsPayload | {
|
|
42
|
+
error: string;
|
|
43
|
+
}>>;
|
|
44
|
+
export declare function buildAgentRuntimeMcpProjectionsPayload(input: {
|
|
45
|
+
runtimes: AgentRuntimeDescriptor[];
|
|
46
|
+
mcpAgents: MindosMcpAgentProfile[];
|
|
47
|
+
mindosMcpConfig?: MindosMcpConfigFile | null;
|
|
48
|
+
}): AgentRuntimeMcpProjectionsPayload;
|
|
49
|
+
//# sourceMappingURL=mcp-runtime-projections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-runtime-projections.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/mcp-runtime-projections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,0CAA0C,EAC1C,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,gBAAgB,CAAC;AAEhF,MAAM,MAAM,+BAA+B,GACvC,OAAO,GACP,aAAa,GACb,SAAS,GACT,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,MAAM,+BAA+B,GAAG;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,0CAA0C,CAAC;IACnD,KAAK,EAAE,8BAA8B,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,aAAa,EAAE,CAAC,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,EAAE,kBAAkB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,+BAA+B,CAAC;IACxC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,wBAAwB,EAAE,OAAO,CAAC;IAClC,OAAO,EAAE,+BAA+B,EAAE,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,yBAAyB,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,YAAY,IAAI,sBAAsB,EAAE,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC7E,aAAa,IAAI,qBAAqB,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAC5E,aAAa,CAAC,IAAI,mBAAmB,CAAC;CACvC,CAAC;AAOF,wBAAsB,mCAAmC,CACvD,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,iCAAiC,GAC1C,OAAO,CAAC,oBAAoB,CAAC,iCAAiC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAsBtF;AAED,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC5D,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,eAAe,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAC9C,GAAG,iCAAiC,CAWpC"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import { errorResponse, json } from '../response.js';
|
|
2
|
+
export async function handleAgentRuntimeMcpProjectionsGet(searchParams, services) {
|
|
3
|
+
try {
|
|
4
|
+
const [runtimes, mcpAgents] = await Promise.all([
|
|
5
|
+
services.listRuntimes(),
|
|
6
|
+
services.listMcpAgents(),
|
|
7
|
+
]);
|
|
8
|
+
const payload = buildAgentRuntimeMcpProjectionsPayload({
|
|
9
|
+
runtimes,
|
|
10
|
+
mcpAgents,
|
|
11
|
+
mindosMcpConfig: services.readMcpConfig?.(),
|
|
12
|
+
});
|
|
13
|
+
const runtimeFilter = searchParams.get('runtime')?.trim();
|
|
14
|
+
const filtered = runtimeFilter
|
|
15
|
+
? payload.projections.filter((projection) => projection.runtimeId === runtimeFilter || projection.runtimeKind === runtimeFilter)
|
|
16
|
+
: payload.projections;
|
|
17
|
+
return json({ ...payload, projections: filtered }, { headers: { 'Cache-Control': 'no-store' } });
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
return errorResponse(error);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export function buildAgentRuntimeMcpProjectionsPayload(input) {
|
|
24
|
+
const agentByKey = new Map(input.mcpAgents.map((agent) => [agent.key, agent]));
|
|
25
|
+
const mindosContext = buildMindosMcpProjectionContext(input.mindosMcpConfig);
|
|
26
|
+
return {
|
|
27
|
+
schemaVersion: 1,
|
|
28
|
+
projections: input.runtimes.map((runtime) => buildRuntimeMcpProjection({
|
|
29
|
+
runtime,
|
|
30
|
+
agentByKey,
|
|
31
|
+
mindosContext,
|
|
32
|
+
})),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function buildRuntimeMcpProjection(input) {
|
|
36
|
+
const { runtime, agentByKey, mindosContext } = input;
|
|
37
|
+
const mcpAgent = resolveRuntimeMcpAgent(runtime, agentByKey);
|
|
38
|
+
const mcpAgentKey = mcpAgent?.key ?? fallbackMcpAgentKey(runtime);
|
|
39
|
+
const configuredServers = uniqSorted(mcpAgent?.configuredMcpServers ?? []);
|
|
40
|
+
const configuredSources = uniqSorted(mcpAgent?.configuredMcpSources ?? []);
|
|
41
|
+
const supportsNativeConfig = !!mcpAgent || runtime.capabilities.supportsMcpConfig;
|
|
42
|
+
const supportsMindosProjection = runtime.kind === 'mindos' || !!mcpAgent;
|
|
43
|
+
const projectedServers = runtime.kind === 'mindos'
|
|
44
|
+
? mindosContext.projectedServers
|
|
45
|
+
: configuredServers;
|
|
46
|
+
const reasons = [];
|
|
47
|
+
const blockers = [];
|
|
48
|
+
reasons.push(reason('runtime-available', runtime.status === 'available' ? 'satisfied' : 'missing', runtime.status === 'available' ? 'mindos' : 'shared', runtime.status === 'available'
|
|
49
|
+
? `${runtime.name} is available for MCP projection diagnostics.`
|
|
50
|
+
: `${runtime.name} is not available, so MCP readiness cannot be trusted.`));
|
|
51
|
+
reasons.push(reason('mcp-agent-profile', mcpAgent ? 'satisfied' : runtime.kind === 'acp' ? 'unknown' : 'missing', 'mindos', mcpAgent
|
|
52
|
+
? `MindOS found the MCP configuration profile for ${mcpAgent.name}.`
|
|
53
|
+
: runtime.kind === 'acp'
|
|
54
|
+
? 'Generic ACP runtimes need an adapter-specific MCP profile before MindOS can project tooling confidently.'
|
|
55
|
+
: `MindOS does not have an MCP configuration profile for ${runtime.name}.`));
|
|
56
|
+
reasons.push(reason('mindos-mcp-config', mindosContext.configServers.length > 0 ? 'satisfied' : 'missing', 'mindos', mindosContext.configServers.length > 0
|
|
57
|
+
? 'The canonical MindOS MCP config has server entries that can be projected to compatible runtimes.'
|
|
58
|
+
: 'The canonical MindOS MCP config has no server entries yet.'));
|
|
59
|
+
if (runtime.kind === 'mindos') {
|
|
60
|
+
reasons.push(reason('mindos-runtime-allowlist', mindosContext.projectedServers.length > 0 ? 'satisfied' : mindosContext.configServers.length > 0 ? 'missing' : 'not-applicable', 'mindos', mindosContext.projectedServers.length > 0
|
|
61
|
+
? 'MindOS Agent has an explicit MCP allowlist for bounded runtime exposure.'
|
|
62
|
+
: mindosContext.configServers.length > 0
|
|
63
|
+
? 'MindOS Agent only receives servers explicitly allowlisted for the runtime.'
|
|
64
|
+
: 'No MindOS MCP servers are configured to allowlist yet.'));
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
reasons.push(reason('runtime-native-mcp-config', configuredServers.length > 0 ? 'satisfied' : mcpAgent ? 'missing' : 'unknown', runtime.kind === 'acp' ? 'external' : 'shared', configuredServers.length > 0
|
|
68
|
+
? `${runtime.name} has MCP server entries in its runtime-specific configuration.`
|
|
69
|
+
: mcpAgent
|
|
70
|
+
? `${runtime.name} has a known MCP config surface, but no configured server entries were detected.`
|
|
71
|
+
: `${runtime.name} does not expose a known MCP config surface to MindOS yet.`));
|
|
72
|
+
}
|
|
73
|
+
let status;
|
|
74
|
+
if (runtime.status !== 'available') {
|
|
75
|
+
status = 'blocked';
|
|
76
|
+
blockers.push('runtime-available');
|
|
77
|
+
}
|
|
78
|
+
else if (!supportsNativeConfig) {
|
|
79
|
+
status = runtime.kind === 'acp' ? 'unknown' : 'blocked';
|
|
80
|
+
blockers.push(runtime.kind === 'acp' ? 'mcp-agent-profile' : 'runtime-mcp-config');
|
|
81
|
+
}
|
|
82
|
+
else if (runtime.kind === 'mindos') {
|
|
83
|
+
if (mindosContext.projectedServers.length > 0) {
|
|
84
|
+
status = 'ready';
|
|
85
|
+
}
|
|
86
|
+
else if (mindosContext.configServers.length > 0) {
|
|
87
|
+
status = 'projectable';
|
|
88
|
+
blockers.push('mindos-runtime-allowlist');
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
status = 'limited';
|
|
92
|
+
blockers.push('mindos-mcp-config');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
else if (configuredServers.length > 0) {
|
|
96
|
+
status = 'ready';
|
|
97
|
+
}
|
|
98
|
+
else if (mindosContext.configServers.length > 0 && mcpAgent) {
|
|
99
|
+
status = 'projectable';
|
|
100
|
+
blockers.push('runtime-native-mcp-config');
|
|
101
|
+
}
|
|
102
|
+
else if (mcpAgent) {
|
|
103
|
+
status = 'limited';
|
|
104
|
+
blockers.push('runtime-native-mcp-config');
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
status = 'unknown';
|
|
108
|
+
blockers.push('mcp-agent-profile');
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
schemaVersion: 1,
|
|
112
|
+
runtimeId: runtime.runtimeId ?? runtime.id,
|
|
113
|
+
runtimeName: runtime.name,
|
|
114
|
+
runtimeKind: runtime.kind,
|
|
115
|
+
runtimeStatus: runtime.status,
|
|
116
|
+
...(mcpAgentKey ? { mcpAgentKey } : {}),
|
|
117
|
+
status,
|
|
118
|
+
configuredServerCount: configuredServers.length,
|
|
119
|
+
configuredServers,
|
|
120
|
+
configuredSources,
|
|
121
|
+
mindosConfigServerCount: mindosContext.configServers.length,
|
|
122
|
+
mindosConfigServers: mindosContext.configServers,
|
|
123
|
+
projectedServerCount: projectedServers.length,
|
|
124
|
+
projectedServers,
|
|
125
|
+
supportsNativeConfig,
|
|
126
|
+
supportsMindosProjection,
|
|
127
|
+
reasons,
|
|
128
|
+
...(blockers.length > 0 ? { blockers: uniqSorted(blockers) } : {}),
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
function resolveRuntimeMcpAgent(runtime, agentByKey) {
|
|
132
|
+
for (const key of runtimeMcpAgentKeyCandidates(runtime)) {
|
|
133
|
+
const agent = agentByKey.get(key);
|
|
134
|
+
if (agent)
|
|
135
|
+
return agent;
|
|
136
|
+
}
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
function runtimeMcpAgentKeyCandidates(runtime) {
|
|
140
|
+
return uniqSorted([
|
|
141
|
+
runtime.mcpAgentKey,
|
|
142
|
+
fallbackMcpAgentKey(runtime),
|
|
143
|
+
runtime.runtimeId,
|
|
144
|
+
runtime.id,
|
|
145
|
+
runtime.sourceAgentId,
|
|
146
|
+
runtime.canonicalAgentId,
|
|
147
|
+
...(runtime.aliases ?? []),
|
|
148
|
+
]);
|
|
149
|
+
}
|
|
150
|
+
function fallbackMcpAgentKey(runtime) {
|
|
151
|
+
if (runtime.kind === 'mindos')
|
|
152
|
+
return 'mindos';
|
|
153
|
+
if (runtime.kind === 'codex')
|
|
154
|
+
return 'codex';
|
|
155
|
+
if (runtime.kind === 'claude')
|
|
156
|
+
return 'claude-code';
|
|
157
|
+
return undefined;
|
|
158
|
+
}
|
|
159
|
+
function buildMindosMcpProjectionContext(config) {
|
|
160
|
+
const normalized = normalizeMindosMcpConfig(config);
|
|
161
|
+
const configServers = uniqSorted(Object.keys(normalized.mcpServers));
|
|
162
|
+
const projectedServers = uniqSorted(Object.entries(normalized.mcpServers)
|
|
163
|
+
.filter(([name, entry]) => hasMindosAgentAccess(name, entry, normalized))
|
|
164
|
+
.map(([name]) => name));
|
|
165
|
+
return { configServers, projectedServers };
|
|
166
|
+
}
|
|
167
|
+
function normalizeMindosMcpConfig(config) {
|
|
168
|
+
if (!config || typeof config !== 'object' || !config.mcpServers || typeof config.mcpServers !== 'object') {
|
|
169
|
+
return { mcpServers: {} };
|
|
170
|
+
}
|
|
171
|
+
return config;
|
|
172
|
+
}
|
|
173
|
+
function hasMindosAgentAccess(name, entry, config) {
|
|
174
|
+
const settings = config.settings;
|
|
175
|
+
const globalAllowlist = readRecord(readRecord(settings, 'mindosAgent'), 'mcpServers');
|
|
176
|
+
return normalizeMindosAccess(globalAllowlist?.[name])
|
|
177
|
+
|| normalizeMindosAccess(entry.mindosAgent)
|
|
178
|
+
|| normalizeMindosAccess(readRecord(entry.mindos, 'agent'));
|
|
179
|
+
}
|
|
180
|
+
function normalizeMindosAccess(access) {
|
|
181
|
+
if (access === true)
|
|
182
|
+
return true;
|
|
183
|
+
if (access === false || access === undefined || access === null)
|
|
184
|
+
return false;
|
|
185
|
+
if (Array.isArray(access))
|
|
186
|
+
return access.some((item) => typeof item === 'string' && item.trim().length > 0);
|
|
187
|
+
if (typeof access !== 'object')
|
|
188
|
+
return false;
|
|
189
|
+
const record = access;
|
|
190
|
+
if (record.enabled === false)
|
|
191
|
+
return false;
|
|
192
|
+
if (record.enabled === true)
|
|
193
|
+
return true;
|
|
194
|
+
if (record.tools === true || record.directTools === true)
|
|
195
|
+
return true;
|
|
196
|
+
if (Array.isArray(record.tools) && record.tools.some((item) => typeof item === 'string' && item.trim().length > 0))
|
|
197
|
+
return true;
|
|
198
|
+
if (Array.isArray(record.directTools) && record.directTools.some((item) => typeof item === 'string' && item.trim().length > 0))
|
|
199
|
+
return true;
|
|
200
|
+
return false;
|
|
201
|
+
}
|
|
202
|
+
function readRecord(value, key) {
|
|
203
|
+
if (!value || typeof value !== 'object' || Array.isArray(value))
|
|
204
|
+
return undefined;
|
|
205
|
+
const child = value[key];
|
|
206
|
+
if (!child || typeof child !== 'object' || Array.isArray(child))
|
|
207
|
+
return undefined;
|
|
208
|
+
return child;
|
|
209
|
+
}
|
|
210
|
+
function reason(id, status, owner, summary) {
|
|
211
|
+
return { id, status, owner, summary };
|
|
212
|
+
}
|
|
213
|
+
function uniqSorted(values) {
|
|
214
|
+
return Array.from(new Set(values.map((value) => value?.trim()).filter((value) => !!value))).sort();
|
|
215
|
+
}
|
|
216
|
+
//# sourceMappingURL=mcp-runtime-projections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-runtime-projections.js","sourceRoot":"","sources":["../../../src/server/handlers/mcp-runtime-projections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { AgentRuntimeAdapterCommandDiscovery, AgentRuntimeAdapterConfigurationOwner, AgentRuntimeAdapterConnectionKind, AgentRuntimeAdapterHealthMode, AgentRuntimeCompatibilityOwner, AgentRuntimeCompatibilityRequirementStatus, AgentRuntimeDescriptor, AgentRuntimeKind, AgentRuntimeOwner, AgentRuntimeResolvedCommandSource, AgentRuntimeStatus } from '../../agent/runtime/registry.js';
|
|
2
|
+
import type { AcpAdapterConnectionType, AcpMcpCapabilities, AcpPromptCapabilities, AcpSessionCapabilities } from '../../protocols/acp/index.js';
|
|
3
|
+
import { type MindosServerResponse } from '../response.js';
|
|
4
|
+
export type AgentRuntimeAdapterProjectionStatus = 'ready' | 'limited' | 'blocked' | 'unknown';
|
|
5
|
+
export type AgentRuntimeAdapterFacetStatus = 'ready' | 'limited' | 'blocked' | 'unknown';
|
|
6
|
+
export type AgentRuntimeAdapterProjectionReason = {
|
|
7
|
+
id: string;
|
|
8
|
+
status: AgentRuntimeCompatibilityRequirementStatus;
|
|
9
|
+
owner: AgentRuntimeCompatibilityOwner;
|
|
10
|
+
summary: string;
|
|
11
|
+
};
|
|
12
|
+
type AdapterFacetBase = {
|
|
13
|
+
status: AgentRuntimeAdapterFacetStatus;
|
|
14
|
+
summary: string;
|
|
15
|
+
reasons: AgentRuntimeAdapterProjectionReason[];
|
|
16
|
+
blockers?: string[];
|
|
17
|
+
};
|
|
18
|
+
export type AgentRuntimeAdapterConnectionProjection = AdapterFacetBase & {
|
|
19
|
+
kind: AgentRuntimeAdapterConnectionKind;
|
|
20
|
+
owner: AgentRuntimeOwner;
|
|
21
|
+
hasCommand: boolean;
|
|
22
|
+
commandSource?: AgentRuntimeResolvedCommandSource;
|
|
23
|
+
};
|
|
24
|
+
export type AgentRuntimeAdapterConfigurationProjection = AdapterFacetBase & {
|
|
25
|
+
modelSelection: AgentRuntimeAdapterConfigurationOwner;
|
|
26
|
+
credentials: AgentRuntimeAdapterConfigurationOwner;
|
|
27
|
+
settings: AgentRuntimeAdapterConfigurationOwner;
|
|
28
|
+
};
|
|
29
|
+
export type AgentRuntimeAdapterHealthProjection = AdapterFacetBase & {
|
|
30
|
+
mode: AgentRuntimeAdapterHealthMode;
|
|
31
|
+
owner: AgentRuntimeOwner;
|
|
32
|
+
hasCommand: boolean;
|
|
33
|
+
timeoutMs?: number;
|
|
34
|
+
};
|
|
35
|
+
export type AgentRuntimeAdapterCommandsProjection = AdapterFacetBase & {
|
|
36
|
+
discovery: AgentRuntimeAdapterCommandDiscovery;
|
|
37
|
+
commandCount: number;
|
|
38
|
+
commandNames: string[];
|
|
39
|
+
commands: Array<{
|
|
40
|
+
name: string;
|
|
41
|
+
description?: string;
|
|
42
|
+
source: 'mindos' | 'runtime-native' | 'adapter-declared';
|
|
43
|
+
}>;
|
|
44
|
+
};
|
|
45
|
+
export type AgentRuntimeAdapterProtocolProjection = AdapterFacetBase & {
|
|
46
|
+
declaredConnectionType?: AcpAdapterConnectionType;
|
|
47
|
+
supportsStreaming: boolean | null;
|
|
48
|
+
authRequired: boolean | null;
|
|
49
|
+
modelCount: number;
|
|
50
|
+
models: Array<{
|
|
51
|
+
id: string;
|
|
52
|
+
label?: string;
|
|
53
|
+
description?: string;
|
|
54
|
+
}>;
|
|
55
|
+
promptCapabilities?: AcpPromptCapabilities;
|
|
56
|
+
mcpCapabilities?: AcpMcpCapabilities;
|
|
57
|
+
sessionCapabilities?: AcpSessionCapabilities & {
|
|
58
|
+
loadSession?: boolean;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
export type AgentRuntimeAdapterProjection = {
|
|
62
|
+
schemaVersion: 1;
|
|
63
|
+
runtimeId: string;
|
|
64
|
+
runtimeName: string;
|
|
65
|
+
runtimeKind: AgentRuntimeKind;
|
|
66
|
+
runtimeStatus: AgentRuntimeStatus;
|
|
67
|
+
status: AgentRuntimeAdapterProjectionStatus;
|
|
68
|
+
connection: AgentRuntimeAdapterConnectionProjection;
|
|
69
|
+
configuration: AgentRuntimeAdapterConfigurationProjection;
|
|
70
|
+
health: AgentRuntimeAdapterHealthProjection;
|
|
71
|
+
commands: AgentRuntimeAdapterCommandsProjection;
|
|
72
|
+
protocol: AgentRuntimeAdapterProtocolProjection;
|
|
73
|
+
reasons: AgentRuntimeAdapterProjectionReason[];
|
|
74
|
+
blockers?: string[];
|
|
75
|
+
};
|
|
76
|
+
export type AgentRuntimeAdapterProjectionsPayload = {
|
|
77
|
+
schemaVersion: 1;
|
|
78
|
+
projections: AgentRuntimeAdapterProjection[];
|
|
79
|
+
};
|
|
80
|
+
export type AgentRuntimeAdapterProjectionServices = {
|
|
81
|
+
listRuntimes(): AgentRuntimeDescriptor[] | Promise<AgentRuntimeDescriptor[]>;
|
|
82
|
+
};
|
|
83
|
+
export declare function handleAgentRuntimeAdapterProjectionsGet(searchParams: URLSearchParams, services: AgentRuntimeAdapterProjectionServices): Promise<MindosServerResponse<AgentRuntimeAdapterProjectionsPayload | {
|
|
84
|
+
error: string;
|
|
85
|
+
}>>;
|
|
86
|
+
export declare function buildAgentRuntimeAdapterProjectionsPayload(input: {
|
|
87
|
+
runtimes: AgentRuntimeDescriptor[];
|
|
88
|
+
}): AgentRuntimeAdapterProjectionsPayload;
|
|
89
|
+
export {};
|
|
90
|
+
//# sourceMappingURL=runtime-adapter-projections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-adapter-projections.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/runtime-adapter-projections.ts"],"names":[],"mappings":"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"}
|