检查证据清单字段完整与编号重复,仅提示差异
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/9 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add PerryLink/dsh-evidence-check该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · tool
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 26 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/11/4) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 1 处,展示前 1 条)
- 读取本地文件samples/quickstart/run.mjs:7
const material = await readFile(join(here, 'input', "EV-001-unsafe.json"), 'utf8')
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-package-manifest@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 检查字段完整性
- 检测编号重复
- 仅提示差异
证据清单核对:依据《最高人民法院关于民事诉讼证据的若干规定》(法释〔2019〕19号)。仅提示差异,不作出定性结论。
README
由 DeepSeek 最新模型翻译生成dsh-evidence-check — 法庭证据清单完整性与内部一致性检查
dsh-evidence-check 读取一份证据清单——案件头部信息,加上每项证据一行——检查这份清单自身的完整性与内部一致性:每项证据是否都填了名称和它用来证明的事实(claim、exhibitName),source 是否记录在案,form 是否取自你配置的词表,obtainedAt 能否解析、是否晚于 submittedAt,exhibitNo 有没有重复,头部是否声明了 caseNo 和 party,事实列里有没有残留的模板占位符。它不判断证据是否真实、取得是否合法、是否与案件相关,也不判断证据能否证明事实、应否采信或排除:那是法庭在交叉询问之后作出的判断。
它能回答什么
| 你问 | 它回答什么 |
| 我们在法院规定的期限内提交了。这个工具会确认吗? | 不会。EV-004 只检查清单自身携带的两个日期列能否解析,以及 obtainedAt 是否不晚于 submittedAt;它不计算任何举证期限,因为期限由法院通知设定或由当事人约定,本身还有延长和中止。所以逐日核对清单并不构成关于是否及时的认定。 |
| 证据名称填了,事实列是空的。
展开完整文档(README 剩余 1 节)
dsh-evidence-check — 法庭证据清单完整性与内部一致性检查
dsh-evidence-check 读取一份证据清单——案件头部信息,加上每项证据一行——检查这份清单自身的完整性与内部一致性:每项证据是否都填了名称和它用来证明的事实(claim、exhibitName),source 是否记录在案,form 是否取自你配置的词表,obtainedAt 能否解析、是否晚于 submittedAt,exhibitNo 有没有重复,头部是否声明了 caseNo 和 party,事实列里有没有残留的模板占位符。它不判断证据是否真实、取得是否合法、是否与案件相关,也不判断证据能否证明事实、应否采信或排除:那是法庭在交叉询问之后作出的判断。
它能回答什么
| 你问 | 它回答什么 |
| 我们在法院规定的期限内提交了。这个工具会确认吗? | 不会。EV-004 只检查清单自身携带的两个日期列能否解析,以及 obtainedAt 是否不晚于 submittedAt;它不计算任何举证期限,因为期限由法院通知设定或由当事人约定,本身还有延长和中止。所以逐日核对清单并不构成关于是否及时的认定。 |
| 证据名称填了,事实列是空的。 | EV-001 把 claim 和 exhibitName 放在一起检查,只要求两者至少填一个;两个单元格都空时它才报告该行,并不判断这项证据是否足以证明事实。 |
| 有两行用了同一个证据编号。 | EV-005 比较清单内部的 exhibitNo 值,忽略空白,报告靠后的那一行以及它重复的那一行。它只认定编号不唯一——这是重复登记还是编号抄错,留给你判断。编号单元格为空的不参与比较。 |
| 这项证据的来源明摆着,规则却触发了。 | 因为来源单元格没填。EV-002 要求清单为该列给出的每项证据都填 source;它检查单元格有没有内容,不检查来源是否合法、取得方式是否正当。 |
| 我们清单的头部没有案号,也没有提交方。 | EV-006 读取头部,报告材料未声明的 caseNo 和 party 中缺哪一项。它检查的是有没有声明,不是声明得对不对;缺声明只针对头部报告一次,不逐行报告。 |
| 哪条规则会报告 skipped,为什么? | EV-003 默认就会:它的 values 出厂为空,意味着表单词汇表尚未配置,而插件不会硬编码一份证据种类清单,因为民事、行政和刑事诉讼并不列举相同的种类。把 values 填上你所在诉讼程序的种类,规则就会运行;它随后只检查每个 form 单元格是否属于这些种类,而不检查某份证据实际上属于哪一类。 |
遵循的标准
| 文件 | 编号 | 引用它的规则 |
| 《最高人民法院关于民事诉讼证据的若干规定》 | 法释〔2019〕19号(现行版本与条号本次未核实) | EV-001, EV-002, EV-004, EV-005, EV-006, EV-007 |
| 《最高人民法院关于民事诉讼证据的若干规定》 | 法释〔2019〕19号(自 2020 年 5 月 1 日起施行) | EV-003 |
边界: 这个插件检查一份证据清单,只看一份清单能被机械地要求做到什么——每份证据都写明自己以及它用来证明的事实,来源有记录,形式出自你的词汇表,取得先于提交,证据编号唯一,清单写明案件和提交方,并且没有占位符残留。它不判定证据是否真实、是否合法取得、是否相关,是否证明了该事实,或者是否应当采信或排除。那是法庭在交叉询问之后的判断,也是案件的核心。
⚠️ 在相信报告里的引文之前,请先读这段
这个插件规则包里的每一条 excerpt 都明明白白地说,条文原文未能取得。 相关制度见于《中华人民共和国民事诉讼法》、《最高人民法院关于民事诉讼证据的若干规定》和《中华人民共和国行政诉讼法》。核查环节无法取回逐字条文,所以规则包没有去转述一段引文,而是在 excerpt 字段里直接说明这一缺口,并把诚实的推理写进 note。因此每条规则都是 warn 或 info,并且有一项测试断言:没有任何规则声称自己拥有它并不拥有的引文。拿到条文文本后,必须做两件事:把每条 excerpt 换成真正的条文,并把 kind 提升为 direct。
关于这些发现意味着什么,有两点说明。表单词汇表出厂为空——民事、行政和刑事诉讼列举的证据种类不同,所以 EV-003 在 skipped 里报告自己,而不是强加一份清单;何况对一份证据归类本身就是法律判断。而 EV-004 只检查取得先于提交;它对举证期限不作任何认定,因为该期限由法院设定或当事人约定,允许延长,而一份清单很少记录到足以推算它的程度。
兼容性
| 层面 | 状态 |
| Harness | 对等范围 >=0.1.2-rc.1 <0.2.0 \|\| >=0.2.0-0 <0.3.0——已验证可接受 0.2.0-rc.2 和 0.2.1-alpha.1。engines.dsh 刻意不声明:它没有读取方,也无法拒绝某个宿主 |
| Node | ^22.19.0 || >=24.0.0 |
| 平台 | 全部(纯 ESM;无原生代码、无网络、无模型调用) |
| 工具模式 | 在 native、ptc 和 both 下都能用;证据清单很长时用 ptc |
做什么
注册 evidence_check 工具。它读取一份证据清单——案件抬头,加上每项证据一行——套用带版本号的规则包,返回报告。
| 规则 | 检查项 | 严重级别 | 依据类型 |
| EV-001 | 每项证据都写明自身名称和待证事实 | warn | direct |
| EV-002 | 每项证据都记录来源 | warn | direct |
| EV-003 | 证据形式来自你的词表(默认关闭) | info | local |
| EV-004 | 取得日期不晚于提交日期 | warn | principle |
| EV-005 | 证据编号唯一 | warn | principle |
| EV-006 | 清单写明案件和提交方 | warn | principle |
| EV-007 | 待证事实列没有未替换的占位符 | warn | principle |
安装
dsh plugin --profile <name> add dsh-evidence-check
dsh --profile <name> --dump-config | grep 'dsh-evidence-check'
配置
| 键 | 类型 | 默认值 | 说明 |
| rulesFile | string | rules/evidence-check.yaml | 规则包路径,相对于包根目录 |
| disabledRules | string[] | [] | 停止运行的规则 id;每个都会出现在 skipped 里 |
| onlyRules | string[] | [] | 只运行这些规则 id;留空则运行全部规则 |
| skipNotes | string | "" | 附加到每条 skipped 原因后面的备注 |
| timeoutMs | number | 120000 | 协作式工具超时预算 |
几个值得了解的规则级参数:
- EV-003 values —— 你所在程序中的证据种类,例如 [书证, 物证, 视听资料, 电子数据, 证人证言, 鉴定意见, 勘验笔录]。留空则不检查。
- EV-004 field / notBeforeField —— 日期对,默认是取得日期对提交日期。
- EV-007 terms —— 要查找的占位符。
材料格式
工具接受 JSON 或 YAML:
caseNo: (2026)某民初 1234 号 caseName: 买卖合同纠纷 party: 原告某某公司 rows:
- { 证据编号: 证1, 待证事实: 双方于 2025 年 3 月 10 日签订买卖合同,
证据名称: 买卖合同原件, 证据形式: 书证, 来源: 原告留存,签订时取得, 页码: 第 1-3 页, 原件: 原件, 取得日期: 2025-03-10, 提交日期: 2026-03-02 }
列名匹配不区分大小写,并忽略空格、下划线和连字符;清单自己的列名会保留,所以每条发现都会写明它读的是哪一列。日期可以写成 2026-03-02 或 2026-03-02 09:30。
规则来源
规则数据放在 rules/evidence-check.yaml。规则包的头部完整说明引用缺口,每条规则的 note 重复其中与该规则相关的部分。加载时的守卫通常要求「摘录必须是至少八个字符的真实引文」,但它分不清引文和描述——所以这个规则包依赖头部、每条规则的 note,以及一个测试,该测试断言每个 excerpt 都承认这一缺口。
排查
- EV-003 从不运行。 它的词表是空的。民事、行政和刑事诉讼的证据种类各不相同,所以插件不会强加一份清单。
- EV-004 明明在期限内提交却仍然触发。 规则不认识期限,它只比较 acquisition 和 submission 两个单元格。如果 acquisition 确实晚于 submission,那两者必有一个填错了。
- EV-002 在来源显而易见的 exhibit 上触发。 source 单元格留空,意味着清单没有说明 exhibit 来自哪里,而说明来源正是清单必须做到的事。
- EV-005 在同一个 exhibit 编号上触发两次。 用同一个编号给补充材料包编号很常见;请改正编号,不要靠 remark 蒙混过去。
- 插件装上了,工具却始终不出现。 检查 main 是否指向 lib/index.mjs,以及 pnpm run build 是否真的生成了它;main 写错会让加载器静默跳过入口。
- dsh plugin add 以不兼容为由拒绝该包。 peer 范围覆盖 0.1.x 和 0.2.x;如果你的运行时不在这个范围内,可以显式授予豁免: dsh plugin --profile <name> allow-version dsh-evidence-check@0.1.0 --dsh-version <runtime> --accept-risk
- check 报告 manifest-peers 失败。 静态检查器比对的是一个硬编码的 peer 范围,它早于 0.2 系列。运行时会在安装时强制校验 peer 兼容性,所以声明的范围才是正确的;这是 dsh-plugin-dev 里已知的上游问题。
Development
pnpm install
pnpm run typecheck # tsc --noEmit
pnpm test # vitest, the shared table-plugin suite plus paired fixtures
pnpm run build # tsdown -> lib/index.mjs + lib/index.d.mts
node ../scripts/sync-shared.mjs dsh-evidence-check # refresh src/shared from ../_shared
插件是纯数据的:src/model.ts 声明表格结构,共享套件提供读取器和检查引擎,规则包声明每一项检查。
License
Apache License 2.0 © 2026 dsh-evidence-check contributors.预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
PerryLink/dsh-evidence-check
检查证据清单字段完整与编号重复,仅提示差异
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,330已汉化DeepSeek 客户端
74.5
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,826已汉化DSH
72.2
花束设计alchaincyf/huashu-design
一句话生成网页、原型、PPT 与信息图等可交付设计
★ 28,638已汉化DSH
71.7
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,349已汉化DSH
71.6
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,311已汉化DSH
71.4
这是你的仓库?认领条目