@skillsmith/cli 0.3.1 → 0.3.3

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 (103) hide show
  1. package/README.md +57 -0
  2. package/assets/skillsmith-skill/SKILL.md +235 -0
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/src/commands/index.d.ts +2 -0
  5. package/dist/src/commands/index.d.ts.map +1 -1
  6. package/dist/src/commands/index.js +4 -0
  7. package/dist/src/commands/index.js.map +1 -1
  8. package/dist/src/commands/install-skill.d.ts +13 -0
  9. package/dist/src/commands/install-skill.d.ts.map +1 -0
  10. package/dist/src/commands/install-skill.js +137 -0
  11. package/dist/src/commands/install-skill.js.map +1 -0
  12. package/dist/src/commands/manage.d.ts +4 -1
  13. package/dist/src/commands/manage.d.ts.map +1 -1
  14. package/dist/src/commands/manage.js +60 -10
  15. package/dist/src/commands/manage.js.map +1 -1
  16. package/dist/src/commands/merge.d.ts +17 -0
  17. package/dist/src/commands/merge.d.ts.map +1 -0
  18. package/dist/src/commands/merge.js +160 -0
  19. package/dist/src/commands/merge.js.map +1 -0
  20. package/dist/src/commands/recommend-scoring.d.ts +29 -0
  21. package/dist/src/commands/recommend-scoring.d.ts.map +1 -0
  22. package/dist/src/commands/recommend-scoring.js +141 -0
  23. package/dist/src/commands/recommend-scoring.js.map +1 -0
  24. package/dist/src/commands/recommend.d.ts +1 -4
  25. package/dist/src/commands/recommend.d.ts.map +1 -1
  26. package/dist/src/commands/recommend.helpers.d.ts +40 -0
  27. package/dist/src/commands/recommend.helpers.d.ts.map +1 -0
  28. package/dist/src/commands/recommend.helpers.js +297 -0
  29. package/dist/src/commands/recommend.helpers.js.map +1 -0
  30. package/dist/src/commands/recommend.js +50 -372
  31. package/dist/src/commands/recommend.js.map +1 -1
  32. package/dist/src/commands/recommend.types.d.ts +66 -0
  33. package/dist/src/commands/recommend.types.d.ts.map +1 -0
  34. package/dist/src/commands/recommend.types.js +14 -0
  35. package/dist/src/commands/recommend.types.js.map +1 -0
  36. package/dist/src/commands/search-formatters.d.ts +35 -0
  37. package/dist/src/commands/search-formatters.d.ts.map +1 -0
  38. package/dist/src/commands/search-formatters.js +128 -0
  39. package/dist/src/commands/search-formatters.js.map +1 -0
  40. package/dist/src/commands/search-types.d.ts +46 -0
  41. package/dist/src/commands/search-types.d.ts.map +1 -0
  42. package/dist/src/commands/search-types.js +12 -0
  43. package/dist/src/commands/search-types.js.map +1 -0
  44. package/dist/src/commands/search.d.ts +3 -0
  45. package/dist/src/commands/search.d.ts.map +1 -1
  46. package/dist/src/commands/search.js +99 -89
  47. package/dist/src/commands/search.js.map +1 -1
  48. package/dist/src/config.d.ts +5 -0
  49. package/dist/src/config.d.ts.map +1 -1
  50. package/dist/src/config.js +7 -0
  51. package/dist/src/config.js.map +1 -1
  52. package/dist/src/index.d.ts +1 -0
  53. package/dist/src/index.d.ts.map +1 -1
  54. package/dist/src/index.js +11 -1
  55. package/dist/src/index.js.map +1 -1
  56. package/dist/src/templates/mcp-server.template.d.ts +2 -17
  57. package/dist/src/templates/mcp-server.template.d.ts.map +1 -1
  58. package/dist/src/templates/mcp-server.template.js +9 -108
  59. package/dist/src/templates/mcp-server.template.js.map +1 -1
  60. package/dist/src/templates/mcp-template-handlers.d.ts +33 -0
  61. package/dist/src/templates/mcp-template-handlers.d.ts.map +1 -0
  62. package/dist/src/templates/mcp-template-handlers.js +106 -0
  63. package/dist/src/templates/mcp-template-handlers.js.map +1 -0
  64. package/dist/src/templates/mcp-template-types.d.ts +48 -0
  65. package/dist/src/templates/mcp-template-types.d.ts.map +1 -0
  66. package/dist/src/templates/mcp-template-types.js +18 -0
  67. package/dist/src/templates/mcp-template-types.js.map +1 -0
  68. package/dist/src/utils/license-types.d.ts +88 -0
  69. package/dist/src/utils/license-types.d.ts.map +1 -0
  70. package/dist/src/utils/license-types.js +60 -0
  71. package/dist/src/utils/license-types.js.map +1 -0
  72. package/dist/src/utils/license-validation.d.ts +61 -0
  73. package/dist/src/utils/license-validation.d.ts.map +1 -0
  74. package/dist/src/utils/license-validation.js +198 -0
  75. package/dist/src/utils/license-validation.js.map +1 -0
  76. package/dist/src/utils/license.d.ts +4 -71
  77. package/dist/src/utils/license.d.ts.map +1 -1
  78. package/dist/src/utils/license.js +7 -241
  79. package/dist/src/utils/license.js.map +1 -1
  80. package/dist/src/utils/license.test.js +6 -1
  81. package/dist/src/utils/license.test.js.map +1 -1
  82. package/dist/src/utils/node-version.d.ts +41 -0
  83. package/dist/src/utils/node-version.d.ts.map +1 -0
  84. package/dist/src/utils/node-version.js +123 -0
  85. package/dist/src/utils/node-version.js.map +1 -0
  86. package/dist/tests/e2e/search.e2e.test.js +62 -6
  87. package/dist/tests/e2e/search.e2e.test.js.map +1 -1
  88. package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +1 -1
  89. package/dist/tests/e2e/utils/hardcoded-detector.js +44 -3
  90. package/dist/tests/e2e/utils/hardcoded-detector.js.map +1 -1
  91. package/dist/tests/install-skill.test.d.ts +8 -0
  92. package/dist/tests/install-skill.test.d.ts.map +1 -0
  93. package/dist/tests/install-skill.test.js +409 -0
  94. package/dist/tests/install-skill.test.js.map +1 -0
  95. package/dist/tests/manage.test.js +284 -8
  96. package/dist/tests/manage.test.js.map +1 -1
  97. package/dist/tests/node-version.test.d.ts +8 -0
  98. package/dist/tests/node-version.test.d.ts.map +1 -0
  99. package/dist/tests/node-version.test.js +200 -0
  100. package/dist/tests/node-version.test.js.map +1 -0
  101. package/dist/tests/recommend.test.js +94 -0
  102. package/dist/tests/recommend.test.js.map +1 -1
  103. package/package.json +9 -8
@@ -0,0 +1,35 @@
1
+ /**
2
+ * SMI-744: Search Command Formatters
3
+ *
4
+ * Display and formatting helpers for search results.
5
+ *
6
+ * @module @skillsmith/cli/commands/search-formatters
7
+ */
8
+ import type { SearchResult, TrustTier } from '@skillsmith/core';
9
+ import type { TrustTierColors } from './search-types.js';
10
+ /**
11
+ * Trust tier color mapping
12
+ * SMI-1809: Added 'local' tier color
13
+ */
14
+ export declare const TRUST_TIER_COLORS: TrustTierColors;
15
+ /**
16
+ * SMI-825: Format security status for display
17
+ */
18
+ export declare function formatSecurityStatus(skill: SearchResult['skill']): string;
19
+ /**
20
+ * Format a skill result for display with color coding
21
+ */
22
+ export declare function formatSkillRow(result: SearchResult): string[];
23
+ /**
24
+ * Display search results in a table format
25
+ */
26
+ export declare function displayResults(results: SearchResult[], total: number, offset: number, pageSize: number): void;
27
+ /**
28
+ * Display detailed skill information
29
+ */
30
+ export declare function displaySkillDetails(result: SearchResult): void;
31
+ /**
32
+ * Get color function for a trust tier
33
+ */
34
+ export declare function getTrustTierColor(tier: TrustTier): (text: string) => string;
35
+ //# sourceMappingURL=search-formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-formatters.d.ts","sourceRoot":"","sources":["../../../src/commands/search-formatters.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,eAM/B,CAAA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,MAAM,CAUzE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,CAa7D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,YAAY,EAAE,EACvB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,IAAI,CAwCN;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAsC9D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAE3E"}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * SMI-744: Search Command Formatters
3
+ *
4
+ * Display and formatting helpers for search results.
5
+ *
6
+ * @module @skillsmith/cli/commands/search-formatters
7
+ */
8
+ import chalk from 'chalk';
9
+ import Table from 'cli-table3';
10
+ /**
11
+ * Trust tier color mapping
12
+ * SMI-1809: Added 'local' tier color
13
+ */
14
+ export const TRUST_TIER_COLORS = {
15
+ verified: chalk.green,
16
+ community: chalk.yellow,
17
+ local: chalk.cyan, // SMI-1809: Cyan for local skills
18
+ experimental: chalk.red,
19
+ unknown: chalk.gray,
20
+ };
21
+ /**
22
+ * SMI-825: Format security status for display
23
+ */
24
+ export function formatSecurityStatus(skill) {
25
+ if (skill.securityPassed === null) {
26
+ return chalk.gray('--');
27
+ }
28
+ if (skill.securityPassed) {
29
+ const riskText = skill.riskScore !== null ? ` (${skill.riskScore})` : '';
30
+ return chalk.green('PASS' + riskText);
31
+ }
32
+ const riskText = skill.riskScore !== null ? ` (${skill.riskScore})` : '';
33
+ return chalk.red('FAIL' + riskText);
34
+ }
35
+ /**
36
+ * Format a skill result for display with color coding
37
+ */
38
+ export function formatSkillRow(result) {
39
+ const { skill } = result;
40
+ const colorFn = TRUST_TIER_COLORS[skill.trustTier];
41
+ const score = skill.qualityScore !== null ? (skill.qualityScore * 100).toFixed(0) + '%' : 'N/A';
42
+ return [
43
+ colorFn(skill.name),
44
+ skill.description?.slice(0, 40) || 'No description',
45
+ skill.author || 'Unknown',
46
+ colorFn(skill.trustTier),
47
+ score,
48
+ formatSecurityStatus(skill), // SMI-825: Security status
49
+ ];
50
+ }
51
+ /**
52
+ * Display search results in a table format
53
+ */
54
+ export function displayResults(results, total, offset, pageSize) {
55
+ if (results.length === 0) {
56
+ console.log(chalk.yellow('\nNo skills found matching your criteria.\n'));
57
+ return;
58
+ }
59
+ const table = new Table({
60
+ head: [
61
+ chalk.bold('Name'),
62
+ chalk.bold('Description'),
63
+ chalk.bold('Author'),
64
+ chalk.bold('Trust Tier'),
65
+ chalk.bold('Quality'),
66
+ chalk.bold('Security'), // SMI-825: Security column
67
+ ],
68
+ colWidths: [20, 42, 18, 13, 10, 12],
69
+ wordWrap: true,
70
+ });
71
+ for (const result of results) {
72
+ table.push(formatSkillRow(result));
73
+ }
74
+ console.log(table.toString());
75
+ const currentPage = Math.floor(offset / pageSize) + 1;
76
+ const totalPages = Math.ceil(total / pageSize);
77
+ console.log(chalk.dim(`\nShowing ${offset + 1}-${offset + results.length} of ${total} results (Page ${currentPage}/${totalPages})`));
78
+ console.log(chalk.dim('Legend: ') +
79
+ chalk.green('verified') +
80
+ ' | ' +
81
+ chalk.yellow('community') +
82
+ ' | ' +
83
+ chalk.red('experimental'));
84
+ }
85
+ /**
86
+ * Display detailed skill information
87
+ */
88
+ export function displaySkillDetails(result) {
89
+ const { skill } = result;
90
+ console.log('\n' + chalk.bold.underline(skill.name) + '\n');
91
+ const colorFn = TRUST_TIER_COLORS[skill.trustTier];
92
+ console.log(chalk.bold('Description: ') + (skill.description || 'No description'));
93
+ console.log(chalk.bold('Author: ') + (skill.author || 'Unknown'));
94
+ console.log(chalk.bold('Trust Tier: ') + colorFn(skill.trustTier));
95
+ console.log(chalk.bold('Quality Score: ') +
96
+ (skill.qualityScore !== null ? (skill.qualityScore * 100).toFixed(0) + '%' : 'N/A'));
97
+ console.log(chalk.bold('Tags: ') + (skill.tags.length > 0 ? skill.tags.join(', ') : 'None'));
98
+ console.log(chalk.bold('Repository: ') + (skill.repoUrl || 'N/A'));
99
+ // SMI-825: Security information
100
+ console.log(chalk.bold('\nSecurity Status:'));
101
+ if (skill.securityPassed === null) {
102
+ console.log(' Status: ' + chalk.gray('Not scanned'));
103
+ }
104
+ else if (skill.securityPassed) {
105
+ console.log(' Status: ' + chalk.green('PASSED'));
106
+ console.log(' Risk Score: ' + chalk.green((skill.riskScore ?? 0) + '/100'));
107
+ console.log(' Findings: ' + (skill.securityFindingsCount ?? 0));
108
+ }
109
+ else {
110
+ console.log(' Status: ' + chalk.red('FAILED'));
111
+ console.log(' Risk Score: ' + chalk.red((skill.riskScore ?? 0) + '/100'));
112
+ console.log(' Findings: ' + chalk.red(skill.securityFindingsCount ?? 0));
113
+ }
114
+ if (skill.securityScannedAt) {
115
+ console.log(' Scanned: ' + skill.securityScannedAt);
116
+ }
117
+ console.log(chalk.bold('\nDates:'));
118
+ console.log(' Created: ' + skill.createdAt);
119
+ console.log(' Updated: ' + skill.updatedAt);
120
+ console.log();
121
+ }
122
+ /**
123
+ * Get color function for a trust tier
124
+ */
125
+ export function getTrustTierColor(tier) {
126
+ return TRUST_TIER_COLORS[tier];
127
+ }
128
+ //# sourceMappingURL=search-formatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-formatters.js","sourceRoot":"","sources":["../../../src/commands/search-formatters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * SMI-744: Search Command Types
3
+ *
4
+ * Type definitions for the interactive search command.
5
+ *
6
+ * @module @skillsmith/cli/commands/search-types
7
+ */
8
+ import type { TrustTier } from '@skillsmith/core';
9
+ /**
10
+ * Color functions for trust tier display
11
+ */
12
+ export type TrustTierColorFn = (text: string) => string;
13
+ /**
14
+ * Trust tier color configuration
15
+ */
16
+ export type TrustTierColors = Record<TrustTier, TrustTierColorFn>;
17
+ /**
18
+ * Interactive search state machine state
19
+ */
20
+ export interface InteractiveSearchState {
21
+ query: string;
22
+ trustTiers: TrustTier[];
23
+ minQualityScore: number;
24
+ offset: number;
25
+ }
26
+ /**
27
+ * State machine phases for interactive search
28
+ */
29
+ export type SearchPhase = 'collect_query' | 'searching' | 'exit';
30
+ /**
31
+ * Search options for non-interactive mode
32
+ */
33
+ export interface SearchCommandOptions {
34
+ db: string;
35
+ limit: number;
36
+ tier?: TrustTier;
37
+ category?: string;
38
+ minScore?: number;
39
+ safeOnly?: boolean;
40
+ maxRisk?: number;
41
+ }
42
+ /**
43
+ * Page size for interactive search results
44
+ */
45
+ export declare const PAGE_SIZE = 10;
46
+ //# sourceMappingURL=search-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-types.d.ts","sourceRoot":"","sources":["../../../src/commands/search-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;AAEvD;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;AAEjE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,WAAW,GAAG,MAAM,CAAA;AAEhE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,KAAK,CAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * SMI-744: Search Command Types
3
+ *
4
+ * Type definitions for the interactive search command.
5
+ *
6
+ * @module @skillsmith/cli/commands/search-types
7
+ */
8
+ /**
9
+ * Page size for interactive search results
10
+ */
11
+ export const PAGE_SIZE = 10;
12
+ //# sourceMappingURL=search-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-types.js","sourceRoot":"","sources":["../../../src/commands/search-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2CH;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAA"}
@@ -4,6 +4,9 @@
4
4
  * Provides interactive CLI for searching skills with filters and pagination.
5
5
  */
6
6
  import { Command } from 'commander';
7
+ export type { InteractiveSearchState, SearchPhase, SearchCommandOptions } from './search-types.js';
8
+ export { PAGE_SIZE } from './search-types.js';
9
+ export { TRUST_TIER_COLORS, formatSecurityStatus, formatSkillRow, displayResults, displaySkillDetails, getTrustTierColor, } from './search-formatters.js';
7
10
  /**
8
11
  * Create search command
9
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAwUnC;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CA0D7C;AAED,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC,YAAY,EAAE,sBAAsB,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,wBAAwB,CAAA;AAyO/B;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAkJ7C;AAED,eAAe,mBAAmB,CAAA"}
@@ -6,83 +6,13 @@
6
6
  import { Command } from 'commander';
7
7
  import { input, checkbox, number, select } from '@inquirer/prompts';
8
8
  import chalk from 'chalk';
9
- import Table from 'cli-table3';
10
- import { createDatabase, SearchService, } from '@skillsmith/core';
9
+ import { createDatabase, SearchService } from '@skillsmith/core';
11
10
  import { DEFAULT_DB_PATH } from '../config.js';
12
11
  import { sanitizeError } from '../utils/sanitize.js';
13
- const TRUST_TIER_COLORS = {
14
- verified: chalk.green,
15
- community: chalk.yellow,
16
- experimental: chalk.red,
17
- unknown: chalk.gray,
18
- };
19
- const PAGE_SIZE = 10;
20
- /**
21
- * Format a skill result for display with color coding
22
- */
23
- function formatSkillRow(result) {
24
- const { skill } = result;
25
- const colorFn = TRUST_TIER_COLORS[skill.trustTier];
26
- const score = skill.qualityScore !== null ? (skill.qualityScore * 100).toFixed(0) + '%' : 'N/A';
27
- return [
28
- colorFn(skill.name),
29
- skill.description?.slice(0, 50) || 'No description',
30
- skill.author || 'Unknown',
31
- colorFn(skill.trustTier),
32
- score,
33
- ];
34
- }
35
- /**
36
- * Display search results in a table format
37
- */
38
- function displayResults(results, total, offset, pageSize) {
39
- if (results.length === 0) {
40
- console.log(chalk.yellow('\nNo skills found matching your criteria.\n'));
41
- return;
42
- }
43
- const table = new Table({
44
- head: [
45
- chalk.bold('Name'),
46
- chalk.bold('Description'),
47
- chalk.bold('Author'),
48
- chalk.bold('Trust Tier'),
49
- chalk.bold('Quality'),
50
- ],
51
- colWidths: [25, 52, 20, 15, 10],
52
- wordWrap: true,
53
- });
54
- for (const result of results) {
55
- table.push(formatSkillRow(result));
56
- }
57
- console.log(table.toString());
58
- const currentPage = Math.floor(offset / pageSize) + 1;
59
- const totalPages = Math.ceil(total / pageSize);
60
- console.log(chalk.dim(`\nShowing ${offset + 1}-${offset + results.length} of ${total} results (Page ${currentPage}/${totalPages})`));
61
- console.log(chalk.dim('Legend: ') +
62
- chalk.green('verified') +
63
- ' | ' +
64
- chalk.yellow('community') +
65
- ' | ' +
66
- chalk.red('experimental'));
67
- }
68
- /**
69
- * Display detailed skill information
70
- */
71
- function displaySkillDetails(result) {
72
- const { skill } = result;
73
- console.log('\n' + chalk.bold.underline(skill.name) + '\n');
74
- const colorFn = TRUST_TIER_COLORS[skill.trustTier];
75
- console.log(chalk.bold('Description: ') + (skill.description || 'No description'));
76
- console.log(chalk.bold('Author: ') + (skill.author || 'Unknown'));
77
- console.log(chalk.bold('Trust Tier: ') + colorFn(skill.trustTier));
78
- console.log(chalk.bold('Quality Score: ') +
79
- (skill.qualityScore !== null ? (skill.qualityScore * 100).toFixed(0) + '%' : 'N/A'));
80
- console.log(chalk.bold('Tags: ') + (skill.tags.length > 0 ? skill.tags.join(', ') : 'None'));
81
- console.log(chalk.bold('Repository: ') + (skill.repoUrl || 'N/A'));
82
- console.log(chalk.bold('Created: ') + skill.createdAt);
83
- console.log(chalk.bold('Updated: ') + skill.updatedAt);
84
- console.log();
85
- }
12
+ import { PAGE_SIZE } from './search-types.js';
13
+ import { TRUST_TIER_COLORS, displayResults, displaySkillDetails } from './search-formatters.js';
14
+ export { PAGE_SIZE } from './search-types.js';
15
+ export { TRUST_TIER_COLORS, formatSecurityStatus, formatSkillRow, displayResults, displaySkillDetails, getTrustTierColor, } from './search-formatters.js';
86
16
  /**
87
17
  * Run interactive search loop using state machine pattern (SMI-759)
88
18
  * Uses iterative while loop instead of recursion for new searches.
@@ -99,11 +29,10 @@ async function runInteractiveSearch(dbPath) {
99
29
  while (phase !== 'exit') {
100
30
  // Phase: Collect search query and filters
101
31
  if (phase === 'collect_query') {
102
- // Step 1: Enter search query
32
+ // Step 1: Enter search query (optional if filters will be provided)
103
33
  const query = await input({
104
- message: 'Enter search query:',
34
+ message: 'Enter search query (or press Enter to browse with filters):',
105
35
  default: '',
106
- validate: (value) => value.trim().length > 0 || 'Please enter a search query',
107
36
  });
108
37
  // Step 2: Filter by trust tier
109
38
  const trustTiers = await checkbox({
@@ -122,6 +51,13 @@ async function runInteractiveSearch(dbPath) {
122
51
  min: 0,
123
52
  max: 100,
124
53
  });
54
+ // Validate: require query OR at least one filter
55
+ const hasQuery = query.trim().length > 0;
56
+ const hasFilters = trustTiers.length > 0 || (minQualityScore !== undefined && minQualityScore > 0);
57
+ if (!hasQuery && !hasFilters) {
58
+ console.log(chalk.red('Please provide a search query or select at least one filter.'));
59
+ continue; // Stay in collect_query phase
60
+ }
125
61
  state = {
126
62
  query,
127
63
  trustTiers,
@@ -249,9 +185,19 @@ async function runSearch(query, options) {
249
185
  if (options.tier !== undefined) {
250
186
  searchOptions.trustTier = options.tier;
251
187
  }
188
+ if (options.category !== undefined) {
189
+ searchOptions.category = options.category;
190
+ }
252
191
  if (options.minScore !== undefined) {
253
192
  searchOptions.minQualityScore = options.minScore / 100;
254
193
  }
194
+ // SMI-825: Security filters
195
+ if (options.safeOnly !== undefined) {
196
+ searchOptions.safeOnly = options.safeOnly;
197
+ }
198
+ if (options.maxRisk !== undefined) {
199
+ searchOptions.maxRiskScore = options.maxRisk;
200
+ }
255
201
  const results = searchService.search(searchOptions);
256
202
  displayResults(results.items, results.total, 0, options.limit);
257
203
  }
@@ -264,30 +210,47 @@ async function runSearch(query, options) {
264
210
  */
265
211
  export function createSearchCommand() {
266
212
  const cmd = new Command('search')
267
- .description('Search for skills')
268
- .argument('[query]', 'Search query')
213
+ .description(`Search for skills
214
+
215
+ Quality Score Formula:
216
+ Quality scores (0-100%) reflect repository health using logarithmic scaling:
217
+ Stars: log₁₀(stars + 1) × 15 (max 50 pts)
218
+ Forks: log₁₀(forks + 1) × 10 (max 25 pts)
219
+ Base: 25 pts (baseline)
220
+
221
+ Example scores:
222
+ ~48% - 10 stars, 5 forks
223
+ ~68% - 100 stars, 20 forks
224
+ ~86% - 500 stars, 100 forks
225
+ 100% - 10,000+ stars
226
+
227
+ Verified skills from high-trust authors may have manually assigned scores.`)
228
+ .argument('[query]', 'Search query (optional when using --tier, --category, or --min-score filters)')
269
229
  .option('-i, --interactive', 'Launch interactive search mode')
270
230
  .option('-d, --db <path>', 'Database file path', DEFAULT_DB_PATH)
271
231
  .option('-l, --limit <number>', 'Maximum results to show', '20')
272
232
  .option('-t, --tier <tier>', 'Filter by trust tier (verified, community, experimental, unknown)')
273
- .option('-s, --min-score <number>', 'Minimum quality score (0-100)')
233
+ .option('-c, --category <category>', 'Filter by category (development, testing, devops, documentation, productivity, security)')
234
+ .option('-s, --min-score <number>', 'Minimum quality score (0-100, see above for formula)')
235
+ // SMI-825: Security filters
236
+ .option('--safe-only', 'Only show skills that passed security scan')
237
+ .option('--max-risk <number>', 'Maximum risk score (0-100, lower is safer)')
274
238
  .action(async (query, opts) => {
275
239
  try {
276
240
  const interactive = opts['interactive'];
277
241
  const dbPath = opts['db'];
278
242
  const limit = parseInt(opts['limit'], 10);
279
243
  const tier = opts['tier'];
244
+ const category = opts['category'];
280
245
  const minScore = opts['min-score'] ? parseInt(opts['min-score'], 10) : undefined;
246
+ // SMI-825: Security filters
247
+ const safeOnly = opts['safe-only'];
248
+ const maxRisk = opts['max-risk'] ? parseInt(opts['max-risk'], 10) : undefined;
281
249
  if (interactive) {
282
250
  await runInteractiveSearch(dbPath);
283
251
  }
284
252
  else if (query) {
285
- // Validate minimum query length
286
- if (query.length < 2) {
287
- console.error(chalk.red('Error: Search query must be at least 2 characters'));
288
- process.exit(1);
289
- }
290
- // Build options object - only include defined values
253
+ // Query provided - run search with optional filters
291
254
  const searchOpts = {
292
255
  db: dbPath,
293
256
  limit,
@@ -295,14 +258,61 @@ export function createSearchCommand() {
295
258
  if (tier !== undefined) {
296
259
  searchOpts.tier = tier;
297
260
  }
261
+ if (category !== undefined) {
262
+ searchOpts.category = category;
263
+ }
298
264
  if (minScore !== undefined) {
299
265
  searchOpts.minScore = minScore;
300
266
  }
267
+ // SMI-825: Security filters
268
+ if (safeOnly !== undefined) {
269
+ searchOpts.safeOnly = safeOnly;
270
+ }
271
+ if (maxRisk !== undefined) {
272
+ searchOpts.maxRisk = maxRisk;
273
+ }
301
274
  await runSearch(query, searchOpts);
302
275
  }
276
+ else if (tier !== undefined ||
277
+ category !== undefined ||
278
+ minScore !== undefined ||
279
+ safeOnly !== undefined ||
280
+ maxRisk !== undefined) {
281
+ // No query but filters provided - run filter-only search
282
+ console.log(chalk.blue('Running filter-only search...'));
283
+ const searchOpts = {
284
+ db: dbPath,
285
+ limit,
286
+ };
287
+ if (tier !== undefined) {
288
+ searchOpts.tier = tier;
289
+ }
290
+ if (category !== undefined) {
291
+ searchOpts.category = category;
292
+ }
293
+ if (minScore !== undefined) {
294
+ searchOpts.minScore = minScore;
295
+ }
296
+ // SMI-825: Security filters
297
+ if (safeOnly !== undefined) {
298
+ searchOpts.safeOnly = safeOnly;
299
+ }
300
+ if (maxRisk !== undefined) {
301
+ searchOpts.maxRisk = maxRisk;
302
+ }
303
+ await runSearch('', searchOpts);
304
+ }
303
305
  else {
304
- console.log(chalk.yellow('Please provide a search query or use -i for interactive mode'));
305
- console.log(chalk.dim('Example: skillsmith search "authentication" or skillsmith search -i'));
306
+ // No query and no filters
307
+ console.log(chalk.yellow('Please provide a search query, filters (--tier, --category, --min-score, --safe-only, --max-risk), or use -i for interactive mode'));
308
+ console.log(chalk.dim('Examples:'));
309
+ console.log(chalk.dim(' skillsmith search "authentication"'));
310
+ console.log(chalk.dim(' skillsmith search --tier verified'));
311
+ console.log(chalk.dim(' skillsmith search --category security'));
312
+ console.log(chalk.dim(' skillsmith search --tier community --min-score 70'));
313
+ console.log(chalk.dim(' skillsmith search --safe-only'));
314
+ console.log(chalk.dim(' skillsmith search --max-risk 30'));
315
+ console.log(chalk.dim(' skillsmith search -i'));
306
316
  }
307
317
  }
308
318
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,EACL,cAAc,EACd,aAAa,GAId,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,MAAM,iBAAiB,GAAgD;IACrE,QAAQ,EAAE,KAAK,CAAC,KAAK;IACrB,SAAS,EAAE,KAAK,CAAC,MAAM;IACvB,YAAY,EAAE,KAAK,CAAC,GAAG;IACvB,OAAO,EAAE,KAAK,CAAC,IAAI;CACpB,CAAA;AAED,MAAM,SAAS,GAAG,EAAE,CAAA;AASpB;;GAEG;AACH,SAAS,cAAc,CAAC,MAAoB;IAC1C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IACxB,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA;IAE/F,OAAO;QACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;QACnB,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,gBAAgB;QACnD,KAAK,CAAC,MAAM,IAAI,SAAS;QACzB,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;QACxB,KAAK;KACN,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CACrB,OAAuB,EACvB,KAAa,EACb,MAAc,EACd,QAAgB;IAEhB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAAC,CAAA;QACxE,OAAM;IACR,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,IAAI,EAAE;YACJ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;SACtB;QACD,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QAC/B,QAAQ,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE7B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAA;IAC9C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,aAAa,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,OAAO,KAAK,kBAAkB,WAAW,IAAI,UAAU,GAAG,CAC7G,CACF,CAAA;IACD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;QACnB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;QACvB,KAAK;QACL,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC;QACzB,KAAK;QACL,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAC5B,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAoB;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAExB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;IAE3D,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAElD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,gBAAgB,CAAC,CAAC,CAAA;IAClF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IAClE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;QAC3B,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CACtF,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IAC5F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAA;IAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;IACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;IACtD,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC;AAOD;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CAAC,MAAc;IAChD,MAAM,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IAE3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAA;IAEzE,IAAI,CAAC;QACH,kDAAkD;QAClD,IAAI,KAAK,GAAgB,eAAe,CAAA;QACxC,IAAI,KAAK,GAAkC,IAAI,CAAA;QAE/C,qDAAqD;QACrD,OAAO,KAAK,KAAK,MAAM,EAAE,CAAC;YACxB,0CAA0C;YAC1C,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;gBAC9B,6BAA6B;gBAC7B,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC;oBACxB,OAAO,EAAE,qBAAqB;oBAC9B,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,6BAA6B;iBACtF,CAAC,CAAA;gBAEF,+BAA+B;gBAC/B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAY;oBAC3C,OAAO,EAAE,8DAA8D;oBACvE,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;wBACpD,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;wBACvD,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE;wBAC1D,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE;qBAClD;iBACF,CAAC,CAAA;gBAEF,gCAAgC;gBAChC,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC;oBACnC,OAAO,EAAE,2DAA2D;oBACpE,OAAO,EAAE,CAAC;oBACV,GAAG,EAAE,CAAC;oBACN,GAAG,EAAE,GAAG;iBACT,CAAC,CAAA;gBAEF,KAAK,GAAG;oBACN,KAAK;oBACL,UAAU;oBACV,eAAe,EAAE,CAAC,eAAe,IAAI,CAAC,CAAC,GAAG,GAAG;oBAC7C,MAAM,EAAE,CAAC;iBACV,CAAA;gBAED,KAAK,GAAG,WAAW,CAAA;gBACnB,SAAQ;YACV,CAAC;YAED,oCAAoC;YACpC,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC5C,4EAA4E;gBAC5E,MAAM,aAAa,GAAkB;oBACnC,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB,CAAA;gBAED,+EAA+E;gBAC/E,IAAI,KAAK,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;oBAC9B,aAAa,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAA;gBACvD,CAAC;gBAED,8DAA8D;gBAC9D,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;oBACvE,aAAa,CAAC,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;gBAC/C,CAAC;gBAED,iBAAiB;gBACjB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;gBAEnD,2DAA2D;gBAC3D,IAAI,aAAa,GAAG,OAAO,CAAC,KAAK,CAAA;gBACjC,MAAM,mBAAmB,GAAG,KAAK,CAAC,UAAU,CAAA;gBAC5C,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnC,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAChD,CAAA;gBACH,CAAC;gBAED,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;gBAErE,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,KAAK,GAAG,MAAM,CAAA;oBACd,SAAQ;gBACV,CAAC;gBAED,uBAAuB;gBACvB,MAAM,OAAO,GAA2C,EAAE,CAAA;gBAE1D,8BAA8B;gBAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;oBACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;oBAClD,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB;wBACvD,KAAK,EAAE,QAAQ,CAAC,EAAE;qBACnB,CAAC,CAAA;gBACJ,CAAC;gBAED,yBAAyB;gBACzB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAA;gBAE5D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;gBACvE,CAAC;gBAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;gBACnE,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;gBACjE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;gBAExD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;oBAC1B,OAAO,EAAE,qCAAqC;oBAC9C,OAAO;iBACR,CAAC,CAAA;gBAEF,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;oBAC3B,SAAQ;gBACV,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,KAAK,GAAG,MAAM,CAAA;gBAChB,CAAC;qBAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC5B,kEAAkE;oBAClE,KAAK,GAAG,eAAe,CAAA;oBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAA;gBACxD,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;gBACtD,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,KAAK,CAAC,MAAM,IAAI,SAAS,CAAA;gBAC3B,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;oBACvD,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;oBAC3C,IAAI,cAAc,EAAE,CAAC;wBACnB,mBAAmB,CAAC,cAAc,CAAC,CAAA;wBAEnC,sBAAsB;wBACtB,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC;4BAC9B,OAAO,EAAE,4BAA4B;4BACrC,OAAO,EAAE;gCACP,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE;gCAC1C,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,SAAS,EAAE;gCAChD,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;6BAChC;yBACF,CAAC,CAAA;wBAEF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;4BAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAA;4BACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,cAAc,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;wBAC9E,CAAC;6BAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;4BACjC,KAAK,GAAG,MAAM,CAAA;wBAChB,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAA;AACxC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,SAAS,CACtB,KAAa,EACb,OAA2E;IAE3E,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACrC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IAE3C,IAAI,CAAC;QACH,4EAA4E;QAC5E,MAAM,aAAa,GAAkB;YACnC,KAAK;YACL,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAA;QAED,+EAA+E;QAC/E,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAA;QACxC,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,aAAa,CAAC,eAAe,GAAG,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAA;QACxD,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QACnD,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAChE,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;SAC9B,WAAW,CAAC,mBAAmB,CAAC;SAChC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,CAAC;SAC7D,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,CAAC;SAChE,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,EAAE,IAAI,CAAC;SAC/D,MAAM,CACL,mBAAmB,EACnB,mEAAmE,CACpE;SACA,MAAM,CAAC,0BAA0B,EAAE,+BAA+B,CAAC;SACnE,MAAM,CACL,KAAK,EAAE,KAAyB,EAAE,IAAkD,EAAE,EAAE;QACtF,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAwB,CAAA;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAW,CAAA;YACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAW,EAAE,EAAE,CAAC,CAAA;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAA0B,CAAA;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAE1F,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;YACpC,CAAC;iBAAM,IAAI,KAAK,EAAE,CAAC;gBACjB,gCAAgC;gBAChC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAA;oBAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACjB,CAAC;gBAED,qDAAqD;gBACrD,MAAM,UAAU,GAAuE;oBACrF,EAAE,EAAE,MAAM;oBACV,KAAK;iBACN,CAAA;gBACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,UAAU,CAAC,IAAI,GAAG,IAAI,CAAA;gBACxB,CAAC;gBACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBAChC,CAAC;gBACD,MAAM,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;YACpC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,8DAA8D,CAAC,CAC7E,CAAA;gBACD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,qEAAqE,CAAC,CACjF,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CACF,CAAA;IAEH,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/commands/search.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,9 @@ export declare const DEFAULT_SKILLS_DIR: string;
16
16
  * Default manifest path: ~/.skillsmith/manifest.json
17
17
  */
18
18
  export declare const DEFAULT_MANIFEST_PATH: string;
19
+ /**
20
+ * Get the default database path.
21
+ * Returns ~/.skillsmith/skills.db
22
+ */
23
+ export declare function getDefaultDbPath(): string;
19
24
  //# sourceMappingURL=config.d.ts.map
@@ -1 +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"}
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;AAEpF;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
@@ -18,4 +18,11 @@ export const DEFAULT_SKILLS_DIR = join(homedir(), '.claude', 'skills');
18
18
  * Default manifest path: ~/.skillsmith/manifest.json
19
19
  */
20
20
  export const DEFAULT_MANIFEST_PATH = join(homedir(), '.skillsmith', 'manifest.json');
21
+ /**
22
+ * Get the default database path.
23
+ * Returns ~/.skillsmith/skills.db
24
+ */
25
+ export function getDefaultDbPath() {
26
+ return DEFAULT_DB_PATH;
27
+ }
21
28
  //# sourceMappingURL=config.js.map
@@ -1 +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"}
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;AAEpF;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,eAAe,CAAA;AACxB,CAAC"}
@@ -15,6 +15,7 @@
15
15
  * - author subagent: Generate companion subagent for a skill (SMI-1389)
16
16
  * - author transform: Upgrade existing skill with subagent (SMI-1390)
17
17
  * - author mcp-init: Scaffold a new MCP server project (SMI-1433)
18
+ * - install-skill: Install skillsmith skill for /skillsmith slash command (SMI-824)
18
19
  */
19
20
  export {};
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;GAgBG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;GAiBG"}