proto-gen

Run a protobuf maintenance pipeline for Go services in a monorepo.

1|Updated Mar 21, 2026
One-click install
npx skills add https://github.com/dashkan/pivox --skill proto-gen-dashkan
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: proto-gen
Source: https://github.com/dashkan/pivox/tree/main/.agents/skills/proto-gen
Command: npx skills add https://github.com/dashkan/pivox --skill proto-gen-dashkan

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Keeps your protobuf-driven codebase consistent and buildable by running the full lint, compliance, formatting, generation, and module tidy workflow whenever .proto files change.

Core Features & Use Cases

  • Proto pipeline execution: Lints proto files, checks AIP compliance, formats protos, generates Go code, and tidies modules in the correct order.
  • Change-driven regeneration: Used after updating any .proto definitions to ensure downstream code compiles against the latest schemas.
  • Validation gates: Stops the process when lint or AIP checks fail so generation is based on compliant definitions.

Quick Start

Run the full pipeline by executing: make lint-proto && make api-lint && make proto-format && make proto-generate && make tidy

Frequently Asked Questions about proto-gen

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I keep protobuf generated code consistent after updating .proto files in a monorepo?

To keep protobuf generated code consistent after updating .proto files, run a full maintenance pipeline that lints, formats, checks AIP compliance, regenerates code, and tidies Go modules. This ensures downstream services compile against the latest schemas.

What is the best way to validate protobuf schemas before generating Go code?

The best way to validate protobuf schemas before generating Go code is to run lint and AIP compliance checks. This pipeline acts as a validation gate, stopping the code generation process if lint or compliance checks fail.

How do I automate proto formatting and code generation for Go services?

You can automate proto formatting and code generation by executing the configured make targets in sequence: lint-proto, api-lint, proto-format, proto-generate, and tidy. This executes the full pipeline to ensure schemas are formatted and regenerated correctly.

Does this protobuf pipeline support AIP compliance checking and Go module cleanup?

Yes, this protobuf pipeline supports AIP compliance checking and Go module cleanup. It executes API linting to enforce compliance and runs go module tidy after code generation to ensure all dependencies are correctly managed in the monorepo.

Why does my Go code fail to compile after I change a proto definition?

Go code may fail to compile after changing a proto definition if the generated code is outdated or modules are untidy. Running a complete protobuf maintenance pipeline regenerates code from updated .proto files and tidies modules to fix compilation issues.