agentcli-go

🛠️ 极速构建标准化 Go CLI 工具

Go CLI 框架辅助库,提供脚手架生成、命令管理、配置加载和生命周期管理,适用于快速构建标准化命令行工具。

收藏
4.2k
安装
1.2k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

agentcli-go 是一个 Go 语言 CLI 工具开发框架,主要提供以下能力:

1. 项目脚手架 - 通过 ScaffoldNew() 快速生成标准化项目结构,包含 main.go、cmd/、internal/、pkg/ 等目录布局,内置 Taskfile 和测试模板。

2. 命令扩展 - ScaffoldAddCommand() 支持预设模板(file-sync、http-client、deploy-helper),一键添加子命令。

3. 配置管理 - configx 模块实现分层配置(Defaults < File < Env < Flags),支持 JSON 文件和环境变量自动解析。

4. 生命周期钩子 - RunLifecycle 提供 Preflight/Postflight 接口,便于植入前置检查和后置清理逻辑。

5. Cobra 集成 - cobrax 包简化 cobra 命令树构建,自动绑定持久标志(--verbose、--config、--json、--no-color)。

显著优点

  • 标准化输出:强制统一项目结构,降低团队协作成本
  • 零配置启动:预置 CI/CD 任务链(task ci / verify / smoke)
  • 依赖精简:仅依赖 zerolog、lo、cobra 三个外部库
  • 类型安全:配置解码支持泛型 Decode[T]()

潜在局限

  • pre-1.0 阶段:API 可能不稳定,存在破坏性变更风险
  • Go 专属生态:不适用于其他语言项目
  • 预设模板有限:仅 3 种命令预设,复杂场景需自行扩展

适合人群

  • 需要快速启动 Go CLI 项目的开发团队
  • 追求代码规范一致性的中型组织
  • 熟悉 Cobra 但希望减少样板代码的开发者

常规风险

  • 框架升级时需关注 breaking changes(v0.x.y 语义)
  • log.Fatal 在部分辅助函数中的使用可能中断控制流
  • 过度依赖脚手架可能导致业务逻辑与框架耦合

agentcli-go 内容

手动下载zip · 3.4 kB
skill-card.mdtext/markdown
请选择文件