逐项核对评分表得分、引文与算术是否自洽
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/8 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add PerryLink/dsh-essay-rubric-check该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · tool
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 27 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/11/4) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-package-manifest@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 逐项核对评分表得分
- 核对引文与算术自洽
- 仅提示差异
作文评分表核对:依据《普通高中语文课程标准》《普通高等学校招生全国统一考试评卷工作规定》。仅提示差异,不作出定性结论。
README
由 DeepSeek 最新模型翻译生成dsh-essay-rubric-check — 作文评分表检查:评分项得分、引文证据与分数算术
dsh-essay-rubric-check 读取一份评分表——学生表头加上每个评分项一行——检查这份表自身的完整性、算术和证据链:每个评分项是否记录了名称或等级描述,得分是否落在该评分项的最高分之内,各评分项得分合计是否等于评分表总分,每个已评分的评分项是否留下引用摘录,评分项编号是否唯一,以及表头是否写明学生和评分表版本。
它能回答什么
| 你问 | 它回答 |
| 某个评分项的得分超过了它写明的最高分。会怎样? | ER-002 比较 score 与 maxScore,报出得分超过最高分的那一行。它只比较这两个数字,不判断这个得分是否适合这篇作文:插件根本看不到作文。 |
| 为什么总分规则出现在 skipped 里,什么都没报? | ER-003 出厂时故意不配置。它的表达式指向占位字段 dimensionRef,所以什么都不加总,规则把自己报进 skipped。在 expression.fields 里写上你自己评分表的维度字段,或者改成把明细行加总后与表头总分比对,它就会运行。插件不会替你假设总分怎么组成。 |
| 同一个评分项编号出现在评分表的两行上。 | ER-005 报出 criterionNo 里的重复值,因为重复会让一个评分项看起来登记了两次。
展开完整文档(README 剩余 1 节)
dsh-essay-rubric-check — 作文评分表检查:评分项得分、引文证据与分数算术
dsh-essay-rubric-check 读取一份评分表——学生表头加上每个评分项一行——检查这份表自身的完整性、算术和证据链:每个评分项是否记录了名称或等级描述,得分是否落在该评分项的最高分之内,各评分项得分合计是否等于评分表总分,每个已评分的评分项是否留下引用摘录,评分项编号是否唯一,以及表头是否写明学生和评分表版本。
它能回答什么
| 你问 | 它回答 |
| 某个评分项的得分超过了它写明的最高分。会怎样? | ER-002 比较 score 与 maxScore,报出得分超过最高分的那一行。它只比较这两个数字,不判断这个得分是否适合这篇作文:插件根本看不到作文。 |
| 为什么总分规则出现在 skipped 里,什么都没报? | ER-003 出厂时故意不配置。它的表达式指向占位字段 dimensionRef,所以什么都不加总,规则把自己报进 skipped。在 expression.fields 里写上你自己评分表的维度字段,或者改成把明细行加总后与表头总分比对,它就会运行。插件不会替你假设总分怎么组成。 |
| 同一个评分项编号出现在评分表的两行上。 | ER-005 报出 criterionNo 里的重复值,因为重复会让一个评分项看起来登记了两次。比较时忽略空白。把一个维度分档评分是合理形态:给每一档各自编号,或者关掉这条规则。 |
| 某个评分项有得分,却没有从作文里引用的摘录。 | ER-004 报出那一行:只有 score 填了,它才要求 evidenceQuote。它检查定位单元格是否填了,不检查引文是否真出自那篇作文——编得像样的引文能通过这个插件。 |
| 评分项名称和它的等级描述都是空的。 | ER-001 要求一行上 criterion 和 levelDesc 至少填一个,报出两者都空的那一行。它只检查其中一个填了,不判断评分表的评分项是否合理、等级描述是否贴切。 |
| 表头没写这份表属于哪个学生,也没写用了哪个评分表版本。 | ER-006 要求表头同时声明 student 和 rubricVersion,报出缺的那个,因为分数无法归属,评分表版本之间也不能直接比较。两者都是表头字段,整份表检查一次,不逐行检查。如果你的表单还在表头记录评分日期,把 markedAt 加进规则的 fields。 |
它遵循的标准
| 文件 | 编号 | 引用它的规则 |
| 《普通高中语文课程标准》 | 现行版本与条号本次未核实 | ER-001, ER-002, ER-003, ER-005, ER-006 |
| 《普通高等学校招生全国统一考试评卷工作规定》 | 现行版本与条号本次未核实 | ER-004 |
边界: 这个插件检查作文量表评分表的算术与证据——每条评分标准是否写明自身及其等级描述,分数是否超过该评分标准的满分,各评分标准之和是否等于量表的分数,已评分的评分标准是否留下作文中的引用片段,评分标准编号是否唯一,以及评分表是否写明学生和量表版本。它不判断作文写得好不好、分数对不对、评语是否贴切,也不判断某条评语是否该复核。
⚠️ 这个插件能做什么、不能做什么
它永远看不到作文。 所以它能检查分数指向一段引用——但永远无法检查引用是否出自那篇作文,也永远无法检查分数是否适合这篇作文。ER-004 的说明里写明了这一点,疑难解答部分也重复了:编造得看似合理的引用能通过这个插件。
ER-003 刻意保持未配置。 「哪些行相加等于总分」取决于你的量表如何划分维度——内容 / 结构 / 语言 / 书写,还是别的——所以表达式指向一个占位字段,什么都不计算。把 expression.fields 改成你量表的维度字段,或者改用逐行求和 + 表头总分,规则就会运行;否则它会在 skipped 里报告自己。插件不会替你假设总分由哪些部分构成。
要求每条已评分的评分标准都附引用,反映的是一条编辑规则——评分要可复核——而不是某份标准里的规定。这就是 ER-004 为 warn 的原因,也是它的说明里解释如何放宽的原因:如果你量表里某些维度不需要引用,就禁用这条规则,或把这些维度拆出去。
规则包里的每处 excerpt 都明说了条款原文未能获取。 这套制度存在于语文课程标准、国家评分规则和每所学校自己的量表里。核验过程既没取到条款原文,也没取到任何量表,所以规则包在 excerpt 字段里直接写明这一缺口,并把每条规则都保持在 warn 或 info。拿到原文后,把每处 excerpt 换成真实条款,并把 kind 提升为 direct。
兼容性
| 层面 | 状态 |
| 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 |
它做什么
注册 essay_rubric_check 工具。它读取一张评分表——学生表头加每条评分标准一行——套用带版本的规则包,返回一份报告。
| 规则 | 检查内容 | 严重级别 | 依据类型 |
| ER-001 | 记录评分标准及其等级描述 | warn | principle |
| ER-002 | 得分不超过该评分标准的满分 | warn | principle |
| ER-003 | 各评分标准得分合计等于量表总分(默认未配置) | warn | principle |
| ER-004 | 已打分的评分标准留下原文摘录 | warn | principle |
| ER-005 | 评分标准编号唯一 | warn | principle |
| ER-006 | 评分表写明考生与量表版本 | warn | principle |
安装
dsh plugin --profile <name> add dsh-essay-rubric-check
dsh --profile <name> --dump-config | grep 'dsh-essay-rubric-check'
配置
| 键 | 类型 | 默认值 | 说明 |
| rulesFile | string | rules/essay-rubric-check.yaml | 规则包路径,相对于包根目录 |
| disabledRules | string[] | [] | 停止运行的规则 id;每个都会出现在 skipped 中 |
| onlyRules | string[] | [] | 只运行这些规则 id;留空则运行全部规则 |
| skipNotes | string | "" | 追加到每条 skipped 原因后的备注 |
| timeoutMs | number | 120000 | 协作式工具超时预算 |
几个值得了解的规则级参数:
- ER-003 expression —— 必须先配置,否则它什么也不做。 你可以直接写出各维度字段名
({ "op": "sum", "fields": ["contentScore", "languageScore"] }),也可以把明细行加总后与表头总分比对;
随包附带的表达式指向一个占位字段,不会算出任何结果。
- ER-002 leftField / rightField / relation —— 比较关系,默认 score <= maxScore。
- ER-004 conditionField / requiredFields —— 触发引用要求。
材料格式
工具接受 JSON 或 YAML:
student: 某某考生 assignment: 某某作文题 rubricName: 某某作文评分量表 rubricVersion: 2026 版 totalScore: '18' fullScore: '20' markedAt: 2026-04-10 rows:
- { 序号: '1', 评分项: 内容, 分值: '20',
等级描述: 切合题意,中心突出,内容充实,感情真挚(一类卷 17—20 分), 得分: '18', 原文定位: '"他把那盏灯擦了三遍,直到玻璃上映出自己的影子。"', 所在段落: 第 4 段, 评语: 以细节支撑情感,内容充实,符合一类卷标准。, 评分人: 王老师 }
列名匹配不区分大小写,并忽略空格、下划线和连字符;评分表自己的列名会保留,因此每条发现都会写明它读取的是哪一列。
规则来源
规则数据放在 rules/essay-rubric-check.yaml。规则包头部完整说明了引用依据的缺口,每条规则的 note 会重复其中与该规则相关的部分。加载时的守卫通常会强制「摘录必须是至少八个字符的真实引用」,但它分不清引用和描述——所以这个规则包依赖头部说明、逐条规则的 note,以及一个断言每条 excerpt 都承认该缺口的测试。
故障排查
- ER-003 报告自己已被跳过。 它的表达式仍指向占位字段。请配置各维度字段,或改用明细行加总的形式——插件不会替你假设总分的构成。
- ER-004 通过了一条编造的引文。 它只检查引文是否存在,从不检查它是否出现在文章里。要对比就得有文章,而插件看不到文章。
- ER-004 在一条不需要引文的评分标准上触发。 关掉这条规则,或者把那条评分标准拆成独立的评分量表。
- ER-002 在分数等于上限时触发。 相等是允许的;只有分数更大才会报出问题。
- ER-005 在一个维度出现两行时触发。 同一维度内的分数段行是合法的——把它们分开编号。
- 插件装上了,但工具始终不出现。 检查 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-essay-rubric-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-essay-rubric-check # refresh src/shared from ../_shared
插件是纯数据的:src/model.ts 声明表格形状,共享套件提供读取器和检查引擎,规则包声明每一项检查。
License
Apache License 2.0 © 2026 dsh-essay-rubric-check contributors.预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
PerryLink/dsh-essay-rubric-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
这是你的仓库?认领条目