名称: protobuf-grpc-designer 描述: 具有向后兼容性检查的Protocol Buffers和gRPC服务定义 允许使用的工具:
- 读取
- 写入
- 编辑
- 全局搜索
- 文本搜索
- Bash
Protocol Buffers 和 gRPC 设计器技能
概述
此技能专门设计Protocol Buffers模式和gRPC服务定义,重点关注向后兼容性、性能和跨语言互操作性。
能力
- 遵循Google风格指南和最佳实践设计.proto文件
- 实现支持流式传输的gRPC服务定义
- 验证有线格式的向后兼容性
- 为多个目标生成特定语言的存根代码
- 配置proto文件检查和破坏性变更检测
- 设计高效的消息结构以提升性能
- 实现gRPC拦截器和中间件模式
目标流程
- API设计规范
- 向后兼容性管理
- 多语言SDK策略
集成点
- buf(模式注册、检查、破坏性变更检测)
- protoc(Protocol Buffer编译器)
- grpcurl(gRPC测试)
- gRPC-Gateway(REST转码)
- Connect(现代gRPC替代方案)
输入要求
- 服务领域需求
- 消息结构定义
- 流式传输要求(一元、服务端、客户端、双向)
- 代码生成的目标语言
- 向后兼容性策略
输出产物
- .proto模式文件
- buf.yaml配置文件
- 生成的特定语言存根代码
- 破坏性变更分析报告
- 从proto注释生成的API文档
使用示例
技能:
名称: protobuf-grpc-designer
上下文:
proto目录: ./proto
目标语言:
- go
- python
- typescript
启用Buf检查: true
检查破坏性变更: true
需要流式传输: true
最佳实践
- 使用反映领域边界的包名
- 删除字段时保留字段编号
- 使用已知类型(Timestamp、Duration等)
- 用注释记录所有消息和字段
- 通过包名对服务进行版本控制
- 使用状态码实现适当的错误处理