Agent skill · software engineering · jeremylongshore

generating-grpc-services

Generate gRPC service definitions, stubs, and implementations from Protocol

Why this skill is useful

Adds executable scripts for generating gRPC service definitions and implementations, which are not commonly found in public documentation.

What it needs

Requires buf, grpc_tools_node_protoc_plugin, grpcio-tools, grpcurl, protoc installed locally. About 3k tokens when loaded. Last updated 2026-08-07. 2,604 stars on the source repository.

What this skill does

Generating gRPC Services Overview Generate gRPC service definitions, client/server stubs, and implementations from Protocol Buffer (protobuf) .proto files. Scaffold unary, server-streaming, client-streaming, and bidirectional-streaming RPC methods with proper error status codes, interceptors for auth/logging, and health check service registration. Prerequisites Protocol Buffers compiler (protoc) v3.21+ installed Language-specific gRPC plugin: grpctoolsnodeprotocplugin (Node.js), grpcio-tools (Python), or Go gRPC plugin buf CLI for proto linting and breaking change detection (recommended) gRPC testing tool: grpcurl, evans, or BloomRPC TLS certificates for production transport security (mTLS recommended for service-to-service) Instructions 1. Read existing .proto files using Glob and Read, or design new service definitions with message types, RPC methods, and streaming patterns per service requirements. 2. Define proto3 message types with appropriate field types, using google.protobuf.Timestamp for dates, google.protobuf.Struct for dynamic fields, and oneof for polymorphic messages. 3. Compile .proto files with protoc to generate language-specific stubs, server interfaces, and client libraries using the appropriate gRPC plugin. 4. Implement server-side RPC handlers for each method, returning proper gRPC status codes (OK, NOTFOUND, INVALIDARGUMENT, PERMISSIONDENIED) instead of generic errors. 5. Add server interceptors for authentication (extracting JWT from metadata), request logging with correlation IDs, and deadline propagation across service calls. 6. Implement health check service (grpc.health.v1.Health) and reflection service for runtime introspection by tools like grpcurl. 7. Configure TLS transport security, preferring mutual TLS (mTLS) for service-to-service communication with certificate rotation support. 8. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills jeremylongshore/generating-grpc-services

View the source on GitHub

Browse the @skills marketplace