agent-skills-cli 1.0.7 → 1.0.9

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 (158) hide show
  1. package/README.md +43 -27
  2. package/dist/cli/agents.d.ts +10 -0
  3. package/dist/cli/agents.d.ts.map +1 -0
  4. package/dist/cli/agents.js +270 -0
  5. package/dist/cli/agents.js.map +1 -0
  6. package/dist/cli/commands/audit.d.ts +11 -0
  7. package/dist/cli/commands/audit.d.ts.map +1 -0
  8. package/dist/cli/commands/audit.js +168 -0
  9. package/dist/cli/commands/audit.js.map +1 -0
  10. package/dist/cli/commands/blueprint.d.ts +11 -0
  11. package/dist/cli/commands/blueprint.d.ts.map +1 -0
  12. package/dist/cli/commands/blueprint.js +210 -0
  13. package/dist/cli/commands/blueprint.js.map +1 -0
  14. package/dist/cli/commands/bootstrap.d.ts +11 -0
  15. package/dist/cli/commands/bootstrap.d.ts.map +1 -0
  16. package/dist/cli/commands/bootstrap.js +267 -0
  17. package/dist/cli/commands/bootstrap.js.map +1 -0
  18. package/dist/cli/commands/capture.d.ts +11 -0
  19. package/dist/cli/commands/capture.d.ts.map +1 -0
  20. package/dist/cli/commands/capture.js +109 -0
  21. package/dist/cli/commands/capture.js.map +1 -0
  22. package/dist/cli/commands/ci.d.ts +11 -0
  23. package/dist/cli/commands/ci.d.ts.map +1 -0
  24. package/dist/cli/commands/ci.js +144 -0
  25. package/dist/cli/commands/ci.js.map +1 -0
  26. package/dist/cli/commands/collab.d.ts +11 -0
  27. package/dist/cli/commands/collab.d.ts.map +1 -0
  28. package/dist/cli/commands/collab.js +196 -0
  29. package/dist/cli/commands/collab.js.map +1 -0
  30. package/dist/cli/commands/convert.d.ts +11 -0
  31. package/dist/cli/commands/convert.d.ts.map +1 -0
  32. package/dist/cli/commands/convert.js +219 -0
  33. package/dist/cli/commands/convert.js.map +1 -0
  34. package/dist/cli/commands/craft.d.ts +18 -0
  35. package/dist/cli/commands/craft.d.ts.map +1 -0
  36. package/dist/cli/commands/craft.js +205 -0
  37. package/dist/cli/commands/craft.js.map +1 -0
  38. package/dist/cli/commands/export.d.ts +9 -0
  39. package/dist/cli/commands/export.d.ts.map +1 -0
  40. package/dist/cli/commands/export.js +103 -0
  41. package/dist/cli/commands/export.js.map +1 -0
  42. package/dist/cli/commands/forge.d.ts +11 -0
  43. package/dist/cli/commands/forge.d.ts.map +1 -0
  44. package/dist/cli/commands/forge.js +152 -0
  45. package/dist/cli/commands/forge.js.map +1 -0
  46. package/dist/cli/commands/grid.d.ts +11 -0
  47. package/dist/cli/commands/grid.d.ts.map +1 -0
  48. package/dist/cli/commands/grid.js +217 -0
  49. package/dist/cli/commands/grid.js.map +1 -0
  50. package/dist/cli/commands/insight.d.ts +7 -0
  51. package/dist/cli/commands/insight.d.ts.map +1 -0
  52. package/dist/cli/commands/insight.js +71 -0
  53. package/dist/cli/commands/insight.js.map +1 -0
  54. package/dist/cli/commands/install.d.ts +6 -0
  55. package/dist/cli/commands/install.d.ts.map +1 -0
  56. package/dist/cli/commands/install.js +359 -0
  57. package/dist/cli/commands/install.js.map +1 -0
  58. package/dist/cli/commands/interactive.d.ts +7 -0
  59. package/dist/cli/commands/interactive.d.ts.map +1 -0
  60. package/dist/cli/commands/interactive.js +535 -0
  61. package/dist/cli/commands/interactive.js.map +1 -0
  62. package/dist/cli/commands/list.d.ts +6 -0
  63. package/dist/cli/commands/list.d.ts.map +1 -0
  64. package/dist/cli/commands/list.js +77 -0
  65. package/dist/cli/commands/list.js.map +1 -0
  66. package/dist/cli/commands/lockspec.d.ts +11 -0
  67. package/dist/cli/commands/lockspec.d.ts.map +1 -0
  68. package/dist/cli/commands/lockspec.js +179 -0
  69. package/dist/cli/commands/lockspec.js.map +1 -0
  70. package/dist/cli/commands/marketplace.d.ts +7 -0
  71. package/dist/cli/commands/marketplace.d.ts.map +1 -0
  72. package/dist/cli/commands/marketplace.js +417 -0
  73. package/dist/cli/commands/marketplace.js.map +1 -0
  74. package/dist/cli/commands/method.d.ts +7 -0
  75. package/dist/cli/commands/method.d.ts.map +1 -0
  76. package/dist/cli/commands/method.js +140 -0
  77. package/dist/cli/commands/method.js.map +1 -0
  78. package/dist/cli/commands/mine.d.ts +11 -0
  79. package/dist/cli/commands/mine.d.ts.map +1 -0
  80. package/dist/cli/commands/mine.js +254 -0
  81. package/dist/cli/commands/mine.js.map +1 -0
  82. package/dist/cli/commands/recall.d.ts +11 -0
  83. package/dist/cli/commands/recall.d.ts.map +1 -0
  84. package/dist/cli/commands/recall.js +201 -0
  85. package/dist/cli/commands/recall.js.map +1 -0
  86. package/dist/cli/commands/remove.d.ts +40 -0
  87. package/dist/cli/commands/remove.d.ts.map +1 -0
  88. package/dist/cli/commands/remove.js +161 -0
  89. package/dist/cli/commands/remove.js.map +1 -0
  90. package/dist/cli/commands/rule.d.ts +11 -0
  91. package/dist/cli/commands/rule.d.ts.map +1 -0
  92. package/dist/cli/commands/rule.js +230 -0
  93. package/dist/cli/commands/rule.js.map +1 -0
  94. package/dist/cli/commands/search.d.ts +6 -0
  95. package/dist/cli/commands/search.d.ts.map +1 -0
  96. package/dist/cli/commands/search.js +173 -0
  97. package/dist/cli/commands/search.js.map +1 -0
  98. package/dist/cli/commands/show.d.ts +6 -0
  99. package/dist/cli/commands/show.d.ts.map +1 -0
  100. package/dist/cli/commands/show.js +150 -0
  101. package/dist/cli/commands/show.js.map +1 -0
  102. package/dist/cli/commands/submit.d.ts +15 -0
  103. package/dist/cli/commands/submit.d.ts.map +1 -0
  104. package/dist/cli/commands/submit.js +151 -0
  105. package/dist/cli/commands/submit.js.map +1 -0
  106. package/dist/cli/commands/suggest.d.ts +11 -0
  107. package/dist/cli/commands/suggest.d.ts.map +1 -0
  108. package/dist/cli/commands/suggest.js +164 -0
  109. package/dist/cli/commands/suggest.js.map +1 -0
  110. package/dist/cli/commands/track.d.ts +11 -0
  111. package/dist/cli/commands/track.d.ts.map +1 -0
  112. package/dist/cli/commands/track.js +199 -0
  113. package/dist/cli/commands/track.js.map +1 -0
  114. package/dist/cli/commands/trigger.d.ts +11 -0
  115. package/dist/cli/commands/trigger.d.ts.map +1 -0
  116. package/dist/cli/commands/trigger.js +157 -0
  117. package/dist/cli/commands/trigger.js.map +1 -0
  118. package/dist/cli/commands/utils-commands.d.ts +9 -0
  119. package/dist/cli/commands/utils-commands.d.ts.map +1 -0
  120. package/dist/cli/commands/utils-commands.js +389 -0
  121. package/dist/cli/commands/utils-commands.js.map +1 -0
  122. package/dist/cli/commands/validate.d.ts +6 -0
  123. package/dist/cli/commands/validate.d.ts.map +1 -0
  124. package/dist/cli/commands/validate.js +40 -0
  125. package/dist/cli/commands/validate.js.map +1 -0
  126. package/dist/cli/fzf-search.d.ts +28 -0
  127. package/dist/cli/fzf-search.d.ts.map +1 -0
  128. package/dist/cli/fzf-search.js +211 -0
  129. package/dist/cli/fzf-search.js.map +1 -0
  130. package/dist/cli/index.d.ts +3 -0
  131. package/dist/cli/index.d.ts.map +1 -1
  132. package/dist/cli/index.js +87 -2537
  133. package/dist/cli/index.js.map +1 -1
  134. package/dist/core/audit.d.ts +24 -0
  135. package/dist/core/audit.d.ts.map +1 -0
  136. package/dist/core/audit.js +195 -0
  137. package/dist/core/audit.js.map +1 -0
  138. package/dist/core/index.d.ts +10 -0
  139. package/dist/core/index.d.ts.map +1 -1
  140. package/dist/core/index.js +10 -0
  141. package/dist/core/index.js.map +1 -1
  142. package/dist/core/installer.d.ts +79 -0
  143. package/dist/core/installer.d.ts.map +1 -0
  144. package/dist/core/installer.js +142 -0
  145. package/dist/core/installer.js.map +1 -0
  146. package/dist/core/scanner-rules.d.ts +58 -0
  147. package/dist/core/scanner-rules.d.ts.map +1 -0
  148. package/dist/core/scanner-rules.js +335 -0
  149. package/dist/core/scanner-rules.js.map +1 -0
  150. package/dist/core/skill-lock.d.ts +114 -0
  151. package/dist/core/skill-lock.d.ts.map +1 -0
  152. package/dist/core/skill-lock.js +133 -0
  153. package/dist/core/skill-lock.js.map +1 -0
  154. package/dist/core/suggest.d.ts +51 -0
  155. package/dist/core/suggest.d.ts.map +1 -0
  156. package/dist/core/suggest.js +241 -0
  157. package/dist/core/suggest.js.map +1 -0
  158. package/package.json +2 -2
@@ -0,0 +1,254 @@
1
+ /**
2
+ * Mine Command
3
+ * Extract patterns and conventions from git history
4
+ * (SkillKit calls this "learn" — we call it "mine")
5
+ */
6
+ import chalk from 'chalk';
7
+ import ora from 'ora';
8
+ import { execSync } from 'child_process';
9
+ import { writeFile, mkdir } from 'fs/promises';
10
+ import { resolve, join } from 'path';
11
+ /**
12
+ * Register the mine command
13
+ */
14
+ export function registerMineCommand(program) {
15
+ program
16
+ .command('mine')
17
+ .alias('mn')
18
+ .description('Extract coding patterns and conventions from git history')
19
+ .option('-d, --depth <n>', 'Number of commits to analyze', '100')
20
+ .option('-o, --output <path>', 'Save patterns to file')
21
+ .option('-f, --format <fmt>', 'Output format: text, json, skill', 'text')
22
+ .action(async (options) => {
23
+ try {
24
+ await mineCommand(options);
25
+ }
26
+ catch (err) {
27
+ console.error(chalk.red('Error:'), err.message);
28
+ process.exit(1);
29
+ }
30
+ });
31
+ }
32
+ async function mineCommand(options) {
33
+ const depth = parseInt(options.depth || '100');
34
+ const spinner = ora(`Analyzing last ${depth} commits...`).start();
35
+ // Check if we're in a git repo
36
+ try {
37
+ execSync('git rev-parse --git-dir', { stdio: 'pipe' });
38
+ }
39
+ catch {
40
+ spinner.fail('Not a git repository');
41
+ process.exit(1);
42
+ }
43
+ // Extract patterns
44
+ const patterns = [];
45
+ // 1. Commit message patterns
46
+ spinner.text = 'Mining commit message patterns...';
47
+ const commitPatterns = mineCommitPatterns(depth);
48
+ patterns.push(...commitPatterns);
49
+ // 2. File change patterns
50
+ spinner.text = 'Mining file change patterns...';
51
+ const filePatterns = mineFilePatterns(depth);
52
+ patterns.push(...filePatterns);
53
+ // 3. Extension/language patterns
54
+ spinner.text = 'Mining language patterns...';
55
+ const langPatterns = mineLanguagePatterns(depth);
56
+ patterns.push(...langPatterns);
57
+ spinner.succeed(`Mined ${patterns.length} patterns from ${depth} commits`);
58
+ console.log('');
59
+ // Output based on format
60
+ if (options.format === 'json') {
61
+ const output = JSON.stringify(patterns, null, 2);
62
+ if (options.output) {
63
+ await writeFile(resolve(options.output), output);
64
+ console.log(chalk.green(`Saved to ${options.output}`));
65
+ }
66
+ else {
67
+ console.log(output);
68
+ }
69
+ }
70
+ else if (options.format === 'skill') {
71
+ const skillContent = patternsToSkill(patterns);
72
+ if (options.output) {
73
+ const outDir = resolve(options.output);
74
+ await mkdir(outDir, { recursive: true });
75
+ await writeFile(join(outDir, 'SKILL.md'), skillContent);
76
+ console.log(chalk.green(`Saved skill to ${options.output}/SKILL.md`));
77
+ }
78
+ else {
79
+ console.log(skillContent);
80
+ }
81
+ }
82
+ else {
83
+ printPatterns(patterns);
84
+ if (options.output) {
85
+ await writeFile(resolve(options.output), formatPatternsText(patterns));
86
+ console.log('');
87
+ console.log(chalk.green(`Saved to ${options.output}`));
88
+ }
89
+ }
90
+ console.log('');
91
+ }
92
+ function mineCommitPatterns(depth) {
93
+ const patterns = [];
94
+ try {
95
+ const log = execSync(`git log --oneline -${depth} --format="%s"`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
96
+ const messages = log.trim().split('\n').filter(Boolean);
97
+ // Detect conventional commits
98
+ const prefixCounts = {};
99
+ const prefixExamples = {};
100
+ for (const msg of messages) {
101
+ const match = msg.match(/^(feat|fix|docs|style|refactor|test|chore|ci|build|perf|revert)(\(.*?\))?:/i);
102
+ if (match) {
103
+ const prefix = match[1].toLowerCase();
104
+ prefixCounts[prefix] = (prefixCounts[prefix] || 0) + 1;
105
+ if (!prefixExamples[prefix])
106
+ prefixExamples[prefix] = [];
107
+ if (prefixExamples[prefix].length < 3)
108
+ prefixExamples[prefix].push(msg);
109
+ }
110
+ }
111
+ const conventionalTotal = Object.values(prefixCounts).reduce((a, b) => a + b, 0);
112
+ if (conventionalTotal > messages.length * 0.3) {
113
+ patterns.push({
114
+ type: 'commit-convention',
115
+ pattern: 'Conventional Commits',
116
+ frequency: Math.round((conventionalTotal / messages.length) * 100),
117
+ examples: Object.entries(prefixCounts)
118
+ .sort((a, b) => b[1] - a[1])
119
+ .slice(0, 5)
120
+ .map(([k, v]) => `${k}: ${v} commits`),
121
+ });
122
+ }
123
+ // Detect other patterns
124
+ const avgLength = messages.reduce((a, m) => a + m.length, 0) / messages.length;
125
+ patterns.push({
126
+ type: 'commit-style',
127
+ pattern: `Average commit message: ${Math.round(avgLength)} chars`,
128
+ frequency: 100,
129
+ examples: messages.slice(0, 3),
130
+ });
131
+ }
132
+ catch { /* ignore git errors */ }
133
+ return patterns;
134
+ }
135
+ function mineFilePatterns(depth) {
136
+ const patterns = [];
137
+ try {
138
+ const log = execSync(`git log --name-only --oneline -${depth} --format=""`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
139
+ const files = log.trim().split('\n').filter(Boolean);
140
+ // Count most changed files
141
+ const fileCounts = {};
142
+ for (const file of files) {
143
+ fileCounts[file] = (fileCounts[file] || 0) + 1;
144
+ }
145
+ const hotFiles = Object.entries(fileCounts)
146
+ .sort((a, b) => b[1] - a[1])
147
+ .slice(0, 10);
148
+ if (hotFiles.length > 0) {
149
+ patterns.push({
150
+ type: 'hotspots',
151
+ pattern: 'Most frequently changed files',
152
+ frequency: hotFiles[0][1],
153
+ examples: hotFiles.slice(0, 5).map(([f, c]) => `${f} (${c} changes)`),
154
+ });
155
+ }
156
+ // Detect co-change patterns
157
+ const dirCounts = {};
158
+ for (const file of files) {
159
+ const dir = file.split('/').slice(0, -1).join('/');
160
+ if (dir)
161
+ dirCounts[dir] = (dirCounts[dir] || 0) + 1;
162
+ }
163
+ const hotDirs = Object.entries(dirCounts)
164
+ .sort((a, b) => b[1] - a[1])
165
+ .slice(0, 5);
166
+ if (hotDirs.length > 0) {
167
+ patterns.push({
168
+ type: 'active-directories',
169
+ pattern: 'Most active directories',
170
+ frequency: hotDirs[0][1],
171
+ examples: hotDirs.map(([d, c]) => `${d}/ (${c} changes)`),
172
+ });
173
+ }
174
+ }
175
+ catch { /* ignore */ }
176
+ return patterns;
177
+ }
178
+ function mineLanguagePatterns(depth) {
179
+ const patterns = [];
180
+ try {
181
+ const log = execSync(`git log --name-only --oneline -${depth} --format=""`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
182
+ const files = log.trim().split('\n').filter(Boolean);
183
+ const extCounts = {};
184
+ for (const file of files) {
185
+ const ext = file.split('.').pop()?.toLowerCase();
186
+ if (ext && ext.length < 10) {
187
+ extCounts[ext] = (extCounts[ext] || 0) + 1;
188
+ }
189
+ }
190
+ const topExts = Object.entries(extCounts)
191
+ .sort((a, b) => b[1] - a[1])
192
+ .slice(0, 8);
193
+ if (topExts.length > 0) {
194
+ patterns.push({
195
+ type: 'languages',
196
+ pattern: 'File types by change frequency',
197
+ frequency: topExts[0][1],
198
+ examples: topExts.map(([e, c]) => `.${e} (${c} changes)`),
199
+ });
200
+ }
201
+ }
202
+ catch { /* ignore */ }
203
+ return patterns;
204
+ }
205
+ function printPatterns(patterns) {
206
+ console.log(chalk.bold('⛏️ Mined Patterns'));
207
+ console.log('');
208
+ for (const p of patterns) {
209
+ const typeIcon = p.type === 'commit-convention' ? '📝' :
210
+ p.type === 'commit-style' ? '✏️' :
211
+ p.type === 'hotspots' ? '🔥' :
212
+ p.type === 'active-directories' ? '📁' :
213
+ p.type === 'languages' ? '🔤' : '◆';
214
+ console.log(` ${typeIcon} ${chalk.bold(p.pattern)}`);
215
+ for (const ex of p.examples) {
216
+ console.log(` ${chalk.dim('↳')} ${chalk.dim(ex)}`);
217
+ }
218
+ console.log('');
219
+ }
220
+ }
221
+ function formatPatternsText(patterns) {
222
+ const lines = ['# Mined Patterns', ''];
223
+ for (const p of patterns) {
224
+ lines.push(`## ${p.pattern}`);
225
+ lines.push(`Type: ${p.type}`);
226
+ for (const ex of p.examples) {
227
+ lines.push(`- ${ex}`);
228
+ }
229
+ lines.push('');
230
+ }
231
+ return lines.join('\n');
232
+ }
233
+ function patternsToSkill(patterns) {
234
+ const lines = [];
235
+ lines.push('---');
236
+ lines.push('name: project-patterns');
237
+ lines.push('description: Conventions mined from git history');
238
+ lines.push('---');
239
+ lines.push('');
240
+ lines.push('# Project Patterns');
241
+ lines.push('');
242
+ lines.push('Conventions automatically extracted from git history.');
243
+ lines.push('');
244
+ for (const p of patterns) {
245
+ lines.push(`## ${p.pattern}`);
246
+ lines.push('');
247
+ for (const ex of p.examples) {
248
+ lines.push(`- ${ex}`);
249
+ }
250
+ lines.push('');
251
+ }
252
+ return lines.join('\n');
253
+ }
254
+ //# sourceMappingURL=mine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mine.js","sourceRoot":"","sources":["../../../src/cli/commands/mine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Recall Command
3
+ * Session memory — persist and recall context across sessions
4
+ * (SkillKit calls this "memory" — we call it "recall")
5
+ */
6
+ import { Command } from 'commander';
7
+ /**
8
+ * Register the recall command
9
+ */
10
+ export declare function registerRecallCommand(program: Command): void;
11
+ //# sourceMappingURL=recall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recall.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/recall.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBpC;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgF5D"}
@@ -0,0 +1,201 @@
1
+ /**
2
+ * Recall Command
3
+ * Session memory — persist and recall context across sessions
4
+ * (SkillKit calls this "memory" — we call it "recall")
5
+ */
6
+ import chalk from 'chalk';
7
+ import { readFile, writeFile, mkdir } from 'fs/promises';
8
+ import { existsSync } from 'fs';
9
+ import { join } from 'path';
10
+ import { homedir } from 'os';
11
+ const MEMORY_DIR = join(homedir(), '.agent-skills', 'memory');
12
+ const MEMORY_FILE = join(MEMORY_DIR, 'store.json');
13
+ /**
14
+ * Register the recall command
15
+ */
16
+ export function registerRecallCommand(program) {
17
+ const recall = program
18
+ .command('recall')
19
+ .alias('rc')
20
+ .description('Session memory — store and recall context across sessions');
21
+ recall
22
+ .command('save <key> <value>')
23
+ .description('Save a memory entry')
24
+ .option('-t, --tags <tags>', 'Comma-separated tags')
25
+ .action(async (key, value, options) => {
26
+ try {
27
+ await recallSave(key, value, options.tags);
28
+ }
29
+ catch (err) {
30
+ console.error(chalk.red('Error:'), err.message);
31
+ process.exit(1);
32
+ }
33
+ });
34
+ recall
35
+ .command('get <key>')
36
+ .description('Retrieve a memory entry')
37
+ .action(async (key) => {
38
+ try {
39
+ await recallGet(key);
40
+ }
41
+ catch (err) {
42
+ console.error(chalk.red('Error:'), err.message);
43
+ process.exit(1);
44
+ }
45
+ });
46
+ recall
47
+ .command('list')
48
+ .description('List all memory entries')
49
+ .option('-t, --tag <tag>', 'Filter by tag')
50
+ .option('-j, --json', 'Output as JSON')
51
+ .action(async (options) => {
52
+ try {
53
+ await recallList(options.tag, options.json);
54
+ }
55
+ catch (err) {
56
+ console.error(chalk.red('Error:'), err.message);
57
+ process.exit(1);
58
+ }
59
+ });
60
+ recall
61
+ .command('search <query>')
62
+ .description('Search memory entries')
63
+ .action(async (query) => {
64
+ try {
65
+ await recallSearch(query);
66
+ }
67
+ catch (err) {
68
+ console.error(chalk.red('Error:'), err.message);
69
+ process.exit(1);
70
+ }
71
+ });
72
+ recall
73
+ .command('delete <key>')
74
+ .description('Delete a memory entry')
75
+ .action(async (key) => {
76
+ try {
77
+ await recallDelete(key);
78
+ }
79
+ catch (err) {
80
+ console.error(chalk.red('Error:'), err.message);
81
+ process.exit(1);
82
+ }
83
+ });
84
+ recall
85
+ .command('clear')
86
+ .description('Clear all memory entries')
87
+ .action(async () => {
88
+ try {
89
+ await recallClear();
90
+ }
91
+ catch (err) {
92
+ console.error(chalk.red('Error:'), err.message);
93
+ process.exit(1);
94
+ }
95
+ });
96
+ }
97
+ async function loadStore() {
98
+ if (!existsSync(MEMORY_FILE)) {
99
+ return { version: '1.0.0', entries: [] };
100
+ }
101
+ try {
102
+ return JSON.parse(await readFile(MEMORY_FILE, 'utf-8'));
103
+ }
104
+ catch {
105
+ return { version: '1.0.0', entries: [] };
106
+ }
107
+ }
108
+ async function saveStore(store) {
109
+ await mkdir(MEMORY_DIR, { recursive: true });
110
+ await writeFile(MEMORY_FILE, JSON.stringify(store, null, 2));
111
+ }
112
+ async function recallSave(key, value, tags) {
113
+ const store = await loadStore();
114
+ const now = new Date().toISOString();
115
+ const tagList = tags ? tags.split(',').map(t => t.trim()) : [];
116
+ const existing = store.entries.findIndex(e => e.key === key);
117
+ if (existing >= 0) {
118
+ store.entries[existing].value = value;
119
+ store.entries[existing].tags = tagList.length > 0 ? tagList : store.entries[existing].tags;
120
+ store.entries[existing].updatedAt = now;
121
+ console.log(chalk.green(`✓ Updated memory: ${chalk.cyan(key)}`));
122
+ }
123
+ else {
124
+ store.entries.push({ key, value, tags: tagList, createdAt: now, updatedAt: now });
125
+ console.log(chalk.green(`✓ Saved memory: ${chalk.cyan(key)}`));
126
+ }
127
+ await saveStore(store);
128
+ }
129
+ async function recallGet(key) {
130
+ const store = await loadStore();
131
+ const entry = store.entries.find(e => e.key === key);
132
+ if (!entry) {
133
+ console.log(chalk.yellow(`No memory found for key: ${key}`));
134
+ return;
135
+ }
136
+ console.log('');
137
+ console.log(`${chalk.bold(entry.key)}: ${entry.value}`);
138
+ if (entry.tags.length > 0) {
139
+ console.log(chalk.dim(` Tags: ${entry.tags.join(', ')}`));
140
+ }
141
+ console.log(chalk.dim(` Saved: ${entry.createdAt}`));
142
+ console.log('');
143
+ }
144
+ async function recallList(tag, json) {
145
+ const store = await loadStore();
146
+ let entries = store.entries;
147
+ if (tag) {
148
+ entries = entries.filter(e => e.tags.includes(tag));
149
+ }
150
+ if (json) {
151
+ console.log(JSON.stringify(entries, null, 2));
152
+ return;
153
+ }
154
+ if (entries.length === 0) {
155
+ console.log(chalk.dim('No memories stored.'));
156
+ return;
157
+ }
158
+ console.log('');
159
+ console.log(chalk.bold(`🧠 Memory Store (${entries.length} entries)`));
160
+ console.log('');
161
+ for (const entry of entries) {
162
+ const tags = entry.tags.length > 0 ? chalk.dim(` [${entry.tags.join(', ')}]`) : '';
163
+ console.log(` ${chalk.cyan(entry.key.padEnd(25))} ${entry.value.substring(0, 50)}${entry.value.length > 50 ? '…' : ''}${tags}`);
164
+ }
165
+ console.log('');
166
+ }
167
+ async function recallSearch(query) {
168
+ const store = await loadStore();
169
+ const q = query.toLowerCase();
170
+ const matches = store.entries.filter(e => e.key.toLowerCase().includes(q) ||
171
+ e.value.toLowerCase().includes(q) ||
172
+ e.tags.some(t => t.toLowerCase().includes(q)));
173
+ if (matches.length === 0) {
174
+ console.log(chalk.dim(`No matches for "${query}"`));
175
+ return;
176
+ }
177
+ console.log('');
178
+ console.log(chalk.bold(`🔍 Found ${matches.length} matches for "${query}"`));
179
+ console.log('');
180
+ for (const entry of matches) {
181
+ console.log(` ${chalk.cyan(entry.key)}: ${entry.value.substring(0, 60)}${entry.value.length > 60 ? '…' : ''}`);
182
+ }
183
+ console.log('');
184
+ }
185
+ async function recallDelete(key) {
186
+ const store = await loadStore();
187
+ const idx = store.entries.findIndex(e => e.key === key);
188
+ if (idx < 0) {
189
+ console.log(chalk.yellow(`No memory found for key: ${key}`));
190
+ return;
191
+ }
192
+ store.entries.splice(idx, 1);
193
+ await saveStore(store);
194
+ console.log(chalk.green(`✓ Deleted memory: ${key}`));
195
+ }
196
+ async function recallClear() {
197
+ const store = { version: '1.0.0', entries: [] };
198
+ await saveStore(store);
199
+ console.log(chalk.green('✓ All memories cleared'));
200
+ }
201
+ //# sourceMappingURL=recall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recall.js","sourceRoot":"","sources":["../../../src/cli/commands/recall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Remove Command
3
+ * Interactively remove installed skills
4
+ */
5
+ /**
6
+ * Agent configuration (imported from main CLI)
7
+ */
8
+ interface AgentConfig {
9
+ name: string;
10
+ displayName: string;
11
+ projectDir: string;
12
+ globalDir: string;
13
+ }
14
+ /**
15
+ * Remove command options
16
+ */
17
+ export interface RemoveOptions {
18
+ /** Remove from global installation */
19
+ global?: boolean;
20
+ /** Target specific agent only */
21
+ agent?: string;
22
+ /** Skip confirmation prompt */
23
+ yes?: boolean;
24
+ /** Remove all installed skills */
25
+ all?: boolean;
26
+ }
27
+ /**
28
+ * Remove installed skills
29
+ *
30
+ * @param skillNames - Optional list of skill names to remove
31
+ * @param options - Remove options
32
+ * @param agentConfigs - Agent configurations
33
+ */
34
+ export declare function removeCommand(skillNames: string[] | undefined, options: RemoveOptions | undefined, agentConfigs: Record<string, AgentConfig>): Promise<void>;
35
+ /**
36
+ * Register the remove command with commander
37
+ */
38
+ export declare function registerRemoveCommand(program: any, agentConfigs: Record<string, AgentConfig>): void;
39
+ export {};
40
+ //# sourceMappingURL=remove.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,UAAU,WAAW;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,sCAAsC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,kCAAkC;IAClC,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAC/B,UAAU,EAAE,MAAM,EAAE,YAAK,EACzB,OAAO,EAAE,aAAa,YAAK,EAC3B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAqJf;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,GAAG,EACZ,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAC1C,IAAI,CAkBN"}