mcpField
A
antu

antu

本地服务
github.com/zh-xx法律与政务8今天更新

关于 antu

Antu 将 JSON 文档转换为独立 HTML 法律图示,供法律团队和 Agent 整理案件材料。其确定性渲染器支持事实、程序、关系和实验性的论证图示,并可离线查看和复现结果。

主要功能

  1. 01根据 JSON 绘制法律图示
  2. 02四种图示类型及可选视图
  3. 03生成可离线使用的独立 HTML
  4. 04提供四种视觉主题
  5. 05在应用中校验 JSON 并渲染
  6. 06提供 Agent Skill 和 MCP 工具

适用场景

  1. 01用事实时间线梳理案件事件
  2. 02展示程序路径及其分支
  3. 03说明当事方及法律关系
  4. 04归档或分享离线法律图示

MCP 相关

@zh-xx/antu 软件包提供 MCP 服务,包含规范、指南、示例、校验、布局、渲染、预览和版本信息等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"zh-xx-antu": {
"command": "npx",
"args": [
"-y",
"@zh-xx/antu"
]
}
}
}
启动命令npx -y @zh-xx/antu

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@zh-xx/antu0.17.0

工具

8

收录的工具列表 · 更新于 3 天前

参数类型必填说明
filestring否要获取的文件,例如 examples/agent/fact/1-minimal.en.json。省略则列出文件
typestring否图表类型,默认是 fact(事实图)
groupenum否要列出的组:agent(默认,小型示例)/ real(真实案例)/ raw(源材料,并非示例)agent | real | raw

详细介绍

Antu

Verify CodeQL OpenSSF Scorecard Release npm License: AGPL-3.0-or-later Node Status: 0.x Demo PRs welcome

中文 | English

Antu 可将一个 JSON 文档转换为一张独立的 HTML 法律图表。页面是一个约 2.3 MB 的单文件,不会发起网络请求,也不需要服务器;它可以离线打开,也可以归档、打印或作为附件发送。AI Agent 可以阅读案件材料并编写 JSON;随后由引擎据此绘制图表,同一份 JSON 始终会生成相同的图表。Antu 目前处于 0.x 版本,关系图和论证图的格式仍为草案。

图表类型

四种法律内容类型,各有多种呈现方式。页面中的选择器可在不同方式间切换;JSON 中没有选择方式的设置。

关系关系图
关系图
焦点视图
焦点视图
关系矩阵
关系矩阵
股权树
股权树
权力关系图
权力关系图
关联方列表
关联方列表
关系路径
关系路径
事实时间线
时间线
编年记录
编年记录
时间刻度
时间刻度
程序流程图
流程图
路线图
路线图
论证
(实验性)
推理树
推理树

关系图(同一份 JSON 的七种绘制方式)展示当事方、角色和法律关系;事实图展示时间、参与者以及事件经过; 程序图展示程序路径及其分支;论证图展示依据规范和事实得出的结论。关系图和论证图的模式仍处于草案阶段,论证图目前仍属实验性功能,且已暂停开发。

四种外观称为主题:document(黑白方正,适用于打印和归档;默认主题)、modern (圆角、浅色)、legal(海军蓝)和 dark(深色背景上的现代风格,适用于深色宿主)。读者可以在 页面中切换主题,也可以通过调用固定页面主题。主题仅作用于图表;dark 还会使周围的界面外壳变暗。参见 spec/theme.md。

用法

npm install
npm run diagram -- examples/fact/neighbour-corridor-charging.en.json

页面会与 JSON 文件写在同一目录。页面界面语言通过 ?lang=en 或 ?lang=zh 设置;案件内容不会翻译。

原则

Agent ──> key information ──> one JSON ──> engine ──> diagram
角色职责确定性
模型阅读文档、提取事实、理解含义每次运行的结果可能不同
引擎根据规范绘制图表无论由哪个模型编写,相同的 JSON 都会生成相同的图表
JSON 规范两者之间唯一的接口有版本管理(参见 spec/versioning.md)

引擎不编写 JSON,Agent 也不绘图。模型将信息写入 JSON;引擎负责绘制。JSON 规范本身就是一份规范,原因有四:

  1. 通用图表语法建立在节点、边和状态机之上,无法表达程序上的立场或证据来源。
  2. 图表不取决于由哪个模型提取信息。
  3. 无论何时、在何种环境下,相同的 JSON 都会生成相同的图表,因此交给法院或对方的图表可以复现。
  4. 提取事实时会记录来源:每项事实都注明所依据的文档、页码和条款,图表也会展示这些信息。材料本身既不会打包,也不会添加链接。

Agent 集成

Agent 用于事实图表的参考资料包括一份约 3.4k 个字符的字段表,以及一份约 6.3k 个字符的机制说明。

Skill
npx skills add zh-xx/Antu -g

Skill 位于 skills/antu/;每个版本发布也会附带 antu-skill-<version>.zip。

命令行每天向 npm 注册表查询一次是否有更新版本的 Antu(仅发送一个 GET 请求,不涉及任何图表),如果有,则在输出末尾显示通知。设置 ANTU_NO_UPDATE_NOTIFIER=1 可关闭此功能。

MCP

MCP 服务是 npm 包 @zh-xx/antu,在 MCP 注册表中的注册名为 io.github.zh-xx/antu。

{
  "mcpServers": {
    "antu": {
      "command": "npx",
      "args": ["-y", "-p", "@zh-xx/antu@latest", "antu-mcp"]
    }
  }
}

工具:antu_schema、antu_guide、antu_examples、antu_validate、antu_layout、antu_render、antu_preview、antu_versions。

DeepSeek Harness(DSH)

原生 DSH 插件 @zh-xx/antu-dsh(Host 工具 + 带有绘图方式选择器的聊天卡片)已发布到 npm:运行 dsh plugin --profile <name> add @zh-xx/antu-dsh,然后重启 DSH。它需要 DSH 0.2.0-rc.2 或更高版本。工作原理和测试方法见 spec/dsh-plugin.md 和 tools/dsh/README.md。无法使用该插件的 profile 仍可通过仅含配置的 bundle 接入 antu-mcp;具体方法及其限制见 tools/dsh/README.md。

在应用程序中使用

同一个包为应用程序自己的代码提供三个入口(spec/embed.md):

import { mount } from '@zh-xx/antu/embed'          // draw a diagram inside your page, in a shadow root
import { validate } from '@zh-xx/antu/validate'    // check the JSON your model wrote; each error names its field
import { renderHtml } from '@zh-xx/antu/html'      // the self-contained page as a string (Node)

const diagram = mount(element, spec, { lang: 'en', onEvent: (e) => console.log(e) })

文档

安全

  • 如需报告漏洞,请使用 SECURITY.md 中说明的私密报告方式;请勿为此提交公开问题。
  • npm 上的每个 @zh-xx/antu 和 @zh-xx/antu-dsh 版本,均由 GitHub Actions 通过 npm 的可信发布者发布,并带有来源证明:npm 上的版本页面会链接回发布该版本的提交和工作流运行记录。deps.dev 显示相同记录,以及已知的安全公告(截至本文撰写时,没有)和许可证。
  • 使用 Antu 创建的页面可离线运行,不会向任何地方发送任何内容;命令行每天会询问一次是否存在更新版本,不会发送图表中的任何内容(设置 ANTU_NO_UPDATE_NOTIFIER=1 可关闭此功能)。

许可证

版权所有 (C) 2026 Ji Cheng。

Antu 是自由软件,采用 GNU Affero 通用公共许可证第 3 版或任何更高版本 授权(LICENSE,SPDX AGPL-3.0-or-later)。简而言之:你可以使用、研究、修改和分享它,包括用于商业用途。如果你分发修改后的版本,或允许他人通过网络使用它(例如作为托管服务),则必须以相同许可证发布你的修改,保留版权和许可证声明,并提供源代码。不提供任何担保。本摘要不是许可证;许可证文本才是。

  • 附加许可(AGPL 第 7 条)。 使用 Antu 创建的页面包含 Antu 的代码,以及你提供的图表数据。图表数据以及你根据自己的材料绘制的图表内容不属于 Antu,也不受本许可证约束:你可以将它们保密、发布,或按自己选择的任何条款出售。本许可证涵盖页面中的 Antu 代码,页面中的声明必须随代码保留。每个页面和命令行的顶部都包含相同文本。
  • 如果你的公司或应用商店不接受 AGPL 软件,或要求在其上架或安装相关内容前提供额外声明,这是他们的政策,项目本身无法改变。请在问题中告诉我们你的需求;使用 Antu 创建的页面和数据归你所有(参见上面的附加许可)。
  • 仓库中的所有内容(代码、示例、规格说明和指南)均采用相同许可证,但下文列出的内容除外。
  • 页面和命令行中其他项目的代码保留其自身许可证。相关声明见 skills/antu/THIRD-PARTY-NOTICES.md,也位于每个页面和命令行的顶部,并与 Antu 的许可证及该版本的源代码位置一同列出。
  • examples/ 中的案例和 examples/raw/ 中的判决文本均为虚构内容:其中的人物、公司、日期、金额和条款均为 Antu 编造,与任何真实案例都不相符。它们采用相同许可证。
  • 0.5.0 及更早版本发布时未附带许可证文件。许可证自 0.5.1 起适用。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。