overskill 1.0.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/commands/delete.d.ts +1 -1
- package/dist/commands/delete.d.ts.map +1 -1
- package/dist/commands/delete.js +19 -19
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/feedback.d.ts +3 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +40 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/new.d.ts.map +1 -1
- package/dist/commands/new.js +77 -98
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/publish.d.ts +1 -1
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +53 -53
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/sync.d.ts +1 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +27 -27
- package/dist/commands/sync.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/meta-skill.d.ts +1 -1
- package/dist/lib/meta-skill.d.ts.map +1 -1
- package/dist/lib/meta-skill.js +19 -15
- package/dist/lib/meta-skill.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Overskill
|
|
2
2
|
|
|
3
|
-
[Overskill](https://overskill.jacobchaselubitz.com/)
|
|
3
|
+
[Visit the Overskill Website](https://overskill.jacobchaselubitz.com/)
|
|
4
4
|
|
|
5
|
-
Overskill is a skills manager
|
|
5
|
+
Overskill is a AI coding agent skills manager that lets you keep skills in sync across repositories. It gives you a single place to write, version, and sync the instruction files that guide tools like Claude Code, Cursor, Codex, and Windsurf — then apply them to any repository with one command.
|
|
6
6
|
|
|
7
7
|
**Why Overskill?**
|
|
8
8
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,aAAa,SAiFtB,CAAC"}
|
package/dist/commands/delete.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
import chalk from
|
|
3
|
-
import ora from
|
|
4
|
-
import * as api from
|
|
5
|
-
import * as localRegistry from
|
|
6
|
-
export const deleteCommand = new Command(
|
|
7
|
-
.description(
|
|
8
|
-
.argument(
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import * as api from "../lib/api.js";
|
|
5
|
+
import * as localRegistry from "../lib/local-registry/index.js";
|
|
6
|
+
export const deleteCommand = new Command("delete")
|
|
7
|
+
.description("Delete a skill from a registry (default: local)")
|
|
8
|
+
.argument("<skill>", "Skill to delete, format: <slug> (local) or <registry>/<slug> (remote)")
|
|
9
9
|
.action(async (skill) => {
|
|
10
10
|
try {
|
|
11
11
|
// Parse the skill argument to determine if it's local or remote
|
|
12
|
-
const parts = skill.split(
|
|
12
|
+
const parts = skill.split("/");
|
|
13
13
|
if (parts.length === 1) {
|
|
14
14
|
// Local delete: skills delete my-skill
|
|
15
15
|
const slug = parts[0];
|
|
@@ -22,16 +22,16 @@ export const deleteCommand = new Command('delete')
|
|
|
22
22
|
const deleted = localRegistry.deleteSkill(slug);
|
|
23
23
|
if (deleted) {
|
|
24
24
|
spinner.succeed(`Deleted ${chalk.cyan(slug)} from local registry`);
|
|
25
|
-
console.log(
|
|
26
|
-
console.log(chalk.gray(`Note: You may also need to run ${chalk.cyan(`
|
|
25
|
+
console.log("");
|
|
26
|
+
console.log(chalk.gray(`Note: You may also need to run ${chalk.cyan(`skill remove ${slug}`)} from any projects that use this skill.`));
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
29
|
-
spinner.fail(
|
|
29
|
+
spinner.fail("Failed to delete skill");
|
|
30
30
|
process.exit(1);
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
catch (error) {
|
|
34
|
-
spinner.fail(
|
|
34
|
+
spinner.fail("Failed to delete skill");
|
|
35
35
|
throw error;
|
|
36
36
|
}
|
|
37
37
|
}
|
|
@@ -42,22 +42,22 @@ export const deleteCommand = new Command('delete')
|
|
|
42
42
|
try {
|
|
43
43
|
await api.deleteSkill(registrySlug, skillSlug);
|
|
44
44
|
spinner.succeed(`Deleted ${chalk.cyan(skillSlug)} from registry ${chalk.cyan(registrySlug)}`);
|
|
45
|
-
console.log(
|
|
46
|
-
console.log(chalk.gray(`Note: You may also need to run ${chalk.cyan(`
|
|
45
|
+
console.log("");
|
|
46
|
+
console.log(chalk.gray(`Note: You may also need to run ${chalk.cyan(`skill remove ${skillSlug}`)} from any projects that use this skill.`));
|
|
47
47
|
}
|
|
48
48
|
catch (error) {
|
|
49
|
-
spinner.fail(
|
|
49
|
+
spinner.fail("Failed to delete skill");
|
|
50
50
|
throw error;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
else {
|
|
54
|
-
console.log(chalk.red(
|
|
55
|
-
console.log(`Use: ${chalk.cyan(
|
|
54
|
+
console.log(chalk.red("Error: Invalid skill format."));
|
|
55
|
+
console.log(`Use: ${chalk.cyan("skill delete <slug>")} (local) or ${chalk.cyan("skill delete <registry>/<slug>")} (remote)`);
|
|
56
56
|
process.exit(1);
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
catch (error) {
|
|
60
|
-
console.error(chalk.red(
|
|
60
|
+
console.error(chalk.red("Error:"), error instanceof Error ? error.message : error);
|
|
61
61
|
process.exit(1);
|
|
62
62
|
}
|
|
63
63
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,iDAAiD,CAAC;KAC9D,QAAQ,
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,iDAAiD,CAAC;KAC9D,QAAQ,CACP,SAAS,EACT,uEAAuE,CACxE;KACA,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;IAC9B,IAAI,CAAC;QACH,gEAAgE;QAChE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,uCAAuC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEtB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,gCAAgC,CAAC,CACjE,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,OAAO,GAAG,GAAG,CACjB,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CACtD,CAAC,KAAK,EAAE,CAAC;YAEV,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,OAAO,CAAC,WAAW,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;oBACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,kCAAkC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,yCAAyC,CAC9G,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACvC,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,oDAAoD;YACpD,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC;YAExC,MAAM,OAAO,GAAG,GAAG,CACjB,YAAY,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CACjF,CAAC,KAAK,EAAE,CAAC;YAEV,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,WAAW,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBAC/C,OAAO,CAAC,OAAO,CACb,WAAW,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAC7E,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,kCAAkC,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,EAAE,CAAC,yCAAyC,CACnH,CACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACvC,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CACT,QAAQ,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,WAAW,CAChH,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EACnB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,eAAO,MAAM,eAAe,SAuCxB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import open from 'open';
|
|
4
|
+
import { input } from '@inquirer/prompts';
|
|
5
|
+
const REPO_URL = 'https://github.com/jchaselubitz/overskill-cli';
|
|
6
|
+
export const feedbackCommand = new Command('feedback')
|
|
7
|
+
.description('Submit feedback by creating a GitHub issue')
|
|
8
|
+
.option('-t, --title <title>', 'Issue title')
|
|
9
|
+
.option('-b, --body <body>', 'Issue body')
|
|
10
|
+
.action(async (options) => {
|
|
11
|
+
try {
|
|
12
|
+
const title = options.title ||
|
|
13
|
+
(await input({
|
|
14
|
+
message: 'Feedback title:',
|
|
15
|
+
validate: val => (val.trim() ? true : 'Title is required')
|
|
16
|
+
}));
|
|
17
|
+
const body = options.body ||
|
|
18
|
+
(await input({
|
|
19
|
+
message: 'Description (optional, you can add more on GitHub):'
|
|
20
|
+
}));
|
|
21
|
+
const issueUrl = new URL(`${REPO_URL}/issues/new`);
|
|
22
|
+
issueUrl.searchParams.set('title', title.trim());
|
|
23
|
+
if (body && body.trim()) {
|
|
24
|
+
issueUrl.searchParams.set('body', body.trim());
|
|
25
|
+
}
|
|
26
|
+
console.log('');
|
|
27
|
+
console.log(chalk.cyan('Opening GitHub to create your issue...'));
|
|
28
|
+
await open(issueUrl.toString());
|
|
29
|
+
console.log(chalk.green('Done! Complete and submit the issue in your browser.'));
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
if (error?.name === 'ExitPromptError') {
|
|
33
|
+
console.log(chalk.yellow('\nFeedback cancelled.'));
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
console.error(chalk.red('Error:'), error instanceof Error ? error.message : error);
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,QAAQ,GAAG,+CAA+C,CAAC;AAEjE,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC;KACnD,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,qBAAqB,EAAE,aAAa,CAAC;KAC5C,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC;KACzC,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,KAAK,GACT,OAAO,CAAC,KAAK;YACb,CAAC,MAAM,KAAK,CAAC;gBACX,OAAO,EAAE,iBAAiB;gBAC1B,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;aAC3D,CAAC,CAAC,CAAC;QAEN,MAAM,IAAI,GACR,OAAO,CAAC,IAAI;YACZ,CAAC,MAAM,KAAK,CAAC;gBACX,OAAO,EAAE,qDAAqD;aAC/D,CAAC,CAAC,CAAC;QAEN,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,QAAQ,aAAa,CAAC,CAAC;QACnD,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACxB,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAClE,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEhC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;IACnF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAAiC,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsGpC,eAAO,MAAM,UAAU,SAwNnB,CAAC"}
|
package/dist/commands/new.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
2
|
import * as fs from 'fs';
|
|
3
3
|
import * as path from 'path';
|
|
4
|
-
import * as os from 'os';
|
|
5
4
|
import { spawn } from 'child_process';
|
|
6
5
|
import chalk from 'chalk';
|
|
7
6
|
import ora from 'ora';
|
|
@@ -28,7 +27,7 @@ function parseMetadata(values) {
|
|
|
28
27
|
const result = {};
|
|
29
28
|
const entries = values ?? [];
|
|
30
29
|
for (const entry of entries) {
|
|
31
|
-
const separatorIndex = entry.indexOf(
|
|
30
|
+
const separatorIndex = entry.indexOf("=");
|
|
32
31
|
if (separatorIndex <= 0 || separatorIndex === entry.length - 1) {
|
|
33
32
|
throw new Error(`Invalid metadata '${entry}'. Use key=value.`);
|
|
34
33
|
}
|
|
@@ -42,74 +41,61 @@ function parseMetadata(values) {
|
|
|
42
41
|
return result;
|
|
43
42
|
}
|
|
44
43
|
function buildFrontmatter(params) {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}
|
|
44
|
+
let body = `Name: ${params.name}\nDescription:`;
|
|
45
|
+
if (params.description) {
|
|
46
|
+
body += ` ${params.description}`;
|
|
47
|
+
}
|
|
49
48
|
if (params.metadata && Object.keys(params.metadata).length > 0) {
|
|
50
|
-
|
|
49
|
+
const metaYaml = yaml.stringify(params.metadata, { lineWidth: 0 }).trim();
|
|
50
|
+
body += `\n${metaYaml}`;
|
|
51
51
|
}
|
|
52
|
-
const body = yaml.stringify(frontmatter, { lineWidth: 0 }).trim();
|
|
53
52
|
return `---\n${body}\n---\n\n`;
|
|
54
53
|
}
|
|
55
54
|
/**
|
|
56
|
-
* Open
|
|
55
|
+
* Open a file in the user's preferred editor (fire-and-forget for GUI editors)
|
|
57
56
|
*/
|
|
58
|
-
|
|
57
|
+
function openFileInEditor(filePath) {
|
|
59
58
|
const editor = auth.getEditor();
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
reject(new Error(`Failed to open editor: ${err.message}`));
|
|
80
|
-
});
|
|
81
|
-
child.on('exit', (code) => {
|
|
82
|
-
if (code !== 0) {
|
|
83
|
-
fs.unlinkSync(tempFile);
|
|
84
|
-
reject(new Error(`Editor exited with code ${code}`));
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
// Read the edited content
|
|
88
|
-
const editedContent = fs.readFileSync(tempFile, 'utf-8');
|
|
89
|
-
fs.unlinkSync(tempFile);
|
|
90
|
-
resolve(editedContent);
|
|
91
|
-
});
|
|
59
|
+
let command;
|
|
60
|
+
let args;
|
|
61
|
+
try {
|
|
62
|
+
const parsed = parseEditorCommand(editor);
|
|
63
|
+
command = parsed.command;
|
|
64
|
+
args = parsed.args;
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
// Silently fail — the file is already created, user can open manually
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const child = spawn(command, [...args, filePath], {
|
|
71
|
+
stdio: 'ignore',
|
|
72
|
+
detached: true,
|
|
73
|
+
});
|
|
74
|
+
// Detach so the CLI doesn't wait for the editor to close
|
|
75
|
+
child.unref();
|
|
76
|
+
child.on('error', () => {
|
|
77
|
+
// Silently fail — the file is already created, user can open manually
|
|
92
78
|
});
|
|
93
79
|
}
|
|
94
|
-
export const newCommand = new Command(
|
|
95
|
-
.description(
|
|
96
|
-
.argument(
|
|
97
|
-
.option(
|
|
98
|
-
.option(
|
|
99
|
-
.option(
|
|
100
|
-
.option(
|
|
101
|
-
.option(
|
|
102
|
-
.option(
|
|
103
|
-
.option(
|
|
104
|
-
.option(
|
|
105
|
-
.option(
|
|
106
|
-
.option(
|
|
107
|
-
.option(
|
|
80
|
+
export const newCommand = new Command("new")
|
|
81
|
+
.description("Create a new skill in the local registry")
|
|
82
|
+
.argument("<slug>", "Skill slug (lowercase, hyphens allowed)")
|
|
83
|
+
.option("-n, --name <name>", "Skill display name")
|
|
84
|
+
.option("-d, --description <desc>", "Skill description")
|
|
85
|
+
.option("-t, --tags <tags>", "Comma-separated tags")
|
|
86
|
+
.option("-c, --compat <compat>", "Comma-separated compatibility list (e.g., claude,gpt4)")
|
|
87
|
+
.option("-v, --version <version>", "Initial version", "1.0.0")
|
|
88
|
+
.option("-m, --metadata <key=value>", "Repeatable metadata to include in SKILL.md frontmatter", collectMetadata, [])
|
|
89
|
+
.option("--content <file>", "Read content from file instead of opening editor")
|
|
90
|
+
.option("--blank", "Open editor with blank content (frontmatter only)")
|
|
91
|
+
.option("--no-editor", "Skip editor and create with template")
|
|
92
|
+
.option("--no-add", "Skip adding to project after creation")
|
|
93
|
+
.option("--no-sync", "Skip automatic sync after adding")
|
|
108
94
|
.action(async (slug, options) => {
|
|
109
95
|
try {
|
|
110
96
|
// Validate slug
|
|
111
97
|
if (!/^[a-z0-9-]+$/.test(slug)) {
|
|
112
|
-
console.log(chalk.red(
|
|
98
|
+
console.log(chalk.red("Error: Slug must be lowercase alphanumeric with hyphens only."));
|
|
113
99
|
process.exit(1);
|
|
114
100
|
}
|
|
115
101
|
// Check if skill already exists
|
|
@@ -124,19 +110,22 @@ export const newCommand = new Command('new')
|
|
|
124
110
|
console.log(chalk.red(`Error: Invalid version '${version}'. Use semver format (e.g., 1.0.0).`));
|
|
125
111
|
process.exit(1);
|
|
126
112
|
}
|
|
127
|
-
// Parse options
|
|
128
|
-
const name = options.name || slug
|
|
113
|
+
// Parse options — default name to slug unless explicitly provided
|
|
114
|
+
const name = options.name || slug;
|
|
129
115
|
const description = options.description || '';
|
|
130
116
|
const metadata = parseMetadata(options.metadata);
|
|
131
|
-
const tags = options.tags
|
|
132
|
-
|
|
133
|
-
|
|
117
|
+
const tags = options.tags
|
|
118
|
+
? options.tags.split(',').map((t) => t.trim())
|
|
119
|
+
: [];
|
|
120
|
+
const compat = options.compat
|
|
121
|
+
? options.compat.split(',').map((c) => c.trim())
|
|
122
|
+
: [];
|
|
134
123
|
const frontmatter = buildFrontmatter({
|
|
135
|
-
name
|
|
136
|
-
description
|
|
137
|
-
metadata
|
|
124
|
+
name,
|
|
125
|
+
description,
|
|
126
|
+
metadata,
|
|
138
127
|
});
|
|
139
|
-
//
|
|
128
|
+
// Build content
|
|
140
129
|
let content;
|
|
141
130
|
if (options.content) {
|
|
142
131
|
// Read from file
|
|
@@ -146,33 +135,13 @@ export const newCommand = new Command('new')
|
|
|
146
135
|
}
|
|
147
136
|
content = fs.readFileSync(options.content, 'utf-8');
|
|
148
137
|
}
|
|
149
|
-
else if (options.editor === false) {
|
|
150
|
-
// Use template without editor
|
|
151
|
-
content = `${frontmatter}${SKILL_TEMPLATE.replace('{{name}}', name)}`;
|
|
152
|
-
}
|
|
153
138
|
else if (options.blank) {
|
|
154
|
-
//
|
|
155
|
-
|
|
156
|
-
const blankContent = `${frontmatter}\n`;
|
|
157
|
-
try {
|
|
158
|
-
content = await openInEditor(blankContent);
|
|
159
|
-
}
|
|
160
|
-
catch (error) {
|
|
161
|
-
console.log(chalk.red('Error:'), error instanceof Error ? error.message : error);
|
|
162
|
-
process.exit(1);
|
|
163
|
-
}
|
|
139
|
+
// Frontmatter only
|
|
140
|
+
content = `${frontmatter}\n`;
|
|
164
141
|
}
|
|
165
142
|
else {
|
|
166
|
-
//
|
|
167
|
-
|
|
168
|
-
const template = `${frontmatter}${SKILL_TEMPLATE.replace('{{name}}', name)}`;
|
|
169
|
-
try {
|
|
170
|
-
content = await openInEditor(template);
|
|
171
|
-
}
|
|
172
|
-
catch (error) {
|
|
173
|
-
console.log(chalk.red('Error:'), error instanceof Error ? error.message : error);
|
|
174
|
-
process.exit(1);
|
|
175
|
-
}
|
|
143
|
+
// Template with frontmatter
|
|
144
|
+
content = `${frontmatter}${SKILL_TEMPLATE.replace('{{name}}', name)}`;
|
|
176
145
|
}
|
|
177
146
|
// Validate content
|
|
178
147
|
if (!content.trim()) {
|
|
@@ -231,22 +200,32 @@ export const newCommand = new Command('new')
|
|
|
231
200
|
}
|
|
232
201
|
}
|
|
233
202
|
}
|
|
203
|
+
// Open the synced skill file in the editor (unless --no-editor)
|
|
204
|
+
if (options.editor !== false && isInProject) {
|
|
205
|
+
const installPath = config.getInstallPath();
|
|
206
|
+
const skillFilePath = path.join(installPath, slug, 'SKILL.md');
|
|
207
|
+
if (fs.existsSync(skillFilePath)) {
|
|
208
|
+
console.log('');
|
|
209
|
+
console.log(chalk.gray(`Opening ${chalk.cyan(skillFilePath)} in editor...`));
|
|
210
|
+
openFileInEditor(skillFilePath);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
234
213
|
console.log('');
|
|
235
214
|
if (addedToProject) {
|
|
236
215
|
console.log('Next steps:');
|
|
237
|
-
console.log(` ${chalk.cyan(`
|
|
238
|
-
console.log(` ${chalk.cyan(`
|
|
216
|
+
console.log(` ${chalk.cyan(`skill info ${slug}`)} View skill details`);
|
|
217
|
+
console.log(` ${chalk.cyan(`skill publish ${slug}`)} Publish a new version`);
|
|
239
218
|
}
|
|
240
219
|
else if (isInProject) {
|
|
241
220
|
console.log('Next steps:');
|
|
242
|
-
console.log(` ${chalk.cyan(`
|
|
243
|
-
console.log(` ${chalk.cyan(`
|
|
244
|
-
console.log(` ${chalk.cyan(`
|
|
221
|
+
console.log(` ${chalk.cyan(`skill add ${slug}`)} Add to current project`);
|
|
222
|
+
console.log(` ${chalk.cyan(`skill info ${slug}`)} View skill details`);
|
|
223
|
+
console.log(` ${chalk.cyan(`skill publish ${slug}`)} Publish a new version`);
|
|
245
224
|
}
|
|
246
225
|
else {
|
|
247
226
|
console.log('Next steps:');
|
|
248
|
-
console.log(` ${chalk.cyan('
|
|
249
|
-
console.log(` ${chalk.cyan(`
|
|
227
|
+
console.log(` ${chalk.cyan('skill init')} Initialize a project first`);
|
|
228
|
+
console.log(` ${chalk.cyan(`skill info ${slug}`)} View skill details`);
|
|
250
229
|
}
|
|
251
230
|
}
|
|
252
231
|
catch (error) {
|
|
@@ -255,7 +234,7 @@ export const newCommand = new Command('new')
|
|
|
255
234
|
}
|
|
256
235
|
}
|
|
257
236
|
catch (error) {
|
|
258
|
-
console.error(chalk.red(
|
|
237
|
+
console.error(chalk.red("Error:"), error instanceof Error ? error.message : error);
|
|
259
238
|
process.exit(1);
|
|
260
239
|
}
|
|
261
240
|
});
|
package/dist/commands/new.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoFpC,eAAO,MAAM,cAAc,SA4LvB,CAAC"}
|
package/dist/commands/publish.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
import * as fs from
|
|
3
|
-
import * as path from
|
|
4
|
-
import * as os from
|
|
5
|
-
import { spawn } from
|
|
6
|
-
import chalk from
|
|
7
|
-
import ora from
|
|
8
|
-
import * as localRegistry from
|
|
9
|
-
import * as auth from
|
|
10
|
-
import { isValidVersion, bumpVersion, isGreaterThan } from
|
|
11
|
-
import * as readline from
|
|
12
|
-
import { parseEditorCommand } from
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import * as fs from "fs";
|
|
3
|
+
import * as path from "path";
|
|
4
|
+
import * as os from "os";
|
|
5
|
+
import { spawn } from "child_process";
|
|
6
|
+
import chalk from "chalk";
|
|
7
|
+
import ora from "ora";
|
|
8
|
+
import * as localRegistry from "../lib/local-registry/index.js";
|
|
9
|
+
import * as auth from "../lib/auth.js";
|
|
10
|
+
import { isValidVersion, bumpVersion, isGreaterThan } from "../lib/semver.js";
|
|
11
|
+
import * as readline from "readline";
|
|
12
|
+
import { parseEditorCommand } from "../lib/editor.js";
|
|
13
13
|
/**
|
|
14
14
|
* Prompt user for input
|
|
15
15
|
*/
|
|
@@ -19,10 +19,10 @@ async function prompt(question, defaultValue) {
|
|
|
19
19
|
output: process.stdout,
|
|
20
20
|
});
|
|
21
21
|
return new Promise((resolve) => {
|
|
22
|
-
const displayDefault = defaultValue ? ` [${defaultValue}]` :
|
|
22
|
+
const displayDefault = defaultValue ? ` [${defaultValue}]` : "";
|
|
23
23
|
rl.question(`${question}${displayDefault}: `, (answer) => {
|
|
24
24
|
rl.close();
|
|
25
|
-
resolve(answer.trim() || defaultValue ||
|
|
25
|
+
resolve(answer.trim() || defaultValue || "");
|
|
26
26
|
});
|
|
27
27
|
});
|
|
28
28
|
}
|
|
@@ -33,7 +33,7 @@ async function openInEditor(content) {
|
|
|
33
33
|
const editor = auth.getEditor();
|
|
34
34
|
const tempFile = path.join(os.tmpdir(), `skill-${Date.now()}.md`);
|
|
35
35
|
// Write initial content to temp file
|
|
36
|
-
fs.writeFileSync(tempFile, content,
|
|
36
|
+
fs.writeFileSync(tempFile, content, "utf-8");
|
|
37
37
|
return new Promise((resolve, reject) => {
|
|
38
38
|
let command;
|
|
39
39
|
let args;
|
|
@@ -47,34 +47,34 @@ async function openInEditor(content) {
|
|
|
47
47
|
reject(error);
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
|
-
const child = spawn(command, [...args, tempFile], { stdio:
|
|
51
|
-
child.on(
|
|
50
|
+
const child = spawn(command, [...args, tempFile], { stdio: "inherit" });
|
|
51
|
+
child.on("error", (err) => {
|
|
52
52
|
fs.unlinkSync(tempFile);
|
|
53
|
-
reject(new Error(`Failed to open editor: ${err.message}`));
|
|
53
|
+
reject(new Error(`Failed to open editor. Ensure your editor is properly configured by running ${chalk.cyan("skill config show")} to view your current configuration and ${chalk.cyan("skill config editor <name>")} to set your preferred editor. Error message: ${err.message}`));
|
|
54
54
|
});
|
|
55
|
-
child.on(
|
|
55
|
+
child.on("exit", (code) => {
|
|
56
56
|
if (code !== 0) {
|
|
57
57
|
fs.unlinkSync(tempFile);
|
|
58
58
|
reject(new Error(`Editor exited with code ${code}`));
|
|
59
59
|
return;
|
|
60
60
|
}
|
|
61
61
|
// Read the edited content
|
|
62
|
-
const editedContent = fs.readFileSync(tempFile,
|
|
62
|
+
const editedContent = fs.readFileSync(tempFile, "utf-8");
|
|
63
63
|
fs.unlinkSync(tempFile);
|
|
64
64
|
resolve(editedContent);
|
|
65
65
|
});
|
|
66
66
|
});
|
|
67
67
|
}
|
|
68
|
-
export const publishCommand = new Command(
|
|
69
|
-
.description(
|
|
70
|
-
.argument(
|
|
71
|
-
.option(
|
|
72
|
-
.option(
|
|
73
|
-
.option(
|
|
74
|
-
.option(
|
|
75
|
-
.option(
|
|
76
|
-
.option(
|
|
77
|
-
.option(
|
|
68
|
+
export const publishCommand = new Command("publish")
|
|
69
|
+
.description("Publish a new version of an existing skill to the local registry")
|
|
70
|
+
.argument("<slug>", "Skill slug")
|
|
71
|
+
.option("-v, --version <version>", "New version (must be higher than current)")
|
|
72
|
+
.option("--patch", "Bump patch version (1.0.0 -> 1.0.1)")
|
|
73
|
+
.option("--minor", "Bump minor version (1.0.0 -> 1.1.0)")
|
|
74
|
+
.option("--major", "Bump major version (1.0.0 -> 2.0.0)")
|
|
75
|
+
.option("-m, --message <message>", "Changelog message for this version")
|
|
76
|
+
.option("--content <file>", "Read new content from file")
|
|
77
|
+
.option("--no-editor", "Skip editor (use current content)")
|
|
78
78
|
.action(async (slug, options) => {
|
|
79
79
|
try {
|
|
80
80
|
// Check if skill exists
|
|
@@ -101,18 +101,18 @@ export const publishCommand = new Command('publish')
|
|
|
101
101
|
newVersion = options.version;
|
|
102
102
|
}
|
|
103
103
|
else if (options.patch) {
|
|
104
|
-
newVersion = bumpVersion(currentVersion,
|
|
104
|
+
newVersion = bumpVersion(currentVersion, "patch") || "";
|
|
105
105
|
}
|
|
106
106
|
else if (options.minor) {
|
|
107
|
-
newVersion = bumpVersion(currentVersion,
|
|
107
|
+
newVersion = bumpVersion(currentVersion, "minor") || "";
|
|
108
108
|
}
|
|
109
109
|
else if (options.major) {
|
|
110
|
-
newVersion = bumpVersion(currentVersion,
|
|
110
|
+
newVersion = bumpVersion(currentVersion, "major") || "";
|
|
111
111
|
}
|
|
112
112
|
else {
|
|
113
113
|
// Prompt for version
|
|
114
|
-
const suggestedVersion = bumpVersion(currentVersion,
|
|
115
|
-
newVersion = await prompt(
|
|
114
|
+
const suggestedVersion = bumpVersion(currentVersion, "patch") || "";
|
|
115
|
+
newVersion = await prompt("New version", suggestedVersion);
|
|
116
116
|
}
|
|
117
117
|
// Validate new version
|
|
118
118
|
if (!isValidVersion(newVersion)) {
|
|
@@ -143,7 +143,7 @@ export const publishCommand = new Command('publish')
|
|
|
143
143
|
console.log(chalk.red(`Error: File not found: ${options.content}`));
|
|
144
144
|
process.exit(1);
|
|
145
145
|
}
|
|
146
|
-
content = fs.readFileSync(options.content,
|
|
146
|
+
content = fs.readFileSync(options.content, "utf-8");
|
|
147
147
|
}
|
|
148
148
|
else if (options.editor === false) {
|
|
149
149
|
// Use current content without editing
|
|
@@ -151,24 +151,24 @@ export const publishCommand = new Command('publish')
|
|
|
151
151
|
}
|
|
152
152
|
else {
|
|
153
153
|
// Open editor with current content
|
|
154
|
-
console.log(chalk.gray(
|
|
154
|
+
console.log(chalk.gray("Opening editor with current content..."));
|
|
155
155
|
try {
|
|
156
156
|
content = await openInEditor(currentSkill.content);
|
|
157
157
|
}
|
|
158
158
|
catch (error) {
|
|
159
|
-
console.log(chalk.red(
|
|
159
|
+
console.log(chalk.red("Error:"), error instanceof Error ? error.message : error);
|
|
160
160
|
process.exit(1);
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
// Validate content
|
|
164
164
|
if (!content.trim()) {
|
|
165
|
-
console.log(chalk.red(
|
|
165
|
+
console.log(chalk.red("Error: Skill content cannot be empty."));
|
|
166
166
|
process.exit(1);
|
|
167
167
|
}
|
|
168
168
|
// Get changelog message
|
|
169
169
|
let changelog = options.message;
|
|
170
170
|
if (!changelog && options.editor !== false) {
|
|
171
|
-
changelog = await prompt(
|
|
171
|
+
changelog = await prompt("Changelog message (optional)");
|
|
172
172
|
}
|
|
173
173
|
const spinner = ora(`Publishing ${slug}@${newVersion}...`).start();
|
|
174
174
|
try {
|
|
@@ -184,31 +184,31 @@ export const publishCommand = new Command('publish')
|
|
|
184
184
|
compat: skillInfo.meta.compat,
|
|
185
185
|
},
|
|
186
186
|
provenance: {
|
|
187
|
-
kind:
|
|
188
|
-
source:
|
|
187
|
+
kind: "local",
|
|
188
|
+
source: "created",
|
|
189
189
|
},
|
|
190
190
|
changelog: changelog || undefined,
|
|
191
191
|
});
|
|
192
192
|
spinner.succeed(`Published ${chalk.cyan(slug)}@${newVersion}`);
|
|
193
|
-
console.log(
|
|
194
|
-
console.log(
|
|
195
|
-
console.log(` ${chalk.bold(
|
|
196
|
-
console.log(` ${chalk.bold(
|
|
193
|
+
console.log("");
|
|
194
|
+
console.log("Version details:");
|
|
195
|
+
console.log(` ${chalk.bold("Version:")} ${newVersion}`);
|
|
196
|
+
console.log(` ${chalk.bold("SHA256:")} ${sha256.substring(0, 16)}...`);
|
|
197
197
|
if (changelog) {
|
|
198
|
-
console.log(` ${chalk.bold(
|
|
198
|
+
console.log(` ${chalk.bold("Changelog:")} ${changelog}`);
|
|
199
199
|
}
|
|
200
|
-
console.log(
|
|
201
|
-
console.log(
|
|
202
|
-
console.log(` ${chalk.cyan(`
|
|
203
|
-
console.log(` ${chalk.cyan(`
|
|
200
|
+
console.log("");
|
|
201
|
+
console.log("Next steps:");
|
|
202
|
+
console.log(` ${chalk.cyan(`skill sync`)} Update projects using this skill`);
|
|
203
|
+
console.log(` ${chalk.cyan(`skill info ${slug}`)} View all versions`);
|
|
204
204
|
}
|
|
205
205
|
catch (error) {
|
|
206
|
-
spinner.fail(
|
|
206
|
+
spinner.fail("Failed to publish version");
|
|
207
207
|
throw error;
|
|
208
208
|
}
|
|
209
209
|
}
|
|
210
210
|
catch (error) {
|
|
211
|
-
console.error(chalk.red(
|
|
211
|
+
console.error(chalk.red("Error:"), error instanceof Error ? error.message : error);
|
|
212
212
|
process.exit(1);
|
|
213
213
|
}
|
|
214
214
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,KAAK,UAAU,MAAM,
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/sync.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,eAAO,MAAM,WAAW,SAiLpB,CAAC"}
|
package/dist/commands/sync.js
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
import chalk from
|
|
3
|
-
import ora from
|
|
4
|
-
import * as config from
|
|
5
|
-
import * as localRegistry from
|
|
6
|
-
import * as lockfile from
|
|
7
|
-
import * as fs from
|
|
8
|
-
import * as indexGen from
|
|
9
|
-
import { META_SKILL_CONTENT } from
|
|
10
|
-
export const syncCommand = new Command(
|
|
11
|
-
.description(
|
|
12
|
-
.option(
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import * as config from "../lib/config.js";
|
|
5
|
+
import * as localRegistry from "../lib/local-registry/index.js";
|
|
6
|
+
import * as lockfile from "../lib/lockfile.js";
|
|
7
|
+
import * as fs from "../lib/fs.js";
|
|
8
|
+
import * as indexGen from "../lib/index-gen.js";
|
|
9
|
+
import { META_SKILL_CONTENT } from "../lib/meta-skill.js";
|
|
10
|
+
export const syncCommand = new Command("sync")
|
|
11
|
+
.description("Sync all configured skills from local registry to project")
|
|
12
|
+
.option("-f, --force", "Force re-install even if unchanged")
|
|
13
13
|
.action(async (options) => {
|
|
14
14
|
try {
|
|
15
15
|
// Check if initialized
|
|
16
16
|
if (!config.configExists()) {
|
|
17
|
-
console.log(chalk.red(
|
|
18
|
-
console.log(`Run ${chalk.cyan(
|
|
17
|
+
console.log(chalk.red("Error: Not in a skills project."));
|
|
18
|
+
console.log(`Run ${chalk.cyan("skill init")} first.`);
|
|
19
19
|
process.exit(1);
|
|
20
20
|
}
|
|
21
21
|
const skillsConfig = config.readConfig();
|
|
22
22
|
if (skillsConfig.skills.length === 0) {
|
|
23
|
-
console.log(chalk.yellow(
|
|
24
|
-
console.log(`Run ${chalk.cyan(
|
|
23
|
+
console.log(chalk.yellow("No skills configured."));
|
|
24
|
+
console.log(`Run ${chalk.cyan("skill add <slug>")} to add skills.`);
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
|
-
const spinner = ora(
|
|
27
|
+
const spinner = ora("Syncing skills...").start();
|
|
28
28
|
// Ensure install directory exists
|
|
29
29
|
fs.ensureDir(config.getInstallPath());
|
|
30
30
|
// Read existing lockfile
|
|
@@ -42,7 +42,7 @@ export const syncCommand = new Command('sync')
|
|
|
42
42
|
if (!localRegistry.skillExists(slug)) {
|
|
43
43
|
errors.push({
|
|
44
44
|
slug,
|
|
45
|
-
error: `Not found in local cache. Run
|
|
45
|
+
error: `Not found in local cache. Run ${chalk.cyan("skill new ${slug}")} or ${chalk.cyan("skill cache import")}`,
|
|
46
46
|
});
|
|
47
47
|
continue;
|
|
48
48
|
}
|
|
@@ -69,7 +69,7 @@ export const syncCommand = new Command('sync')
|
|
|
69
69
|
errors.push({
|
|
70
70
|
slug,
|
|
71
71
|
error: constraint
|
|
72
|
-
? `No cached version satisfies '${constraint}'. Available: ${availableVersions.join(
|
|
72
|
+
? `No cached version satisfies '${constraint}'. Available: ${availableVersions.join(", ")}`
|
|
73
73
|
: `No versions cached`,
|
|
74
74
|
});
|
|
75
75
|
continue;
|
|
@@ -92,7 +92,7 @@ export const syncCommand = new Command('sync')
|
|
|
92
92
|
// Build metadata for project install
|
|
93
93
|
const meta = {
|
|
94
94
|
slug,
|
|
95
|
-
registry:
|
|
95
|
+
registry: "local",
|
|
96
96
|
version: resolvedVersion,
|
|
97
97
|
name: skillData.meta.name,
|
|
98
98
|
description: skillData.meta.description,
|
|
@@ -101,7 +101,7 @@ export const syncCommand = new Command('sync')
|
|
|
101
101
|
};
|
|
102
102
|
// Write skill to project
|
|
103
103
|
fs.writeSkill({
|
|
104
|
-
registry:
|
|
104
|
+
registry: "local",
|
|
105
105
|
slug,
|
|
106
106
|
version: resolvedVersion,
|
|
107
107
|
content: skillData.content,
|
|
@@ -121,7 +121,7 @@ export const syncCommand = new Command('sync')
|
|
|
121
121
|
// Add to lock
|
|
122
122
|
lockedSkills.push({
|
|
123
123
|
slug,
|
|
124
|
-
registry:
|
|
124
|
+
registry: "local",
|
|
125
125
|
version: resolvedVersion,
|
|
126
126
|
sha256: skillData.sha256,
|
|
127
127
|
});
|
|
@@ -136,24 +136,24 @@ export const syncCommand = new Command('sync')
|
|
|
136
136
|
fs.updateCursorRules(skillsConfig.install_path);
|
|
137
137
|
// Write lockfile
|
|
138
138
|
lockfile.writeLockfile(lockfile.createLockfile(lockedSkills));
|
|
139
|
-
spinner.succeed(
|
|
139
|
+
spinner.succeed("Sync complete!");
|
|
140
140
|
// Print summary
|
|
141
141
|
const totalSuccess = updated + unchanged;
|
|
142
|
-
console.log(
|
|
142
|
+
console.log("");
|
|
143
143
|
console.log(`Synced ${chalk.cyan(totalSuccess)} skills.`);
|
|
144
144
|
console.log(` ${chalk.green(updated)} updated`);
|
|
145
145
|
console.log(` ${chalk.gray(unchanged)} unchanged`);
|
|
146
146
|
// Print errors if any
|
|
147
147
|
if (errors.length > 0) {
|
|
148
|
-
console.log(
|
|
148
|
+
console.log("");
|
|
149
149
|
console.log(chalk.red(`${errors.length} skill(s) failed:`));
|
|
150
150
|
for (const error of errors) {
|
|
151
|
-
console.log(` ${chalk.red(
|
|
151
|
+
console.log(` ${chalk.red("✗")} ${error.slug}: ${error.error}`);
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
155
|
catch (error) {
|
|
156
|
-
console.error(chalk.red(
|
|
156
|
+
console.error(chalk.red("Error:"), error instanceof Error ? error.message : error);
|
|
157
157
|
process.exit(1);
|
|
158
158
|
}
|
|
159
159
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,QAAQ,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,2DAA2D,CAAC;KACxE,MAAM,CAAC,aAAa,EAAE,oCAAoC,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,uBAAuB;QACvB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -23,6 +23,7 @@ import { updateCommand } from './commands/update.js';
|
|
|
23
23
|
import { newCommand } from './commands/new.js';
|
|
24
24
|
import { publishCommand } from './commands/publish.js';
|
|
25
25
|
import { importCommand } from './commands/import.js';
|
|
26
|
+
import { feedbackCommand } from './commands/feedback.js';
|
|
26
27
|
const __filename = fileURLToPath(import.meta.url);
|
|
27
28
|
const __dirname = dirname(__filename);
|
|
28
29
|
const pkg = JSON.parse(readFileSync(join(__dirname, '..', 'package.json'), 'utf-8'));
|
|
@@ -52,5 +53,6 @@ program.addCommand(updateCommand);
|
|
|
52
53
|
program.addCommand(newCommand);
|
|
53
54
|
program.addCommand(publishCommand);
|
|
54
55
|
program.addCommand(importCommand);
|
|
56
|
+
program.addCommand(feedbackCommand);
|
|
55
57
|
program.parse();
|
|
56
58
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/meta-skill.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* The meta-skill content that teaches AI agents how to use the skills system.
|
|
3
3
|
* This is bundled with the CLI and installed to _system/SKILL.md during sync.
|
|
4
4
|
*/
|
|
5
|
-
export declare const META_SKILL_CONTENT = "
|
|
5
|
+
export declare const META_SKILL_CONTENT = "\n---\nname: Overskill skills manager \u2014 Agent Instructions\ndescription: This file explains how to use the Overskill skills manager to create, version, and sync skills to your projects.\n---\n\nYou have access to a skills system that provides curated instruction files\nto guide your work. This file explains how to use it.\n\n## Discovering Skills\n\nCheck the file `SKILLS_INDEX.md` in this directory. It lists every skill\ninstalled in this project with its name, description, tags, and file path.\n\nBefore starting any task, scan SKILLS_INDEX.md to identify relevant skills.\nMatch skills to your task by:\n- Name and description (most reliable)\n- Tags (e.g. if working with Supabase, look for \"supabase\" tag)\n- Compatibility (check if your agent type is listed)\n\n## Using Skills\n\nWhen you find a relevant skill:\n1. Read the full SKILL.md file at the path listed in SKILLS_INDEX.md\n2. Follow its instructions as authoritative guidance for your work\n3. If multiple skills are relevant, read all of them before starting\n4. Skills take precedence over your default patterns when they conflict\n\n## Managing Skills (When Asked by the User)\n\nIf the user asks you to manage skills, you have these CLI commands available.\nRun them in the terminal:\n\n### Viewing Available Skills\n- `skill list` \u2014 Show all skills available in remote registries\n- `skill list --installed` \u2014 Show skills installed in this project\n- `skill search <query>` \u2014 Search for skills by keyword\n- `skill info <name>` \u2014 Show full details about a skill\n\n### Installing and Removing\n- `skill add <name>` \u2014 Add a skill to this project and sync it\n- `skill remove <name>` \u2014 Remove a skill from this project\n- `skill sync` \u2014 Re-sync all installed skills from remote\n- `skill update` \u2014 Pull latest versions of all skills\n\n### Editing and Publishing\n- `skill edit <name>` \u2014 Open a skill for editing in the default editor\n- `skill push <name>` \u2014 Publish local edits to the remote registry\n- `skill diff <name>` \u2014 See what changed between local and remote\n- `skill validate <name>` \u2014 Check skill file structure\n\n### Creating New Skills\nTo create a new skill:\n1. Write a SKILL.md file following the format of existing skills\n2. Run `skill push <name> --from-stdin` piping in the content, or\n3. Create the file in the skills folder and run `skill push <name>`\n\nA good SKILL.md includes:\n- A clear title (# heading)\n- A description of what the skill covers\n- Specific, actionable instructions\n- Code examples where relevant\n- Common pitfalls or anti-patterns to avoid\n\n## Rules\n\n- Do NOT modify .skills.yaml directly \u2014 use the CLI commands\n- Do NOT delete or rename skill folders manually\n- Do NOT assume a skill exists without checking SKILLS_INDEX.md\n- The _system folder (where this file lives) is managed by the CLI \u2014 do not modify it\n";
|
|
6
6
|
//# sourceMappingURL=meta-skill.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-skill.d.ts","sourceRoot":"","sources":["../../src/lib/meta-skill.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"meta-skill.d.ts","sourceRoot":"","sources":["../../src/lib/meta-skill.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,kBAAkB,i3FAsE9B,CAAC"}
|
package/dist/lib/meta-skill.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
* The meta-skill content that teaches AI agents how to use the skills system.
|
|
3
3
|
* This is bundled with the CLI and installed to _system/SKILL.md during sync.
|
|
4
4
|
*/
|
|
5
|
-
export const META_SKILL_CONTENT =
|
|
5
|
+
export const META_SKILL_CONTENT = `
|
|
6
|
+
---
|
|
7
|
+
name: Overskill skills manager — Agent Instructions
|
|
8
|
+
description: This file explains how to use the Overskill skills manager to create, version, and sync skills to your projects.
|
|
9
|
+
---
|
|
6
10
|
|
|
7
11
|
You have access to a skills system that provides curated instruction files
|
|
8
12
|
to guide your work. This file explains how to use it.
|
|
@@ -32,28 +36,28 @@ If the user asks you to manage skills, you have these CLI commands available.
|
|
|
32
36
|
Run them in the terminal:
|
|
33
37
|
|
|
34
38
|
### Viewing Available Skills
|
|
35
|
-
- \`
|
|
36
|
-
- \`
|
|
37
|
-
- \`
|
|
38
|
-
- \`
|
|
39
|
+
- \`skill list\` — Show all skills available in remote registries
|
|
40
|
+
- \`skill list --installed\` — Show skills installed in this project
|
|
41
|
+
- \`skill search <query>\` — Search for skills by keyword
|
|
42
|
+
- \`skill info <name>\` — Show full details about a skill
|
|
39
43
|
|
|
40
44
|
### Installing and Removing
|
|
41
|
-
- \`
|
|
42
|
-
- \`
|
|
43
|
-
- \`
|
|
44
|
-
- \`
|
|
45
|
+
- \`skill add <name>\` — Add a skill to this project and sync it
|
|
46
|
+
- \`skill remove <name>\` — Remove a skill from this project
|
|
47
|
+
- \`skill sync\` — Re-sync all installed skills from remote
|
|
48
|
+
- \`skill update\` — Pull latest versions of all skills
|
|
45
49
|
|
|
46
50
|
### Editing and Publishing
|
|
47
|
-
- \`
|
|
48
|
-
- \`
|
|
49
|
-
- \`
|
|
50
|
-
- \`
|
|
51
|
+
- \`skill edit <name>\` — Open a skill for editing in the default editor
|
|
52
|
+
- \`skill push <name>\` — Publish local edits to the remote registry
|
|
53
|
+
- \`skill diff <name>\` — See what changed between local and remote
|
|
54
|
+
- \`skill validate <name>\` — Check skill file structure
|
|
51
55
|
|
|
52
56
|
### Creating New Skills
|
|
53
57
|
To create a new skill:
|
|
54
58
|
1. Write a SKILL.md file following the format of existing skills
|
|
55
|
-
2. Run \`
|
|
56
|
-
3. Create the file in the skills folder and run \`
|
|
59
|
+
2. Run \`skill push <name> --from-stdin\` piping in the content, or
|
|
60
|
+
3. Create the file in the skills folder and run \`skill push <name>\`
|
|
57
61
|
|
|
58
62
|
A good SKILL.md includes:
|
|
59
63
|
- A clear title (# heading)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-skill.js","sourceRoot":"","sources":["../../src/lib/meta-skill.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG
|
|
1
|
+
{"version":3,"file":"meta-skill.js","sourceRoot":"","sources":["../../src/lib/meta-skill.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEjC,CAAC"}
|