skill-creator 0.0.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/README.md +148 -19
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +265 -260
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/addContent.d.ts +5 -0
  6. package/dist/commands/addContent.d.ts.map +1 -0
  7. package/dist/commands/addContent.js +74 -0
  8. package/dist/commands/addContent.js.map +1 -0
  9. package/dist/commands/buildIndex.d.ts +5 -0
  10. package/dist/commands/buildIndex.d.ts.map +1 -0
  11. package/dist/commands/buildIndex.js +17 -0
  12. package/dist/commands/buildIndex.js.map +1 -0
  13. package/dist/commands/downloadContext7.d.ts +5 -0
  14. package/dist/commands/downloadContext7.d.ts.map +1 -0
  15. package/dist/commands/downloadContext7.js +62 -0
  16. package/dist/commands/downloadContext7.js.map +1 -0
  17. package/dist/commands/init.d.ts +5 -0
  18. package/dist/commands/init.d.ts.map +1 -0
  19. package/dist/commands/init.js +89 -0
  20. package/dist/commands/init.js.map +1 -0
  21. package/dist/commands/initCc.d.ts +5 -0
  22. package/dist/commands/initCc.d.ts.map +1 -0
  23. package/dist/commands/initCc.js +26 -0
  24. package/dist/commands/initCc.js.map +1 -0
  25. package/dist/commands/listContent.d.ts +5 -0
  26. package/dist/commands/listContent.d.ts.map +1 -0
  27. package/dist/commands/listContent.js +35 -0
  28. package/dist/commands/listContent.js.map +1 -0
  29. package/dist/commands/searchContent.d.ts +5 -0
  30. package/dist/commands/searchContent.d.ts.map +1 -0
  31. package/dist/commands/searchContent.js +98 -0
  32. package/dist/commands/searchContent.js.map +1 -0
  33. package/dist/commands/shared.d.ts +23 -0
  34. package/dist/commands/shared.d.ts.map +1 -0
  35. package/dist/commands/shared.js +92 -0
  36. package/dist/commands/shared.js.map +1 -0
  37. package/dist/commands/updateContext7.d.ts +5 -0
  38. package/dist/commands/updateContext7.d.ts.map +1 -0
  39. package/dist/commands/updateContext7.js +28 -0
  40. package/dist/commands/updateContext7.js.map +1 -0
  41. package/dist/core/autoSearchAdapter.d.ts +42 -0
  42. package/dist/core/autoSearchAdapter.d.ts.map +1 -0
  43. package/dist/core/autoSearchAdapter.js +116 -0
  44. package/dist/core/autoSearchAdapter.js.map +1 -0
  45. package/dist/core/chromaLocalSearch.d.ts +26 -0
  46. package/dist/core/chromaLocalSearch.d.ts.map +1 -0
  47. package/dist/core/chromaLocalSearch.js +212 -0
  48. package/dist/core/chromaLocalSearch.js.map +1 -0
  49. package/dist/core/chromaLocalSimple.d.ts +24 -0
  50. package/dist/core/chromaLocalSimple.d.ts.map +1 -0
  51. package/dist/core/chromaLocalSimple.js +216 -0
  52. package/dist/core/chromaLocalSimple.js.map +1 -0
  53. package/dist/core/chromaSearchAdapter.d.ts +86 -0
  54. package/dist/core/chromaSearchAdapter.d.ts.map +1 -0
  55. package/dist/core/chromaSearchAdapter.js +477 -0
  56. package/dist/core/chromaSearchAdapter.js.map +1 -0
  57. package/dist/core/chromaSearchImproved.d.ts +29 -0
  58. package/dist/core/chromaSearchImproved.d.ts.map +1 -0
  59. package/dist/core/chromaSearchImproved.js +259 -0
  60. package/dist/core/chromaSearchImproved.js.map +1 -0
  61. package/dist/core/chromaServerManager.d.ts +64 -0
  62. package/dist/core/chromaServerManager.d.ts.map +1 -0
  63. package/dist/core/chromaServerManager.js +186 -0
  64. package/dist/core/chromaServerManager.js.map +1 -0
  65. package/dist/core/contentManager.d.ts +1 -0
  66. package/dist/core/contentManager.d.ts.map +1 -1
  67. package/dist/core/contentManager.js +75 -21
  68. package/dist/core/contentManager.js.map +1 -1
  69. package/dist/core/fuseSearch.d.ts +25 -0
  70. package/dist/core/fuseSearch.d.ts.map +1 -0
  71. package/dist/core/fuseSearch.js +198 -0
  72. package/dist/core/fuseSearch.js.map +1 -0
  73. package/dist/core/fuzzySearch.d.ts +66 -0
  74. package/dist/core/fuzzySearch.d.ts.map +1 -0
  75. package/dist/core/fuzzySearch.js +271 -0
  76. package/dist/core/fuzzySearch.js.map +1 -0
  77. package/dist/core/fuzzySearchAdapter.d.ts +33 -0
  78. package/dist/core/fuzzySearchAdapter.d.ts.map +1 -0
  79. package/dist/core/fuzzySearchAdapter.js +185 -0
  80. package/dist/core/fuzzySearchAdapter.js.map +1 -0
  81. package/dist/core/portUtils.d.ts +51 -0
  82. package/dist/core/portUtils.d.ts.map +1 -0
  83. package/dist/core/portUtils.js +120 -0
  84. package/dist/core/portUtils.js.map +1 -0
  85. package/dist/core/runScript.d.ts +1 -1
  86. package/dist/core/runScript.d.ts.map +1 -1
  87. package/dist/core/runScript.js +27 -210
  88. package/dist/core/runScript.js.map +1 -1
  89. package/dist/core/searchAdapter.d.ts +48 -0
  90. package/dist/core/searchAdapter.d.ts.map +1 -0
  91. package/dist/core/searchAdapter.js +6 -0
  92. package/dist/core/searchAdapter.js.map +1 -0
  93. package/dist/core/searchEngineFactory.d.ts +30 -0
  94. package/dist/core/searchEngineFactory.d.ts.map +1 -0
  95. package/dist/core/searchEngineFactory.js +41 -0
  96. package/dist/core/searchEngineFactory.js.map +1 -0
  97. package/dist/core/simpleLocalSearch.d.ts +50 -0
  98. package/dist/core/simpleLocalSearch.d.ts.map +1 -0
  99. package/dist/core/simpleLocalSearch.js +406 -0
  100. package/dist/core/simpleLocalSearch.js.map +1 -0
  101. package/dist/core/skillCreator.d.ts +0 -2
  102. package/dist/core/skillCreator.d.ts.map +1 -1
  103. package/dist/core/skillCreator.js +20 -92
  104. package/dist/core/skillCreator.js.map +1 -1
  105. package/dist/core/unifiedSearch.d.ts +57 -11
  106. package/dist/core/unifiedSearch.d.ts.map +1 -1
  107. package/dist/core/unifiedSearch.js +88 -29
  108. package/dist/core/unifiedSearch.js.map +1 -1
  109. package/dist/index.d.ts +4 -1
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +3 -1
  112. package/dist/index.js.map +1 -1
  113. package/dist/search_format/enhancedFormatter.d.ts +109 -0
  114. package/dist/search_format/enhancedFormatter.d.ts.map +1 -0
  115. package/dist/search_format/enhancedFormatter.js +262 -0
  116. package/dist/search_format/enhancedFormatter.js.map +1 -0
  117. package/dist/search_format/index.d.ts +10 -0
  118. package/dist/search_format/index.d.ts.map +1 -0
  119. package/dist/search_format/index.js +22 -0
  120. package/dist/search_format/index.js.map +1 -0
  121. package/dist/search_format/listFormatter.d.ts +16 -0
  122. package/dist/search_format/listFormatter.d.ts.map +1 -0
  123. package/dist/search_format/listFormatter.js +51 -0
  124. package/dist/search_format/listFormatter.js.map +1 -0
  125. package/dist/search_format/types.d.ts +69 -0
  126. package/dist/search_format/types.d.ts.map +1 -0
  127. package/dist/search_format/types.js +5 -0
  128. package/dist/search_format/types.js.map +1 -0
  129. package/dist/test/testFuzzy.d.ts +3 -0
  130. package/dist/test/testFuzzy.d.ts.map +1 -0
  131. package/dist/test/testFuzzy.js +72 -0
  132. package/dist/test/testFuzzy.js.map +1 -0
  133. package/dist/test-fuzzy.d.ts +6 -0
  134. package/dist/test-fuzzy.d.ts.map +1 -0
  135. package/dist/test-fuzzy.js +65 -0
  136. package/dist/test-fuzzy.js.map +1 -0
  137. package/dist/types/index.d.ts +5 -0
  138. package/dist/types/index.d.ts.map +1 -1
  139. package/dist/utils/package.d.ts +17 -0
  140. package/dist/utils/package.d.ts.map +1 -1
  141. package/dist/utils/package.js +51 -14
  142. package/dist/utils/package.js.map +1 -1
  143. package/package.json +9 -8
  144. package/templates/skill-creator.md +65 -153
  145. package/templates/skill-creator.zh-CN.md +93 -0
@@ -0,0 +1,406 @@
1
+ /**
2
+ * 简化的本地搜索引擎
3
+ * 模拟 ChromaDB 的本地存储功能,但完全基于文件系统
4
+ * 专为 skill-creator 的嵌入式架构设计
5
+ */
6
+ import { readFile, writeFile, mkdir, readdir } from 'node:fs/promises';
7
+ import { join, dirname, extname } from 'node:path';
8
+ import { createHash } from 'node:crypto';
9
+ /**
10
+ * 简单的嵌入函数,基于文本哈希生成固定长度向量
11
+ */
12
+ class SimpleEmbeddingFunction {
13
+ async generate(texts) {
14
+ return texts.map((text) => {
15
+ // 基于文本内容生成简单的嵌入向量
16
+ const hash = createHash('sha256').update(text).digest('hex');
17
+ const vector = [];
18
+ for (let i = 0; i < hash.length; i += 2) {
19
+ vector.push(parseInt(hash.substr(i, 2), 16) / 255);
20
+ }
21
+ // 确保向量长度为1536(标准OpenAI嵌入维度)
22
+ while (vector.length < 1536) {
23
+ vector.push(0);
24
+ }
25
+ return vector.slice(0, 1536);
26
+ });
27
+ }
28
+ }
29
+ /**
30
+ * 计算余弦相似度
31
+ */
32
+ function cosineSimilarity(a, b) {
33
+ if (a.length !== b.length)
34
+ return 0;
35
+ let dotProduct = 0;
36
+ let normA = 0;
37
+ let normB = 0;
38
+ for (let i = 0; i < a.length; i++) {
39
+ dotProduct += a[i] * b[i];
40
+ normA += a[i] * a[i];
41
+ normB += b[i] * b[i];
42
+ }
43
+ normA = Math.sqrt(normA);
44
+ normB = Math.sqrt(normB);
45
+ if (normA === 0 || normB === 0)
46
+ return 0;
47
+ return dotProduct / (normA * normB);
48
+ }
49
+ export class SimpleLocalSearchEngine {
50
+ options;
51
+ embeddingFunction;
52
+ collectionData = null;
53
+ dataFile;
54
+ constructor(options) {
55
+ this.options = options;
56
+ this.embeddingFunction = new SimpleEmbeddingFunction();
57
+ this.dataFile = join(options.dbPath, `${options.collectionName}.json`);
58
+ }
59
+ async ensureDirectory() {
60
+ try {
61
+ await mkdir(dirname(this.dataFile), { recursive: true });
62
+ }
63
+ catch (error) {
64
+ // 目录已存在,忽略错误
65
+ }
66
+ }
67
+ async loadCollection() {
68
+ try {
69
+ const data = await readFile(this.dataFile, 'utf8');
70
+ this.collectionData = JSON.parse(data);
71
+ }
72
+ catch (error) {
73
+ // 文件不存在或损坏,创建新的集合
74
+ this.collectionData = {
75
+ documents: [],
76
+ lastIndex: 0,
77
+ };
78
+ }
79
+ }
80
+ async saveCollection() {
81
+ if (this.collectionData) {
82
+ await writeFile(this.dataFile, JSON.stringify(this.collectionData, null, 2));
83
+ }
84
+ }
85
+ async initialize() {
86
+ try {
87
+ await this.ensureDirectory();
88
+ await this.loadCollection();
89
+ return true;
90
+ }
91
+ catch (error) {
92
+ console.log('❌ 初始化本地搜索引擎失败:', error instanceof Error ? error.message : String(error));
93
+ return false;
94
+ }
95
+ }
96
+ async buildIndex(referencesDir, hashFile) {
97
+ const initialized = await this.initialize();
98
+ if (!initialized) {
99
+ throw new Error('无法初始化本地搜索引擎');
100
+ }
101
+ try {
102
+ // 计算文件哈希
103
+ const currentHash = await this.calculateDirectoryHash(referencesDir);
104
+ // 检查是否需要重建索引
105
+ let needsRebuild = true;
106
+ try {
107
+ const savedHash = await readFile(hashFile, 'utf8');
108
+ if (savedHash === currentHash) {
109
+ console.log('📦 文件未变化,跳过重建索引');
110
+ needsRebuild = false;
111
+ }
112
+ }
113
+ catch (error) {
114
+ // 哈希文件不存在,需要重建
115
+ }
116
+ if (!needsRebuild)
117
+ return;
118
+ console.log('🔧 构建本地搜索索引...');
119
+ // 清空现有集合
120
+ if (this.collectionData) {
121
+ this.collectionData.documents = [];
122
+ this.collectionData.lastIndex = 0;
123
+ }
124
+ // 读取并处理文档
125
+ const documents = await this.loadDocumentsFromDirectory(referencesDir);
126
+ if (documents.length === 0) {
127
+ console.log('⚠️ 没有找到文档');
128
+ return;
129
+ }
130
+ // 添加文档到集合
131
+ if (this.collectionData) {
132
+ for (const doc of documents) {
133
+ this.collectionData.documents.push(doc);
134
+ this.collectionData.lastIndex++;
135
+ }
136
+ }
137
+ // 保存数据
138
+ await this.saveCollection();
139
+ await writeFile(hashFile, currentHash);
140
+ console.log(`✅ 构建完成,共处理 ${documents.length} 个文档`);
141
+ }
142
+ catch (error) {
143
+ console.log('❌ 构建索引失败:', error instanceof Error ? error.message : String(error));
144
+ throw error;
145
+ }
146
+ }
147
+ async search(query, topK = 5, where) {
148
+ const initialized = await this.initialize();
149
+ if (!initialized || !this.collectionData) {
150
+ throw new Error('无法初始化本地搜索引擎');
151
+ }
152
+ try {
153
+ // 生成查询嵌入
154
+ const queryEmbeddings = await this.embeddingFunction.generate([query]);
155
+ const queryEmbedding = queryEmbeddings[0];
156
+ // 计算相似度
157
+ const scoredDocuments = this.collectionData.documents.map((doc) => ({
158
+ doc,
159
+ score: cosineSimilarity(queryEmbedding, doc.embedding),
160
+ }));
161
+ // 过滤和排序
162
+ let filteredDocs = scoredDocs;
163
+ if (where) {
164
+ // 简单的 where 过滤实现
165
+ filteredDocs = scoredDocs.filter(({ doc }) => {
166
+ for (const [key, value] of Object.entries(where)) {
167
+ if (doc.metadata[key] !== value) {
168
+ return false;
169
+ }
170
+ }
171
+ return true;
172
+ });
173
+ }
174
+ // 按相似度排序
175
+ filteredDocs.sort((a, b) => b.score - a.score);
176
+ // 转换为 SearchResult 格式
177
+ const searchResults = filteredDocs.slice(0, topK).map(({ doc, score }) => ({
178
+ id: doc.id,
179
+ source: 'context7', // 本地搜索主要用于 context7 文档
180
+ file_path: doc.metadata.filePath || doc.metadata.file_path || 'unknown',
181
+ title: doc.metadata.title || '未知文档',
182
+ content: doc.content,
183
+ score,
184
+ metadata: {
185
+ ...doc.metadata,
186
+ searchEngine: 'simple-local',
187
+ embeddingDimension: 1536,
188
+ similarity: score,
189
+ indexedAt: new Date().toISOString(),
190
+ },
191
+ }));
192
+ return searchResults;
193
+ }
194
+ catch (error) {
195
+ console.log('❌ 本地搜索失败:', error instanceof Error ? error.message : String(error));
196
+ throw error;
197
+ }
198
+ }
199
+ async searchByPriority(query, topK = 5) {
200
+ return this.search(query, topK);
201
+ }
202
+ async getStats() {
203
+ const initialized = await this.initialize();
204
+ if (!initialized || !this.collectionData) {
205
+ return { totalDocuments: 0 };
206
+ }
207
+ try {
208
+ return { totalDocuments: this.collectionData.documents.length };
209
+ }
210
+ catch (error) {
211
+ console.log('❌ 获取本地统计信息失败:', error instanceof Error ? error.message : String(error));
212
+ return { totalDocuments: 0 };
213
+ }
214
+ }
215
+ async calculateDirectoryHash(dirPath) {
216
+ const hash = createHash('md5');
217
+ hash.update(dirPath + Date.now());
218
+ return hash.digest('hex');
219
+ }
220
+ async loadDocumentsFromDirectory(dirPath) {
221
+ const documents = [];
222
+ try {
223
+ // 递归读取目录中的所有文件
224
+ const files = await this.getAllFiles(dirPath);
225
+ const supportedExtensions = [
226
+ '.md',
227
+ '.txt',
228
+ '.js',
229
+ '.ts',
230
+ '.jsx',
231
+ '.tsx',
232
+ '.py',
233
+ '.java',
234
+ '.cpp',
235
+ '.c',
236
+ '.go',
237
+ '.rs',
238
+ ];
239
+ // 过滤支持的文件类型
240
+ const validFiles = files.filter((file) => supportedExtensions.includes(extname(file).toLowerCase()));
241
+ if (validFiles.length === 0) {
242
+ console.log('⚠️ 没有找到支持的文档文件');
243
+ return documents;
244
+ }
245
+ console.log(`📄 找到 ${validFiles.length} 个文档文件`);
246
+ // 读取文件内容并生成文档
247
+ const contents = [];
248
+ const metadatas = [];
249
+ for (const filePath of validFiles) {
250
+ try {
251
+ const content = await readFile(filePath, 'utf8');
252
+ if (content.trim().length > 0) {
253
+ contents.push(content);
254
+ const relativePath = filePath.replace(dirPath, '').replace(/^\//, '');
255
+ const title = this.extractTitleFromContent(content) || this.generateTitleFromPath(relativePath);
256
+ metadatas.push({
257
+ title,
258
+ filePath: relativePath,
259
+ originalSource: 'filesystem',
260
+ size: content.length,
261
+ extension: extname(filePath).toLowerCase(),
262
+ indexedAt: new Date().toISOString(),
263
+ });
264
+ }
265
+ }
266
+ catch (error) {
267
+ console.log(`⚠️ 无法读取文件 ${filePath}:`, error instanceof Error ? error.message : String(error));
268
+ }
269
+ }
270
+ if (contents.length === 0) {
271
+ console.log('⚠️ 没有找到有效的文档内容');
272
+ return documents;
273
+ }
274
+ // 生成嵌入向量
275
+ console.log('🔢 生成文档嵌入向量...');
276
+ const embeddings = await this.embeddingFunction.generate(contents);
277
+ // 创建完整的文档对象
278
+ const loadedDocs = contents.map((content, index) => ({
279
+ id: this.generateDocumentId(metadatas[index].filePath),
280
+ content,
281
+ metadata: metadatas[index],
282
+ embedding: embeddings[index],
283
+ }));
284
+ documents.push(...loadedDocs);
285
+ console.log(`✅ 成功加载 ${documents.length} 个文档`);
286
+ }
287
+ catch (error) {
288
+ console.log('❌ 加载文档失败:', error instanceof Error ? error.message : String(error));
289
+ // 回退到示例文档
290
+ console.log('🔄 使用示例文档作为回退');
291
+ const fallbackDocs = await this.createSampleDocuments();
292
+ documents.push(...fallbackDocs);
293
+ }
294
+ return documents;
295
+ }
296
+ /**
297
+ * 递归获取目录中的所有文件
298
+ */
299
+ async getAllFiles(dirPath) {
300
+ const files = [];
301
+ try {
302
+ const entries = await readdir(dirPath, { withFileTypes: true });
303
+ for (const entry of entries) {
304
+ const fullPath = join(dirPath, entry.name);
305
+ if (entry.isDirectory()) {
306
+ // 递归处理子目录
307
+ const subFiles = await this.getAllFiles(fullPath);
308
+ files.push(...subFiles);
309
+ }
310
+ else if (entry.isFile()) {
311
+ // 添加文件
312
+ files.push(fullPath);
313
+ }
314
+ }
315
+ }
316
+ catch (error) {
317
+ console.log(`⚠️ 无法读取目录 ${dirPath}:`, error instanceof Error ? error.message : String(error));
318
+ }
319
+ return files;
320
+ }
321
+ /**
322
+ * 从内容中提取标题
323
+ */
324
+ extractTitleFromContent(content) {
325
+ const lines = content.split('\n');
326
+ // 查找第一个 Markdown 标题
327
+ for (const line of lines) {
328
+ const trimmedLine = line.trim();
329
+ if (trimmedLine.startsWith('# ')) {
330
+ return trimmedLine.replace(/^#\s+/, '').trim();
331
+ }
332
+ }
333
+ // 查找文件开头的注释或字符串字面量
334
+ const firstLine = lines[0]?.trim();
335
+ if (firstLine &&
336
+ (firstLine.startsWith('//') || firstLine.startsWith('#') || firstLine.startsWith('/*'))) {
337
+ return firstLine
338
+ .replace(/^(\/\/|#|\/\*)\s*/, '')
339
+ .replace(/\s*\*?\/?$/, '')
340
+ .trim();
341
+ }
342
+ return null;
343
+ }
344
+ /**
345
+ * 从文件路径生成标题
346
+ */
347
+ generateTitleFromPath(filePath) {
348
+ const fileName = filePath.split('/').pop() || filePath;
349
+ const nameWithoutExt = fileName.replace(/\.[^/.]+$/, '');
350
+ return nameWithoutExt.replace(/[-_]/g, ' ').replace(/\b\w/g, (l) => l.toUpperCase());
351
+ }
352
+ /**
353
+ * 生成文档ID
354
+ */
355
+ generateDocumentId(filePath) {
356
+ const hash = createHash('md5').update(filePath).digest('hex').substring(0, 8);
357
+ const sanitizedPath = filePath.replace(/[^a-zA-Z0-9]/g, '_').substring(0, 50);
358
+ return `${sanitizedPath}_${hash}`;
359
+ }
360
+ /**
361
+ * 创建示例文档(回退方案)
362
+ */
363
+ async createSampleDocuments() {
364
+ const sampleContents = [
365
+ 'TypeScript 是 JavaScript 的超集,添加了静态类型支持。接口定义了对象的形状契约。',
366
+ 'React 是一个用于构建用户界面的 JavaScript 库,组件是 React 的核心概念。',
367
+ 'Node.js 允许在服务器端运行 JavaScript 代码,模块系统是 Node.js 的重要特性。',
368
+ ];
369
+ const sampleMetadatas = [
370
+ {
371
+ title: 'TypeScript 基础',
372
+ filePath: 'typescript-basics.md',
373
+ originalSource: 'sample',
374
+ size: sampleContents[0].length,
375
+ extension: '.md',
376
+ indexedAt: new Date().toISOString(),
377
+ },
378
+ {
379
+ title: 'React 介绍',
380
+ filePath: 'react-intro.md',
381
+ originalSource: 'sample',
382
+ size: sampleContents[1].length,
383
+ extension: '.md',
384
+ indexedAt: new Date().toISOString(),
385
+ },
386
+ {
387
+ title: 'Node.js 服务器端开发',
388
+ filePath: 'nodejs-server.md',
389
+ originalSource: 'sample',
390
+ size: sampleContents[2].length,
391
+ extension: '.md',
392
+ indexedAt: new Date().toISOString(),
393
+ },
394
+ ];
395
+ // 生成嵌入向量
396
+ const embeddings = await this.embeddingFunction.generate(sampleContents);
397
+ // 创建完整的文档对象
398
+ return sampleContents.map((content, index) => ({
399
+ id: `sample_${index + 1}`,
400
+ content,
401
+ metadata: sampleMetadatas[index],
402
+ embedding: embeddings[index],
403
+ }));
404
+ }
405
+ }
406
+ //# sourceMappingURL=simpleLocalSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simpleLocalSearch.js","sourceRoot":"","sources":["../../src/core/simpleLocalSearch.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,5 @@ export declare class SkillCreator {
10
10
  private createDirectoryStructure;
11
11
  private createSkillMd;
12
12
  private createPackageJson;
13
- private createScripts;
14
- private createScriptWrapper;
15
13
  }
16
14
  //# sourceMappingURL=skillCreator.d.ts.map
@@ -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;AAI9E,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,eAAe,CAAiB;;IAUlC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoG1E,OAAO,CAAC,wBAAwB;IAgBhC,OAAO,CAAC,aAAa;IAwFrB,OAAO,CAAC,iBAAiB;IAiCzB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,mBAAmB;CAoD5B"}
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;AAI9E,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,eAAe,CAAiB;;IAUlC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsG1E,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,aAAa;IAuFrB,OAAO,CAAC,iBAAiB;CAsB1B"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Main skill creator class
3
3
  */
4
- import { join } from 'node:path';
5
- import { existsSync, mkdirSync, writeFileSync, chmodSync, readdirSync } from 'node:fs';
4
+ import { join, resolve } from 'node:path';
5
+ import { existsSync, mkdirSync, writeFileSync, readdirSync } from 'node:fs';
6
6
  import { homedir } from 'node:os';
7
7
  import { Config } from '../utils/config.js';
8
8
  import { TemplateManager } from './templateManager.js';
@@ -34,17 +34,22 @@ export class SkillCreator {
34
34
  // Determine output path
35
35
  const outputPath = options.storage === 'user'
36
36
  ? join(homedir(), '.claude', 'skills')
37
- : options.path ?? '.';
37
+ : options.path
38
+ ? resolve(options.path) // Ensure absolute path
39
+ : join(process.cwd(), '.claude', 'skills');
38
40
  // Create skill directory
39
41
  const skillDir = join(outputPath, skillName);
40
42
  if (existsSync(skillDir)) {
41
43
  const files = readdirSync(skillDir);
42
44
  // Filter out .gitkeep files
43
- const realFiles = files.filter(f => f !== '.gitkeep');
44
- if (realFiles.length > 0) {
45
+ const realFiles = files.filter((f) => f !== '.gitkeep');
46
+ if (realFiles.length > 0 && !options.force) {
45
47
  result.message = `Skill directory already exists and is not empty: ${skillDir}`;
46
48
  return result;
47
49
  }
50
+ else if (realFiles.length > 0 && options.force) {
51
+ console.log(`⚠️ Skill directory exists, forcing overwrite of existing files: ${skillDir}`);
52
+ }
48
53
  }
49
54
  mkdirSync(skillDir, { recursive: true });
50
55
  // Detect framework template
@@ -75,8 +80,6 @@ export class SkillCreator {
75
80
  await this.createSkillMd(skillDir, config);
76
81
  // Create package.json
77
82
  await this.createPackageJson(skillDir, config);
78
- // Create scripts
79
- await this.createScripts(skillDir);
80
83
  result.created = true;
81
84
  result.skillPath = skillDir;
82
85
  result.message = `Skill created successfully: ${skillDir}`;
@@ -95,7 +98,6 @@ export class SkillCreator {
95
98
  }
96
99
  createDirectoryStructure(skillDir) {
97
100
  const dirs = [
98
- 'scripts',
99
101
  'assets/references/context7',
100
102
  'assets/references/user',
101
103
  'assets/chroma_db',
@@ -130,31 +132,31 @@ This skill provides comprehensive documentation management for ${config.name}, f
130
132
  ### Search Documentation
131
133
  To search through the documentation:
132
134
  \`\`\`bash
133
- node scripts/search.js --query "your search query"
135
+ skill-creator search-skill --pwd "${skillDir}" "your search query"
134
136
  \`\`\`
135
137
 
136
138
  ### Add New Knowledge
137
139
  To add new documentation or knowledge:
138
140
  \`\`\`bash
139
- node scripts/add.js --content "your content" --title "content title"
141
+ skill-creator add-skill --pwd "${skillDir}" --title "content title" --content "your content"
140
142
  \`\`\`
141
143
 
142
144
  ### Update from Context7
143
145
  To refresh documentation from Context7:
144
146
  \`\`\`bash
145
- node scripts/update_context7.js
147
+ skill-creator download-context7 --pwd "${skillDir}" <context7_library_id>
146
148
  \`\`\`
147
149
 
148
150
  ### List All Content
149
151
  To list all documentation files:
150
152
  \`\`\`bash
151
- node scripts/list_content.js
153
+ cd "${skillDir}" && skill-creator run-script list-content
152
154
  \`\`\`
153
155
 
154
156
  ### Rebuild Search Index
155
157
  To manually rebuild the search index:
156
158
  \`\`\`bash
157
- node scripts/build_index.js
159
+ cd "${skillDir}" && skill-creator run-script build-index
158
160
  \`\`\`
159
161
 
160
162
  ## File Structure
@@ -162,7 +164,6 @@ node scripts/build_index.js
162
164
  - \`assets/references/context7/\` - Auto-generated Context7 documentation slices
163
165
  - \`assets/references/user/\` - User-generated knowledge and documentation
164
166
  - \`assets/chroma_db/\` - ChromaDB index for semantic search
165
- - \`scripts/\` - Management scripts for documentation operations
166
167
 
167
168
  ## Workflow
168
169
 
@@ -199,21 +200,14 @@ npm install
199
200
  version: config.version,
200
201
  description: config.description,
201
202
  type: 'module',
202
- scripts: {
203
- 'search': 'node scripts/search.js',
204
- 'add': 'node scripts/add.js',
205
- 'update-context7': 'node scripts/update_context7.js',
206
- 'build-index': 'node scripts/build_index.js',
207
- 'list-content': 'node scripts/list_content.js',
208
- },
209
203
  dependencies: {
210
- 'chromadb': '^1.8.1',
204
+ chromadb: '^1.8.1',
211
205
  'markdown-it': '^14.1.0',
212
- 'zod': '^3.24.0',
206
+ zod: '^3.24.0',
213
207
  'gradient-string': '^3.0.0',
214
- 'ora': '^8.1.0',
215
- 'inquirer': '^10.2.2',
216
- 'dedent': '^1.5.3',
208
+ ora: '^8.1.0',
209
+ inquirer: '^10.2.2',
210
+ dedent: '^1.5.3',
217
211
  },
218
212
  devDependencies: {
219
213
  '@types/node': '^22.10.2',
@@ -221,71 +215,5 @@ npm install
221
215
  };
222
216
  writeFileSync(join(skillDir, 'package.json'), JSON.stringify(content, null, 2));
223
217
  }
224
- createScripts(skillDir) {
225
- const scriptsDir = join(skillDir, 'scripts');
226
- // The scripts will reference the skill-creator package
227
- const scriptFiles = [
228
- 'search.js',
229
- 'add.js',
230
- 'update_context7.js',
231
- 'build_index.js',
232
- 'list_content.js',
233
- ];
234
- for (const script of scriptFiles) {
235
- const scriptPath = join(scriptsDir, script);
236
- this.createScriptWrapper(scriptPath, script.replace('.js', ''));
237
- }
238
- }
239
- createScriptWrapper(scriptPath, command) {
240
- const content = `#!/usr/bin/env node
241
- /**
242
- * Wrapper script for ${command}
243
- * This script forwards execution to the skill-creator package
244
- */
245
-
246
- import { spawn } from 'node:child_process'
247
- import { fileURLToPath } from 'node:url'
248
- import { dirname, join } from 'node:path'
249
- import { existsSync } from 'node:fs'
250
-
251
- const __filename = fileURLToPath(import.meta.url)
252
- const __dirname = dirname(__filename)
253
-
254
- // Find skill-creator CLI - try multiple possible paths
255
- let skillCreatorPath = process.env.SKILL_CREATOR_PATH || ''
256
-
257
- // If not set, try to find it
258
- if (!skillCreatorPath) {
259
- const possiblePaths = [
260
- join(__dirname, '..', '..', '..', '..', 'dist', 'cli.js'), // Relative to skill
261
- join(process.cwd(), 'dist', 'cli.js'), // From current working directory
262
- '/usr/local/bin/skill-creator', // Global installation
263
- '/Users/kzf/.claude/agents/skill-creator/dist/cli.js', // Default user path
264
- ]
265
-
266
- skillCreatorPath = possiblePaths.find(p => existsSync(p)) || ''
267
- }
268
-
269
- if (!skillCreatorPath) {
270
- console.error('❌ Could not find skill-creator CLI')
271
- console.error('💡 Please install skill-creator or set SKILL_CREATOR_PATH environment variable')
272
- process.exit(1)
273
- }
274
-
275
- const args = process.argv.slice(2)
276
-
277
- // Run the command
278
- const child = spawn('node', [skillCreatorPath, 'run-script', '${command}'.replace(/_/g, '-'), ...args], {
279
- stdio: 'inherit',
280
- cwd: join(__dirname, '..'),
281
- })
282
-
283
- child.on('exit', (code) => {
284
- process.exit(code ?? 1)
285
- })
286
- `;
287
- writeFileSync(scriptPath, content);
288
- chmodSync(scriptPath, 0o755);
289
- }
290
218
  }
291
219
  //# sourceMappingURL=skillCreator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skillCreator.js","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillCreator.js","sourceRoot":"","sources":["../../src/core/skillCreator.ts"],"names":[],"mappings":"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"}