rec — 管理推荐技能

管理推荐技能源,支持列表、添加和移除操作。

xskill rec <COMMAND>

rec list

列出所有推荐源:

xskill rec list

输出格式:

SOURCE  NAME   URL                                  SKILLS
true    antfu  https://github.com/antfu/skills       vue, react
false   foo    invalid                              bar
  • SOURCE 列:true 表示该推荐源的名称存在于 sources 配置中且 URL 一致,false 表示不匹配。
  • URL 在名称存在于 sources 但 URL 不匹配时显示 invalid(红色)。

rec add

向推荐源添加技能。若条目已存在,新技能将被追加(自动去重)。

xskill rec add [-n <name>] [-u <url>] -s <skills>

选项:

  • -n, --name — 源名称(若未提供 --url,则必须存在于 sources 中)
  • -u, --url — 源地址(当 name 存在于 sources 中且 url 匹配时,仅保存 name)
  • -s, --skills — 逗号分隔的技能名称列表(必填)

参数组合逻辑:

  • -n-s:验证 -n 存在于 sources 中,保存 name + skills
  • -n-u-s
    • -n 存在于 sources 中且 url 与 -u 匹配:仅保存 name + skills(无需 url)
    • -n 存在于 sources 中但 url 与 -u 不匹配:报错
    • -n 不存在于 sources 中:使用 url + skills 保存(name 为 url 值)
  • -u-s:使用 url + skills 保存

追加行为:若条目 “antfu” 已有技能 vue,执行 rec add -n antfu -s react,angular 后结果为 vue,react,angular

rec remove

移除推荐源或特定技能:

xskill rec remove [-n <name>] [-u <url>] [-s <skills>]

选项:

  • -n, --name — 源名称(用于标识条目,或与 -u/-s 配合使用)
  • -u, --url — 源地址(当同时指定 -n-u 时,优先以 -u 为准)
  • -s, --skills — 逗号分隔的技能名称列表(移除特定技能而非整个条目)

优先级逻辑:

  • 同时指定 -n-u:优先按 -u 查找,若未找到则回退到 -n
  • 仅指定 -n:删除对应名称的整条数据
  • 指定 -n-s:删除该名称下对应的技能
  • 指定 -u-s:删除该 URL 下对应的技能