protobuf

Solid

Use when working with Protocol Buffer (.proto) files, buf.yaml, buf.gen.yaml, or buf.lock. Covers proto design, buf CLI, gRPC/Connect services, protovalidate constraints, schema evolution, and troubleshooting lint/breaking errors.

AI & Automation 17 stars 1 forks Updated 3 weeks ago Apache-2.0

Install

View on GitHub

Quality Score: 81/100

Stars 20%
42
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Protocol Buffers ## When You Need This Skill - Creating or editing `.proto` files - Setting up `buf.yaml` or `buf.gen.yaml` - Designing gRPC or Connect services - Adding protovalidate constraints - Troubleshooting buf lint or breaking change errors ## Core Workflow ### 1. Match Project Style Before writing proto code, review existing `.proto` files in the project. Match conventions for naming, field ordering, structural patterns, validation, and documentation style. If none exists, ask the user what style should be used or an existing library to emulate. ### 2. Write Proto Code - Apply universal best practices from [best_practices.md](references/best_practices.md) - Add [protovalidate](references/protovalidate.md) constraints to every field—this is not optional for production APIs - For service templates, see [assets/](assets/) ### 3. Verify Changes **Always run after making changes:** ```bash buf format -w && buf lint ``` Check for a Makefile first—many projects use `make lint` or `make format`. Fix all errors before considering the change complete. ## Quick Reference | Task | Reference | |------|-----------| | Field types, enums, oneofs, maps | [quick_reference.md](references/quick_reference.md) | | Schema evolution, breaking changes | [best_practices.md](references/best_practices.md) | | Validation constraints | [protovalidate.md](references/protovalidate.md) | | Complete service examples | [examples.md](references/examples.md), [assets/](assets/) | | buf C...

Details

Author
wordbricks
Repository
wordbricks/onequery
Created
4 months ago
Last Updated
3 weeks ago
Language
TypeScript
License
Apache-2.0

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category