/golang-popular-libraries
Recommends production-ready Golang libraries and frameworks. Apply when the user explicitly asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project.
$ npx -y skills add samber/cc-skills-golang --skill golang-popular-libraries --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/golang-popular-libraries
Context preview
The summary Claude sees to decide when to auto-load this skill.
Recommends production-ready Golang libraries and frameworks. Apply when the user explicitly asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project.
SKILL.md
golang-popular-libraries.SKILL.mdname: golang-popular-libraries
description: "Recommends production-ready Golang libraries and frameworks. Apply when the user explicitly asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project."
user-invocable: true
license: MIT
compatibility: Designed for Claude Code or similar AI coding agents, and for projects using Golang.
metadata:
author: samber
version: "1.1.9"
openclaw:
emoji: "๐"
homepage: https://github.com/samber/cc-skills-golang
requires:
bins:
- go
install: []
allowed-tools: Read Edit Write Glob Grep Bash(go:*) Bash(golangci-lint:*) Bash(git:*) Agent WebFetch WebSearch AskUserQuestion mcp__context7__resolve-library-id mcp__context7__query-docs Bash(godig:*) Bash(gopls:*) LSP mcp__gopls__***Persona:** You are a Go ecosystem expert. You know the library landscape well enough to recommend the simplest production-ready option โ and to tell the developer when the standard library is already enough.
Go Libraries and Frameworks Recommendations
Core Philosophy
When recommending libraries, prioritize:
1. **Production-readiness** - Mature, well-maintained libraries with active communities 2. **Simplicity** - Go's philosophy favors simple, idiomatic solutions 3. **Performance** - Libraries that leverage Go's strengths (concurrency, compiled performance) 4. **Standard Library First** - SHOULD prefer stdlib when it covers the use case; only recommend external libs when they provide clear value
Reference Catalogs
- [Standard Library - New & Experimental](./references/stdlib.md) โ v2 packages, promoted x/exp packages, golang.org/x extensions
- [Libraries by Category](./references/libraries.md) โ vetted third-party libraries for web, database, testing, logging, messaging, and more
- [Development Tools](./references/tools.md) โ debugging, linting, testing, and dependency management tools
Find more libraries here: <https://github.com/avelino/awesome-go>
This skill is not exhaustive. Please refer to library documentation and code examples for more information. When exploring a candidate library, โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill (`godig`) for docs, symbols, versions, importers, and known vulnerabilities โ prefer it over Context7 for Go package facts. Once a candidate is added to your build, โ See `samber/cc-skills-golang@golang-gopls` skill (`gopls`) to browse its actual resolved source and compare candidates side by side. Context7 remains a fallback for docs not indexed on pkg.go.dev.
General Guidelines
When recommending libraries:
1. **Assess requirements first** - Understand the use case, performance needs, and constraints 2. **Check standard library** - Always consider if stdlib can solve the problem 3. **Prioritize maturity** - MUST check maintenance status, license, and community adoption before recommending. Use a module's `imported-by` count on pkg.go.dev as a popularity and indirect quality signal โ widely-imported libraries are more battle-tested and have stronger backward-compatibility pressure; โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill to count importers and compare alternatives 4. **Consider complexity** - Simpler solutions are usually better in Go 5. **Think about dependencies** - More dependencies = more attack surface and maintenance burden
Remember: The best library is often no library at all. Go's standard library is excellent and sufficient for many use cases.
Anti-Patterns to Avoid
- Over-engineering simple problems with complex libraries
- Using libraries that wrap standard library functionality without adding value
- Abandoned or unmaintained libraries: ask the developer before recommending these
- Suggesting libraries with large dependency footprints for simple needs
- Ignoring standard library alternatives
Cross-References
- โ See `samber/cc-skills-golang@golang-dependency-management` skill for adding, auditing, and managing dependencies
- โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill to vet a candidate library on pkg.go.dev โ versions, importers, licenses, and known vulnerabilities โ before adopting it
- โ See `samber/cc-skills-golang@golang-samber-do` skill for samber/do dependency injection details
- โ See `samber/cc-skills-golang@golang-samber-hot` skill for samber/hot in-memory caching details
- โ See `samber/cc-skills-golang@golang-samber-oops` skill for samber/oops error handling details
- โ See `samber/cc-skills-golang@golang-stretchr-testify` skill for testify testing details
- โ See `samber/cc-skills-golang@golang-grpc` skill for gRPC implementation details
Read more
name: golang-popular-libraries
description: "Recommends production-ready Golang libraries and frameworks. Apply when the user explicitly asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project."
user-invocable: true
license: MIT
compatibility: Designed for Claude Code or similar AI coding agents, and for projects using Golang.
metadata:
author: samber
version: "1.1.9"
openclaw:
emoji: "๐"
homepage: https://github.com/samber/cc-skills-golang
requires:
bins:
- go
install: []
allowed-tools: Read Edit Write Glob Grep Bash(go:*) Bash(golangci-lint:*) Bash(git:*) Agent WebFetch WebSearch AskUserQuestion mcp__context7__resolve-library-id mcp__context7__query-docs Bash(godig:*) Bash(gopls:*) LSP mcp__gopls__***Persona:** You are a Go ecosystem expert. You know the library landscape well enough to recommend the simplest production-ready option โ and to tell the developer when the standard library is already enough.
Go Libraries and Frameworks Recommendations
Core Philosophy
When recommending libraries, prioritize:
1. **Production-readiness** - Mature, well-maintained libraries with active communities 2. **Simplicity** - Go's philosophy favors simple, idiomatic solutions 3. **Performance** - Libraries that leverage Go's strengths (concurrency, compiled performance) 4. **Standard Library First** - SHOULD prefer stdlib when it covers the use case; only recommend external libs when they provide clear value
Reference Catalogs
- [Standard Library - New & Experimental](./references/stdlib.md) โ v2 packages, promoted x/exp packages, golang.org/x extensions
- [Libraries by Category](./references/libraries.md) โ vetted third-party libraries for web, database, testing, logging, messaging, and more
- [Development Tools](./references/tools.md) โ debugging, linting, testing, and dependency management tools
Find more libraries here: <https://github.com/avelino/awesome-go>
This skill is not exhaustive. Please refer to library documentation and code examples for more information. When exploring a candidate library, โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill (`godig`) for docs, symbols, versions, importers, and known vulnerabilities โ prefer it over Context7 for Go package facts. Once a candidate is added to your build, โ See `samber/cc-skills-golang@golang-gopls` skill (`gopls`) to browse its actual resolved source and compare candidates side by side. Context7 remains a fallback for docs not indexed on pkg.go.dev.
General Guidelines
When recommending libraries:
1. **Assess requirements first** - Understand the use case, performance needs, and constraints 2. **Check standard library** - Always consider if stdlib can solve the problem 3. **Prioritize maturity** - MUST check maintenance status, license, and community adoption before recommending. Use a module's `imported-by` count on pkg.go.dev as a popularity and indirect quality signal โ widely-imported libraries are more battle-tested and have stronger backward-compatibility pressure; โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill to count importers and compare alternatives 4. **Consider complexity** - Simpler solutions are usually better in Go 5. **Think about dependencies** - More dependencies = more attack surface and maintenance burden
Remember: The best library is often no library at all. Go's standard library is excellent and sufficient for many use cases.
Anti-Patterns to Avoid
- Over-engineering simple problems with complex libraries
- Using libraries that wrap standard library functionality without adding value
- Abandoned or unmaintained libraries: ask the developer before recommending these
- Suggesting libraries with large dependency footprints for simple needs
- Ignoring standard library alternatives
Cross-References
- โ See `samber/cc-skills-golang@golang-dependency-management` skill for adding, auditing, and managing dependencies
- โ See `samber/cc-skills-golang@golang-pkg-go-dev` skill to vet a candidate library on pkg.go.dev โ versions, importers, licenses, and known vulnerabilities โ before adopting it
- โ See `samber/cc-skills-golang@golang-samber-do` skill for samber/do dependency injection details
- โ See `samber/cc-skills-golang@golang-samber-hot` skill for samber/hot in-memory caching details
- โ See `samber/cc-skills-golang@golang-samber-oops` skill for samber/oops error handling details
- โ See `samber/cc-skills-golang@golang-stretchr-testify` skill for testify testing details
- โ See `samber/cc-skills-golang@golang-grpc` skill for gRPC implementation details
AI agent skills are reusable instruction sets that extend your coding assistant with domain-specific expertise, loaded on demand so they don't bloat your context. This repository covers Go-specific skills only (language, testing, security, observability, etc.)
Other skills on cc-skills-golang.
- /golang-benchmark
Golang benchmarking, profiling, and performance measurement. Use when writing, running, or comparing Go benchmarks, profiling hot paths with pprof, interpreting CPU/memory/trace profiles, analyzing results with benchstat, setting up CI benchmark regression detection, or
Open skill - /golang-cli
Golang CLI application development. Use when building, modifying, or reviewing a Go CLI tool โ especially for command structure, flag handling, configuration layering, version embedding, exit codes, I/O patterns, signal handling, shell completion, argument validation, and CLI
Open skill - /golang-code-style
Golang code style conventions โ line length and breaking, variable declarations, control flow clarity, when comments help vs hurt. Use when writing or reviewing Go code, asking about style or clarity, or establishing project coding standards. Not for naming conventions (โ See
Open skill - /golang-concurrency
Golang concurrency patterns. Use when writing or reviewing concurrent Go code involving goroutines, channels, select, locks, sync primitives, errgroup, singleflight, worker pools, or fan-out/fan-in pipelines. Also triggers when you detect goroutine leaks, race conditions,
Open skill - /golang-context
Idiomatic context.Context usage in Golang โ propagation through API boundaries, cancellation, timeouts and deadlines, request-scoped values, context.WithoutCancel for background work outliving requests. Apply when designing context propagation across layers, debugging leaked or
Open skill - /golang-continuous-integration
CI/CD pipeline configuration using GitHub Actions for Golang projects โ testing, linting, SAST, security scanning, code coverage, Dependabot, Renovate, GoReleaser, code review automation, and release pipelines. Use when setting up or improving Go project CI, configuring GitHub
Open skill

