Agent Skills
› samber/cc-skills-golang
samber/cc-skills-golang
GitHub提供Go语言代码风格规范,涵盖行长度、变量声明、控制流等需人工判断的清晰度规则。用于编写或审查Go代码时确立编码标准,区别于命名规范和格式化检查。
Install All Skills
npx skills add samber/cc-skills-golang --all -g -y
Skills in Collection (46)
提供Go语言代码风格规范,涵盖行长度、变量声明、控制流等需人工判断的清晰度规则。用于编写或审查Go代码时确立编码标准,区别于命名规范和格式化检查。
编写Go代码
审查Go代码风格
询问代码清晰度建议
建立项目编码标准
npx skills add samber/cc-skills-golang --skill golang-code-style -g -y
提供Go语言context.Context的最佳实践指南,涵盖传播、取消、超时及值存储规范,用于优化API边界设计、调试上下文泄漏及选择正确的Context创建方式。
设计跨层级的上下文传播逻辑
调试上下文未正确取消或泄露问题
选择context.Background/TODO/WithoutCancel的场景
在上下文中存储请求范围的值
npx skills add samber/cc-skills-golang --skill golang-context -g -y
提供Go语言数据库访问的最佳实践指南,涵盖参数化查询、事务处理、连接池配置及sqlx/pgx使用规范。适用于编写、审查或调试涉及PostgreSQL等数据库的Go代码,强调安全性与可观测性。
编写Go后端数据库交互代码
审查或调试SQL相关逻辑
解决数据库连接或事务问题
npx skills add samber/cc-skills-golang --skill golang-database -g -y
Go语言项目文档编写与审查指南,涵盖godoc注释、README、CHANGELOG及API文档等。支持写入和审查模式,提供并行处理大型代码库的能力,确保文档准确、示例驱动且易于维护。
编写或审查Go代码的文档注释
生成或更新README、CONTRIBUTING等文件
设置文档站点或讨论最佳实践
npx skills add samber/cc-skills-golang --skill golang-documentation -g -y
用于在Go中构建和审查GraphQL API的专家技能,支持gqlgen和graphql-go库。涵盖模式设计、解析器实现、N+1优化及查询复杂度控制,提供生成与代码审查两种模式。
构建GraphQL服务器
设计Schema或编写Resolver
处理订阅功能
集成GraphQL至Go HTTP服务
导入gqlgen或graphql-go库
审计GraphQL代码或PR
npx skills add samber/cc-skills-golang --skill golang-graphql -g -y
提供Go语言gRPC微服务开发的最佳实践,涵盖Protobuf组织、服务端/客户端实现、拦截器配置、错误处理及TLS安全等生产级模式。
实现或重构gRPC服务
审查gRPC代码正确性与安全性
编写或优化Proto文件
配置gRPC拦截器与中间件
处理gRPC错误状态码
npx skills add samber/cc-skills-golang --skill golang-grpc -g -y
用于将 Go 代码现代化,更新过时的语言特性、标准库及工具链。支持内联建议和全量扫描模式,旨在提升代码安全性、正确性和可读性,同时避免干扰开发者的当前工作流。
审查包含旧式模式的 Go 代码
遇到弃用警告
用户请求代码现代化或 Go 版本升级
npx skills add samber/cc-skills-golang --skill golang-modernize -g -y
指导在Go中使用samber/do进行依赖注入,涵盖容器配置、服务生命周期管理及组合根模式。适用于引入DI框架或重构手动构造函数的场景。
使用或采用samber/do库
代码导入github.com/samber/do包
将手动构造函数注入重构为DI容器
npx skills add samber/cc-skills-golang --skill golang-samber-do -g -y
提供 Go 语言中使用 samber/hot 库进行内存缓存的最佳实践,涵盖算法选择、TTL、加载器链及监控配置。用于优化高并发场景下的数据访问性能与后端压力。
使用或引入 github.com/samber/hot 库
需要为高频访问的中等基数资源实现低延迟内存缓存
需要减少后端数据库或外部服务的查询压力
npx skills add samber/cc-skills-golang --skill golang-samber-hot -g -y
提供 Go 语言中使用 samber/oops 库进行结构化错误处理的最佳实践,涵盖错误构建、堆栈追踪、上下文传递及 APM 集成。
使用或引入 github.com/samber/oops 库
需要实现结构化错误处理、堆栈追踪或错误包装
npx skills add samber/cc-skills-golang --skill golang-samber-oops -g -y
提供Go语言结构化日志管道设计技能,涵盖采样、PII过滤、路由及多后端集成。指导构建高效日志流,优化性能与合规性。
需要配置Go结构化日志管道
集成slog-sampling或slog-formatter等组件
实现日志路由至Sentry/Loki等后端
npx skills add samber/cc-skills-golang --skill golang-samber-slog -g -y
Go语言测试技能,指导使用stretchr/testify库进行断言、Mock和测试套件编写。涵盖assert与require的选择、核心及高级断言方法,旨在提升测试代码的可读性与规范性。
编写Go单元测试或集成测试
创建Mock对象或验证函数调用
审查现有测试代码的 testify 用法
需要设置测试前置条件或处理错误链
npx skills add samber/cc-skills-golang --skill golang-stretchr-testify -g -y
指导在Go中使用uber-go/dig进行依赖注入,涵盖容器配置、Provide/Invoke用法及与fx的区别。
代码库导入 go.uber.org/dig
需要实现基于反射的依赖注入
构建应用启动时的对象图
npx skills add samber/cc-skills-golang --skill golang-uber-dig -g -y
指导在 Go 中使用 uber-go/fx 框架进行依赖注入、生命周期管理及模块化应用组装。适用于构建需要优雅启动/关闭的长运行服务,涵盖 fx.New、Provide、Invoke 等核心用法。
使用 uber-go/fx 进行依赖注入
Go 代码导入 go.uber.org/fx
实现服务生命周期钩子或信号处理
npx skills add samber/cc-skills-golang --skill golang-uber-fx -g -y
提供Go语言基准测试、性能剖析及测量方法论,涵盖编写规范、统计分析及CI回归检测。
编写或运行Go基准测试
使用pprof分析CPU/内存热点
使用benchstat比较性能数据
配置CI基准回归检测
npx skills add samber/cc-skills-golang --skill golang-benchmark -g -y
专注Go CLI应用开发,涵盖使用Cobra/Viper构建、扩展及审查命令行工具的最佳实践。支持命令结构、配置分层、信号处理及单元测试等场景。
构建新的Go CLI工具
审查现有CLI代码规范
为CLI添加子命令或标志
npx skills add samber/cc-skills-golang --skill golang-cli -g -y
专注于 Go 语言并发设计的专家技能,涵盖 goroutine 生命周期管理、channel 与 select 使用、同步原语及模式(如 worker pools),用于编写、审查或审计并发代码,确保正确性与防泄漏。
编写或审查 Go 并发代码
选择 channel 或 mutex 方案
防止 goroutine 泄漏
npx skills add samber/cc-skills-golang --skill golang-concurrency -g -y
提供Go语言内置及标准库数据结构的内部原理、最佳实践与选型指南,涵盖切片、映射、容器包及泛型集合的内存布局与性能优化。
需要选择或优化Go数据结构时
询问切片或映射的内部实现细节
使用container/包或泛型集合
npx skills add samber/cc-skills-golang --skill golang-data-structures -g -y
提供Go语言依赖注入最佳实践,涵盖手动构造器注入与主流库对比。支持设计模式评估与重构多智能体协作,旨在构建可测试、低耦合的架构,解决服务组装与生命周期管理问题。
设计Go服务架构
重构紧耦合代码
配置依赖注入容器
管理单例或服务工厂
npx skills add samber/cc-skills-golang --skill golang-dependency-injection -g -y
Go语言项目依赖管理技能,涵盖go.mod/go.sum维护、版本升级与冲突解决、govulncheck安全扫描及供应商锁定。用于添加、移除或审计Go依赖,强调标准库优先与安全合规。
需要添加新的Go第三方包
升级现有Go依赖版本
解决依赖版本冲突
审计依赖树安全性
npx skills add samber/cc-skills-golang --skill golang-dependency-management -g -y
提供生产级 Go 代码的惯用设计模式与最佳实践,涵盖函数式选项、架构风格、资源管理及优雅关闭等。支持设计与审查模式,指导开发者选择合适模式并审计现有代码缺陷。
选择架构模式或实现函数式选项
审计代码中的 init()滥用或缺少超时
设计构造函数 API 或处理生命周期
npx skills add samber/cc-skills-golang --skill golang-design-patterns -g -y
提供Go语言地道错误处理最佳实践,涵盖错误创建、包装、检查、日志记录及panic处理。支持编码、审查和审计模式,旨在提升代码可维护性与生产环境可观测性。
编写或重构Go错误处理逻辑
审查PR中的错误处理变更
审计代码库中的错误处理规范
npx skills add samber/cc-skills-golang --skill golang-error-handling -g -y
指导在Go项目中使用google/wire进行编译时依赖注入。涵盖Provider、Set定义及wire_gen.go生成,强调编译期错误检测与无运行时容器特性。
使用google/wire库
需要编译时依赖注入
配置wire.Build或NewSet
npx skills add samber/cc-skills-golang --skill golang-google-wire -g -y
提供基于 gopls 的 Go 语言语义代码智能,支持定义跳转、引用查找、重构、诊断等功能。通过 MCP、LSP 或 CLI 接入,用于导航和重构本地已解析构建的 Go 代码。
需要跳转到 Go 代码中的符号定义
查找函数或变量的所有调用点
执行提取方法、内联变量等重构操作
获取编译错误或类型检查的诊断信息
npx skills add samber/cc-skills-golang --skill golang-gopls -g -y
Go语言技能编排助手,自动识别任务意图并并行加载相关子技能(如测试、安全、并发等),支持技能冲突消歧及项目配置生成。
Golang代码编写或审查
Golang调试或故障排查
需要同时加载多个Go相关技能时
解决技能重叠冲突
配置Agent的Go技能强制加载
npx skills add samber/cc-skills-golang --skill golang-how-to -g -y
专注于Go语言代码质量,指导golangci-lint配置、规则选择及警告处理。支持设置、编码辅助和旧代码清理模式,提升静态分析效率。
配置 golangci-lint
解释或修复 lint 警告
选择 linter 工具
询问 nolint 抑制用法
npx skills add samber/cc-skills-golang --skill golang-lint -g -y
提供Go语言命名规范指导,涵盖包、结构体、接口、错误等标识符的命名约定。用于编写新代码、审查或重构时的命名决策及最佳实践咨询。
编写新的Go代码时涉及命名选择
审查或重构代码中的命名规范
询问Go命名最佳实践或惯例
npx skills add samber/cc-skills-golang --skill golang-naming -g -y
面向Go服务的可观测性工程技能,涵盖日志、指标、追踪、性能分析及用户行为监控。支持代码植入、PR审查及全量审计模式,帮助开发者建立生产环境的全链路监控能力。
为Go服务添加结构化日志、Prometheus指标或OpenTelemetry追踪
审查PR中的可观测性代码变更
审计现有代码库的可观测性覆盖度
npx skills add samber/cc-skills-golang --skill golang-observability -g -y
Golang性能优化技能,指导在profiling识别瓶颈后应用优化模式。涵盖内存分配、CPU效率、GC调优及代码审查,强调先测量再优化的方法论,用于提升Go应用性能。
性能剖析发现瓶颈
需要优化Go代码性能
进行性能代码审查
npx skills add samber/cc-skills-golang --skill golang-performance -g -y
基于 godig 工具查询 Go 包文档、版本、漏洞及依赖关系,适用于获取公开生态信息。
查询 Go 包的文档或符号
检查 Go 包是否存在已知漏洞
查找 Go 包的可用版本
npx skills add samber/cc-skills-golang --skill golang-pkg-go-dev -g -y
提供Go语言生态库和框架推荐,评估生产就绪性、成熟度及标准库优先策略,辅助开发者进行技术选型与替代方案比较。
询问Go库或框架建议
比较不同库的优劣
为特定任务选择依赖库
npx skills add samber/cc-skills-golang --skill golang-popular-libraries -g -y
指导Go项目架构设计与目录结构规范,涵盖CLI、服务、库及Monorepo布局,集成12-Factor原则与DI选型决策。
新建Go项目初始化
Go代码库结构重组
多模块工作区配置
npx skills add samber/cc-skills-golang --skill golang-project-layout -g -y
专注于Go代码的安全重构,通过gopls等工具实现行为保持的重构、大规模重命名及模块解耦。强调先规划后执行,确保测试覆盖,以小型PR形式落地变更,避免破坏现有功能。
用户请求重构Go代码
函数或类型过于庞大需拆分
存在阻碍功能的代码异味
需要大规模重命名或提取接口/函数
npx skills add samber/cc-skills-golang --skill golang-refactoring -g -y
指导Go语言防御性编程,预防nil panic、类型转换截断、slice别名及defer循环等常见运行时错误。适用于代码审查、安全类型设计及消除潜在崩溃场景。
代码审查发现潜在nil操作风险
设计需保证零值安全的类型
修复因切片共享内存导致的静默数据损坏
npx skills add samber/cc-skills-golang --skill golang-safety -g -y
提供Go语言函数式编程工具库samber/lo的使用指南,涵盖切片、映射等500+泛型函数的类型安全操作及并发处理。
使用或引入 samber/lo 库
在 Go 代码中实现函数式数据转换
npx skills add samber/cc-skills-golang --skill golang-samber-lo -g -y
提供Go语言中基于samber/mo库的Monad类型(Option, Result等)使用指南,旨在通过函数式编程实现类型安全的空值处理、错误管理及组合管道,避免nil指针风险。
代码导入 github.com/samber/mo
需要类型安全的空值或错误处理
采用函数式组合模式
npx skills add samber/cc-skills-golang --skill golang-samber-mo -g -y
用于在Go中构建响应式流和事件驱动架构,支持异步数据管道、背压及实时处理。适用于需要声明式操作无限数据流的场景,区别于有限切片转换。
构建Go异步事件驱动管道
处理实时数据流或无限序列
代码导入github.com/samber/ro
需要声明式响应式编程
npx skills add samber/cc-skills-golang --skill golang-samber-ro -g -y
Go语言安全最佳实践,涵盖注入、加密、HTTP头等漏洞防护。支持代码审查、全量审计及编码模式,集成gosec等工具,提供威胁建模与修复建议。
Go代码安全审查
Go应用安全审计
编写或修复Go安全相关代码
npx skills add samber/cc-skills-golang --skill golang-security -g -y
指导在Go中构建基于spf13/cobra的CLI应用,涵盖命令树设计、钩子链、参数校验、自动补全及文档生成。支持新建、扩展和审查模式,适用于需要Unix风格原生体验的命令行工具开发。
使用或引入 spf13/cobra 库
构建或重构 Go CLI 应用程序
实现命令行自动补全功能
npx skills add samber/cc-skills-golang --skill golang-spf13-cobra -g -y
指导在Go中使用spf13/viper库进行分层配置管理,涵盖优先级解析、环境变量绑定、文件读取及热重载等核心功能。
使用或引入 spf13/viper 库
需要实现多层级配置加载与合并
处理 Go 应用中的配置文件读写
npx skills add samber/cc-skills-golang --skill golang-spf13-viper -g -y
提供Go语言生态系统的权威资源列表,包括官方文档、新闻通讯、社区论坛及知名开发者信息,帮助用户持续跟踪Go语言动态、发现新工具并融入开发社区。
查找Go语言学习资源
关注Go社区和会议
了解Go语言最新变更
npx skills add samber/cc-skills-golang --skill golang-stay-updated -g -y
提供Golang结构体与接口的设计模式指导,涵盖组合、嵌入、类型断言、依赖注入及指针/值接收者选择,旨在提升代码可测试性与清晰度。
设计Go类型
定义或实现接口
结构体字段标签配置
接口组合策略
npx skills add samber/cc-skills-golang --skill golang-structs-interfaces -g -y
用于在Go项目中生成和维护OpenAPI/Swagger文档,支持swaggo工具链、多框架集成及注解规范。
需要为Go API添加或维护Swagger/OpenAPI文档
代码中导入了swaggo相关依赖包
npx skills add samber/cc-skills-golang --skill golang-swagger -g -y
提供生产级 Go 测试最佳实践,涵盖表驱动测试、Mock、并行测试及 goroutine 泄漏检测。支持编写、审查、审计和调试测试用例,旨在提升测试覆盖率与稳定性。
编写 Go 单元测试或集成测试
审查 Pull Request 中的测试变更
排查测试失败或不稳定问题
审计现有测试套件的质量与漏洞
npx skills add samber/cc-skills-golang --skill golang-testing -g -y
提供系统化的Go程序故障排查指南,涵盖崩溃、死锁及竞态等问题的根因分析。支持单问题顺序调试与大规模代码库并行扫描模式,结合pprof和Delve等工具定位根本原因。
Go程序出现bug或意外行为
需要排查崩溃、死锁或竞态条件
npx skills add samber/cc-skills-golang --skill golang-troubleshooting -g -y
为Go项目配置GitHub Actions CI/CD流水线,涵盖测试、Lint、安全扫描、依赖管理及自动化发布。用于生成或优化工作流文件,集成质量门禁与工具链,不涉及安全分析解读。
配置Go项目CI/CD流程
编写或修复.github/workflows/*.yml
添加Linter或安全扫描器到流水线
设置自动化依赖更新机器人
npx skills add samber/cc-skills-golang --skill golang-continuous-integration -g -y
Dependencies:
https://github.com/samber/cc-skills-golang


