SuperAPI AI 工具集

create-private-repo

编程与开发

查看项目

更新于 10-16 06:05

技能介绍

用途

该技能用于在用户的 GitHub 账户中创建一个私有仓库,并将其克隆到指定的本地文件夹。仓库名称并非手动指定,而是根据仓库描述自动生成。

主要能力

  • 根据仓库描述自动生成仓库名称:取描述中前两个单词各自的前两个字母,转为小写后拼接。例如描述为 movie downloader 时,名称为 modo。
  • 在创建前进行多项检查:确认 gh 认证状态、识别已认证用户、检查目标文件夹状态、检查 <login>/<name> 是否已存在。
  • 创建私有仓库并克隆到指定文件夹。
  • 创建成功后验证仓库为私有,并确认目标文件夹已配置 origin 远程。
  • 返回仓库 URL 和本地绝对路径。

使用方式

需要提供两项信息:仓库描述和确切的本地目标文件夹。若任一缺失,技能会主动询问。

若描述中前两个单词的任一单词少于两个字母,技能会要求更换描述。

执行流程如下:

  1. 检查 gh auth status,并通过 gh api user --jq .login 识别已认证用户。
  2. 检查目标文件夹以及 <login>/<name> 是否已存在。
  3. 若认证失败、文件夹包含文件或名称已被占用,则在创建任何内容之前停止。名称被占用时,要求更换描述,并保持命名规则不变。
  4. 运行 gh repo create <login>/<name> --private --description <description>。
  5. 运行 gh repo clone <login>/<name> <destination-folder>。
  6. 若创建成功但克隆失败,报告仓库 URL 和克隆错误,以便用户重试而无需再次创建仓库。
  7. 验证仓库为私有,且目标文件夹具有 origin 远程。
  8. 返回仓库 URL 和本地绝对路径。

适用场景

适用于需要快速创建私有 GitHub 仓库并克隆到本地指定目录的场景,尤其适合希望通过简短描述自动生成仓库名称、减少手动命名步骤的用户。

限制

  • 仓库名称必须由描述前两个单词各取前两个字母生成,若任一单词少于两个字母则无法使用该描述。
  • 目标文件夹必须为空,否则停止操作。
  • 若 <login>/<name> 已存在,则停止操作并要求更换描述。
  • 认证失败时停止操作。
  • 创建成功但克隆失败时不会自动重试,仅报告错误。
  • 关于收费、价格、平台支持范围等信息,资料中暂未提供。