go-grpc-client

Generate typed gRPC client factories for Go microservices with interceptors.

Updated Jan 17, 2026
One-click install
npx skills add https://github.com/saddam-eng-tech/ai-agent-skills --skill go-grpc-client
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: go-grpc-client
Source: https://github.com/saddam-eng-tech/ai-agent-skills/tree/main/go-grpc-client
Command: npx skills add https://github.com/saddam-eng-tech/ai-agent-skills --skill go-grpc-client

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill automates the creation of robust gRPC client factories for Go microservices, simplifying inter-service communication and ensuring consistent connection management.

Core Features & Use Cases

  • Typed Client Generation: Creates type-safe client wrappers for specific gRPC services.
  • Connection Pooling & Management: Implements efficient connection reuse and lifecycle management.
  • Interceptor Support: Integrates essential client-side interceptors for logging, tracing, and authentication.
  • Health Checking: Optionally includes a health check poller for service availability monitoring.
  • Use Case: When developing a new microservice that needs to call an existing user service, this skill can generate the client code, including all necessary configurations for secure and reliable communication.

Quick Start

Generate a gRPC client for the 'UserService' with proto package 'userpb' and use the 'AUTH_TOKEN' environment variable for authentication.

Frequently Asked Questions about go-grpc-client

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

FAQPage Schema
How do I generate a Go gRPC client factory for microservice communication?

To generate a Go gRPC client factory, you need to provide the target service name and proto package. The Skill outputs typed wrapper methods, connection management, and interceptors into the pkg/clients/ directory.

How does gRPC connection pooling and lifecycle management work in Go clients?

gRPC connection pooling in Go clients manages efficient connection reuse and lifecycle. This Skill automates that process by generating a factory that handles pooling, TLS toggling, and optional health-check polling for service availability.

How do I add client-side interceptors for OTel tracing and auth in a Go gRPC client?

Client-side interceptors for OTel tracing and auth are added during the gRPC client generation process. This Skill integrates interceptors for logging, tracing, and authentication header injection automatically into the generated factory code.

Can I use this to generate typed gRPC client wrappers for a specific proto package?

Yes, you can generate typed gRPC client wrappers for specific proto packages. By providing the proto package name, such as userpb, the Skill creates type-safe client wrappers and configuration files for calling internal Go microservices.

What is the best way to implement health checking for internal Go microservices over gRPC?

The best way to implement gRPC health checking is using an optional health-check poller. This Skill generates a poller alongside the client factory to continuously monitor service availability and manage connection states reliably.