
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
dsh-plugin-diraud
Advanced tools
Audit the DeepSeek Harness plugin list by origin (official vs self-installed): a /plugin-audit command plus a Source tab in Web Settings
English | 中文
A DeepSeek Harness (DSH) plugin-management enhancement: group the plugin list by source so you can tell official plugins apart from the ones you installed yourself at a glance.
/plugin-audit command: lists the currently loaded plugins grouped by
official / self-installed, with user / official / keyword filtering;/plugin-audit disable|enable <keyword>;cordis.patch.yml (kept across restarts,
reversible) and call ctx.loader.update for live effect (HMR-independent);
official/builtin plugins are locked;description;repository / homepage points
to GitHub, the card shows a GitHub button that opens its full feature
documentation (independent of the built-in "Plugin list" page);pnpm add <pkg>@latest --config.minimumReleaseAge=0, corepack/npx
fallback, live output);github: / git+
/ git:// / git@ specs can be updated even without an npm package —
branch/default-branch refs compare the locally-locked commit against the
remote HEAD via git ls-remote, tag refs list all tags to find a newer
stable tag; updates re-run pnpm add <original spec> (or the new tag spec);
refs pinned to a specific commit are marked not auto-updatable;pnpm add fails because an updated
package needs to run build scripts but is not in pnpm-workspace.yaml's
allowBuilds, the panel reads pnpm's suggested entry and appends it before
retrying. Git-hosted plugins use the full name@git-url#commit form — pnpm 11
no longer matches bare package names for git dependencies (see
pnpm#12367);link: deps show
"Updating with the desktop app" and local file: / workspace: deps show
"Local plugin", so a pnpm exit code 0 is never misreported as an actual
update; official/builtin plugins and this plugin itself (installed via
link: to protect the dev chain) are locked;pnpm remove, disables the button while running, and refreshes the list
afterwards. Non-self-installed packages and this plugin itself are rejected;Sidebar footer Plugin Catalog entry (since v0.5) — click to open the panel: self-installed plugins grouped by origin, each card with an enable/disable toggle:
The top bar shows the update area (可更新: 1 = 1 update available, 重新检查
= re-check, 全部更新 = update all), followed by the search box and the
grouped cards. Every card carries the enable/disable toggle, version, GitHub
button, update status and uninstall button:

Prerequisites: pnpm, the dsh CLI.
# Install (recommended: from npm)
dsh plugin --profile web add dsh-plugin-diraud
# Or from the GitHub main branch
dsh plugin --profile web add https://github.com/tttwh/dsh-plugin-diraud/archive/refs/heads/main.tar.gz
Restart dsh web, then:
/plugin-audit in the composer, or| Command | Purpose |
|---|---|
/plugin-audit | Overview: self-installed one-by-one + official count |
/plugin-audit user | Self-installed only |
/plugin-audit official | Official only (full list) |
/plugin-audit <keyword> | Filter by package / entry keyword |
/plugin-audit disable <keyword> | Disable a matching self-installed plugin (persisted) |
/plugin-audit enable <keyword> | Enable a matching self-installed plugin (persisted) |
dsh plugin --profile web remove dsh-plugin-diraud | Uninstall |
How toggles persist:
disable/enablewrites a- id: <raw config id>+disabled: trueoverride into the profile'scordis.patch.yml(the user config layer). dsh watches that file (watchUserPatches), so the change applies live without a restart, survives restarts, and deleting the row restores the default.Why the raw id (fixed in v0.4): loader entries carry a path-prefixed full id (
include:ssh), but the patch layer matches each config row's ownidfield (ssh). Older versions wrote the prefixed id into the patch file, so the row was skipped at boot ("patch: entry not found") and the toggle was silently lost on restart. v0.4 writes the raw id, keeps the full id forctx.loader.update, and cleans up legacyinclude:<id>rows.
Origin is derived from the package scope by default; edge cases (e.g. a
third-party package published under @deepseek-ai/) are overridden via
extraUserPackages. Override this plugin's row in the profile's
cordis.patch.yml:
- id: plugin-audit
config:
extraUserPackages:
- '@deepseek-ai/dsh-my-fork' # force-classify as self-installed
dsh-plugin-diraud/
src/classify.ts origin-classification pure function (single source of truth)
src/patch.ts cordis.patch.yml read/write (persist toggles)
src/toggle.ts shared toggle core (persist + ctx.loader.update)
src/updates.ts update core: semver compare, registry/git probe, pnpm exec (unit-testable)
src/gitspec.ts git-hosted dependency parsing + lockfile/ls-remote helpers (v0.9)
src/metadata.ts GitHub repository/homepage → canonical URL (v0.8)
src/translations.ts bilingual description dictionary (v0.6)
src/render.ts /plugin-audit output rendering (grouped view)
src/contract.ts typert wire contract (pluginAudit/toggle)
src/typert.ts host manifest registration
src/runtime.ts PluginAuditRuntime (@Remote toggle; executeToggle unit-tested)
src/index.ts host: /plugin-audit command + remote registration
src/client/ Sidebar Plugin Catalog entry (React) + toggle buttons + client remote
src/client/updateStore.ts module-level update task store (queue + resume)
build.mjs esbuild build (host ESM + client bundle)
cordis.patch.yml profile bundle patch (inserts this plugin)
demo/ demo & verification scripts (real-profile output)
MIT · Copyright (c) 2025 tttwh
FAQs
Audit the DeepSeek Harness plugin list by origin (official vs self-installed): a /plugin-audit command plus a Source tab in Web Settings
The npm package dsh-plugin-diraud receives a total of 269 weekly downloads. As such, dsh-plugin-diraud popularity was classified as not popular.
We found that dsh-plugin-diraud demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.