{"id":"127b538e-71f0-4296-881d-2225ad01b64f","shortId":"acdKdp","kind":"skill","title":"chinese-code-review","tagline":"中文代码审查规范——在保持专业严谨的同时，用符合国内团队文化的方式给出有效反馈","description":"# 中文代码审查规范\n\n## 概述\n\n国内团队做 Code Review 常遇到两个极端：要么过度客气导致关键问题被放过，要么照搬西方直白风格让同事下不来台。本技能帮你找到平衡点——**既不回避问题，又让人愿意接受反馈**。\n\n**核心原则：** 用\"建议\"代替\"命令\"，用\"提问\"代替\"否定\"，但绝不因为面子而放过 bug。\n\n## 审查反馈的表达方式\n\n### 用建议代替命令\n\n| 避免（命令式） | 推荐（建议式） |\n|---------------|---------------|\n| 你必须改成 X | 建议考虑用 X，因为 Y |\n| 这里写错了 | 这里可能存在一个问题，是否考虑过 Z 的情况？ |\n| 不要用这个方法 | 这个方法在 A 场景下可能有性能问题，可以看看 B 方案 |\n| 这段代码不行 | 这段逻辑我理解得对吗？如果输入为空的话会怎样？ |\n\n### 用提问代替否定\n\n当你不确定对方意图时，先问再评：\n\n```\n# 好的方式\n这里用 sync 方式读文件是出于什么考虑？如果并发量上来，可能会阻塞事件循环。\n\n# 不好的方式\n这里不应该用 sync 方式读文件。\n```\n\n### 分级标注\n\n统一使用优先级标记，让作者快速判断轻重缓急：\n\n- **[必须修复]** — 安全漏洞、数据丢失风险、逻辑错误（不修不能合）\n- **[建议修改]** — 性能问题、可维护性、缺少校验（本次或下次迭代修复）\n- **[仅供参考]** — 命名优化、风格建议、替代方案（不改也行）\n- **[问题]** — 不确定的地方，需要作者解释意图\n\n### 审查评论模板\n\n```\n[必须修复] SQL 注入风险\n\n第 42 行：用户输入直接拼接到 SQL 语句中。\n\n原因：攻击者可以通过 name 参数注入 `'; DROP TABLE users; --`。\n\n建议：使用参数化查询：\n  db.query('SELECT * FROM users WHERE name = $1', [name])\n\n参考：https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html\n```\n\n## 中英混排代码注释规范\n\n### 何时用中文\n\n- **业务逻辑说明** — 用中文解释业务背景和需求来源\n- **复杂算法注释** — 用中文写思路，确保团队成员都能理解\n- **TODO / FIXME** — 用中文描述待办事项，方便搜索和追踪\n- **文档注释（内部项目）** — JSDoc / Javadoc 中的描述文字用中文\n\n```typescript\n/**\n * 计算用户的会员等级折扣\n *\n * 业务规则：\n * - 普通会员 9.5 折\n * - 银卡会员 9 折\n * - 金卡会员 8.5 折\n * - 钻石会员 8 折\n *\n * @param level - 会员等级（MemberLevel enum）\n * @param amount - 原始金额（单位：分）\n * @returns 折后金额（单位：分）\n */\nfunction calculateDiscount(level: MemberLevel, amount: number): number {\n  // ...\n}\n```\n\n### 何时用英文\n\n- **变量名、函数名、类名** — 始终用英文命名，遵循团队命名规范\n- **Git commit message** — 参考下方 commit 规范\n- **开源项目注释** — 面向国际社区的项目，注释统一用英文\n- **错误信息和日志** — 生产环境的 error message 用英文（避免编码问题）\n- **API 接口文档** — 对外暴露的 API 用英文\n\n### 混排格式要求\n\n```typescript\n// 好：中英文之间加空格\n// 使用 Redis 缓存来减少 MySQL 的查询压力\n\n// 坏：中英文之间没有空格\n// 使用Redis缓存来减少MySQL的查询压力\n\n// 好：技术术语保留英文\n// 这里用 debounce 防抖处理，避免频繁触发 API 请求\n\n// 坏：强行翻译技术术语\n// 这里用防抖动处理，避免频繁触发应用程序接口请求\n```\n\n## Commit Message 中英双语格式\n\n### 推荐格式\n\n团队内部项目使用中文 commit message，采用约定式提交（Conventional Commits）的中文版：\n\n```\n<类型>(<范围>): <简要描述>\n\n<详细说明（可选）>\n\n<关联信息（可选）>\n```\n\n### 类型对照表\n\n| 类型 | 含义 | 示例 |\n|------|------|------|\n| feat | 新功能 | feat(用户): 新增手机号登录功能 |\n| fix | 修复 Bug | fix(支付): 修复微信支付回调重复处理的问题 |\n| docs | 文档变更 | docs: 更新 API 接口文档 |\n| style | 代码格式 | style: 统一缩进为 2 个空格 |\n| refactor | 重构 | refactor(订单): 拆分订单服务，提取公共逻辑 |\n| perf | 性能优化 | perf(列表): 虚拟滚动优化长列表渲染性能 |\n| test | 测试 | test(auth): 补充登录模块单元测试 |\n| chore | 构建/工具 | chore: 升级 Node.js 至 v20 |\n\n### 示例\n\n```\nfix(支付): 修复支付宝异步回调签名校验失败的问题\n\n原因：升级 SDK 后签名算法从 RSA 变为 RSA2，但回调校验仍使用旧算法。\n方案：回调处理中同时兼容 RSA 和 RSA2 签名校验。\n\nCloses #1234\n```\n\n### 面向国际社区的项目\n\n如果项目面向国际社区或有外籍成员，commit message 用英文，PR 描述中可附加中文说明：\n\n```\nfix(payment): fix Alipay async callback signature verification failure\n\nThe SDK upgrade changed the signature algorithm from RSA to RSA2,\nbut the callback handler still used the old algorithm.\n\nCloses #1234\n```\n\n## 常见反模式与对策\n\n### 反模式一：过度客气\n\n**表现：** 所有评论都是\"我觉得可能也许大概好像这里有个小问题\"。\n\n**后果：** 关键 bug 被隐藏在一堆委婉语里，作者根本不知道哪些必须改。\n\n**对策：** 使用分级标注。[必须修复] 就是必须修复，语气可以温和，但级别必须准确。\n\n```\n# 坏：过度客气\n不知道我理解得对不对，这里好像可能有一点点并发问题，不过也许我看错了...\n\n# 好：温和但清晰\n[必须修复] 并发安全问题\n\n这里的 map 在多个 goroutine 中同时读写，会触发 panic。\n建议加 sync.RWMutex，或者换成 sync.Map。\n\n复现方式：加 -race flag 跑测试就能看到。\n```\n\n### 反模式二：不敢给高级开发者提意见\n\n**表现：** 高级开发者或 Leader 的代码直接 Approve，不仔细看。\n\n**后果：** 代码质量双标，团队对 Code Review 失去信任。\n\n**对策：** Code Review 对事不对人。可以换个表达方式：\n\n```\n# 提问式（适合给资深同事的反馈）\n想请教一下，这里选择用递归而不是迭代，是出于什么考虑？\n我在想如果递归深度超过 1000 层会不会有栈溢出的风险？\n\n# 学习式\n学到了一个新写法！不过有个小疑问——这里的类型断言在运行时不会做检查，\n如果上游数据结构变了，这里会静默通过。是否考虑加个 runtime validation？\n```\n\n### 反模式三：审查变成风格之争\n\n**表现：** 大量评论纠结于缩进、空格、花括号位置。\n\n**后果：** 浪费时间，忽略真正的问题。\n\n**对策：** 风格问题交给 ESLint / Prettier / gofmt 等工具自动处理。Code Review 聚焦逻辑、安全、性能。\n\n### 反模式四：只写\"LGTM\"\n\n**表现：** 随手一个 LGTM 就 Approve，没有实质性审查。\n\n**后果：** Code Review 形同虚设，出了问题没人兜底。\n\n**对策：** 即使代码质量很好，也要写出你关注了哪些方面：\n\n```\nLGTM\n\n审查了以下方面：\n- 并发安全：锁的粒度合理\n- 错误处理：所有外部调用都有 error handling\n- 向下兼容：新增字段都有默认值，不影响老版本\n\n一个小建议 [仅供参考]：第 78 行的变量名 `d` 可以改成 `duration`，更易读。\n```\n\n## 审查流程建议\n\n### 开始审查前\n\n1. **先看 PR 描述**，理解改动的背景和目的\n2. **看关联的 Issue 或需求文档**\n3. **先整体浏览**，再逐文件细看\n\n### 审查顺序\n\n1. **架构层面** — 方案是否合理？有没有更好的方式？\n2. **正确性** — 逻辑对不对？边界条件处理了吗？\n3. **安全性** — 有没有注入、越权、信息泄露？\n4. **性能** — 有没有 N+1 查询、内存泄漏、不必要的循环？\n5. **可维护性** — 半年后能看懂吗？测试覆盖了吗？\n6. **风格** — 只关注工具无法自动处理的部分\n\n### 给出总结\n\n审查结束后，给一段总结，包括：\n- 整体评价（一句话）\n- 值得学习的地方（先扬后抑）\n- 主要问题列表（按优先级）\n- 建议的修改方向\n\n```\n总结：整体实现思路清晰，支付回调的幂等处理很到位。\n\n主要问题：\n1. [必须修复] 并发写 map 的问题（2 处）\n2. [建议修改] 缺少对空值的校验（3 处）\n3. [仅供参考] 几个变量命名可以更语义化\n\n建议先修复并发问题，校验的部分可以本次一起改或者拆到下个迭代。\n```\n\n## 检查清单\n\n在提交审查意见前，确认：\n\n- [ ] 每条评论都标注了优先级\n- [ ] [必须修复] 的问题都给出了具体的修复建议\n- [ ] 没有因为面子而跳过关键问题\n- [ ] 没有纠结于工具能自动处理的风格问题\n- [ ] 对好的代码给予了肯定\n- [ ] 给出了整体总结","tags":["chinese","code","review","superpowers","jnmetacode","agent-skills","agentic-coding","ai-coding","claude-code","code-review","cursor","gemini-cli"],"capabilities":["skill","source-jnmetacode","skill-chinese-code-review","topic-agent-skills","topic-agentic-coding","topic-ai-coding","topic-chinese","topic-claude-code","topic-code-review","topic-cursor","topic-gemini-cli","topic-kiro","topic-mcp","topic-npm-package","topic-prompt-engineering"],"categories":["superpowers-zh"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/jnMetaCode/superpowers-zh/chinese-code-review","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add jnMetaCode/superpowers-zh","source_repo":"https://github.com/jnMetaCode/superpowers-zh","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 1857 github stars · SKILL.md body (4,508 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-03T00:52:45.400Z","embedding":null,"createdAt":"2026-04-18T21:55:51.989Z","updatedAt":"2026-05-03T00:52:45.400Z","lastSeenAt":"2026-05-03T00:52:45.400Z","tsv":"'+1':518 '/cheatsheets/sql_injection_prevention_cheat_sheet.html':121 '1':116,488,501,544 '1000':418 '1234':312,350 '2':267,493,505,549,551 '3':497,509,554,556 '4':514 '42':96 '5':522 '6':526 '78':480 '8':151 '8.5':148 '9':145 '9.5':142 'algorithm':335,348 'alipay':323 'amount':159,171 'api':195,198,218,261 'approv':399,456 'async':324 'auth':283 'b':52 'bug':29,253,359 'calculatediscount':168 'callback':325,342 'chang':332 'cheatsheetseries.owasp.org':120 'cheatsheetseries.owasp.org/cheatsheets/sql_injection_prevention_cheat_sheet.html':119 'chines':2 'chinese-code-review':1 'chore':285,288 'close':311,349 'code':3,11,404,408,444,459 'commit':181,184,224,229,233,315 'convent':232 'd':482 'db.query':110 'debounc':215 'doc':257,259 'drop':105 'durat':484 'enum':157 'error':191,472 'eslint':440 'failur':328 'feat':246,248 'fix':251,254,294,320,322 'fixm':130 'flag':391 'function':167 'git':180 'gofmt':442 'goroutin':380 'handl':473 'handler':343 'issu':495 'javadoc':136 'jsdoc':135 'leader':397 'level':154,169 'lgtm':451,454,466 'map':378,547 'memberlevel':156,170 'messag':182,192,225,230,316 'mysql':207 'n':517 'name':103,115,117 'node.js':290 'number':172,173 'old':347 'panic':383 'param':153,158 'payment':321 'perf':275,277 'pr':318,490 'prettier':441 'race':390 'redi':205 'refactor':269,271 'return':163 'review':4,12,405,409,445,460 'rsa':301,307,337 'rsa2':303,309,339 'runtim':427 'sdk':299,330 'select':111 'signatur':326,334 'skill' 'skill-chinese-code-review' 'source-jnmetacode' 'sql':93,99 'still':344 'style':263,265 'sync':62,68 'sync.map':387 'sync.rwmutex':385 'tabl':106 'test':280,282 'todo':129 'topic-agent-skills' 'topic-agentic-coding' 'topic-ai-coding' 'topic-chinese' 'topic-claude-code' 'topic-code-review' 'topic-cursor' 'topic-gemini-cli' 'topic-kiro' 'topic-mcp' 'topic-npm-package' 'topic-prompt-engineering' 'typescript':138,201 'upgrad':331 'use':345 'user':107,113 'v20':292 'valid':428 'verif':327 'x':37,39 'y':41 'z':45 '一个小建议':477 '一句话':534 '不仔细看':400 '不修不能合':77 '不好的方式':66 '不影响老版本':476 '不必要的循环':521 '不改也行':87 '不敢给高级开发者提意见':394 '不知道我理解得对不对':370 '不确定的地方':89 '不要用这个方法':47 '不过也许我看错了':372 '不过有个小疑问':422 '业务规则':140 '业务逻辑说明':124 '个空格':268 '中同时读写':381 '中文代码审查规范':5,8 '中的描述文字用中文':137 '中英双语格式':226 '中英文之间加空格':203 '中英文之间没有空格':210 '中英混排代码注释规范':122 '主要问题':543 '主要问题列表':537 '也要写出你关注了哪些方面':465 '仅供参考':83,478,557 '代替':22,26 '代码格式':264 '代码质量双标':402 '会员等级':155 '会触发':382 '但回调校验仍使用旧算法':304 '但级别必须准确':367 '但绝不因为面子而放过':28 '何时用中文':123 '何时用英文':174 '作者根本不知道哪些必须改':361 '你必须改成':36 '使用':204 '使用redis缓存来减少mysql的查询压力':211 '使用分级标注':363 '使用参数化查询':109 '信息泄露':513 '修复':252 '修复微信支付回调重复处理的问题':256 '修复支付宝异步回调签名校验失败的问题':296 '值得学习的地方':535 '先扬后抑':536 '先整体浏览':498 '先看':489 '先问再评':59 '关联信息':240 '关键':358 '内存泄漏':520 '内部项目':134 '再逐文件细看':499 '几个变量命名可以更语义化':558 '出了问题没人兜底':462 '函数名':176 '分':162,166 '分级标注':70 '列表':278 '加':389 '包括':532 '升级':289,298 '半年后能看懂吗':524 '单位':161,165 '即使代码质量很好':464 '原因':101,297 '原始金额':160 '参数注入':104 '参考':118 '参考下方':183 '又让人愿意接受反馈':18 '反模式一':352 '反模式三':429 '反模式二':393 '反模式四':449 '变为':302 '变量名':175 '只关注工具无法自动处理的部分':528 '只写':450 '可以换个表达方式':411 '可以改成':483 '可以看看':51 '可维护性':80,523 '可能会阻塞事件循环':65 '可选':239,241 '后果':357,401,435,458 '后签名算法从':300 '向下兼容':474 '否定':27 '含义':244 '命令':23 '命令式':33 '命名优化':84 '和':308 '回调处理中同时兼容':306 '因为':40 '团队内部项目使用中文':228 '团队对':403 '国内团队做':10 '在保持专业严谨的同时':6 '在多个':379 '在提交审查意见前':562 '场景下可能有性能问题':50 '坏':209,220,368 '处':550,555 '复杂算法注释':126 '复现方式':388 '大量评论纠结于缩进':432 '失去信任':406 '好':202,212,373 '好的方式':60 '如果上游数据结构变了':424 '如果并发量上来':64 '如果输入为空的话会怎样':56 '如果项目面向国际社区或有外籍成员':314 '始终用英文命名':178 '学习式':420 '学到了一个新写法':421 '安全':447 '安全性':510 '安全漏洞':74 '审查了以下方面':467 '审查反馈的表达方式':30 '审查变成风格之争':430 '审查流程建议':486 '审查结束后':530 '审查评论模板':91 '审查顺序':500 '对事不对人':410 '对外暴露的':197 '对好的代码给予了肯定':569 '对策':362,407,438,463 '就':455 '就是必须修复':365 '层会不会有栈溢出的风险':419 '工具':287 '常见反模式与对策':351 '常遇到两个极端':13 '并发写':546 '并发安全':468 '并发安全问题':376 '建议':21,108 '建议修改':78,552 '建议先修复并发问题':559 '建议加':384 '建议式':35 '建议的修改方向':539 '建议考虑用':38 '开始审查前':487 '开源项目注释':186 '强行翻译技术术语':221 '当你不确定对方意图时':58 '形同虚设':461 '必须修复':73,92,364,375,545,565 '忽略真正的问题':437 '性能':448,515 '性能优化':276 '性能问题':79 '总结':540 '想请教一下':414 '我在想如果递归深度超过':417 '我觉得可能也许大概好像这里有个小问题':356 '或者换成':386 '或需求文档':496 '所有外部调用都有':471 '所有评论都是':355 '技术术语保留英文':213 '折':143,146,149,152 '折后金额':164 '拆分订单服务':273 '按优先级':538 '接口文档':196,262 '推荐':34 '推荐格式':227 '描述':491 '描述中可附加中文说明':319 '提取公共逻辑':274 '提问':25 '提问式':412 '支付':255,295 '支付回调的幂等处理很到位':542 '攻击者可以通过':102 '数据丢失风险':75 '整体实现思路清晰':541 '整体评价':533 '文档变更':258 '文档注释':133 '新功能':247 '新增字段都有默认值':475 '新增手机号登录功能':250 '方便搜索和追踪':132 '方式读文件':69 '方式读文件是出于什么考虑':63 '方案':53,305 '方案是否合理':503 '既不回避问题':17 '是出于什么考虑':416 '是否考虑加个':426 '是否考虑过':44 '普通会员':141 '更新':260 '更易读':485 '替代方案':86 '有没有':516 '有没有更好的方式':504 '有没有注入':511 '本技能帮你找到平衡点':16 '本次或下次迭代修复':82 '构建':286 '架构层面':502 '查询':519 '校验的部分可以本次一起改或者拆到下个迭代':560 '核心原则':19 '检查清单':561 '概述':9 '正确性':506 '每条评论都标注了优先级':564 '没有因为面子而跳过关键问题':567 '没有实质性审查':457 '没有纠结于工具能自动处理的风格问题':568 '注入风险':94 '注释统一用英文':188 '测试':281 '测试覆盖了吗':525 '浪费时间':436 '混排格式要求':200 '温和但清晰':374 '理解改动的背景和目的':492 '生产环境的':190 '用':20,24 '用中文写思路':127 '用中文描述待办事项':131 '用中文解释业务背景和需求来源':125 '用建议代替命令':31 '用户':249 '用户输入直接拼接到':98 '用提问代替否定':57 '用符合国内团队文化的方式给出有效反馈':7 '用英文':193,199,317 '的中文版':234 '的代码直接':398 '的情况':46 '的查询压力':208 '的问题':548 '的问题都给出了具体的修复建议':566 '看关联的':494 '确保团队成员都能理解':128 '确认':563 '示例':245,293 '空格':433 '第':95,479 '等工具自动处理':443 '签名校验':310 '简要描述':237 '类名':177 '类型':235,243 '类型对照表':242 '给一段总结':531 '给出了整体总结':570 '给出总结':529 '统一使用优先级标记':71 '统一缩进为':266 '缓存来减少':206 '缺少对空值的校验':553 '缺少校验':81 '聚焦逻辑':446 '至':291 '花括号位置':434 '范围':236 '虚拟滚动优化长列表渲染性能':279 '行':97 '行的变量名':481 '补充登录模块单元测试':284 '表现':354,395,431,452 '被隐藏在一堆委婉语里':360 '要么照搬西方直白风格让同事下不来台':15 '要么过度客气导致关键问题被放过':14 '规范':185 '计算用户的会员等级折扣':139 '订单':272 '让作者快速判断轻重缓急':72 '详细说明':238 '语句中':100 '语气可以温和':366 '请求':219 '越权':512 '跑测试就能看到':392 '边界条件处理了吗':508 '过度客气':353,369 '这个方法在':48 '这段代码不行':54 '这段逻辑我理解得对吗':55 '这里不应该用':67 '这里会静默通过':425 '这里写错了':42 '这里可能存在一个问题':43 '这里好像可能有一点点并发问题':371 '这里用':61,214 '这里用防抖动处理':222 '这里的':377 '这里的类型断言在运行时不会做检查':423 '这里选择用递归而不是迭代':415 '适合给资深同事的反馈':413 '逻辑对不对':507 '逻辑错误':76 '遵循团队命名规范':179 '避免':32 '避免编码问题':194 '避免频繁触发':217 '避免频繁触发应用程序接口请求':223 '采用约定式提交':231 '重构':270 '金卡会员':147 '钻石会员':150 '银卡会员':144 '锁的粒度合理':469 '错误信息和日志':189 '错误处理':470 '问题':88 '防抖处理':216 '随手一个':453 '需要作者解释意图':90 '面向国际社区的项目':187,313 '风格':527 '风格建议':85 '风格问题交给':439 '高级开发者或':396","prices":[{"id":"60c6c240-cd29-4c63-975b-03ea1a033949","listingId":"127b538e-71f0-4296-881d-2225ad01b64f","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"jnMetaCode","category":"superpowers-zh","install_from":"skills.sh"},"createdAt":"2026-04-18T21:55:51.989Z"}],"sources":[{"listingId":"127b538e-71f0-4296-881d-2225ad01b64f","source":"github","sourceId":"jnMetaCode/superpowers-zh/chinese-code-review","sourceUrl":"https://github.com/jnMetaCode/superpowers-zh/tree/main/skills/chinese-code-review","isPrimary":false,"firstSeenAt":"2026-04-18T21:55:51.989Z","lastSeenAt":"2026-05-03T00:52:45.400Z"}],"details":{"listingId":"127b538e-71f0-4296-881d-2225ad01b64f","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"jnMetaCode","slug":"chinese-code-review","github":{"repo":"jnMetaCode/superpowers-zh","stars":1857,"topics":["agent-skills","agentic-coding","ai-coding","chinese","claude-code","code-review","cursor","gemini-cli","kiro","mcp","npm-package","prompt-engineering","skills","superpowers","tdd","trae"],"license":"mit","html_url":"https://github.com/jnMetaCode/superpowers-zh","pushed_at":"2026-04-28T15:32:18Z","description":"🦸 AI 编程超能力 · 中文增强版 — superpowers（116k+ ⭐）完整汉化 + 6 个中国原创 skills，让 Claude Code / Copilot CLI / Hermes Agent / Cursor / Windsurf / Kiro / Gemini CLI 等 16 款 AI 编程工具真正会干活","skill_md_sha":"0f9aba86371724cd28d24c7e1c230910b55980a1","skill_md_path":"skills/chinese-code-review/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/jnMetaCode/superpowers-zh/tree/main/skills/chinese-code-review"},"layout":"multi","source":"github","category":"superpowers-zh","frontmatter":{"name":"chinese-code-review","description":"中文代码审查规范——在保持专业严谨的同时，用符合国内团队文化的方式给出有效反馈"},"skills_sh_url":"https://skills.sh/jnMetaCode/superpowers-zh/chinese-code-review"},"updatedAt":"2026-05-03T00:52:45.400Z"}}