بنقرة واحدة
go-best-practices
Go 代码审查规则。当审查 .go 文件时套用。检查错误处理、goroutine 生命周期、接口设计、命名惯例、defer 使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Go 代码审查规则。当审查 .go 文件时套用。检查错误处理、goroutine 生命周期、接口设计、命名惯例、defer 使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Angular 代码审查规则。当审查 Angular 项目的 .ts 文件(组件/服务/Directive)时套用。检查 DI、RxJS 订阅管理、Signals、Change Detection、模板安全([innerHTML] XSS)。
跨语言通用代码质量规则。当没有匹配的语言特定 skill 时作为 fallback 使用。适用于函数复杂度、命名规范、死代码、魔法数字。
Java 代码审查规则。当审查 .java 文件时套用。检查异常处理、资源管理(try-with-resources)、Optional 使用、Stream API、安全漏洞。
Python 代码审查规则。当审查 .py 文件时套用。检查类型注解、异常处理、命名规范、函数复杂度、安全漏洞(eval/exec/pickle/yaml.load/os.system)。
React/Next.js 代码审查规则。当审查 JSX/TSX 文件(React 项目)时套用。检查组件设计、Hooks 使用、状态管理、性能、安全(XSS)。
Ruby 代码审查规则。当审查 .rb 文件时套用。检查安全性(eval/命令注入/反序列化)、异常处理、元编程规范、代码块使用惯例。
| name | go_best_practices |
| description | Go 代码审查规则。当审查 .go 文件时套用。检查错误处理、goroutine 生命周期、接口设计、命名惯例、defer 使用。 |
| category | style |
| reviewer_type | style |
| languages | ["go"] |
.go 文件(非测试文件)*_test.go)→ 测试中的 _ = err 有时是故意忽略不重要的错误;表驱动测试的长函数是惯用法*.pb.go, *_string.go)→ 不审查panic 和 os.Exit 在 CLI 入口是合理的exec.Command() with user-controlled command name → errorexec.Command("bash", "-c", userInput) → errorfmt.Sprintf("SELECT ... WHERE name = '%s'", userInput) → error? placeholders, not string formatting?template.HTML(userInput) marks untrusted content as safe → errortext/template for HTML output → error_ = err — always check and handlefmt.Errorf("...: %w", err) to wrap errors, preserving the chainpanic in library code; use it only for truly unrecoverable statescontext.Context for cancellation propagation<-ctx.Done() or defer close(ch) pathdefer wg.Done() immediately after wg.Add(1)HTTPServer, UserID)user.UserName → user.NameOwner() not GetOwner()make([]T, 0, n)defer in a loop delays execution until function exit — wrap in closureTrue Positive: Violates Go conventions and causes bugs, leaks, or maintainability issues. Confidence > 0.7.
False Positive:
panic in init() for must-parse templates/configs_ = err in test code or where the error is truly irrelevant (e.g., defer f.Close())*.pb.go, *_string.go, *_mock.go)