@vibe-agent-toolkit/cli 0.1.41-rc.4 → 0.1.41-rc.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.
Files changed (77) hide show
  1. package/dist/bin.js +2 -4
  2. package/dist/bin.js.map +1 -1
  3. package/dist/commands/agent/help.d.ts.map +1 -1
  4. package/dist/commands/agent/help.js +2 -4
  5. package/dist/commands/agent/help.js.map +1 -1
  6. package/dist/commands/claude/org/skills.d.ts +13 -0
  7. package/dist/commands/claude/org/skills.d.ts.map +1 -1
  8. package/dist/commands/claude/org/skills.js +57 -30
  9. package/dist/commands/claude/org/skills.js.map +1 -1
  10. package/dist/commands/claude/plugin/build.d.ts +1 -1
  11. package/dist/commands/claude/plugin/build.d.ts.map +1 -1
  12. package/dist/commands/claude/plugin/build.js +239 -82
  13. package/dist/commands/claude/plugin/build.js.map +1 -1
  14. package/dist/commands/claude/plugin/install.d.ts.map +1 -1
  15. package/dist/commands/claude/plugin/install.js +7 -2
  16. package/dist/commands/claude/plugin/install.js.map +1 -1
  17. package/dist/commands/claude/plugin/tree-copy.d.ts +10 -3
  18. package/dist/commands/claude/plugin/tree-copy.d.ts.map +1 -1
  19. package/dist/commands/claude/plugin/tree-copy.js.map +1 -1
  20. package/dist/commands/claude/plugin/uninstall.d.ts.map +1 -1
  21. package/dist/commands/claude/plugin/uninstall.js +10 -2
  22. package/dist/commands/claude/plugin/uninstall.js.map +1 -1
  23. package/dist/commands/rag/help.d.ts.map +1 -1
  24. package/dist/commands/rag/help.js +2 -4
  25. package/dist/commands/rag/help.js.map +1 -1
  26. package/dist/commands/resources/help.d.ts.map +1 -1
  27. package/dist/commands/resources/help.js +2 -4
  28. package/dist/commands/resources/help.js.map +1 -1
  29. package/dist/commands/resources/validate.d.ts +19 -0
  30. package/dist/commands/resources/validate.d.ts.map +1 -1
  31. package/dist/commands/resources/validate.js +51 -0
  32. package/dist/commands/resources/validate.js.map +1 -1
  33. package/dist/commands/skill/test/configure.d.ts.map +1 -1
  34. package/dist/commands/skill/test/configure.js +1 -1
  35. package/dist/commands/skill/test/configure.js.map +1 -1
  36. package/dist/commands/skill/test/run.d.ts +111 -24
  37. package/dist/commands/skill/test/run.d.ts.map +1 -1
  38. package/dist/commands/skill/test/run.js +328 -63
  39. package/dist/commands/skill/test/run.js.map +1 -1
  40. package/dist/commands/skills/build.d.ts.map +1 -1
  41. package/dist/commands/skills/build.js +3 -32
  42. package/dist/commands/skills/build.js.map +1 -1
  43. package/dist/commands/skills/install.d.ts.map +1 -1
  44. package/dist/commands/skills/install.js +79 -25
  45. package/dist/commands/skills/install.js.map +1 -1
  46. package/dist/commands/skills/list.d.ts.map +1 -1
  47. package/dist/commands/skills/list.js +9 -5
  48. package/dist/commands/skills/list.js.map +1 -1
  49. package/dist/commands/skills/skill-discovery.d.ts +7 -0
  50. package/dist/commands/skills/skill-discovery.d.ts.map +1 -1
  51. package/dist/commands/skills/skill-discovery.js +5 -3
  52. package/dist/commands/skills/skill-discovery.js.map +1 -1
  53. package/dist/commands/verify.d.ts.map +1 -1
  54. package/dist/commands/verify.js +7 -2
  55. package/dist/commands/verify.js.map +1 -1
  56. package/dist/skill-resolution/classify.d.ts +7 -2
  57. package/dist/skill-resolution/classify.d.ts.map +1 -1
  58. package/dist/skill-resolution/classify.js +7 -2
  59. package/dist/skill-resolution/classify.js.map +1 -1
  60. package/dist/skill-resolution/resolve-skill-reference.d.ts +10 -8
  61. package/dist/skill-resolution/resolve-skill-reference.d.ts.map +1 -1
  62. package/dist/skill-resolution/resolve-skill-reference.js +62 -23
  63. package/dist/skill-resolution/resolve-skill-reference.js.map +1 -1
  64. package/dist/skill-resolution/types.d.ts +3 -2
  65. package/dist/skill-resolution/types.d.ts.map +1 -1
  66. package/dist/utils/help-loader.d.ts +16 -0
  67. package/dist/utils/help-loader.d.ts.map +1 -1
  68. package/dist/utils/help-loader.js +31 -1
  69. package/dist/utils/help-loader.js.map +1 -1
  70. package/dist/utils/skill-packaging-config.d.ts +15 -6
  71. package/dist/utils/skill-packaging-config.d.ts.map +1 -1
  72. package/dist/utils/skill-packaging-config.js +23 -5
  73. package/dist/utils/skill-packaging-config.js.map +1 -1
  74. package/docs/index.md +39 -0
  75. package/docs/skill-test.md +213 -0
  76. package/docs/skills.md +29 -4
  77. package/package.json +13 -13
@@ -0,0 +1,213 @@
1
+ # vat skill test - Eval Harness Commands
2
+
3
+ ## Overview
4
+
5
+ The `vat skill test` commands run a packaged skill's eval suite in a headless,
6
+ context-isolated Claude session. Each eval runs in two roles: a blind **executor**
7
+ (the skill under test) performs the task, then a separate **grader** judges the
8
+ captured transcript and emits a verdict.
9
+
10
+ ```bash
11
+ vat skill test run <skill> # execute the eval suite
12
+ vat skill test configure <skill> # persist knobs into vibe-agent-toolkit.config.yaml
13
+ ```
14
+
15
+ > **This command executes skill code.** It is context-isolated, not an OS sandbox.
16
+ > `--i-understand-this-runs-skill-code` is required to acknowledge that.
17
+
18
+ Note the singular `vat skill` — distinct from the `vat skills` (plural) packaging
19
+ commands documented in [skills.md](./skills.md).
20
+
21
+ ## Two config homes
22
+
23
+ Most knobs exist both as a CLI flag (one-off) and a config key (persisted). **Flags
24
+ override config.** There are two places config lives:
25
+
26
+ | Home | Location | Holds |
27
+ |---|---|---|
28
+ | **Per-skill** | `skills.config.<skill>.test` | Everything about testing *one* skill — model under test, budgets, evals, companions |
29
+ | **Global** | top-level `test:` node | Judge/pipeline knobs shared by every skill — `graderModel`, `concurrency` |
30
+
31
+ ```yaml
32
+ # vibe-agent-toolkit.config.yaml
33
+ test: # GLOBAL — the judge and the pipeline
34
+ graderModel: claude-sonnet-5
35
+ concurrency: 4
36
+
37
+ skills:
38
+ config:
39
+ my-skill:
40
+ test: # PER-SKILL — the thing under test
41
+ model: claude-opus-5
42
+ timeout: 1500
43
+ auth: subscription
44
+ requireAuth: subscription
45
+ evals: evals/suite.json
46
+ ```
47
+
48
+ Both blocks are validated under a **strict** schema — an unknown key is a config
49
+ error, not a silent no-op. (This is the deliberate inverse of `evals.json`, which
50
+ VAT reads liberally as adopter-authored data.)
51
+
52
+ `vat skill test configure <skill>` writes the **per-skill** block using a
53
+ comment-preserving YAML upsert, and validates values before writing. Prefer it over
54
+ hand-editing.
55
+
56
+ ## Per-skill knobs (`skills.config.<skill>.test`)
57
+
58
+ Every field is optional; an omitted knob falls back to its default.
59
+
60
+ | Config key | Type / unit | Default | CLI flag | Purpose |
61
+ |---|---|---|---|---|
62
+ | `model` | string | claude's own default | `--model <id>` | Model for the **executor** (the skill under test). Passed **verbatim** to `claude --model` — VAT does no mapping or validation. Pin it for reproducible runs. |
63
+ | `maxTurns` | integer > 0 | none | `--max-turns <n>` | Per-spawn cap on executor/grader turns. |
64
+ | `maxBudgetUsd` | number > 0 | none | `--max-budget-usd <n>` | Hard USD budget cap passed to the CLI. |
65
+ | `timeout` | integer, **seconds** | scales with eval count: ~`2min + 2min/eval`, floored at 5min, capped at 1h | `--timeout <s>` | Wall-clock timeout. An explicit value always overrides the scaled default. |
66
+ | `stall` | integer, **seconds** | none | `--stall <s>` | Stall watchdog — kill the spawn after this long with no stream output. |
67
+ | `evals` | string (path or npm specifier) | auto-detected `evals/evals.json` (see below) | `--evals <path>` | Which `evals.json` to grade against. `test.evals` resolves **relative to the skill source**; `--evals` resolves **relative to the current directory**. Either may be absolute, and either may be an npm bare specifier. An explicit value always wins over the default convention. |
68
+ | `auth` | `inherit` \| `subscription` \| `api-key` \| `auto` | `inherit` | `--auth <mode>` | Auth mechanism for the spawned session. |
69
+ | `requireAuth` | `subscription` \| `api-key` | none | `--require-auth <mech>` | Fail-fast guard: preflight exits `2` if the effective mechanism isn't this. |
70
+ | `baseline` | boolean | `false` | `--baseline` | Run the opt-in with/without A/B skill-lift comparison. |
71
+ | `skillCreator` | source descriptor | `{ vendored: true }` | — | Source for the vendored skill-creator rubric. |
72
+ | `with` | array of source descriptors | none | `--with name=<src>` | **Required** companion skills staged alongside the subject, invocable by it. |
73
+ | `optional` | array of source descriptors | none | `--with-optional name=<src>` | **Optional** companions — skipped with a warning if unresolvable. |
74
+ | `env` | map string→string | none | `--env KEY=VALUE` | Env vars injected into the **executor** spawn. Values interpolate `${fixturesDir}`, `${stagedSkillDir}`, `${harnessRoot}`, `${resultsDir}`. `${fixturesDir}` is **per-eval** — it names that eval's own staged workspace (`fixtures/` under the executor's working directory), so the eval must declare input `files`; using it on an eval without them fails the run (exit 2). Protected names (PATH, auth, model, admin) cannot be overridden. |
75
+ | `passEnv` | array of strings | none | `--pass-env KEY` | Names of host env vars to forward to the executor spawn if present. Protected names are ignored with a warning. |
76
+ | `build` | string (shell command) | none | — | Command run **once, before staging**, to generate build artifacts. Runs with `cwd` = config root. A non-zero exit aborts the run (exit `2`). |
77
+
78
+ A **source descriptor** is one of `{ workspace: <pkg> }`, `{ npm: <spec> }`,
79
+ `{ url: <u>, sha256?: <hash> }`, `{ path: <dir> }`, or `{ vendored: true }`. On the
80
+ command line the same sources are written as `name=workspace:<pkg>`,
81
+ `name=npm:<spec>`, `name=url:<u>`, `name=path:<dir>`, or `name=vendored` — the CLI
82
+ form requires an explicit companion `name=`, the config form derives it from the
83
+ resolved skill.
84
+
85
+ ### Companion staging and builds
86
+
87
+ A `path:` companion whose source directory maps to a **declared** skill is **built**
88
+ first, exactly like the subject, so its `files:` build artifacts are injected — a
89
+ companion backed by a bundled executable stages functional rather than inert. A
90
+ required companion's build failure fails the run; an optional one falls back to raw
91
+ unbuilt source only when the failure is non-destructive. Each declared skill builds
92
+ **at most once per run**.
93
+
94
+ Staging the same name twice across the subject, `--with`, and `--with-optional` is a
95
+ duplicate-name error (exit `2`).
96
+
97
+ ### The default eval-suite convention
98
+
99
+ **You do not need a `test:` block to have an eval suite.** If a skill has a file at:
100
+
101
+ ```
102
+ <skill-source-dir>/evals/evals.json
103
+ ```
104
+
105
+ VAT treats that as the skill's suite — the same path `vat skill test run` has always defaulted to. Two things follow from it, and they are deliberately the same two things an explicit `test:` block would give you:
106
+
107
+ 1. `vat skill test run <skill>` finds and runs the suite.
108
+ 2. **The suite directory is excluded from packaged output.** It holds the `expected_output` / `expectations` answer key, so shipping it would both publish the answers and let a skill under test read its own key.
109
+
110
+ This is **auto-detection, not a requirement**. It is keyed on the suite *file* existing:
111
+
112
+ | On disk | Treated as a suite? |
113
+ |---|---|
114
+ | `<skill>/evals/evals.json` | **Yes** — run by the harness, excluded from the bundle |
115
+ | `<skill>/evals/` with no `evals.json` | No — ordinary content, ships normally |
116
+ | `<skill>/docs/evals/…` (any other location named `evals`) | No — ordinary content, ships normally |
117
+ | No `evals/` directory at all | No — nothing happens, no error, no warning |
118
+
119
+ A skill with no suite is completely unaffected: it packages exactly as it would have, with no error and nothing excluded. The convention never makes evals mandatory.
120
+
121
+ **Set `test.evals` explicitly** when your suite lives anywhere else — a shared directory, a per-skill subdirectory (VAT's own repo uses `evals/<skill-name>/evals.json`), or outside the skill tree. An explicit path always overrides the convention.
122
+
123
+ > Both lanes honor this. Before it was shared, the harness auto-detected the suite while the packager did not, so a skill relying on the default had its answer key published even though the harness was protecting it.
124
+
125
+ ### Testing a skill you did not author
126
+
127
+ A correctly packaged skill ships **no** eval suite — the suite is the answer key, and excluding it from the bundle is the whole point of the convention above. So for any skill you install rather than write, there is nothing in its tree to grade against, and you have to supply the suite yourself:
128
+
129
+ ```bash
130
+ vat skill test run npm:@vendor/their-skill \
131
+ --evals ./our-audit-corpus/their-skill.json \
132
+ --i-understand-this-runs-skill-code
133
+ ```
134
+
135
+ `--evals` resolves against the directory you run it from, so the path means what you typed. It may point anywhere — including outside the skill's tree entirely, which is the normal case here. It also accepts an npm bare specifier (`--evals @acme/skill-evals/their-skill.json`), honoring that package's `exports` map, so a shared corpus can be distributed as a package.
136
+
137
+ The suite is never copied into anything the executor can reach. Each eval's declared input `files` are resolved relative to the **suite's** directory and staged into that eval's own workspace, so fixtures travel with the suite rather than with the skill.
138
+
139
+ > **On sensitive fixtures.** `workspaces/` and `results/` are created `0700`, so a fixture that was never in your repo is not left readable by other local users. That is necessary but **not** sufficient: `grading.json` quotes the executor transcript verbatim as evidence, so anything the skill *reads out of* a fixture is written into `results/` as text — and `results/` survives `--keep` by design. Treat the harness output as being as sensitive as the fixtures you feed it.
140
+
141
+ ## Global knobs (top-level `test:`)
142
+
143
+ | Config key | Type | Default | CLI flag | Purpose |
144
+ |---|---|---|---|---|
145
+ | `graderModel` | string | `claude-sonnet-5` | `--grader-model <id>` | Model for the fixed grader/judge. Passed verbatim to `claude --model`. Independent of `model` — you can run the skill under one model and grade under another. |
146
+ | `concurrency` | integer > 0 | `4` | `--concurrency <n>` | Width of the bounded-parallel executor→grader pipeline. |
147
+
148
+ ## Run-only flags (no config key)
149
+
150
+ | Flag | Purpose |
151
+ |---|---|
152
+ | `--i-understand-this-runs-skill-code` | **Required.** Acknowledges the command executes skill code. |
153
+ | `--no-build` | Stage existing `dist` instead of building. Errors if absent for the subject or a **required** companion; an optional companion falls back to raw source with a warning. |
154
+ | `--refresh` | Force a full re-stage, ignoring existing staged content. |
155
+ | `--keep` | Keep the harness directory after the run (needed to inspect `results/`). |
156
+ | `--dry-run` | Build and stage exactly as a real run would, then stop without spawning Claude — no session, no tokens. It **does build** (when `--i-understand-this-runs-skill-code` is passed), because the question a dry run answers is "what happens if I drop this flag", and a preview built from a stale `dist/` answers it wrongly. **Without** the acknowledgement it does not build — building runs the repo's `test.build` hook, an arbitrary shell command — so it falls back to an existing `dist/` and warns it may be stale. `--no-build` skips the build either way. |
157
+ | `--out <dir>` / `--workdir <dir>` | Override the harness output / working directory. |
158
+ | `--allow-eval-failure` | Opt out of fail-closed: exit `0` even when an eval fails. For interactive iteration. |
159
+ | `--allow-unverified-skill-source` | Skip the vendored manifest integrity check. |
160
+ | `--debug` | Enable debug logging. |
161
+
162
+ ## Exit codes
163
+
164
+ The harness deliberately separates "the evals failed" from "the harness broke", so
165
+ CI can tolerate one and gate on the other.
166
+
167
+ - `0` - Run completed, all expectations passed
168
+ - `1` - Harness broke (internal error, stall, timeout, grader nonce failure)
169
+ - `2` - Preflight failure (bad config, unresolvable required companion, auth guard, `build` hook failed)
170
+ - `3` - Bootstrap failure
171
+ - `4` - **Eval failure** — the run completed but expectations did not all pass
172
+
173
+ ```bash
174
+ vat skill test run my-skill --i-understand-this-runs-skill-code
175
+ case $? in
176
+ 0) ;;
177
+ 4) echo "evals failed (tolerated)" ;;
178
+ *) exit 1 ;; # harness broke — fail the build
179
+ esac
180
+ ```
181
+
182
+ ## Results
183
+
184
+ With `--keep`, the harness directory retains a `results/` tree that VAT is the sole
185
+ writer of:
186
+
187
+ - `grading.json` - per-expectation verdicts and the pass/total summary
188
+ - `friction.json` - packaging issues observed during the run (advisory)
189
+ - `tool-eval.json` - tool-expectation verdicts; always written, so check
190
+ `.evals.length` rather than file existence
191
+
192
+ ## Examples
193
+
194
+ ```bash
195
+ # Run a declared skill's suite, honoring its test: config
196
+ vat skill test run my-skill --i-understand-this-runs-skill-code
197
+
198
+ # Pin both models independently, keep the harness for inspection
199
+ vat skill test run my-skill --model claude-opus-5 --grader-model claude-sonnet-5 \
200
+ --keep --i-understand-this-runs-skill-code
201
+
202
+ # Stage a required companion the subject is expected to invoke
203
+ vat skill test run router-skill --with helper=path:./skills/helper \
204
+ --i-understand-this-runs-skill-code
205
+
206
+ # Persist knobs instead of passing them every time
207
+ vat skill test configure my-skill --auth subscription --require-auth subscription
208
+ ```
209
+
210
+ ## See Also
211
+
212
+ - [skills.md](./skills.md) - `vat skills` (plural): packaging, validation, install
213
+ - [index.md](./index.md) - full CLI command index
package/docs/skills.md CHANGED
@@ -315,14 +315,22 @@ for terminology.
315
315
 
316
316
  **What it does:**
317
317
  1. Resolves the source (local directory, ZIP, .tgz, or npm package)
318
- 2. Discovers one or more skills inside the source
318
+ 2. Discovers one or more skill directories inside the source
319
319
  3. Pre-validates every skill with `validateSkill()` — zero files written if validation fails
320
- 4. Builds an install plan, detecting conflicts before touching the filesystem
321
- 5. Copies skill(s) to the resolved platform directory (all-or-nothing semantics)
322
- 6. Emits a YAML summary on stdout
320
+ 4. Reads each skill's declared name, which is the name it installs under
321
+ 5. Builds an install plan, detecting conflicts before touching the filesystem
322
+ 6. Copies skill(s) to the resolved platform directory (all-or-nothing semantics)
323
+ 7. Emits a YAML summary on stdout
323
324
 
324
325
  Both `--target` and `--scope` are **required** — there are no defaults.
325
326
 
327
+ **Installed name:** a skill installs under the `name` its `SKILL.md` frontmatter
328
+ declares — the same identity `vat skills build` and the plugin build key on — not
329
+ the name of the directory it came from. A ZIP or npm source has no meaningful
330
+ directory name to use. If two skills in one source declare the same name, the
331
+ whole install fails rather than one silently overwriting the other. Use `--name`
332
+ to override (single-skill sources only).
333
+
326
334
  **Supported Sources:**
327
335
  - **Local directory:** `./path/to/skill-dir` — must contain `SKILL.md` at root or in subdirectories
328
336
  - **Local ZIP file:** `./path/to/skill.zip` — extracted to a temp directory, then installed
@@ -354,6 +362,16 @@ Both `--target` and `--scope` are **required** — there are no defaults.
354
362
  | `windsurf` | `~/.codeium/windsurf/skills/` | `.windsurf/skills/` |
355
363
  | `agents` | `~/.agents/skills/` | `.agents/skills/` |
356
364
 
365
+ These paths were last reviewed against vendor conventions on 2026-04-08 and are
366
+ not verified at build or test time — the tests assert the table's shape, never
367
+ that a path is where a platform actually looks. If a vendor moves its convention,
368
+ installs land somewhere unread and every VAT check still passes. Re-check the
369
+ vendor's documentation before relying on a non-`claude` target.
370
+
371
+ **Visibility:** VAT's own inspection commands are Claude-scoped — `vat skills
372
+ list --user` and `vat audit --user` read `~/.claude` only. A skill installed to
373
+ any other target lands correctly but is invisible to them.
374
+
357
375
  **Exit Codes:**
358
376
  - `0` - Install successful (or dry-run complete)
359
377
  - `1` - Install error (validation failed, conflict without `--force`, source not found, bad target/scope)
@@ -438,6 +456,10 @@ for terminology.
438
456
  2. Reports validation status for each skill
439
457
  3. Shows skill metadata (name, description, path)
440
458
 
459
+ The reported `name` is the one the skill's frontmatter declares — matching what
460
+ `vat skills install` would install it as — falling back to the directory name
461
+ only when the `SKILL.md` declares none.
462
+
441
463
  **Modes:**
442
464
 
443
465
  **Project mode (default):**
@@ -729,6 +751,8 @@ name: my-help # Instead of "help"
729
751
 
730
752
  ## Related Commands
731
753
 
754
+ - `vat skill test` - Run a skill's eval suite (note the **singular** `skill`); its
755
+ `test:` config surface is documented separately in [skill-test.md](./skill-test.md)
732
756
  - `vat audit` - Comprehensive validation for plugins, marketplaces, and skills
733
757
  - `vat resources validate` - Validate markdown resources (links, anchors)
734
758
  - `vat doctor` - Check environment and installation health
@@ -738,5 +762,6 @@ name: my-help # Instead of "help"
738
762
  ## See Also
739
763
 
740
764
  - [CLI Reference](./index.md) - Complete CLI documentation
765
+ - [Skill Test Command](./skill-test.md) - `vat skill test` eval harness and its config knobs
741
766
  - [Audit Command](./audit.md) - Comprehensive validation
742
767
  - [Resources Command](./resources.md) - Markdown resource validation
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibe-agent-toolkit/cli",
3
- "version": "0.1.41-rc.4",
3
+ "version": "0.1.41-rc.6",
4
4
  "description": "Command-line interface for vibe-agent-toolkit",
5
5
  "type": "module",
6
6
  "bin": {
@@ -41,17 +41,17 @@
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.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
- "adm-zip": "^0.5.16",
44
+ "@vibe-agent-toolkit/agent-config": "0.1.41-rc.6",
45
+ "@vibe-agent-toolkit/agent-schema": "0.1.41-rc.6",
46
+ "@vibe-agent-toolkit/agent-skills": "0.1.41-rc.6",
47
+ "@vibe-agent-toolkit/claude-marketplace": "0.1.41-rc.6",
48
+ "@vibe-agent-toolkit/discovery": "0.1.41-rc.6",
49
+ "@vibe-agent-toolkit/gateway-mcp": "0.1.41-rc.6",
50
+ "@vibe-agent-toolkit/rag": "0.1.41-rc.6",
51
+ "@vibe-agent-toolkit/rag-lancedb": "0.1.41-rc.6",
52
+ "@vibe-agent-toolkit/resources": "0.1.41-rc.6",
53
+ "@vibe-agent-toolkit/utils": "0.1.41-rc.6",
54
+ "adm-zip": "^0.6.0",
55
55
  "commander": "^12.1.0",
56
56
  "picomatch": "^4.0.3",
57
57
  "semver": "^7.7.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.4",
68
+ "@vibe-agent-toolkit/dev-tools": "0.1.41-rc.6",
69
69
  "rimraf": "^6.0.1",
70
70
  "typescript": "^5.7.3",
71
71
  "vitest": "^3.2.4"