选型指南 · Comparison

gf vs gh / glab — 如何选择?

gh 与 glab 是 GitHub / GitLab 官方的单一平台 CLI;gf 是在它们之上的一层工程化编排:统一命令面、 AI Agent Skills 与四阶段工作流。三者不是替代关系,而是分层协作。

一览对比

六个维度快速对比。gf 在底层复用 gh / glab / gitcode,因此它们恰恰是 gf 的能力底座。

维度 gf gh glab
平台支持 GitHub / GitLab / GitCode 三大平台统一封装。基于 git remote 自动检测,也可 --platform 手动指定。 仅 GitHub(含 Enterprise) 仅 GitLab(含自建实例)
命令面 同一套命令在三个平台行为一致,如 gf issue list。一条命令打天下,无需记两套 CLI。 GitHub 原生命令面,生态最丰富(gh extensions)。 GitLab 原生命令面。
Agent 集成 26 个 gf-* Skills,一键安装到 Claude Code / Codex / Gemini / Copilot / OpenCode,Agent 开箱即用。 可被 Agent 调用,但无配套 Skills 编排。 可被 Agent 调用,但无配套 Skills 编排。
工作流编排 四阶段编排:需求澄清 → 计划制定 → 执行 → 交付后检查,内置质量门禁。 无编排,需自行组合脚本。 无编排,需自行组合脚本。
输出格式 json / text / toon(Agent 专用 token 优化,省 60–90% token)。 JSON / markdown / 表格。 JSON / markdown / 表格。
安装方式 brew tap byx-darwin/tap && brew install gfcargo install gf;底层复用 gh / glab / gitcode。 brew / 官方安装脚本 / 各平台包管理器。 brew / 官方安装脚本 / 各平台包管理器。

什么时候选 gf

以下场景,gf 的价值最明显:

多平台混用

GitHub + GitLab(甚至 GitCode)同时在手?gf 一套命令统一三平台,不再记两套 CLI、两套语法。

Agent 驱动开发

想让 Claude Code / Codex 等 Agent 自己走完 Issue → PR → Review → Release,而不是只帮你敲 gh 命令。

工程纪律与质量门禁

四阶段工作流 + build → test → coverage → fmt → static → pre-commit 门禁,交付质量有底线。

团队标准化

Skills 随仓库走(.claude/skills/),新人 clone 即开箱即用,全员工作流一致。

节省 token 预算

toon 输出针对 Agent 消费优化,命令交互省 60–90% token,长会话成本更低。

平台迁移成本

从 GitHub 迁到 GitLab 或反过来,gf 命令面不变,改造面最小。

什么时候继续用 gh / glab

gf 不是要消灭 gh / glab,而是承接它们之上的编排层。以下情况请放心留在官方 CLI:

  • gh extensions 生态:gh 独有的扩展体系(如 gh copilot、gh browse 等社区扩展)是 gf 未封装的能力,此时直接使用 gh。
  • 长尾参数与独有特性:gf 封装的是跨平台常用子集;需要底层 CLI 独有参数/特性时,随时直接调用 gh / glab 原生命令。
  • 纯单平台、无 Agent 需求:只在一个平台上做常规操作,不需要工作流编排时,gh / glab 更轻、更直接。
  • 存量脚本 / CI 基于 gh / glab:已有自动化不必迁移;gf 与 gh / glab 并存,互不干扰。

从 gh / glab 迁移到 gf

gf 底层依赖 gh / glab,因此迁移不需要卸载它们——安装 gf 后两者共存。

1. 安装 gf

无需删除 gh / glab。gf 启动时会校验底层 CLI 版本,不满足时给出修复指引。

brew tap byx-darwin/tap && brew install gf

2. 认证

使用 gf auth login 完成各平台认证,或在已有 gh / glab 凭据基础上直接使用。

3. 命令迁移

把脚本里的 gh 换成 gf,命令面基本一一对应:

场景 gh gf 说明
列出 Issue gh issue list gf issue list 自动检测平台
创建 Issue gh issue create gf issue create 语法一致
创建 PR gh pr create gf pr create 语法一致
列出 PR gh pr list gf pr list 语法一致
合并 PR gh pr merge 123 gf pr merge 123 语法一致
审查 PR gh pr review --approve gf review approve 123 独立的 review 命令面
创建 Release gh release create v1.0.0 gf release create v1.0.0 语法一致
克隆仓库 gh repo clone owner/repo gf repo clone owner/repo 语法一致
查看流水线 gh run view gf pipeline status 独立 pipeline 命令面
登录认证 gh auth login gf auth login 语法一致

glab 用户同理:glab issue listgf issue listglab mr creategf pr createglab pipeline statusgf pipeline status

4. 安装 Skills

把工作流装进 Agent:

gf skills install — 项目级(跟随仓库)
gf skills install -g — 全局(所有项目可用)

5. 进入四阶段工作流

在支持的 Agent 平台中输入 /gf-workflow,即可跑通需求澄清 → 计划制定 → 执行 → 交付后检查。

gh extensions 仍然可随时通过 gh 调用——gf 不接管 gh 的扩展生态,两者并行。

选 gf,把工程循环交给 Agent。

brew tap byx-darwin/tap && brew install gf

MIT License · Rust 2024 · 支持 GitHub / GitLab / GitCode 三大平台