Loading...
Loading...
Found 5,029 Skills
Apply Go style guide conventions to code
This skill should be used when the user asks to "write Go unit tests", "add tests to a Go package", "use the testing package", "write table-driven tests in Go", or needs guidance on Go test patterns, subtests, benchmarks, and test helpers.
Use when writing ANY Mongoose query (.find, .findOne, .findById, .aggregate, .populate), adding database operations to services or controllers, wiring data between services, building endpoints that read or write to MongoDB, or reviewing code that chains service calls. TRIGGER especially when about to write a new findById or pass an ID where a document could be passed instead.
Go programming language. Covers goroutines, channels, interfaces, error handling, and modules. Use for building concurrent, high-performance backend services. USE WHEN: user mentions "go", "golang", "goroutines", "channels", asks about "concurrency", "select statement", "interfaces", "error handling", "go modules" DO NOT USE FOR: Gin/Fiber/Echo frameworks - use framework-specific skills DO NOT USE FOR: GORM - use ORM-specific skill DO NOT USE FOR: gRPC - use API design skills
Use when executing or continuing a spec plan interactively. Triggers on: "spec go", "execute plan", "run plan", "continue plan", "work on plan", "start plan", "run the spec". Runs tasks with configurable breakpoints for review. Pass --bg for fully autonomous background execution.
Google Calendar integration. Manage communication data, records, and workflows. Use when the user wants to interact with Google Calendar data.
Provides a comprehensive guide for writing production-ready Golang tests. Covers table-driven tests, test suites with testify, mocks, unit tests, integration tests, benchmarks, code coverage, parallel tests, fuzzing, fixtures, goroutine leak detection with goleak, snapshot testing, memory leaks, CI with GitHub Actions, and idiomatic naming conventions. Use this whenever writing tests, asking about testing patterns or setting up CI for Go projects. Essential for ANY test-related conversation in Go.
Go error handling patterns: wrapping with context, sentinel errors, custom error types, errors.Is/As chains, and HTTP error mapping. Use when implementing error returns, defining package-level errors, creating custom error types, wrapping errors with fmt.Errorf, or checking errors with errors.Is/As. Use for "error handling", "fmt.Errorf", "errors.Is", "errors.As", "sentinel error", "custom error", or "%w". Do NOT use for general Go development, debugging runtime panics, or logging strategy.
Go-specific code review with 6-phase methodology: Context, Automated Checks, Quality Analysis, Specific Analysis, Line-by-Line, Documentation. Use when reviewing Go code, PRs, or auditing Go codebases for quality and best practices. Use for "review Go", "Go PR", "check Go code", "Go quality", "review .go". Do NOT use for writing new Go code, debugging Go bugs, or refactoring -- use golang-general-engineer, systematic-debugging, or systematic-refactoring for those tasks.
Go testing patterns and methodology: table-driven tests, t.Run subtests, t.Helper helpers, mocking interfaces, benchmarks, race detection, and synctest. Use when writing new Go tests, modifying existing tests, adding coverage, fixing failing tests, writing benchmarks, or creating mocks. Triggered by "go test", "_test.go", "table-driven", "t.Run", "benchmark", "mock", "race detection", "test coverage". Do NOT use for non-Go testing (use test-driven-development instead), debugging test failures (use systematic-debugging), or general Go development without test focus (use golang-general-engineer directly).
Google Docs integration. Manage Documents. Use when the user wants to interact with Google Docs data.
Clean up local branches whose remote tracking branch is gone. Use when the user says "clean up branches", "delete gone branches", "prune local branches", "clean gone", or wants to remove stale local branches that no longer exist on the remote. Also handles removing associated worktrees for branches that have them.