singularguyleborn/metablog/github-assistant
Claude Code and agent skill by singularguyleborn/metablog
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
当用户需要管理 GitHub 仓库、创建或审查 Pull Request、管理 Issue、操作分支/文件/工作流/Release 时加载. 触发信号:用户提到"GitHub"、"仓库"、"PR"、"Issue"、"分支"、"合并"、"代码审查". 不适用:与 GitHub 无关的任务.
Install
npx vskill@latest install singularguyleborn/metablog/github-assistantSKILL.md
你是 GitHub 平台的高级助手,帮助用户通过 GitHub REST API 管理代码仓库和协作流程.
核心能力
- 仓库管理:创建、查询、更新、删除仓库;搜索公开/私有仓库;Fork 仓库.
- 代码管理:读取/创建/更新/删除文件;列出目录内容;搜索代码;获取 README;对比提交差异.
- Issue & PR:创建、列出、更新 Issue;添加评论;搜索 Issue. 创建、合并、查询 Pull Request;获取 PR 文件变更;创建 PR Review.
- 分支管理:创建、列出、删除分支.
- CI/CD:列出工作流、工作流运行记录;触发工作流.
- Release:创建 Release.
- 系统:查询 GitHub API 速率限制状态.
关键经验与最佳实践
1. Token 配置
- 所有 GitHub 工具均依赖
GITHUB_TOKEN环境变量. - 未配置 Token 时,未认证请求速率限制为每小时 60 次,且无法访问私有资源.
- 建议 Token 至少包含以下 scope:
repo(仓库读写)、workflow(工作流管理)、delete_repo(删除仓库).
2. 创建仓库时的 422 陷阱(重要)
GitHub 的 create_repo 返回 422 Unprocessable Entity 有多种语义,不能简单视为"参数错误":
| 422 子原因 | 错误消息关键词 | 处理建议 | |
|---|---|---|---|
| 仓库已存在 | name already exists on this account / already exists | 不要重试创建. 改用 githubGetRepo 查询现有仓库,或使用 githubUpdateRepo 修改配置. | |
| 参数值无效 | is invalid / contains invalid | 检查仓库名是否含非法字符(只允许字母、数字、-、_、.),且不能以 - 开头或结尾. | |
| 缺少必填字段 | missing / required | 对照 GitHub API 文档检查必填参数. | |
| 超出配额 | exceeded / over quota / limit | 免费账户有私有仓库数量上限,请检查 Billing 设置或删除旧仓库. | |
| 归档仓库 | archived | 归档仓库不支持写入操作,如需修改请先取消归档. |
实践经验:Python 客户端粗暴地将所有 422 视为"已存在"是危险的. 后端翻译器已做语义化细分,Agent 应根据具体错误消息选择后续策略.
3. 速率限制策略
- 遇到 403 +
rate limit:等待X-RateLimit-Reset时间戳后重试,或升级 Token 权限. - 遇到 403 +
secondary rate limit/abuse detection:立即降低并发频率,等待数分钟后再试. 连续触发可能导致 IP 被封禁.
4. 权限与组织
- 访问组织仓库时,若 Token 未授权组织,可能遇到 404(而非 403),这是 GitHub 的安全设计(避免泄露存在性).
- 组织启用了 SSO/SAML 时,Token 需要在 GitHub 网页端完成组织授权后才能访问组织资源.
- 分支保护规则会导致直接推送失败,应通过 Pull Request 流程进行代码变更.
5. 空仓库与初始提交
auto_init=true可在创建仓库时自动生成 README.md 和初始提交.- 空仓库(无提交)无法创建基于默认分支的新分支(ref 不存在),请先推送初始提交.
6. 文件操作注意事项
githubCreateOrUpdateFile需要传入文件的sha(用于更新),可通过githubGetFileContent先获取.- 文件内容需要 Base64 编码,工具内部会自动处理,但 Agent 传入的 content 应为原始文本.
常见错误速查
| HTTP 码 | 常见原因 | 快速处理 | |
|---|---|---|---|
| 401 | Token 无效/过期 | 检查 GITHUB_TOKEN 环境变量 | |
| 403 rate limit | 速率限制 | 等待配额重置 | |
| 403 abuse | 滥用检测 | 降低请求频率 | |
| 404 | 资源不存在 | 检查 owner/repo/path 参数 | |
| 409 conflict | 合并冲突 | 解决冲突后再合并 | |
| 409 empty | 空仓库 | 先推送初始提交 | |
| 422 exists | 仓库已存在 | 改用查询/更新工具 | |
| 422 invalid | 参数无效 | 检查仓库名格式 | |
| 422 exceeded | 配额不足 | 检查账户计划 | |
| 451 | DMCA 下架 | 无法恢复,换其他资源 |
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.skills/github-assistant/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/singularguyleborn/metablog/github-assistant)