← Back to home@LM20230311

dsh-code-review

DeepSeek Harness AI 代码审查插件 — /review 一键触发,四维度分析,支持自定义规则

Stars
0
Language
TypeScript
Created
Aug 19, 2026
Updated
Aug 19, 2026

Introduction

dsh-code-review

DeepSeek Harness AI 代码审查插件 — 一行配置,四个维度,中英双语,支持自定义规则

npm dsh-plugin license

English | 中文

功能

  • 🔍 四个审查维度 — 正确性、安全性、性能、可维护性,独立分析结果清晰
  • 📝 自定义规则 — 通过规则文件注入项目专属约定(ESLint 之外的语义规范)
  • 🌐 中英双语 — 输出语言可配置
  • 🎯 精准 diff — 支持 staged / HEAD / 指定分支对比
  • 💬 /review 命令 — 在 dsh 里输入 /review 即触发,无需离开终端
  • 🔌 零侵入 — 标准 Cordis 插件,不修改任何现有配置

安装

npm install dsh-code-review

快速开始

第一步: 在 cordis.yml 里加配置:

- id: code-review
  plugin: dsh-code-review
  config:
    diffTarget: staged      # 审查暂存区(git add 之后的内容)
    language: zh            # 输出中文报告

第二步: 暂存你要审查的代码:

git add src/your-file.ts

第三步: 在 dsh 里输入:

/review

输出示例

**[正确性]** 发现 1 个问题:

1. **问题**:getUserById 未处理数据库返回 null 的情况
   **位置**:src/user.ts:34
   **建议**:在返回前检查 user 是否为 null,并抛出 NotFoundError

**[安全性]** ✅ 未发现明显问题

**[性能]** 发现 1 个问题:

1. **问题**:循环内重复调用 JSON.parse,建议提到循环外
   **位置**:src/processor.ts:78
   **建议**:在循环前解析一次,循环内直接使用解析后的对象

**[可维护性]** ✅ 未发现明显问题

自定义规则

创建 .dsh-review-rules.txt(参考 rules/example-rules.txt):

# 项目自定义规则
禁止在生产代码中使用 console.log,应使用统一的日志模块
单个函数不应超过 50 行,超出时建议拆分
所有 async 函数必须有错误处理

然后在配置里指定:

- id: code-review
  plugin: dsh-code-review
  config:
    rulesFile: .dsh-review-rules.txt

完整配置项

- id: code-review
  plugin: dsh-code-review
  config:
    # git diff 来源
    # staged       → git diff --cached(默认)
    # head         → git diff HEAD
    # branch:main  → git diff main...HEAD
    diffTarget: staged

    # 输出语言:zh(中文)| en(英文)
    language: zh

    # 单次审查最大行数,超出时提示拆分(默认 500)
    maxDiffLines: 500

    # 自定义规则文件(可选,路径相对于工作区根目录)
    rulesFile: .dsh-review-rules.txt

自定义审查维度

import { apply } from 'dsh-code-review'

// 覆盖默认维度,只审查安全性
apply(ctx, {
  dimensions: [
    {
      key: 'security',
      label: '安全审查',
      prompt: '重点检查 SQL 注入、XSS、敏感信息泄露...',
    }
  ]
})

License

MIT