关于 passwerk
passwerk 是面向需编制欧盟电池护照的供应商的离线编译工具,可将供应商文件转换为经过验证的 AAS 输出和附有法规来源的缺项报告,并提供 MCP、CLI、库和浏览器界面。
主要功能
- 01导入 PDF、表格和文本文件
- 02映射并验证护照数据
- 03生成附来源的缺项报告
- 04导出 AAS JSON、AASX 和 HTML
- 05生成 UID、GS1 Digital Link 和 QR 载体
- 06离线运行且无需 API 密钥
适用场景
- 01将供应商文件编制为护照
- 02按 IDTA 02035 检查草稿
- 03识别护照缺失数据
- 04在 CI 中把关护照审计
MCP 相关
MCP 服务通过 stdio 和 Streamable HTTP 提供十二种工具、参考资源、工作流提示词及工作台 MCP App,可离线运行且不调用网络或模型。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @passwerk/serverPASSWERK_ROOTDirectory ingest_documents may read and emit_passport may write (default: the working directory)PASSWERK_LOG_LEVELinfo (default) or debug; JSON lines on stderr本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
12收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| lang | enum | 否 | 文本摘要的语言(默认值:en)de | en |
| paths | array | 否 | 服务器文件系统上的文件或目录(目录会包含其中的 PDF、XLSX、CSV、DOCX 和 TXT 文件,不递归)。本地安装时优先使用 |
| detail | enum | 否 | summary(默认值):每个文档的计数和 bundleId;full:完整的 DocumentBundlesummary | full |
| inline | array | 否 | 以 base64 编码的文档字节数据,适用于无法传递路径的宿主 |
| limits | object | 否 | IngestLimits 的部分覆盖(maxInputBytes、maxCells 等) |
详细介绍
Passwerk
离线欧盟电池护照编译器。
导入供应商杂乱的文档(BOM、Excel 导出文件、能源账单、供应商声明),即可获得符合官方 AAS 格式(IDTA 02035-1 至 -7)的数字电池护照,以及一份附有法律依据的缺项报告,说明仍缺少哪些内容。
完全离线。无需 API 密钥。兼容各种 Agent:提供适用于 Claude Desktop、Claude Code、Codex、Cursor 和 OpenCode 的 MCP 服务、可脚本化的命令行、纯 TypeScript 库,以及带二维码预览的客户端 Web 应用。

Claude Desktop 搭配 .mcpb 包:模型导入 Musterwerk 文档、进行映射和验证,然后在聊天中打开工作台。完整分辨率 MP4,时长 71 秒。
快速开始
让你的 Agent 安装它。 将以下内容粘贴到 Claude Code、Codex、Cursor、OpenCode 或其他编码 Agent 中。它会检查 Node,根据宿主环境选择合适的命令,安装 passwerk,并告诉你如何检查是否正常运行:
Install passwerk for me by following
https://raw.githubusercontent.com/ShahriarBijoy/passwerk/main/docs/install/agent.md
也可以自行运行命令(Node >= 22.13):
| 宿主 | 技能和工具(插件) | 仅工具 |
|---|---|---|
| Claude Code | claude plugin marketplace add ShahriarBijoy/passwerkclaude plugin install passwerk@passwerk | claude mcp add passwerk --scope user -- npx -y @passwerk/server |
| Codex | codex plugin marketplace add ShahriarBijoy/passwerkcodex plugin add passwerk@passwerk | codex mcp add passwerk -- npx -y @passwerk/server |
之后开启新会话,然后让 Agent 调用 list_capabilities。
**Claude Desktop:**从发布页面下载 passwerk-<version>.mcpb 并打开。Claude Desktop 会安装服务、询问你的文档文件夹,重启后即可使用 passwerk 的 12 个工具。详情见 docs/install/claude-desktop.md。
其他所有环境:
npx -y @passwerk/server # MCP server over stdio, offline, no keys
npx -y @passwerk/cli audit passport.draft.json
docker run -e PASSWERK_AUTH_TOKEN=$(openssl rand -hex 32) -p 127.0.0.1:3777:3777 ghcr.io/shahriarbijoy/passwerk
Codex、Cursor、OpenCode 和纯 HTTP 的宿主配置示例见 docs/install。Agent 工作流(导入、映射、验证、修复、生成)由捆绑的技能 skills/passwerk 提供指导。
为什么
《欧盟条例 2023/1542》第 77 条规定:自 2027 年 2 月 18 日起,所有在欧盟市场投放的电动汽车、轻型交通工具和容量超过 2 kWh 的工业电池,都需要数字电池护照。护照包含约 90 个数据点,这些数据散落在供应商的 ERP、电子表格和 PDF 中。所有商业平台都面向 OEM 和 Tier-1 供应商。passwerk 为收到数据请求、却没有工具可用于回复的 Tier-2 和中型企业供应商提供了入门途径。
符合性通过测量得出,而非口头宣称。每次 CI 运行都会将生成的黄金护照通过官方 aas-test-engines 预言机进行重放(见 docs/CONFORMANCE.md);徽章显示与该预言机的判定一致性,包括预期失败。对未见过的供应商文档的映射质量评分见 docs/EVALUATION.md。主权测试和 --network none Docker 任务可证明不会进行任何网络调用。以上均不代表通过电池护照合规认证;模板(L3)和合理性(L4)检查是 passwerk 自有的。
Packages
| Package | 作用 |
|---|---|
@passwerk/rules | 打包并经过校验和验证的 IDTA 02035 模板、AAS 架构、EC 数据点矩阵、属性知识库(DE/EN)、法律时间线 |
@passwerk/core | 不依赖 MCP 的库:导入(PDF、XLSX、DOCX、CSV、TXT)、提取、映射、验证(4 层)、差距报告、输出 AAS JSON / AASX / HTML、数据载体(UID、GS1 Digital Link、QR) |
@passwerk/server | 通过 stdio 和 Streamable HTTP 提供的 MCP 服务:十二个工具、参考资源、工作流提示词,以及作为 MCP App 的工作台 |
@passwerk/cli | passwerk audit | extract | emit | gaps | obligations | carrier | tools | chat,支持适用于 CI 的退出码(参考) |
@passwerk/web | 客户端 Web 应用:项目、文档、事实、审查、差距、导出 |
@passwerk/mcp-app | 在 Claude Desktop 的 iframe 中运行的同一工作台,由 review_passport 打开 |
rules、core、server 和 cli 绝不会进行网络调用或模型调用。两个例外均为可选功能,且需要自带密钥:Web 应用的映射辅助功能,它只会接触标签和值,且只会给属性命名;以及 passwerk chat 演示循环。将辅助功能指向 http://localhost:11434/v1,即可通过 Ollama 运行,数据不会有任何字节离开本机。
命令行
CLI 与 MCP 服务运行相同的工具,在进程内离线执行,并提供 CI 任务可用于门禁判断的退出码(audit:0 表示有效,1 表示有警告,2 表示无效;gaps:没有未解决的必需数据点时返回 0)。
passwerk obligations --type EV --role manufacturer --placed-on-market 2027-06-01
passwerk extract ./supplier-docs --category EV --out facts.json
passwerk audit passport.draft.json
passwerk gaps passport.draft.json --lang de
passwerk emit passport.draft.json --out ./passport
passwerk carrier passport.draft.json --out passport.qr.svg
Web 应用
apps/web 在浏览器中运行完整流程,分为六个步骤:项目、文档、事实、审查、差距和导出。文档不会离开浏览器;自动保存会将你的决定、事实和提案保存到 IndexedDB,而不会保存上传的文件。在 Claude Desktop 中,同一工作台会作为固定高度的工具界面运行于宿主的 iframe 中。
pnpm install && pnpm build
pnpm --filter @passwerk/web dev
开发
需要 Node 22.13 或更高版本,以及 pnpm 10。
pnpm install
pnpm check # lint + typecheck + test
pnpm build
pnpm oracle # replay golden passports through aas-test-engines (needs uv)
面向人类和编码 Agent 的贡献指南位于 AGENTS.md。架构和范围见 docs/BUILD_PLAN.md,所有不言自明的决策见 docs/DECISIONS.md。
安全与隐私
PRIVACY.md 说明 passwerk 会发送和存储哪些内容,并列出用于确保相关行为的测试:除非启用两个可选模型功能之一,否则任何内容都不会离开本机。SECURITY.md 说明如何私下报告漏洞,以及信任边界所在的位置(首先是文档解析器)。
非法律建议
passwerk 会引用其实施的法规和标准,但它是工具,不是律师。它输出的每项法律主张都会附带来源,并带有 isNotLegalAdvice: true 标记。
许可证
Apache-2.0。请参阅 LICENSE 和 NOTICE。打包的第三方工件及其来源、版本、校验和和许可证记录在 packages/rules/PROVENANCE.md 中。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。