@skillsmith/cli 0.1.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 (110) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/src/commands/author.d.ts +33 -0
  3. package/dist/src/commands/author.d.ts.map +1 -0
  4. package/dist/src/commands/author.js +337 -0
  5. package/dist/src/commands/author.js.map +1 -0
  6. package/dist/src/commands/index.d.ts +9 -0
  7. package/dist/src/commands/index.d.ts.map +1 -0
  8. package/dist/src/commands/index.js +12 -0
  9. package/dist/src/commands/index.js.map +1 -0
  10. package/dist/src/commands/manage.d.ts +37 -0
  11. package/dist/src/commands/manage.d.ts.map +1 -0
  12. package/dist/src/commands/manage.js +308 -0
  13. package/dist/src/commands/manage.js.map +1 -0
  14. package/dist/src/commands/search.d.ts +12 -0
  15. package/dist/src/commands/search.d.ts.map +1 -0
  16. package/dist/src/commands/search.js +316 -0
  17. package/dist/src/commands/search.js.map +1 -0
  18. package/dist/src/config.d.ts +19 -0
  19. package/dist/src/config.d.ts.map +1 -0
  20. package/dist/src/config.js +21 -0
  21. package/dist/src/config.js.map +1 -0
  22. package/dist/src/import.d.ts +29 -0
  23. package/dist/src/import.d.ts.map +1 -0
  24. package/dist/src/import.js +255 -0
  25. package/dist/src/import.js.map +1 -0
  26. package/dist/src/index.d.ts +16 -0
  27. package/dist/src/index.d.ts.map +1 -0
  28. package/dist/src/index.js +65 -0
  29. package/dist/src/index.js.map +1 -0
  30. package/dist/src/templates/index.d.ts +8 -0
  31. package/dist/src/templates/index.d.ts.map +1 -0
  32. package/dist/src/templates/index.js +8 -0
  33. package/dist/src/templates/index.js.map +1 -0
  34. package/dist/src/templates/readme.md.template.d.ts +8 -0
  35. package/dist/src/templates/readme.md.template.d.ts.map +1 -0
  36. package/dist/src/templates/readme.md.template.js +86 -0
  37. package/dist/src/templates/readme.md.template.js.map +1 -0
  38. package/dist/src/templates/skill.md.template.d.ts +8 -0
  39. package/dist/src/templates/skill.md.template.d.ts.map +1 -0
  40. package/dist/src/templates/skill.md.template.js +99 -0
  41. package/dist/src/templates/skill.md.template.js.map +1 -0
  42. package/dist/src/utils/license.d.ts +82 -0
  43. package/dist/src/utils/license.d.ts.map +1 -0
  44. package/dist/src/utils/license.js +282 -0
  45. package/dist/src/utils/license.js.map +1 -0
  46. package/dist/src/utils/license.test.d.ts +7 -0
  47. package/dist/src/utils/license.test.d.ts.map +1 -0
  48. package/dist/src/utils/license.test.js +303 -0
  49. package/dist/src/utils/license.test.js.map +1 -0
  50. package/dist/src/utils/sanitize.d.ts +30 -0
  51. package/dist/src/utils/sanitize.d.ts.map +1 -0
  52. package/dist/src/utils/sanitize.js +45 -0
  53. package/dist/src/utils/sanitize.js.map +1 -0
  54. package/dist/tests/author.test.d.ts +5 -0
  55. package/dist/tests/author.test.d.ts.map +1 -0
  56. package/dist/tests/author.test.js +149 -0
  57. package/dist/tests/author.test.js.map +1 -0
  58. package/dist/tests/e2e/author.e2e.test.d.ts +9 -0
  59. package/dist/tests/e2e/author.e2e.test.d.ts.map +1 -0
  60. package/dist/tests/e2e/author.e2e.test.js +346 -0
  61. package/dist/tests/e2e/author.e2e.test.js.map +1 -0
  62. package/dist/tests/e2e/import.e2e.test.d.ts +10 -0
  63. package/dist/tests/e2e/import.e2e.test.d.ts.map +1 -0
  64. package/dist/tests/e2e/import.e2e.test.js +213 -0
  65. package/dist/tests/e2e/import.e2e.test.js.map +1 -0
  66. package/dist/tests/e2e/manage.e2e.test.d.ts +9 -0
  67. package/dist/tests/e2e/manage.e2e.test.d.ts.map +1 -0
  68. package/dist/tests/e2e/manage.e2e.test.js +277 -0
  69. package/dist/tests/e2e/manage.e2e.test.js.map +1 -0
  70. package/dist/tests/e2e/search.e2e.test.d.ts +10 -0
  71. package/dist/tests/e2e/search.e2e.test.d.ts.map +1 -0
  72. package/dist/tests/e2e/search.e2e.test.js +267 -0
  73. package/dist/tests/e2e/search.e2e.test.js.map +1 -0
  74. package/dist/tests/e2e/test-config.d.ts +39 -0
  75. package/dist/tests/e2e/test-config.d.ts.map +1 -0
  76. package/dist/tests/e2e/test-config.js +44 -0
  77. package/dist/tests/e2e/test-config.js.map +1 -0
  78. package/dist/tests/e2e/utils/baseline-collector.d.ts +107 -0
  79. package/dist/tests/e2e/utils/baseline-collector.d.ts.map +1 -0
  80. package/dist/tests/e2e/utils/baseline-collector.js +211 -0
  81. package/dist/tests/e2e/utils/baseline-collector.js.map +1 -0
  82. package/dist/tests/e2e/utils/hardcoded-detector.d.ts +46 -0
  83. package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +1 -0
  84. package/dist/tests/e2e/utils/hardcoded-detector.js +197 -0
  85. package/dist/tests/e2e/utils/hardcoded-detector.js.map +1 -0
  86. package/dist/tests/e2e/utils/index.d.ts +8 -0
  87. package/dist/tests/e2e/utils/index.d.ts.map +1 -0
  88. package/dist/tests/e2e/utils/index.js +8 -0
  89. package/dist/tests/e2e/utils/index.js.map +1 -0
  90. package/dist/tests/e2e/utils/linear-reporter.d.ts +60 -0
  91. package/dist/tests/e2e/utils/linear-reporter.d.ts.map +1 -0
  92. package/dist/tests/e2e/utils/linear-reporter.js +223 -0
  93. package/dist/tests/e2e/utils/linear-reporter.js.map +1 -0
  94. package/dist/tests/import.test.d.ts +5 -0
  95. package/dist/tests/import.test.d.ts.map +1 -0
  96. package/dist/tests/import.test.js +11 -0
  97. package/dist/tests/import.test.js.map +1 -0
  98. package/dist/tests/manage.test.d.ts +5 -0
  99. package/dist/tests/manage.test.d.ts.map +1 -0
  100. package/dist/tests/manage.test.js +135 -0
  101. package/dist/tests/manage.test.js.map +1 -0
  102. package/dist/tests/search.test.d.ts +5 -0
  103. package/dist/tests/search.test.d.ts.map +1 -0
  104. package/dist/tests/search.test.js +91 -0
  105. package/dist/tests/search.test.js.map +1 -0
  106. package/dist/vitest.config.d.ts +3 -0
  107. package/dist/vitest.config.d.ts.map +1 -0
  108. package/dist/vitest.config.js +9 -0
  109. package/dist/vitest.config.js.map +1 -0
  110. package/package.json +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/commands/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * CLI Configuration
3
+ *
4
+ * Shared configuration constants for the Skillsmith CLI.
5
+ */
6
+ /**
7
+ * Default database path: ~/.skillsmith/skills.db
8
+ * This matches the seed script and MCP server defaults.
9
+ */
10
+ export declare const DEFAULT_DB_PATH: string;
11
+ /**
12
+ * Default skills installation directory: ~/.claude/skills
13
+ */
14
+ export declare const DEFAULT_SKILLS_DIR: string;
15
+ /**
16
+ * Default manifest path: ~/.skillsmith/manifest.json
17
+ */
18
+ export declare const DEFAULT_MANIFEST_PATH: string;
19
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;;GAGG;AACH,eAAO,MAAM,eAAe,QAA8C,CAAA;AAE1E;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAuC,CAAA;AAEtE;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAkD,CAAA"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * CLI Configuration
3
+ *
4
+ * Shared configuration constants for the Skillsmith CLI.
5
+ */
6
+ import { join } from 'path';
7
+ import { homedir } from 'os';
8
+ /**
9
+ * Default database path: ~/.skillsmith/skills.db
10
+ * This matches the seed script and MCP server defaults.
11
+ */
12
+ export const DEFAULT_DB_PATH = join(homedir(), '.skillsmith', 'skills.db');
13
+ /**
14
+ * Default skills installation directory: ~/.claude/skills
15
+ */
16
+ export const DEFAULT_SKILLS_DIR = join(homedir(), '.claude', 'skills');
17
+ /**
18
+ * Default manifest path: ~/.skillsmith/manifest.json
19
+ */
20
+ export const DEFAULT_MANIFEST_PATH = join(homedir(), '.skillsmith', 'manifest.json');
21
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAE5B;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,WAAW,CAAC,CAAA;AAE1E;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,eAAe,CAAC,CAAA"}
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * SMI-580: GitHub Skill Import Script
4
+ *
5
+ * Discovers and imports Claude skills from GitHub:
6
+ * - Searches for repos with topic:claude-skill
7
+ * - Extracts metadata from SKILL.md files
8
+ * - Handles rate limiting with exponential backoff
9
+ * - Supports batch import of 1000+ skills
10
+ */
11
+ interface ImportOptions {
12
+ token?: string;
13
+ topic?: string;
14
+ maxSkills?: number;
15
+ dbPath?: string;
16
+ verbose?: boolean;
17
+ }
18
+ interface ImportResult {
19
+ imported: number;
20
+ skipped: number;
21
+ errors: number;
22
+ duration: number;
23
+ }
24
+ /**
25
+ * Import skills from GitHub into the database
26
+ */
27
+ export declare function importSkills(options?: ImportOptions): Promise<ImportResult>;
28
+ export {};
29
+ //# sourceMappingURL=import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/import.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG;AA0BH,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,UAAU,YAAY;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB;AAsLD;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAyFrF"}
@@ -0,0 +1,255 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * SMI-580: GitHub Skill Import Script
4
+ *
5
+ * Discovers and imports Claude skills from GitHub:
6
+ * - Searches for repos with topic:claude-skill
7
+ * - Extracts metadata from SKILL.md files
8
+ * - Handles rate limiting with exponential backoff
9
+ * - Supports batch import of 1000+ skills
10
+ */
11
+ import { createDatabase, SkillRepository } from '@skillsmith/core';
12
+ import { DEFAULT_DB_PATH } from './config.js';
13
+ const DEFAULT_TOPIC = 'claude-skill';
14
+ const GITHUB_API = 'https://api.github.com';
15
+ const MAX_PER_PAGE = 100;
16
+ const RATE_LIMIT_DELAY = 60000; // 1 minute
17
+ /**
18
+ * Sleep for a specified duration
19
+ */
20
+ function sleep(ms) {
21
+ return new Promise((resolve) => setTimeout(resolve, ms));
22
+ }
23
+ /**
24
+ * Calculate exponential backoff delay
25
+ */
26
+ function getBackoffDelay(attempt, baseDelay = 1000) {
27
+ return Math.min(baseDelay * Math.pow(2, attempt), 30000);
28
+ }
29
+ /**
30
+ * Fetch from GitHub API with authentication and rate limiting
31
+ */
32
+ async function fetchGitHub(url, token, retries = 3) {
33
+ const headers = {
34
+ Accept: 'application/vnd.github+json',
35
+ 'X-GitHub-Api-Version': '2022-11-28',
36
+ };
37
+ if (token) {
38
+ headers['Authorization'] = `Bearer ${token}`;
39
+ }
40
+ for (let attempt = 0; attempt <= retries; attempt++) {
41
+ try {
42
+ const response = await fetch(url, { headers });
43
+ // Handle rate limiting
44
+ if (response.status === 403) {
45
+ const resetTime = response.headers.get('X-RateLimit-Reset');
46
+ if (resetTime) {
47
+ const waitTime = Math.max(0, parseInt(resetTime) * 1000 - Date.now());
48
+ console.log(`Rate limited. Waiting ${Math.ceil(waitTime / 1000)}s...`);
49
+ await sleep(Math.min(waitTime, RATE_LIMIT_DELAY));
50
+ continue;
51
+ }
52
+ }
53
+ if (!response.ok) {
54
+ throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
55
+ }
56
+ return (await response.json());
57
+ }
58
+ catch (error) {
59
+ if (attempt < retries) {
60
+ const delay = getBackoffDelay(attempt);
61
+ console.log(`Request failed, retrying in ${delay}ms...`);
62
+ await sleep(delay);
63
+ }
64
+ else {
65
+ throw error;
66
+ }
67
+ }
68
+ }
69
+ throw new Error('Max retries exceeded');
70
+ }
71
+ /**
72
+ * Fetch SKILL.md content from a repository
73
+ */
74
+ async function fetchSkillMd(repo, token) {
75
+ const url = `${GITHUB_API}/repos/${repo.full_name}/contents/SKILL.md`;
76
+ try {
77
+ const response = await fetchGitHub(url, token);
78
+ if (response.encoding === 'base64') {
79
+ return Buffer.from(response.content, 'base64').toString('utf-8');
80
+ }
81
+ return response.content;
82
+ }
83
+ catch {
84
+ return null;
85
+ }
86
+ }
87
+ /**
88
+ * Parse SKILL.md content to extract metadata
89
+ */
90
+ function parseSkillMd(content) {
91
+ const metadata = {};
92
+ // Extract name from first heading
93
+ const nameMatch = content.match(/^#\s+(.+)$/m);
94
+ if (nameMatch?.[1]) {
95
+ metadata.name = nameMatch[1].trim();
96
+ }
97
+ // Extract description from first paragraph after heading
98
+ const descMatch = content.match(/^#\s+.+\n+([^#\n].+)/m);
99
+ if (descMatch?.[1]) {
100
+ metadata.description = descMatch[1].trim();
101
+ }
102
+ // Extract tags from frontmatter or inline
103
+ const tagsMatch = content.match(/tags:\s*\[([^\]]+)\]/);
104
+ if (tagsMatch?.[1]) {
105
+ metadata.tags = tagsMatch[1].split(',').map((t) => t.trim().replace(/["']/g, ''));
106
+ }
107
+ // Extract author from frontmatter
108
+ const authorMatch = content.match(/author:\s*["']?([^"'\n]+)["']?/);
109
+ if (authorMatch?.[1]) {
110
+ metadata.author = authorMatch[1].trim();
111
+ }
112
+ return metadata;
113
+ }
114
+ /**
115
+ * Calculate quality score based on repo metrics
116
+ */
117
+ function calculateQualityScore(repo, hasSkillMd) {
118
+ let score = 0;
119
+ // Stars contribute up to 0.3
120
+ score += Math.min(repo.stargazers_count / 100, 0.3);
121
+ // Has SKILL.md contributes 0.3
122
+ if (hasSkillMd)
123
+ score += 0.3;
124
+ // Has description contributes 0.1
125
+ if (repo.description)
126
+ score += 0.1;
127
+ // Has topics contributes 0.1
128
+ if (repo.topics.length > 1)
129
+ score += 0.1;
130
+ // Recent activity contributes 0.2
131
+ const daysSinceUpdate = (Date.now() - new Date(repo.updated_at).getTime()) / (1000 * 60 * 60 * 24);
132
+ if (daysSinceUpdate < 30)
133
+ score += 0.2;
134
+ else if (daysSinceUpdate < 90)
135
+ score += 0.1;
136
+ return Math.min(score, 1);
137
+ }
138
+ /**
139
+ * Search for Claude skill repositories on GitHub
140
+ */
141
+ async function searchSkillRepos(topic, token, maxResults = 1000) {
142
+ const repos = [];
143
+ let page = 1;
144
+ while (repos.length < maxResults) {
145
+ const url = `${GITHUB_API}/search/repositories?q=topic:${topic}&sort=stars&order=desc&per_page=${MAX_PER_PAGE}&page=${page}`;
146
+ try {
147
+ const result = await fetchGitHub(url, token);
148
+ if (result.items.length === 0)
149
+ break;
150
+ repos.push(...result.items);
151
+ console.log(`Found ${repos.length}/${result.total_count} repositories...`);
152
+ if (repos.length >= result.total_count)
153
+ break;
154
+ page++;
155
+ // Rate limit protection
156
+ await sleep(1000);
157
+ }
158
+ catch (error) {
159
+ console.error('Search error:', error);
160
+ break;
161
+ }
162
+ }
163
+ return repos.slice(0, maxResults);
164
+ }
165
+ /**
166
+ * Import skills from GitHub into the database
167
+ */
168
+ export async function importSkills(options = {}) {
169
+ const { token = process.env['GITHUB_TOKEN'], topic = DEFAULT_TOPIC, maxSkills = 1000, dbPath = DEFAULT_DB_PATH, verbose = false, } = options;
170
+ const startTime = Date.now();
171
+ const result = {
172
+ imported: 0,
173
+ skipped: 0,
174
+ errors: 0,
175
+ duration: 0,
176
+ };
177
+ // Initialize database
178
+ const db = createDatabase(dbPath);
179
+ const skillRepo = new SkillRepository(db);
180
+ console.log(`Searching for repositories with topic: ${topic}...`);
181
+ try {
182
+ // Search for skill repositories
183
+ const repos = await searchSkillRepos(topic, token, maxSkills);
184
+ console.log(`\nProcessing ${repos.length} repositories...`);
185
+ // Prepare batch import
186
+ const skills = [];
187
+ for (const repo of repos) {
188
+ try {
189
+ // Check if already imported
190
+ if (skillRepo.findByRepoUrl(repo.html_url)) {
191
+ result.skipped++;
192
+ if (verbose)
193
+ console.log(`Skipped (exists): ${repo.full_name}`);
194
+ continue;
195
+ }
196
+ // Try to fetch SKILL.md
197
+ const skillMd = await fetchSkillMd(repo, token);
198
+ const skillMdMeta = skillMd ? parseSkillMd(skillMd) : {};
199
+ // Build skill data
200
+ const skill = {
201
+ name: skillMdMeta.name || repo.name,
202
+ description: skillMdMeta.description || repo.description || null,
203
+ author: skillMdMeta.author || repo.owner.login,
204
+ repoUrl: repo.html_url,
205
+ qualityScore: calculateQualityScore(repo, !!skillMd),
206
+ trustTier: skillMd ? 'community' : 'experimental',
207
+ tags: skillMdMeta.tags || repo.topics,
208
+ };
209
+ skills.push(skill);
210
+ if (verbose) {
211
+ console.log(`Prepared: ${skill.name} (${repo.full_name})`);
212
+ }
213
+ // Rate limit protection
214
+ await sleep(100);
215
+ }
216
+ catch (error) {
217
+ result.errors++;
218
+ console.error(`Error processing ${repo.full_name}:`, error);
219
+ }
220
+ }
221
+ // Batch insert all skills
222
+ if (skills.length > 0) {
223
+ console.log(`\nImporting ${skills.length} skills...`);
224
+ const imported = skillRepo.createBatch(skills);
225
+ result.imported = imported.length;
226
+ console.log(`Successfully imported ${result.imported} skills`);
227
+ }
228
+ }
229
+ finally {
230
+ db.close();
231
+ }
232
+ result.duration = Date.now() - startTime;
233
+ console.log(`\n--- Import Complete ---`);
234
+ console.log(`Imported: ${result.imported}`);
235
+ console.log(`Skipped: ${result.skipped}`);
236
+ console.log(`Errors: ${result.errors}`);
237
+ console.log(`Duration: ${(result.duration / 1000).toFixed(1)}s`);
238
+ return result;
239
+ }
240
+ // CLI entry point
241
+ if (import.meta.url === `file://${process.argv[1]}`) {
242
+ const args = process.argv.slice(2);
243
+ const verbose = args.includes('--verbose') || args.includes('-v');
244
+ const maxSkills = parseInt(args.find((a) => a.startsWith('--max='))?.split('=')[1] || '1000');
245
+ const dbPath = args.find((a) => a.startsWith('--db='))?.split('=')[1] || DEFAULT_DB_PATH;
246
+ importSkills({ verbose, maxSkills, dbPath })
247
+ .then((result) => {
248
+ process.exit(result.errors > 0 ? 1 : 0);
249
+ })
250
+ .catch((error) => {
251
+ console.error('Import failed:', error);
252
+ process.exit(1);
253
+ });
254
+ }
255
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Skillsmith CLI - Claude Skill Discovery Tools
4
+ *
5
+ * Commands:
6
+ * - import: Import skills from GitHub (SMI-580)
7
+ * - search: Search for skills with interactive mode (SMI-744)
8
+ * - list: List installed skills (SMI-745)
9
+ * - update: Update installed skills (SMI-745)
10
+ * - remove: Remove installed skills (SMI-745)
11
+ * - init: Initialize new skill project (SMI-746)
12
+ * - validate: Validate local SKILL.md (SMI-746)
13
+ * - publish: Prepare skill for sharing (SMI-746)
14
+ */
15
+ export {};
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG"}
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Skillsmith CLI - Claude Skill Discovery Tools
4
+ *
5
+ * Commands:
6
+ * - import: Import skills from GitHub (SMI-580)
7
+ * - search: Search for skills with interactive mode (SMI-744)
8
+ * - list: List installed skills (SMI-745)
9
+ * - update: Update installed skills (SMI-745)
10
+ * - remove: Remove installed skills (SMI-745)
11
+ * - init: Initialize new skill project (SMI-746)
12
+ * - validate: Validate local SKILL.md (SMI-746)
13
+ * - publish: Prepare skill for sharing (SMI-746)
14
+ */
15
+ import { Command } from 'commander';
16
+ import { importSkills } from './import.js';
17
+ import { createSearchCommand, createListCommand, createUpdateCommand, createRemoveCommand, createInitCommand, createValidateCommand, createPublishCommand, } from './commands/index.js';
18
+ import { DEFAULT_DB_PATH } from './config.js';
19
+ import { sanitizeError } from './utils/sanitize.js';
20
+ import { displayStartupHeader } from './utils/license.js';
21
+ const CLI_VERSION = '0.1.0';
22
+ const program = new Command();
23
+ program
24
+ .name('skillsmith')
25
+ .description('Claude Skill Discovery and Management CLI')
26
+ .version(CLI_VERSION);
27
+ // Display startup header with license status before parsing commands
28
+ // Use hook to display header before any command runs
29
+ program.hook('preAction', async () => {
30
+ await displayStartupHeader(CLI_VERSION);
31
+ });
32
+ // SMI-580: Import command
33
+ program
34
+ .command('import')
35
+ .description('Import skills from GitHub')
36
+ .option('-t, --topic <topic>', 'GitHub topic to search', 'claude-skill')
37
+ .option('-m, --max <number>', 'Maximum skills to import', '1000')
38
+ .option('-d, --db <path>', 'Database file path', DEFAULT_DB_PATH)
39
+ .option('-v, --verbose', 'Verbose output')
40
+ .action(async (options) => {
41
+ try {
42
+ await importSkills({
43
+ topic: options.topic,
44
+ maxSkills: parseInt(options.max),
45
+ dbPath: options.db,
46
+ ...(options.verbose !== undefined && { verbose: options.verbose }),
47
+ });
48
+ }
49
+ catch (error) {
50
+ console.error('Import failed:', sanitizeError(error));
51
+ process.exit(1);
52
+ }
53
+ });
54
+ // SMI-744: Search command with interactive mode
55
+ program.addCommand(createSearchCommand());
56
+ // SMI-745: Skill management commands
57
+ program.addCommand(createListCommand());
58
+ program.addCommand(createUpdateCommand());
59
+ program.addCommand(createRemoveCommand());
60
+ // SMI-746: Skill authoring commands
61
+ program.addCommand(createInitCommand());
62
+ program.addCommand(createValidateCommand());
63
+ program.addCommand(createPublishCommand());
64
+ program.parse();
65
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEzD,MAAM,WAAW,GAAG,OAAO,CAAA;AAE3B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,2CAA2C,CAAC;KACxD,OAAO,CAAC,WAAW,CAAC,CAAA;AAEvB,qEAAqE;AACrE,qDAAqD;AACrD,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;IACnC,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAA;AACzC,CAAC,CAAC,CAAA;AAEF,0BAA0B;AAC1B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,EAAE,cAAc,CAAC;KACvE,MAAM,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,CAAC;KAChE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACzC,MAAM,CAAC,KAAK,EAAE,OAAsE,EAAE,EAAE;IACvF,IAAI,CAAC;QACH,MAAM,YAAY,CAAC;YACjB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;YAChC,MAAM,EAAE,OAAO,CAAC,EAAE;YAClB,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;SACnE,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,gDAAgD;AAChD,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AAEzC,qCAAqC;AACrC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACvC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AACzC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AAEzC,oCAAoC;AACpC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACvC,OAAO,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAA;AAC3C,OAAO,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAA;AAE1C,OAAO,CAAC,KAAK,EAAE,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * CLI Templates
3
+ *
4
+ * Export all templates for skill scaffolding.
5
+ */
6
+ export { SKILL_MD_TEMPLATE } from './skill.md.template.js';
7
+ export { README_MD_TEMPLATE } from './readme.md.template.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * CLI Templates
3
+ *
4
+ * Export all templates for skill scaffolding.
5
+ */
6
+ export { SKILL_MD_TEMPLATE } from './skill.md.template.js';
7
+ export { README_MD_TEMPLATE } from './readme.md.template.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/templates/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * README.md Template
3
+ *
4
+ * Template for new skill README files.
5
+ */
6
+ export declare const README_MD_TEMPLATE = "# {{name}}\n\n{{description}}\n\n## Overview\n\nThis is a Claude Code skill that provides [describe functionality].\n\n## Installation\n\n### Via Skillsmith\n\n```bash\nskillsmith install {{name}}\n```\n\n### Manual Installation\n\n1. Clone or download this repository\n2. Copy to your skills directory:\n\n```bash\ncp -r {{name}} ~/.claude/skills/\n```\n\n## Quick Start\n\n1. Install the skill\n2. Start Claude Code\n3. Use the skill by [describe how to trigger]\n\n## Documentation\n\nSee [SKILL.md](./SKILL.md) for detailed documentation.\n\n## Development\n\n### Prerequisites\n\n- Node.js 18+\n- npm or pnpm\n\n### Setup\n\n```bash\n# Install dependencies (if any)\nnpm install\n\n# Run tests\nnpm test\n```\n\n### Project Structure\n\n```\n{{name}}/\n\u251C\u2500\u2500 SKILL.md # Skill definition and documentation\n\u251C\u2500\u2500 README.md # This file\n\u251C\u2500\u2500 scripts/ # Automation scripts\n\u2502 \u2514\u2500\u2500 example.js # Example script\n\u251C\u2500\u2500 resources/ # Static resources\n\u2514\u2500\u2500 .gitignore # Git ignore rules\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Submit a pull request\n\n## License\n\nMIT License\n\n## Author\n\nCreated with [Skillsmith](https://github.com/skillsmith/skillsmith)\n";
7
+ export default README_MD_TEMPLATE;
8
+ //# sourceMappingURL=readme.md.template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readme.md.template.d.ts","sourceRoot":"","sources":["../../../src/templates/readme.md.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,kBAAkB,g1CA8E9B,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * README.md Template
3
+ *
4
+ * Template for new skill README files.
5
+ */
6
+ export const README_MD_TEMPLATE = `# {{name}}
7
+
8
+ {{description}}
9
+
10
+ ## Overview
11
+
12
+ This is a Claude Code skill that provides [describe functionality].
13
+
14
+ ## Installation
15
+
16
+ ### Via Skillsmith
17
+
18
+ \`\`\`bash
19
+ skillsmith install {{name}}
20
+ \`\`\`
21
+
22
+ ### Manual Installation
23
+
24
+ 1. Clone or download this repository
25
+ 2. Copy to your skills directory:
26
+
27
+ \`\`\`bash
28
+ cp -r {{name}} ~/.claude/skills/
29
+ \`\`\`
30
+
31
+ ## Quick Start
32
+
33
+ 1. Install the skill
34
+ 2. Start Claude Code
35
+ 3. Use the skill by [describe how to trigger]
36
+
37
+ ## Documentation
38
+
39
+ See [SKILL.md](./SKILL.md) for detailed documentation.
40
+
41
+ ## Development
42
+
43
+ ### Prerequisites
44
+
45
+ - Node.js 18+
46
+ - npm or pnpm
47
+
48
+ ### Setup
49
+
50
+ \`\`\`bash
51
+ # Install dependencies (if any)
52
+ npm install
53
+
54
+ # Run tests
55
+ npm test
56
+ \`\`\`
57
+
58
+ ### Project Structure
59
+
60
+ \`\`\`
61
+ {{name}}/
62
+ ├── SKILL.md # Skill definition and documentation
63
+ ├── README.md # This file
64
+ ├── scripts/ # Automation scripts
65
+ │ └── example.js # Example script
66
+ ├── resources/ # Static resources
67
+ └── .gitignore # Git ignore rules
68
+ \`\`\`
69
+
70
+ ## Contributing
71
+
72
+ 1. Fork the repository
73
+ 2. Create a feature branch
74
+ 3. Make your changes
75
+ 4. Submit a pull request
76
+
77
+ ## License
78
+
79
+ MIT License
80
+
81
+ ## Author
82
+
83
+ Created with [Skillsmith](https://github.com/skillsmith/skillsmith)
84
+ `;
85
+ export default README_MD_TEMPLATE;
86
+ //# sourceMappingURL=readme.md.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readme.md.template.js","sourceRoot":"","sources":["../../../src/templates/readme.md.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8EjC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * SKILL.md Template
3
+ *
4
+ * Template for new skill SKILL.md files with YAML frontmatter.
5
+ */
6
+ export declare const SKILL_MD_TEMPLATE = "---\nname: {{name}}\ndescription: {{description}}\nauthor: {{author}}\nversion: 1.0.0\ncategory: {{category}}\ntags:\n - claude-skill\n - {{category}}\nlicense: MIT\ncreated: {{date}}\n---\n\n# {{name}}\n\n{{description}}\n\n## Features\n\n- Feature 1: Description of feature\n- Feature 2: Description of feature\n- Feature 3: Description of feature\n\n## Installation\n\n```bash\nskillsmith install {{name}}\n```\n\nOr manually:\n\n```bash\ncp -r . ~/.claude/skills/{{name}}\n```\n\n## Usage\n\n### Basic Usage\n\nDescribe how to use the skill with examples.\n\n### Commands\n\n| Command | Description |\n|---------|-------------|\n| `/example` | Description of example command |\n\n### Trigger Phrases\n\nThe skill responds to:\n- \"example phrase 1\"\n- \"example phrase 2\"\n\n## Configuration\n\n| Setting | Default | Description |\n|---------|---------|-------------|\n| `setting1` | `value` | Description |\n\n## Scripts\n\n### example.js\n\nLocated in `scripts/example.js`:\n\n```javascript\n// Your automation script here\n```\n\n## Resources\n\nFiles in the `resources/` directory:\n- `resource1.txt` - Description\n\n## Dependencies\n\nThis skill requires:\n- No external dependencies\n\n## Contributing\n\nContributions welcome! Please submit pull requests.\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## Changelog\n\n### 1.0.0 ({{date}})\n- Initial release\n";
7
+ export default SKILL_MD_TEMPLATE;
8
+ //# sourceMappingURL=skill.md.template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.md.template.d.ts","sourceRoot":"","sources":["../../../src/templates/skill.md.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,iBAAiB,s3CA2F7B,CAAA;AAED,eAAe,iBAAiB,CAAA"}