grpc-serviceslisted
Install: claude install-skill Amey-Thakur/AI-SKILLS
# gRPC services
gRPC uses Protocol Buffers over HTTP/2 for fast, strongly-typed
service-to-service communication with generated clients in every
language. It shines for internal microservice APIs where performance
and contract strictness matter; the design work is the proto contract,
its evolution, and using the streaming and deadline features correctly.
## Method
1. **Design the proto as the contract, carefully.** The
`.proto` file defines the service, methods, and message
types, and generates clients and servers in every
language (see openapi-contracts' spec-first ethic, gRPC
edition): so the proto is the API. Design messages for
the domain, group related RPCs into services, and treat
the proto with the same review rigor as any public
contract.
2. **Evolve protos with the compatibility rules.** Field
numbers are the wire identity and are permanent: never
reuse or change a field's number; add new fields with new
numbers (old clients ignore them), reserve removed field
numbers, and never change a field's type (see schema-
evolution, api-change-management: Protobuf's rules are
strict and mechanical). Following them gives backward and
forward compatibility; breaking them corrupts data
silently.
3. **Choose the right RPC pattern.** Unary (request-
response, the default), server streaming (one request,
stream of responses: feeds, large result sets), client
streaming (stream up, one response: uploads, batched
ingestion),