什么值得做
mokevnin/dev-quality-gates · mokevnin

一句话贴给 agent,让它给你的仓库装上 69 道门禁:dev-quality-gates 的 300 star 从哪来

它是什么 一个 GitHub 仓库,按语言和场景列出 69 个代码质量检查工具,每件事只推荐一个,再给一段话让 Claude Code / Codex 自己把合适的检查接进你的项目和 CI。

为什么火了 赶上了「怎么管住 agent 写的代码」这个热门话题,而且看完当天就能用;但 star 主要来自作者自己约 1.6 万订阅的 TG 频道和单期约 4 万播放的播客,也是他 AI 编程课的引流样品。

C你可以怎么跟 别照着再做一份通用版,换一个它没覆盖的领域(移动端、数据工程、基础设施、设计系统)或换一种语言做同样的「agent 一句话接入」清单,并且先在自己有受众的渠道发、两周后再出一期长内容做第二波。

C 级:形式(精选清单 + 写给 agent 的接入说明)新颖、能抄,垂直领域也还空着;但它起量靠的是作者本人的俄语受众和课程生态,跟进者拿不到,而且它自己也只有 300 star,没受众的人照做,天花板很低。 小圈子里在传
数据(每天更新) · 建库 2026-10-23 · 324 星 · 7 天 +159
GitHub · 星数
010020030010-2510-2911-0111-0411-08324
数据 2026-10-25 → 2026-11-08(15 天,15 次观测)。10-28 以前的点来自 deeply / 存档补录,不是每天都有

2026 年 10 月 24 日下午,俄语编程网校 Hexlet 的联合创始人 Kirill Mokevnin 在自己的 Telegram 频道发了一条帖子,标题是「Quality Gates всем и пусть никто не уйдет обиженным」(「质量门禁人人有份,谁也别空手走」)。他说自己这些年一直在 Hexlet 的项目里试各种检查工具,攒够了,做成一个仓库;用法只有一步:打开你的编码 agent,把链接丢给它,让它对照你的项目提改进。这条帖子约 7,000 浏览。两天后仓库单日涨了 55 个 star,两周后到 299。下面说清楚:它是什么、star 从哪来、它和一堆 linter 清单有什么不一样,以及你想靠类似的项目拿 star,哪部分能抄、哪部分抄不来。

它是什么:一份只给结论的清单,外加一段给 agent 的话

dev-quality-gates 是一份工具清单,CC0 协议,第一句话就说「这不是 awesome list」。11-06 数了一下 README:31 个类别,69 个工具。类别一半按语言分(JS/TS、Python、Go、Rust、Ruby、PHP、Java、Kotlin、.NET、Swift、Elixir、Shell),一半是横切的(GitHub Actions、GitLab CI、数据库迁移、API 契约、密钥泄露、Docker 和 Terraform、Git 提交规范、agent 配置文件……)。

和普通清单不同的地方写在开头的几条原则里:

  • 每件事只推荐一个工具,很少给两个。Python 就是 Ruff、ty、deptry、import-linter 这几样,各管一件事。
  • 必须能让构建失败。「没人读的报告不算数」,工具要能在违规时返回非零退出码。
  • 对 agent 友好:非交互、输出机器能读、能安全自动修复。README 原话是「AI 编码 agent 是这些工具的一等用户」。
  • 宁缺毋滥。 有一节专门列「还没定」的类别,比如容器镜像扫描:Trivy 的 GitHub Action 今年 3 月被投毒,作者就宁可空着,也不随手填一个。评估过、没收的工具单独写在 not-adopted 文档里。

清单是从一个 tools.json 生成的,每个工具都记了复核日期和出处;每周有一个自动任务把归档、长期不更新的工具标出来重新看。

最关键的是 README 里的「Use it in your project」一节,一段可以原样贴给 Claude Code 或 Codex 的话:

``text Apply https://github.com/mokevnin/dev-quality-gates to this repository. Read and follow https://raw.githubusercontent.com/mokevnin/dev-quality-gates/main/docs/adopt.md. Show me the plan before you change anything. ``

agent 会读一份写给它的操作说明,看你的项目用了什么,只挑合适的条目,先给你看计划,再把检查接进 git hooks 和 CI,并且「证明每一个检查都能失败」。这段是建库第三天(10-25)加进去的;之前 TG 帖子里给的还是一句俄语提示词。

star 是怎么来的:两波,都是作者自己发的

10 月 23 日深夜建库,14 天 299 star、15 fork(GitHub,11-06)。曲线很干净,两次上涨各对着作者自己的一次发布:

日期star发生了什么
10-22建库前作者在 TG 宣布亲自带 Hexlet「ИИ для разработчиков」(给程序员的 AI 课)第一期,大纲第一讲就有「hooks、linter、ast-grep 和其他 guardrails」
10-24—TG 频道 @orgprog(约 1.6 万订阅)发帖介绍仓库,约 7,000 浏览、约 157 个表情
10-2542加上「贴给 agent 一句话」的接入说明;俄语区开发者开始提 PR
10-2697(+55,单日最多)帖子继续扩散;Hexlet 的志愿者项目 hexlet-sicp 当天按清单开 issue 改造;一位尼日利亚开发者在 LinkedIn 把它列进「本周 3 个开源 AI 仓库」。这天具体是谁带的量,没查到
10-27 至 11-01120 → 165自然回落,每天 +3 到 +17
11-01—作者的播客「Организованное программирование」出了一期单人节目,专讲怎么控制 agent 写的代码,YouTube 约 4 万播放(发布 4 天后);同时发到 TG(约 6,100 浏览)、X(约 2,200 浏览)、LinkedIn
11-02 至 11-05182 → 293(+111)第二波
11-06299

英文圈几乎没动静:Hacker News 上没人发过,X 上搜仓库名和作者名都没有讨论,只找到 LinkedIn 那一篇小号盘点。star 主要来自俄语区是推断,依据是渠道、提 PR 的人和采用者几乎都是俄语开发者(stargazer 名单没抽样)。

还有一个细节:仓库的页脚和每条 TG 帖子底下都挂着 Hexlet AI 课程的链接。这份清单说到底是那门课的公开样品。作者 10-22 的帖子里说,现在的开发者「不需要再听 MCP 是什么、agents.md 怎么写,他们想要一套自动化、能产出可靠代码的工作流」,这个仓库正好是这句话的实物。

为什么能起来

作者自己就是分发渠道。 1.6 万订阅的 TG、单期几万播放的播客、GitHub 1,343 个关注者、一整个 Hexlet 学员和志愿者社区。两波 star 都对得上他自己发的内容,没有一波来自第三方大号。

选题赶上了。 2026 年下半年,「agent 写的代码怎么管住」是开发者圈的热门话题。GitHub 上同类仓库 6 到 9 月接连冒出来,好几个已经过千 star。

看完当天就能用。 一般的 linter 清单看完还得自己挑、自己配;这一份把「挑和配」交给 agent,读者花一分钟贴一段话就能看到效果。能看到真用的证据:hexlet-sicp 开了改造 issue,还有学员仓库开了「Adopt Dev Quality Gates」的 issue。这些 issue 又链回仓库,算是二次曝光。

看起来可信。 每个工具有复核日期、有研究笔记,不收的写明理由,还有自动的新鲜度检查。第一周就有约 6 个外部贡献者提 PR,仓库显得很活。

但要说清楚:这些差异让它留得住人、真有人用,而它能起来,主要还是靠作者的受众。300 star 的量级、几乎全在俄语区,说明光靠形式没能自己传开。

谁在同一条路上

项目规模(GitHub star,11-06)和它的区别
analysis-tools-dev/static-analysis14,874老牌穷尽式清单,几百个 SAST 工具和 linter,不给结论
caramelomartins/awesome-linters1,108社区 awesome list,来者不拒
super-linter10,650一堆 linter 打成一个 GitHub Action 一键跑;是执行器,不帮你选
MegaLinter2,64750 种语言全开,和「只挑一个」正好相反
qlty3,217统一的质量检查 CLI,带商业云端
pre-commit / lefthook15,686 / 9,001只管怎么跑 hook,不管选哪些工具
amElnagdy/guard-skills1,310(2026-06 建)用 agent 技能做门禁,是提示词层,不是确定性工具
soumatheusgomes/vibe-coding-toolkit2,286(2026-08 建)Claude Code 插件、提示词、门禁的大合集
shadcn-ui/lint3,315(2026-09 建)一个面向 agent 的单一 linter,不是选型清单

「linter 清单」和「linter 聚合执行器」都是十年的老品类,头部上万 star;「AI agent 质量门禁」是今年新起来的选题,也已经有几个千星仓库。dev-quality-gates 占的是两者交叉的一小块:有立场的精选清单,加一份写给 agent 的接入说明。照抄这种形式的新仓库暂时还没看到。

如果是你

一句话判断: 形式值得学,这个项目本身不值得照着做一份。它的 300 star 是作者的 1.6 万 TG 订阅和播客换来的,没有这些的人做同样的东西,大概率拿不到这个数。

适合谁: 在某个具体领域里真有一套自己在用的检查工具、而且手里多少有点受众的开发者——有个技术博客、Newsletter、几千关注的 X 号、一个活跃的社区或公司内部的工程平台组。这类人把自己的经验整理成「agent 能执行的清单」,成本是几个周末,拿到的是一个能长期挂在简历和主页上的项目。

不适合谁: 没有任何分发渠道、指望靠 GitHub 自然流量起量的人;想做「大而全」清单的人(那条路已经被一万多 star 的老清单占了);想把 agent 门禁做成提示词合集的人(guard-skills、vibe-coding-toolkit 已经在了)。

怎么做:

  • 换领域,别换包装。它管的是通用代码质量;移动端(iOS/Android 发版前检查)、数据工程(dbt、SQL、数据契约)、前端设计系统、基础设施即代码、游戏引擎项目,目前都还没有「每件事只推一个、能让构建失败、agent 一句话接入」的清单(推断,依据是这次没搜到同类仓库)。
  • 换语言也是一条缝:中文、日文、西语开发者圈都有自己的大号和社区,一份母语写的、带 adopt 说明的清单,比英文版更容易在本地圈子里被转(推断)。
  • 抄三样东西:一段可以原样贴给 agent 的话放在 README 第一屏;一份写给 agent 的 adopt.md,要求它先出计划、并证明每个检查能失败;每个条目带复核日期,外加一节「还没定」和一份「不收」的理由。
  • 先在自己的几个真实项目上跑通,README 里放「接进去之后拦下了什么」的实例,比列工具名有说服力。

怎么获客: 照它的两波来:上线当天在自己的渠道发一条带「复制这段给你的 agent」的帖子,一两周后再出一期长内容(视频、播客、长文)讲背后的取舍,第二波往往比第一波大。然后去找领域内的社区和推荐号,而不是泛开发者圈;让最早的几个用户在他们自己的仓库里开「adopt」issue,每个 issue 都是一个回链。

什么时候之前: 「怎么管住 agent 写的代码」这个话题还在升温,但同类仓库每个月都在冒,最好在年底前把第一版放出去(推断)。

什么情况说明看错了: ① 出现一个英文的、有大号背书的「agent 可执行门禁清单」并迅速过千 star,覆盖了你想做的领域——这块缝就关了; ② Claude Code、Codex 这类 agent 自己内置了「按项目自动挑 linter、接 CI」的能力——清单的「一句话接入」就不再稀奇; ③ 反过来:dev-quality-gates 在没有作者新发布的情况下,被英文圈大号自发转起来、star 继续涨——说明形式本身就有传播力,没受众的人也值得一试,判断该往上调。

---

数据与出处:GitHub 仓库页、README 与 issue/PR 列表(11-06);逐日 star 为每日抓取(10-25 起);Telegram @orgprog 第 533、534、538 帖(11-06 抓取的浏览数);YouTube 播客页面(11-05 前后的播放数);LinkedIn 盘点帖;竞品 star 来自 GitHub(11-06)。10-26 单日峰值的具体来源、star 用户的地域分布、课程转化都未核实。

GitHub 仓库 ↗

研究底稿:竞品表、获客证据、完整研究报告
竞品
名字在哪上线规模它和这家不同在哪
analysis-tools-dev/static-analysis开源2015-1214,874 星穷尽式 SAST / linter 列表,不给结论、不讲怎么接进 CI;本项目每类只挑一个,并且要求能让构建失败
caramelomartins/awesome-linters开源2014-021,108 星社区 awesome list,来者不拒;本项目有立场、有复核日期
super-linter开源2019-1010,650 星把一堆 linter 打包成一个 Action 执行;本项目是选型建议加 agent 接入说明
MegaLinter开源2020-102,647 星50 种语言全开的聚合执行器;本项目走「只挑一个」的精简路线
qlty开源2015(后来改成现名)3,217 星统一的质量 CLI 加商业云端;本项目免费(CC0),只做清单
SonarQube / Qodana quality gate大厂功能多年企业级收费平台内的指标门禁;本项目是轻量的开源工具组合,针对 agent
amElnagdy/guard-skills开源2026-061,310 星用 agent 技能(提示层)做门禁;本项目是确定性的工具链
soumatheusgomes/vibe-coding-toolkit开源2026-082,286 星Claude Code 插件、提示词、门禁的大合集;本项目只做确定性检查工具的选型
用户从哪来
  • 查实 作者 Telegram 频道 @orgprog:10-24 第 534 帖专门介绍仓库,约 7K 浏览、约 157 个表情回应;频道 16,162 订阅
  • 查实 作者 YouTube 播客「Организованное программирование」:11-01 单人专期讲 Quality Gates,约 3.97 万播放;之后 4 天 +128 星
  • 查实 作者 X / LinkedIn 同步:X 帖 2,182 浏览;LinkedIn 同步发布
  • 查实 Hexlet 生态内部采用:hexlet-volunteers/hexlet-sicp issue #2071、mbylinkin 两个仓库的 adopt issue
  • 查实 社区贡献者:第一周约 6 个外部贡献者提 PR(savinmikhail、strelov1、solar05、redb0 等)
  • 推断 英文圈转载:LinkedIn 一篇「本周 3 个开源 AI 仓库」盘点;HN、X 大号都没有

mokevnin/dev-quality-gates:为什么能跑出来

研究日期 2026-11-06。渠道:GitHub。数据卡:建库 2026-10-23,当前 299 星 / 15 fork,近 7 天 +153。

一句话结论

这是 Hexlet(俄语区最大的编程网校之一)联合创始人 Kirill Mokevnin 给自己的俄语开发者受众做的「AI 编码代理质量门禁」工具清单。星数几乎都来自他自己的渠道:Telegram 频道 @orgprog(1.6 万订阅)发帖带来第一波,YouTube 播客专期(约 4 万播放)带来第二波。产品本身的差异化是「每类只推荐一个工具 + 必须能让构建失败 + 一句话让 agent 把清单接进你的仓库」,这让它比一般的 awesome list 更容易被「用」起来,但它能起来主要还是因为作者自带受众。它也是 Hexlet「ИИ для разработчиков 2.0」课程的内容引流。

它是什么

  • 一份有立场的工具清单(CC0):按语言(JS/TS、Python、Go、Rust、Ruby、PHP、JVM、.NET、Elixir……)和横切类别(GitHub Actions、GitLab CI、Markdown、OpenAPI、容器、架构依赖规则、迁移安全等),每项工作只推荐 1 个工具(偶尔 2 个),写清楚它做什么、有什么局限。README 是从 tools.json 生成的,每个工具都记了复核日期和出处;仓库里有 GitHub Action 定期做「工具新鲜度报告」(issue #20),列入满 90 天的会被标出来重新复核(PR #22)。来源:README、issues/PR 列表。
  • 原则写得很硬:「Enforcement over advice」(必须能用非零退出码让构建失败)、「Agent-friendly」(非交互、机器可读输出、能安全自动修复)、「Fast native toolchains first」(优先 Ruff、Oxlint、Mago 这类 Rust 原生工具)、「Honest about gaps」(宁可留空,也不放过时推荐)。
  • 关键的使用方式:README 里给了一段可以直接贴给编码 agent 的提示词——"Apply github.com/mokevnin/dev-quality-gates to this repository. Read and follow …/docs/adopt.md. Show me the plan before you change anything." 然后 agent 会检查项目、挑出合适的条目、接进 hooks 和 CI,并且「证明每一个检查都能失败」。这段是 10-25 的 PR #12 加的。
  • 仓库曾经叫 dev-guardrails。hexlet-volunteers/hexlet-sicp 的 issue #2071(10-26)还在引用 mokevnin/dev-guardrails,之后才改成现在的名字。

增长曲线和对应事件

日期星数(github 库 repo_day / 数据卡)事件
10-23 22:48 UTC0建库
10-24 13:00 UTC—Telegram @orgprog 第 534 帖「Quality Gates всем и пусть никто не уйдет обиженным」,附仓库链接;约 7K 浏览、约 157 个表情回应(t.me/orgprog/534,2026-11-06 抓取)
10-2542加入「贴给 agent 一句话」的接入说明(PR #12);俄语社区的人开始提 PR(savinmikhail、strelov1、solar05)
10-2697(单日 +55,观测期最高)帖子继续扩散;同一天 Hexlet 志愿者项目 hexlet-sicp 按这份清单开了改造 issue;LinkedIn 有一个尼日利亚开发者把它列进「本周 3 个开源 AI 仓库」(链接)。这天具体是哪个转发带来的峰值未核实
10-27 至 11-01120 → 165自然衰减,每天 +3 到 +17
11-01 14:50 UTC—YouTube 播客「Организованное программирование」单人专期「Как контролировать код ИИ-агентов: Quality Gates, архитектура и инструменты разработчика」,约 3.97 万播放(Jina 抓 YouTube 页面,发布 4 天后);同时发到 TG(#538,6.1K 浏览)、X(2,182 浏览)、LinkedIn、Apple Podcasts
11-02 至 11-05182 → 293(+128)第二波,和视频发布对得上
11-06299

另外查过:Hacker News 库里没有这个仓库;x-radar 本地语料搜 dev-quality-gates 和 mokevnin 都是 0 条(作者不在我们跟踪的五个圈子里)。英文圈基本没有传开。

竞品

名字在哪上线规模和它不同在哪
analysis-tools-dev/static-analysis开源2015-1214,874 星穷尽式列表,几百个 SAST 工具和 linter;不给结论,也没有「接进 CI」的流程
caramelomartins/awesome-linters开源2014-021,108 星社区维护的 awesome list,老、全、不挑
super-linter开源 / GitHub Action2019-1010,650 星把一大堆 linter 打包成一个 Action 一键跑;是执行器,不是选型建议,也不针对 agent
MegaLinter开源2020-102,647 星同上,覆盖 50 种语言,走「全都开」的路线,和本项目「只挑一个」正好相反
qlty开源 CLI + SaaS2015 建库,后来改成现名3,217 星统一的 lint / 格式化 / 安全 CLI,带商业云端
Trunk Check商业2022 前后未核实商业版统一 linter 管理器
SonarQube / Qodana quality gate大厂功能多年企业级平台内的门禁和指标;收费、偏报告,不是「让构建失败」的轻工具组合
pre-commit / lefthook开源2014 / 201915,686 / 9,001 星hook 管理器,只管怎么跑,不管选哪些工具;本项目反过来推荐 lefthook 和 mise 这类工具
amElnagdy/guard-skills开源2026-061,310 星agent 技能形式的质量门禁,抓 AI 代码特有的失败模式;是提示层,不是确定性工具链
soumatheusgomes/vibe-coding-toolkit开源2026-082,286 星Claude Code 插件 + 质量门禁 + 提示词的大合集,偏「什么都给」
shadcn-ui/lint开源2026-093,315 星单一的 agent-first linter(Tailwind 设计系统),是一个工具,不是选型清单

(竞品星数和建库时间来自 GitHub API 和我们的 github 库,2026-11-06。)

结论:「linter 清单」和「linter 聚合执行器」都是很成熟的老品类,头部有上万星;「AI agent 质量门禁」是 2026 年新起来的选题,已经有好几个千星级仓库。本项目在两者交叉的地方占了一个小位置:有立场的精选清单 + 给 agent 读的接入说明。

增长手段(用户从哪来)

  1. 作者自有的俄语渠道(已确认):TG @orgprog 1.6 万订阅,单帖平时 4K–10K 浏览;YouTube 播客单期 4 万播放;同时发 X(@mokevnin)和 LinkedIn。两波星数增长分别和 10-24 的 TG 帖、11-01 的视频对得上。
  2. Hexlet 生态内部采用(已确认):hexlet-volunteers/hexlet-sicp 按清单开 issue 改造;学员或社区成员的仓库(mbylinkin/currency_exchange #43、mbylinkin/hangman_game #22)开了「Adopt Dev Quality Gates」issue。这说明「贴一句话给 agent」的用法真的有人在用。
  3. 社区贡献(已确认):第一周就有约 6 个外部贡献者提 PR(大多是俄语区开发者),外加一些 fork。贡献者多,仓库就显得活跃,也更可信。
  4. 英文圈零星转载(部分确认):LinkedIn 一篇「本周新开源仓库」盘点提到了它;没找到 HN、Reddit、X 大号或媒体报道。
  5. 商业闭环:TG 帖和视频的页脚都挂着 Hexlet 课程「ИИ для разработчиков 2.0」(4–5 周、讲 agent 编程、验证循环和 SDD)以及「Системный дизайн」的链接。作者 10-18 发帖说要亲自带第一期。这个仓库就是课程的公开样品和引流内容,钱从课程回来。

跑出来的原因

  • 作者自带分发:Hexlet 联合创始人,GitHub 有 1,343 关注者,TG 有 1.6 万订阅,YouTube 播客每期几万播放。两波涨星都对应他自己发的内容。
  • 选题赶上了时候:2026 年下半年「怎么约束 agent 写的代码」是热门话题(作者自己的 TG 里有 DHH 说「手写代码不划算了」这类讨论;GitHub 上同类 guard / quality-gate 仓库在 6 到 9 月接连冒出来)。
  • 能直接用:不只是一份清单,而是一段贴给 Claude Code / Codex 的提示词加 docs/adopt.md,读者看完当天就能在自己的仓库里跑起来。issue 里能看到真实的采用记录。
  • 可信:每个工具都有复核日期、research 文档和「不收录」的理由(例如 React Doctor、deadcode 评估后没收),还有自动的新鲜度检查。这和 awesome list 的「来者不拒」形成对比。

差异化,以及它是不是起来的原因

差异化有三点:(1)每类只推荐一个工具,写明局限,宁缺毋滥;(2)收录标准是「能让构建失败、对 agent 友好」,而不是「是个 linter 就收」;(3)清单本身是给 agent 读的,一句提示就能让 agent 落地,而且要证明每个检查都能失败。 这些差异化是它能留住人、能被真正用起来的原因(第一周就有外部 PR 和采用 issue)。但它能起来,主要靠作者的受众和课程漏斗。绝对量只有 300 星,并且集中在俄语区,说明光靠差异化没能自己在英文圈传开。

能见度

  • 小圈子里在传:俄语开发者圈(TG、YouTube、Hexlet 社区)。英文圈基本没人知道:HN 0 条,x-radar 0 条,只找到 LinkedIn 一篇小号盘点。
  • 收入:仓库本身不收费;背后的 Hexlet 课程是公开售卖的(而且课程已经出现在盗版课程站上,说明课程有一定热度)。
  • 跟风者:暂时没看到抄这种形式的新仓库;只有普通 fork(redb0、solar05、sub4biz 等)和采用者。

别人能借鉴的

  • 「清单 + 给 agent 的 adopt.md + 一句话提示」这种形式:把内容型仓库变成 agent 能执行的「安装包」,读者看完马上能用,采用后还会在别的仓库留下 issue 和链接,带来二次曝光。
  • 用「有立场 + 有复核日期 + 写明不收录的理由」来和 awesome list 区分开。
  • 内容(仓库)→ 个人渠道(TG / 播客)→ 课程变现,三者互相导流。这条路的前提是你已经有受众;没有受众的人照抄这种形式,很难复制出这条增长曲线。
  • 换个语言区、换个垂直领域(比如移动端、数据工程、前端设计系统)做同样的「agent 可执行精选清单」,目前还是空白。

不确定的

  • 10-26 单日 +55 的具体来源:是 TG 帖的长尾,还是别的频道转发,未核实。
  • star 用户的地域分布:GitHub stargazer 接口用我们的 token 拿不到,没抽样;「主要来自俄语区」这个判断依据的是渠道、贡献者和采用者,未直接核实。
  • 课程转化了多少,未知。

文章由 AI 根据公开数据和我们每天采集的数据写成,数字带出处,推断已标明