Vai al contenuto principale
P

dsh-contract-suite

perrylink/dsh-contract-suite

One-command install for dsh-legal-intake and dsh-legal-clause.

Installazione

dsh plugin --profile web add github:perrylink/dsh-contract-suite

README

dsh-contract-suite

Official repository. The only official repository of this package, maintained by PerryLink. Same-name repositories under other accounts are not affiliated. Apache-2.0.

npm CI License dsh-plugin docs Gitee dshfind DSH Market Node npm downloads

One-command install for dsh-legal-intake and dsh-legal-clause.

Status: alpha / public-synthetic / partial / not counted / not GA. No customer evidence, customer data, or production-readiness claim.

English · 简体中文 · Español · Português · हिन्दी

dsh plugin --profile <profile> add dsh-contract-suite

⭐ If this helps, a star makes it easier for the next person to find it. Nothing is gated behind it.

Workflow diagram for dsh-contract-suite: local input, plugin, local output.

Workflow: local input → plugin → local output. No model call is required.

One line

Install the two contract packages in one command and verify every member version resolves.

Best for / not for

  • Best for: installing dsh-legal-intake and dsh-legal-clause into one DSH profile; keeping both members on one pinned version set; confirming no member row is missing right after install.
  • Not for: installing only one package (install that member directly); expecting the suite itself to review contracts (it has no tool surface — the members do); OCR, external CLM, or e-sign integration.

Input

  • The install itself reads no business documents.
  • The bundled sample reads samples/quickstart/input/profile.json (synthetic profile dump, < 1 KB), plus this package's package.json and cordis.patch.yml. It reads no other directory and no customer contract.
  • Each member's own input (contract text, clause lists, playbook) is documented in that member's README; the suite does not change it.

Output

  • The terminal prints the member list, pinned version, and where each version was resolved from; exit code 0 means 2/2 resolved.
  • node samples/quickstart/run.mjs --json prints the golden JSON stored at samples/quickstart/expected/result.json.
  • No files are written, no model is called, no network is used, nothing is uploaded, and source contracts are untouched.

Example

Paste this into DSH:

帮我装好合同法务两件套(合同录入、条款审查),确认两个成员包都能解析,并列出各自版本。

Then run the bundled sample from the package directory (offline, no dependency install needed):

node samples/quickstart/run.mjs

Real output:

dsh-contract-suite quickstart (offline)
suite:    dsh-contract-suite 0.1.0-alpha.9
profile:  contract-demo (synthetic, 2/2 rows enabled)
members:  2/2 resolved
  dsh-legal-intake     0.1.0-alpha.9   [manifest pin]    profile=enabled
  dsh-legal-clause     0.1.0-alpha.9   [manifest pin]    profile=enabled
network:  false (no fetch, no registry call)
golden:   samples/quickstart/expected/result.json matches
quickstart ok

dsh-contract-suite quickstart real terminal output

The screenshot is the real output of the command above; the golden file and screenshot metadata are in screenshots.json.

Permissions

Read: samples/quickstart/input/profile.json, cordis.patch.yml, package.json; no other directory Write: none (R0 — terminal output only; no $DSH_HOME writes, source files untouched) Network: no External systems: none

FAQ

  1. The install fails or a member is missing. Run node samples/quickstart/run.mjs. If the two member lists disagree it raises E_SUITE_PATCH_MISMATCH; align them as described in TROUBLESHOOTING.md, then reinstall.
  2. The version does not match the suite declaration. The suite pins exact member versions; upgrading one member alone raises E_SUITE_VERSION_MISMATCH. Remove node_modules in that profile and reinstall the suite.
  3. Can the suite review my contracts? No — the suite only installs members. Use the member packages for intake and clause review; the bundled sample uses a synthetic profile and reads no real contract.
  4. Does uninstalling the suite remove the members? No. Removing the suite removes only its row; member packages stay installed until you remove them.

Version

Current version: 0.1.0-alpha.9 (matches package.json).

Local verification (2026-11-02):

node --test test/suite.test.mjs            # 8 passed, 0 failed
node samples/quickstart/run.mjs --check    # golden matches

Install

Install and verify:

dsh plugin --profile <profile> add dsh-contract-suite
dsh --profile <profile> --dump-config | grep dsh-contract-suite

Uninstall:

dsh plugin --profile <profile> remove dsh-contract-suite

Removing the suite removes only the suite row; the member packages stay installed. Remove them individually if needed. See SUITE.md.

Install channels

npm is the recommended channel; the others are for pinning or offline use.

  • npm (recommended): dsh plugin --profile <profile> add dsh-contract-suite
  • git channel: dsh plugin --profile <profile> add github:PerryLink/dsh-contract-suite
  • tarball: pnpm pack then dsh plugin --profile <profile> add ./dsh-contract-suite-<version>.tgz
  • 1024 store: npm i -g dsh1024 then dsh1024 plugin --profile <profile> add dsh-contract-suite

What it does

One-command install for dsh-legal-intake and dsh-legal-clause. 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.

Members

The suite only installs these members; it has no tool surface of its own. Versions are pinned in dependencies.

MemberVersion
dsh-legal-intake0.1.0-alpha.9
dsh-legal-clause0.1.0-alpha.9

Post-install self-check

Run the bundled sample after install to confirm both members resolve:

node samples/quickstart/run.mjs

Each member's tool surface lives in its own repository; the suite ships no tools.

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

SurfaceStatus
Harnessdsh >=0.2.1-rc.3 <0.3.0
Node>=24.9.0 <25
PlatformsAll; local files only
DataNo 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.

Sibling packages and family indexes: dsh-legal-intake · dsh-legal-clause

Family

DSH domain plugin family (15 packages + 2 suites)
Packagenpm
dsh-einvoicenpm
dsh-docx-redlinenpm
dsh-policy-ledgernpm
dsh-ghgnpm
dsh-bankrecnpm
dsh-ap-three-waynpm
dsh-ifc-qtonpm
dsh-qms-capanpm
dsh-legal-intakenpm
dsh-legal-clausenpm
dsh-freight-auditnpm
dsh-hs-candidatenpm
dsh-travel-reconnpm
dsh-pim-lintnpm
dsh-eval-packnpm
dsh-finops-suitenpm
dsh-contract-suitenpm
Mainline family — 92 current install specs
Packagenpm
dsh-aqua-input-checknpm
dsh-archive-checknpm
dsh-bid-ca-prechecknpm
dsh-bid-qual-checknpm
dsh-contract-stancenpm
dsh-customs-doc-checknpm
dsh-demurrage-ledgernpm
dsh-drill-script-checknpm
dsh-eia-guide-checknpm
dsh-emergency-plannpm
dsh-essay-rubric-checknpm
dsh-evidence-checknpm
dsh-export-ctl-checknpm
dsh-fmea-table-checknpm
dsh-forecast-penaltynpm
dsh-gongwen-flow-checknpm
dsh-gongwen-word-checknpm
dsh-guard-plan-qcnpm
dsh-hazchem-checknpm
dsh-hazplan-checknpm
dsh-hidden-risk-mapnpm
dsh-hs-classifynpm
dsh-icd-rule-checknpm
dsh-lawcite-adapternpm
dsh-lc-doc-checknpm
dsh-learning-gap-checknpm
dsh-medrec-qcnpm
dsh-nsfc-form-checknpm
dsh-nurse-record-checknpm
dsh-origin-rvc-checknpm
dsh-ota-review-checknpm
dsh-paper-doc-adapternpm
dsh-permit-report-checknpm
dsh-pipeline-checknpm
dsh-pleading-draftnpm
dsh-policy-brief-draftnpm
dsh-power-loss-splitnpm
dsh-power-ticket-checknpm
dsh-ppap-checknpm
dsh-protest-deadlinenpm
dsh-railway-windownpm
dsh-repair-order-qcnpm
dsh-review-reply-checknpm
dsh-rulefile-checknpm
dsh-safety-brief-checknpm
dsh-site-log-checknpm
dsh-soe-decision-checknpm
dsh-soilwater-checknpm
dsh-sop-sync-checknpm
dsh-spc-gbt-adapternpm
dsh-tender-extractnpm
dsh-tender-matrixnpm
dsh-warranty-calcnpm
dsh-auto-reviewnpm
dsh-autotiernpm
dsh-budgetnpm
dsh-cert-mcpnpm
dsh-checkpoint-rewindnpm
dsh-claude-movenpm
dsh-clicknpm
dsh-composer-historynpm
dsh-data-qualitynpm
dsh-defendnpm
dsh-doublechecknpm
dsh-drawnpm
dsh-fastnpm
dsh-fund-researchnpm
dsh-industry-researchnpm
dsh-layanpm
dsh-librarynpm
dsh-local-ainpm
dsh-lsp-actionsnpm
dsh-masknpm
dsh-mcp-panelnpm
dsh-mementonpm
dsh-observenpm
dsh-output-stylesnpm
dsh-permission-rulesnpm
dsh-plugin-guidenpm
dsh-plugin-upgradenpm
dsh-reachnpm
dsh-research-reportnpm
dsh-scorenpm
dsh-session-syncnpm
dsh-talknpm
dsh-test-drivenpm
dsh-translatenpm
npm
npm
npm
npm
npm

License

Apache-2.0. See LICENSE, NOTICE, THIRD-PARTY-NOTICES.

Plugin correlati