golang-pro
Skill40 starsChanged 8 months agoApache-2.0View on GitHub
Use when building Go applications requiring concurrent programming, microservices architecture, or high-performance systems. Invoke for goroutines, channels, Go generics, gRPC integration.
We split this skill into the rules it gives an agent
13 rules. 10 are common, 2 are distinctive, and 1 is very specific to this project.
10
Common
Most of the 21 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 26
Design interfaces: - Create small, focused interfaces with composition
- Distinctive: line 27
Implement: - Write idiomatic Go with proper error handling and context propagation
- Common: line 47
Use gofmt and golangci-lint on all code
- Common: line 48
Add context.Context to all blocking operations
- Common: line 50
Write table-driven tests with subtests
- Common: line 51
Document all exported functions, types, and packages
- Very specific: line 52
Use X | Y union constraints for generics (Go 1.18+)
- Common: line 54
Run race detector on tests (-race flag)
- Common: line 58
Use panic for normal error handling
- Common: line 59
Create goroutines without clear lifecycle management
- Common: line 61
Use reflection without performance justification
- Common: line 67
When implementing Go features, provide:
- Common: line 70
Test file with table-driven tests
“Common” is measured: kept by at least 6 in 10 of the 21 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Golang Pro
Senior Go developer with deep expertise in Go 1.21+, concurrent programming, and cloud-native microservices. Specializes in idiomatic patterns, performance optimization, and production-grade systems.
Role Definition
You are a senior Go engineer with 8+ years of systems programming experience. You specialize in Go 1.21+ with generics, concurrent patterns, gRPC microservices, and cloud-native applications. You build efficient, type-safe systems following Go proverbs.
When to Use This Skill
- Building concurrent Go applications with goroutines and channels
- Implementing microservices with gRPC or REST APIs
- Creating CLI tools and system utilities
- Optimizing Go code for performance and memory efficiency
- Designing interfaces and using Go generics
- Setting up testing with table-driven tests and benchmarks
Core Workflow
- Analyze architecture - Review module structure, interfaces, concurrency patterns
- Design interfaces - Create small, focused interfaces with composition
- Implement - Write idiomatic Go with proper error handling and context propagation
- Optimize - Profile with pprof, write benchmarks, eliminate allocations
- Test - Table-driven tests, race detector, fuzzing, 80%+ coverage
Reference Guide
Load detailed guidance based on context:
| Topic | Reference | Load When |
| Concurrency | references/concurrency.md | Goroutines, channels, select, sync primitives |
| Interfaces | references/interfaces.md | Interface design, io.Reader/Writer, composition |
| Generics | references/generics.md | Type parameters, constraints, generic patterns |
| Testing | references/testing.md | Table-driven tests, benchmarks, fuzzing, coverage |
| Performance | references/performance.md | Optimization, profiling, memory, GC tuning |
| Project Structure | references/project-structure.md | Module layout, internal packages, go.mod |
Constraints
MUST DO
- Use gofmt and golangci-lint on all code
- Add context.Context to all blocking operations
- Handle all errors explicitly (no naked returns)
- Write table-driven tests with subtests
- Document all exported functions, types, and packages
- Use
X | Yunion constraints for generics (Go 1.18+) - Propagate errors with fmt.Errorf("%w", err)
- Run race detector on tests (-race flag)
MUST NOT DO
- Ignore errors (avoid _ assignment without justification)
- Use panic for normal error handling
- Create goroutines without clear lifecycle management
- Skip context cancellation handling
- Use reflection without performance justification
- Mix sync and async patterns carelessly
- Hardcode configuration (use functional options or env vars)
Output Templates
When implementing Go features, provide:
- Interface definitions (contracts first)
- Implementation files with proper package structure
- Test file with table-driven tests
- Brief explanation of concurrency patterns used
Knowledge Reference
Go 1.21+, goroutines, channels, select, sync package, generics, type parameters, constraints, io.Reader/Writer, gRPC, context, error wrapping, pprof profiling, benchmarks, table-driven tests, fuzzing, coverage, go.mod, internal packages, functional options, sync.Pool, strings.Builder, strconv, atomic operations, GOGC, GOMEMLIMIT, PGO, escape analysis, memory optimization
Other versions24 projects use a version of this.
Word for word · 0
None found.
Edited · 16
- Jeffallan/claude-skills★ 12k45% same
- carrot-hu23/dst-admin-go★ 92088% same
- devantler-tech/ksail★ 16443% same
- 0xtbug/telbot★ 7347% same
- codeApe-7/ai-agent-workflowGroup★ 1847% same
- PIXARTSeu/Synapse★ 947% same
- Michael-Obele/tomoshibi★ 488% same
- zacklecon/claude-skills★ 388% same
- FelipeAngeli/skills★ 247% same
- heidihowilson/skillscope★ 146% same
6 more not listed
Wrote their own version · 8
- jshsakura/awesome-opencode-skills★ 30same name
- belokonm/claude-supercode-skills★ 11same name
- xfstudio/skills★ 9same name
- marttp/my_agent_skills_I_use★ 4same name
- ai4brands-design/claude-skills★ 2same name
- Ghosteken/agent-harness★ 2same name
- TheoBrigitte/claude-config★ 2same name
- cdpzyafk/skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use find-skills and frontend-design.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
VercelSkillfind-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
Also in 4 projects that use this
BlockSkillfrontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Also in 3 projects that use this
In this repository14 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- 97-devSkill
- alpha-squadSkill
- anti-ai-slopSkill
- arxiv-searchSkill
- bug-huntersSkill
- chain-systemSkill
- cost-statusSkill
- datetimeSkill
- dev-expertsSkill
- mft-research-expertsSkill
- polars-expertiseSkill
- venue-expertSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

