跳到主要内容

dsh-duizhang

已验证

dsh-duizhang · v0.1.0 · MIT

Reconciliation: statements, invoices and ledgers that have to balance. Bank/credit statement PDFs and invoice batches into ledger-ready tables, then reconciled — on a shared key in integer cents, or with no shared key at all by amount, date window, refere

安装

dsh plugin add dsh-duizhang

dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南

源码

标签

说明文档

dsh-duizhang

Bank/credit statement PDFs and invoice batches into ledger-ready tables, then reconciled — on a shared key in integer cents, or with no shared key at all by amount, date window, reference numbers and fuzzy counterparty names.

What & why

The point is that it refuses to look right when it is wrong. reconcile_ledger compares in integer cents, so 0.1+0.2 never invents a phantom difference. extract_statement re-adds the running total independently (opening + credits − debits = closing) and, if it does not balance, names the row where it first breaks. match_transactions handles split (1:N) and combined (N:1) payments and declines to guess when the evidence is thin. dedupe_entities never merges anything — it shows the evidence, cross-checked against tax-ID checksums, and leaves the decision to a human.

Every set ships what_can_you_do — describe a task in any language, get the exact tool plus a ready-to-run call.

Install

dsh plugin --profile <your-profile> add github:mario03690/dsh-duizhang

Thin config layer only (one @deepseek-ai/dsh-mcp-client row, shipped as cordis.patch.yml) — no tool code runs on your machine. Built against the MCP client config shape of the dsh v0.1 developer preview; verified against the live endpoint on 2026-08-22.

Cost, quota, privacy

Mixed. The table operations are deterministic and cheap ($0.002–$0.008). The two extractors read documents with a model: extract_statement $0.03, extract_invoices $0.05. Every response reports its exact USD cost; failed calls are not charged.

No signup for the free anonymous quota. Documents are processed in memory and not retained. The config URL carries ?s=dsh-duizhang — a channel tag identifying the install path, not you.

Disclosure: built and run by the team behind ainetcafe.com — our own service, free tier plus paid usage. Full bundle (everything at once): dsh-netcafe. MIT.

Compatibility & permissions (at a glance)

Signal This plugin
Runtime dsh v0.1 developer preview (Cordis v4). Touches only the MCP client config shape — the narrowest surface available. Verified against a live endpoint on 2026-08-22.
What runs locally Nothing. Ships one cordis.patch.yml row; there is no tool code, no build step and no lifecycle script in this package.
Filesystem access None.
Shell / process access None.
Network access Outbound HTTPS to ainetcafe.com only, from the MCP client that dsh already ships.
Credentials None required for the free tier. An optional AllRouter key, if you supply one, is sent by dsh as a request header and is never stored by us.
Data retention Documents and prompts are processed in memory and not retained.
Dependencies One peer dependency: @deepseek-ai/dsh-mcp-client (ships with dsh).
License MIT (see LICENSE).
Publisher The team that runs ainetcafe.com. Issues get a same-day reply.

A directory listing is not a security review. Read cordis.patch.yml — it is short enough to read in full in under a minute.