reskill 1.16.0 → 1.17.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 CHANGED
@@ -46,41 +46,67 @@ npx reskill@latest <command> # Or use npx directly
46
46
  | Command | Alias | Description |
47
47
  | --------------------- | -------------------- | ----------------------------------------- |
48
48
  | `init` | - | Initialize `skills.json` |
49
- | `find <query>` | - | Search for skills in the registry |
49
+ | `find <query>` | `search` | Search for skills in the registry |
50
50
  | `install [skills...]` | `i` | Install one or more skills |
51
51
  | `list` | `ls` | List installed skills |
52
52
  | `info <skill>` | - | Show skill details |
53
53
  | `update [skill]` | `up` | Update skills |
54
54
  | `outdated` | - | Check for outdated skills |
55
55
  | `uninstall <skill>` | `un`, `rm`, `remove` | Remove a skill |
56
+ | `group` | - | Manage skill groups ¹ |
56
57
  | `publish [path]` | `pub` | Publish a skill to the registry ¹ |
57
58
  | `login` | - | Authenticate with the registry ¹ |
58
59
  | `logout` | - | Remove stored authentication ¹ |
59
60
  | `whoami` | - | Display current logged in user ¹ |
60
61
  | `doctor` | - | Diagnose environment and check for issues |
61
- | `completion install` | - | Install shell tab completion |
62
+ | `completion [action]` | - | Setup or remove shell tab completion |
62
63
 
63
- > ¹ Registry commands (`publish`, `login`, `logout`, `whoami`) require a private registry deployment. Not available for public use yet.
64
+ > ¹ Registry commands (`group`, `publish`, `login`, `logout`, `whoami`) require a private registry deployment. Not available for public use yet.
64
65
 
65
66
  ### Common Options
66
67
 
67
- | Option | Commands | Description |
68
- | ------------------------- | ------------------------------------ | ------------------------------------------------------------- |
69
- | `--no-save` | `install` | Install without saving to `skills.json` (for personal skills) |
70
- | `-g, --global` | `install`, `uninstall`, `list` | Install/manage skills globally (user directory) |
71
- | `-a, --agent <agents...>` | `install` | Specify target agents (e.g., `cursor`, `claude-code`) |
72
- | `--mode <mode>` | `install` | Installation mode: `symlink` (default) or `copy` |
73
- | `--all` | `install` | Install to all agents |
74
- | `-y, --yes` | `install`, `uninstall`, `publish` | Skip confirmation prompts |
75
- | `-f, --force` | `install` | Force reinstall even if already installed |
76
- | `-s, --skill <names...>` | `install` | Select specific skill(s) by name from a multi-skill repo |
77
- | `--list` | `install` | List available skills in the repository without installing |
78
- | `-r, --registry <url>` | `install`, `publish` | Registry URL override for registry-based installs |
79
- | `-t, --token <token>` | `install` | Auth token for registry API requests (for CI/CD) |
80
- | `-j, --json` | `list`, `info`, `outdated`, `doctor` | Output as JSON |
68
+ | Option | Commands | Description |
69
+ | ------------------------- | --------------------------------------------- | ------------------------------------------------------------- |
70
+ | `--no-save` | `install` | Install without saving to `skills.json` (for personal skills) |
71
+ | `-g, --global` | `install`, `uninstall`, `list` | Install/manage skills globally (user directory) |
72
+ | `-a, --agent <agents...>` | `install` | Specify target agents (e.g., `cursor`, `claude-code`) |
73
+ | `--mode <mode>` | `install` | Installation mode: `symlink` (default) or `copy` |
74
+ | `--all` | `install` | Install to all agents |
75
+ | `-y, --yes` | `install`, `uninstall`, `publish` | Skip confirmation prompts |
76
+ | `-f, --force` | `install` | Force reinstall even if already installed |
77
+ | `-s, --skill <names...>` | `install` | Select specific skill(s) by name from a multi-skill repo |
78
+ | `--list` | `install` | List available skills in the repository without installing |
79
+ | `-t, --token <token>` | `install` | Auth token for registry API requests (for CI/CD) |
80
+ | `-r, --registry <url>` | `install`, `group`, `publish` | Registry URL override for registry-enabled commands |
81
+ | `-j, --json` | `list`, `info`, `outdated`, `doctor`, `group` | Output as JSON |
82
+ | `-l, --limit <n>` | `find` | Maximum number of search results |
83
+ | `--skip-network` | `doctor` | Skip network connectivity checks |
81
84
 
82
85
  Run `reskill <command> --help` for complete options and detailed usage.
83
86
 
87
+ ### Group Command Quick Reference
88
+
89
+ ```bash
90
+ # List groups
91
+ reskill group list
92
+ reskill group list --tree
93
+
94
+ # Create / inspect / delete groups
95
+ reskill group create "Frontend Team" --description "Frontend skills"
96
+ reskill group info kanyun/frontend
97
+ reskill group delete kanyun/frontend --dry-run
98
+ reskill group delete kanyun/frontend -y
99
+
100
+ # Manage members
101
+ reskill group member list kanyun/frontend
102
+ reskill group member add kanyun/frontend alice bob --role developer
103
+ reskill group member remove kanyun/frontend alice
104
+ reskill group member role kanyun/frontend bob maintainer
105
+ ```
106
+
107
+ `publish --group <path>` normalizes and validates the path before request.
108
+ For full group path rules, see [CLI Specification - group](./docs/cli-spec.md#group).
109
+
84
110
  ## Source Formats
85
111
 
86
112
  ```bash
@@ -212,6 +238,13 @@ Skills are installed to `.skills/` by default and can be integrated with any age
212
238
  Publish your skills to the registry for others to use:
213
239
 
214
240
  ```bash
241
+ # Group management examples
242
+ reskill group list
243
+ reskill group list --tree
244
+ reskill group create "Frontend Team" --description "Frontend skills"
245
+ reskill group info kanyun/frontend
246
+ reskill group member add kanyun/frontend alice bob --role developer
247
+
215
248
  # Interactive login (recommended for humans — guides you through token setup)
216
249
  reskill login
217
250
 
@@ -221,6 +254,9 @@ reskill login --token <your-token>
221
254
  # Validate without publishing (dry run)
222
255
  reskill publish --dry-run
223
256
 
257
+ # Validate publish with target group
258
+ reskill publish --dry-run --group kanyun/frontend
259
+
224
260
  # Publish the skill
225
261
  reskill publish
226
262
  ```
@@ -250,8 +286,11 @@ reskill install @scope/private-skill --registry https://your-registry.com --toke
250
286
  | `RESKILL_TOKEN` | Auth token (takes precedence over ~/.reskillrc) | - |
251
287
  | `RESKILL_REGISTRY` | Default registry URL | `https://registry.reskill.dev` |
252
288
  | `DEBUG` | Enable debug logging | - |
289
+ | `VERBOSE` | Enable debug logging (same effect as `DEBUG`) | - |
253
290
  | `NO_COLOR` | Disable colored output | - |
254
291
 
292
+ reskill checks for newer versions in the background and shows an upgrade tip after command execution.
293
+
255
294
  ## Development
256
295
 
257
296
  ```bash
package/README.zh-CN.md CHANGED
@@ -46,41 +46,67 @@ npx reskill@latest <command> # 或直接使用 npx
46
46
  | 命令 | 别名 | 说明 |
47
47
  | --------------------- | -------------------- | ------------------------- |
48
48
  | `init` | - | 初始化 `skills.json` |
49
- | `find <query>` | - | 在 registry 中搜索 skills |
49
+ | `find <query>` | `search` | 在 registry 中搜索 skills |
50
50
  | `install [skills...]` | `i` | 安装一个或多个 skills |
51
51
  | `list` | `ls` | 列出已安装的 skills |
52
52
  | `info <skill>` | - | 查看 skill 详情 |
53
53
  | `update [skill]` | `up` | 更新 skills |
54
54
  | `outdated` | - | 检查过期的 skills |
55
55
  | `uninstall <skill>` | `un`, `rm`, `remove` | 卸载 skill |
56
+ | `group` | - | 管理 skill 分组 ¹ |
56
57
  | `publish [path]` | `pub` | 发布 skill 到 registry ¹ |
57
58
  | `login` | - | 登录 registry ¹ |
58
59
  | `logout` | - | 登出 registry ¹ |
59
60
  | `whoami` | - | 显示当前登录用户 ¹ |
60
61
  | `doctor` | - | 诊断环境并检查问题 |
61
- | `completion install` | - | 安装 Shell Tab 补全 |
62
+ | `completion [action]` | - | 配置或移除 Shell Tab 补全 |
62
63
 
63
- > ¹ Registry 相关命令(`publish`、`login`、`logout`、`whoami`)需要部署私有 registry 后才能使用,暂不对外开放。
64
+ > ¹ Registry 相关命令(`group`、`publish`、`login`、`logout`、`whoami`)需要部署私有 registry 后才能使用,暂不对外开放。
64
65
 
65
66
  ### 常用选项
66
67
 
67
- | 选项 | 适用命令 | 说明 |
68
- | ------------------------- | ------------------------------------ | -------------------------------------------- |
69
- | `--no-save` | `install` | 安装时不保存到 `skills.json`(用于个人技能) |
70
- | `-g, --global` | `install`, `uninstall`, `list` | 全局安装/管理技能(用户目录) |
71
- | `-a, --agent <agents...>` | `install` | 指定目标 Agent(如 `cursor`, `claude-code`) |
72
- | `--mode <mode>` | `install` | 安装模式:`symlink`(默认)或 `copy` |
73
- | `--all` | `install` | 安装到所有 Agent |
74
- | `-y, --yes` | `install`, `uninstall`, `publish` | 跳过确认提示 |
75
- | `-f, --force` | `install` | 强制重新安装 |
76
- | `-s, --skill <names...>` | `install` | 从多 skill 仓库中选择指定 skill |
77
- | `--list` | `install` | 列出仓库中可用的 skills(不安装) |
78
- | `-r, --registry <url>` | `install`, `publish` | 覆盖 registry URL(用于 registry 安装) |
79
- | `-t, --token <token>` | `install` | 认证令牌(用于 CI/CD 访问私有 skill) |
80
- | `-j, --json` | `list`, `info`, `outdated`, `doctor` | JSON 格式输出 |
68
+ | 选项 | 适用命令 | 说明 |
69
+ | ------------------------- | --------------------------------------------- | -------------------------------------------- |
70
+ | `--no-save` | `install` | 安装时不保存到 `skills.json`(用于个人技能) |
71
+ | `-g, --global` | `install`, `uninstall`, `list` | 全局安装/管理技能(用户目录) |
72
+ | `-a, --agent <agents...>` | `install` | 指定目标 Agent(如 `cursor`, `claude-code`) |
73
+ | `--mode <mode>` | `install` | 安装模式:`symlink`(默认)或 `copy` |
74
+ | `--all` | `install` | 安装到所有 Agent |
75
+ | `-y, --yes` | `install`, `uninstall`, `publish` | 跳过确认提示 |
76
+ | `-f, --force` | `install` | 强制重新安装 |
77
+ | `-s, --skill <names...>` | `install` | 从多 skill 仓库中选择指定 skill |
78
+ | `--list` | `install` | 列出仓库中可用的 skills(不安装) |
79
+ | `-t, --token <token>` | `install` | 认证令牌(用于 CI/CD 访问私有 skill) |
80
+ | `-r, --registry <url>` | `install`, `group`, `publish` | 覆盖 registry URL(用于 registry 相关命令) |
81
+ | `-j, --json` | `list`, `info`, `outdated`, `doctor`, `group` | JSON 格式输出 |
82
+ | `-l, --limit <n>` | `find` | 限制搜索结果数量 |
83
+ | `--skip-network` | `doctor` | 跳过网络连通性检查 |
81
84
 
82
85
  运行 `reskill <command> --help` 查看完整选项和详细用法。
83
86
 
87
+ ### Group 命令速查
88
+
89
+ ```bash
90
+ # 查看分组
91
+ reskill group list
92
+ reskill group list --tree
93
+
94
+ # 创建 / 查看 / 删除分组
95
+ reskill group create "Frontend Team" --description "Frontend skills"
96
+ reskill group info kanyun/frontend
97
+ reskill group delete kanyun/frontend --dry-run
98
+ reskill group delete kanyun/frontend -y
99
+
100
+ # 成员管理
101
+ reskill group member list kanyun/frontend
102
+ reskill group member add kanyun/frontend alice bob --role developer
103
+ reskill group member remove kanyun/frontend alice
104
+ reskill group member role kanyun/frontend bob maintainer
105
+ ```
106
+
107
+ `publish --group <path>` 在请求前会先做路径归一化和校验。
108
+ 完整规则见 [CLI 规范 - group](./docs/cli-spec.md#group)。
109
+
84
110
  ## 源格式
85
111
 
86
112
  ```bash
@@ -212,12 +238,25 @@ Skills 默认安装到 `.skills/`,可与任何 Agent 集成:
212
238
  将你的 skills 发布到 registry 供他人使用:
213
239
 
214
240
  ```bash
215
- # 登录 registry
241
+ # Group 管理示例
242
+ reskill group list
243
+ reskill group list --tree
244
+ reskill group create "Frontend Team" --description "Frontend skills"
245
+ reskill group info kanyun/frontend
246
+ reskill group member add kanyun/frontend alice bob --role developer
247
+
248
+ # 交互式登录(推荐日常使用)
216
249
  reskill login
217
250
 
251
+ # 非交互式登录(CI/CD)
252
+ reskill login --token <your-token>
253
+
218
254
  # 验证但不发布(预览模式)
219
255
  reskill publish --dry-run
220
256
 
257
+ # 验证并指定目标分组
258
+ reskill publish --dry-run --group kanyun/frontend
259
+
221
260
  # 发布 skill
222
261
  reskill publish
223
262
  ```
@@ -247,8 +286,11 @@ reskill install @scope/private-skill --registry https://your-registry.com --toke
247
286
  | `RESKILL_TOKEN` | 认证令牌(优先于 ~/.reskillrc) | - |
248
287
  | `RESKILL_REGISTRY` | 默认 registry URL | `https://registry.reskill.dev` |
249
288
  | `DEBUG` | 启用调试日志 | - |
289
+ | `VERBOSE` | 启用调试日志(与 `DEBUG` 等效) | - |
250
290
  | `NO_COLOR` | 禁用彩色输出 | - |
251
291
 
292
+ reskill 会在后台检查新版本,并在命令执行后提示升级信息。
293
+
252
294
  ## 开发
253
295
 
254
296
  ```bash
@@ -0,0 +1,20 @@
1
+ /**
2
+ * group command - Manage skill groups
3
+ *
4
+ * Provides subcommands for listing, creating, inspecting, and deleting
5
+ * skill groups, as well as managing group membership.
6
+ *
7
+ * Usage:
8
+ * reskill group list # List visible groups
9
+ * reskill group create <name> # Create a group
10
+ * reskill group info <path> # Show group details
11
+ * reskill group delete <path> # Delete a group
12
+ * reskill group member list <path> # List members
13
+ * reskill group member add <path> <users...> # Add members
14
+ * reskill group member remove <path> <user> # Remove a member
15
+ * reskill group member role <path> <user> <role> # Change member role
16
+ */
17
+ import { Command } from 'commander';
18
+ export declare const groupCommand: Command;
19
+ export default groupCommand;
20
+ //# sourceMappingURL=group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/group.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgfpC,eAAO,MAAM,YAAY,SAA0D,CAAC;AAqCpF,eAAe,YAAY,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export { completionCommand, maybeHandleCompletion } from './completion.js';
2
2
  export { doctorCommand } from './doctor.js';
3
3
  export { findCommand } from './find.js';
4
+ export { groupCommand } from './group.js';
4
5
  export { infoCommand } from './info.js';
5
6
  export { initCommand } from './init.js';
6
7
  export { installCommand } from './install.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/publish.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoDpC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAcR;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAYpE;AA2ND;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI1D;AAoBD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAyBnE;AA+SD,eAAO,MAAM,cAAc,SAYH,CAAC;AAEzB,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/publish.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsDpC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAcR;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAYpE;AA2ND;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI1D;AAoBD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAyBnE;AAkUD,eAAO,MAAM,cAAc,SAaH,CAAC;AAEzB,eAAe,cAAc,CAAC"}