用途:在不公开仓库的前提下,为外部客户或承包商开通私有 GitHub 仓库的协作者权限,并支持撤销与审计。
主要能力:提供 grant(授权)、revoke(撤销)、list(列出)三种模式。授权时接受用户名与邮箱混合列表,默认权限为 pull(只读),可选 triage、push,maintain/admin 需明确坚持才考虑。撤销为幂等操作。list 会分别列出活跃协作者与待处理邀请。
使用方式:需先通过 gh auth status 确认已认证,token 需具备 repo 权限,组织仓库还需 admin:org 权限。先收集目标仓库、子命令与标识符,再解析标识符:含 @ 视为邮箱,否则视为用户名。用户名用 gh api "users/<login>" 验证;邮箱用 gh api "search/users?q=<email>+in:email" 查找。授权用 gh api -X PUT "repos/<owner>/<repo>/collaborators/<login>" -f permission=<级别>,撤销用 gh api -X DELETE 同路径,列出用 gh api "repos/<owner>/<repo>/collaborators?affiliation=all" --paginate。写入前会展示解析结果表供确认。
适用场景:私有仓库临时或长期开放给外部人员,批量处理混合标识符列表。
限制:邮箱邀请仅对组织仓库有效,个人仓库无解析用户名时需向对方索取 GitHub 用户名;不支持的标识符默认跳过;不自动升级权限;撤销前需最终确认。运行前读取 skill.yaml,由宿主提供 skill-runtime/v1 上下文。