@vibe-agent-toolkit/cli 0.1.41-rc.2 → 0.1.41-rc.4

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.
@@ -1,11 +1,12 @@
1
1
  /**
2
- * `vat skill test run <skill...>` — execute a packaged skill's eval suite in isolation.
2
+ * `vat skill test run <skill>` — execute a packaged skill's eval suite in isolation.
3
3
  *
4
4
  * Thin orchestration layer: parse flags, resolve precedence (flag > config > default),
5
5
  * print the §12 security warning, call runSkillTestHarness, map result/error to exit code.
6
6
  * All domain logic lives in run-harness.ts (agent-skills package).
7
7
  */
8
8
  import { runSkillTestHarness, type SkillPackagingConfig } from '@vibe-agent-toolkit/agent-skills';
9
+ import type { SkillSourceDescriptor } from '@vibe-agent-toolkit/resources';
9
10
  import { Command } from 'commander';
10
11
  export interface SkillTestRunOptions {
11
12
  with?: string[];
@@ -50,6 +51,10 @@ type DeclaredExecutable = NonNullable<HarnessOpts['declaredExecutables']>[number
50
51
  * commands in the transcript). Pure + unit-testable.
51
52
  */
52
53
  export declare function deriveDeclaredExecutableNames(executables: SkillPackagingConfig['executables']): DeclaredExecutable[] | undefined;
54
+ /** Parse an array of `name=src` flag values into a name→spec record. */
55
+ export declare function parseWithFlags(pairs: string[] | undefined): Record<string, SkillSourceSpec> | undefined;
56
+ /** Map a config descriptor array (with/optional) into a name→spec record. */
57
+ export declare function descriptorsToRecord(list: SkillSourceDescriptor[] | undefined): Record<string, SkillSourceSpec> | undefined;
53
58
  /**
54
59
  * Resolve one cost/runtime knob with flag > config > default precedence AND a
55
60
  * built-in safety cap, enforcing an asymmetry between the two sources:
@@ -110,6 +115,34 @@ export declare function resolveSubjectForTest(ref: string, cwd: string, flags: {
110
115
  acknowledged: boolean;
111
116
  build?: string;
112
117
  }): Promise<ResolvedSubject>;
118
+ /**
119
+ * Companion analog of {@link resolveBuildableSubject} (issue #158): resolve every
120
+ * `--with`/`--with-optional` companion whose spec is a `{ path }` pointing at a
121
+ * declared skill's SOURCE directory to that skill's BUILT dist, via the exact same
122
+ * {@link buildDeclaredSkill} the subject uses. Anything else — workspace:/npm:/
123
+ * url:/vendored specs, or a path outside this project's config — is "a different
124
+ * story" (per the issue's own framing): left untouched, staged as today.
125
+ *
126
+ * A REQUIRED companion's build failure propagates (matches the existing "--with
127
+ * fails if a source cannot be resolved" contract, extended to "cannot be built").
128
+ * An OPTIONAL companion's build failure falls back to the ORIGINAL (unbuilt) path
129
+ * spec — this fix must never make an already-degraded optional companion WORSE;
130
+ * staging's existing skip-with-warning fallback still applies if that raw copy
131
+ * also fails to stage.
132
+ */
133
+ export declare function resolveCompanionSpec(name: string, spec: SkillSourceSpec, repoRoot: string, flags: {
134
+ noBuild: boolean;
135
+ dryRun: boolean;
136
+ acknowledged: boolean;
137
+ build?: string;
138
+ }, optional: boolean): Promise<SkillSourceSpec>;
139
+ /** Resolve every entry of a `--with`/`--with-optional` companion record (see {@link resolveCompanionSpec}). */
140
+ export declare function resolveCompanionSources(sources: Record<string, SkillSourceSpec> | undefined, repoRoot: string, flags: {
141
+ noBuild: boolean;
142
+ dryRun: boolean;
143
+ acknowledged: boolean;
144
+ build?: string;
145
+ }, optional: boolean): Promise<Record<string, SkillSourceSpec> | undefined>;
113
146
  /**
114
147
  * True when the resolved subject is a CONFIG-BLIND path target: a `{ path }` source
115
148
  * staged AS-IS (not built) that does NOT map back to a declared skill, so the project's
@@ -131,7 +164,7 @@ export declare function isPathSourceTarget(subject: {
131
164
  * so an untrusted clone never runs its `test.build`/packageSkill without the ack;
132
165
  * (2) inside runSkillTestHarness (Step 6) as defense-in-depth before spawning.
133
166
  */
134
- export declare function runSkillTestRun(skills: string[], options: SkillTestRunOptions): Promise<void>;
167
+ export declare function runSkillTestRun(subject: string, options: SkillTestRunOptions): Promise<void>;
135
168
  export declare function createSkillTestRunCommand(): Command;
136
169
  export {};
137
170
  //# sourceMappingURL=run.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/commands/skill/test/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/commands/skill/test/run.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `vat skill test run <skill...>` — execute a packaged skill's eval suite in isolation.
2
+ * `vat skill test run <skill>` — execute a packaged skill's eval suite in isolation.
3
3
  *
4
4
  * Thin orchestration layer: parse flags, resolve precedence (flag > config > default),
5
5
  * print the §12 security warning, call runSkillTestHarness, map result/error to exit code.
@@ -7,11 +7,11 @@
7
7
  */
8
8
  import { existsSync } from 'node:fs';
9
9
  import { basename, dirname, extname } from 'node:path';
10
- import { BootstrapNeededError, isAcknowledged, mapErrorToExitCode, packageSkill, packagingConfigToPackageOptions, runPreStageBuild, runSkillTestHarness, SecurityAckError, SKILL_TEST_BUILTIN_CAPS, SkillBuildError, SkillTestExitCode, } from '@vibe-agent-toolkit/agent-skills';
10
+ import { BootstrapNeededError, DuplicateStagedSkillError, isAcknowledged, mapErrorToExitCode, packageSkill, packagingConfigToPackageOptions, runPreStageBuild, runSkillTestHarness, SecurityAckError, SKILL_TEST_BUILTIN_CAPS, SkillBuildError, SkillTestExitCode, } from '@vibe-agent-toolkit/agent-skills';
11
11
  import { findProjectRoot, safePath, toForwardSlash } from '@vibe-agent-toolkit/utils';
12
12
  import { Command } from 'commander';
13
13
  import { parseSourceSpec } from '../../../skill-resolution/classify.js';
14
- import { findDeclaredSkillForPath, resolveSkillReference, } from '../../../skill-resolution/index.js';
14
+ import { findDeclaredSkillForPath, findDeclaredSkillForSourceDir, resolveSkillReference, } from '../../../skill-resolution/index.js';
15
15
  import { ConfigLoadError, loadConfig } from '../../../utils/config-loader.js';
16
16
  import { runClaudePluginBuild } from '../../claude/plugin/build.js';
17
17
  import { assertValidAuth, assertValidRequireAuth } from './auth-flags.js';
@@ -102,7 +102,7 @@ export function deriveDeclaredExecutableNames(executables) {
102
102
  * Parse a single `name=src` pair into a [name, SkillSourceSpec] tuple. The
103
103
  * source half uses a `kind:value` prefix:
104
104
  * workspace:foo · npm:@scope/s@1.2.3 · url:https://… · path:../baz · vendored
105
- * A bare value without `name=` is rejected — every injected dep needs a name so
105
+ * A bare value without `name=` is rejected — every companion needs a name so
106
106
  * the domain can key it (and so the skill resolves under that name in staging).
107
107
  */
108
108
  function parseWithPair(pair) {
@@ -119,12 +119,16 @@ function parseWithPair(pair) {
119
119
  }
120
120
  }
121
121
  /** Parse an array of `name=src` flag values into a name→spec record. */
122
- function parseWithFlags(pairs) {
122
+ export function parseWithFlags(pairs) {
123
123
  if (pairs === undefined || pairs.length === 0)
124
124
  return undefined;
125
125
  const record = {};
126
126
  for (const pair of pairs) {
127
127
  const [name, spec] = parseWithPair(pair);
128
+ // Fail closed on a repeated companion name rather than silently overwriting
129
+ // (last-wins would drop a companion the user asked for — the #153 no-op class).
130
+ if (Object.hasOwn(record, name))
131
+ throw new DuplicateStagedSkillError(name);
128
132
  record[name] = spec;
129
133
  }
130
134
  return record;
@@ -142,12 +146,19 @@ function descriptorName(d) {
142
146
  return 'skill-creator';
143
147
  }
144
148
  /** Map a config descriptor array (with/optional) into a name→spec record. */
145
- function descriptorsToRecord(list) {
149
+ export function descriptorsToRecord(list) {
146
150
  if (list === undefined || list.length === 0)
147
151
  return undefined;
148
152
  const record = {};
149
- for (const d of list)
150
- record[descriptorName(d)] = d;
153
+ for (const d of list) {
154
+ const name = descriptorName(d);
155
+ // Two config descriptors deriving the same name (e.g. two `path:` entries with
156
+ // the same basename) would silently overwrite — the exact silent-drop #153
157
+ // targets, one layer above buildStageItems. Fail closed here instead.
158
+ if (Object.hasOwn(record, name))
159
+ throw new DuplicateStagedSkillError(name);
160
+ record[name] = d;
161
+ }
151
162
  return record;
152
163
  }
153
164
  // ---------------------------------------------------------------------------
@@ -168,8 +179,7 @@ function descriptorsToRecord(list) {
168
179
  * guard in runSkillTestRun, which surfaces it as a clean exit-2 error rather than
169
180
  * silently applying defaults against a config the author clearly intended.
170
181
  */
171
- async function loadTestConfig(skills, cwd) {
172
- const subject = skills[0] ?? '';
182
+ async function loadTestConfig(subject, cwd) {
173
183
  // Path target → resolve the declared skill it materializes, and read its test
174
184
  // block from that skill's own governing config root (cwd-independent).
175
185
  const link = await findDeclaredSkillForPath(subject, cwd);
@@ -328,7 +338,7 @@ function applyEnvMerges(opts, options, config) {
328
338
  if (passEnv !== undefined)
329
339
  opts.passEnv = passEnv;
330
340
  }
331
- /** Apply flag>config merges for injected-dependency records. */
341
+ /** Apply flag>config merges for the companion-skill records (with/optional). */
332
342
  function applyDepMerges(opts, options, config) {
333
343
  const withSources = parseWithFlags(options.with) ?? descriptorsToRecord(config?.with);
334
344
  if (withSources !== undefined)
@@ -357,9 +367,9 @@ function applyGraderMerges(opts, options, knobs, globalTest) {
357
367
  * precedence. CLI flags win; config (`skills.config.<skill>.test`) fills gaps;
358
368
  * built-in defaults (inside the domain) are the final fallback.
359
369
  */
360
- function buildHarnessOpts(skills, options, knobs, config, globalTest) {
370
+ function buildHarnessOpts(subject, options, knobs, config, globalTest) {
361
371
  const repoRoot = resolveRepoRoot();
362
- const opts = { skills, repoRoot };
372
+ const opts = { subject, repoRoot };
363
373
  applyFlagOnlyOptions(opts, options);
364
374
  applyScalarMerges(opts, options, config);
365
375
  applyKnobMerges(opts, knobs, config);
@@ -415,44 +425,43 @@ export async function resolveSubjectForTest(ref, cwd, flags) {
415
425
  }
416
426
  }
417
427
  /**
418
- * Resolve a buildable subject under --no-build or --dry-run (no build step). Stage
428
+ * --no-build / --dry-run branch of {@link buildDeclaredSkill}: never builds. Stage
419
429
  * the existing dist if present; for a dry-run with no dist yet, fall back to the
420
- * source dir so the preview still assembles without triggering a build. Throws when
421
- * --no-build is set but no dist exists.
430
+ * source dir so the preview still assembles without triggering a build. Throws
431
+ * when --no-build is set but no dist exists.
422
432
  */
423
- function resolveNoBuildDryRunBranch(ref, scaffoldDir, flags) {
433
+ function resolveExistingDistOrThrow(ref, flags) {
424
434
  // eslint-disable-next-line security/detect-non-literal-fs-filename -- expectedDistDir derived from project config
425
435
  if (existsSync(ref.expectedDistDir)) {
426
436
  if (flags.noBuild) {
427
437
  process.stderr.write(`Using existing dist (NOT rebuilt): ${ref.expectedDistDir}\n`);
428
438
  }
429
439
  return {
430
- subjectSource: { path: ref.expectedDistDir },
431
- subjectScaffoldDir: scaffoldDir,
440
+ distDir: ref.expectedDistDir,
432
441
  rebuilt: false,
433
- wouldBuild: true,
434
442
  // For a dry-run that staged an existing (unbuilt) dist, flag it as
435
443
  // potentially stale so the summary can warn the user.
436
444
  ...(flags.dryRun ? { dryRunStagedExistingDist: true } : {}),
437
445
  };
438
446
  }
439
447
  if (flags.dryRun) {
440
- return {
441
- subjectSource: { path: scaffoldDir },
442
- subjectScaffoldDir: scaffoldDir,
443
- rebuilt: false,
444
- wouldBuild: true,
445
- dryRunStagedExistingDist: false,
446
- };
448
+ return { distDir: dirname(ref.sourcePath), rebuilt: false, dryRunStagedExistingDist: false };
447
449
  }
448
- throw new SkillBuildError(`--no-build: no built dist at ${ref.expectedDistDir}. Run \`vat build\` first, or point at a built path.`);
450
+ throw new SkillBuildError(`--no-build: no built dist at ${ref.expectedDistDir} for '${ref.name}'. Run \`vat build\` first, or point at a built path.`);
449
451
  }
450
- /** Build a declared skill (or stage its existing dist under --no-build/--dry-run), then return the dist to stage. */
451
- async function resolveBuildableSubject(ref, flags) {
452
- const scaffoldDir = dirname(ref.sourcePath);
452
+ /**
453
+ * Build a declared skill (BuildableReference) into its `expectedDistDir`, or reuse
454
+ * the existing dist under --no-build/--dry-run. Shared by SUBJECT resolution
455
+ * ({@link resolveBuildableSubject}) and `--with`/`--with-optional` COMPANION
456
+ * resolution ({@link resolveCompanionSpec}) so a companion that maps to a declared
457
+ * skill gets the exact same build treatment as the subject (issue #158) — its
458
+ * `files:` injection runs before staging, instead of a raw, possibly
459
+ * build-artifact-incomplete, source-tree copy.
460
+ */
461
+ async function buildDeclaredSkill(ref, flags) {
453
462
  // --no-build and --dry-run never build — delegate to the dedicated branch helper.
454
463
  if (flags.noBuild || flags.dryRun) {
455
- return resolveNoBuildDryRunBranch(ref, scaffoldDir, flags);
464
+ return resolveExistingDistOrThrow(ref, flags);
456
465
  }
457
466
  // SECURITY (§12): reaching here means a real build WOULD run — runPreStageBuild
458
467
  // executes an ARBITRARY shell command from the repo's committed `test.build`, and
@@ -480,7 +489,63 @@ async function resolveBuildableSubject(ref, flags) {
480
489
  catch (e) {
481
490
  throw new SkillBuildError(`Skill build failed for '${ref.name}': ${e instanceof Error ? e.message : String(e)}`);
482
491
  }
483
- return { subjectSource: { path: ref.expectedDistDir }, subjectScaffoldDir: scaffoldDir, rebuilt: true, wouldBuild: true };
492
+ return { distDir: ref.expectedDistDir, rebuilt: true };
493
+ }
494
+ /** Build a declared skill (or stage its existing dist under --no-build/--dry-run), then return the dist to stage. */
495
+ async function resolveBuildableSubject(ref, flags) {
496
+ const scaffoldDir = dirname(ref.sourcePath);
497
+ const build = await buildDeclaredSkill(ref, flags);
498
+ return {
499
+ subjectSource: { path: build.distDir },
500
+ subjectScaffoldDir: scaffoldDir,
501
+ rebuilt: build.rebuilt,
502
+ wouldBuild: true,
503
+ ...(build.dryRunStagedExistingDist === undefined
504
+ ? {}
505
+ : { dryRunStagedExistingDist: build.dryRunStagedExistingDist }),
506
+ };
507
+ }
508
+ /**
509
+ * Companion analog of {@link resolveBuildableSubject} (issue #158): resolve every
510
+ * `--with`/`--with-optional` companion whose spec is a `{ path }` pointing at a
511
+ * declared skill's SOURCE directory to that skill's BUILT dist, via the exact same
512
+ * {@link buildDeclaredSkill} the subject uses. Anything else — workspace:/npm:/
513
+ * url:/vendored specs, or a path outside this project's config — is "a different
514
+ * story" (per the issue's own framing): left untouched, staged as today.
515
+ *
516
+ * A REQUIRED companion's build failure propagates (matches the existing "--with
517
+ * fails if a source cannot be resolved" contract, extended to "cannot be built").
518
+ * An OPTIONAL companion's build failure falls back to the ORIGINAL (unbuilt) path
519
+ * spec — this fix must never make an already-degraded optional companion WORSE;
520
+ * staging's existing skip-with-warning fallback still applies if that raw copy
521
+ * also fails to stage.
522
+ */
523
+ export async function resolveCompanionSpec(name, spec, repoRoot, flags, optional) {
524
+ if (!('path' in spec))
525
+ return spec;
526
+ const declared = await findDeclaredSkillForSourceDir(spec.path, repoRoot);
527
+ if (declared === undefined)
528
+ return spec;
529
+ try {
530
+ const build = await buildDeclaredSkill(declared, flags);
531
+ return { path: build.distDir };
532
+ }
533
+ catch (e) {
534
+ if (!optional)
535
+ throw e;
536
+ process.stderr.write(`Note: companion '${name}' (declared skill '${declared.name}') failed to build; staging its raw source instead: ${e instanceof Error ? e.message : String(e)}\n`);
537
+ return spec;
538
+ }
539
+ }
540
+ /** Resolve every entry of a `--with`/`--with-optional` companion record (see {@link resolveCompanionSpec}). */
541
+ export async function resolveCompanionSources(sources, repoRoot, flags, optional) {
542
+ if (sources === undefined)
543
+ return undefined;
544
+ const resolved = {};
545
+ for (const [name, spec] of Object.entries(sources)) {
546
+ resolved[name] = await resolveCompanionSpec(name, spec, repoRoot, flags, optional);
547
+ }
548
+ return resolved;
484
549
  }
485
550
  /**
486
551
  * True when the resolved subject is a CONFIG-BLIND path target: a `{ path }` source
@@ -515,13 +580,13 @@ function warnIfPathTargetBypassesConfig(subject) {
515
580
  * with a clean message + preflight code (2) instead of surfacing as an unhandled
516
581
  * promise rejection (raw stack trace, exit 1).
517
582
  */
518
- async function preflightKnobsAndConfig(skills, options, cwd) {
583
+ async function preflightKnobsAndConfig(subject, options, cwd) {
519
584
  try {
520
585
  assertValidAuth(options.auth);
521
586
  assertValidRequireAuth(options.requireAuth);
522
587
  return {
523
588
  knobs: coerceKnobs(options),
524
- config: await loadTestConfig(skills, cwd),
589
+ config: await loadTestConfig(subject, cwd),
525
590
  globalTest: loadGlobalTestConfig(cwd),
526
591
  };
527
592
  }
@@ -558,9 +623,9 @@ function applyResolvedSubject(harnessOpts, subject) {
558
623
  * so an untrusted clone never runs its `test.build`/packageSkill without the ack;
559
624
  * (2) inside runSkillTestHarness (Step 6) as defense-in-depth before spawning.
560
625
  */
561
- export async function runSkillTestRun(skills, options) {
626
+ export async function runSkillTestRun(subject, options) {
562
627
  printSecurityWarning();
563
- const { knobs, config, globalTest } = await preflightKnobsAndConfig(skills, options, process.cwd());
628
+ const { knobs, config, globalTest } = await preflightKnobsAndConfig(subject, options, process.cwd());
564
629
  // Commander stores the `--no-build` negatable flag under `build` (=== false when set);
565
630
  // honor an explicit programmatic `noBuild` too.
566
631
  const noBuild = options.noBuild === true || options.build === false;
@@ -570,14 +635,18 @@ export async function runSkillTestRun(skills, options) {
570
635
  dryRun: options.dryRun === true,
571
636
  acknowledgedRunsSkillCode: options.iUnderstandThisRunsSkillCode === true,
572
637
  });
573
- let subject;
638
+ // Shared by subject AND companion resolution (issue #158) so a --with/--with-optional
639
+ // companion that maps to a declared skill gets the exact same build gating (no-build/
640
+ // dry-run/security-ack) as the subject.
641
+ const buildFlags = {
642
+ noBuild,
643
+ dryRun: options.dryRun === true,
644
+ acknowledged,
645
+ ...(config?.build === undefined ? {} : { build: config.build }),
646
+ };
647
+ let resolvedSubject;
574
648
  try {
575
- subject = await resolveSubjectForTest(skills[0] ?? '', process.cwd(), {
576
- noBuild,
577
- dryRun: options.dryRun === true,
578
- acknowledged,
579
- ...(config?.build === undefined ? {} : { build: config.build }),
580
- });
649
+ resolvedSubject = await resolveSubjectForTest(subject, process.cwd(), buildFlags);
581
650
  }
582
651
  catch (err) {
583
652
  // A broken governing config surfacing during subject resolution is a preflight
@@ -587,10 +656,23 @@ export async function runSkillTestRun(skills, options) {
587
656
  process.exit(exitCode);
588
657
  return;
589
658
  }
590
- warnIfPathTargetBypassesConfig(subject);
591
- const harnessOpts = buildHarnessOpts(skills, options, knobs, config, globalTest);
592
- applyResolvedSubject(harnessOpts, subject);
659
+ warnIfPathTargetBypassesConfig(resolvedSubject);
593
660
  try {
661
+ // buildHarnessOpts assembles the companion records (--with/--with-optional and
662
+ // config with:/optional:) and can throw DuplicateStagedSkillError on a repeated
663
+ // name — inside the try so it maps to exit 2 like every other preflight error.
664
+ const harnessOpts = buildHarnessOpts(subject, options, knobs, config, globalTest);
665
+ applyResolvedSubject(harnessOpts, resolvedSubject);
666
+ // Companion build resolution (issue #158): a --with/--with-optional companion
667
+ // whose source is a path into a declared skill gets built (its `files:`
668
+ // injection runs) exactly like the subject, instead of a raw source-tree copy.
669
+ const repoRoot = resolveRepoRoot();
670
+ const withSources = await resolveCompanionSources(harnessOpts.withSources, repoRoot, buildFlags, false);
671
+ if (withSources !== undefined)
672
+ harnessOpts.withSources = withSources;
673
+ const withOptional = await resolveCompanionSources(harnessOpts.withOptional, repoRoot, buildFlags, true);
674
+ if (withOptional !== undefined)
675
+ harnessOpts.withOptional = withOptional;
594
676
  const result = await runSkillTestHarness(harnessOpts);
595
677
  process.stderr.write(`Harness: ${result.harnessPath}\n`);
596
678
  process.stdout.write(`Summary: ${result.summary}\n`);
@@ -618,9 +700,9 @@ export function createSkillTestRunCommand() {
618
700
  const command = new Command('run');
619
701
  command
620
702
  .description('Execute a packaged skill\'s eval suite in a headless, context-isolated Claude session (runs the skill\'s code; not an OS sandbox)')
621
- .argument('<skill...>', 'Skill name(s) to test (primary subject set)')
622
- .option('--with <pair...>', 'Inject a declared-dependency skill as name=<src>, where <src> is workspace:<pkg> | npm:<spec> | url:<u> | path:<dir> | vendored (e.g. mydep=npm:@scope/s@1.2.3)')
623
- .option('--with-optional <pair...>', 'Inject an optional skill as name=<src> (same syntax as --with)')
703
+ .argument('<skill>', 'The skill to test')
704
+ .option('--with <pair...>', 'Stage a REQUIRED companion skill the subject can invoke, as name=<src> (repeatable). <src> is workspace:<pkg> | npm:<spec> | url:<u> | path:<dir> | vendored (e.g. helper=npm:@scope/s@1.2.3). The run fails if a source cannot be resolved.')
705
+ .option('--with-optional <pair...>', 'Stage an OPTIONAL companion skill, as name=<src> (same syntax, repeatable). Skipped with a warning if its source cannot be resolved; the run continues.')
624
706
  .option('--env <pair...>', 'Inject an env var into the executor spawn as KEY=VALUE (repeatable). Values support ${fixturesDir}, ${stagedSkillDir}, ${harnessRoot}, ${resultsDir}. CLI overrides config for the same key.')
625
707
  .option('--pass-env <key...>', 'Forward a host env var by NAME to the executor spawn if present (repeatable). Protected names (PATH, auth, model) are ignored.')
626
708
  .option('--refresh', 'Force a full re-stage (ignore existing staged content)')
@@ -646,9 +728,10 @@ export function createSkillTestRunCommand() {
646
728
  .action(runSkillTestRun)
647
729
  .addHelpText('after', `
648
730
  Description:
649
- Stages the named skill(s) into a fresh temp harness (context isolation: a
650
- scrubbed env allowlist and no user/project settings -- NOT an OS security
651
- sandbox), runs preflight checks (claude binary, auth, eval inputs, budget),
731
+ Stages the named subject skill (plus any --with/--with-optional companion
732
+ skills) into a fresh temp harness (context isolation: a scrubbed env
733
+ allowlist and no user/project settings -- NOT an OS security sandbox), runs
734
+ preflight checks (claude binary, auth, eval inputs, budget),
652
735
  then runs a vat-owned executor->grader pipeline: per eval, a blind executor
653
736
  Claude session performs the task and a separate grader session judges its
654
737
  transcript against the skill's expectations. VAT merges the grader results and
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/commands/skill/test/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/commands/skill/test/run.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { findDeclaredSkillForPath, resolveSkillReference } from './resolve-skill-reference.js';
1
+ export { findDeclaredSkillForPath, findDeclaredSkillForSourceDir, resolveSkillReference, } from './resolve-skill-reference.js';
2
2
  export { classifyToken, parseSourceSpec } from './classify.js';
3
3
  export { getDiscoveredSkillsByPath, resetSkillDiscoveryCache, resolveSkillPackagingConfig, stripValidationAllowForDisplay, } from './packaging-config.js';
4
4
  export type { BuildableReference, DeclaredSkillLink, SkillDistribution, SkillReference } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skill-resolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skill-resolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
- export { findDeclaredSkillForPath, resolveSkillReference } from './resolve-skill-reference.js';
1
+ export { findDeclaredSkillForPath, findDeclaredSkillForSourceDir, resolveSkillReference, } from './resolve-skill-reference.js';
2
2
  export { classifyToken, parseSourceSpec } from './classify.js';
3
3
  export { getDiscoveredSkillsByPath, resetSkillDiscoveryCache, resolveSkillPackagingConfig, stripValidationAllowForDisplay, } from './packaging-config.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skill-resolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skill-resolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,uBAAuB,CAAC"}
@@ -1,11 +1,23 @@
1
- import type { DeclaredSkillLink, SkillReference } from './types.js';
1
+ import type { BuildableReference, DeclaredSkillLink, SkillReference } from './types.js';
2
2
  /**
3
- * Reverse-lookup: does this PATH target point at a declared skill's built dist? Walks
4
- * up from the path (config-first, so a monorepo package config beats the repo `.git`)
5
- * to the governing config, then matches the resolved path against each declared skill's
6
- * `expectedDistDir`. Returns the linkage on a match, else undefined (a config-blind
7
- * path). Pure classification — no build, no side effects. Exported for reuse + tests.
3
+ * Reverse-lookup: does this PATH target point at a declared skill's built dist?
4
+ * Matches the resolved path against each declared skill's `expectedDistDir`.
5
+ * Returns the linkage on a match, else undefined (a config-blind path). Pure
6
+ * classification — no build, no side effects. Exported for reuse + tests.
8
7
  */
9
8
  export declare function findDeclaredSkillForPath(pathRef: string, cwd: string): Promise<DeclaredSkillLink | undefined>;
9
+ /**
10
+ * Forward-lookup companion of {@link findDeclaredSkillForPath} (which matches a
11
+ * DIST path): does this SOURCE path point at a declared skill's authored directory
12
+ * (dirname of its SKILL.md)? A `--with`/`--with-optional` companion given as
13
+ * `path:<source-dir>` has no bare-name grammar to trigger the `buildable` rung of
14
+ * the disambiguation ladder — this is the reverse mapping that lets a companion
15
+ * get the SAME build treatment as the subject (its `files:` injection runs before
16
+ * staging) without inventing new `--with` syntax. Pure classification; no build.
17
+ * Returns undefined when the path matches no declared skill (a companion outside
18
+ * this project's config — npm-packaged, workspace, or an undeclared local dir —
19
+ * is unaffected and stays a plain source).
20
+ */
21
+ export declare function findDeclaredSkillForSourceDir(pathRef: string, cwd: string): Promise<BuildableReference | undefined>;
10
22
  export declare function resolveSkillReference(ref: string, cwd: string): Promise<SkillReference>;
11
23
  //# sourceMappingURL=resolve-skill-reference.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-skill-reference.d.ts","sourceRoot":"","sources":["../../src/skill-resolution/resolve-skill-reference.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EAAsB,iBAAiB,EAAqB,cAAc,EAAE,MAAM,YAAY,CAAC;AAsC3G;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAexC;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAoD7F"}
1
+ {"version":3,"file":"resolve-skill-reference.d.ts","sourceRoot":"","sources":["../../src/skill-resolution/resolve-skill-reference.ts"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAqB,cAAc,EAAE,MAAM,YAAY,CAAC;AA2E3G;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAQxC;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAKzC;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAoD7F"}
@@ -29,6 +29,7 @@
29
29
  * PURE LOOKUP/CLASSIFICATION — no side effects, no build. Build is the caller's job.
30
30
  */
31
31
  import { existsSync } from 'node:fs';
32
+ import { dirname } from 'node:path';
32
33
  import { findDistributedSkillLocationBySource, skillNameToFsPath, } from '@vibe-agent-toolkit/agent-skills';
33
34
  import { findProjectRoot, safePath } from '@vibe-agent-toolkit/utils';
34
35
  import { loadConfigCached } from '../utils/config-loader.js';
@@ -64,14 +65,22 @@ function computeSkillDistribution(name, sourcePath, configRoot, config) {
64
65
  };
65
66
  }
66
67
  /**
67
- * Reverse-lookup: does this PATH target point at a declared skill's built dist? Walks
68
- * up from the path (config-first, so a monorepo package config beats the repo `.git`)
69
- * to the governing config, then matches the resolved path against each declared skill's
70
- * `expectedDistDir`. Returns the linkage on a match, else undefined (a config-blind
71
- * path). Pure classification — no build, no side effects. Exported for reuse + tests.
68
+ * Shared config+discovery lookup for both the reverse (dist-path) and forward
69
+ * (source-path) declared-skill matchers below: walk up from `absPath` (config-first,
70
+ * so a monorepo package config beats the repo `.git`) to the governing config, then
71
+ * return its declared-skills-by-path map. Undefined when there's no governing
72
+ * config, or no `skills` section declared.
72
73
  */
73
- export async function findDeclaredSkillForPath(pathRef, cwd) {
74
- const absPath = safePath.resolve(cwd, pathRef);
74
+ /**
75
+ * Shared engine for both the reverse (dist-path) and forward (source-path)
76
+ * declared-skill matchers below: walk up from `absPath` (config-first, so a
77
+ * monorepo package config beats the repo `.git`) to the governing config, then
78
+ * scan its declared skills for the first one `matches` accepts. `matches` returns
79
+ * the caller's result shape (or undefined to keep scanning) — the two matchers
80
+ * differ only in WHICH path each declared skill is compared against and WHAT they
81
+ * build from a hit, not in the walk-up/scan itself.
82
+ */
83
+ async function findFirstDeclaredSkillEntry(absPath, matches) {
75
84
  const configRoot = findProjectRoot(absPath);
76
85
  if (configRoot === null)
77
86
  return undefined;
@@ -80,13 +89,43 @@ export async function findDeclaredSkillForPath(pathRef, cwd) {
80
89
  return undefined;
81
90
  const byPath = await getDiscoveredSkillsByPath(config.skills, configRoot);
82
91
  for (const [sourcePath, name] of byPath.entries()) {
83
- const { expectedDistDir } = computeSkillDistribution(name, sourcePath, configRoot, config);
84
- if (safePath.resolve(expectedDistDir) === absPath) {
85
- return { name, configRoot, sourcePath, expectedDistDir };
86
- }
92
+ const result = await matches(sourcePath, name, configRoot, config);
93
+ if (result !== undefined)
94
+ return result;
87
95
  }
88
96
  return undefined;
89
97
  }
98
+ /**
99
+ * Reverse-lookup: does this PATH target point at a declared skill's built dist?
100
+ * Matches the resolved path against each declared skill's `expectedDistDir`.
101
+ * Returns the linkage on a match, else undefined (a config-blind path). Pure
102
+ * classification — no build, no side effects. Exported for reuse + tests.
103
+ */
104
+ export async function findDeclaredSkillForPath(pathRef, cwd) {
105
+ const absPath = safePath.resolve(cwd, pathRef);
106
+ return findFirstDeclaredSkillEntry(absPath, (sourcePath, name, configRoot, config) => {
107
+ const { expectedDistDir } = computeSkillDistribution(name, sourcePath, configRoot, config);
108
+ return safePath.resolve(expectedDistDir) === absPath
109
+ ? { name, configRoot, sourcePath, expectedDistDir }
110
+ : undefined;
111
+ });
112
+ }
113
+ /**
114
+ * Forward-lookup companion of {@link findDeclaredSkillForPath} (which matches a
115
+ * DIST path): does this SOURCE path point at a declared skill's authored directory
116
+ * (dirname of its SKILL.md)? A `--with`/`--with-optional` companion given as
117
+ * `path:<source-dir>` has no bare-name grammar to trigger the `buildable` rung of
118
+ * the disambiguation ladder — this is the reverse mapping that lets a companion
119
+ * get the SAME build treatment as the subject (its `files:` injection runs before
120
+ * staging) without inventing new `--with` syntax. Pure classification; no build.
121
+ * Returns undefined when the path matches no declared skill (a companion outside
122
+ * this project's config — npm-packaged, workspace, or an undeclared local dir —
123
+ * is unaffected and stays a plain source).
124
+ */
125
+ export async function findDeclaredSkillForSourceDir(pathRef, cwd) {
126
+ const absPath = safePath.resolve(cwd, pathRef);
127
+ return findFirstDeclaredSkillEntry(absPath, (sourcePath, name, configRoot, config) => safePath.resolve(dirname(sourcePath)) === absPath ? buildBuildable(name, sourcePath, configRoot, config) : undefined);
128
+ }
90
129
  export async function resolveSkillReference(ref, cwd) {
91
130
  const shape = classifyToken(ref);
92
131
  if (shape.shape === 'source-spec')
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-skill-reference.js","sourceRoot":"","sources":["../../src/skill-resolution/resolve-skill-reference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-skill-reference.js","sourceRoot":"","sources":["../../src/skill-resolution/resolve-skill-reference.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibe-agent-toolkit/cli",
3
- "version": "0.1.41-rc.2",
3
+ "version": "0.1.41-rc.4",
4
4
  "description": "Command-line interface for vibe-agent-toolkit",
5
5
  "type": "module",
6
6
  "bin": {
@@ -41,16 +41,16 @@
41
41
  "//dependencies-note": "DO NOT add example agent packages or adopter packages here. Adopter packages (like vat-development-agents) depend on the CLI binary at build time — declaring them as deps creates a circular build dependency. They are built in a second turbo pass via package#task overrides in turbo.json.",
42
42
  "dependencies": {
43
43
  "@anthropic-ai/sdk": "^0.71.2",
44
- "@vibe-agent-toolkit/agent-config": "0.1.41-rc.2",
45
- "@vibe-agent-toolkit/agent-schema": "0.1.41-rc.2",
46
- "@vibe-agent-toolkit/agent-skills": "0.1.41-rc.2",
47
- "@vibe-agent-toolkit/claude-marketplace": "0.1.41-rc.2",
48
- "@vibe-agent-toolkit/discovery": "0.1.41-rc.2",
49
- "@vibe-agent-toolkit/gateway-mcp": "0.1.41-rc.2",
50
- "@vibe-agent-toolkit/rag": "0.1.41-rc.2",
51
- "@vibe-agent-toolkit/rag-lancedb": "0.1.41-rc.2",
52
- "@vibe-agent-toolkit/resources": "0.1.41-rc.2",
53
- "@vibe-agent-toolkit/utils": "0.1.41-rc.2",
44
+ "@vibe-agent-toolkit/agent-config": "0.1.41-rc.4",
45
+ "@vibe-agent-toolkit/agent-schema": "0.1.41-rc.4",
46
+ "@vibe-agent-toolkit/agent-skills": "0.1.41-rc.4",
47
+ "@vibe-agent-toolkit/claude-marketplace": "0.1.41-rc.4",
48
+ "@vibe-agent-toolkit/discovery": "0.1.41-rc.4",
49
+ "@vibe-agent-toolkit/gateway-mcp": "0.1.41-rc.4",
50
+ "@vibe-agent-toolkit/rag": "0.1.41-rc.4",
51
+ "@vibe-agent-toolkit/rag-lancedb": "0.1.41-rc.4",
52
+ "@vibe-agent-toolkit/resources": "0.1.41-rc.4",
53
+ "@vibe-agent-toolkit/utils": "0.1.41-rc.4",
54
54
  "adm-zip": "^0.5.16",
55
55
  "commander": "^12.1.0",
56
56
  "picomatch": "^4.0.3",
@@ -65,7 +65,7 @@
65
65
  "@types/picomatch": "^4.0.2",
66
66
  "@types/semver": "^7.7.1",
67
67
  "@types/tar": "^6.1.13",
68
- "@vibe-agent-toolkit/dev-tools": "0.1.41-rc.2",
68
+ "@vibe-agent-toolkit/dev-tools": "0.1.41-rc.4",
69
69
  "rimraf": "^6.0.1",
70
70
  "typescript": "^5.7.3",
71
71
  "vitest": "^3.2.4"