> golang-logging
Standards for structured logging and observability in Golang. Use when adding structured logging or tracing to Go services. (triggers: go.mod, pkg/logger/**, logging, slog, structured logging, zap)
curl "https://skillshub.wtf/HoangNguyen0403/agent-skills-standard/golang-logging?format=md"Golang Logging Standards
Priority: P1 (STANDARD)
Principles
- Structured Logging: Use JSON or structured text. Readable by machines and humans.
- Leveled Logging: Debug, Info, Warn, Error.
- Contextual: Include correlation IDs (TraceID, RequestID) in logs.
- No
log.Fatal: Avoid terminating app inside libraries. Return error instead. Onlymainshould exit.
Libraries
log/slog(Recommended): Stdlib since Go 1.21. Fast, structured, zero-dep.- Zap (
uber-go/zap): High performance, good if pre-1.21 or extreme throughput needed. - Zerolog: Zero allocation, fast JSON logger.
Workflow: Set Up Structured Logging with slog
- Create a JSON handler at startup in
main() - Optionally wrap in middleware to inject request-scoped attributes
- Use
slog.With()to add correlation IDs per request - Pass logger via context or dependency injection
See slog setup and usage examples
References
Anti-Patterns
- No fmt.Println in production: Use slog or zap for structured, leveled logging.
- No log.Fatal in libraries: Return errors; only main() should call os.Exit.
- No unstructured log strings: Include correlation IDs and structured fields via slog.Attr.
> related_skills --same-repo
> common-store-changelog
Generate user-facing release notes for the Apple App Store and Google Play Store by collecting git history, triaging user-impacting changes, and drafting store-compliant changelogs. Enforces character limits (App Store ≤4000, Google Play ≤500), tone, and bullet format. Use when generating release notes, app store changelog, play store release, what's new, or version release notes for any mobile app. (triggers: generate changelog, app store notes, play store release, what's new, release notes, ve
> golang-tooling
Go developer toolchain — gopls LSP diagnostics, linting, formatting, and vet. Use when setting up Go tooling, running linters, or integrating gopls with Claude Code. (triggers: gopls, golangci-lint, golangci.yml, go vet, goimports, staticcheck, go tooling, go lint)
> common-ui-design
Design distinctive, production-grade frontend UI with bold aesthetic choices. Use when building web components, pages, interfaces, dashboards, or applications in any framework (React, Next.js, Angular, Vue, HTML/CSS). (triggers: build a page, create a component, design a dashboard, landing page, UI for, build a layout, make it look good, improve the design, build UI, create interface, design screen)
> common-owasp
OWASP Top 10 audit checklist for Web Applications (2021) and APIs (2023). Load during any security review, PR review, or codebase audit touching web, mobile backend, or API code. (triggers: security review, OWASP, broken access control, IDOR, BOLA, injection, broken auth, API review, authorization, access control)