Dafny Verifier

集成于MCP的Dafny代码验证工具

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:Dafny Verifier。
它的用途是:集成于MCP的Dafny代码验证工具
完整的 Skill 内容见:https://321skill.com/skills/dafny-verifier/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“请用 Dafny Verifier 检查一下这段计算最大公约数的 Dafny 代码是否正确。” 它会调用该 Skill 对代码进行形式化验证,并返回验证结果,指出代码中的规范(如 ensures 子句)是否得到证明,或哪里存在反例。接着,你可以根据反馈与 AI 讨论如何修改规范或实现。

介绍

Dafny Verifier 是一个集成于模型上下文协议(MCP)的强大工具,专门用于验证使用 Dafny 语言编写的程序。Dafny 是一种支持形式化验证的编程语言,该工具通过 MCP 集成,能够直接在开发环境中对 Dafny 代码进行形式化验证,检查其逻辑正确性、函数行为是否符合规范以及是否存在运行时错误。

使用时,开发者只需在支持 MCP 的 AI 助手(如 Claude Desktop)中安装此 Skill,即可在对话中直接请求对 Dafny 代码片段或文件进行验证。工具会调用后端的 Dafny 验证器,分析代码中的前置条件、后置条件、循环不变式等规范,并返回详细的验证结果,指出哪些部分已验证通过,哪些部分存在矛盾或无法证明。

它主要适合使用 Dafny 进行软件开发或研究的后端开发、全栈开发以及学术研究者。这些用户通常需要构建高可靠性的系统(如智能合约、安全协议、关键算法)或进行程序验证相关的研究,对代码的正确性有严苛要求。

建议在编写包含复杂逻辑或不变量(invariants)的 Dafny 模块时使用此工具进行即时验证,以快速定位规范与实现之间的偏差。由于形式化验证可能消耗较多计算资源,对于非常庞大或复杂的代码,建议分模块进行验证。同时,用户需具备基本的 Dafny 语言和形式化方法知识,才能正确编写规范并理解验证输出。

核心特点

本工具是首个深度集成于模型上下文协议(MCP)的 Dafny 验证工具,允许用户在与 AI 助手的自然对话中无缝触发代码验证,无需离开对话上下文或手动切换至命令行。它直接将验证结果以结构化、易于理解的方式返回给 AI 助手,便于进行后续的解释和代码修正讨论。

注意事项

该工具仅适用于 Dafny 语言代码的验证,不支持其他编程语言的形式化验证或通用代码质量检查。

常见问题

Dafny Verifier 能验证什么?

它能验证 Dafny 代码中的方法规范(如前置/后置条件)、循环不变式、断言等,确保代码逻辑符合其形式化规范。

需要预先安装 Dafny 吗?

通常不需要,该 Skill 通过 MCP 服务器连接后端验证服务,但具体依赖请参考其安装说明。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/dafny-verifier/raw/index.md 读取 Dafny Verifier 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。