Skip to main content

dshpkg

CI

Security & health audit CLI for DeepSeek Harness (DSH) plugins — npm audit for the everything-is-a-plugin era.

The DSH plugin wave is the fastest-growing agent ecosystem on GitHub: the harness hit 209,000+ stars in ~3 weeks, and 13,000+ repos already carry the dsh-plugin topic. Plugins are npm packages that inject into host modules (@deepseek-ai/dsh-client-store, dsh-client-ui-conversation, …) and can ship host behavior patches (cordis.patch.yml). That is arbitrary code running inside your agent harness with your session, your keys, and your files.

Meanwhile the ecosystem's own tracker shows 12 high-star plugins failing to install/boot on recent dsh releases, and the community npm catalog has been stalled since 2026-08-26. Nobody is checking what a plugin actually does before you inject it.

dshpkg is the pre-flight check: search the ecosystem, get a plugin's health card, and security-scan its source — before it touches your harness.

$ dshpkg info XieZongChen/dsh-md-notes
dshpkg info — XieZongChen/dsh-md-notes
  repo:           XieZongChen/dsh-md-notes
  stars:          16
  open issues:    1
  pushed:         2026-09-02
  license:        MIT
  npm:            dsh-md-notes
  latest release: v0.10.0 (2026-08-31)
  inject hooks   5 host module(s):
    · @deepseek-ai/dsh-client-ui-renderer
    · @deepseek-ai/dsh-client-locale
    ...
  host patches   ./cordis.patch.yml

$ dshpkg scan dickpy/dsh-imagegen
dshpkg scan — dickpy/dsh-imagegen (default branch: main)
  inject hooks (8):
    · @deepseek-ai/dsh-client-store
    · @deepseek-ai/dsh-api-session-controller
    ...
  findings: 3
  [medium  ] child_process exec           src/updater.ts
  [medium  ] env enumeration              src/updater.ts
  [medium  ] base64 blob (obfuscation)    scripts/smoke.mjs
  GRADE C — medium findings — review before install

Install

pip install dshpkg

Python 3.8+, stdlib-only — no dependencies.

Commands

Command What it does
dshpkg search QUERY GitHub search across topic:dsh-plugin (stars, freshness, description)
dshpkg info OWNER/REPO Health card: activity, npm mapping, latest release, inject hooks, host patches, compat warnings from recent issues
dshpkg scan OWNER/REPO Downloads the tarball, extracts it hardened (traversal/symlink/bomb guards), scans for leaked credentials and dangerous code, grades A–F
dshpkg doctor Local environment check: dsh install, node/npm, installed plugins

Every command accepts --json for scripting. Set GITHUB_TOKEN (or GH_TOKEN) to lift the anonymous API cap from 60 to 5,000 req/hr — search users will hit the wall otherwise.

What scan looks for

  • Leaked credentials — OpenAI/Anthropic-style keys, GitHub PATs, AWS keys, Google API keys, Slack/GitLab tokens, private key blocks (any file, including code)
  • Dangerous codeeval / new Function, child_process usage, curl | sh installers (JS/TS and shell scripts), remote dynamic imports
  • Exfiltration signals — webhook.site / pastebin / Discord-webhook / Telegram-bot endpoints
  • Obfuscation — large base64 blobs
  • Manifest risk — npm lifecycle scripts (postinstall, prepare, …), the full client.inject hook list, host patch files

Grades: A clean · B informational · C medium findings · D high findings · F critical (likely leaked credentials) or archive-safety refusal.

Honest limits

scan is a heuristic pre-flight check, not a security guarantee — a crafted plugin can pass pattern scanning. Treat D-grade as "do not inject", A-grade as "nothing obviously wrong." Read the flagged code yourself; --json output gives you file paths to jump to.

For plugin authors

A clean dshpkg scan is a trust signal worth putting in your README. If your plugin gets a D/F for intentional behavior (an updater using child_process, for example), that's expected — the grade asks humans to look, and the finding text shows exactly where.

Compatibility

doctor and info surface compatibility signals (recent install/boot failure issues, dsh version mismatches). The dsh-plugin ecosystem is young and moving fast — pin and verify.

License

MIT — Exaggarate/dshpkg

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dshpkg-0.1.0.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dshpkg-0.1.0-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file dshpkg-0.1.0.tar.gz.

File metadata

  • Download URL: dshpkg-0.1.0.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dshpkg-0.1.0.tar.gz
Algorithm Hash digest
SHA256 abcdbece4ed05c2a240e7fba974ac755e7ce3d593d281e8c3231ff1914c541ed
MD5 869ef022f08c357912c63a71e568a2d4
BLAKE2b-256 0f52c32bb0a6d65e31ba6cd2854f72ea906bd3121c7bbd5d4d71e1f17528f510

See more details on using hashes here.

Provenance

The following attestation bundles were made for dshpkg-0.1.0.tar.gz:

Publisher: publish.yml on Exaggarate/dshpkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dshpkg-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dshpkg-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dshpkg-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 169da747fa893b46be3498b3ecd77c4e781fc2a3efb6b6fbe7596a938aa8051c
MD5 ca48a0ac989d109c06decc5c2c3e0595
BLAKE2b-256 e696f29ab9d9e235fff571796414e89538c31da3e366ecd8efc35bc1a1c7e2b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for dshpkg-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Exaggarate/dshpkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page