dsh-einvoice
中文电子发票(OFD/XML)收件箱:导入、解析、去重、进入复核队列、登记回执并本地归档——10 个 `invoice.*` 工具,数据不出本机。
安装
dsh plugin --profile web add dsh-einvoice
沙箱测试结果
| 阶段 | 结果 |
|---|---|
| 1 安装 | ✓ |
| 2 列装 | ✓ |
| 3 挂载 | ✓ |
| 4 启动 | — |
四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。
README
<div align="center">
dsh-einvoice
Official repository. The only official repository of this package, maintained by PerryLink. Same-name repositories under other accounts are not affiliated. Apache-2.0.










File-level Chinese e-invoice (OFD/XML) ingest, parse, dedup and local archive.
Status: alpha / public-synthetic / partial / not counted / not GA. No customer evidence, customer data, or production-readiness claim.
[English](README.md) · [简体中文](README-zh.md) · [Español](README-es.md) · [Português](README-pt.md) · [हिन्दी](README-hi.md)
dsh plugin --profile <profile> add dsh-einvoice
</div>
⭐ If this helps, a star makes it easier for the next person to find it. Nothing is gated behind it.
Workflow: local input → plugin → local output. No model call is required.
Real local test run; no model or network call.
Install
Install and verify:
dsh plugin --profile <profile> add dsh-einvoice dsh --profile <profile> --dump-config | grep dsh-einvoice
Uninstall:
dsh plugin --profile <profile> remove dsh-einvoice
Install channels
npm is the recommended channel; the others are for pinning or offline use.
- npm (recommended):
dsh plugin --profile <profile> add dsh-einvoice - git channel:
dsh plugin --profile <profile> add github:PerryLink/dsh-einvoice - tarball:
pnpm packthendsh plugin --profile <profile> add ./dsh-einvoice-<version>.tgz - 1024 store:
npm i -g dsh1024thendsh1024 plugin --profile <profile> add dsh-einvoice
What it does
File-level Chinese e-invoice (OFD/XML) ingest, parse, dedup and local archive. Runs locally on DeepSeek Harness. The table below is the exact tool surface; the examples use the real command surface.
Input and output stay local; nothing is uploaded.
Tools
Tool names and descriptions are kept in English to match the runtime output.
Tool · Purpose · Risk
invoice.ingest · Ingest one local OFD/XML, compute SHA-256, store the original, idempotent by bytes · R1 local write
invoice.parse · Parse old OFD Attachs/original_invoice.xml or 数电票 Tags/CustomTag.xml; return eight fields, lines, evidence and unknown fields · R0
invoice.query · Query the local pool by entity, period, lifecycle or text · R0
invoice.dedup · Group duplicates by invoice number or seller + date + total · R0
invoice.review_queue · Queue parsed invoices for manual local review; optional buyer-tax-id mismatch flags · R1 local write
invoice.record_receipt · Hash a local receipt, append it and move lifecycle; verification_source=local_receipt, tax_verified=false · R1 local write
invoice.redlink · Bind a negative red invoice to its blue invoice and store deltas · R1 local write
invoice.archive · Build a manifest + originals + receipts ZIP under the local archive directory · R1 local write
invoice.check · Verify manifest/member hashes, missing files and traversal · R0
invoice.restore · Restore a verified archive into the local restore root · R1 local write
Quick start
dsh plugin --profile <profile> add dsh-einvoice dsh --profile <profile> --dump-config | grep dsh-einvoice
Examples
Fixture-backed example
Input: fixtures/public/mit/invoice-github-sample.xml
Command: pnpm test
Acceptance row:
req_id · metric · threshold · actual · pass · source · counted
SKU-04-A01 · 八字段完整率(S1 合成样本) · >=0.98 · 1 · true · public/synthetic · false
This is a fixture-backed acceptance row, not a customer run; no output is invented.
Limits
- Public/synthetic only; no customer data or customer evidence.
- Alpha/partial, not counted, no GA or production-readiness claim.
- No model or network call unless a tool explicitly says so.
- The exact per-tool boundaries are in the table and
ACCEPTANCE.csv.
Public sample
Public/synthetic fixtures live in fixtures/; ACCEPTANCE.csv records the public checks with counted=false.
Development
pnpm install --frozen-lockfile pnpm build && pnpm lint && pnpm typecheck && pnpm test
Compatibility
Surface · Status
Harness · dsh >=0.2.1-rc.3 <0.3.0
Node · >=24.9.0 <25
Platforms · All; local files only
Data · No network, no model call, no upload
Permissions & data
- Runs locally; no network, no model call, no upload.
- Public/synthetic fixtures only; no customer data, no customer evidence.
- Alpha/partial; not counted, no GA or production-readiness claim.
Related work
Sibling packages and family indexes: [ds
…(truncated)
以上内容来自 npm 上的 README,我们只做格式化,不改内容。
版本
npm 上共发布:13,最后更新 2026-11-04