CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/protobuf-compat-checking

Wraps `buf breaking` to compare a Protobuf schema against a past version, classifies breaking changes by category (FILE / PACKAGE / WIRE_JSON / WIRE), configures buf.yaml rule selection plus per-path exemptions, and gates CI on the exit code. Use when reviewing `.proto` changes in a PR for gRPC services, BSR modules, or schema-versioned message bus payloads.

76

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

Quality

Content

87%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, actionable reference with executable commands and config for every baseline target plus CI integration. Its main gap is the absence of an explicit error-recovery loop spelling out what to do when buf breaking reports failures.

Suggestions

Add an explicit 'Handling failures' loop after 'Reading the report': triage with jq → either fix the .proto or add an ignore_only/except exemption → re-run buf breaking → only merge when it exits zero.

State the exit-code gating contract explicitly in the CI section (e.g. 'buf breaking non-zero fails the job; treat FILE/PACKAGE findings as blocking, WIRE_JSON/WIRE as advisory depending on use') so the validation checkpoint is unambiguous.

Trim mildly editorial sentences like 'This is the most common CI pattern' and 'Useful for hermetic builds...' to keep the reference purely instructional.

DimensionReasoningScore

Conciseness

Lean, code-dense, and assumes Claude's competence — it never explains what Protobuf or a message bus is, and every section (categories table, buf.yaml block, command examples, CI YAML) earns its place with minimal editorial padding.

3 / 3

Actionability

Fully executable, copy-paste-ready guidance throughout: concrete `buf breaking --against` commands, a complete v2 buf.yaml, GitHub Actions workflow YAML, and a jq triage pipe.

3 / 3

Workflow Clarity

Sections clearly sequence configure → run → read report → gate CI, and the exit-code gate plus `buf lint` act as validation, but there is no explicit fix-and-retry feedback loop for handling detected breaking changes (e.g. triage → fix proto or add ignore_only → re-run).

2 / 3

Progressive Disclosure

A single well-organized file with clear sections (Overview, When to use, Breaking categories, Configuration, Running, Reading the report, CI integration, References) and only one-level-deep external doc links — no nested bundle references to get lost in.

3 / 3

Total

11

/

12

Passed

Description

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, specific description that states concrete capabilities and gives an explicit 'Use when' trigger covering the natural scenarios for this skill. It is distinguishable from sibling contract-diff skills and free of fluff.

DimensionReasoningScore

Specificity

Lists multiple concrete actions: 'compare a Protobuf schema against a past version', 'classifies breaking changes by category (FILE / PACKAGE / WIRE_JSON / WIRE)', 'configures buf.yaml rule selection plus per-path exemptions', and 'gates CI on the exit code' — each a distinct, specific capability.

3 / 3

Completeness

Explicitly answers what (wraps buf breaking to compare, classify, configure, gate CI) and when via an explicit 'Use when reviewing .proto changes in a PR...' clause, satisfying the 'what AND when' anchor.

3 / 3

Trigger Term Quality

Natural trigger terms a user would say are present: 'reviewing .proto changes in a PR', 'gRPC services', 'BSR modules', 'schema-versioned message bus payloads', plus 'Protobuf' and 'breaking' earlier in the sentence.

3 / 3

Distinctiveness Conflict Risk

A clear Protobuf/buf-breaking niche with distinct triggers; it even names its REST and GraphQL counterparts, making overlap with other skills unlikely.

3 / 3

Total

12

/

12

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents