CtrlK
BlogDocsLog inGet started
Tessl Logo

gh-cli

使用 GitHub CLI (`gh`) 执行非交互式 GitHub 协作与自动化任务(PR、Issue、Actions、Release、API 查询/修改)。当用户要求“用 gh 命令完成任务”、需要结构化 JSON 输出(`--json`/`--jq`)、批量处理 PR/Issue(如“批量 review 多个 PR”)、按策略合并(如“检查通过后自动 squash 合并”)时使用此 skill。

77

Quality

96%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

gh-cli

Overview

以可复现、可审计的方式调用 gh。默认输出结构化数据,优先使用非交互命令,避免依赖浏览器或 TUI。

Workflow

  1. 确认认证与仓库上下文。
  2. 如果命令参数不确定,先运行 gh <subcommand> --helpgh help <topic>
  3. 先生成“只读探测命令”,再生成“变更命令”。
  4. 变更命令明确影响范围(仓库、PR/Issue 编号、merge 策略、是否删除分支)。
  5. 执行后返回关键输出与下一步建议。

Operation Decision

  1. 用户只问“现状/列表/状态”:只执行只读命令(list/view/status/api GET)。
  2. 用户要求“评论/审查/合并/触发工作流”:先只读确认对象存在与状态,再执行变更命令。
  3. 用户同时要“查询+修改”:拆成两段,先回显查询结果,再给修改命令并执行。
  4. 用户目标不完整(缺编号、缺仓库、缺 merge 方法):先补齐参数,不直接变更。
  5. 用户要求“整体审查结论”(approve/request-changes/comment):使用 gh pr review
  6. 用户要求“按文件/按行评论”:使用 gh api repos/{owner}/{repo}/pulls/{num}/reviewsgh api repos/{owner}/{repo}/pulls/{num}/comments,不要把 gh pr review 当作行内评论接口。

Command Rules

  • 默认使用非交互模式;不要依赖手动输入。
  • 优先输出 JSON:使用 --json + --jq/-q 精简结果。
  • 需要批量查询时,优先 gh api --paginate
  • 需要复杂参数时,优先 gh api -f/-F--input 传文件。
  • gh pr diff 不支持按文件路径直接过滤;按文件获取 patch 使用 gh api repos/{owner}/{repo}/pulls/{num}/files --paginate 再筛选。
  • 提交行内评论前,必须先查询 headRefOid,并保证请求里的 commit_id 与其一致;否则常见 422
  • 构造复杂 JSON 时,优先内存对象后通过标准输入喂给 gh api --input -,避免在工作区落地临时文件。

Failure Handling

  • 认证失败:先执行 gh auth status,返回失败原因并给出最小修复命令。
  • 权限不足(repo/org/token scope):明确缺失权限,不尝试重复写操作。
  • 资源不存在(PR/Issue 编号错误):先回显查询命令与空结果,再请求更正目标。
  • 分支保护或检查未通过导致无法 merge:返回阻塞项(review/check/protection),并给出可执行下一步。
  • 二次执行冲突(已 merge、已关闭、已评论):识别幂等场景并停止重复变更。

Safety Checklist

执行任何写操作前,先确认:

  • 目标仓库(owner/repo)。
  • 目标对象(PR/Issue 编号或 workflow 名称)。
  • 操作类型(comment/review/merge/run 等)。
  • 关键策略(merge 方法、是否 --delete-branch、是否 --auto)。
  • 若为行内评论:headRefOidcommit_id 一致。
  • 预期结果(状态变化、评论内容、触发记录)。

缺任一关键项时,先补信息,再执行。

Output Format

统一按以下结构输出:

  1. Plan: 本次要做的动作(1-2 行)。
  2. Commands: 实际执行的命令(先只读,后变更)。
  3. Result: 关键字段(如 numberstateurlreviewDecision)。
  4. Next: 若失败或受阻,给最短可执行下一步。

Reference

按需读取参考文档,避免一次加载全部命令:

  • 入口索引:references/commands.md
  • 认证:references/auth.md
  • 仓库上下文:references/repo.md
  • PR:references/pr.md
  • Issue:references/issue.md
  • Workflow:references/workflow.md
  • Run:references/run.md
  • API:references/api.md
  • 细粒度子命令:references/commands.md 列出的 *-*.md 文件(如 pr-diff.mdrun-watch.md
Repository
BiFangKNT/mtga
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.