grpc-patterns
Protobuf schema design, streaming patterns, interceptor chains, deadline propagation, and error handling for gRPC services.
Skill by vibeeval
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/vibeeval-grpc-patterns
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/grpc-patterns
What's inside
- Skill name
grpc-patterns- Description
- Protobuf schema design, streaming patterns, interceptor chains, deadline propagation, and error handling for gRPC services.
- License
- MIT
- Instructions
- 293 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# gRPC Patterns
High-performance RPC patterns with Protocol Buffers and gRPC.
## Protobuf Schema Design
```protobuf
syntax = "proto3";
package order.v1;
option go_package = "github.com/myapp/gen/order/v1;orderv1";
import "google/protobuf/timestamp.proto";
import "google/protobuf/field_mask.proto";
// Service definition
service OrderService {
// Unary RPC
rpc GetOrder(GetOrderRequest) returns (GetOrderResponse);
rpc CreateOrder(CreateOrderRequest) returns (CreateOrderResponse);
// Server streaming: server sends multiple responses
rpc WatchOrderStatus(WatchOrderStatusRequest) returns (stream OrderStatusEvent);
// Client streaming: client sends multiple requests
rpc BatchCreateOrders(stream CreateOrderRequest) returns (BatchCreateOrdersResponse);
// Bidirectional streaming
rpc OrderChat(stream ChatMessage) returns (stream ChatMessage);
}
// Request/Response naming: <Method>Request, <Method>Response
message GetOrderRequest {
string order_id = 1;
// FieldMask for partial responses (bandwidth optimization)
google.protobuf.FieldMask field_mask = 2;
}
message GetOrderResponse {
Order order = 1;
}
// Domain message
message Order {
string id = 1;
string customer_id = 2;
OrderStatus status = 3;
repeated OrderItem items = 4;
Money total = 5;
google.protobuf.Timestamp created_at = 6;
google.protobuf.Timestamp updated_at = 7;
}
// Enums: always have UNSPECIFIED as 0
enum OrderStatus {
ORDER_STATUS_UNSPECIFIED = 0;
ORDER_STATUS_PENDING = 1;
ORDER_STATUS_CONFIRMED = 2;
ORDER_STATUS_SHIPPED = 3;
ORDER_STATUS_DELIVERED = 4;
ORDER_STATUS_CANCELLED = 5;
}
// Reusable value type
message Money {
string currency_code = 1; // ISO 4217
int64 units = 2; // Whole units (dollars)
int32 nanos = 3; // Nano units (cents * 10^7)
}
// Pagination
message ListOrdersRequest {
int32 page_size = 1; // Max items per page
string page_token = 2; // Opaque cursor from previous response
string filter = 3; // e.g., "status=SHIPPED"
string order_by = 4; // e.g., "created_at desc"
}
message ListOrdersResponse {
repeated Order orders = 1;
string next_page_token = 2; // Empty = no more pages
int32 total_size = 3;
}
```
## Server Implementation (Go)
```go
package server
import (
"context"
"time"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
pb "github.com/myapp/gen/order/v1"
)
type OrderServer struct {
pb.UnimplementedOrderServiceServer
store OrderStore
}
func (s *OrderServer) GetOrder(ctx context.Context, req *pb.GetOrderRequest) (*pb.GetOrderResponse, error) {
// Validate input
if req.OrderId == "" {
return nil, status.Error(codes.InvalidArgument, "order_id is required")
}
// Check deadline propagation
if deadline, ok := ctx.Deadline(); ok {
if time.Until(deadline) < 100*time.Millisecond {
return nil, status.Error(codes.DeadlineExceeded, "insufficient time remaining")
}
}From vibeeval/vibecosystem, MIT.
More from vibeeval/vibecosystem
- 0.565score
codex-orchestration
vibeeval
OpenAI Codex CLI + Claude Code (Hizir) birlikte kullanim rehberi.
SkillBFreshness: B★ 540Claude Code +9 - 0.562score
plan-agent
vibeeval
Planning agent that creates implementation plans and handoffs from conversation context
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
help
vibeeval
Interactive workspace discovery - learn what tools, workflows, agents, and hooks are available
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
explore
vibeeval
Meta-skill for internal codebase exploration at varying depths (quick/deep/architecture)
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
cli-reference
vibeeval
Claude Code CLI commands, flags, headless mode, and automation patterns
SkillBFreshness: B★ 540Claude Code +9 - 0.524score
tdd-workflow
vibeeval
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
seo-patterns
vibeeval
Meta tag patterns, structured data (JSON-LD), Core Web Vitals optimization, and SSR/SSG strategies for search visibility.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
compliance-patterns
vibeeval
GDPR data handling, audit logging, data classification, retention policies, and consent management for regulatory compliance.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
feature-flag-patterns
vibeeval
Gradual rollout strategies, kill switches, A/B testing integration, flag lifecycle management, and technical debt prevention.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
aws-patterns
vibeeval
Lambda best practices, S3 event patterns, SQS/SNS fanout, and DynamoDB access patterns for serverless AWS architectures.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
experiment-engine
vibeeval
Otonom deney dongusu.
SkillCFreshness: C★ 540Claude Code +9 - 0.522score
kotlin-patterns
vibeeval
Coroutine patterns, Flow operators, Jetpack Compose state management, Ktor routing, and Kotlin Multiplatform shared code.
SkillCFreshness: C★ 540Claude Code +9
Signals
- Stars
- 540
- Forks
- 44
- Open issues
- 5
- Last commit (this folder)
- Jun 10, 2026 (4 months ago)
- Last release
- Apr 12, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/vibeeval/vibecosystem
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from vibeeval
- 0.565score
codex-orchestration
vibeeval
OpenAI Codex CLI + Claude Code (Hizir) birlikte kullanim rehberi.
SkillBFreshness: B★ 540Claude Code +9 - 0.562score
plan-agent
vibeeval
Planning agent that creates implementation plans and handoffs from conversation context
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
help
vibeeval
Interactive workspace discovery - learn what tools, workflows, agents, and hooks are available
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
cli-reference
vibeeval
Claude Code CLI commands, flags, headless mode, and automation patterns
SkillBFreshness: B★ 540Claude Code +9 - 0.559score
explore
vibeeval
Meta-skill for internal codebase exploration at varying depths (quick/deep/architecture)
SkillBFreshness: B★ 540Claude Code +9 - 0.524score
tdd-workflow
vibeeval
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillCFreshness: C★ 540Claude Code +9
Cite this page
grpc-patterns skill. Agent Mart. https://agentmart.dev/skills/vibeeval-grpc-patterns (last updated 2026-10-24)