overskill 1.1.0 → 2.0.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 +13 -2
- package/dist/commands/add.d.ts.map +1 -1
- package/dist/commands/add.js +8 -35
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/bundle.d.ts.map +1 -1
- package/dist/commands/bundle.js +1 -6
- package/dist/commands/bundle.js.map +1 -1
- package/dist/commands/edit.js +5 -5
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +5 -19
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +10 -39
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +14 -20
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/new.d.ts.map +1 -1
- package/dist/commands/new.js +10 -24
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/open.d.ts +3 -0
- package/dist/commands/open.d.ts.map +1 -0
- package/dist/commands/open.js +75 -0
- package/dist/commands/open.js.map +1 -0
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +16 -73
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/push.d.ts.map +1 -1
- package/dist/commands/push.js +1 -13
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/rename.d.ts +3 -0
- package/dist/commands/rename.d.ts.map +1 -0
- package/dist/commands/rename.js +177 -0
- package/dist/commands/rename.js.map +1 -0
- package/dist/commands/save.d.ts +3 -0
- package/dist/commands/save.d.ts.map +1 -0
- package/dist/commands/save.js +112 -0
- package/dist/commands/save.js.map +1 -0
- package/dist/commands/search.js +1 -1
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +7 -41
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +80 -98
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/upgrade.d.ts +3 -0
- package/dist/commands/upgrade.d.ts.map +1 -0
- package/dist/commands/upgrade.js +98 -0
- package/dist/commands/upgrade.js.map +1 -0
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +2 -8
- package/dist/commands/validate.js.map +1 -1
- package/dist/index.js +36 -25
- package/dist/index.js.map +1 -1
- package/dist/lib/index-gen.d.ts.map +1 -1
- package/dist/lib/index-gen.js +0 -2
- package/dist/lib/index-gen.js.map +1 -1
- package/dist/lib/local-registry/index.d.ts +3 -5
- package/dist/lib/local-registry/index.d.ts.map +1 -1
- package/dist/lib/local-registry/index.js +2 -5
- package/dist/lib/local-registry/index.js.map +1 -1
- package/dist/lib/local-registry/paths.d.ts +2 -2
- package/dist/lib/local-registry/paths.d.ts.map +1 -1
- package/dist/lib/local-registry/paths.js +4 -4
- package/dist/lib/local-registry/paths.js.map +1 -1
- package/dist/lib/local-registry/skills.d.ts +10 -29
- package/dist/lib/local-registry/skills.d.ts.map +1 -1
- package/dist/lib/local-registry/skills.js +57 -83
- package/dist/lib/local-registry/skills.js.map +1 -1
- package/dist/lib/local-registry/types.d.ts +6 -38
- package/dist/lib/local-registry/types.d.ts.map +1 -1
- package/dist/lib/local-registry/versions.d.ts +6 -57
- package/dist/lib/local-registry/versions.d.ts.map +1 -1
- package/dist/lib/local-registry/versions.js +6 -159
- package/dist/lib/local-registry/versions.js.map +1 -1
- package/dist/lib/lockfile.d.ts +2 -2
- package/dist/lib/lockfile.d.ts.map +1 -1
- package/dist/lib/lockfile.js +5 -10
- package/dist/lib/lockfile.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 +2 -2
- package/dist/types.d.ts +0 -7
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,163 +1,10 @@
|
|
|
1
|
+
export {};
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import * as yaml from 'yaml';
|
|
6
|
-
import { getVersionsPath, ensureDir, getSkillDir } from './paths.js';
|
|
7
|
-
import { sortVersionsDesc, maxSatisfying, isValidVersion } from '../semver.js';
|
|
8
|
-
/**
|
|
9
|
-
* Read versions.yaml for a skill
|
|
10
|
-
*/
|
|
11
|
-
export function readVersionsFile(slug) {
|
|
12
|
-
const versionsPath = getVersionsPath(slug);
|
|
13
|
-
if (!fs.existsSync(versionsPath)) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
const content = fs.readFileSync(versionsPath, 'utf-8');
|
|
17
|
-
return yaml.parse(content);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Write versions.yaml for a skill (atomic)
|
|
21
|
-
*/
|
|
22
|
-
export function writeVersionsFile(slug, data) {
|
|
23
|
-
const versionsPath = getVersionsPath(slug);
|
|
24
|
-
ensureDir(getSkillDir(slug));
|
|
25
|
-
const content = yaml.stringify(data, { lineWidth: 0 });
|
|
26
|
-
// Atomic write
|
|
27
|
-
const tempPath = `${versionsPath}.tmp.${process.pid}.${Date.now()}`;
|
|
28
|
-
try {
|
|
29
|
-
fs.writeFileSync(tempPath, content, 'utf-8');
|
|
30
|
-
fs.renameSync(tempPath, versionsPath);
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
try {
|
|
34
|
-
if (fs.existsSync(tempPath)) {
|
|
35
|
-
fs.unlinkSync(tempPath);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
// Ignore cleanup errors
|
|
40
|
-
}
|
|
41
|
-
throw error;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Get all versions for a skill
|
|
46
|
-
*/
|
|
47
|
-
export function getAllVersions(slug) {
|
|
48
|
-
const file = readVersionsFile(slug);
|
|
49
|
-
return file?.versions || [];
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Get all version strings for a skill (sorted descending)
|
|
53
|
-
*/
|
|
54
|
-
export function getVersionStrings(slug) {
|
|
55
|
-
const entries = getAllVersions(slug);
|
|
56
|
-
const versions = entries.map((e) => e.version);
|
|
57
|
-
return sortVersionsDesc(versions);
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Get the latest version for a skill (highest semver)
|
|
61
|
-
*/
|
|
62
|
-
export function getLatestVersion(slug) {
|
|
63
|
-
const versions = getVersionStrings(slug);
|
|
64
|
-
return versions[0] || null;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Get a specific version entry
|
|
68
|
-
*/
|
|
69
|
-
export function getVersionEntry(slug, version) {
|
|
70
|
-
const entries = getAllVersions(slug);
|
|
71
|
-
return entries.find((e) => e.version === version) || null;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Resolve a version based on a constraint
|
|
75
|
-
*
|
|
76
|
-
* @param slug - Skill slug
|
|
77
|
-
* @param constraint - Optional semver constraint (e.g., "^1.0.0", ">=2.0.0")
|
|
78
|
-
* @returns The resolved version, or null if no match
|
|
79
|
-
*/
|
|
80
|
-
export function resolveVersion(slug, constraint) {
|
|
81
|
-
const versions = getVersionStrings(slug);
|
|
82
|
-
if (versions.length === 0) {
|
|
83
|
-
return null;
|
|
84
|
-
}
|
|
85
|
-
if (!constraint) {
|
|
86
|
-
// No constraint = latest version
|
|
87
|
-
return versions[0];
|
|
88
|
-
}
|
|
89
|
-
// Use semver to find the best match
|
|
90
|
-
return maxSatisfying(versions, constraint);
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Add a new version entry
|
|
94
|
-
*/
|
|
95
|
-
export function addVersionEntry(slug, entry) {
|
|
96
|
-
const file = readVersionsFile(slug) || { versions: [] };
|
|
97
|
-
// Check if version already exists
|
|
98
|
-
const existingIndex = file.versions.findIndex((v) => v.version === entry.version);
|
|
99
|
-
const fullEntry = {
|
|
100
|
-
...entry,
|
|
101
|
-
createdAt: entry.createdAt || new Date().toISOString(),
|
|
102
|
-
};
|
|
103
|
-
if (existingIndex >= 0) {
|
|
104
|
-
// Update existing version
|
|
105
|
-
file.versions[existingIndex] = fullEntry;
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
// Add new version
|
|
109
|
-
file.versions.push(fullEntry);
|
|
110
|
-
}
|
|
111
|
-
// Sort versions descending (newest first)
|
|
112
|
-
file.versions.sort((a, b) => {
|
|
113
|
-
const aValid = isValidVersion(a.version);
|
|
114
|
-
const bValid = isValidVersion(b.version);
|
|
115
|
-
if (!aValid && !bValid)
|
|
116
|
-
return 0;
|
|
117
|
-
if (!aValid)
|
|
118
|
-
return 1;
|
|
119
|
-
if (!bValid)
|
|
120
|
-
return -1;
|
|
121
|
-
return sortVersionsDesc([a.version, b.version])[0] === a.version ? -1 : 1;
|
|
122
|
-
});
|
|
123
|
-
writeVersionsFile(slug, file);
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Remove a version entry
|
|
3
|
+
* Legacy versions module - no longer used.
|
|
4
|
+
* Version tracking has been removed. Skills now store a single
|
|
5
|
+
* version of content identified by sha256 hash in meta.yaml.
|
|
127
6
|
*
|
|
128
|
-
*
|
|
129
|
-
|
|
130
|
-
export function removeVersionEntry(slug, version) {
|
|
131
|
-
const file = readVersionsFile(slug);
|
|
132
|
-
if (!file)
|
|
133
|
-
return false;
|
|
134
|
-
const initialLength = file.versions.length;
|
|
135
|
-
file.versions = file.versions.filter((v) => v.version !== version);
|
|
136
|
-
if (file.versions.length < initialLength) {
|
|
137
|
-
writeVersionsFile(slug, file);
|
|
138
|
-
return true;
|
|
139
|
-
}
|
|
140
|
-
return false;
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Check if a specific version exists
|
|
144
|
-
*/
|
|
145
|
-
export function versionExists(slug, version) {
|
|
146
|
-
return getVersionEntry(slug, version) !== null;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Get version count for a skill
|
|
150
|
-
*/
|
|
151
|
-
export function getVersionCount(slug) {
|
|
152
|
-
return getAllVersions(slug).length;
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Create default provenance for a locally created skill
|
|
7
|
+
* This file is kept as a placeholder. The old versions.yaml files
|
|
8
|
+
* in the registry are read for migration purposes in skills.ts.
|
|
156
9
|
*/
|
|
157
|
-
export function createLocalProvenance(source = 'created') {
|
|
158
|
-
return {
|
|
159
|
-
kind: 'local',
|
|
160
|
-
source,
|
|
161
|
-
};
|
|
162
|
-
}
|
|
163
10
|
//# sourceMappingURL=versions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../src/lib/local-registry/versions.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../src/lib/local-registry/versions.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
|
package/dist/lib/lockfile.d.ts
CHANGED
|
@@ -30,9 +30,9 @@ export declare function updateLockedSkill(skill: LockedSkill): void;
|
|
|
30
30
|
/**
|
|
31
31
|
* Remove a skill from the lockfile
|
|
32
32
|
*/
|
|
33
|
-
export declare function removeLockedSkill(slug: string
|
|
33
|
+
export declare function removeLockedSkill(slug: string): void;
|
|
34
34
|
/**
|
|
35
35
|
* Check if a skill has changed (compare hash)
|
|
36
36
|
*/
|
|
37
|
-
export declare function hasSkillChanged(slug: string,
|
|
37
|
+
export declare function hasSkillChanged(slug: string, newHash: string): boolean;
|
|
38
38
|
//# sourceMappingURL=lockfile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile.d.ts","sourceRoot":"","sources":["../../src/lib/lockfile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,UAAU,GAAG,IAAI,CAShD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAMpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAKhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAIpE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAoB1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"lockfile.d.ts","sourceRoot":"","sources":["../../src/lib/lockfile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,UAAU,GAAG,IAAI,CAShD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAMpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAKhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAIpE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAoB1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAQpD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAItE"}
|
package/dist/lib/lockfile.js
CHANGED
|
@@ -63,7 +63,7 @@ export function updateLockedSkill(skill) {
|
|
|
63
63
|
lock = createLockfile([skill]);
|
|
64
64
|
}
|
|
65
65
|
else {
|
|
66
|
-
const existingIndex = lock.skills.findIndex(s => s.slug === skill.slug
|
|
66
|
+
const existingIndex = lock.skills.findIndex(s => s.slug === skill.slug);
|
|
67
67
|
if (existingIndex >= 0) {
|
|
68
68
|
lock.skills[existingIndex] = skill;
|
|
69
69
|
}
|
|
@@ -77,25 +77,20 @@ export function updateLockedSkill(skill) {
|
|
|
77
77
|
/**
|
|
78
78
|
* Remove a skill from the lockfile
|
|
79
79
|
*/
|
|
80
|
-
export function removeLockedSkill(slug
|
|
80
|
+
export function removeLockedSkill(slug) {
|
|
81
81
|
const lock = readLockfile();
|
|
82
82
|
if (!lock)
|
|
83
83
|
return;
|
|
84
|
-
|
|
85
|
-
lock.skills = lock.skills.filter(s => !(s.slug === slug && s.registry === registry));
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
lock.skills = lock.skills.filter(s => s.slug !== slug);
|
|
89
|
-
}
|
|
84
|
+
lock.skills = lock.skills.filter(s => s.slug !== slug);
|
|
90
85
|
lock.locked_at = new Date().toISOString();
|
|
91
86
|
writeLockfile(lock);
|
|
92
87
|
}
|
|
93
88
|
/**
|
|
94
89
|
* Check if a skill has changed (compare hash)
|
|
95
90
|
*/
|
|
96
|
-
export function hasSkillChanged(slug,
|
|
91
|
+
export function hasSkillChanged(slug, newHash) {
|
|
97
92
|
const locked = getLockedSkill(slug);
|
|
98
|
-
if (!locked
|
|
93
|
+
if (!locked)
|
|
99
94
|
return true;
|
|
100
95
|
return locked.sha256 !== newHash;
|
|
101
96
|
}
|
package/dist/lib/lockfile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile.js","sourceRoot":"","sources":["../../src/lib/lockfile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,WAAW,GAAG,eAAe,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IAEvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAAgB;IAC5C,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,oDAAoD,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;QACvF,SAAS,EAAE,CAAC;KACb,CAAC,EAAE,CAAC;IACL,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB;IAClD,OAAO;QACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAkB;IAClD,IAAI,IAAI,GAAG,YAAY,EAAE,CAAC;IAE1B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CACzC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"lockfile.js","sourceRoot":"","sources":["../../src/lib/lockfile.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 = "\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
|
|
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 save` \u2014 Save local skill changes back to the registry\n\n### Editing and Publishing\n- `skill open <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,03FAsE9B,CAAC"}
|
package/dist/lib/meta-skill.js
CHANGED
|
@@ -45,10 +45,10 @@ Run them in the terminal:
|
|
|
45
45
|
- \`skill add <name>\` — Add a skill to this project and sync it
|
|
46
46
|
- \`skill remove <name>\` — Remove a skill from this project
|
|
47
47
|
- \`skill sync\` — Re-sync all installed skills from remote
|
|
48
|
-
- \`skill
|
|
48
|
+
- \`skill save\` — Save local skill changes back to the registry
|
|
49
49
|
|
|
50
50
|
### Editing and Publishing
|
|
51
|
-
- \`skill
|
|
51
|
+
- \`skill open <name>\` — Open a skill for editing in the default editor
|
|
52
52
|
- \`skill push <name>\` — Publish local edits to the remote registry
|
|
53
53
|
- \`skill diff <name>\` — See what changed between local and remote
|
|
54
54
|
- \`skill validate <name>\` — Check skill file structure
|
package/dist/types.d.ts
CHANGED
|
@@ -24,7 +24,6 @@ export declare function isCloudSource(source: SkillSource): source is CloudSourc
|
|
|
24
24
|
export interface SkillEntry {
|
|
25
25
|
slug: string;
|
|
26
26
|
source?: string;
|
|
27
|
-
version?: string;
|
|
28
27
|
}
|
|
29
28
|
export interface SkillsLock {
|
|
30
29
|
locked_at: string;
|
|
@@ -32,14 +31,10 @@ export interface SkillsLock {
|
|
|
32
31
|
}
|
|
33
32
|
export interface LockedSkill {
|
|
34
33
|
slug: string;
|
|
35
|
-
registry: string;
|
|
36
|
-
version: string;
|
|
37
34
|
sha256: string;
|
|
38
35
|
}
|
|
39
36
|
export interface SkillMeta {
|
|
40
37
|
slug: string;
|
|
41
|
-
registry: string;
|
|
42
|
-
version: string;
|
|
43
38
|
name: string;
|
|
44
39
|
description?: string;
|
|
45
40
|
tags: string[];
|
|
@@ -89,9 +84,7 @@ export interface SkillVersionResponse {
|
|
|
89
84
|
created_at: string;
|
|
90
85
|
}
|
|
91
86
|
export interface SyncSkillResponse {
|
|
92
|
-
registry: string;
|
|
93
87
|
slug: string;
|
|
94
|
-
version: string;
|
|
95
88
|
content: string;
|
|
96
89
|
sha256: string;
|
|
97
90
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAGD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;AAEpD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAGD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAGD,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,WAAW,CAExE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,WAAW,CAExE;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|