@skillsmith/mcp-server 0.4.3 → 0.4.4

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 (92) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/src/context.async.d.ts.map +1 -1
  3. package/dist/src/context.async.js +3 -1
  4. package/dist/src/context.async.js.map +1 -1
  5. package/dist/src/context.d.ts.map +1 -1
  6. package/dist/src/context.js +3 -1
  7. package/dist/src/context.js.map +1 -1
  8. package/dist/src/context.types.d.ts +3 -1
  9. package/dist/src/context.types.d.ts.map +1 -1
  10. package/dist/src/index.js +4 -0
  11. package/dist/src/index.js.map +1 -1
  12. package/dist/src/middleware/toolFeatureMapping.d.ts.map +1 -1
  13. package/dist/src/middleware/toolFeatureMapping.js +2 -0
  14. package/dist/src/middleware/toolFeatureMapping.js.map +1 -1
  15. package/dist/src/tool-dispatch.d.ts.map +1 -1
  16. package/dist/src/tool-dispatch.js +15 -0
  17. package/dist/src/tool-dispatch.js.map +1 -1
  18. package/dist/src/tools/compare.types.d.ts +5 -1
  19. package/dist/src/tools/compare.types.d.ts.map +1 -1
  20. package/dist/src/tools/compare.types.js.map +1 -1
  21. package/dist/src/tools/get-skill.d.ts.map +1 -1
  22. package/dist/src/tools/get-skill.js +16 -0
  23. package/dist/src/tools/get-skill.js.map +1 -1
  24. package/dist/src/tools/index.d.ts +2 -0
  25. package/dist/src/tools/index.d.ts.map +1 -1
  26. package/dist/src/tools/index.js +2 -0
  27. package/dist/src/tools/index.js.map +1 -1
  28. package/dist/src/tools/install.d.ts +4 -23
  29. package/dist/src/tools/install.d.ts.map +1 -1
  30. package/dist/src/tools/install.dep-helpers.d.ts +41 -0
  31. package/dist/src/tools/install.dep-helpers.d.ts.map +1 -0
  32. package/dist/src/tools/install.dep-helpers.js +68 -0
  33. package/dist/src/tools/install.dep-helpers.js.map +1 -0
  34. package/dist/src/tools/install.dep-helpers.test.d.ts +6 -0
  35. package/dist/src/tools/install.dep-helpers.test.d.ts.map +1 -0
  36. package/dist/src/tools/install.dep-helpers.test.js +109 -0
  37. package/dist/src/tools/install.dep-helpers.test.js.map +1 -0
  38. package/dist/src/tools/install.js +27 -35
  39. package/dist/src/tools/install.js.map +1 -1
  40. package/dist/src/tools/install.types.d.ts +7 -0
  41. package/dist/src/tools/install.types.d.ts.map +1 -1
  42. package/dist/src/tools/install.types.js.map +1 -1
  43. package/dist/src/tools/outdated.d.ts +101 -0
  44. package/dist/src/tools/outdated.d.ts.map +1 -0
  45. package/dist/src/tools/outdated.js +214 -0
  46. package/dist/src/tools/outdated.js.map +1 -0
  47. package/dist/src/tools/outdated.test.d.ts +6 -0
  48. package/dist/src/tools/outdated.test.d.ts.map +1 -0
  49. package/dist/src/tools/outdated.test.js +287 -0
  50. package/dist/src/tools/outdated.test.js.map +1 -0
  51. package/dist/src/tools/recommend.types.d.ts +3 -3
  52. package/dist/src/tools/skill-diff.d.ts +2 -2
  53. package/dist/src/tools/skill-pack-audit.d.ts +96 -0
  54. package/dist/src/tools/skill-pack-audit.d.ts.map +1 -0
  55. package/dist/src/tools/skill-pack-audit.js +183 -0
  56. package/dist/src/tools/skill-pack-audit.js.map +1 -0
  57. package/dist/src/tools/suggest.d.ts +4 -4
  58. package/dist/src/tools/uninstall.d.ts +1 -1
  59. package/dist/src/tools/uninstall.d.ts.map +1 -1
  60. package/dist/src/tools/uninstall.js +9 -0
  61. package/dist/src/tools/uninstall.js.map +1 -1
  62. package/dist/src/tools/validate.d.ts.map +1 -1
  63. package/dist/src/tools/validate.dep.test.d.ts +6 -0
  64. package/dist/src/tools/validate.dep.test.d.ts.map +1 -0
  65. package/dist/src/tools/validate.dep.test.js +77 -0
  66. package/dist/src/tools/validate.dep.test.js.map +1 -0
  67. package/dist/src/tools/validate.helpers.d.ts +12 -0
  68. package/dist/src/tools/validate.helpers.d.ts.map +1 -1
  69. package/dist/src/tools/validate.helpers.js +59 -19
  70. package/dist/src/tools/validate.helpers.js.map +1 -1
  71. package/dist/src/tools/validate.js +3 -1
  72. package/dist/src/tools/validate.js.map +1 -1
  73. package/dist/tests/integration/recommend.integration.test.js +1 -0
  74. package/dist/tests/integration/recommend.integration.test.js.map +1 -1
  75. package/dist/tests/integration/setup.d.ts +2 -1
  76. package/dist/tests/integration/setup.d.ts.map +1 -1
  77. package/dist/tests/integration/setup.js +3 -1
  78. package/dist/tests/integration/setup.js.map +1 -1
  79. package/dist/tests/integration/validate.integration.test.js +4 -2
  80. package/dist/tests/integration/validate.integration.test.js.map +1 -1
  81. package/dist/tests/recommend.test.js +1 -0
  82. package/dist/tests/recommend.test.js.map +1 -1
  83. package/dist/tests/unit/skill-pack-audit.test.d.ts +8 -0
  84. package/dist/tests/unit/skill-pack-audit.test.d.ts.map +1 -0
  85. package/dist/tests/unit/skill-pack-audit.test.js +342 -0
  86. package/dist/tests/unit/skill-pack-audit.test.js.map +1 -0
  87. package/dist/tests/unit/validate-helpers.test.js +47 -4
  88. package/dist/tests/unit/validate-helpers.test.js.map +1 -1
  89. package/dist/tests/validate.test.js +4 -0
  90. package/dist/tests/validate.test.js.map +1 -1
  91. package/package.json +1 -1
  92. package/server.json +2 -2
@@ -0,0 +1,68 @@
1
+ /**
2
+ * @fileoverview Dependency intelligence helpers for install tool
3
+ * @module @skillsmith/mcp-server/tools/install.dep-helpers
4
+ * @see SMI-3137: Wave 4 — Surface dependency intelligence in MCP responses
5
+ *
6
+ * Extracts and persists dependency data after successful skill installation.
7
+ * Kept in a companion file to avoid pushing install.ts over the 500-line limit.
8
+ */
9
+ import { extractMcpReferences, mergeDependencies, } from '@skillsmith/core';
10
+ /**
11
+ * Extract dependency intelligence from skill content after successful install.
12
+ *
13
+ * @param skillMdContent - Raw SKILL.md content
14
+ * @param metadata - Parsed frontmatter metadata (null if parsing failed)
15
+ * @returns Dependency intelligence data to include in install response
16
+ */
17
+ export function extractDepIntel(skillMdContent, metadata) {
18
+ const mcpResult = extractMcpReferences(skillMdContent);
19
+ // Parse declared deps from metadata if present
20
+ const declared = metadata?.dependencies ?? undefined;
21
+ const warnings = [];
22
+ for (const server of mcpResult.highConfidenceServers) {
23
+ warnings.push(`MCP server '${server}' is referenced but may not be configured`);
24
+ }
25
+ return {
26
+ dep_inferred_servers: mcpResult.servers,
27
+ dep_declared: declared,
28
+ dep_warnings: warnings,
29
+ };
30
+ }
31
+ /**
32
+ * Persist merged dependencies (declared + inferred) to the database.
33
+ *
34
+ * Best-effort: silently returns if the skill_dependencies table does not
35
+ * exist (pre-migration databases).
36
+ *
37
+ * @param repo - SkillDependencyRepository instance
38
+ * @param skillId - Skill ID to associate dependencies with
39
+ * @param content - Raw SKILL.md content for MCP reference extraction
40
+ * @param declared - Parsed dependency declaration from frontmatter
41
+ */
42
+ export function persistDependencies(repo, skillId, content, declared) {
43
+ const mcpResult = extractMcpReferences(content);
44
+ const merged = mergeDependencies(declared, mcpResult);
45
+ if (merged.length === 0)
46
+ return;
47
+ // Convert MergedDependency[] to SkillDependencyRow[] for the repository
48
+ const rows = merged.map((dep) => ({
49
+ skill_id: skillId,
50
+ dep_type: dep.depType,
51
+ dep_target: dep.depTarget,
52
+ dep_version: dep.depVersion,
53
+ dep_source: dep.depSource,
54
+ confidence: dep.confidence,
55
+ metadata: dep.metadata,
56
+ }));
57
+ // Group by source for setDependencies calls (each call stamps a single source)
58
+ const bySource = new Map();
59
+ for (const row of rows) {
60
+ const existing = bySource.get(row.dep_source) ?? [];
61
+ existing.push(row);
62
+ bySource.set(row.dep_source, existing);
63
+ }
64
+ for (const [source, sourceRows] of bySource) {
65
+ repo.setDependencies(skillId, sourceRows, source);
66
+ }
67
+ }
68
+ //# sourceMappingURL=install.dep-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.dep-helpers.js","sourceRoot":"","sources":["../../../src/tools/install.dep-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAIlB,MAAM,kBAAkB,CAAA;AAczB;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,cAAsB,EACtB,QAAwC;IAExC,MAAM,SAAS,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAA;IAEtD,+CAA+C;IAC/C,MAAM,QAAQ,GAAI,QAAQ,EAAE,YAAsC,IAAI,SAAS,CAAA;IAE/E,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,qBAAqB,EAAE,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,eAAe,MAAM,2CAA2C,CAAC,CAAA;IACjF,CAAC;IAED,OAAO;QACL,oBAAoB,EAAE,SAAS,CAAC,OAAO;QACvC,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,QAAQ;KACvB,CAAA;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAA+B,EAC/B,OAAe,EACf,OAAe,EACf,QAA2C;IAE3C,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAErD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAM;IAE/B,wEAAwE;IACxE,MAAM,IAAI,GAAyB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACtD,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,GAAG,CAAC,OAAO;QACrB,UAAU,EAAE,GAAG,CAAC,SAAS;QACzB,WAAW,EAAE,GAAG,CAAC,UAAU;QAC3B,UAAU,EAAE,GAAG,CAAC,SAAS;QACzB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CAAA;IAEH,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAA;IACxD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QACnD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,MAA0C,CAAC,CAAA;IACvF,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Unit tests for install dependency intelligence helpers
3
+ * @see SMI-3137: Wave 4 — Surface dependency intelligence
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=install.dep-helpers.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.dep-helpers.test.d.ts","sourceRoot":"","sources":["../../../src/tools/install.dep-helpers.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * @fileoverview Unit tests for install dependency intelligence helpers
3
+ * @see SMI-3137: Wave 4 — Surface dependency intelligence
4
+ */
5
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
6
+ import { extractDepIntel, persistDependencies } from './install.dep-helpers.js';
7
+ // ============================================================================
8
+ // extractDepIntel tests
9
+ // ============================================================================
10
+ describe('extractDepIntel', () => {
11
+ it('returns empty arrays when no MCP refs exist', () => {
12
+ const result = extractDepIntel('# Simple skill\n\nNo MCP references here.', null);
13
+ expect(result.dep_inferred_servers).toEqual([]);
14
+ expect(result.dep_declared).toBeUndefined();
15
+ expect(result.dep_warnings).toEqual([]);
16
+ });
17
+ it('detects inferred MCP servers from content', () => {
18
+ const content = `
19
+ # My Skill
20
+
21
+ Use mcp__linear__save_issue to create issues.
22
+ Use mcp__slack__send_message for notifications.
23
+ `;
24
+ const result = extractDepIntel(content, null);
25
+ expect(result.dep_inferred_servers).toContain('linear');
26
+ expect(result.dep_inferred_servers).toContain('slack');
27
+ expect(result.dep_warnings).toHaveLength(2);
28
+ expect(result.dep_warnings[0]).toContain('linear');
29
+ expect(result.dep_warnings[1]).toContain('slack');
30
+ });
31
+ it('passes through declared dependencies from metadata', () => {
32
+ const metadata = {
33
+ dependencies: {
34
+ skills: [{ name: 'other/skill', type: 'hard', version: '^1.0.0' }],
35
+ platform: {
36
+ mcp_servers: [{ name: 'linear', package: '@anthropic/linear-mcp', required: true }],
37
+ },
38
+ },
39
+ };
40
+ const result = extractDepIntel('# Skill\n\nContent.', metadata);
41
+ expect(result.dep_declared).toBeDefined();
42
+ expect(result.dep_declared?.skills).toHaveLength(1);
43
+ expect(result.dep_declared?.platform?.mcp_servers).toHaveLength(1);
44
+ });
45
+ it('returns undefined dep_declared when metadata has no dependencies', () => {
46
+ const metadata = { name: 'test-skill' };
47
+ const result = extractDepIntel('# Skill\n\nContent.', metadata);
48
+ expect(result.dep_declared).toBeUndefined();
49
+ });
50
+ it('handles null metadata gracefully', () => {
51
+ const result = extractDepIntel('# Skill with mcp__github__create_issue ref', null);
52
+ expect(result.dep_declared).toBeUndefined();
53
+ expect(result.dep_inferred_servers).toContain('github');
54
+ });
55
+ });
56
+ // ============================================================================
57
+ // persistDependencies tests
58
+ // ============================================================================
59
+ describe('persistDependencies', () => {
60
+ let mockRepo;
61
+ beforeEach(() => {
62
+ mockRepo = {
63
+ setDependencies: vi.fn(),
64
+ getDependencies: vi.fn().mockReturnValue([]),
65
+ getDependenciesBySource: vi.fn().mockReturnValue([]),
66
+ getDependents: vi.fn().mockReturnValue([]),
67
+ clearInferred: vi.fn(),
68
+ clearAll: vi.fn(),
69
+ };
70
+ });
71
+ it('does nothing when no dependencies are found', () => {
72
+ persistDependencies(mockRepo, 'test/skill', '# Simple skill\n\nNo deps.', undefined);
73
+ expect(mockRepo.setDependencies).not.toHaveBeenCalled();
74
+ });
75
+ it('persists inferred MCP dependencies', () => {
76
+ const content = '# Skill\n\nUse mcp__linear__save_issue for issues.';
77
+ persistDependencies(mockRepo, 'test/skill', content, undefined);
78
+ expect(mockRepo.setDependencies).toHaveBeenCalled();
79
+ const callArgs = vi.mocked(mockRepo.setDependencies).mock.calls[0];
80
+ expect(callArgs[0]).toBe('test/skill');
81
+ expect(callArgs[1]).toHaveLength(1);
82
+ expect(callArgs[1][0].dep_target).toBe('linear');
83
+ expect(callArgs[1][0].dep_type).toBe('mcp_server');
84
+ expect(callArgs[2]).toBe('inferred_static');
85
+ });
86
+ it('persists declared dependencies alongside inferred ones', () => {
87
+ const content = '# Skill\n\nUse mcp__slack__send_message for notifs.';
88
+ const declared = {
89
+ skills: [{ name: 'other/skill', type: 'hard', version: '^1.0.0' }],
90
+ };
91
+ persistDependencies(mockRepo, 'test/skill', content, declared);
92
+ // Should be called once for 'declared' source, once for 'inferred_static' source
93
+ expect(mockRepo.setDependencies).toHaveBeenCalledTimes(2);
94
+ });
95
+ it('deduplicates declared MCP servers over inferred', () => {
96
+ const content = '# Skill\n\nUse mcp__linear__save_issue for issues.';
97
+ const declared = {
98
+ platform: {
99
+ mcp_servers: [{ name: 'linear', package: '@a/b', required: true }],
100
+ },
101
+ };
102
+ persistDependencies(mockRepo, 'test/skill', content, declared);
103
+ // Only declared source should be called (linear is deduplicated)
104
+ expect(mockRepo.setDependencies).toHaveBeenCalledTimes(1);
105
+ const callArgs = vi.mocked(mockRepo.setDependencies).mock.calls[0];
106
+ expect(callArgs[2]).toBe('declared');
107
+ });
108
+ });
109
+ //# sourceMappingURL=install.dep-helpers.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.dep-helpers.test.js","sourceRoot":"","sources":["../../../src/tools/install.dep-helpers.test.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,8 @@
1
1
  /**
2
2
  * @fileoverview MCP Install Skill Tool for downloading and installing skills
3
3
  * @module @skillsmith/mcp-server/tools/install
4
- * @see {@link https://github.com/wrsmith108/skillsmith|Skillsmith Repository}
5
4
  * @see SMI-2741: Split to meet 500-line standard
6
- *
7
- * Provides skill installation functionality with:
8
- * - GitHub repository fetching (supports owner/repo and full URLs)
9
- * - Automatic security scanning before installation
10
- * - SKILL.md validation
11
- * - Manifest tracking of installed skills
12
- * - Optional file fetching (README.md, examples.md, config.json)
5
+ * @see SMI-3137: Wave 4 — Dependency intelligence persistence
13
6
  *
14
7
  * Skills are installed to ~/.claude/skills/ and tracked in ~/.skillsmith/manifest.json
15
8
  */
@@ -18,14 +11,14 @@ import * as fs from 'fs/promises';
18
11
  import * as path from 'path';
19
12
  import * as os from 'os';
20
13
  import { getToolContext } from '../context.js';
21
- // Import types
22
14
  import { TRUST_TIER_SCANNER_OPTIONS, CLAUDE_SKILLS_DIR, } from './install.types.js';
23
- // Import helpers
24
15
  import { loadManifest, updateManifestSafely, parseSkillId, parseRepoUrl, lookupSkillFromRegistry, fetchFromGitHub, validateSkillMd, generateOptimizedTips, hashContent, storeOriginal, } from './install.helpers.js';
25
16
  // SMI-1867: Conflict resolution logic (extracted per governance review)
26
17
  import { checkForConflicts, handleMergeAction } from './install.conflict.js';
27
18
  // SMI-1788/SMI-2741: Optimization layer extracted to companion file
28
19
  import { applySkillOptimization } from './install.optimize.js';
20
+ // SMI-3137: Dependency intelligence persistence
21
+ import { extractDepIntel, persistDependencies } from './install.dep-helpers.js';
29
22
  // SMI-2741: MCP tool definition extracted to companion file
30
23
  export { installTool } from './install.tool.js';
31
24
  export { default } from './install.tool.js';
@@ -34,21 +27,9 @@ export { installInputSchema } from './install.types.js';
34
27
  /**
35
28
  * Install a skill from GitHub to the local Claude Code skills directory.
36
29
  *
37
- * This function:
38
- * 1. Parses the skill ID or GitHub URL
39
- * 2. Checks if already installed (returns error unless force=true)
40
- * 3. Fetches SKILL.md from GitHub (required)
41
- * 4. Validates SKILL.md content
42
- * 5. Runs security scan (unless skipScan=true)
43
- * 6. Creates installation directory at ~/.claude/skills/{skillName}
44
- * 7. Writes skill files
45
- * 8. Updates manifest at ~/.skillsmith/manifest.json
46
- *
47
- * @param input - Installation parameters
48
- * @param input.skillId - Skill ID (owner/repo) or full GitHub URL
49
- * @param input.force - Force reinstall if skill already exists (default: false)
50
- * @param input.skipScan - Skip security scan (default: false, not recommended)
51
- * @returns Promise resolving to installation result with success status
30
+ * @param input - Installation parameters (skillId, force, skipScan)
31
+ * @param _context - Optional tool context (falls back to singleton)
32
+ * @returns Installation result with success status, security report, and dep intel
52
33
  */
53
34
  export async function installSkill(input, _context) {
54
35
  // SMI-1491: Get context for registry lookup (use provided or fallback to singleton)
@@ -368,6 +349,14 @@ export async function installSkill(input, _context) {
368
349
  input.skillId,
369
350
  ]);
370
351
  context.sessionInstalledSkillIds.push(input.skillId);
352
+ // SMI-3137: Extract and persist dependency intelligence
353
+ const depIntel = extractDepIntel(skillMdContent, null);
354
+ try {
355
+ persistDependencies(context.skillDependencyRepository, input.skillId, skillMdContent, depIntel.dep_declared);
356
+ }
357
+ catch {
358
+ // Dependency persistence is best-effort
359
+ }
371
360
  return {
372
361
  success: true,
373
362
  skillId: input.skillId,
@@ -376,6 +365,7 @@ export async function installSkill(input, _context) {
376
365
  trustTier, // SMI-1533: Include trust tier in result
377
366
  optimization: optimizationInfo,
378
367
  backupPath, // SMI-1895: Include backup path if created during conflict resolution
368
+ depIntel, // SMI-3137: Dependency intelligence
379
369
  tips: generateOptimizedTips(skillName, optimizationInfo, claudeMdSnippet),
380
370
  };
381
371
  }
@@ -384,19 +374,21 @@ export async function installSkill(input, _context) {
384
374
  let safeErrorMessage = 'Installation failed';
385
375
  if (error instanceof Error) {
386
376
  // Allow specific known error types through
387
- if (error.message.includes('already installed') ||
388
- error.message.includes('Could not find SKILL.md') ||
389
- error.message.includes('registry data quality issue') ||
390
- error.message.includes('Invalid SKILL.md') ||
391
- error.message.includes('Security scan failed') ||
392
- error.message.includes('exceeds maximum length') ||
393
- error.message.includes('Refusing to write to symlink') ||
394
- error.message.includes('Refusing to write to hardlinked file') ||
395
- error.message.includes('Install path escapes skills directory')) {
377
+ const knownPrefixes = [
378
+ 'already installed',
379
+ 'Could not find SKILL.md',
380
+ 'registry data quality issue',
381
+ 'Invalid SKILL.md',
382
+ 'Security scan failed',
383
+ 'exceeds maximum length',
384
+ 'Refusing to write to symlink',
385
+ 'Refusing to write to hardlinked file',
386
+ 'Install path escapes skills directory',
387
+ ];
388
+ if (knownPrefixes.some((p) => error.message.includes(p))) {
396
389
  safeErrorMessage = error.message;
397
390
  }
398
391
  else {
399
- // Log the full error for debugging, return sanitized message
400
392
  console.error('[install] Error during installation:', error);
401
393
  safeErrorMessage = 'Installation failed due to an internal error';
402
394
  }
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/tools/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/tools/install.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,8 @@ export interface InstallResult {
116
116
  requiresAction?: ConflictAction[];
117
117
  /** SMI-1895: Path to backup file created during conflict resolution */
118
118
  backupPath?: string;
119
+ /** SMI-3137: Dependency intelligence extracted during install */
120
+ depIntel?: import('./install.dep-helpers.js').DepIntelResult;
119
121
  }
120
122
  /** Optimization info included in install result */
121
123
  export interface OptimizationInfo {
@@ -145,6 +147,11 @@ export interface SkillManifestEntry {
145
147
  name: string;
146
148
  version: string;
147
149
  source: string;
150
+ /**
151
+ * Absolute path where the skill is installed.
152
+ * Required by type, but runtime JSON may omit it — consumers must guard.
153
+ * @see SMI-3177
154
+ */
148
155
  installPath: string;
149
156
  installedAt: string;
150
157
  lastUpdated: string;
@@ -1 +1 @@
1
- {"version":3,"file":"install.types.d.ts","sourceRoot":"","sources":["../../../src/tools/install.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAQjD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,SAAS,EAOjD,CAAA;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,CAc7E;AAMD;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,CA+BxE,CAAA;AAMD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAA;AAE7D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,qBAAqB,EAAE,OAAO,CAAA;IAC9B,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAA;IACpB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAA;IAChB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,uDAAuD;IACvD,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;CAC5B;AAMD,oCAAoC;AACpC,eAAO,MAAM,kBAAkB;;;;IAI7B,iDAAiD;;IAEjD,yEAAyE;;;;;;;;;;;;;;EAKzE,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,mCAAmC;AACnC,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,UAAU,CAAA;IAC3B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sDAAsD;IACtD,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,kEAAkE;IAClE,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,wEAAwE;IACxE,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,yEAAyE;IACzE,cAAc,CAAC,EAAE,cAAc,EAAE,CAAA;IACjC,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,mDAAmD;AACnD,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,SAAS,EAAE,OAAO,CAAA;IAClB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAMD,eAAO,MAAM,iBAAiB,QAA+C,CAAA;AAC7E,eAAO,MAAM,cAAc,QAAyC,CAAA;AACpE,eAAO,MAAM,aAAa,QAA6C,CAAA;AAMvE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,oFAAoF;IACpF,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;CAC3C;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;CACpD;AAED,iCAAiC;AACjC,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,OAAO,CAAA;CACtB;AAID,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,6BAA6B;AAC7B,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,CAAA;IAEpB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB"}
1
+ {"version":3,"file":"install.types.d.ts","sourceRoot":"","sources":["../../../src/tools/install.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.types.js","sourceRoot":"","sources":["../../../src/tools/install.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.types.js","sourceRoot":"","sources":["../../../src/tools/install.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * @fileoverview skill_outdated MCP tool — check installed skills for updates and dependency status
3
+ * @module @skillsmith/mcp-server/tools/outdated
4
+ * @see SMI-3138: Wave 5 — Dependency intelligence outdated tool
5
+ *
6
+ * Reads the local manifest (~/.skillsmith/manifest.json), hashes each installed
7
+ * SKILL.md, and compares against the latest content hash in skill_versions.
8
+ * Optionally includes dependency satisfaction status from skill_dependencies.
9
+ *
10
+ * Tier gate: Community (null feature flag — no license required).
11
+ *
12
+ * Hash display: truncated to 8 chars for human readability (full hash stored).
13
+ */
14
+ import { z } from 'zod';
15
+ import type { ToolContext } from '../context.js';
16
+ /**
17
+ * Input schema for skill_outdated tool
18
+ */
19
+ export declare const outdatedInputSchema: z.ZodObject<{
20
+ /** Include dependency satisfaction status in results (default: true) */
21
+ include_deps: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ include_deps: boolean;
24
+ }, {
25
+ include_deps?: boolean | undefined;
26
+ }>;
27
+ export type OutdatedInput = z.infer<typeof outdatedInputSchema>;
28
+ /**
29
+ * Dependency satisfaction details for a single skill
30
+ */
31
+ export interface DependencyStatus {
32
+ total: number;
33
+ satisfied: string[];
34
+ missing: string[];
35
+ }
36
+ /**
37
+ * Per-skill outdated information returned by the tool
38
+ */
39
+ export interface OutdatedSkillInfo {
40
+ /** Registry skill identifier (e.g. "author/skill-name") */
41
+ id: string;
42
+ /** 8-char prefix of the locally-installed content hash */
43
+ installed_hash: string;
44
+ /** 8-char prefix of the latest registry hash */
45
+ latest_hash: string;
46
+ /** Status of the skill: current, outdated, or unknown (no registry data) */
47
+ status: 'current' | 'outdated' | 'unknown';
48
+ /** Semver from the latest version record, if available */
49
+ semver: string | null;
50
+ /** Dependency satisfaction details (omitted when include_deps is false) */
51
+ dependencies?: DependencyStatus;
52
+ }
53
+ /**
54
+ * Summary counts for the outdated check
55
+ */
56
+ export interface OutdatedSummary {
57
+ total_installed: number;
58
+ outdated: number;
59
+ up_to_date: number;
60
+ unknown: number;
61
+ missing_deps: number;
62
+ }
63
+ /**
64
+ * Response from skill_outdated tool
65
+ */
66
+ export interface OutdatedResponse {
67
+ skills: OutdatedSkillInfo[];
68
+ summary: OutdatedSummary;
69
+ }
70
+ /**
71
+ * MCP tool definition for skill_outdated
72
+ */
73
+ export declare const outdatedToolSchema: {
74
+ name: "skill_outdated";
75
+ description: string;
76
+ inputSchema: {
77
+ type: "object";
78
+ properties: {
79
+ include_deps: {
80
+ type: string;
81
+ description: string;
82
+ };
83
+ };
84
+ required: never[];
85
+ };
86
+ };
87
+ /**
88
+ * Execute the skill_outdated tool.
89
+ *
90
+ * 1. Reads the manifest. If missing/empty, returns an empty result.
91
+ * 2. For each installed skill, hashes the local SKILL.md and compares
92
+ * against the latest entry in skill_versions.
93
+ * 3. If include_deps is true, queries skill_dependencies for each skill
94
+ * and checks whether skill-type deps are installed.
95
+ *
96
+ * @param input Validated tool input
97
+ * @param context Tool context with database connection
98
+ * @returns OutdatedResponse with per-skill status and summary
99
+ */
100
+ export declare function executeOutdated(input: OutdatedInput, context: ToolContext): Promise<OutdatedResponse>;
101
+ //# sourceMappingURL=outdated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outdated.d.ts","sourceRoot":"","sources":["../../../src/tools/outdated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAShD;;GAEG;AACH,eAAO,MAAM,mBAAmB;IAC9B,wEAAwE;;;;;;EAMxE,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAA;IACV,0DAA0D;IAC1D,cAAc,EAAE,MAAM,CAAA;IACtB,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAA;IACnB,4EAA4E;IAC5E,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAA;IAC1C,0DAA0D;IAC1D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,gBAAgB,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAC3B,OAAO,EAAE,eAAe,CAAA;CACzB;AAMD;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;CAgB9B,CAAA;AA0DD;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC,CA8G3B"}