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语言并发模式的最佳实践,涵盖goroutine管理、channel与锁的使用规范。支持代码编写、PR审查及大规模代码库审计,旨在预防竞态条件、资源泄漏等并发问题,确保程序正确性与健壮性。
编写涉及goroutine或channel的Go代码
审查并发相关的PR差异
检测goroutine泄漏或竞态条件
在大型代码库中进行并发审计
npx skills add samber/cc-skills-golang --skill golang-concurrency -g -y
提供Go语言context.Context的最佳实践,涵盖传播、取消、超时及值存储规范,指导跨层设计、调试泄漏上下文及选择合适上下文类型。
设计Context跨层传播逻辑
调试上下文泄漏或未过期问题
选择Background/TODO/WithoutCancel场景
在上下文中存储请求范围的值
npx skills add samber/cc-skills-golang --skill golang-context -g -y
提供Go语言内置及标准库数据结构的内部原理、最佳实践与选型指南,涵盖切片、Map、容器包及泛型集合的内存优化与安全使用。
选择或优化Go数据结构
实现泛型容器
查询slice/map底层机制
使用container包
npx skills add samber/cc-skills-golang --skill golang-data-structures -g -y
Go后端数据库访问最佳实践,涵盖sqlx/pgx使用、参数化查询、事务处理及连接池配置。用于编写、审查或调试涉及PostgreSQL等数据库的Go代码,禁止生成SQL迁移脚本。
编写Go数据库交互代码
审查数据库代码安全性
调试数据库相关错误
npx skills add samber/cc-skills-golang --skill golang-database -g -y
管理Golang项目依赖,涵盖go.mod操作、包安装升级、漏洞扫描、版本冲突解决及自动化更新配置。强调标准库优先、安全审计与最小化依赖原则。
添加新Go依赖
升级现有包
解决版本冲突
扫描依赖漏洞
npx skills add samber/cc-skills-golang --skill golang-dependency-management -g -y
提供生产级 Go 代码的惯用设计模式与最佳实践,涵盖构造函数、错误处理、资源管理及架构设计。指导在创建新 API 或审查现有代码时应用适当模式,避免过度抽象和常见陷阱。
选择 Go 架构模式
实现函数式选项构造函数
设计构造器 API
设置优雅关闭机制
应用弹性模式
审查代码中的 init() 滥用或资源泄漏
npx skills add samber/cc-skills-golang --skill golang-design-patterns -g -y
提供Go项目文档编写与审查指南,涵盖godoc注释、README及示例测试等。用于生成或审计代码文档,确保准确性与可读性,支持大型项目的并行文档处理。
编写Go代码注释
创建或更新README文件
审查文档完整性
添加代码示例
npx skills add samber/cc-skills-golang --skill golang-documentation -g -y
专注Go语言GraphQL API开发,支持gqlgen和graphql-go库。涵盖Schema设计、Resolver编写、N+1优化及订阅功能。提供构建与审查模式,确保类型安全、复杂度控制及生产环境最佳实践。
使用 gqlgen 或 graphql-go 构建 GraphQL 服务
设计 GraphQL Schema 或编写 Resolver
处理 GraphQL 订阅集成
代码审查中检查 N+1 查询或复杂度限制
npx skills add samber/cc-skills-golang --skill golang-graphql -g -y
提供Go语言gRPC微服务开发的指南与最佳实践,涵盖Protobuf组织、服务端/客户端实现、拦截器配置、错误处理、TLS/mTLS及流式RPC。适用于新建、审查或调试gRPC服务及相关代码。
实现新的gRPC服务器或客户端
审查现有gRPC代码的正确性与安全性
编写或优化proto文件
配置gRPC拦截器或中间件
处理gRPC状态码与错误
设置TLS/mTLS连接
使用bufconn进行gRPC测试
实现流式RPC
npx skills add samber/cc-skills-golang --skill golang-grpc -g -y
提供 Go 语言代码质量检查最佳实践,涵盖 golangci-lint 配置、规则启用、警告抑制及 CI 集成。支持新代码实时检查与遗留代码并行清理,确保代码规范与安全。
配置 golangci-lint
解决 lint 警告或 nolint 指令
设置代码质量工具链
选择或优化 linter
npx skills add samber/cc-skills-golang --skill golang-lint -g -y
用于将 Go 代码现代化,更新为最新语言特性、标准库改进及惯用模式。支持内联建议与全库扫描,涵盖弃用包替换、新语法应用、测试模式优化及工具链升级,确保代码安全、正确且符合最新最佳实践。
编写或审查 Go 代码时检测到旧式模式
遇到弃用警告
用户明确要求代码现代化
Go 版本升级
CI/工具链刷新
npx skills add samber/cc-skills-golang --skill golang-modernize -g -y
推荐生产就绪的Go语言库和框架,优先标准库,评估成熟度、简单性与性能。
用户明确询问库建议
需要比较替代方案
为新依赖选型
添加新依赖到项目
npx skills add samber/cc-skills-golang --skill golang-popular-libraries -g -y
提供Go项目结构、工作区及模块命名规范指南,辅助架构决策与依赖注入选型,支持CLI、库、服务及Monorepo等场景。
新建Go项目
组织现有代码库
设置Go工作区或Monorepo
决定目录约定
npx skills add samber/cc-skills-golang --skill golang-project-layout -g -y
提供Go语言防御性编程指南,防止panic、数据损坏和运行时bug。涵盖nil安全、类型断言、并发访问及资源生命周期等最佳实践,用于代码审查与编写规范。
遭遇nil panic或map并发访问问题
审查Go代码中的nil安全性
处理slice/map防御性拷贝
设计零值或资源生命周期管理
npx skills add samber/cc-skills-golang --skill golang-safety -g -y
指导在Go中使用samber/do进行依赖注入,涵盖容器配置、服务生命周期管理及错误处理。适用于引入DI框架或重构手动注入场景。
使用samber/do库
代码导入github.com/samber/do
重构为依赖注入
npx skills add samber/cc-skills-golang --skill golang-samber-do -g -y
指导在Go中使用samber/hot库实现高性能内存缓存,涵盖9种驱逐算法选型、TTL设置、加载器链及监控集成,旨在降低延迟与后端压力。
需要使用内存缓存优化高频率资源访问
项目中导入或依赖 github.com/samber/hot 库
需要配置缓存驱逐算法以应对特定负载模式
npx skills add samber/cc-skills-golang --skill golang-samber-hot -g -y
为 Go 语言提供基于 samber/mo 库的函数式编程支持,涵盖 Option、Result、Either 等单子类型,用于实现类型安全的空值处理、错误处理和组合式管道设计。
使用或引入 github.com/samber/mo 包
需要类型安全的空值处理
采用函数式错误处理模式
npx skills add samber/cc-skills-golang --skill golang-samber-mo -g -y
针对 Go 语言中 samber/oops 库的结构化错误处理技能,涵盖错误构建、上下文传递、堆栈追踪及 panic 恢复等最佳实践。
使用或采用 samber/oops 进行错误处理
代码库已导入 github.com/samber/oops
npx skills add samber/cc-skills-golang --skill golang-samber-oops -g -y
Go结构化日志流水线技能,提供采样、格式化及多后端路由处理。用于设计高效日志管道,优化性能并实现日志分流。
使用或采用slog日志库
代码已导入samber/slog-*包
npx skills add samber/cc-skills-golang --skill golang-samber-slog -g -y
Go语言安全专家技能,涵盖代码审查、全库审计及编码阶段的安全最佳实践。支持注入、加密、认证等多领域漏洞分析,利用并行子代理进行深度威胁建模与修复建议生成。
Go代码安全审查
全库安全漏洞审计
编写涉及敏感操作的新Go代码
修复已发现的安全漏洞
npx skills add samber/cc-skills-golang --skill golang-security -g -y
提供Go语言学习资源、社区渠道及开发者关注列表,帮助用户追踪Go生态动态、发现新库和保持技术更新。
寻找Go语言学习资料
获取Go社区信息
追踪Go语言版本更新
npx skills add samber/cc-skills-golang --skill golang-stay-updated -g -y
Go语言测试辅助库stretchr/testify的使用指南,涵盖断言、Mock和测试套件。指导在编写或审查测试代码时选择assert/require、设置Mock期望及验证调用,提升测试质量。
编写Go单元测试
创建Mock对象
审查测试代码规范
配置测试套件
npx skills add samber/cc-skills-golang --skill golang-stretchr-testify -g -y
指导在 Go 中使用 uber-go/dig 进行依赖注入,涵盖容器配置、Provide/Invoke、参数对象及作用域等核心功能。
使用 go.uber.org/dig 包
需要手动组装应用启动时的依赖图
实现基于反射的依赖注入逻辑
npx skills add samber/cc-skills-golang --skill golang-uber-dig -g -y
指导在Go中使用uber-go/fx框架进行依赖注入、生命周期管理及模块化组装,适用于构建长期运行的服务。
使用 uber-go/fx 进行应用开发
代码导入 go.uber.org/fx 包
需要处理启动/停止钩子或信号感知运行
npx skills add samber/cc-skills-golang --skill golang-uber-fx -g -y
Go性能测量技能,涵盖基准测试编写、pprof剖析、benchstat统计分析及CI回归检测。强调统计严谨性,提供从测量到结果解读的完整方法论,区别于优化模式技能。
编写或运行Go基准测试
使用pprof分析CPU/内存热点
使用benchstat对比性能数据
设置CI性能回归检测
npx skills add samber/cc-skills-golang --skill golang-benchmark -g -y
专注于Go语言CLI应用开发的技能,涵盖使用Cobra/Viper构建、扩展及审查命令行工具的最佳实践,包括命令结构、配置分层、I/O规范及单元测试。
需要从零开始构建新的Go CLI工具
为现有CLI添加子命令或标志
审查Go CLI代码的规范性与正确性
涉及cobra、viper或urfave/cli库的使用
npx skills add samber/cc-skills-golang --skill golang-cli -g -y
针对Go项目的CI/CD流水线配置技能,涵盖GitHub Actions工作流搭建、测试、Lint、安全扫描、依赖更新及自动化发布流程。
设置Go项目CI/CD流水线
优化或审计现有GitHub Actions工作流
集成安全扫描工具如Gosec或CodeQL
配置自动化依赖更新和发布流程
npx skills add samber/cc-skills-golang --skill golang-continuous-integration -g -y
Dependencies:
https://github.com/samber/cc-skills-golang
Go依赖注入综合指南,涵盖DI原理、手动构造函数注入及主流库对比。用于设计服务架构、设置DI、重构紧耦合代码及管理生命周期。
设计Go服务架构
重构紧耦合代码
配置依赖注入
管理单例或服务工厂
npx skills add samber/cc-skills-golang --skill golang-dependency-injection -g -y
提供Go语言错误处理的最佳实践,涵盖错误创建、包装、检查及结构化日志记录。支持编码、审查和审计模式,旨在提升代码可靠性与可维护性。
编写或重构Go错误处理逻辑
审查PR中的错误处理变更
对代码库进行错误处理审计
npx skills add samber/cc-skills-golang --skill golang-error-handling -g -y
针对Go语言使用google/wire进行编译时依赖注入的技能。涵盖Provider集定义、绑定规则及代码生成流程,适用于采用wire框架或需处理wire_gen.go的Go项目。
使用 google/wire 进行依赖注入
代码库导入 github.com/google/wire
需要生成或维护 wire_gen.go 文件
npx skills add samber/cc-skills-golang --skill golang-google-wire -g -y
基于 gopls 提供 Go 代码语义智能,支持跳转定义、查找引用、重构、格式化及诊断。适用于在本地构建环境中进行代码导航、依赖分析及安全重命名等开发任务。
需要跳转到 Go 代码定义
查找函数或变量的调用点
执行代码重构如提取/内联变量
运行代码诊断检查错误
npx skills add samber/cc-skills-golang --skill golang-gopls -g -y
Golang技能编排器,自动识别Go任务并加载相关子技能,支持冲突消歧和项目配置。
Go代码编写与开发
Go代码审查或调试
需要配置CLAUDE.md/AGENTS.md以强制触发技能
npx skills add samber/cc-skills-golang --skill golang-how-to -g -y
提供Go语言命名规范指南,涵盖包、结构体、接口、常量等标识符的命名约定。用于编写新代码、审查或重构时的命名决策,以及解答关于命名最佳实践的疑问。
编写新的Go代码
审查或重构Go代码
选择命名方案(如New vs NewTypeName)
讨论Go包命名惯例
询问Go命名最佳实践
npx skills add samber/cc-skills-golang --skill golang-naming -g -y
专注于Go服务生产环境的可观测性工程,涵盖结构化日志、Prometheus指标、OpenTelemetry链路追踪、性能剖析及RUM监控。提供代码植入、PR审查及全量审计模式,助力建立完善的系统监控与诊断能力。
为Go服务添加监控指标或链路追踪
审查代码中的可观测性实现完整性
将旧式日志库迁移至slog
排查生产环境性能或错误问题
npx skills add samber/cc-skills-golang --skill golang-observability -g -y
Go性能优化专家技能,基于剖析结果提供分配减少、内存布局及GC调优等模式建议。支持架构审查与热点路径分析,强调先测量后优化的迭代方法。
Profiling或Benchmarks识别出瓶颈后寻求优化方案
进行性能代码审查以提出改进建议
npx skills add samber/cc-skills-golang --skill golang-performance -g -y
基于godig查询Go包生态信息,包括文档、API签名、版本、依赖关系及CVE漏洞。适用于查找已发布库的公开元数据,不处理本地代码或依赖升级。
查询Go库的使用方法和API文档
获取包的可用版本和许可证信息
检查依赖是否存在已知安全漏洞
查找谁导入了某个Go包
npx skills add samber/cc-skills-golang --skill golang-pkg-go-dev -g -y
用于Go代码的安全重构,通过gopls等工具进行行为保持的结构调整。涵盖计划、执行及简单扫描模式,支持大规模重命名、提取函数和包拆分,确保不改变可观测行为。
代码难以维护
函数或类型过于庞大
存在代码异味需修复
功能添加受限于当前结构
需要大规模重命名或提取代码
npx skills add samber/cc-skills-golang --skill golang-refactoring -g -y
提供 Go 语言函数式编程辅助工具,涵盖切片、映射等500+类型安全泛型函数。支持不可变操作、并行处理及惰性迭代,旨在消除手动循环样板代码,提升数据转换效率与并发安全性。
使用或采用 samber/lo 库
代码库导入 github.com/samber/lo
实现 Go 中的函数式风格数据转换
npx skills add samber/cc-skills-golang --skill golang-samber-lo -g -y
用于在Go中构建响应式流和事件驱动架构,支持异步数据管道、背压及实时处理。适用于导入samber/ro或开发非阻塞流场景,不用于有限切片转换。
构建Go异步事件驱动管道
使用samber/ro库进行实时数据处理
需要声明式响应式流而非手动goroutine
npx skills add samber/cc-skills-golang --skill golang-samber-ro -g -y
提供 Go 语言中使用 spf13/cobra 库构建 CLI 应用的最佳实践,涵盖命令树设计、钩子链、参数验证、Shell 补全及文档生成。适用于基于 Cobra 的 CLI 项目开发、扩展或代码审查场景。
使用 spf13/cobra 构建 Go CLI
需要添加子命令或标志
审查 CLI 代码结构
npx skills add samber/cc-skills-golang --skill golang-spf13-cobra -g -y
提供 Go 语言中 spf13/viper 配置库的使用指南,涵盖多层级配置优先级、环境变量绑定、配置文件读取及热重载等核心功能。
使用 spf13/viper 进行配置管理
代码库导入 github.com/spf13/viper
npx skills add samber/cc-skills-golang --skill golang-spf13-viper -g -y
提供Go语言结构体与接口设计模式的最佳实践,涵盖组合、嵌入、依赖注入及接收者选择等原则,旨在提升代码的可测试性与清晰度。
设计Go类型或接口
实现接口或结构体嵌入
编写类型断言或类型开关
处理JSON/YAML/DB序列化标签
选择指针或值接收者
npx skills add samber/cc-skills-golang --skill golang-structs-interfaces -g -y
用于在Go项目中生成和维护Swagger/OpenAPI文档,支持Gin、Echo等框架集成及注解代码生成。
添加或维护Go项目的Swagger文档
代码库导入swaggo相关包
npx skills add samber/cc-skills-golang --skill golang-swagger -g -y
提供生产级 Go 测试最佳实践,涵盖表格驱动测试、Mock、并行测试及 goroutine 泄漏检测。支持编写、审查、审计和调试测试用例,旨在提升测试覆盖率与可靠性。
编写或生成 Go 单元测试
审查 PR 中的测试代码变更
审计现有测试套件的质量与缺陷
调试失败或不稳定的测试
npx skills add samber/cc-skills-golang --skill golang-testing -g -y
Go程序系统排障技能,用于定位和修复Bug、崩溃及死锁。通过证据驱动的方法论,结合pprof、Delve等工具进行根因分析,涵盖单问题调试与代码库全量扫描模式。
Go代码出现Bug或逻辑错误
程序发生崩溃或意外行为
遇到死锁或并发竞争问题
npx skills add samber/cc-skills-golang --skill golang-troubleshooting -g -y


