关于 cofounder-repo-setup
cofounder-repo-setup 是使用 GH CLI 初始化本地 Git 仓库并创建或连接 GitHub 远程仓库的技能。它提供设备码认证指引,并在设置前检查是否已配置 origin 远程仓库。
主要功能
- 01初始化本地 Git 仓库
- 02创建或连接 GitHub 远程仓库
- 03通过设备码进行认证
- 04检查是否已有 origin 远程仓库
适用场景
- 01为新项目设置 Git
- 02创建对应的 GitHub 仓库
- 03无需启动浏览器即可认证 GH CLI
- 04连接已有的 GitHub 仓库
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ locaweb/ cofounder --skill cofounder-repo-setup安装后在 Claude Code 中输入/cofounder-repo-setup确认已加载。
附带文件scripts/repo-init.sh
详细介绍
仓库设置
初始化本地 git 仓库,并使用 GH CLI 在 GitHub 上创建对应的远程仓库。使用设备码进行身份验证,可在所有环境中可靠运行。
前提条件
必须先运行 computer-setup 技能——它会安装 gh 和 git。
继续操作前需要有 GitHub 账号。如果用户还没有账号,请引导他们创建账号:
- 访问 https://github.com/。
- 点击 Sign up(或点击 Continue with Google 使用社交账号登录)。
- 按照提示操作并验证电子邮箱地址——如果邮箱未经验证,仓库创建将会失败。
建议注册后启用双重身份验证。详情请参阅 在 GitHub 上创建账号。
身份验证
设备码流程
运行 gh auth status,确认其是否显示用户已通过身份验证。
如果尚未通过身份验证,请运行:
GH_FORCE_TTY=1 NO_COLOR=1 GH_PROMPT_DISABLED=1 gh auth login --hostname github.com --git-protocol https --scopes "repo,read:org,workflow" > /tmp/gh-auth.log 2>&1 & sleep 3 && cat /tmp/gh-auth.log
向用户显示日志文件的原始输出,并引导他们从中找到设备码(一串类似 XXXX-XXXX 的简短字母数字字符)。这是用于 GitHub OAuth 设备流程的一次性临时设备码,并非长期凭据。用户可直接从终端输出中读取设备码,并自行前往 https://github.com/login/device 输入。例如:
需要登录 GitHub!
请在上方输出中查找一次性代码(格式为:
XXXX-XXXX)。 在浏览器中打开 https://github.com/login/device 并输入代码。
请用户完成浏览器授权,并在完成后确认。
验证身份验证状态
用户确认后,请验证:
gh auth status
初始化仓库
完整设置
运行初始化脚本前,检查是否已配置远程仓库:
git remote get-url origin 2>/dev/null
如果已设置 origin,则仓库已完成配置——不要询问用户仓库名称或可见性,并跳过整个初始化脚本。
如果尚未配置远程仓库,请询问用户:
- 仓库名称——默认值:当前文件夹名称。
- 可见性——
private(默认值)或public。
然后运行初始化脚本。该脚本随此技能一并提供,路径为 scripts/repo-init.sh,相对于此 SKILL.md 所在目录——请从技能自身的目录(而非当前工作目录)找到该脚本,并使用 bash 运行:
bash <this-skill-dir>/scripts/repo-init.sh <repo-name> [private|public]
该脚本将:
- 如果
.git/不存在,则初始化本地 git 仓库 - 如果仓库没有任何提交,则创建一个初始空提交
- 如果本地已配置
origin,则跳过创建远程仓库 - 如果 GitHub 上已存在该仓库,则将其添加为
origin并推送 - 否则,使用给定名称和可见性(默认值:
private)创建 GitHub 仓库,将其添加为origin并推送
手动步骤
如果需要更精细地控制,请逐步运行:
# Initialize local repo
git init
# Create remote and link it (from the project directory)
gh repo create <repo-name> --private --source=. --remote=origin --push
重要说明
- 必须先完成身份验证,再创建仓库。 如果
gh auth status失败,请先运行身份验证流程。 - 不要在
gh auth login中使用--web标志——它会尝试打开浏览器,这可能无法正常工作。不带--web时默认使用的设备码流程更加可靠。 - 默认可见性为私有。 创建公开仓库前,请务必与用户确认。
随附资源
脚本
scripts/repo-init.sh——初始化本地 git 仓库,并一步创建对应的 GitHub 远程仓库