Go CLI 开发工作流
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f74b71bc/go-cli-developer。
技能介绍
要解决什么问题
用 Go 写命令行工具时,常见痛点是:需求还没定清楚就动手设计子命令,实现阶段又和发布、安装方式脱节。本技能把 需求确认 → 架构与实现 → 分发发布 串成固定调用链,技术栈锁定 Go,发布侧强制覆盖管道安装、源码构建和 go install 三种路径,避免「能跑但别人装不上」。
技能如何工作
整条链分三段,每段加载对应 reference 技能,不混职责:
- brainstorming — 只做需求确认:工具定位、目标用户、核心功能与技术栈(强制 Go)。一次问一个问题,输出写到
docs/requirements/YYYY-MM-DD-.md,此阶段不碰架构。 - cli-developer — 按五步执行:Analyze UX → Design commands(子命令、标志、配置)→ Implement(Go)→ Polish(帮助、错误处理)→ Test(跨平台)。实现时可参考 Cobra/Viper 与架构设计模式文档。
- gitee-cli — 发布与三种分发方式的落地。
适用边界与注意点
- 前置条件:本机
go version可用,且gitee auth status已通过;缺任一条件应先补齐,不要跳过。 - 决策边界:版本号、tag 名、功能取舍、API 报错、权限问题等不确定处,技能要求 问开发者,不要擅自拍板。
- 适合从零到可分发 CLI 的完整协作;若你已有成熟代码库、只需局部重构,应明确范围,避免 brainstorming 重复劳动。
使用场景
- 团队要新增一个 Go 写的内部运维 CLI,需要先产出需求文档再定子命令树,避免直接开写导致返工
- 已有 Go 项目要接入 Cobra/Viper,需要按 UX→命令设计→实现→打磨→跨平台测试五步走完
- CLI 开发完成,必须在 Gitee 上同时提供 curl 管道安装、clone 后 make 构建和 go install 三种装法
- 发布前版本号、tag 名或 Gitee API 权限未定时,需要按技能要求逐项向开发者确认而非默认假设
适合人员
- 负责把内部脚本收成可分发二进制、且发布托管在 Gitee 的后端工程师
- 已配置 gitee-cli 认证、需要从零到发布完整走 brainstorming 与 cli-developer 链路的 CLI 维护者
- 希望子命令、标志与配置文件在实现前单独设计阶段定稿的技术负责人
- 用 Go 写跨平台命令行工具、发布渠道必须覆盖脚本安装与 go install 的独立开发者