@vibe-agent-toolkit/cli 0.1.11 → 0.1.12
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/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +30 -10
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/resources/index.d.ts.map +1 -1
- package/dist/commands/resources/index.js +19 -4
- package/dist/commands/resources/index.js.map +1 -1
- package/dist/commands/resources/validate.d.ts +2 -0
- package/dist/commands/resources/validate.d.ts.map +1 -1
- package/dist/commands/resources/validate.js +6 -3
- package/dist/commands/resources/validate.js.map +1 -1
- package/dist/commands/skills/build.d.ts.map +1 -1
- package/dist/commands/skills/build.js +85 -37
- package/dist/commands/skills/build.js.map +1 -1
- package/dist/commands/skills/command-helpers.d.ts +17 -1
- package/dist/commands/skills/command-helpers.d.ts.map +1 -1
- package/dist/commands/skills/command-helpers.js +16 -0
- package/dist/commands/skills/command-helpers.js.map +1 -1
- package/dist/commands/skills/install-helpers.d.ts +1 -1
- package/dist/commands/skills/install-helpers.d.ts.map +1 -1
- package/dist/commands/skills/install-helpers.js +7 -2
- package/dist/commands/skills/install-helpers.js.map +1 -1
- package/dist/commands/skills/shared.d.ts +23 -0
- package/dist/commands/skills/shared.d.ts.map +1 -0
- package/dist/commands/skills/shared.js +33 -0
- package/dist/commands/skills/shared.js.map +1 -0
- package/dist/commands/skills/validate-command.d.ts.map +1 -1
- package/dist/commands/skills/validate-command.js +55 -42
- package/dist/commands/skills/validate-command.js.map +1 -1
- package/dist/commands/skills/validate.d.ts +6 -11
- package/dist/commands/skills/validate.d.ts.map +1 -1
- package/dist/commands/skills/validate.js +128 -212
- package/dist/commands/skills/validate.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,260 +1,176 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Skills validate command -
|
|
2
|
+
* Skills validate command - validate skills for packaging
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Supports three modes:
|
|
8
|
-
* 1. Project context (default): Validate project skills with strict filename validation
|
|
9
|
-
* 2. User context (--user flag): Validate ~/.claude skills with permissive validation
|
|
10
|
-
* 3. Path context (explicit path): Validate skills at specific path
|
|
4
|
+
* Validates skills declared in package.json vat.skills using validateSkillForPackaging.
|
|
5
|
+
* Supports validation overrides and expiration checking.
|
|
11
6
|
*/
|
|
12
|
-
import
|
|
13
|
-
import { validateSkill } from '@vibe-agent-toolkit/agent-skills';
|
|
14
|
-
import { scan } from '@vibe-agent-toolkit/discovery';
|
|
15
|
-
import { ResourceRegistry } from '@vibe-agent-toolkit/resources';
|
|
16
|
-
import { GitTracker } from '@vibe-agent-toolkit/utils';
|
|
7
|
+
import { validateSkillForPackaging, } from '@vibe-agent-toolkit/agent-skills';
|
|
17
8
|
import * as yaml from 'js-yaml';
|
|
18
|
-
import { loadConfig } from '../../utils/config-loader.js';
|
|
19
9
|
import { formatDurationSecs } from '../../utils/duration.js';
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import { scanUserContext } from '../../utils/user-context-scanner.js';
|
|
23
|
-
import { handleCommandError } from './command-helpers.js';
|
|
10
|
+
import { filterSkillsByName, handleCommandError, setupCommandContext, } from './command-helpers.js';
|
|
11
|
+
import { readPackageJson, validateSkillSource } from './shared.js';
|
|
24
12
|
/**
|
|
25
|
-
*
|
|
13
|
+
* Strip excludedReferences from results metadata for non-verbose YAML output.
|
|
14
|
+
* Keeps excludedReferenceCount for summary info, but removes the full path list
|
|
15
|
+
* which can be noisy. Operates on a deep copy to avoid mutating original results.
|
|
26
16
|
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
17
|
+
function stripExcludedReferencePaths(results) {
|
|
18
|
+
return results.map((result) => {
|
|
19
|
+
const { skillLines, totalLines, fileCount, directFileCount, maxLinkDepth, excludedReferenceCount } = result.metadata;
|
|
20
|
+
return {
|
|
21
|
+
...result,
|
|
22
|
+
metadata: { skillLines, totalLines, fileCount, directFileCount, maxLinkDepth, excludedReferenceCount },
|
|
23
|
+
};
|
|
31
24
|
});
|
|
32
|
-
// Add the entire resources directory to ensure all linked files are available for validation
|
|
33
|
-
// This is necessary because SKILL.md links to agent markdown files in ../agents/
|
|
34
|
-
const resourcesDir = path.resolve(path.dirname(skillPath), '..');
|
|
35
|
-
await registry.crawl({ baseDir: resourcesDir, include: ['**/*.md'] });
|
|
36
|
-
// Validate (no frontmatter schema by default)
|
|
37
|
-
const result = await registry.validate();
|
|
38
|
-
return result;
|
|
39
25
|
}
|
|
40
26
|
/**
|
|
41
|
-
*
|
|
27
|
+
* Output YAML summary to stdout
|
|
42
28
|
*/
|
|
43
|
-
function
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
severity: 'error',
|
|
61
|
-
code: issue.type,
|
|
62
|
-
message: issue.message,
|
|
63
|
-
location,
|
|
64
|
-
});
|
|
29
|
+
function outputYamlSummary(results, duration, verbose) {
|
|
30
|
+
const outputResults = verbose ? results : stripExcludedReferencePaths(results);
|
|
31
|
+
const output = {
|
|
32
|
+
status: results.some((r) => r.status === 'error') ? 'error' : 'success',
|
|
33
|
+
skillsValidated: results.length,
|
|
34
|
+
results: outputResults,
|
|
35
|
+
durationSecs: formatDurationSecs(duration),
|
|
36
|
+
};
|
|
37
|
+
console.log(yaml.dump(output, { indent: 2, lineWidth: -1, noRefs: true }));
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Output a single validation error
|
|
41
|
+
*/
|
|
42
|
+
function outputSingleError(error) {
|
|
43
|
+
console.error(` [${String(error.code)}] ${String(error.message)}`);
|
|
44
|
+
if (error.location) {
|
|
45
|
+
console.error(` Location: ${String(error.location)}`);
|
|
65
46
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
issues.push({
|
|
69
|
-
source: 'skill',
|
|
70
|
-
severity: issue.severity,
|
|
71
|
-
code: issue.code,
|
|
72
|
-
message: issue.message,
|
|
73
|
-
location: issue.location,
|
|
74
|
-
});
|
|
47
|
+
if (error.fix) {
|
|
48
|
+
console.error(` Fix: ${String(error.fix)}`);
|
|
75
49
|
}
|
|
76
|
-
return issues;
|
|
77
50
|
}
|
|
78
51
|
/**
|
|
79
|
-
*
|
|
52
|
+
* Output detailed errors for a skill
|
|
80
53
|
*/
|
|
81
|
-
function
|
|
82
|
-
|
|
83
|
-
//
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
const skillErrorCount = skillErrors.length;
|
|
90
|
-
const skillWarningCount = skillWarnings.length;
|
|
91
|
-
// Count filename issues
|
|
92
|
-
const filenameErrorCount = !filenameValidation.valid && strictMode ? 1 : 0;
|
|
93
|
-
const filenameWarningCount = !filenameValidation.valid && !strictMode ? 1 : 0;
|
|
94
|
-
const totalErrors = resourceErrorCount + skillErrorCount + filenameErrorCount;
|
|
95
|
-
const totalWarnings = skillWarningCount + filenameWarningCount;
|
|
96
|
-
// Build unified issues array
|
|
97
|
-
const issues = buildIssuesArray(skillPath, filenameValidation, strictMode, resourceErrors, skillErrors, skillWarnings);
|
|
98
|
-
const baseResult = {
|
|
99
|
-
skill: skillName,
|
|
100
|
-
path: skillPath,
|
|
101
|
-
status: totalErrors > 0 ? 'error' : 'success',
|
|
102
|
-
resourceValidation: {
|
|
103
|
-
status: resourceErrorCount > 0 ? 'error' : 'success',
|
|
104
|
-
linksChecked: resourceResult.linksByType ? Object.values(resourceResult.linksByType).reduce((sum, count) => sum + count, 0) : 0,
|
|
105
|
-
errors: resourceErrorCount,
|
|
106
|
-
},
|
|
107
|
-
skillValidation: {
|
|
108
|
-
status: (skillErrorCount + filenameErrorCount) > 0 ? 'error' : 'success',
|
|
109
|
-
errors: skillErrorCount + filenameErrorCount,
|
|
110
|
-
warnings: skillWarningCount + filenameWarningCount,
|
|
111
|
-
},
|
|
112
|
-
totalErrors,
|
|
113
|
-
totalWarnings,
|
|
114
|
-
};
|
|
115
|
-
// Only add issues property if there are issues
|
|
116
|
-
if (issues.length > 0) {
|
|
117
|
-
return { ...baseResult, issues };
|
|
54
|
+
function outputSkillErrors(result) {
|
|
55
|
+
console.error(`Skill: ${result.skillName}`);
|
|
56
|
+
// Show active errors
|
|
57
|
+
if (result.activeErrors.length > 0) {
|
|
58
|
+
console.error(` Active errors (${result.activeErrors.length}):`);
|
|
59
|
+
for (const error of result.activeErrors) {
|
|
60
|
+
outputSingleError(error);
|
|
61
|
+
}
|
|
118
62
|
}
|
|
119
|
-
|
|
63
|
+
// Show ignored errors (with reasons)
|
|
64
|
+
if (result.ignoredErrors.length > 0) {
|
|
65
|
+
console.error(` Ignored errors (${result.ignoredErrors.length}):`);
|
|
66
|
+
for (const { error, reason } of result.ignoredErrors) {
|
|
67
|
+
console.error(` [${String(error.code)}] ${String(error.message)} (ignored: ${reason})`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// Show expired overrides as errors
|
|
71
|
+
if (result.expiredOverrides.length > 0) {
|
|
72
|
+
console.error(` Expired overrides (${result.expiredOverrides.length}):`);
|
|
73
|
+
for (const { error, reason, expiredDate } of result.expiredOverrides) {
|
|
74
|
+
console.error(` [${String(error.code)}] ${String(error.message)}`);
|
|
75
|
+
console.error(` Override expired: ${expiredDate} (reason: ${reason})`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
console.error('');
|
|
120
79
|
}
|
|
121
80
|
/**
|
|
122
|
-
*
|
|
81
|
+
* Output validation report to stdout (YAML) and stderr (human-readable)
|
|
123
82
|
*/
|
|
124
|
-
function
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
return
|
|
83
|
+
function outputValidationReport(results, duration, logger, verbose) {
|
|
84
|
+
// Output YAML to stdout (for programmatic parsing)
|
|
85
|
+
outputYamlSummary(results, duration, verbose);
|
|
86
|
+
// Output human-readable summary to stderr
|
|
87
|
+
const failedSkills = results.filter((r) => r.status === 'error');
|
|
88
|
+
if (failedSkills.length === 0) {
|
|
89
|
+
logger.info('\n✅ All validations passed');
|
|
90
|
+
return;
|
|
132
91
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
92
|
+
console.error('\n❌ Validation errors:\n');
|
|
93
|
+
for (const result of failedSkills) {
|
|
94
|
+
outputSkillErrors(result);
|
|
136
95
|
}
|
|
137
|
-
return ` ✅ ${result.skill}`;
|
|
138
96
|
}
|
|
139
97
|
/**
|
|
140
|
-
*
|
|
98
|
+
* Log error status progress
|
|
141
99
|
*/
|
|
142
|
-
function
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
100
|
+
function logErrorProgress(skill, result, logger) {
|
|
101
|
+
const activeCount = result.activeErrors.length;
|
|
102
|
+
const ignoredCount = result.ignoredErrors.length;
|
|
103
|
+
const expiredCount = result.expiredOverrides.length;
|
|
104
|
+
if (activeCount > 0) {
|
|
105
|
+
logger.error(` ❌ ${skill.name}: ${activeCount} error${activeCount === 1 ? '' : 's'}`);
|
|
106
|
+
}
|
|
107
|
+
if (ignoredCount > 0) {
|
|
108
|
+
logger.info(` (${ignoredCount} ignored by overrides)`);
|
|
109
|
+
}
|
|
110
|
+
if (expiredCount > 0) {
|
|
111
|
+
logger.error(` (${expiredCount} expired override${expiredCount === 1 ? '' : 's'})`);
|
|
146
112
|
}
|
|
147
113
|
}
|
|
148
114
|
/**
|
|
149
|
-
*
|
|
115
|
+
* Log success status progress
|
|
150
116
|
*/
|
|
151
|
-
function
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
skillsValidated: results.length,
|
|
155
|
-
results,
|
|
156
|
-
durationSecs: formatDurationSecs(duration),
|
|
157
|
-
};
|
|
158
|
-
// Output YAML to stdout (for programmatic parsing)
|
|
159
|
-
// js-yaml has truncation issues with very large objects (>80 results)
|
|
160
|
-
// Use JSON for large outputs to avoid truncation
|
|
161
|
-
if (results.length > 80) {
|
|
162
|
-
console.log(JSON.stringify(output, null, 2));
|
|
117
|
+
function logSuccessProgress(skill, ignoredCount, logger) {
|
|
118
|
+
if (ignoredCount > 0) {
|
|
119
|
+
logger.info(` ✅ ${skill.name} (${ignoredCount} ignored by overrides)`);
|
|
163
120
|
}
|
|
164
121
|
else {
|
|
165
|
-
|
|
122
|
+
logger.info(` ✅ ${skill.name}`);
|
|
166
123
|
}
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Log validation progress for a single skill
|
|
127
|
+
*/
|
|
128
|
+
function logSkillProgress(skill, result, logger) {
|
|
129
|
+
if (result.status === 'error') {
|
|
130
|
+
logErrorProgress(skill, result, logger);
|
|
171
131
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
console.error(` ${result.path}:`);
|
|
175
|
-
if (result.issues) {
|
|
176
|
-
for (const issue of result.issues) {
|
|
177
|
-
outputDetailedIssue(issue);
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
console.error('');
|
|
132
|
+
else {
|
|
133
|
+
logSuccessProgress(skill, result.ignoredErrors.length, logger);
|
|
181
134
|
}
|
|
182
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* Validate a single skill
|
|
138
|
+
*/
|
|
139
|
+
async function validateSingleSkill(skill, cwd, logger) {
|
|
140
|
+
const sourcePath = validateSkillSource(skill, cwd, logger);
|
|
141
|
+
logger.info(` Validating: ${skill.name}`);
|
|
142
|
+
logger.debug(` Source: ${skill.source}`);
|
|
143
|
+
const result = await validateSkillForPackaging(sourcePath, skill);
|
|
144
|
+
logSkillProgress(skill, result, logger);
|
|
145
|
+
return result;
|
|
146
|
+
}
|
|
183
147
|
/**
|
|
184
148
|
* Skills validate command implementation
|
|
185
149
|
*/
|
|
186
150
|
export async function validateCommand(pathArg, options) {
|
|
187
|
-
const logger =
|
|
188
|
-
const startTime = Date.now();
|
|
151
|
+
const { logger, cwd, startTime } = setupCommandContext(pathArg, options.debug);
|
|
189
152
|
try {
|
|
190
|
-
//
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
logger.info('🔍 Validating user-installed skills in ~/.claude');
|
|
197
|
-
const { plugins, skills } = await scanUserContext();
|
|
198
|
-
const allResources = [...plugins, ...skills];
|
|
199
|
-
const discoveredSkills = discoverSkills(allResources);
|
|
200
|
-
skillPaths = discoveredSkills.map(s => s.path);
|
|
201
|
-
strictMode = false; // Permissive with warnings
|
|
202
|
-
rootDir = process.cwd(); // Use cwd for resource validation context
|
|
203
|
-
}
|
|
204
|
-
else {
|
|
205
|
-
// Project context: use resources config
|
|
206
|
-
rootDir = pathArg ?? process.cwd();
|
|
207
|
-
logger.info(`🔍 Validating skills in: ${rootDir}`);
|
|
208
|
-
// Load project config
|
|
209
|
-
const config = loadConfig(rootDir);
|
|
210
|
-
// Use discovery package with config boundaries
|
|
211
|
-
const scanResult = await scan({
|
|
212
|
-
path: rootDir,
|
|
213
|
-
recursive: true,
|
|
214
|
-
include: config.resources?.include ?? ['**/*.md'],
|
|
215
|
-
exclude: config.resources?.exclude ?? [],
|
|
216
|
-
});
|
|
217
|
-
// Filter for skills (case-insensitive discovery)
|
|
218
|
-
const discoveredSkills = discoverSkills(scanResult.results);
|
|
219
|
-
skillPaths = discoveredSkills.map(s => s.path);
|
|
220
|
-
strictMode = true; // Strict errors
|
|
221
|
-
}
|
|
222
|
-
if (skillPaths.length === 0) {
|
|
223
|
-
logger.info(' No SKILL.md files found');
|
|
224
|
-
console.log(yaml.dump({
|
|
225
|
-
status: 'success',
|
|
226
|
-
skillsValidated: 0,
|
|
227
|
-
results: [],
|
|
228
|
-
durationSecs: formatDurationSecs(Date.now() - startTime),
|
|
229
|
-
}, { indent: 2, lineWidth: -1 }));
|
|
153
|
+
// Read package.json and filter skills
|
|
154
|
+
const packageJson = await readPackageJson(cwd);
|
|
155
|
+
const skills = packageJson.vat?.skills ?? [];
|
|
156
|
+
if (skills.length === 0) {
|
|
157
|
+
logger.info('ℹ️ No skills found in package.json vat.skills');
|
|
158
|
+
logger.info(' To add skills, define them in package.json under the vat.skills field');
|
|
230
159
|
process.exit(0);
|
|
231
160
|
}
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
//
|
|
235
|
-
const gitTracker = new GitTracker(rootDir);
|
|
236
|
-
await gitTracker.initialize();
|
|
161
|
+
const skillsToValidate = filterSkillsByName(skills, options.skill);
|
|
162
|
+
logger.info(`🔍 Found ${skillsToValidate.length} skill(s) to validate\n`);
|
|
163
|
+
// Validate each skill
|
|
237
164
|
const results = [];
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
const filenameCheck = validateSkillFilename(skillPath);
|
|
242
|
-
// 2b: Resource validation (markdown, links)
|
|
243
|
-
const resourceResult = await validateSkillAsResource(skillPath, rootDir, gitTracker);
|
|
244
|
-
// 2c: Skill-specific validation (reserved words, etc.)
|
|
245
|
-
const skillResult = await validateSkill({ skillPath, rootDir });
|
|
246
|
-
// 2d: Merge results
|
|
247
|
-
const unified = mergeValidationResults(skillPath, resourceResult, skillResult, filenameCheck, strictMode);
|
|
248
|
-
results.push(unified);
|
|
249
|
-
// Show progress
|
|
250
|
-
logger.info(formatSkillStatus(unified));
|
|
165
|
+
for (const skill of skillsToValidate) {
|
|
166
|
+
const result = await validateSingleSkill(skill, cwd, logger);
|
|
167
|
+
results.push(result);
|
|
251
168
|
}
|
|
252
|
-
//
|
|
169
|
+
// Output report and exit
|
|
253
170
|
const duration = Date.now() - startTime;
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
const hasErrors = results.some(r => r.totalErrors > 0);
|
|
171
|
+
const verbose = options.verbose === true;
|
|
172
|
+
outputValidationReport(results, duration, logger, verbose);
|
|
173
|
+
const hasErrors = results.some((r) => r.activeErrors.length > 0 || r.expiredOverrides.length > 0);
|
|
258
174
|
process.exit(hasErrors ? 1 : 0);
|
|
259
175
|
}
|
|
260
176
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/skills/validate.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/skills/validate.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.
|
|
3
|
+
"version": "0.1.12",
|
|
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 (vat-example-cat-agents, etc.) - users install those separately, not as CLI dependencies. Only vat-development-agents (contains vibe-agent-toolkit skill) should be included.",
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@anthropic-ai/sdk": "^0.71.2",
|
|
44
|
-
"@vibe-agent-toolkit/agent-config": "0.1.
|
|
45
|
-
"@vibe-agent-toolkit/agent-schema": "0.1.
|
|
46
|
-
"@vibe-agent-toolkit/agent-skills": "0.1.
|
|
47
|
-
"@vibe-agent-toolkit/discovery": "0.1.
|
|
48
|
-
"@vibe-agent-toolkit/gateway-mcp": "0.1.
|
|
49
|
-
"@vibe-agent-toolkit/rag": "0.1.
|
|
50
|
-
"@vibe-agent-toolkit/rag-lancedb": "0.1.
|
|
51
|
-
"@vibe-agent-toolkit/resources": "0.1.
|
|
52
|
-
"@vibe-agent-toolkit/utils": "0.1.
|
|
53
|
-
"@vibe-agent-toolkit/vat-development-agents": "0.1.
|
|
44
|
+
"@vibe-agent-toolkit/agent-config": "0.1.12",
|
|
45
|
+
"@vibe-agent-toolkit/agent-schema": "0.1.12",
|
|
46
|
+
"@vibe-agent-toolkit/agent-skills": "0.1.12",
|
|
47
|
+
"@vibe-agent-toolkit/discovery": "0.1.12",
|
|
48
|
+
"@vibe-agent-toolkit/gateway-mcp": "0.1.12",
|
|
49
|
+
"@vibe-agent-toolkit/rag": "0.1.12",
|
|
50
|
+
"@vibe-agent-toolkit/rag-lancedb": "0.1.12",
|
|
51
|
+
"@vibe-agent-toolkit/resources": "0.1.12",
|
|
52
|
+
"@vibe-agent-toolkit/utils": "0.1.12",
|
|
53
|
+
"@vibe-agent-toolkit/vat-development-agents": "0.1.12",
|
|
54
54
|
"adm-zip": "^0.5.16",
|
|
55
55
|
"commander": "^12.1.0",
|
|
56
56
|
"js-yaml": "^4.1.0",
|