Go

专精Go语言开发、调试与代码审查的AI助手

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:Go。
它的用途是:专精Go语言开发、调试与代码审查的AI助手
详细介绍见:https://321skill.com/skills/go-x-6/
请根据该页面的说明完成安装。

使用示例

‘我的Go服务在运行一段时间后内存持续增长,`go tool pprof`显示goroutine数量一直在增加,这是goroutine泄漏吗?该如何定位?’,它会帮你分析可能的泄漏点,如未关闭的channel、未停止的timer或阻塞的goroutine,并指导你使用pprof、trace等工具进行验证和修复。

介绍

本Skill专为解决Go开发中的各类棘手问题而设计。它能深入处理并发编程中的经典难题,如goroutine泄漏、数据竞争、死锁、通道误用,以及slice和map的微妙行为。同时,它也覆盖了Go模块依赖管理、网络服务开发、性能调优和泛型使用等日常开发场景。

使用时,你可以直接向它描述遇到的错误信息、异常行为或想要实现的功能。无论是panic日志、go test -race的警告,还是内存持续增长、服务超时,亦或是依赖冲突、交叉编译失败,它都能提供针对性的诊断思路和解决方案。

它非常适合中高级Go开发者、全栈工程师以及运维开发人员。当你需要深入理解Go运行时行为、排查线上复杂故障、优化服务性能或编写健壮的并发代码时,它能成为你的得力助手。

建议在遇到具体问题时,尽可能提供详细的错误堆栈、代码片段和上下文信息,以便获得更精准的解答。对于框架内部实现(如Kubernetes operator)或过于宽泛的架构设计问题,其帮助可能有限。

核心特点

与通用编程助手不同,它深度聚焦Go语言生态,尤其擅长诊断和解决Go特有的并发陷阱(如数据竞争、通道死锁)、内存泄漏问题以及go.mod依赖管理中的复杂冲突,能提供更贴近Go编译器与运行时视角的解决方案。

注意事项

不适合处理Kubernetes operator开发、特定Web框架(如Gin、Echo)的内部原理,或与Go语言无关的通用软件架构问题。

常见问题

如何排查Go服务的内存泄漏?

可以描述内存增长模式、goroutine数量变化,并提供pprof输出或相关代码片段,我会帮你分析潜在的goroutine泄漏、定时器未关闭或缓存不当引用等问题。

遇到 `fatal error: concurrent map writes` 错误怎么办?

这通常是并发写map导致的。可以展示相关map操作代码,我会帮你分析如何正确使用sync.Mutex、sync.RWMutex或sync.Map来保证并发安全。