Go
专精Go语言开发、调试与代码审查的AI助手。
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:Go。 它的用途是:专精Go语言开发、调试与代码审查的AI助手。 详细介绍见:https://321skill.com/skills/go-x-10/ 请根据该页面的说明完成安装。
使用示例
‘我的Go服务在运行一段时间后内存持续增长,这是部分goroutine的堆栈信息,请帮我分析可能哪里发生了goroutine泄漏?’ 它会分析你提供的堆栈信息,指出可能未正确关闭的channel、未停止的timer或未释放的网络连接,并给出修复建议。或者,当你在代码审查时遇到一个复杂的并发逻辑,可以说:‘请审查这段使用多个goroutine和channel的代码,是否存在数据竞争或死锁风险?’ 它会逐行分析,指出潜在问题并建议改进方案。
介绍
这个Skill专门解决Go开发者在编码、调试和代码审查中遇到的各种棘手问题。它深入理解Go语言的并发模型、内存管理、依赖管理等核心特性,能针对性地分析和解决实际开发中的痛点。
当你的Go程序出现panic、死锁、数据竞争、内存泄漏、依赖冲突或性能问题时,你可以直接向它描述错误信息或粘贴相关代码片段。它会分析问题根因,提供修复建议,甚至能帮助你审查代码设计,优化goroutine使用、切片和映射操作、错误处理等。
它非常适合需要编写、维护或优化Go代码的开发者,无论是处理线上服务的稳定性问题,还是在新项目中构建健壮的后端服务、CLI工具或网络处理程序。
建议在提问时提供尽可能详细的上下文,如错误日志、相关代码段、Go版本和运行环境。对于复杂的并发或性能问题,分步骤描述现象并尝试其建议的调试方法(如使用-race标志)能获得更精准的帮助。
核心特点
与通用编程助手不同,它深度聚焦Go语言生态,能精准诊断goroutine泄漏、数据竞争、nil接口、slice/map的微妙行为、go.mod依赖冲突等Go特有难题,并提供符合Go最佳实践的专业解决方案。
注意事项
不适合处理Kubernetes Operator开发或特定Web框架(如Gin、Echo)的内部原理问题。
常见问题
如何排查Go服务的内存泄漏?
可以描述内存增长现象、相关goroutine和定时器使用情况,或提供pprof输出,它会帮你分析潜在泄漏点,如未关闭的channel、未停止的timer或未释放的连接。
遇到`concurrent map writes`错误怎么办?
提供涉及map并发访问的代码片段,它会指导你使用sync.Mutex、sync.RWMutex或sync.Map来确保并发安全。