agent-relay-runner 0.120.4 → 0.120.5
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-relay-runner",
|
|
3
|
-
"version": "0.120.
|
|
3
|
+
"version": "0.120.5",
|
|
4
4
|
"description": "Unified provider lifecycle runner for Agent Relay",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"agent-relay-providers": "0.104.3",
|
|
24
|
-
"agent-relay-sdk": "0.2.
|
|
24
|
+
"agent-relay-sdk": "0.2.110",
|
|
25
25
|
"callmux": "0.23.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
package/src/provisioning.ts
CHANGED
|
@@ -36,6 +36,7 @@ function coerceProjectMcpServer(raw: unknown): ProvisioningMcpServer | null {
|
|
|
36
36
|
if (typeof r.command === "string") server.command = r.command;
|
|
37
37
|
if (Array.isArray(r.args) && r.args.every((a) => typeof a === "string")) server.args = r.args as string[];
|
|
38
38
|
if (r.env && typeof r.env === "object") server.env = r.env as Record<string, string>;
|
|
39
|
+
if (r.configEnv && typeof r.configEnv === "object") server.configEnv = r.configEnv as Record<string, string>;
|
|
39
40
|
if (typeof r.url === "string") server.url = r.url;
|
|
40
41
|
if (r.headers && typeof r.headers === "object") server.headers = r.headers as Record<string, string>;
|
|
41
42
|
// Drop an entry that names no transport (neither a command nor a url) — nothing to launch.
|
package/src/relay-mcp.ts
CHANGED
|
@@ -79,14 +79,23 @@ export function sharedMcpBridgeServer(url: string, cwd: string): ProvisioningMcp
|
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
+
function mergedConfigEnv(server: ProvisioningMcpServer): ProvisioningMcpServer {
|
|
83
|
+
if (!server.configEnv || Object.keys(server.configEnv).length === 0) return server;
|
|
84
|
+
return {
|
|
85
|
+
...server,
|
|
86
|
+
env: { ...server.configEnv, ...(server.env ?? {}) },
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
82
90
|
function claudeMcpServerEntry(server: ProvisioningMcpServer): Record<string, unknown> {
|
|
91
|
+
const merged = mergedConfigEnv(server);
|
|
83
92
|
const entry: Record<string, unknown> = {};
|
|
84
|
-
if (
|
|
85
|
-
if (
|
|
86
|
-
if (
|
|
87
|
-
if (
|
|
88
|
-
if (
|
|
89
|
-
if (
|
|
93
|
+
if (merged.type) entry.type = merged.type;
|
|
94
|
+
if (merged.command) entry.command = merged.command;
|
|
95
|
+
if (merged.args?.length) entry.args = merged.args;
|
|
96
|
+
if (merged.env && Object.keys(merged.env).length) entry.env = merged.env;
|
|
97
|
+
if (merged.url) entry.url = merged.url;
|
|
98
|
+
if (merged.headers && Object.keys(merged.headers).length) entry.headers = merged.headers;
|
|
90
99
|
return entry;
|
|
91
100
|
}
|
|
92
101
|
|
|
@@ -132,8 +141,9 @@ export function claudeMcpLaunchArgs(opts: {
|
|
|
132
141
|
// server, the same shape relayMcpCodexConfigArgs uses for the relay endpoint.
|
|
133
142
|
export function codexProvisionedMcpArgs(servers?: Record<string, ProvisioningMcpServer>): string[] {
|
|
134
143
|
const args: string[] = [];
|
|
135
|
-
for (const [name,
|
|
144
|
+
for (const [name, rawServer] of Object.entries(servers ?? {})) {
|
|
136
145
|
if (name === RELAY_MCP_SERVER_NAME) continue;
|
|
146
|
+
const server = mergedConfigEnv(rawServer);
|
|
137
147
|
const key = `mcp_servers.${name}`;
|
|
138
148
|
if (server.command) args.push("-c", `${key}.command=${tomlString(server.command)}`);
|
|
139
149
|
if (server.args?.length) args.push("-c", `${key}.args=[${server.args.map(tomlString).join(",")}]`);
|