skill-creator 1.1.1 → 1.2.1
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/cli.d.ts +2 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +111 -130
- package/dist/cli.js.map +1 -1
- package/dist/commands/shared.d.ts.map +1 -1
- package/dist/commands/shared.js +13 -3
- package/dist/commands/shared.js.map +1 -1
- package/dist/core/skillCreator.d.ts +0 -1
- package/dist/core/skillCreator.d.ts.map +1 -1
- package/dist/core/skillCreator.js +9 -30
- package/dist/core/skillCreator.js.map +1 -1
- package/dist/core/templateManager.d.ts +0 -1
- package/dist/core/templateManager.d.ts.map +1 -1
- package/dist/core/templateManager.js +0 -35
- package/dist/core/templateManager.js.map +1 -1
- package/dist/types/index.d.ts +1 -8
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/config.d.ts +5 -26
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +15 -31
- package/dist/utils/config.js.map +1 -1
- package/package.json +3 -1
- package/templates/SKILL.md +84 -0
- package/templates/SKILL.zh-CN.md +84 -0
package/dist/cli.d.ts
CHANGED
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;GAEG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AASnC,QAAA,MAAM,OAAO,SAAgB,CAAA;AAga7B,OAAO,EAAE,OAAO,EAAE,CAAA"}
|
package/dist/cli.js
CHANGED
|
@@ -7,6 +7,35 @@ import gradient from 'gradient-string';
|
|
|
7
7
|
import { SkillCreator } from './core/skillCreator.js';
|
|
8
8
|
import { PackageUtils } from './utils/package.js';
|
|
9
9
|
const program = new Command();
|
|
10
|
+
let globalOptions = {};
|
|
11
|
+
// Helper function to resolve skill directory from global or command options
|
|
12
|
+
async function resolveSkillDirectory(commandOptions) {
|
|
13
|
+
// Use command options first, then global options
|
|
14
|
+
const pwd = commandOptions.pwd || globalOptions.pwd;
|
|
15
|
+
if (pwd) {
|
|
16
|
+
return pwd;
|
|
17
|
+
}
|
|
18
|
+
if (commandOptions.package) {
|
|
19
|
+
const { join } = await import('node:path');
|
|
20
|
+
const { homedir } = await import('node:os');
|
|
21
|
+
const { readdirSync, existsSync } = await import('node:fs');
|
|
22
|
+
const findDir = (base) => {
|
|
23
|
+
if (!existsSync(base))
|
|
24
|
+
return undefined;
|
|
25
|
+
const dirs = readdirSync(base, { withFileTypes: true })
|
|
26
|
+
.filter((dirent) => dirent.isDirectory())
|
|
27
|
+
.map((dirent) => dirent.name)
|
|
28
|
+
.filter((name) => name.includes(commandOptions.package.replace(/[^a-z0-9]/gi, '')));
|
|
29
|
+
return dirs.length > 0 ? join(base, dirs[0]) : undefined;
|
|
30
|
+
};
|
|
31
|
+
const skillDir = findDir(join(process.cwd(), '.claude', 'skills')) ||
|
|
32
|
+
findDir(join(homedir(), '.claude', 'skills'));
|
|
33
|
+
if (skillDir) {
|
|
34
|
+
return skillDir;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
throw new Error('Could not find skill directory. Please provide --pwd or a valid --package.');
|
|
38
|
+
}
|
|
10
39
|
/**
|
|
11
40
|
* Helper function to create a skill for a package with interactive confirmation
|
|
12
41
|
*/
|
|
@@ -39,7 +68,13 @@ async function createSkillForPackage(skillDirName, packageName, scope, force = f
|
|
|
39
68
|
program
|
|
40
69
|
.name('skill-creator')
|
|
41
70
|
.description('Create claude-code-skills with documentation management')
|
|
42
|
-
.version('2.0.0')
|
|
71
|
+
.version('2.0.0')
|
|
72
|
+
.option('--pwd <path>', 'Global path to the skill directory (used for all commands)');
|
|
73
|
+
// Handle global options
|
|
74
|
+
program.hook('preAction', (thisCommand) => {
|
|
75
|
+
const options = thisCommand.opts();
|
|
76
|
+
globalOptions.pwd = options.pwd;
|
|
77
|
+
});
|
|
43
78
|
// Add create-cc-skill command
|
|
44
79
|
program
|
|
45
80
|
.command('create-cc-skill')
|
|
@@ -202,49 +237,31 @@ program
|
|
|
202
237
|
.option('--mode <mode>', 'Search mode: auto, fuzzy, or chroma', 'auto')
|
|
203
238
|
.option('--list', 'Show simplified list view (basic info only)', false)
|
|
204
239
|
.action(async (query, options) => {
|
|
205
|
-
let skillDir;
|
|
206
|
-
if (options.pwd) {
|
|
207
|
-
skillDir = options.pwd;
|
|
208
|
-
}
|
|
209
|
-
else if (options.package) {
|
|
210
|
-
const { join } = await import('node:path');
|
|
211
|
-
const { homedir } = await import('node:os');
|
|
212
|
-
const { readdirSync, existsSync } = await import('node:fs');
|
|
213
|
-
const findDir = (base) => {
|
|
214
|
-
if (!existsSync(base))
|
|
215
|
-
return undefined;
|
|
216
|
-
const dirs = readdirSync(base, { withFileTypes: true })
|
|
217
|
-
.filter((dirent) => dirent.isDirectory())
|
|
218
|
-
.map((dirent) => dirent.name)
|
|
219
|
-
.filter((name) => name.includes(options.package.replace(/[^a-z0-9]/gi, '')));
|
|
220
|
-
return dirs.length > 0 ? join(base, dirs[0]) : undefined;
|
|
221
|
-
};
|
|
222
|
-
skillDir =
|
|
223
|
-
findDir(join(process.cwd(), '.claude', 'skills')) ||
|
|
224
|
-
findDir(join(homedir(), '.claude', 'skills'));
|
|
225
|
-
}
|
|
226
|
-
if (!skillDir) {
|
|
227
|
-
console.error('❌ Could not find skill directory. Please provide --pwd or a valid --package.');
|
|
228
|
-
process.exit(1);
|
|
229
|
-
}
|
|
230
|
-
console.log(gradient('cyan', 'magenta')('\n🔍 Searching in skill...'));
|
|
231
|
-
console.log(`Skill Path: ${skillDir}`);
|
|
232
|
-
console.log(`Query: ${query}`);
|
|
233
|
-
const { chdir } = await import('node:process');
|
|
234
|
-
const originalCwd = process.cwd();
|
|
235
|
-
chdir(skillDir);
|
|
236
240
|
try {
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
241
|
+
const skillDir = await resolveSkillDirectory(options);
|
|
242
|
+
console.log(gradient('cyan', 'magenta')('\n🔍 Searching in skill...'));
|
|
243
|
+
console.log(`Skill Path: ${skillDir}`);
|
|
244
|
+
console.log(`Query: ${query}`);
|
|
245
|
+
const { chdir } = await import('node:process');
|
|
246
|
+
const originalCwd = process.cwd();
|
|
247
|
+
chdir(skillDir);
|
|
248
|
+
try {
|
|
249
|
+
const { runScript } = await import('./core/runScript.js');
|
|
250
|
+
const args = ['--query', query];
|
|
251
|
+
if (options.mode !== 'auto')
|
|
252
|
+
args.push('--mode', options.mode);
|
|
253
|
+
if (options.list)
|
|
254
|
+
args.push('--list');
|
|
255
|
+
// Enhanced search is now enabled by default, no need for --enhanced flag
|
|
256
|
+
await runScript('search-skill', args);
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
chdir(originalCwd);
|
|
260
|
+
}
|
|
245
261
|
}
|
|
246
|
-
|
|
247
|
-
|
|
262
|
+
catch (error) {
|
|
263
|
+
console.error(error);
|
|
264
|
+
process.exit(1);
|
|
248
265
|
}
|
|
249
266
|
});
|
|
250
267
|
// Add download-context7 command
|
|
@@ -256,51 +273,33 @@ program
|
|
|
256
273
|
.option('-f, --force', 'Force update even if up to date')
|
|
257
274
|
.option('--skip-chroma-indexing', 'Skip automatic ChromaDB index building after download')
|
|
258
275
|
.action(async (projectId, options) => {
|
|
259
|
-
let skillDir;
|
|
260
|
-
if (options.pwd) {
|
|
261
|
-
skillDir = options.pwd;
|
|
262
|
-
}
|
|
263
|
-
else if (options.package) {
|
|
264
|
-
const { join } = await import('node:path');
|
|
265
|
-
const { homedir } = await import('node:os');
|
|
266
|
-
const { readdirSync, existsSync } = await import('node:fs');
|
|
267
|
-
const findDir = (base) => {
|
|
268
|
-
if (!existsSync(base))
|
|
269
|
-
return undefined;
|
|
270
|
-
const dirs = readdirSync(base, { withFileTypes: true })
|
|
271
|
-
.filter((dirent) => dirent.isDirectory())
|
|
272
|
-
.map((dirent) => dirent.name)
|
|
273
|
-
.filter((name) => name.includes(options.package.replace(/[^a-z0-9]/gi, '')));
|
|
274
|
-
return dirs.length > 0 ? join(base, dirs[0]) : undefined;
|
|
275
|
-
};
|
|
276
|
-
skillDir =
|
|
277
|
-
findDir(join(process.cwd(), '.claude', 'skills')) ||
|
|
278
|
-
findDir(join(homedir(), '.claude', 'skills'));
|
|
279
|
-
}
|
|
280
|
-
if (!skillDir) {
|
|
281
|
-
console.error('❌ Could not find skill directory. Please provide --pwd or a valid --package.');
|
|
282
|
-
process.exit(1);
|
|
283
|
-
}
|
|
284
|
-
console.log(gradient('cyan', 'magenta')('\n📥 Downloading Context7 documentation...'));
|
|
285
|
-
console.log(`Skill Path: ${skillDir}`);
|
|
286
|
-
console.log(`Context7 ID: ${projectId}`);
|
|
287
|
-
const { chdir } = await import('node:process');
|
|
288
|
-
const originalCwd = process.cwd();
|
|
289
|
-
chdir(skillDir);
|
|
290
276
|
try {
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
277
|
+
const skillDir = await resolveSkillDirectory(options);
|
|
278
|
+
console.log(gradient('cyan', 'magenta')('\n📥 Downloading Context7 documentation...'));
|
|
279
|
+
console.log(`Skill Path: ${skillDir}`);
|
|
280
|
+
console.log(`Context7 ID: ${projectId}`);
|
|
281
|
+
const { chdir } = await import('node:process');
|
|
282
|
+
const originalCwd = process.cwd();
|
|
283
|
+
chdir(skillDir);
|
|
284
|
+
try {
|
|
285
|
+
const { runScript } = await import('./core/runScript.js');
|
|
286
|
+
const args = [];
|
|
287
|
+
if (options.force)
|
|
288
|
+
args.push('--force');
|
|
289
|
+
if (options['skip-chroma-indexing'])
|
|
290
|
+
args.push('--skip-chroma-indexing');
|
|
291
|
+
args.push('--project-id', projectId);
|
|
292
|
+
await runScript('download-context7', args);
|
|
293
|
+
}
|
|
294
|
+
finally {
|
|
295
|
+
chdir(originalCwd);
|
|
296
|
+
}
|
|
297
|
+
console.log(gradient('green', 'cyan')('\n✅ Documentation downloaded and sliced!'));
|
|
299
298
|
}
|
|
300
|
-
|
|
301
|
-
|
|
299
|
+
catch (error) {
|
|
300
|
+
console.error(error);
|
|
301
|
+
process.exit(1);
|
|
302
302
|
}
|
|
303
|
-
console.log(gradient('green', 'cyan')('\n✅ Documentation downloaded and sliced!'));
|
|
304
303
|
});
|
|
305
304
|
// Add add-skill command
|
|
306
305
|
program
|
|
@@ -317,55 +316,37 @@ program
|
|
|
317
316
|
console.error('❌ Please provide either --title or --file');
|
|
318
317
|
process.exit(1);
|
|
319
318
|
}
|
|
320
|
-
let skillDir;
|
|
321
|
-
if (options.pwd) {
|
|
322
|
-
skillDir = options.pwd;
|
|
323
|
-
}
|
|
324
|
-
else if (options.package) {
|
|
325
|
-
const { join } = await import('node:path');
|
|
326
|
-
const { homedir } = await import('node:os');
|
|
327
|
-
const { readdirSync, existsSync } = await import('node:fs');
|
|
328
|
-
const findDir = (base) => {
|
|
329
|
-
if (!existsSync(base))
|
|
330
|
-
return undefined;
|
|
331
|
-
const dirs = readdirSync(base, { withFileTypes: true })
|
|
332
|
-
.filter((dirent) => dirent.isDirectory())
|
|
333
|
-
.map((dirent) => dirent.name)
|
|
334
|
-
.filter((name) => name.includes(options.package.replace(/[^a-z0-9]/gi, '')));
|
|
335
|
-
return dirs.length > 0 ? join(base, dirs[0]) : undefined;
|
|
336
|
-
};
|
|
337
|
-
skillDir =
|
|
338
|
-
findDir(join(process.cwd(), '.claude', 'skills')) ||
|
|
339
|
-
findDir(join(homedir(), '.claude', 'skills'));
|
|
340
|
-
}
|
|
341
|
-
if (!skillDir) {
|
|
342
|
-
console.error('❌ Could not find skill directory. Please provide --pwd or a valid --package.');
|
|
343
|
-
process.exit(1);
|
|
344
|
-
}
|
|
345
|
-
console.log(gradient('cyan', 'magenta')('\n📝 Adding content to skill...'));
|
|
346
|
-
console.log(`Skill Path: ${skillDir}`);
|
|
347
|
-
const { chdir } = await import('node:process');
|
|
348
|
-
const originalCwd = process.cwd();
|
|
349
|
-
chdir(skillDir);
|
|
350
319
|
try {
|
|
351
|
-
const
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
320
|
+
const skillDir = await resolveSkillDirectory(options);
|
|
321
|
+
console.log(gradient('cyan', 'magenta')('\n📝 Adding content to skill...'));
|
|
322
|
+
console.log(`Skill Path: ${skillDir}`);
|
|
323
|
+
const { chdir } = await import('node:process');
|
|
324
|
+
const originalCwd = process.cwd();
|
|
325
|
+
chdir(skillDir);
|
|
326
|
+
try {
|
|
327
|
+
const { runScript } = await import('./core/runScript.js');
|
|
328
|
+
const args = [];
|
|
329
|
+
if (options.title)
|
|
330
|
+
args.push('--title', options.title);
|
|
331
|
+
if (options.content)
|
|
332
|
+
args.push('--content', options.content);
|
|
333
|
+
if (options.file)
|
|
334
|
+
args.push('--file', options.file);
|
|
335
|
+
if (options.force)
|
|
336
|
+
args.push('--force');
|
|
337
|
+
if (options.forceAppend)
|
|
338
|
+
args.push('--force-append');
|
|
339
|
+
await runScript('add', args);
|
|
340
|
+
}
|
|
341
|
+
finally {
|
|
342
|
+
chdir(originalCwd);
|
|
343
|
+
}
|
|
344
|
+
console.log(gradient('green', 'cyan')('\n✅ Content added successfully!'));
|
|
364
345
|
}
|
|
365
|
-
|
|
366
|
-
|
|
346
|
+
catch (error) {
|
|
347
|
+
console.error(error);
|
|
348
|
+
process.exit(1);
|
|
367
349
|
}
|
|
368
|
-
console.log(gradient('green', 'cyan')('\n✅ Content added successfully!'));
|
|
369
350
|
});
|
|
370
351
|
// Add sub-commands for script execution
|
|
371
352
|
program
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD;;GAEG;AACH,wBAAgB,eAAe,IAAI,WAAW,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD;;GAEG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAkB7C;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,EAAE,KAAK,CAAC;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,GAAG,CAAA;CACd,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAiDrB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,UAAU,GAAE,QAAQ,GAAG,OAAO,GAAG,MAAe,EAChD,aAAa,GAAE,OAAc,sDAuB9B"}
|
package/dist/commands/shared.js
CHANGED
|
@@ -10,10 +10,20 @@ import { Config } from '../utils/config.js';
|
|
|
10
10
|
export function loadSkillConfig() {
|
|
11
11
|
const configPath = join(process.cwd(), 'config.json');
|
|
12
12
|
if (!existsSync(configPath)) {
|
|
13
|
-
console.
|
|
14
|
-
|
|
13
|
+
console.warn('⚠️ config.json not found. Using default configuration.');
|
|
14
|
+
return {
|
|
15
|
+
name: 'unknown',
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
return Config.load(configPath);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.warn(`⚠️ Warning: Failed to load config.json. Using default configuration.`);
|
|
23
|
+
return {
|
|
24
|
+
name: 'unknown',
|
|
25
|
+
};
|
|
15
26
|
}
|
|
16
|
-
return Config.load(configPath);
|
|
17
27
|
}
|
|
18
28
|
/**
|
|
19
29
|
* Parse command line arguments
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAA;IAErD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
import type { CreateSkillOptions, CreateSkillResult } from '../types/index.js';
|
|
5
5
|
export declare class SkillCreator {
|
|
6
6
|
private templateDir;
|
|
7
|
-
private templateManager;
|
|
8
7
|
constructor();
|
|
9
8
|
createSkill(options: CreateSkillOptions): Promise<CreateSkillResult>;
|
|
10
9
|
private createDirectoryStructure;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillCreator.d.ts","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"skillCreator.d.ts","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAU9E,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAQ;;IAMrB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqF1E,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,iBAAiB;YAWX,yBAAyB;CA4BxC"}
|
|
@@ -5,13 +5,10 @@ import { join, resolve } from 'node:path';
|
|
|
5
5
|
import { existsSync, mkdirSync, writeFileSync, readdirSync, readFileSync } from 'node:fs';
|
|
6
6
|
import { homedir } from 'node:os';
|
|
7
7
|
import { Config } from '../utils/config.js';
|
|
8
|
-
import { TemplateManager } from './templateManager.js';
|
|
9
8
|
export class SkillCreator {
|
|
10
9
|
templateDir;
|
|
11
|
-
templateManager;
|
|
12
10
|
constructor() {
|
|
13
11
|
this.templateDir = join(import.meta.dirname, '../../templates');
|
|
14
|
-
this.templateManager = new TemplateManager();
|
|
15
12
|
}
|
|
16
13
|
async createSkill(options) {
|
|
17
14
|
const result = {
|
|
@@ -49,38 +46,22 @@ export class SkillCreator {
|
|
|
49
46
|
}
|
|
50
47
|
}
|
|
51
48
|
mkdirSync(skillDir, { recursive: true });
|
|
52
|
-
// Detect framework template
|
|
53
|
-
const template = this.templateManager.detectFramework(options.packageName);
|
|
54
49
|
// Create configuration
|
|
55
|
-
let context7Id = options.context7Id;
|
|
56
|
-
if (!context7Id && template?.context7Ids?.length) {
|
|
57
|
-
context7Id = template.context7Ids[0];
|
|
58
|
-
}
|
|
59
50
|
const config = Config.createDefault({
|
|
60
51
|
skillName,
|
|
61
|
-
|
|
62
|
-
context7Id: context7Id ?? `/${options.packageName.replace('@', '').replace('/', '__')}/docs`,
|
|
52
|
+
context7Id: options.context7Id ?? `/${options.packageName.replace('@', '').replace('/', '__')}/docs`,
|
|
63
53
|
});
|
|
64
|
-
// Set the actual version (not formatted) in config
|
|
65
|
-
config.version = version ?? '1.0.0';
|
|
66
|
-
// Apply template if detected
|
|
67
|
-
if (template) {
|
|
68
|
-
console.log(`\n📋 Detected framework: ${template.name}`);
|
|
69
|
-
this.templateManager.applyTemplate(template, skillDir, config);
|
|
70
|
-
}
|
|
71
54
|
// Create directory structure
|
|
72
55
|
await this.createDirectoryStructure(skillDir);
|
|
73
56
|
// Create basic config.json (minimal configuration)
|
|
74
57
|
const skillConfig = {
|
|
75
58
|
name: config.name,
|
|
76
|
-
description: config.description,
|
|
77
|
-
version: config.version,
|
|
78
59
|
packageName: options.packageName,
|
|
79
60
|
context7LibraryId: config.context7LibraryId,
|
|
80
61
|
};
|
|
81
62
|
this.createBasicConfig(skillDir, skillConfig);
|
|
82
63
|
// Create SKILL.md from template
|
|
83
|
-
await this.createSkillMdFromTemplate(skillDir, skillConfig);
|
|
64
|
+
await this.createSkillMdFromTemplate(skillDir, skillConfig, options);
|
|
84
65
|
result.created = true;
|
|
85
66
|
result.skillPath = skillDir;
|
|
86
67
|
result.message = `Skill created successfully: ${skillDir}`;
|
|
@@ -113,29 +94,27 @@ export class SkillCreator {
|
|
|
113
94
|
createBasicConfig(skillDir, config) {
|
|
114
95
|
const basicConfig = {
|
|
115
96
|
name: config.name,
|
|
116
|
-
description: config.description,
|
|
117
|
-
version: config.version,
|
|
118
97
|
packageName: config.packageName,
|
|
119
|
-
|
|
98
|
+
context7_library_id: '', // Will be filled by download-context7 command
|
|
120
99
|
};
|
|
121
100
|
const configPath = join(skillDir, 'config.json');
|
|
122
101
|
writeFileSync(configPath, JSON.stringify(basicConfig, null, 2));
|
|
123
102
|
}
|
|
124
|
-
async createSkillMdFromTemplate(skillDir, config) {
|
|
103
|
+
async createSkillMdFromTemplate(skillDir, config, options) {
|
|
125
104
|
const templatePath = join(this.templateDir, 'SKILL.md');
|
|
126
105
|
if (!existsSync(templatePath)) {
|
|
127
106
|
throw new Error(`SKILL.md template not found at ${templatePath}`);
|
|
128
107
|
}
|
|
129
108
|
let templateContent = readFileSync(templatePath, 'utf-8');
|
|
130
|
-
// Replace template variables with
|
|
109
|
+
// Replace template variables with options data
|
|
131
110
|
templateContent = templateContent
|
|
132
111
|
.replace(/{{NAME}}/g, config.name)
|
|
133
|
-
.replace(/{{DESCRIPTION}}/g,
|
|
112
|
+
.replace(/{{DESCRIPTION}}/g, options.description ||
|
|
134
113
|
`Specialized ${config.name} expert assistant providing comprehensive technical support`)
|
|
135
|
-
.replace(/{{PACKAGE_NAME}}/g, config.packageName
|
|
136
|
-
.replace(/{{LICENSE}}/g,
|
|
114
|
+
.replace(/{{PACKAGE_NAME}}/g, config.packageName)
|
|
115
|
+
.replace(/{{LICENSE}}/g, 'MIT')
|
|
137
116
|
.replace(/{{SKILL_PATH}}/g, skillDir)
|
|
138
|
-
.replace(/{{CONTEXT7_ID}}/g,
|
|
117
|
+
.replace(/{{CONTEXT7_ID}}/g, options.context7Id || '{{CONTEXT7_ID}}');
|
|
139
118
|
writeFileSync(join(skillDir, 'SKILL.md'), templateContent);
|
|
140
119
|
}
|
|
141
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillCreator.js","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAa,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEpG,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"skillCreator.js","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAa,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEpG,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAS3C,MAAM,OAAO,YAAY;IACf,WAAW,CAAQ;IAE3B;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;IACjE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAA2B;QAC3C,MAAM,MAAM,GAAsB;YAChC,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,eAAe,EAAE,KAAK;SACvB,CAAA;QAED,IAAI,CAAC;YACH,sBAAsB;YACtB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAA;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,MAAM,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;YAE9F,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,uCAAuC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YAC5E,CAAC;YAED,2BAA2B;YAC3B,MAAM,SAAS,GAAG,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,IAAI,OAAO,CAAC,CAAA;YAE7F,wBAAwB;YACxB,MAAM,UAAU,GACd,OAAO,CAAC,KAAK,KAAK,MAAM;gBACtB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC;gBACtC,CAAC,CAAC,OAAO,CAAC,IAAI;oBACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,uBAAuB;oBAC/C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;YAEhD,yBAAyB;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;YAE5C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;gBACnC,4BAA4B;gBAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,CAAA;gBACvD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBAC3C,MAAM,CAAC,OAAO,GAAG,oDAAoD,QAAQ,EAAE,CAAA;oBAC/E,OAAO,MAAM,CAAA;gBACf,CAAC;qBAAM,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjD,OAAO,CAAC,GAAG,CACT,oEAAoE,QAAQ,EAAE,CAC/E,CAAA;gBACH,CAAC;YACH,CAAC;YAED,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAExC,uBAAuB;YACvB,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;gBAClC,SAAS;gBACT,UAAU,EACR,OAAO,CAAC,UAAU,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO;aAC3F,CAAC,CAAA;YAEF,6BAA6B;YAC7B,MAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAA;YAE7C,mDAAmD;YACnD,MAAM,WAAW,GAAsB;gBACrC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;aAC5C,CAAA;YACD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;YAE7C,gCAAgC;YAChC,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;YAEpE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;YACrB,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAA;YAC3B,MAAM,CAAC,OAAO,GAAG,+BAA+B,QAAQ,EAAE,CAAA;YAE1D,wCAAwC;YACxC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC9C,0EAA0E;gBAC1E,MAAM,CAAC,eAAe,GAAG,KAAK,CAAA;gBAC9B,MAAM,CAAC,OAAO,IAAI,wDAAwD,CAAA;YAC5E,CAAC;YAED,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,GAAG,2BAA2B,KAAK,EAAE,CAAA;YACnD,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAEO,wBAAwB,CAAC,QAAgB;QAC/C,MAAM,IAAI,GAAG;YACX,4BAA4B;YAC5B,wBAAwB;YACxB,kBAAkB;YAClB,aAAa;SACd,CAAA;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YACnC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACvC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,MAAyB;QACnE,MAAM,WAAW,GAAG;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,mBAAmB,EAAE,EAAE,EAAE,8CAA8C;SACxE,CAAA;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;QAChD,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACjE,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,QAAgB,EAChB,MAAyB,EACzB,OAA2B;QAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QAEvD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAA;QACnE,CAAC;QAED,IAAI,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAEzD,+CAA+C;QAC/C,eAAe,GAAG,eAAe;aAC9B,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC;aACjC,OAAO,CACN,kBAAkB,EAClB,OAAO,CAAC,WAAW;YACjB,eAAe,MAAM,CAAC,IAAI,6DAA6D,CAC1F;aACA,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,WAAW,CAAC;aAChD,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC;aAC9B,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC;aACpC,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC,CAAA;QAEvE,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,eAAe,CAAC,CAAA;IAC5D,CAAC;CACF"}
|
|
@@ -8,7 +8,6 @@ export interface FrameworkTemplate {
|
|
|
8
8
|
context7Ids?: string[];
|
|
9
9
|
additionalDependencies?: Record<string, string>;
|
|
10
10
|
additionalScripts?: Record<string, string>;
|
|
11
|
-
customConfig?: Record<string, any>;
|
|
12
11
|
postCreateScript?: string;
|
|
13
12
|
}
|
|
14
13
|
export declare class TemplateManager {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateManager.d.ts","sourceRoot":"","sources":["../../src/core/templateManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAExE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,
|
|
1
|
+
{"version":3,"file":"templateManager.d.ts","sourceRoot":"","sources":["../../src/core/templateManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAExE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,SAAS,CAA4C;;IAS7D,OAAO,CAAC,aAAa;IAyHrB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIxD,eAAe,IAAI,iBAAiB,EAAE;IAItC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAoC9D,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI;IAiCxF,OAAO,CAAC,wBAAwB;IAkBhC,OAAO,CAAC,0BAA0B;IAiClC,OAAO,CAAC,4BAA4B;IAsGpC,OAAO,CAAC,2BAA2B;IAgGnC,OAAO,CAAC,yBAAyB;CAmJlC"}
|
|
@@ -22,11 +22,6 @@ export class TemplateManager {
|
|
|
22
22
|
'@types/react': '^18.2.0',
|
|
23
23
|
'@types/react-dom': '^18.2.0',
|
|
24
24
|
},
|
|
25
|
-
customConfig: {
|
|
26
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
27
|
-
chunkSize: 800,
|
|
28
|
-
chunkOverlap: 150,
|
|
29
|
-
},
|
|
30
25
|
});
|
|
31
26
|
this.templates.set('vue', {
|
|
32
27
|
name: 'Vue.js',
|
|
@@ -35,11 +30,6 @@ export class TemplateManager {
|
|
|
35
30
|
additionalDependencies: {
|
|
36
31
|
'@types/node': '^20.0.0',
|
|
37
32
|
},
|
|
38
|
-
customConfig: {
|
|
39
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
40
|
-
chunkSize: 1000,
|
|
41
|
-
chunkOverlap: 200,
|
|
42
|
-
},
|
|
43
33
|
});
|
|
44
34
|
this.templates.set('angular', {
|
|
45
35
|
name: 'Angular',
|
|
@@ -49,11 +39,6 @@ export class TemplateManager {
|
|
|
49
39
|
'@angular/common': '^17.0.0',
|
|
50
40
|
'@angular/core': '^17.0.0',
|
|
51
41
|
},
|
|
52
|
-
customConfig: {
|
|
53
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
54
|
-
chunkSize: 1200,
|
|
55
|
-
chunkOverlap: 250,
|
|
56
|
-
},
|
|
57
42
|
});
|
|
58
43
|
this.templates.set('express', {
|
|
59
44
|
name: 'Express.js',
|
|
@@ -77,11 +62,6 @@ export class TemplateManager {
|
|
|
77
62
|
react: '^18.0.0',
|
|
78
63
|
'react-dom': '^18.0.0',
|
|
79
64
|
},
|
|
80
|
-
customConfig: {
|
|
81
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
82
|
-
chunkSize: 1000,
|
|
83
|
-
chunkOverlap: 200,
|
|
84
|
-
},
|
|
85
65
|
});
|
|
86
66
|
this.templates.set('tanstack', {
|
|
87
67
|
name: 'TanStack',
|
|
@@ -131,11 +111,6 @@ export class TemplateManager {
|
|
|
131
111
|
'@nestjs/common': '^10.0.0',
|
|
132
112
|
'@nestjs/platform-express': '^10.0.0',
|
|
133
113
|
},
|
|
134
|
-
customConfig: {
|
|
135
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
136
|
-
chunkSize: 1200,
|
|
137
|
-
chunkOverlap: 250,
|
|
138
|
-
},
|
|
139
114
|
});
|
|
140
115
|
this.templates.set('fastify', {
|
|
141
116
|
name: 'Fastify',
|
|
@@ -205,16 +180,6 @@ export class TemplateManager {
|
|
|
205
180
|
writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2));
|
|
206
181
|
}
|
|
207
182
|
}
|
|
208
|
-
// Update config with template-specific settings
|
|
209
|
-
if (template.customConfig) {
|
|
210
|
-
const configPath = join(skillPath, 'config.json');
|
|
211
|
-
let existingConfig = {};
|
|
212
|
-
if (existsSync(configPath)) {
|
|
213
|
-
existingConfig = JSON.parse(readFileSync(configPath, 'utf-8'));
|
|
214
|
-
}
|
|
215
|
-
const updatedConfig = { ...existingConfig, ...template.customConfig };
|
|
216
|
-
writeFileSync(configPath, JSON.stringify(updatedConfig, null, 2));
|
|
217
|
-
}
|
|
218
183
|
// Create additional script files
|
|
219
184
|
if (template.additionalScripts) {
|
|
220
185
|
const scriptsDir = join(skillPath, 'scripts');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateManager.js","sourceRoot":"","sources":["../../src/core/templateManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"templateManager.js","sourceRoot":"","sources":["../../src/core/templateManager.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3,14 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export interface SkillConfig {
|
|
5
5
|
name: string;
|
|
6
|
-
|
|
7
|
-
context7LibraryId: string;
|
|
8
|
-
version: string;
|
|
9
|
-
chunkSize: number;
|
|
10
|
-
chunkOverlap: number;
|
|
11
|
-
embeddingModel: string;
|
|
12
|
-
similarityThreshold: number;
|
|
13
|
-
maxSearchResults: number;
|
|
6
|
+
context7LibraryId?: string;
|
|
14
7
|
}
|
|
15
8
|
export interface SearchResult {
|
|
16
9
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,UAAU,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,GAAG,UAAU,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,IAAI,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,KAAK,CAAC;QACrB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KAChB,CAAC,CAAA;IACF,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,8BAA8B,EAAE,MAAM,CAAA;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB"}
|
package/dist/utils/config.d.ts
CHANGED
|
@@ -5,43 +5,22 @@ import { z } from 'zod';
|
|
|
5
5
|
import type { SkillConfig } from '../types/index.js';
|
|
6
6
|
export declare const SkillConfigSchema: z.ZodObject<{
|
|
7
7
|
name: z.ZodString;
|
|
8
|
-
|
|
9
|
-
context7_library_id: z.ZodString;
|
|
10
|
-
version: z.ZodString;
|
|
11
|
-
chunk_size: z.ZodNumber;
|
|
12
|
-
chunk_overlap: z.ZodNumber;
|
|
13
|
-
embedding_model: z.ZodString;
|
|
14
|
-
similarity_threshold: z.ZodNumber;
|
|
15
|
-
max_search_results: z.ZodNumber;
|
|
8
|
+
context7_library_id: z.ZodOptional<z.ZodString>;
|
|
16
9
|
}, "strip", z.ZodTypeAny, {
|
|
17
10
|
name: string;
|
|
18
|
-
|
|
19
|
-
context7_library_id: string;
|
|
20
|
-
version: string;
|
|
21
|
-
chunk_size: number;
|
|
22
|
-
chunk_overlap: number;
|
|
23
|
-
embedding_model: string;
|
|
24
|
-
similarity_threshold: number;
|
|
25
|
-
max_search_results: number;
|
|
11
|
+
context7_library_id?: string | undefined;
|
|
26
12
|
}, {
|
|
27
13
|
name: string;
|
|
28
|
-
|
|
29
|
-
context7_library_id: string;
|
|
30
|
-
version: string;
|
|
31
|
-
chunk_size: number;
|
|
32
|
-
chunk_overlap: number;
|
|
33
|
-
embedding_model: string;
|
|
34
|
-
similarity_threshold: number;
|
|
35
|
-
max_search_results: number;
|
|
14
|
+
context7_library_id?: string | undefined;
|
|
36
15
|
}>;
|
|
37
16
|
export type SkillConfigInput = z.input<typeof SkillConfigSchema>;
|
|
38
17
|
export declare class Config {
|
|
39
18
|
static createDefault(options: {
|
|
40
19
|
skillName: string;
|
|
41
|
-
|
|
42
|
-
context7Id: string;
|
|
20
|
+
context7Id?: string;
|
|
43
21
|
}): SkillConfig;
|
|
44
22
|
static load(filePath: string): SkillConfig;
|
|
45
23
|
static save(config: SkillConfig, filePath: string): void;
|
|
24
|
+
static loadWithDefaults(filePath: string): SkillConfig;
|
|
46
25
|
}
|
|
47
26
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEhE,qBAAa,MAAM;IACjB,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,WAAW;IAOtF,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;IAgB1C,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAUxD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;CAWvD"}
|
package/dist/utils/config.js
CHANGED
|
@@ -5,27 +5,13 @@ import { z } from 'zod';
|
|
|
5
5
|
import { readFileSync, writeFileSync } from 'node:fs';
|
|
6
6
|
export const SkillConfigSchema = z.object({
|
|
7
7
|
name: z.string(),
|
|
8
|
-
|
|
9
|
-
context7_library_id: z.string(),
|
|
10
|
-
version: z.string(),
|
|
11
|
-
chunk_size: z.number(),
|
|
12
|
-
chunk_overlap: z.number(),
|
|
13
|
-
embedding_model: z.string(),
|
|
14
|
-
similarity_threshold: z.number(),
|
|
15
|
-
max_search_results: z.number(),
|
|
8
|
+
context7_library_id: z.string().optional(),
|
|
16
9
|
});
|
|
17
10
|
export class Config {
|
|
18
11
|
static createDefault(options) {
|
|
19
12
|
return {
|
|
20
13
|
name: options.skillName,
|
|
21
|
-
|
|
22
|
-
context7LibraryId: options.context7Id,
|
|
23
|
-
version: '1.0.0',
|
|
24
|
-
chunkSize: 1000,
|
|
25
|
-
chunkOverlap: 200,
|
|
26
|
-
embeddingModel: 'all-MiniLM-L6-v2',
|
|
27
|
-
similarityThreshold: 0.85,
|
|
28
|
-
maxSearchResults: 10,
|
|
14
|
+
context7LibraryId: options.context7Id || '',
|
|
29
15
|
};
|
|
30
16
|
}
|
|
31
17
|
static load(filePath) {
|
|
@@ -36,14 +22,7 @@ export class Config {
|
|
|
36
22
|
// Convert snake_case to camelCase
|
|
37
23
|
return {
|
|
38
24
|
name: config.name,
|
|
39
|
-
description: config.description,
|
|
40
25
|
context7LibraryId: config.context7_library_id,
|
|
41
|
-
version: config.version,
|
|
42
|
-
chunkSize: config.chunk_size,
|
|
43
|
-
chunkOverlap: config.chunk_overlap,
|
|
44
|
-
embeddingModel: config.embedding_model,
|
|
45
|
-
similarityThreshold: config.similarity_threshold,
|
|
46
|
-
maxSearchResults: config.max_search_results,
|
|
47
26
|
};
|
|
48
27
|
}
|
|
49
28
|
catch (error) {
|
|
@@ -54,16 +33,21 @@ export class Config {
|
|
|
54
33
|
// Convert camelCase to snake_case for JSON
|
|
55
34
|
const raw = {
|
|
56
35
|
name: config.name,
|
|
57
|
-
|
|
58
|
-
context7_library_id: config.context7LibraryId,
|
|
59
|
-
version: config.version,
|
|
60
|
-
chunk_size: config.chunkSize,
|
|
61
|
-
chunk_overlap: config.chunkOverlap,
|
|
62
|
-
embedding_model: config.embeddingModel,
|
|
63
|
-
similarity_threshold: config.similarityThreshold,
|
|
64
|
-
max_search_results: config.maxSearchResults,
|
|
36
|
+
context7_library_id: config.context7LibraryId || '',
|
|
65
37
|
};
|
|
66
38
|
writeFileSync(filePath, JSON.stringify(raw, null, 2));
|
|
67
39
|
}
|
|
40
|
+
static loadWithDefaults(filePath) {
|
|
41
|
+
try {
|
|
42
|
+
return this.load(filePath);
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
// If config file doesn't exist or is invalid, return a minimal default config
|
|
46
|
+
console.warn(`⚠️ Warning: Could not load config from ${filePath}. Using default values.`);
|
|
47
|
+
return {
|
|
48
|
+
name: 'unknown',
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
}
|
|
68
52
|
}
|
|
69
53
|
//# sourceMappingURL=config.js.map
|
package/dist/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAA;AAIF,MAAM,OAAO,MAAM;IACjB,MAAM,CAAC,aAAa,CAAC,OAAmD;QACtE,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,SAAS;YACvB,iBAAiB,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;SAC5C,CAAA;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAgB;QAC1B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC/B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAE3C,kCAAkC;YAClC,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,iBAAiB,EAAE,MAAM,CAAC,mBAAmB;aAC9C,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAmB,EAAE,QAAgB;QAC/C,2CAA2C;QAC3C,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,mBAAmB,EAAE,MAAM,CAAC,iBAAiB,IAAI,EAAE;SACpD,CAAA;QAED,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,QAAgB;QACtC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8EAA8E;YAC9E,OAAO,CAAC,IAAI,CAAC,2CAA2C,QAAQ,yBAAyB,CAAC,CAAA;YAC1F,OAAO;gBACL,IAAI,EAAE,SAAS;aAChB,CAAA;QACH,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "skill-creator",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "Create claude-code-skills with documentation management",
|
|
5
5
|
"bin": {
|
|
6
6
|
"skill-creator": "dist/cli.js"
|
|
@@ -42,6 +42,8 @@
|
|
|
42
42
|
"@types/markdown-it": "^14.1.2",
|
|
43
43
|
"@types/node": "^22.10.2",
|
|
44
44
|
"@vitest/coverage-v8": "^2.1.9",
|
|
45
|
+
"@vitest/ui": "^3.2.4",
|
|
46
|
+
"jsdom": "^27.0.1",
|
|
45
47
|
"prettier": "^3.4.2",
|
|
46
48
|
"tsx": "^4.19.2",
|
|
47
49
|
"typescript": "^5.7.2",
|
package/templates/SKILL.md
CHANGED
|
@@ -51,10 +51,94 @@ pnpm add {{PACKAGE_NAME}}
|
|
|
51
51
|
### Search Documentation Knowledge
|
|
52
52
|
Query {{NAME}} for information, API usage, best practices, and technical solutions:
|
|
53
53
|
|
|
54
|
+
#### Basic Search
|
|
54
55
|
```bash
|
|
55
56
|
skill-creator search-skill --pwd="{{SKILL_PATH}}" "search keywords"
|
|
56
57
|
```
|
|
57
58
|
|
|
59
|
+
#### Search Mode Selection
|
|
60
|
+
```bash
|
|
61
|
+
# Auto mode (default) - Intelligent search strategy selection
|
|
62
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=auto "search keywords"
|
|
63
|
+
|
|
64
|
+
# ChromaDB mode - Semantic search with contextual understanding
|
|
65
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "search keywords"
|
|
66
|
+
|
|
67
|
+
# Fuzzy mode - Keyword search with string fuzzy matching
|
|
68
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "search keywords"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
#### Search Modes Explained
|
|
72
|
+
|
|
73
|
+
**🤖 Auto Mode (Automatic Mode - Default)**
|
|
74
|
+
- **How it works**: First uses Fuzzy search for fast matching, if no satisfactory results are found, automatically switches to ChromaDB for semantic search
|
|
75
|
+
- **Best for**:
|
|
76
|
+
- When unsure which search method to use
|
|
77
|
+
- When you want the best search balance
|
|
78
|
+
- Daily quick query needs
|
|
79
|
+
- **Advantages**: Intelligent switching, balancing speed and accuracy, optimal user experience
|
|
80
|
+
|
|
81
|
+
**🧠 ChromaDB Mode (Semantic Search)**
|
|
82
|
+
- **How it works**: Based on vector database and semantic models, understands query intent and context for conceptual matching
|
|
83
|
+
- **Best for**:
|
|
84
|
+
- Conceptual queries ("how to handle state management")
|
|
85
|
+
- Functional searches ("methods for data validation")
|
|
86
|
+
- Complex queries requiring semantic understanding
|
|
87
|
+
- Finding related technical concepts and best practices
|
|
88
|
+
- **Advantages**: Understands query intent, can find semantically related content with different keywords, ideal for conceptual searches
|
|
89
|
+
- **Features**:
|
|
90
|
+
- Supports natural language queries
|
|
91
|
+
- Understands synonyms and related concepts
|
|
92
|
+
- Results ranked by semantic similarity
|
|
93
|
+
- Requires search index building
|
|
94
|
+
|
|
95
|
+
**🔍 Fuzzy Mode (Fuzzy Search)**
|
|
96
|
+
- **How it works**: Based on string fuzzy matching algorithms, quickly finds content containing specified keywords
|
|
97
|
+
- **Best for**:
|
|
98
|
+
- Precise keyword searches ("useQuery", "useState")
|
|
99
|
+
- API name and method lookups
|
|
100
|
+
- Configuration options and parameters
|
|
101
|
+
- Quick term location
|
|
102
|
+
- **Advantages**: Fast response, accurate keyword matching, suitable for finding specific APIs, config items, method names, etc.
|
|
103
|
+
- **Features**:
|
|
104
|
+
- Supports partial and fuzzy matching
|
|
105
|
+
- Fast search speed, no indexing required
|
|
106
|
+
- Ranked by keyword similarity
|
|
107
|
+
- Ideal for technical terms and code snippets
|
|
108
|
+
|
|
109
|
+
#### Practical Search Examples
|
|
110
|
+
|
|
111
|
+
**API and Method Queries** (Fuzzy mode recommended):
|
|
112
|
+
```bash
|
|
113
|
+
# Find specific API
|
|
114
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "useQuery"
|
|
115
|
+
|
|
116
|
+
# Find configuration options
|
|
117
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "baseURL configuration"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**Concept and Best Practice Queries** (ChromaDB mode recommended):
|
|
121
|
+
```bash
|
|
122
|
+
# Conceptual questions
|
|
123
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "how to optimize React component performance"
|
|
124
|
+
|
|
125
|
+
# Best practices
|
|
126
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "state management best practices"
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**Daily Queries** (Using Auto mode):
|
|
130
|
+
```bash
|
|
131
|
+
# Let system choose the best search method
|
|
132
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=auto "error handling"
|
|
133
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" "routing configuration" # --mode=auto is default
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
#### List Mode Display
|
|
137
|
+
For a simplified view of results, use list mode:
|
|
138
|
+
```bash
|
|
139
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --list "search keywords"
|
|
140
|
+
```
|
|
141
|
+
|
|
58
142
|
**Example Queries:**
|
|
59
143
|
- "how to create router"
|
|
60
144
|
- "state management best practices"
|
package/templates/SKILL.zh-CN.md
CHANGED
|
@@ -51,10 +51,94 @@ pnpm add {{PACKAGE_NAME}}
|
|
|
51
51
|
### 搜索文档知识点
|
|
52
52
|
查询{{NAME}}的相关信息、API使用、最佳实践等:
|
|
53
53
|
|
|
54
|
+
#### 基础搜索
|
|
54
55
|
```bash
|
|
55
56
|
skill-creator search-skill --pwd="{{SKILL_PATH}}" "搜索关键词"
|
|
56
57
|
```
|
|
57
58
|
|
|
59
|
+
#### 搜索模式选择
|
|
60
|
+
```bash
|
|
61
|
+
# 自动模式(默认)- 智能选择搜索策略
|
|
62
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=auto "搜索关键词"
|
|
63
|
+
|
|
64
|
+
# ChromaDB模式 - 语义化搜索,理解上下文含义
|
|
65
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "搜索关键词"
|
|
66
|
+
|
|
67
|
+
# Fuzzy模式 - 关键字搜索,字符串模糊匹配
|
|
68
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "搜索关键词"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
#### 搜索模式详解
|
|
72
|
+
|
|
73
|
+
**🤖 Auto 模式(自动模式,默认)**
|
|
74
|
+
- **工作原理**: 首先使用 Fuzzy 搜索进行快速匹配,如果没有找到满意结果,自动切换到 ChromaDB 进行语义搜索
|
|
75
|
+
- **适用场景**:
|
|
76
|
+
- 不确定使用哪种搜索方式时
|
|
77
|
+
- 希望获得最佳搜索平衡时
|
|
78
|
+
- 日常快速查询需求
|
|
79
|
+
- **优势**: 智能切换,兼顾速度和准确性,用户体验最佳
|
|
80
|
+
|
|
81
|
+
**🧠 ChromaDB 模式(语义搜索)**
|
|
82
|
+
- **工作原理**: 基于向量数据库和语义模型,理解查询意图和上下文含义,进行概念匹配
|
|
83
|
+
- **适用场景**:
|
|
84
|
+
- 概念性查询("如何处理状态管理")
|
|
85
|
+
- 功能性搜索("数据验证的方法")
|
|
86
|
+
- 需要理解语义的复杂查询
|
|
87
|
+
- 查找相关的技术概念和最佳实践
|
|
88
|
+
- **优势**: 理解查询意图,能找到语义相关但关键词不完全匹配的内容,适合概念性搜索
|
|
89
|
+
- **特点**:
|
|
90
|
+
- 支持自然语言查询
|
|
91
|
+
- 能理解同义词和相关概念
|
|
92
|
+
- 基于语义相似度排序结果
|
|
93
|
+
- 需要构建搜索索引
|
|
94
|
+
|
|
95
|
+
**🔍 Fuzzy 模式(模糊搜索)**
|
|
96
|
+
- **工作原理**: 基于字符串模糊匹配算法,快速查找包含指定关键词的内容
|
|
97
|
+
- **适用场景**:
|
|
98
|
+
- 精确关键词搜索("useQuery"、"useState")
|
|
99
|
+
- API名称和方法查找
|
|
100
|
+
- 配置项和参数搜索
|
|
101
|
+
- 快速定位特定术语
|
|
102
|
+
- **优势**: 响应速度快,关键词匹配精确,适合查找具体的API、配置项、方法名等
|
|
103
|
+
- **特点**:
|
|
104
|
+
- 支持部分匹配和模糊匹配
|
|
105
|
+
- 搜索速度快,无需索引
|
|
106
|
+
- 基于关键词相似度排序
|
|
107
|
+
- 适合技术术语和代码片段搜索
|
|
108
|
+
|
|
109
|
+
#### 实用搜索示例
|
|
110
|
+
|
|
111
|
+
**API 和方法查询**(推荐 Fuzzy 模式):
|
|
112
|
+
```bash
|
|
113
|
+
# 查找特定API
|
|
114
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "useQuery"
|
|
115
|
+
|
|
116
|
+
# 查找配置选项
|
|
117
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=fuzzy "baseURL配置"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**概念和最佳实践查询**(推荐 ChromaDB 模式):
|
|
121
|
+
```bash
|
|
122
|
+
# 概念性问题
|
|
123
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "如何优化React组件性能"
|
|
124
|
+
|
|
125
|
+
# 最佳实践
|
|
126
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=chroma "状态管理最佳实践"
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**日常查询**(使用 Auto 模式):
|
|
130
|
+
```bash
|
|
131
|
+
# 让系统自动选择最佳搜索方式
|
|
132
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --mode=auto "错误处理"
|
|
133
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" "路由配置" # --mode=auto 是默认值
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
#### 列表模式显示
|
|
137
|
+
如果只需要查看简要信息,可以使用列表模式:
|
|
138
|
+
```bash
|
|
139
|
+
skill-creator search-skill --pwd="{{SKILL_PATH}}" --list "搜索关键词"
|
|
140
|
+
```
|
|
141
|
+
|
|
58
142
|
**示例查询:**
|
|
59
143
|
- "如何创建router"
|
|
60
144
|
- "状态管理最佳实践"
|