Token导航 LogoToken导航TokenDH.com
前端设计需要联网github未标认证来源可访问clear审计通过

grpc-developmentgRPC 开发

Agent Skill

grpc-development 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

6,265

周安装

251

GitHub Stars

87

下载量

2,028
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:grpc-development(gRPC 开发)
来源仓库:https://github.com/mindrally/skills
仓库路径:skills/grpc-development
安装命令:
npx skills add https://github.com/mindrally/skills --skill grpc-development
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/mindrally/skills --skill grpc-development

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合围绕仓库状态、代码变更或协作事项进行整理。
  • 可结合来源仓库和原始 README 核验具体用法。
  • 安装命令:npx skills add https://github.com/mindrally/skills --skill grpc-development
  • 安装前建议确认权限范围和维护状态。

SKILL.md

gRPC Development

You are an expert in gRPC and Protocol Buffers development. Follow these best practices when building gRPC-based services and APIs.

Core Principles

  • gRPC uses Protocol Buffers as both its Interface Definition Language (IDL) and message interchange format
  • Design services around the idea of defining methods that can be called remotely with their parameters and return types
  • Prioritize type safety, performance, and backward compatibility
  • Leave NO todos, placeholders, or missing pieces in the implementation

Protocol Buffer Best Practices

File Organization (1-1-1 Pattern)

  • Structure definitions with one top-level entity (message, enum, or extension) per.proto file
  • Correspond each.proto file to a single build rule
  • This promotes small, modular proto definitions
  • Benefits include simplified refactoring, improved build times, and smaller binary sizes

Message Design

  • Use structured messages for extensibility - Protocol Buffers supports adding fields without breaking existing clients
  • Be careful to use structs in places you may want to add fields later
  • Don't re-use messages across RPCs - APIs may change over time, avoid coupling separate RPC calls tightly together
  • Fields should always be independent of each other - don't have one field influence the semantic meaning of another

Field Guidelines

  • Use descriptive field names with underscore_separated_names
  • Reserve field numbers for deleted fields to prevent future conflicts
  • Use optional for fields that may not always be present
  • Consider using oneof when users need to choose between mutually exclusive options

Enum Best Practices

  • Ensure the first value is always 0
  • Use an "UNSPECIFIED" default value (e.g., STATUS_UNSPECIFIED = 0)
  • Use prefixes to avoid naming collisions (e.g., ORDER_STATUS_CREATED vs STATUS_PENDING)
  • Reserve enum values that are removed to prevent accidental reuse

Style Guidelines

  • Keep line length to 80 characters
  • Prefer double quotes for strings
  • Package names should be in lowercase
  • Use CamelCase (with initial capital) for message names
  • Use underscore_separated_names for field names
  • Use CamelCase for service and RPC method names

Service Design

RPC Patterns

  • Unary RPC: Client sends single request, server responds with single response
  • Server Streaming: Client sends request, server responds with stream of messages
  • Client Streaming: Client sends stream of messages, server responds with single response
  • Bidirectional Streaming: Both sides send streams of messages

API Design

  • Design clear, intuitive service interfaces
  • Group related methods in the same service
  • Use meaningful method names that describe the action
  • Document each RPC with comments describing behavior, parameters, and return values

Performance Optimization

Channel Management

  • Reuse channels when working with gRPC
  • Creating a gRPC channel is costly as it creates a new HTTP/2 connection
  • Implement connection pooling for high-throughput scenarios
  • Configure keepalive settings appropriately

Message Optimization

  • Keep messages reasonably sized - large messages impact performance
  • Consider streaming for large data transfers
  • Use compression for bandwidth-constrained environments
  • Avoid deeply nested message structures

Error Handling

Status Codes

  • Use appropriate gRPC status codes (OK, INVALID_ARGUMENT, NOT_FOUND, etc.)
  • Include meaningful error messages in status details
  • Use rich error details for complex error scenarios
  • Document expected error conditions in service definitions

Retry Logic

  • Implement retry with exponential backoff for transient failures
  • Use deadlines/timeouts for all RPC calls
  • Handle UNAVAILABLE and RESOURCE_EXHAUSTED with retries
  • Don't retry non-idempotent operations blindly

Security

Authentication

  • Use TLS for transport security in production
  • Implement per-RPC authentication using metadata/headers
  • Support multiple authentication mechanisms (JWT, OAuth2, mTLS)
  • Validate credentials on every request

Authorization

  • Implement method-level access control
  • Use interceptors for centralized authorization logic
  • Validate all input data regardless of authentication status
  • Follow the principle of least privilege

Interceptors and Middleware

Server Interceptors

  • Use interceptors for cross-cutting concerns (logging, auth, metrics)
  • Order interceptors carefully - execution order matters
  • Keep interceptors focused on single responsibilities
  • Handle errors gracefully within interceptors

Client Interceptors

  • Add metadata (headers) for tracing and authentication
  • Implement request/response logging
  • Add automatic retry logic
  • Collect client-side metrics

Testing

Unit Testing

  • Mock gRPC services for isolated testing
  • Test message serialization/deserialization
  • Verify error handling paths
  • Test interceptor logic independently

Integration Testing

  • Test with real gRPC connections where possible
  • Verify streaming behavior end-to-end
  • Test timeout and cancellation scenarios
  • Load test with realistic traffic patterns

Observability

Distributed Tracing

  • Use OpenTelemetry for distributed tracing across service boundaries
  • Propagate trace context in metadata
  • Instrument both client and server sides
  • Start spans for each RPC call

Metrics

  • Track RPC latency histograms
  • Monitor error rates by method and status code
  • Count active connections and streams
  • Alert on anomalies and SLA violations

Logging

  • Use structured logging with consistent fields
  • Log RPC method, duration, and status
  • Include trace IDs for correlation
  • Avoid logging sensitive data

Language-Specific Guidelines

Go

  • Use the official google.golang.org/grpc package
  • Implement services as interface types
  • Use context for cancellation and deadlines
  • Leverage code generation with protoc-gen-go-grpc

Python

  • Use grpcio and grpcio-tools packages
  • Implement async services with grpcio-aio for better concurrency
  • Use type hints with generated stubs
  • Handle blocking calls appropriately in async contexts

Node.js/TypeScript

  • Use @grpc/grpc-js (pure JavaScript implementation)
  • Consider using nice-grpc for better TypeScript support
  • Leverage async/await patterns
  • Use static codegen for type safety

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

27.77%
按下载量换算563

OpenCode

22.35%
按下载量换算453

Antigravity

16.67%
按下载量换算338

Gemini CLI

13.19%
按下载量换算267

Codex

7.92%
按下载量换算161

Cursor

3.15%
按下载量换算64

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills