@agentxm/workspace-configuration 0.28.5 → 0.28.6
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.
|
@@ -127,7 +127,6 @@ export declare const initializeProjectWorkspace: (localDir: string, options: Wor
|
|
|
127
127
|
readonly [x: string]: string;
|
|
128
128
|
};
|
|
129
129
|
readonly url?: string | undefined;
|
|
130
|
-
readonly agents?: readonly ("claude-code" | "codex" | "cursor" | "github-copilot-cli" | "opencode" | "adal" | "aider-desk" | "amp" | "antigravity" | "antigravity-cli" | "augment" | "cline" | "codearts-agent" | "codebuddy" | "codemaker" | "codestudio" | "command-code" | "continue" | "cortex" | "crush" | "deepagents" | "devin" | "dexto" | "droid" | "firebender" | "forgecode" | "gemini-cli" | "goose" | "grok-cli" | "hermes" | "ibm-bob" | "iflow-cli" | "junie" | "lingma" | "kilo" | "kimi-cli" | "kiro-cli" | "kode" | "mcpjam" | "minimax-code" | "mistral-vibe" | "mux" | "neovate" | "openclaw" | "openhands" | "ona" | "pi" | "pochi" | "qoder" | "qoder-cn" | "qwen-code" | "replit" | "roo" | "rovodev" | "tabnine-cli" | "trae-cn" | "trae" | "warp" | "windsurf" | "zencoder" | "zed" | "zenflow")[] | undefined;
|
|
131
130
|
readonly headers?: {
|
|
132
131
|
readonly [x: string]: string;
|
|
133
132
|
} | undefined;
|
|
@@ -141,7 +140,6 @@ export declare const initializeProjectWorkspace: (localDir: string, options: Wor
|
|
|
141
140
|
};
|
|
142
141
|
readonly kind: "inline";
|
|
143
142
|
readonly url?: string | undefined;
|
|
144
|
-
readonly agents?: readonly ("claude-code" | "codex" | "cursor" | "github-copilot-cli" | "opencode" | "adal" | "aider-desk" | "amp" | "antigravity" | "antigravity-cli" | "augment" | "cline" | "codearts-agent" | "codebuddy" | "codemaker" | "codestudio" | "command-code" | "continue" | "cortex" | "crush" | "deepagents" | "devin" | "dexto" | "droid" | "firebender" | "forgecode" | "gemini-cli" | "goose" | "grok-cli" | "hermes" | "ibm-bob" | "iflow-cli" | "junie" | "lingma" | "kilo" | "kimi-cli" | "kiro-cli" | "kode" | "mcpjam" | "minimax-code" | "mistral-vibe" | "mux" | "neovate" | "openclaw" | "openhands" | "ona" | "pi" | "pochi" | "qoder" | "qoder-cn" | "qwen-code" | "replit" | "roo" | "rovodev" | "tabnine-cli" | "trae-cn" | "trae" | "warp" | "windsurf" | "zencoder" | "zed" | "zenflow")[] | undefined;
|
|
145
143
|
readonly source?: undefined;
|
|
146
144
|
readonly headers?: {
|
|
147
145
|
readonly [x: string]: string;
|
package/dist/src/inline-mcp.d.ts
CHANGED
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
* @experimental This API is unstable and may change without notice.
|
|
8
8
|
*/
|
|
9
9
|
import * as Effect from "effect/Effect";
|
|
10
|
-
import type { ConfigurableAgentId } from "@agentxm/extension-model/unstable/agent-capabilities";
|
|
11
10
|
import type { McpServerEntry } from "@agentxm/workspace-state";
|
|
12
11
|
import { WorkspaceConfigurationFailed } from "./errors.js";
|
|
13
12
|
import type { InlineMcpDefinition } from "./mcp-import-preflight.js";
|
|
@@ -19,7 +18,6 @@ export declare const matchesInlineMcpEntry: (args: {
|
|
|
19
18
|
readonly existing: McpServerEntry | undefined;
|
|
20
19
|
readonly definition: InlineMcpDefinition;
|
|
21
20
|
readonly env: Readonly<Record<string, string>>;
|
|
22
|
-
readonly agents: ReadonlyArray<ConfigurableAgentId> | undefined;
|
|
23
21
|
}) => boolean;
|
|
24
22
|
/** Derive the inline definition from the add command's mutually exclusive inputs. */
|
|
25
23
|
export declare const makeInlineMcpDefinition: (args: {
|
package/dist/src/inline-mcp.js
CHANGED
|
@@ -98,8 +98,7 @@ export const matchesInlineMcpEntry = (args) => args.existing !== undefined &&
|
|
|
98
98
|
arraysEqual(args.existing.args, args.definition.type === "stdio" ? args.definition.args : undefined) &&
|
|
99
99
|
args.existing.url === (args.definition.type === "http" ? args.definition.url : undefined) &&
|
|
100
100
|
recordsEqual(args.existing.headers, args.definition.type === "http" ? args.definition.headers : undefined) &&
|
|
101
|
-
recordsEqual(args.existing.env, args.env)
|
|
102
|
-
arraysEqual(args.existing.agents, args.agents);
|
|
101
|
+
recordsEqual(args.existing.env, args.env);
|
|
103
102
|
/** Derive the inline definition from the add command's mutually exclusive inputs. */
|
|
104
103
|
export const makeInlineMcpDefinition = (args, headers) => Effect.gen(function* () {
|
|
105
104
|
if (args.command !== undefined) {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as DateTime from "effect/DateTime";
|
|
2
|
-
import type { ConfigurableAgentId } from "@agentxm/extension-model/unstable/agent-capabilities";
|
|
3
2
|
export type InlineMcpDefinition = {
|
|
4
3
|
readonly type: "stdio";
|
|
5
4
|
readonly command: string;
|
|
@@ -13,7 +12,6 @@ export interface McpImportSource {
|
|
|
13
12
|
readonly filePath: string;
|
|
14
13
|
readonly serversKey: string;
|
|
15
14
|
readonly config: Readonly<Record<string, unknown>>;
|
|
16
|
-
readonly agents?: ReadonlyArray<ConfigurableAgentId>;
|
|
17
15
|
}
|
|
18
16
|
export interface McpImportAdoption {
|
|
19
17
|
readonly filePath: string;
|
|
@@ -25,7 +23,6 @@ export interface McpImportCandidate {
|
|
|
25
23
|
readonly definition: InlineMcpDefinition;
|
|
26
24
|
readonly env: Readonly<Record<string, string>>;
|
|
27
25
|
readonly adoptions: ReadonlyArray<McpImportAdoption>;
|
|
28
|
-
readonly agents?: ReadonlyArray<ConfigurableAgentId>;
|
|
29
26
|
}
|
|
30
27
|
export interface McpImportFinding {
|
|
31
28
|
readonly name: string;
|
|
@@ -141,7 +141,6 @@ const normalizeServer = (args) => {
|
|
|
141
141
|
},
|
|
142
142
|
env,
|
|
143
143
|
adoptions: [args.adoption],
|
|
144
|
-
...(args.agents === undefined ? {} : { agents: args.agents }),
|
|
145
144
|
},
|
|
146
145
|
};
|
|
147
146
|
}
|
|
@@ -186,7 +185,6 @@ const normalizeServer = (args) => {
|
|
|
186
185
|
},
|
|
187
186
|
env,
|
|
188
187
|
adoptions: [args.adoption],
|
|
189
|
-
...(args.agents === undefined ? {} : { agents: args.agents }),
|
|
190
188
|
},
|
|
191
189
|
};
|
|
192
190
|
};
|
|
@@ -226,7 +224,6 @@ export const preflightMcpImports = (args) => {
|
|
|
226
224
|
config: value,
|
|
227
225
|
adoption: { filePath: source.filePath, serversKey: source.serversKey, name },
|
|
228
226
|
now: args.now,
|
|
229
|
-
...(source.agents === undefined ? {} : { agents: source.agents }),
|
|
230
227
|
});
|
|
231
228
|
if (normalized._tag === "skip") {
|
|
232
229
|
skipped.push(normalized.finding);
|
|
@@ -256,11 +253,6 @@ export const preflightMcpImports = (args) => {
|
|
|
256
253
|
`${adoption.filePath}\0${adoption.serversKey}\0${adoption.name}`,
|
|
257
254
|
adoption,
|
|
258
255
|
])).values()),
|
|
259
|
-
...(existing.agents === undefined && normalized.candidate.agents === undefined
|
|
260
|
-
? {}
|
|
261
|
-
: {
|
|
262
|
-
agents: Array.from(new Set([...(existing.agents ?? []), ...(normalized.candidate.agents ?? [])])).sort((left, right) => left.localeCompare(right)),
|
|
263
|
-
}),
|
|
264
256
|
});
|
|
265
257
|
}
|
|
266
258
|
}
|
package/dist/src/mcp-import.js
CHANGED
|
@@ -86,7 +86,7 @@ export const collectMcpImportSources = (ws, fs, path) => Effect.gen(function* ()
|
|
|
86
86
|
sourceKeys.add(sourceKey);
|
|
87
87
|
return readJsonObject(fs, filePath).pipe(Effect.map(Option.match({
|
|
88
88
|
onNone: () => undefined,
|
|
89
|
-
onSome: (config) => sources.push({ filePath, serversKey, config
|
|
89
|
+
onSome: (config) => sources.push({ filePath, serversKey, config }),
|
|
90
90
|
})));
|
|
91
91
|
};
|
|
92
92
|
const agentIds = [...(yield* ws.getConfiguredAgents())].sort((left, right) => left.localeCompare(right));
|
|
@@ -204,8 +204,6 @@ const recordsEqual = (left, right) => {
|
|
|
204
204
|
return rightEntry !== undefined && key === rightEntry[0] && value === rightEntry[1];
|
|
205
205
|
}));
|
|
206
206
|
};
|
|
207
|
-
const arraysEqual = (left, right) => JSON.stringify([...(left ?? [])].sort((a, b) => a.localeCompare(b))) ===
|
|
208
|
-
JSON.stringify([...(right ?? [])].sort((a, b) => a.localeCompare(b)));
|
|
209
207
|
const candidateMatchesSettings = (candidate, entry) => entry !== undefined &&
|
|
210
208
|
entry.kind === "inline" &&
|
|
211
209
|
entry.enabled &&
|
|
@@ -215,8 +213,7 @@ const candidateMatchesSettings = (candidate, entry) => entry !== undefined &&
|
|
|
215
213
|
JSON.stringify(candidate.definition.type === "stdio" ? candidate.definition.args : []) &&
|
|
216
214
|
entry.url === (candidate.definition.type === "http" ? candidate.definition.url : undefined) &&
|
|
217
215
|
recordsEqual(entry.headers, candidate.definition.type === "http" ? candidate.definition.headers : undefined) &&
|
|
218
|
-
recordsEqual(entry.env, candidate.env)
|
|
219
|
-
arraysEqual(entry.agents, candidate.agents);
|
|
216
|
+
recordsEqual(entry.env, candidate.env);
|
|
220
217
|
const validateAdoption = (fs, adoption) => Effect.gen(function* () {
|
|
221
218
|
const config = yield* readJsonObject(fs, adoption.filePath);
|
|
222
219
|
const servers = Option.isSome(config) ? config.value[adoption.serversKey] : undefined;
|
|
@@ -242,7 +239,6 @@ export const applyMcpImport = (candidates, ws, fs, hooks = {}) => {
|
|
|
242
239
|
: { url: candidate.definition.url, headers: candidate.definition.headers }),
|
|
243
240
|
env: candidate.env,
|
|
244
241
|
enabled: true,
|
|
245
|
-
...(candidate.agents === undefined ? {} : { agents: candidate.agents }),
|
|
246
242
|
});
|
|
247
243
|
return ws.runTransaction({
|
|
248
244
|
targets: Array.from(new Set(adoptions.map((adoption) => adoption.filePath))).sort(),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentxm/workspace-configuration",
|
|
3
|
-
"version": "0.28.
|
|
3
|
+
"version": "0.28.6",
|
|
4
4
|
"description": "AXM workspace-configuration feature: setup, configured-agent membership, instruction management, and inline workspace capabilities for the axm CLI. Unstable and unsupported — use the axm.sh CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "FSL-1.1-MIT",
|
|
@@ -42,12 +42,12 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"effect": "4.0.0-rc.112",
|
|
45
|
-
"@agentxm/agent-integration": "^0.28.
|
|
46
|
-
"@agentxm/extension-model": "^0.28.
|
|
47
|
-
"@agentxm/extension-sources": "^0.28.
|
|
48
|
-
"@agentxm/extension-workspace": "^0.28.
|
|
49
|
-
"@agentxm/workspace-
|
|
50
|
-
"@agentxm/workspace-
|
|
45
|
+
"@agentxm/agent-integration": "^0.28.6",
|
|
46
|
+
"@agentxm/extension-model": "^0.28.6",
|
|
47
|
+
"@agentxm/extension-sources": "^0.28.6",
|
|
48
|
+
"@agentxm/extension-workspace": "^0.28.6",
|
|
49
|
+
"@agentxm/workspace-state": "^0.28.6",
|
|
50
|
+
"@agentxm/workspace-operations": "^0.28.6"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@effect/platform-node": "4.0.0-rc.112",
|