Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Write idiomatic Go code with AI-guided error handling, TDD cycles, concurrency patterns, and gRPC APIs following Google AIP design, plus enforce Japanese-language gate logic on Bash and GitHub MCP tool calls.
npx claudepluginhub gonzaloserrano/gopilot --plugin gopilotDetect and fix Go error handling antipatterns across a codebase. Use when auditing error handling, fixing double-handled errors, removing log-and-return patterns, cleaning up log-and-wrap helpers, or when the user asks to analyze error handling hygiene, find error handling violations, or ensure errors are handled exactly once. Covers detection patterns, classification of true vs false positives, fix strategies for interior vs boundary code, and verification steps.
TDD with baby steps for Go. Use when writing tests, doing TDD, practicing red-green-refactor, or when test cycles feel too large and risky. Also use when the user asks about incremental test development, test-first workflow, or wants help breaking a feature into small testable steps. Covers table-driven tests, testify, t.Run subtests, t.Helper, transformation priority premise, and incremental test progression.
Go programming language skill for writing idiomatic Go code, code review, error handling, testing, concurrency, security, and program design. Use when writing, reviewing, debugging, or asking about Go code — even if the user doesn't explicitly mention 'Go best practices'. Also use when: reviewing Go PRs, debugging Go tests, fixing Go errors, designing Go APIs, implementing security-sensitive code, handling user input, authentication, sessions, cryptography, building resource-oriented gRPC APIs with Google AIP standards, configuring golangci-lint, setting up structured logging with slog, or any question about Go idioms and patterns. Covers table-driven tests, error wrapping, goroutine patterns, interface design, generics, iterators, stdlib patterns up to Go 1.26, OWASP security practices, and Google AIP (API Improvement Proposals) with einride/aip-go for pagination, filtering, ordering, field masks, and resource names.
Executes bash commands
Hook triggers when Bash tool is used
Modifies files
Hook triggers on file write and edit operations
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Go development following Google Go style guide with Go 1.25+ features and best practices
AI Agent Skills for production-ready Go projects
20 modular skills for idiomatic Go — each under 225 lines, backed by 48 reference files, 8 automation scripts (all with --json, --limit, --force), and 4 asset templates. Covers error handling, naming, testing, concurrency, interfaces, generics, documentation, logging, performance, and more. Activates automatically with progressive disclosure and conditional cross-references.
Go-specific development tools with idiomatic best practices
Enhances code agents with Go best practices covering performance, modern syntax, generics, patterns, testing, error handling, and concurrency.
Enhances Claude Code with modern Go guidelines up to go 1.26 version.
A Claude Code plugin with production-tested Go patterns covering idiomatic code style, error handling, testing, concurrency, security, generics, iterators, and stdlib patterns up to Go 1.26.
# 1. Add the plugin marketplace
/plugin marketplace add git@github.com:gonzaloserrano/gopilot.git
# 2. Install the plugin
/plugin install gopilot
# 3. Enable auto-update (recommended)
# /plugin → Marketplaces tab → gopilot → Enable auto-update
# 4. Use the skill
# Tell Claude: "use the gopilot skill and implement XYZ"
# Or once skill invocation is fixed: /gopilot
| Topic | Patterns |
|---|---|
| Design | Simplicity, pure functions, zero values, guard clauses, small interfaces |
| Code Style | gofmt, golangci-lint, naming conventions, package design |
| Error Handling | Wrapping, sentinel errors, errors.Is/As, errors.Join |
| Generics | Type parameters, constraints, comparable, cmp.Ordered |
| Testing | Table-driven tests, testify, t.Parallel(), t.Cleanup(), benchmarks |
| Concurrency | Channels, channel axioms, mutexes, errgroup, sync.Once, WaitGroup.Go, context cancellation |
| Iterators | iter.Seq, slices.Collect, maps.Keys, range over func, custom iterators |
| Interfaces | Consumer-side definition, compile-time checks, function types |
| AIP | Resource-oriented gRPC APIs with einride/aip-go: pagination, filtering, ordering, field masks, resource names |
| Patterns | Options pattern, cmp.Or, HTTP best practices, slog |
| Security | Input validation, SQL injection, auth, sessions, TLS, CSRF, crypto |
| Linting | golangci-lint configuration, recommended linters, auto-fix |
| TDD Baby Steps | Red-green-refactor, table-driven test progression, t.Run, t.Helper |
Covers features up to Go 1.26, including:
errors.AsType[T](), new(expr), t.ArtifactDir(), go fix, goroutine leak profiletesting/synctest, wg.Go(), http.CrossOriginProtectiont.Context(), t.Chdir(), os.OpenRoot(), runtime.AddCleanup, generic type aliases, b.Loop()iter.Seq), slices.Collect, maps.Keyscmp.Or, range over int, loop variable fixclear(), slices/maps packages# Update to latest version
/plugin update gopilot
# Check current version
/plugin list
# Uninstall
/plugin uninstall gopilot
# Test locally during development
claude --plugin-dir ./
git clone git@github.com:gonzaloserrano/gopilot.git
cd gopilot
claude --plugin-dir .
# Test the skill
# Tell Claude: "use the gopilot skill"
Contributions welcome! The skill is defined in skills/gopilot/SKILL.md with detailed security topics in skills/gopilot/reference/.
skills/gopilot/SKILL.mdclaude --plugin-dir .