sources — 管理配置源

列出、添加、移除或重命名配置中的技能源。

sources list

列出所有已配置的源:

xskill sources
# 或显式调用:
xskill sources list

输出格式:

#  NAME   TYPE URL
1  antfu  git  https://github.com/antfu/skills

sources add

添加新源:

xskill sources add -n <name> -u <url> [-t git|api]

选项:

  • -n, --name — 源名称(可选,仅允许字母数字、-_/,支持 user/repo 格式;未指定时自动从 URL 提取路径作为默认名称,如 https://github.com/user/repo.gituser/repo
  • -u, --url — 源地址(必填,须以 http://https:// 开头)
  • -t, --type — 源类型:gitapi(默认:git

示例:

# 显式指定名称
xskill sources add -n my-skills -u https://github.com/example/skills

# 名称自动提取为 "user/repo"
xskill sources add -u https://github.com/user/repo.git

# 斜杠分隔的名称
xskill sources add -n org/team/repo -u https://gitlab.com/org/team/repo

sources remove

按名称、URL 或索引移除源:

xskill sources remove -n <name>
xskill sources remove -u <url>
xskill sources remove -n <name> -u <url>
xskill sources remove -i <index>

选项:

  • -n, --name — 要移除的源名称(可选)
  • -u, --url — 要移除的源地址(可选)
  • -i, --index — 源索引,来自 sources list# 列(可选,从 1 开始)

优先级:--name/--url > --index。至少需指定 --name--url--index 之一。同时指定 --name--url 时两者都匹配才删除。

sources rename

重命名已有源(仅允许修改名称,urltype 不可变更):

xskill sources rename -n <name> -N <new-name>
xskill sources rename -i <index> -N <new-name>

选项:

  • -n, --name — 当前源名称(或使用 -u 按 URL 匹配)
  • -u, --url — 当前源地址(替代标识符)
  • -i, --index — 源索引,来自 sources list# 列(可选,从 1 开始)
  • -N, --new-name — 新名称(必填,传空字符串清空名称)

优先级:--name/--url > --index。至少需指定 --name--url--index 之一。