{"id":"1998c82a-b59b-48b7-be1b-46989e3f4ac7","shortId":"wPFeAd","kind":"skill","title":"Lint protobuf definitions for style and correctness before code generation and review churn begin with protolint","tagline":"Catch naming, formatting, and protobuf rule violations early so generated clients and reviews are cleaner.","description":"# Lint protobuf definitions for style and correctness before code generation and review churn begin with protolint\n\nCatch naming, formatting, and protobuf rule violations early so generated clients and reviews are cleaner.\n\n## Prerequisites\n\nprotolint installation, protobuf source files, and optional CI or pre-commit integration where lint findings should gate changes\n\n## Installation\n\nUse the upstream install or setup path that matches your environment:\n- brew tap yoheimuta/protolint\n- brew install protolint\n- Since [homebrew-core](https://github.com/Homebrew/homebrew-core/pkgs/container/core%2Fprotolint) includes protolint, you can also install it by just brew install protolint. This is the default tap that is installed by...\n- go install github.com/yoheimuta/protolint/cmd/protolint@latest\n\nRequirements and caveats from upstream:\n- [![Docker](https://img.shields.io/docker/pulls/yoheimuta/protolint)](https://hub.docker.com/r/yoheimuta/protolint)\n- ### Use the maintained Docker image\n- protolint ships a Docker image [yoheimuta/protolint](https://hub.docker.com/r/yoheimuta/protolint) that allows you to use protolint as part of your Docker workflow.\n\nBasic usage or getting-started notes:\n- sh\n- protolint --mcp\n- For detailed documentation on how to use and integrate protolint's MCP server functionality, see the [MCP documentation](./mcp/README.md).\n\n- Source: https://github.com/yoheimuta/protolint\n- Extracted from upstream docs: https://raw.githubusercontent.com/yoheimuta/protolint/HEAD/README.md\n\n## Documentation\n\n- https://github.com/yoheimuta/protolint\n\n## Source\n\n- [Agent Skill Exchange](https://agentskillexchange.com/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint/)","tags":["lint","protobuf","definitions","for","style","and","correctness","before","code","generation","review","churn"],"capabilities":["skill","source-agentskillexchange","skill-lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-awesome-list","topic-claude-code","topic-codex","topic-cursor","topic-llm","topic-mcp","topic-npx-skills","topic-openclaw","topic-skills-catalog"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/agentskillexchange/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add agentskillexchange/skills","source_repo":"https://github.com/agentskillexchange/skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (1,769 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:11:10.600Z","embedding":null,"createdAt":"2026-05-18T13:17:32.944Z","updatedAt":"2026-05-18T19:11:10.600Z","lastSeenAt":"2026-05-18T19:11:10.600Z","tsv":"'/docker/pulls/yoheimuta/protolint)](https://hub.docker.com/r/yoheimuta/protolint)':142 '/homebrew/homebrew-core/pkgs/container/core%2fprotolint)':107 '/mcp/readme.md':197 '/r/yoheimuta/protolint)':156 '/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint/)':219 '/yoheimuta/protolint':201,212 '/yoheimuta/protolint/cmd/protolint@latest':133 '/yoheimuta/protolint/head/readme.md':208 'agent':214 'agentskillexchange.com':218 'agentskillexchange.com/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint/)':217 'allow':158 'also':112 'basic':169 'begin':14,45 'brew':95,98,117 'catch':17,48 'caveat':136 'chang':82 'churn':13,44 'ci':71 'cleaner':31,62 'client':27,58 'code':9,40 'commit':75 'core':104 'correct':7,38 'default':123 'definit':3,34 'detail':180 'doc':205 'docker':139,146,151,167 'document':181,196,209 'earli':24,55 'environ':94 'exchang':216 'extract':202 'file':68 'find':79 'format':19,50 'function':192 'gate':81 'generat':10,26,41,57 'get':173 'getting-start':172 'github.com':106,132,200,211 'github.com/homebrew/homebrew-core/pkgs/container/core%2fprotolint)':105 'github.com/yoheimuta/protolint':199,210 'github.com/yoheimuta/protolint/cmd/protolint@latest':131 'go':129 'homebrew':103 'homebrew-cor':102 'hub.docker.com':155 'hub.docker.com/r/yoheimuta/protolint)':154 'imag':147,152 'img.shields.io':141 'img.shields.io/docker/pulls/yoheimuta/protolint)](https://hub.docker.com/r/yoheimuta/protolint)':140 'includ':108 'instal':65,83,87,99,113,118,127,130 'integr':76,187 'lint':1,32,78 'maintain':145 'match':92 'mcp':178,190,195 'name':18,49 'note':175 'option':70 'part':164 'path':90 'pre':74 'pre-commit':73 'prerequisit':63 'protobuf':2,21,33,52,66 'protolint':16,47,64,100,109,119,148,162,177,188 'raw.githubusercontent.com':207 'raw.githubusercontent.com/yoheimuta/protolint/head/readme.md':206 'requir':134 'review':12,29,43,60 'rule':22,53 'see':193 'server':191 'setup':89 'sh':176 'ship':149 'sinc':101 'skill':215 'skill-lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint' 'sourc':67,198,213 'source-agentskillexchange' 'start':174 'style':5,36 'tap':96,124 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-awesome-list' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-llm' 'topic-mcp' 'topic-npx-skills' 'topic-openclaw' 'topic-skills-catalog' 'upstream':86,138,204 'usag':170 'use':84,143,161,185 'violat':23,54 'workflow':168 'yoheimuta/protolint':97,153","prices":[{"id":"d56a330e-f2e5-4b8a-9d01-700ebb235bc7","listingId":"1998c82a-b59b-48b7-be1b-46989e3f4ac7","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"agentskillexchange","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:17:32.944Z"}],"sources":[{"listingId":"1998c82a-b59b-48b7-be1b-46989e3f4ac7","source":"github","sourceId":"agentskillexchange/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint","sourceUrl":"https://github.com/agentskillexchange/skills/tree/main/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint","isPrimary":false,"firstSeenAt":"2026-05-18T13:17:32.944Z","lastSeenAt":"2026-05-18T19:11:10.600Z"}],"details":{"listingId":"1998c82a-b59b-48b7-be1b-46989e3f4ac7","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"agentskillexchange","slug":"lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint","github":{"repo":"agentskillexchange/skills","stars":8,"topics":["agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex","cursor","llm","mcp","npx-skills","openclaw","skills-catalog"],"license":"mit","html_url":"https://github.com/agentskillexchange/skills","pushed_at":"2026-05-18T19:02:17Z","description":"The open catalog of AI agent skills — 2,000+ security-scanned skills for Claude Code, Cursor, Codex, and more.","skill_md_sha":"07bc9bdd6d49074116cdceb1e34f23f708ce635d","skill_md_path":"skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/agentskillexchange/skills/tree/main/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"Lint protobuf definitions for style and correctness before code generation and review churn begin with protolint","description":"Catch naming, formatting, and protobuf rule violations early so generated clients and reviews are cleaner."},"skills_sh_url":"https://skills.sh/agentskillexchange/skills/lint-protobuf-definitions-for-style-and-correctness-before-code-generation-and-review-churn-begin-with-protolint"},"updatedAt":"2026-05-18T19:11:10.600Z"}}