math-lean
by fisfzy
dsh-lean-prover:Lean 内核验证的数学推理插件(DSH Cordis)
dsh-lean-prover: Lean kernel-verified math reasoning plugin (DSH Cordis)
安装
dsh plugin --profile web add github:fisfzy/math-leanGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
DSH(Cordis)单插件:把数学/物理推导结果钉死在 Lean 内核 clean replay 验证上。 任何 Agent 声称的结果都必须通过可复现、防造假的 Lean 验证才被接受;推导由 Agent/外部工具 产出,本插件只负责"裁定 + 证据存证"。
核心信念
- Lean 内核 clean replay 是唯一最终数学权威。
- 反作弊是"权威复核"而非文本扫描:Lean 的
#print axioms <name>会报告目标定理依赖的 axiom 集;任何依赖sorryAx(sorry/admit)、*(unsound)或未授权 axiom 的候选都会被拒绝——即使它 源码里没有字面sorry(例如axiom bogus+theorem := bogus编译退出码 0 且无警告,仍会被拦)。 - statement 锁定:解析出锁定的 theorem 名 + 命题类型,候选必须声明同名同型(candidate binding)才放行, 再经 Lean 权威验证,防"把难的定理偷偷改简单/改名"。
- import 白名单真正执行:候选的
import必须落在领域允许集(baseline Std/Mathlib)内,超出的拒绝。 - 不可跳步 + 强签名产物链 + 领域覆盖校验:保证每个环节真的挂载了所需检查。
安全边界(诚实声明)
- 本机无 OS 级沙箱(无 docker / bubblewrap)。Lean 会在验证
.lean时执行候选代码里的#eval,因此候选可借此执行宿主命令。 - 当前采取的软件层 fail-closed 拦截(第 7 道 anti-cheat 硬门)会拒绝候选中的
#eval、#reduce/#compute、run_cmd、unsafe、IO./System./文件读写等执行/逃逸向量,宁误杀 也不放行。 - 要在受信环境里运行,部署者必须在容器/bubblewrap 中运行 lean runner(例如
bwrap --ro-bind /some/readonly-elan /usr/bin/lean ...+ 独立可写工作目录)。这是 "真正隔离"的正确形态,当前代码保留了 runner 见lean/lean-runner.ts的抽象点以便接入。
关键机制(对应"可靠性")
| 机制 | 文件 | 作用 |
|---|---|---|
| M1 状态机不可跳步 | src/run/run-state.ts |
推导必须从 lock 开始顺序走 |
| M2 强签名产物链 | src/run/artifact-chain.ts |
每个产物带 SHA-256 + 产出插件 id,防改/防混挂 |
| M3 领域覆盖校验 | src/domain/domain-registry.ts |
领域声明的必需检查缺一个 → 拒跑 |
| M4 只读检查+唯一裁定器 | src/run/orchestrator.ts |
只有 orchestrator 能写最终结论 |
| M5 Lean 内核权威 + 反作弊 | src/lean/* |
lean 真实编译 + #print axioms 权威门 + import 白名单 |
领域
- linear_algebra:纯数学验证闭环(必需: statement_lock / anti_cheat / clean_replay)。
- fluid_mechanics:物理领域(在形式上再加
dimensional_consistency域检查——该检查是提示, 不是证明权威,可否决但不可认证)。
运行
npm install # 或 corepack pnpm install
npm run typecheck # tsc
npm test # node --import tsx/esm test/run.smoke.ts
node --import tsx/esm test/acceptance.ts # 8 条验收断言 A1–A7(含真实 Lean)
node --import tsx/esm test/anti-cheat.ts # 16 条反作弊权威断言(#print axioms + import 白名单 + #eval 逃逸)
node --import tsx/esm test/dimension.ts # 7 条量纲一致性断言
node --import tsx/esm test/fluid-domain.ts # 3 条流体域门断言
node --import tsx/esm test/multi-agent.ts # 4 条多 agent 编排断言
node --import tsx/esm test/research.ts # 4 条第多 agent 端到端(含修复循环,agent 意见不能替代内核)
node --import tsx/esm test/project-mode.ts # 2 条 lake 项目模式断言
node --import tsx/esm test/tool-registration.ts # DSH ctx.tools 注册契约
node --import tsx/esm demo/verify-a5.ts # 单文件真实验证 2+2=4
node --import tsx/esm demo/research.ts # 完整工作台:多 agent 编排 + Lean 裁定
前提:本机有 Lean 工具链(lean/lake 在 ~/.elan/bin)。已实测 Lean 4.27.0 + Lake 5.0.0。
mathlib 未随附,需 lake new + 拉取 mathlib 才能验证 mathlib 依赖的定理。
DSH 集成(待登记)
- 工具:
dsh_lean_lock_statement、dsh_lean_verify、dsh_lean_domain_register、dsh_lean_run_status、dsh_lean_evidence_export。 - 入口:
src/index.ts的bootstrapTools(api, register)按 DSHctx.tools.register(defineTool(..))契约发出这 5 个工具。 - 要在 GRAPH 里真正可用,需 link DSH 的
@deepseek-ai/dsh-tools+ vendorcordis,并在~/.dsh/cordis.patch.yml注册插件入口,再重载/重启dsh web。
已扩展的能力(完善工作台进展)
- 权威反作弊(第 7 道硬门):拒绝
#eval、#reduce/#compute、run_cmd、unsafe、IO./System./文件读写等宿主执行/逃逸向量(见test/anti-cheat.ts16 断言)。 - 真实量纲一致门(fluid 域):
-- @check_dim: LHS == RHS注释会被解析成基础量纲向量 (M, L, T)并核对;能量 vs 动量等不一致会被拒绝(见test/dimension.ts7 断言 +test/fluid-domain.ts3 断言)。 - Lake 项目模式:
verifyProject(runId, projectRoot, target)以整项目lake build为权威 (见demo/lake-project/自含模板,无 mathlib 依赖;test/project-mode.ts)。 - 诚实边界:本机无 docker/bubblewrap,OS 级沙箱需部署到有容器能力的宿主;整项目模式不单独
断言"某定理被证明"(用单文件模式+
#print axioms做该断言)。
原始 README: https://github.com/Fisfzy/math-lean/blob/main/README.md ↗
同类插件
查看全部 →
dsh-anchored-standard
两阶段 DeepSeek Harness 预设:先 Minimal 对齐的 bootstrap,再切完整 Standard 工具(Project2 98/99)

PicGo-Core
极致的图片上传引擎,CLI 与 API 双支持

awesome-deepseek-harness
DeepSeek Harness(DSH)及其优秀社区插件的精选指南。

awesome-deepseek-harness
DeepSeek Harness (DSH)生态系统:来自dsh-external/hub和公共dsh-plugin主题的精选插件、工具和基础设施。

AI-Novel-Writer
本地优先 AI 小说创作工作台,提供 Windows/macOS 桌面版与 DeepSeek Harness 插件开发预览,支持角色、大纲、章节蓝图、审稿修稿和本地模型。

mcp-for-stata
MCP-for-Stata:把 Stata 集成进你的 agent