SuperAPI AI 工具集

golang

编程与开发

查看项目

更新于 10-16 06:46

技能介绍

用途:该技能用于在编写或修改 .go 文件时强制遵循 Go 1.26 的惯用模式与 2025 最佳实践,并通过自动化质量门禁保证代码风格与错误处理一致性。

主要能力:核心原则包括简单优先、显式优于隐式、组合优于继承、小接口、错误即值。函数约束为不超过 50 行、不超过 4 个参数、单一职责;抽象遵循最小抽象与“三次法则”。错误处理要求始终用 fmt.Errorf 加 %w 包装上下文,使用 errors.Is/errors.As 判断哨兵错误与自定义错误类型,避免裸返回、忽略错误、库代码 panic。接口由消费方定义且保持小。涵盖泛型约束、cmp/maps/slices 标准库、log/slog 结构化日志、context 传播、range-over-func 迭代器、errgroup 限流并发、channel 所有权、sync.Once 与 atomic。测试采用表驱动、t.Parallel 与 t.Cleanup。还提供 AST-Grep 反模式检测规则(如 defer 参数立即求值、json:"-,omitempty" 标签问题)与文档规范。

使用方式:初始化模块 go mod init github.com/org/project,确认 go.mod 为 go 1.26;安装工具 go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.62.0 与 go install golang.org/x/tools/cmd/goimports@latest;复制 pre-commit 钩子并 chmod +x,复制 .golangci.yml 与 .editorconfig。质量检查运行 go build ./... 与 golangci-lint run,脚本包括 ./scripts/lint.sh 与 ./scripts/fmt-check.sh。

适用场景:Go 项目日常开发、代码审查前自检、会话恢复后继续实现时的规范校验。

限制:资料未提供该技能的收费、价格、平台支持范围与效果数据;具体脚本路径依赖本地技能目录,需按实际环境调整。