golang-pro

Build production-grade Go applications with concurrency, microservices, and performance optimization.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/kamelmh/opencode-config --skill golang-pro-kamelmh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: golang-pro
Source: https://github.com/kamelmh/opencode-config/tree/main/skills/golang-pro
Command: npx skills add https://github.com/kamelmh/opencode-config --skill golang-pro-kamelmh

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you build production-grade Go software that stays correct under concurrency, scales into services, and remains easy to test and maintain.

Core Features & Use Cases

  • Concurrent Go design: Structure goroutines, channels, cancellation, and synchronization so work is parallel without leaking resources.
  • Microservices implementation: Build REST or gRPC services, CLI tools, and internal packages with idiomatic Go architecture.
  • Performance and reliability: Optimize hot paths with profiling and benchmarks, then validate behavior with table-driven tests, fuzzing, and race detection.
  • Use case: A backend team can use this Skill to turn a single-process prototype into a resilient Go service with clear interfaces, explicit error handling, and measurable performance.

Quick Start

Ask the AI to implement or review your Go feature with concurrent patterns, idiomatic interfaces, strict error handling, and production-ready tests.

Frequently Asked Questions about golang-pro

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent goroutine leaks when building concurrent Go services?

To prevent goroutine leaks in concurrent Go services, use context-aware cancellation and channels for synchronization. This ensures work runs in parallel without leaking resources during process execution.

What is the best way to structure a Go microservice with gRPC and REST?

The best way to structure a Go microservice is using idiomatic package design with explicit error handling and clear interfaces. This supports both gRPC and REST services while maintaining strict separation of concerns.

How do I optimize Go performance using pprof and benchmarks?

Optimize Go performance using pprof by profiling hot paths and validating optimizations with benchmarks. This approach identifies bottlenecks and measures improvements in resource-intensive code sections.

Can I use table-driven tests and race detection for concurrent Go programs?

Yes, you can validate concurrent Go programs using table-driven tests alongside race-safe testing and fuzzing. This combination ensures behavior correctness and detects data races during parallel execution.

Does this approach support building CLI tools with generics and linted code?

Yes, this approach supports building CLI tools using generics constraints and linted gofmt-compliant code. It applies idiomatic Go architecture to command-line interfaces just as it does for microservices.

Why do my Go microservices fail under high concurrency without explicit error handling?

Go microservices fail under high concurrency without explicit error handling because race conditions and unhandled states corrupt data. Implementing context-aware cancellation and race-safe testing resolves these reliability issues.