golang-performance Skill (samber): Go Performance Tuning
Makes Claude optimise Go code the measured way: profile first, change one thing, then compare benchmarks.
- Installs
- 42.8K
- on skills.sh
- Stars
- 3.7K
- on GitHub
- Files
- 8
- besides SKILL.md
- Updated
- Nov 2026
- last repo commit
golang-performance makes Claude act as a Go performance engineer who never optimises without profiling. It follows a cycle: define a metric, write an atomic benchmark, measure a baseline, diagnose, make one change, then compare with benchstat. It maps each bottleneck, such as allocations, CPU, GC pauses, I/O or repeated work, to a pattern from its guides.
It has two review modes (architecture with up to 3 sub-agents, and a single hot path) and an optimise mode. SKILL.md lists benchstat as a dependency installed with go install, and saves baseline reports as /tmp/report-N.txt files.
Good for
- Go developers with a profiled bottleneck to fix
- Reviewers looking for quick performance wins in a pull request
- Backend teams tuning allocations, GC and caching
Install golang-performance
Claude Code
- 1
Copy this prompt.
Install the golang-performance skill in Claude Code. Run this command: /plugin marketplace add samber/cc /plugin install cc-skills-golang@samber Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
The README says these skills are built as atomic, cross-referencing units, and that installing only a subset gives a partial and potentially inconsistent view of the guidelines. It recommends installing all the general-purpose skills together, which the plugin does. Its manifest lists no hooks or MCP servers, and the repo holds 46 skills. Use the skills CLI line only if you want just this one. Pick one route, not both.
From the project README. Source.
What's in the skill
When it loads
Golang performance optimization patterns and methodology - if X bottleneck, then apply Y. Covers allocation reduction, CPU efficiency, memory layout, GC tuning, pooling, caching, and hot-path optimization. Use when profiling or benchmarks have identified a bottleneck and you need the right optimization pattern to fix it. Also use when performing performance code review to suggest improvements or benchmarks that could help identify quick performance gains. Not for measurement methodology (→ See `samber/cc-skills-golang@golang-benchmark` skill) or debugging workflow (→ See `samber/cc-skills-golang@golang-troubleshooting` skill).
Sections in SKILL.md
- Core Philosophy
- Rule Out External Bottlenecks First
- Iterative Optimization Methodology
- The cycle: Define Goals → Benchmark → Diagnose → Improve → Benchmark
- Decision Tree: Where Is Time Spent?
- Common Mistakes
- Deep Dives
- CI Regression Detection
- Cross-References
Key facts
- Installs on skills.sh
- 42,837 (Nov 2, 2026)
- GitHub stars
- 3,749 (Nov 2, 2026)
- License
- MIT
- Last commit
- Nov 1, 2026
- Skill version
- 1.3.2
- skills.sh checks
- Gen Agent Trust Hub pass, Socket pass, Snyk pass
What it includes
Define metric, baseline, diagnose, improve one thing, compare
Runs go test -bench with -benchmem and -count=6, then benchstat on two report files. Reports are saved as /tmp/report-N.txt as an audit trail.
Runs code ·
Optimize modeUp to 3 sub-agents: allocation, I/O and concurrency, complexity and caching
Scans a package or service for structural anti-patterns such as missing connection pools or unbounded goroutines.
Read ·
Review mode (architecture)Looks at one function or tight loop, sequentially
One sub-agent is enough.
Read ·
Review mode (hot path)Check with fgprof, goroutine profiles and tracing before touching Go code
If the time is a slow database or API call, optimising allocations will not help.
Runs code ·
Rule out external bottlenecksMaps pprof signals to memory, CPU, runtime, I/O, caching or algorithm fixes
For example high alloc_objects points to the memory guide.
Decision treeStatistical comparison of two benchmark reports, installed with go install ...@latest
SKILL.md lists golang.org/x/perf/cmd/benchstat@latest as a dependency.
Runs code ·
benchstatMemory, CPU, I/O and networking, runtime tuning, caching, observability
Six files in references/, plus assets/prometheus-alerts.yml for alerting rules.
Read ·
Deep-dive guidesDefault http.Client limits, logging in hot loops, unsafe without proof, no GOMEMLIMIT
A table of seven frequent mistakes and their fixes.
Common mistakes
From the official docs
Permissions
Medium risk
Claude can run benchmarks, profilers and curl, fetch web pages and write report files to /tmp. Read the commands it proposes, especially any that point at a live service.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can run curl and fetch web pages
curl, WebFetch and WebSearch are in its tool list. Check the URLs in any command, and avoid pointing profiling commands at production services. github.com
It installs benchstat at @latest
benchstat is installed with go install ...@latest. Pin a version if you need repeatable results. github.com
It writes report files outside your project
SKILL.md says to keep /tmp/report-*.txt files as an audit trail. Delete them when you are done. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | Review mode looks at a diff, but the skill's tool list includes Edit and Write. |
|---|---|
| Talks to | go install fetches benchstat at @latest. curl, WebFetch and WebSearch are in the header's tool list |
| Scopes |
|
Questions
How do I install golang-performance?
Use the install box above. The plugin route installs the whole Go skill set, and the skills CLI route installs only this skill. Pick one so you do not get every skill twice.
Will it optimise my code without measuring?
No. SKILL.md tells Claude to profile before optimising, apply one optimisation at a time and confirm each change with benchstat. It says intuition about bottlenecks is wrong about 80% of the time.
Does it need other skills?
It works on its own, but SKILL.md points to 7 other skills in the same repo: golang-benchmark, golang-concurrency, golang-data-structures, golang-database, golang-observability, golang-safety, golang-troubleshooting. The README says installing only a subset gives a partial and potentially inconsistent view, so install the set together.
Does it work in the Claude app, Codex or Cursor?
The SKILL.md header says it is designed for Claude Code, Codex or a similar harness, and the README says the set is built for Claude Code, Codex, Gemini, Copilot, Antigravity and Cursor, with an install section for each. The README does not describe a Claude app install.
Does it need an API key?
SKILL.md names no key. It needs the go tool on your PATH and benchstat (installed with go install). The skill folder holds SKILL.md, reference guides and an evals file, with no scripts.
Is it safe to use?
It bundles no scripts besides a Prometheus alert file. Its header lets Claude edit files, run go, benchstat, staticcheck, perf, fgprof and curl, and use WebFetch and WebSearch, and it writes report files under /tmp. Read the commands it proposes, especially any that hit a live service.
golang-performance vs golang-benchmark?
SKILL.md says this skill is for choosing the optimisation once a bottleneck is known. Measurement methodology belongs to golang-benchmark and debugging workflow to golang-troubleshooting.
Information
updated Nov 2, 2026
- Repository
- samber/cc-skills-golang
- Folder
skills/golang-performance
Sources
Docs, issue trackers and discussions this page is built from.
Show all 13Hide
- cc-skills-golang · github.com
- cc-skills-golang README · github.com
- plugin.json · github.com
- skills CLI commands · github.com
- README.md#-how-to-use · github.com
- golang-performance SKILL.md · github.com
- memory.md · github.com
- cpu.md · github.com
- io-networking.md · github.com
- runtime.md · github.com
- caching.md · github.com
- observability.md · github.com
- prometheus-alerts.yml · github.com