opencode-skill-autodiscovery 1.6.0 → 2.0.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/README.md +253 -45
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +25 -0
- package/dist/agents.js.map +1 -1
- package/dist/discovery.d.ts +19 -9
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +190 -103
- package/dist/discovery.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -7
- package/dist/index.js.map +1 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +7 -1
- package/dist/mcp.js.map +1 -1
- package/dist/schema.d.ts +1 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +10 -0
- package/dist/schema.js.map +1 -1
- package/package.json +47 -47
package/dist/discovery.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { existsSync, readFileSync, readdirSync, realpathSync, statSync, } from "node:fs";
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
3
|
import { dirname, isAbsolute, join, relative, sep } from "node:path";
|
|
4
|
-
import { log } from "./log.js";
|
|
4
|
+
import { log, sanitize } from "./log.js";
|
|
5
5
|
import { readAgents } from "./agents.js";
|
|
6
6
|
import { readMcp } from "./mcp.js";
|
|
7
|
-
import { NAME_PATTERN, PLUGIN_SCHEMA, VERSION } from "./schema.js";
|
|
7
|
+
import { NAME_PATTERN, PLUGIN_SCHEMA, VERSION, validateName } from "./schema.js";
|
|
8
8
|
export { readAgents } from "./agents.js";
|
|
9
9
|
export { readMcp } from "./mcp.js";
|
|
10
10
|
function isDirectory(p) {
|
|
@@ -55,13 +55,17 @@ export function readSkillInfo(dir) {
|
|
|
55
55
|
const name = field("name");
|
|
56
56
|
if (!name)
|
|
57
57
|
return null;
|
|
58
|
-
|
|
58
|
+
// The description is written into config verbatim: strip ANSI escapes and
|
|
59
|
+
// C0 control characters before it can reach any config surface.
|
|
60
|
+
return { dir, name, description: sanitize(field("description") ?? "") };
|
|
59
61
|
}
|
|
60
62
|
// Reads a conformant Agent Plugins 1.0.0 package from a directory root.
|
|
61
63
|
// Returns null when the root has no valid plugin.json, so callers can fall
|
|
62
|
-
// back to legacy discovery. The $schema URL and the manifest name
|
|
63
|
-
//
|
|
64
|
-
|
|
64
|
+
// back to legacy discovery. The $schema URL and the manifest name identify
|
|
65
|
+
// format only — never provenance or safety: any package can copy the
|
|
66
|
+
// literal schema URL. Provenance/safety is tracked separately by the
|
|
67
|
+
// caller-supplied `trusted` flag.
|
|
68
|
+
export function readPackage(root, source, trusted = false) {
|
|
65
69
|
const manifestPath = join(root, "plugin.json");
|
|
66
70
|
if (!isRegularFile(manifestPath))
|
|
67
71
|
return null;
|
|
@@ -116,6 +120,7 @@ export function readPackage(root, source) {
|
|
|
116
120
|
: undefined;
|
|
117
121
|
return {
|
|
118
122
|
source,
|
|
123
|
+
trusted,
|
|
119
124
|
name: manifest.name,
|
|
120
125
|
root,
|
|
121
126
|
skillDirs,
|
|
@@ -123,15 +128,43 @@ export function readPackage(root, source) {
|
|
|
123
128
|
schemaVersion: VERSION.exec(manifest.$schema)?.[1],
|
|
124
129
|
};
|
|
125
130
|
}
|
|
126
|
-
//
|
|
131
|
+
// True when a discovered package matches the user's exclude list. Conformant
|
|
132
|
+
// packages match on their plugin.json manifest name; legacy packages fall back
|
|
133
|
+
// to the directory basename (which is what their name already is).
|
|
134
|
+
function isExcluded(pkg, exclude) {
|
|
135
|
+
return exclude.includes(pkg.name);
|
|
136
|
+
}
|
|
137
|
+
// Belt-and-braces bound for the legacy walk. Correctness rests entirely on
|
|
138
|
+
// real-path dedupe below (symlink cycles terminate because every visited path
|
|
139
|
+
// is keyed on its resolved form); this cap only stops pathological deep trees
|
|
140
|
+
// from exhausting the stack, and is not load-bearing for that guarantee.
|
|
141
|
+
const MAX_WALK_DEPTH = 16;
|
|
142
|
+
// Legacy tree walk: every directory containing a SKILL.md, down to a shallow
|
|
143
|
+
// depth cap (see MAX_WALK_DEPTH). Visited and emitted paths are keyed on their
|
|
144
|
+
// real (symlink-resolved) forms, so symlink cycles — self-referential or
|
|
145
|
+
// ancestor-pointing — terminate the branch instead of growing ever-longer
|
|
146
|
+
// lexical paths until stack exhaustion. Candidates whose real location
|
|
147
|
+
// resolves outside the starting root are skipped, mirroring the containment
|
|
148
|
+
// guarantee of readPackage.
|
|
127
149
|
export function findSkillDirs(root, out, seen) {
|
|
128
|
-
|
|
129
|
-
|
|
150
|
+
let resolved;
|
|
151
|
+
try {
|
|
152
|
+
resolved = realpathSync(root);
|
|
153
|
+
}
|
|
154
|
+
catch {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
findSkillDirsUnder(resolved, resolved, out, seen);
|
|
158
|
+
}
|
|
159
|
+
function findSkillDirsUnder(realRoot, dir, out, seen, depth = 0) {
|
|
160
|
+
if (depth > MAX_WALK_DEPTH)
|
|
161
|
+
return;
|
|
162
|
+
if (seen.has(dir))
|
|
130
163
|
return;
|
|
131
|
-
seen.add(
|
|
164
|
+
seen.add(dir);
|
|
132
165
|
let entries;
|
|
133
166
|
try {
|
|
134
|
-
entries = readdirSync(
|
|
167
|
+
entries = readdirSync(dir);
|
|
135
168
|
}
|
|
136
169
|
catch {
|
|
137
170
|
return;
|
|
@@ -139,14 +172,25 @@ export function findSkillDirs(root, out, seen) {
|
|
|
139
172
|
for (const entry of entries) {
|
|
140
173
|
if (entry === ".git")
|
|
141
174
|
continue;
|
|
142
|
-
const full = join(
|
|
175
|
+
const full = join(dir, entry);
|
|
143
176
|
if (!isDirectory(full))
|
|
144
177
|
continue;
|
|
145
|
-
|
|
146
|
-
|
|
178
|
+
let child;
|
|
179
|
+
try {
|
|
180
|
+
child = realpathSync(full);
|
|
181
|
+
}
|
|
182
|
+
catch {
|
|
183
|
+
continue;
|
|
184
|
+
}
|
|
185
|
+
if (!contains(realRoot, child)) {
|
|
186
|
+
log(`skipping skill dir "${child}": resolves outside "${realRoot}"`);
|
|
187
|
+
continue;
|
|
188
|
+
}
|
|
189
|
+
if (isRegularFile(join(child, "SKILL.md"))) {
|
|
190
|
+
out.add(child);
|
|
147
191
|
}
|
|
148
192
|
else {
|
|
149
|
-
|
|
193
|
+
findSkillDirsUnder(realRoot, child, out, seen, depth + 1);
|
|
150
194
|
}
|
|
151
195
|
}
|
|
152
196
|
}
|
|
@@ -248,20 +292,38 @@ function hasFlatAgents(root) {
|
|
|
248
292
|
return false;
|
|
249
293
|
}
|
|
250
294
|
}
|
|
295
|
+
// Sanitizes the legacy directory-basename package-name fallback before it
|
|
296
|
+
// feeds collision namespaces or dedupe keys: names that already satisfy
|
|
297
|
+
// NAME_PATTERN pass through untouched; anything else is stripped down to
|
|
298
|
+
// NAME_PATTERN-safe characters (characters outside [a-z0-9.-] removed,
|
|
299
|
+
// `--`/`..` runs collapsed, edges trimmed) and rejected outright when the
|
|
300
|
+
// result is empty or a prototype-chain key, falling back to a fixed safe
|
|
301
|
+
// identifier. Legacy packages keep their skills even when their directory
|
|
302
|
+
// name is hostile.
|
|
303
|
+
function legacyFallbackName(basename) {
|
|
304
|
+
if (validateName(basename))
|
|
305
|
+
return basename;
|
|
306
|
+
const cleaned = basename
|
|
307
|
+
.replace(/[^a-z0-9.-]/g, "")
|
|
308
|
+
.replace(/-{2,}/g, "-")
|
|
309
|
+
.replace(/\.{2,}/g, ".")
|
|
310
|
+
.replace(/^[.-]+|[.-]+$/g, "");
|
|
311
|
+
return validateName(cleaned) ?? "legacy";
|
|
312
|
+
}
|
|
251
313
|
// Prefers a conformant package manifest; falls back to a legacy tree walk so
|
|
252
314
|
// non-conformant layouts keep working. Returns null when nothing is found.
|
|
253
|
-
export function packageFromDir(root, source) {
|
|
254
|
-
const pkg = readPackage(root, source);
|
|
315
|
+
export function packageFromDir(root, source, trusted = false) {
|
|
316
|
+
const pkg = readPackage(root, source, trusted);
|
|
255
317
|
if (pkg)
|
|
256
318
|
return pkg;
|
|
257
319
|
const skillDirs = new Set();
|
|
258
320
|
findSkillDirs(root, skillDirs, new Set());
|
|
259
|
-
if (skillDirs.size === 0 && !hasClaudeAgents(root) && !hasFlatAgents(root))
|
|
321
|
+
if (skillDirs.size === 0 && !hasClaudeAgents(root) && !hasFlatAgents(root))
|
|
260
322
|
return null;
|
|
261
|
-
}
|
|
262
323
|
return {
|
|
263
324
|
source,
|
|
264
|
-
|
|
325
|
+
trusted,
|
|
326
|
+
name: legacyFallbackName(root.split(/[\\/]/).pop() ?? ""),
|
|
265
327
|
root,
|
|
266
328
|
skillDirs: [...skillDirs],
|
|
267
329
|
};
|
|
@@ -323,7 +385,7 @@ function vscodePluginPath(pluginUri) {
|
|
|
323
385
|
raw = raw.slice(1);
|
|
324
386
|
return raw;
|
|
325
387
|
}
|
|
326
|
-
export function collectVscodeManifest(out, installedJson) {
|
|
388
|
+
export function collectVscodeManifest(out, installedJson, exclude = []) {
|
|
327
389
|
if (!existsSync(installedJson))
|
|
328
390
|
return;
|
|
329
391
|
let manifest;
|
|
@@ -338,8 +400,8 @@ export function collectVscodeManifest(out, installedJson) {
|
|
|
338
400
|
continue;
|
|
339
401
|
const dir = vscodePluginPath(plugin.pluginUri);
|
|
340
402
|
if (dir) {
|
|
341
|
-
const pkg = packageFromDir(dir, "vscode");
|
|
342
|
-
if (pkg)
|
|
403
|
+
const pkg = packageFromDir(dir, "vscode", true);
|
|
404
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
343
405
|
out.push(pkg);
|
|
344
406
|
}
|
|
345
407
|
}
|
|
@@ -349,7 +411,7 @@ export function collectVscodeManifest(out, installedJson) {
|
|
|
349
411
|
// cache.json. Resolve each entry so the materialized synced-customization
|
|
350
412
|
// bundle ("VS Code Synced Data" Open Plugin, skills/<name>/SKILL.md) is
|
|
351
413
|
// discovered.
|
|
352
|
-
export function collectVscodeCache(out, cacheJson) {
|
|
414
|
+
export function collectVscodeCache(out, cacheJson, exclude = []) {
|
|
353
415
|
if (!existsSync(cacheJson))
|
|
354
416
|
return;
|
|
355
417
|
let entries;
|
|
@@ -371,16 +433,16 @@ export function collectVscodeCache(out, cacheJson) {
|
|
|
371
433
|
: "default";
|
|
372
434
|
const nonceDir = join(parent, key, nonce);
|
|
373
435
|
if (isDirectory(nonceDir)) {
|
|
374
|
-
const pkg = packageFromDir(nonceDir, "vscode");
|
|
375
|
-
if (pkg)
|
|
436
|
+
const pkg = packageFromDir(nonceDir, "vscode", true);
|
|
437
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
376
438
|
out.push(pkg);
|
|
377
439
|
}
|
|
378
440
|
else {
|
|
379
441
|
// Layouts without the {nonce} subdirectory materialize the bundle
|
|
380
442
|
// directly under {key}; walking it only when the nonce dir is absent
|
|
381
443
|
// avoids re-descending into it.
|
|
382
|
-
const pkg = packageFromDir(join(parent, key), "vscode");
|
|
383
|
-
if (pkg)
|
|
444
|
+
const pkg = packageFromDir(join(parent, key), "vscode", true);
|
|
445
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
384
446
|
out.push(pkg);
|
|
385
447
|
}
|
|
386
448
|
}
|
|
@@ -394,11 +456,11 @@ function sanitizeKey(value) {
|
|
|
394
456
|
.replace(/^-|-$/g, "")
|
|
395
457
|
.substring(0, 128);
|
|
396
458
|
}
|
|
397
|
-
function collectAgentPluginRoot(out, root) {
|
|
459
|
+
function collectAgentPluginRoot(out, root, exclude = []) {
|
|
398
460
|
const installedJson = join(root, "installed.json");
|
|
399
461
|
const cacheJson = join(root, "cache.json");
|
|
400
|
-
collectVscodeManifest(out, installedJson);
|
|
401
|
-
collectVscodeCache(out, cacheJson);
|
|
462
|
+
collectVscodeManifest(out, installedJson, exclude);
|
|
463
|
+
collectVscodeCache(out, cacheJson, exclude);
|
|
402
464
|
// `installed.json` is the authoritative record of what VS Code installed;
|
|
403
465
|
// when it exists, respect it exactly and skip the fallback walk so
|
|
404
466
|
// cloned-but-not-installed marketplaces stay hidden.
|
|
@@ -412,19 +474,19 @@ function collectAgentPluginRoot(out, root) {
|
|
|
412
474
|
const pluginRoots = [];
|
|
413
475
|
findPluginRoots(root, pluginRoots);
|
|
414
476
|
for (const pluginRoot of pluginRoots) {
|
|
415
|
-
const pkg = packageFromDir(pluginRoot, "vscode");
|
|
416
|
-
if (pkg)
|
|
477
|
+
const pkg = packageFromDir(pluginRoot, "vscode", false);
|
|
478
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
417
479
|
out.push(pkg);
|
|
418
480
|
}
|
|
419
481
|
}
|
|
420
482
|
}
|
|
421
|
-
export function collectVscode(out, extra) {
|
|
483
|
+
export function collectVscode(out, extra, exclude = []) {
|
|
422
484
|
for (const dir of agentPluginDirs(vsCodeDataRoots(extra))) {
|
|
423
|
-
collectAgentPluginRoot(out, dir);
|
|
485
|
+
collectAgentPluginRoot(out, dir, exclude);
|
|
424
486
|
}
|
|
425
487
|
}
|
|
426
488
|
// --- Claude Code plugin discovery ------------------------------------------
|
|
427
|
-
export function collectClaudeManifest(out, installedJson) {
|
|
489
|
+
export function collectClaudeManifest(out, installedJson, exclude = []) {
|
|
428
490
|
if (!existsSync(installedJson))
|
|
429
491
|
return;
|
|
430
492
|
let manifest;
|
|
@@ -437,14 +499,14 @@ export function collectClaudeManifest(out, installedJson) {
|
|
|
437
499
|
for (const versions of Object.values(manifest.plugins ?? {})) {
|
|
438
500
|
for (const plugin of versions) {
|
|
439
501
|
if (plugin.installPath) {
|
|
440
|
-
const pkg = packageFromDir(plugin.installPath, "claude");
|
|
441
|
-
if (pkg)
|
|
502
|
+
const pkg = packageFromDir(plugin.installPath, "claude", true);
|
|
503
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
442
504
|
out.push(pkg);
|
|
443
505
|
}
|
|
444
506
|
}
|
|
445
507
|
}
|
|
446
508
|
}
|
|
447
|
-
export function collectClaude(out) {
|
|
509
|
+
export function collectClaude(out, exclude = []) {
|
|
448
510
|
const home = homedir();
|
|
449
511
|
const installedJsons = [
|
|
450
512
|
join(home, ".claude", "plugins", "installed_plugins.json"),
|
|
@@ -452,7 +514,7 @@ export function collectClaude(out) {
|
|
|
452
514
|
];
|
|
453
515
|
for (const installedJson of installedJsons) {
|
|
454
516
|
if (existsSync(installedJson)) {
|
|
455
|
-
collectClaudeManifest(out, installedJson);
|
|
517
|
+
collectClaudeManifest(out, installedJson, exclude);
|
|
456
518
|
}
|
|
457
519
|
}
|
|
458
520
|
// Always scan the SSH-synced remote bundle too: it can exist alongside a
|
|
@@ -460,9 +522,13 @@ export function collectClaude(out) {
|
|
|
460
522
|
// the same-source mirror dedup in planConfig collapses any overlap.
|
|
461
523
|
const remoteRoot = join(home, ".claude", "remote", "plugins");
|
|
462
524
|
if (existsSync(remoteRoot)) {
|
|
463
|
-
const
|
|
464
|
-
|
|
465
|
-
|
|
525
|
+
const roots = [];
|
|
526
|
+
findPluginRoots(remoteRoot, roots);
|
|
527
|
+
for (const pluginRoot of roots) {
|
|
528
|
+
const pkg = packageFromDir(pluginRoot, "claude", true);
|
|
529
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
530
|
+
out.push(pkg);
|
|
531
|
+
}
|
|
466
532
|
}
|
|
467
533
|
}
|
|
468
534
|
// --- npm-distributed Agent Plugins packages --------------------------------
|
|
@@ -474,7 +540,7 @@ export function opencodeCacheRoot() {
|
|
|
474
540
|
// node_modules: {cache}/packages/{name}@{version}/node_modules/{name}. Scanning
|
|
475
541
|
// it is what makes an npm-distributed Agent Plugins package work without any
|
|
476
542
|
// manual skills.paths entry.
|
|
477
|
-
export function collectOpencodeCache(packagesRoot, out) {
|
|
543
|
+
export function collectOpencodeCache(packagesRoot, out, exclude = []) {
|
|
478
544
|
let pkgEntries;
|
|
479
545
|
try {
|
|
480
546
|
pkgEntries = readdirSync(packagesRoot);
|
|
@@ -486,13 +552,14 @@ export function collectOpencodeCache(packagesRoot, out) {
|
|
|
486
552
|
const nodeModules = join(packagesRoot, pkgEntry, "node_modules");
|
|
487
553
|
if (!isDirectory(nodeModules))
|
|
488
554
|
continue;
|
|
489
|
-
|
|
555
|
+
// opencode installed these packages itself, so they are deliberate.
|
|
556
|
+
collectNodeModules(nodeModules, out, true, exclude);
|
|
490
557
|
}
|
|
491
558
|
}
|
|
492
559
|
// Enumerates immediate package roots of a node_modules dir, including scoped
|
|
493
560
|
// packages (@scope/*). Only conformant packages (root plugin.json) are read;
|
|
494
561
|
// nothing else is walked.
|
|
495
|
-
export function collectNodeModules(nodeModulesRoot, out) {
|
|
562
|
+
export function collectNodeModules(nodeModulesRoot, out, trusted = false, exclude = []) {
|
|
496
563
|
if (!isDirectory(nodeModulesRoot))
|
|
497
564
|
return;
|
|
498
565
|
let entries;
|
|
@@ -519,14 +586,14 @@ export function collectNodeModules(nodeModulesRoot, out) {
|
|
|
519
586
|
for (const sub of scoped) {
|
|
520
587
|
if (sub.startsWith("."))
|
|
521
588
|
continue;
|
|
522
|
-
const pkg = readPackage(join(candidate, sub), "node_modules");
|
|
523
|
-
if (pkg)
|
|
589
|
+
const pkg = readPackage(join(candidate, sub), "node_modules", trusted);
|
|
590
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
524
591
|
out.push(pkg);
|
|
525
592
|
}
|
|
526
593
|
}
|
|
527
594
|
else {
|
|
528
|
-
const pkg = readPackage(candidate, "node_modules");
|
|
529
|
-
if (pkg)
|
|
595
|
+
const pkg = readPackage(candidate, "node_modules", trusted);
|
|
596
|
+
if (pkg && !isExcluded(pkg, exclude))
|
|
530
597
|
out.push(pkg);
|
|
531
598
|
}
|
|
532
599
|
}
|
|
@@ -555,7 +622,11 @@ function dedupePackages(packages) {
|
|
|
555
622
|
// namespaced by package name, and MCP servers keyed by server name with
|
|
556
623
|
// collisions namespaced by package name. `taken` seeds the reserved names from
|
|
557
624
|
// the user's existing config so user-defined entries are never overwritten.
|
|
558
|
-
export function planConfig(packages, taken = {}
|
|
625
|
+
export function planConfig(packages, taken = {},
|
|
626
|
+
// Mirrors the plugin options: when mcp is false the MCP subsystem is
|
|
627
|
+
// skipped entirely — no mcp.json parsing, no filesystem side effects.
|
|
628
|
+
// Same for agents: when agents is false readAgents is never invoked.
|
|
629
|
+
enabled = {}) {
|
|
559
630
|
packages = dedupePackages(packages);
|
|
560
631
|
const skillPaths = [];
|
|
561
632
|
const seenDir = new Set();
|
|
@@ -582,6 +653,12 @@ export function planConfig(packages, taken = {}) {
|
|
|
582
653
|
if (!info)
|
|
583
654
|
continue;
|
|
584
655
|
let name = info.name;
|
|
656
|
+
// SKILL.md frontmatter is package-supplied input: gate the name before
|
|
657
|
+
// it becomes any config key (applyConfigPatch writes config.command[name]).
|
|
658
|
+
if (!validateName(name)) {
|
|
659
|
+
log(`skipping skill frontmatter for package "${pkg.name}": invalid name "${name}" (must match the identifier pattern and not be a prototype-chain key)`);
|
|
660
|
+
continue;
|
|
661
|
+
}
|
|
585
662
|
const owner = commandOwner.get(name);
|
|
586
663
|
if (owner !== undefined) {
|
|
587
664
|
if (owner === pkg.source) {
|
|
@@ -602,70 +679,77 @@ export function planConfig(packages, taken = {}) {
|
|
|
602
679
|
name,
|
|
603
680
|
description: info.description || `Run the ${info.name} skill`,
|
|
604
681
|
template: [
|
|
605
|
-
|
|
682
|
+
// The name is a quoted data value (JSON string encoding), never
|
|
683
|
+
// wrapped in backticks: even a name that skipped validateName
|
|
684
|
+
// cannot terminate the quote and inject template text.
|
|
685
|
+
`Load the ${JSON.stringify(info.name)} skill and follow its instructions.`,
|
|
606
686
|
`Context: $ARGUMENTS`,
|
|
607
687
|
].join("\n"),
|
|
608
688
|
});
|
|
609
689
|
}
|
|
610
690
|
}
|
|
611
691
|
const mcp = [];
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
const
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
const
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
seenMcpEntry.add(dedupeKey);
|
|
625
|
-
let k = key;
|
|
626
|
-
const owner = mcpOwner.get(k);
|
|
627
|
-
if (owner !== undefined) {
|
|
628
|
-
if (owner === pkg.source)
|
|
629
|
-
continue;
|
|
630
|
-
const namespaced = `${pkg.name}/${key}`;
|
|
631
|
-
if (usedMcp.has(namespaced)) {
|
|
632
|
-
log(`skipping MCP server "${pkg.name}/${key}": name already taken`);
|
|
692
|
+
if (enabled.mcp !== false) {
|
|
693
|
+
const usedMcp = new Set(taken.mcp ?? []);
|
|
694
|
+
const mcpOwner = new Map();
|
|
695
|
+
for (const name of taken.mcp ?? [])
|
|
696
|
+
mcpOwner.set(name, "user");
|
|
697
|
+
const seenMcpEntry = new Set();
|
|
698
|
+
for (const pkg of packages) {
|
|
699
|
+
const entries = [];
|
|
700
|
+
readMcp(pkg, entries);
|
|
701
|
+
for (const { key, entry } of entries) {
|
|
702
|
+
const dedupeKey = `${pkg.root}\u0000${key}`;
|
|
703
|
+
if (seenMcpEntry.has(dedupeKey))
|
|
633
704
|
continue;
|
|
705
|
+
seenMcpEntry.add(dedupeKey);
|
|
706
|
+
let k = key;
|
|
707
|
+
const owner = mcpOwner.get(k);
|
|
708
|
+
if (owner !== undefined) {
|
|
709
|
+
if (owner === pkg.source)
|
|
710
|
+
continue;
|
|
711
|
+
const namespaced = `${pkg.name}/${key}`;
|
|
712
|
+
if (usedMcp.has(namespaced)) {
|
|
713
|
+
log(`skipping MCP server "${pkg.name}/${key}": name already taken`);
|
|
714
|
+
continue;
|
|
715
|
+
}
|
|
716
|
+
k = namespaced;
|
|
634
717
|
}
|
|
635
|
-
k
|
|
718
|
+
mcpOwner.set(k, pkg.source);
|
|
719
|
+
usedMcp.add(k);
|
|
720
|
+
mcp.push({ key: k, entry });
|
|
636
721
|
}
|
|
637
|
-
mcpOwner.set(k, pkg.source);
|
|
638
|
-
usedMcp.add(k);
|
|
639
|
-
mcp.push({ key: k, entry });
|
|
640
722
|
}
|
|
641
723
|
}
|
|
642
724
|
const agents = [];
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
for (const
|
|
650
|
-
const
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
seenAgent.add(dedupeKey);
|
|
654
|
-
let agentName = name;
|
|
655
|
-
const owner = agentOwner.get(agentName);
|
|
656
|
-
if (owner !== undefined) {
|
|
657
|
-
if (owner === pkg.source)
|
|
658
|
-
continue;
|
|
659
|
-
const namespaced = `${pkg.name}-${agentName}`;
|
|
660
|
-
if (usedAgents.has(namespaced)) {
|
|
661
|
-
log(`skipping agent "${pkg.name}/${agentName}": name already taken`);
|
|
725
|
+
if (enabled.agents !== false) {
|
|
726
|
+
const usedAgents = new Set(taken.agents ?? []);
|
|
727
|
+
const agentOwner = new Map();
|
|
728
|
+
for (const name of taken.agents ?? [])
|
|
729
|
+
agentOwner.set(name, "user");
|
|
730
|
+
const seenAgent = new Set();
|
|
731
|
+
for (const pkg of packages) {
|
|
732
|
+
for (const { name, agent } of readAgents(pkg)) {
|
|
733
|
+
const dedupeKey = `${pkg.root}\u0000${name}`;
|
|
734
|
+
if (seenAgent.has(dedupeKey))
|
|
662
735
|
continue;
|
|
736
|
+
seenAgent.add(dedupeKey);
|
|
737
|
+
let agentName = name;
|
|
738
|
+
const owner = agentOwner.get(agentName);
|
|
739
|
+
if (owner !== undefined) {
|
|
740
|
+
if (owner === pkg.source)
|
|
741
|
+
continue;
|
|
742
|
+
const namespaced = `${pkg.name}-${agentName}`;
|
|
743
|
+
if (usedAgents.has(namespaced)) {
|
|
744
|
+
log(`skipping agent "${pkg.name}/${agentName}": name already taken`);
|
|
745
|
+
continue;
|
|
746
|
+
}
|
|
747
|
+
agentName = namespaced;
|
|
663
748
|
}
|
|
664
|
-
agentName
|
|
749
|
+
agentOwner.set(agentName, pkg.source);
|
|
750
|
+
usedAgents.add(agentName);
|
|
751
|
+
agents.push({ name: agentName, agent });
|
|
665
752
|
}
|
|
666
|
-
agentOwner.set(agentName, pkg.source);
|
|
667
|
-
usedAgents.add(agentName);
|
|
668
|
-
agents.push({ name: agentName, agent });
|
|
669
753
|
}
|
|
670
754
|
}
|
|
671
755
|
return { skillPaths, commands, mcp, agents };
|
|
@@ -690,7 +774,10 @@ export function applyConfigPatch(config, plan, enabled) {
|
|
|
690
774
|
}
|
|
691
775
|
}
|
|
692
776
|
if (plan.commands.length > 0) {
|
|
693
|
-
|
|
777
|
+
// Containers are built prototype-free so a key can never resolve to an
|
|
778
|
+
// inherited member (__proto__/constructor/toString), even if a future
|
|
779
|
+
// call site skips the upstream validateName gate.
|
|
780
|
+
config.command ??= Object.create(null);
|
|
694
781
|
for (const cmd of plan.commands) {
|
|
695
782
|
if (config.command[cmd.name])
|
|
696
783
|
continue;
|
|
@@ -701,7 +788,7 @@ export function applyConfigPatch(config, plan, enabled) {
|
|
|
701
788
|
}
|
|
702
789
|
}
|
|
703
790
|
if (enabled.mcp && plan.mcp.length > 0) {
|
|
704
|
-
config.mcp ??=
|
|
791
|
+
config.mcp ??= Object.create(null);
|
|
705
792
|
for (const { key, entry } of plan.mcp) {
|
|
706
793
|
if (config.mcp[key])
|
|
707
794
|
continue;
|
|
@@ -709,7 +796,7 @@ export function applyConfigPatch(config, plan, enabled) {
|
|
|
709
796
|
}
|
|
710
797
|
}
|
|
711
798
|
if (doAgents) {
|
|
712
|
-
config.agent ??=
|
|
799
|
+
config.agent ??= Object.create(null);
|
|
713
800
|
for (const { name, agent } of plan.agents) {
|
|
714
801
|
if (config.agent[name])
|
|
715
802
|
continue;
|
package/dist/discovery.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,qBAAqB,CAAC;;kBAqBlC,MAAM;;AAF9B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,qBAAqB,CAAC;;kBAqBlC,MAAM;;AAF9B,wBAsCoB"}
|