reskill 0.17.0 → 0.17.1
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/dist/cli/commands/__integration__/helpers.d.ts +131 -0
- package/dist/cli/commands/__integration__/helpers.d.ts.map +1 -0
- package/dist/cli/commands/init.d.ts +15 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/index.js +16 -23
- package/dist/core/config-loader.d.ts.map +1 -1
- package/dist/core/git-resolver.d.ts +1 -2
- package/dist/core/git-resolver.d.ts.map +1 -1
- package/dist/core/skill-manager.d.ts.map +1 -1
- package/dist/index.js +2 -9
- package/dist/types/index.d.ts +1 -9
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration test helpers
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for CLI integration tests
|
|
5
|
+
*/
|
|
6
|
+
export declare const PROJECT_ROOT: string;
|
|
7
|
+
export declare const CLI: string;
|
|
8
|
+
export declare const TEST_SKILL_REF = "github:anthropics/anthropic-quickstarts/skills/computer-use@main";
|
|
9
|
+
export declare const TEST_SKILL_NAME = "computer-use";
|
|
10
|
+
export interface CliResult {
|
|
11
|
+
stdout: string;
|
|
12
|
+
stderr: string;
|
|
13
|
+
exitCode: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Execute CLI command and return result
|
|
17
|
+
*
|
|
18
|
+
* @param args - CLI arguments
|
|
19
|
+
* @param cwd - Working directory (defaults to process.cwd())
|
|
20
|
+
* @param env - Additional environment variables
|
|
21
|
+
*/
|
|
22
|
+
export declare function runCli(args: string, cwd?: string, env?: Record<string, string>): CliResult;
|
|
23
|
+
/**
|
|
24
|
+
* Get combined output (stdout + stderr) for assertions
|
|
25
|
+
*/
|
|
26
|
+
export declare function getOutput(result: CliResult): string;
|
|
27
|
+
/**
|
|
28
|
+
* Create a temporary directory for testing
|
|
29
|
+
*
|
|
30
|
+
* @returns Path to the created temporary directory
|
|
31
|
+
*/
|
|
32
|
+
export declare function createTempDir(): string;
|
|
33
|
+
/**
|
|
34
|
+
* Remove a directory recursively
|
|
35
|
+
*
|
|
36
|
+
* @param dir - Directory path to remove
|
|
37
|
+
*/
|
|
38
|
+
export declare function removeTempDir(dir: string): void;
|
|
39
|
+
/**
|
|
40
|
+
* Create a mock HOME directory for global installation tests
|
|
41
|
+
*
|
|
42
|
+
* @returns Path to the mock home directory
|
|
43
|
+
*/
|
|
44
|
+
export declare function createMockHome(): string;
|
|
45
|
+
/**
|
|
46
|
+
* Create a local git repository with a mock skill
|
|
47
|
+
*
|
|
48
|
+
* This creates a real git repo that can be referenced via file:// protocol
|
|
49
|
+
*
|
|
50
|
+
* @param dir - Parent directory to create the repo in
|
|
51
|
+
* @param name - Repository/skill name
|
|
52
|
+
* @param version - Skill version (default: "1.0.0")
|
|
53
|
+
* @returns Git URL for the repo (file:// protocol)
|
|
54
|
+
*/
|
|
55
|
+
export declare function createLocalGitRepo(dir: string, name: string, version?: string): string;
|
|
56
|
+
/**
|
|
57
|
+
* Update a local git repo with a new version
|
|
58
|
+
*
|
|
59
|
+
* @param repoUrl - file:// URL of the repo
|
|
60
|
+
* @param newVersion - New version string
|
|
61
|
+
*/
|
|
62
|
+
export declare function updateLocalGitRepo(repoUrl: string, newVersion: string): void;
|
|
63
|
+
/**
|
|
64
|
+
* Create a mock skill directory for testing (without git)
|
|
65
|
+
*
|
|
66
|
+
* Use this for tests that manually set up skill directories
|
|
67
|
+
*
|
|
68
|
+
* @param dir - Parent directory to create the skill in
|
|
69
|
+
* @param name - Skill name
|
|
70
|
+
* @param version - Skill version (default: "1.0.0")
|
|
71
|
+
* @returns Path to the created skill directory
|
|
72
|
+
*/
|
|
73
|
+
export declare function createMockSkill(dir: string, name: string, version?: string): string;
|
|
74
|
+
/**
|
|
75
|
+
* Update a mock skill to a new version
|
|
76
|
+
*
|
|
77
|
+
* @param skillDir - Path to the skill directory
|
|
78
|
+
* @param newVersion - New version string
|
|
79
|
+
*/
|
|
80
|
+
export declare function updateMockSkillVersion(skillDir: string, newVersion: string): void;
|
|
81
|
+
/**
|
|
82
|
+
* Create a skills.json configuration file
|
|
83
|
+
*
|
|
84
|
+
* @param dir - Directory to create the file in
|
|
85
|
+
* @param skills - Skills to include in the configuration
|
|
86
|
+
* @param defaults - Default options
|
|
87
|
+
*/
|
|
88
|
+
export declare function setupSkillsJson(dir: string, skills?: Record<string, string>, defaults?: {
|
|
89
|
+
installDir?: string;
|
|
90
|
+
installMode?: 'symlink' | 'copy';
|
|
91
|
+
targetAgents?: string[];
|
|
92
|
+
}): void;
|
|
93
|
+
/**
|
|
94
|
+
* Read skills.json configuration
|
|
95
|
+
*
|
|
96
|
+
* @param dir - Directory containing skills.json
|
|
97
|
+
* @returns Parsed configuration object
|
|
98
|
+
*/
|
|
99
|
+
export declare function readSkillsJson(dir: string): {
|
|
100
|
+
skills: Record<string, string>;
|
|
101
|
+
defaults: Record<string, unknown>;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Check if a path is a symbolic link
|
|
105
|
+
*
|
|
106
|
+
* @param linkPath - Path to check
|
|
107
|
+
* @returns true if path is a symlink
|
|
108
|
+
*/
|
|
109
|
+
export declare function isSymlink(linkPath: string): boolean;
|
|
110
|
+
/**
|
|
111
|
+
* Check if a path exists (file or directory)
|
|
112
|
+
*
|
|
113
|
+
* @param targetPath - Path to check
|
|
114
|
+
* @returns true if path exists
|
|
115
|
+
*/
|
|
116
|
+
export declare function pathExists(targetPath: string): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Read file contents
|
|
119
|
+
*
|
|
120
|
+
* @param filePath - Path to file
|
|
121
|
+
* @returns File contents as string
|
|
122
|
+
*/
|
|
123
|
+
export declare function readFile(filePath: string): string;
|
|
124
|
+
/**
|
|
125
|
+
* Get symlink target
|
|
126
|
+
*
|
|
127
|
+
* @param linkPath - Path to symlink
|
|
128
|
+
* @returns Resolved target path
|
|
129
|
+
*/
|
|
130
|
+
export declare function getSymlinkTarget(linkPath: string): string;
|
|
131
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/__integration__/helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,eAAO,MAAM,YAAY,QAAyC,CAAC;AACnE,eAAO,MAAM,GAAG,QAAyD,CAAC;AAG1E,eAAO,MAAM,cAAc,qEAAqE,CAAC;AACjG,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAM9C,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,SAAS,CAuBX;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAEnD;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAMvC;AAMD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,SAAU,GAChB,MAAM,CAyCR;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAoB5E;AAMD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,SAAU,GAChB,MAAM,CAiCR;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,IAAI,CAKN;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,EACnC,QAAQ,GAAE;IACR,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,GACL,IAAI,CAUN;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAGA;AAMD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOnD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
2
|
/**
|
|
3
3
|
* init command - Initialize skills.json configuration
|
|
4
|
+
*
|
|
5
|
+
* Creates a new skills.json file in the current directory with default settings.
|
|
6
|
+
* Will not overwrite an existing skills.json file.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```bash
|
|
10
|
+
* # Initialize with defaults
|
|
11
|
+
* reskill init
|
|
12
|
+
*
|
|
13
|
+
* # Initialize with custom install directory
|
|
14
|
+
* reskill init -d my-skills
|
|
15
|
+
*
|
|
16
|
+
* # Skip prompts (for CI/scripts)
|
|
17
|
+
* reskill init -y
|
|
18
|
+
* ```
|
|
4
19
|
*/
|
|
5
20
|
export declare const initCommand: Command;
|
|
6
21
|
export default initCommand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2CpC;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,WAAW,SAsBpB,CAAC;AAEL,eAAe,WAAW,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -831,12 +831,10 @@ class CacheManager {
|
|
|
831
831
|
const DEFAULT_SKILLS_JSON = {
|
|
832
832
|
skills: {},
|
|
833
833
|
defaults: {
|
|
834
|
-
registry: 'github',
|
|
835
834
|
installDir: '.skills'
|
|
836
835
|
}
|
|
837
836
|
};
|
|
838
837
|
const DEFAULT_VALUES = {
|
|
839
|
-
registry: 'github',
|
|
840
838
|
installDir: '.skills',
|
|
841
839
|
targetAgents: [],
|
|
842
840
|
installMode: 'symlink'
|
|
@@ -908,7 +906,6 @@ class ConfigLoader {
|
|
|
908
906
|
const config = this.getConfigOrDefault();
|
|
909
907
|
const storedDefaults = config.defaults ?? {};
|
|
910
908
|
return {
|
|
911
|
-
registry: storedDefaults.registry ?? DEFAULT_VALUES.registry,
|
|
912
909
|
installDir: storedDefaults.installDir ?? DEFAULT_VALUES.installDir,
|
|
913
910
|
targetAgents: storedDefaults.targetAgents ?? DEFAULT_VALUES.targetAgents,
|
|
914
911
|
installMode: storedDefaults.installMode ?? DEFAULT_VALUES.installMode
|
|
@@ -973,10 +970,7 @@ class ConfigLoader {
|
|
|
973
970
|
}
|
|
974
971
|
}
|
|
975
972
|
class GitResolver {
|
|
976
|
-
defaultRegistry;
|
|
977
|
-
constructor(defaultRegistry = 'github'){
|
|
978
|
-
this.defaultRegistry = defaultRegistry;
|
|
979
|
-
}
|
|
973
|
+
defaultRegistry = 'github';
|
|
980
974
|
parseRef(ref) {
|
|
981
975
|
const raw = ref;
|
|
982
976
|
if (isGitUrl(ref)) return this.parseGitUrlRef(ref);
|
|
@@ -1274,8 +1268,7 @@ class SkillManager {
|
|
|
1274
1268
|
this.config = new ConfigLoader(this.projectRoot);
|
|
1275
1269
|
this.lockManager = new LockManager(this.projectRoot);
|
|
1276
1270
|
this.cache = new CacheManager();
|
|
1277
|
-
|
|
1278
|
-
this.resolver = new GitResolver(defaults.registry);
|
|
1271
|
+
this.resolver = new GitResolver();
|
|
1279
1272
|
}
|
|
1280
1273
|
isGlobalMode() {
|
|
1281
1274
|
return this.isGlobal;
|
|
@@ -1840,29 +1833,29 @@ const infoCommand = new __WEBPACK_EXTERNAL_MODULE_commander__.Command('info').de
|
|
|
1840
1833
|
}
|
|
1841
1834
|
} else logger_logger.warn(`Skill ${skillName} is not installed`);
|
|
1842
1835
|
});
|
|
1843
|
-
const
|
|
1836
|
+
const DEFAULT_INSTALL_DIR = '.skills';
|
|
1837
|
+
function displayConfigSummary(installDir) {
|
|
1838
|
+
logger_logger.success('Created skills.json');
|
|
1839
|
+
logger_logger.newline();
|
|
1840
|
+
logger_logger.log('Configuration:');
|
|
1841
|
+
logger_logger.log(` Install directory: ${installDir}`);
|
|
1842
|
+
logger_logger.newline();
|
|
1843
|
+
logger_logger.log('Next steps:');
|
|
1844
|
+
logger_logger.log(' reskill install <skill> Install a skill');
|
|
1845
|
+
logger_logger.log(' reskill list List installed skills');
|
|
1846
|
+
}
|
|
1847
|
+
const initCommand = new __WEBPACK_EXTERNAL_MODULE_commander__.Command('init').description('Initialize a new skills.json configuration').option('-d, --install-dir <dir>', 'Skills installation directory', DEFAULT_INSTALL_DIR).option('-y, --yes', 'Skip prompts and use defaults').action((options)=>{
|
|
1844
1848
|
const configLoader = new ConfigLoader();
|
|
1845
1849
|
if (configLoader.exists()) {
|
|
1846
1850
|
logger_logger.warn('skills.json already exists');
|
|
1847
1851
|
return;
|
|
1848
1852
|
}
|
|
1849
|
-
|
|
1850
|
-
name: options.name,
|
|
1853
|
+
configLoader.create({
|
|
1851
1854
|
defaults: {
|
|
1852
|
-
registry: options.registry,
|
|
1853
1855
|
installDir: options.installDir
|
|
1854
1856
|
}
|
|
1855
1857
|
});
|
|
1856
|
-
|
|
1857
|
-
logger_logger.newline();
|
|
1858
|
-
logger_logger.log('Configuration:');
|
|
1859
|
-
logger_logger.log(` Name: ${config.name || '(not set)'}`);
|
|
1860
|
-
logger_logger.log(` Default registry: ${config.defaults?.registry}`);
|
|
1861
|
-
logger_logger.log(` Install directory: ${config.defaults?.installDir}`);
|
|
1862
|
-
logger_logger.newline();
|
|
1863
|
-
logger_logger.log('Next steps:');
|
|
1864
|
-
logger_logger.log(' reskill install <skill> Install a skill');
|
|
1865
|
-
logger_logger.log(' reskill list List installed skills');
|
|
1858
|
+
displayConfigSummary(options.installDir);
|
|
1866
1859
|
});
|
|
1867
1860
|
function formatAgentNames(agentTypes, maxShow = 5) {
|
|
1868
1861
|
const names = agentTypes.map((a)=>agents[a].displayName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/core/config-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/core/config-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AA0BpE;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGrD,CAAC;AAMF;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,MAAM,CAA2B;gBAE7B,WAAW,CAAC,EAAE,MAAM;IAShC;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,aAAa,IAAI,MAAM;IASvB;;OAEG;IACH,MAAM,IAAI,OAAO;IAIjB;;;;OAIG;IACH,IAAI,IAAI,UAAU;IAiBlB;;OAEG;IACH,MAAM,IAAI,UAAU;IAKpB;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI;IAS/B;;;;OAIG;IACH,YAAY,IAAI,OAAO;IAQvB;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU;IAmBjD;;;;;OAKG;IACH,WAAW,IAAI,QAAQ,CAAC,cAAc,CAAC;IAWvC;;;;;;OAMG;IACH,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAgBtD;;;;;;;OAOG;IACH,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAqB5C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IASzC;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAWlC;;OAEG;IACH,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAUnC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAK/B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAS7C;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAK3B;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -17,8 +17,7 @@ import type { ParsedSkillRef, ParsedVersion } from '../types/index.js';
|
|
|
17
17
|
* - (none) Default branch
|
|
18
18
|
*/
|
|
19
19
|
export declare class GitResolver {
|
|
20
|
-
private defaultRegistry;
|
|
21
|
-
constructor(defaultRegistry?: string);
|
|
20
|
+
private readonly defaultRegistry;
|
|
22
21
|
/**
|
|
23
22
|
* Parse skill reference string
|
|
24
23
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-resolver.d.ts","sourceRoot":"","sources":["../../src/core/git-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAUvE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"git-resolver.d.ts","sourceRoot":"","sources":["../../src/core/git-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAUvE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAY;IAE5C;;;;;;;;;OASG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc;IAmDrC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,cAAc;IAmFtB;;OAEG;IACH,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,aAAa;IA+BjD;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM;IAQ5C;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,aAAa,GACzB,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAkD5C;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAClC,MAAM,EAAE,cAAc,CAAC;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CAaH;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-manager.d.ts","sourceRoot":"","sources":["../../src/core/skill-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAanF,OAAO,EACL,KAAK,SAAS,EAIf,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAa,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+CAA+C;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;GASG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAU;gBAEd,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"skill-manager.d.ts","sourceRoot":"","sources":["../../src/core/skill-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -782,12 +782,10 @@ class CacheManager {
|
|
|
782
782
|
const DEFAULT_SKILLS_JSON = {
|
|
783
783
|
skills: {},
|
|
784
784
|
defaults: {
|
|
785
|
-
registry: 'github',
|
|
786
785
|
installDir: '.skills'
|
|
787
786
|
}
|
|
788
787
|
};
|
|
789
788
|
const DEFAULT_VALUES = {
|
|
790
|
-
registry: 'github',
|
|
791
789
|
installDir: '.skills',
|
|
792
790
|
targetAgents: [],
|
|
793
791
|
installMode: 'symlink'
|
|
@@ -859,7 +857,6 @@ class ConfigLoader {
|
|
|
859
857
|
const config = this.getConfigOrDefault();
|
|
860
858
|
const storedDefaults = config.defaults ?? {};
|
|
861
859
|
return {
|
|
862
|
-
registry: storedDefaults.registry ?? DEFAULT_VALUES.registry,
|
|
863
860
|
installDir: storedDefaults.installDir ?? DEFAULT_VALUES.installDir,
|
|
864
861
|
targetAgents: storedDefaults.targetAgents ?? DEFAULT_VALUES.targetAgents,
|
|
865
862
|
installMode: storedDefaults.installMode ?? DEFAULT_VALUES.installMode
|
|
@@ -924,10 +921,7 @@ class ConfigLoader {
|
|
|
924
921
|
}
|
|
925
922
|
}
|
|
926
923
|
class GitResolver {
|
|
927
|
-
defaultRegistry;
|
|
928
|
-
constructor(defaultRegistry = 'github'){
|
|
929
|
-
this.defaultRegistry = defaultRegistry;
|
|
930
|
-
}
|
|
924
|
+
defaultRegistry = 'github';
|
|
931
925
|
parseRef(ref) {
|
|
932
926
|
const raw = ref;
|
|
933
927
|
if (isGitUrl(ref)) return this.parseGitUrlRef(ref);
|
|
@@ -1266,8 +1260,7 @@ class SkillManager {
|
|
|
1266
1260
|
this.config = new ConfigLoader(this.projectRoot);
|
|
1267
1261
|
this.lockManager = new LockManager(this.projectRoot);
|
|
1268
1262
|
this.cache = new CacheManager();
|
|
1269
|
-
|
|
1270
|
-
this.resolver = new GitResolver(defaults.registry);
|
|
1263
|
+
this.resolver = new GitResolver();
|
|
1271
1264
|
}
|
|
1272
1265
|
isGlobalMode() {
|
|
1273
1266
|
return this.isGlobal;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -40,8 +40,6 @@ export interface RegistryConfig {
|
|
|
40
40
|
* Default configuration
|
|
41
41
|
*/
|
|
42
42
|
export interface SkillsDefaults {
|
|
43
|
-
/** Default registry */
|
|
44
|
-
registry?: string;
|
|
45
43
|
/** Installation directory, defaults to .skills */
|
|
46
44
|
installDir?: string;
|
|
47
45
|
/** Target agents list */
|
|
@@ -64,15 +62,9 @@ export interface SkillOverride {
|
|
|
64
62
|
export interface SkillsJson {
|
|
65
63
|
/** JSON Schema reference */
|
|
66
64
|
$schema?: string;
|
|
67
|
-
/** Project name */
|
|
68
|
-
name?: string;
|
|
69
|
-
/** Project version */
|
|
70
|
-
version?: string;
|
|
71
|
-
/** Project description */
|
|
72
|
-
description?: string;
|
|
73
65
|
/** Skill dependency mapping */
|
|
74
66
|
skills: Record<string, SkillRef>;
|
|
75
|
-
/** Registry configuration */
|
|
67
|
+
/** Registry configuration (for custom git hosts) */
|
|
76
68
|
registries?: RegistryConfig;
|
|
77
69
|
/** Default configuration */
|
|
78
70
|
defaults?: SkillsDefaults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,YAAY,EACV,WAAW,EACX,SAAS,GACV,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;GAEG;AACH,YAAY,EACV,WAAW,EACX,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAMjC;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "reskill",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.1",
|
|
4
4
|
"description": "AI Skills Package Manager - Git-based skills management for AI agents",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -75,6 +75,7 @@
|
|
|
75
75
|
"test": "vitest",
|
|
76
76
|
"test:run": "vitest run",
|
|
77
77
|
"test:coverage": "vitest run --coverage",
|
|
78
|
+
"test:integration": "pnpm build && vitest run --config vitest.integration.config.ts",
|
|
78
79
|
"lint": "biome check src",
|
|
79
80
|
"lint:fix": "biome check src --write",
|
|
80
81
|
"format": "biome format src --write",
|