dsh-plugin-debugging

tested: passnpmMIT condition deviation

For DSH plugin development: runtime diagnostics and in-place fixes your agent can run itself.

📦 体积
16.09 MB · medium
🔌 Network
undeclared
✅ Sandbox
pass
🏷️ Versions
16

Who this is for

  • people browsing or managing plugins
下载量 / Downloads
0
依赖体积 / node_modules
16.09 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

Install

dsh plugin --profile web add dsh-plugin-debugging

Sandbox test results

條件偏離 —— 本結果在 DSHIO/T 21 v0.9 條件下產生(內存 1g、CPU 1.5、T4 超時 60s,未記鏡像 digest)。偏離條款:5.1.3(内存 768MB)、5.1.3(CPU 1 核)、5.1.6(T4 超时 90s)、5.1.2(镜像 digest)。按 DSHIO/T 21 §8.2,該判定不得與標準條件結果比較,不得用作認證依據。
StageResult
T0 static check—
T1 install✓
T2 list✓
T3 mount✓
T4 boot—

Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).

README

<p align="center">

<img src="icon.svg" alt="dsh-plugin-debugging" width="80" height="80">

</p>

<h1 align="center">dsh-plugin-debugging</h1>

<p align="center">

<img src="assets/banner.gif" alt="dsh-plugin-debugging: letting a DSH agent inspect and fix its own runtime" width="600">

</p>

<div align="center">

<p><strong>Let your DSH agent inspect and fix its own runtime</strong></p>

<p><em>让 DSH agent 自检自修它身处的运行时</em></p>

<p>

<a href="https://github.com/deepseek-ai/deepseek-harness"><img src="https://img.shields.io/badge/powered_by_dsh-4D6BFE?style=flat&logo=deepseek&logoColor=white" alt="powered by dsh"></a>

</p>

<p>

<a href="https://github.com/dsh-plugin-lab/dsh-plugin-debugging/actions/workflows/ci.yml"><img src="https://github.com/dsh-plugin-lab/dsh-plugin-debugging/actions/workflows/ci.yml/badge.svg" alt="CI"></a>

<a href="https://www.npmjs.com/package/dsh-plugin-debugging"><img src="https://img.shields.io/npm/v/dsh-plugin-debugging.svg?style=flat" alt="npm"></a>

<a href="https://www.npmjs.com/package/dsh-plugin-debugging"><img src="https://img.shields.io/badge/SLSA-Build%20L2-green?logo=slsa&style=flat" alt="SLSA Build L2"></a>

<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-blue.svg?style=flat" alt="MIT License"></a>

<!-- Whether the SLSA badge can be shown is governed by [docs/PUBLISHING.md](docs/PUBLISHING.md) (check the attestations endpoint for a specific version; do not claim it from memory). -->

</p>

<p>

Per-version changes → <a href="https://github.com/dsh-plugin-lab/dsh-plugin-debugging/releases">Releases</a>

</p>

<p>

<strong><a href="README.md">English</a></strong> · <a href="README_zh.md">简体中文</a>

</p>

</div>


You changed something and it didn't take effect? In DSH, that usually means one of three things:

  • Config: re-read on every change, so edits apply immediately. This presumes hmr is mounted in profile; without hmr, every change degrades to restart-required.
  • Host code: a process loads code once at startup, so edits need a restart.
  • Front-end assets: the browser swaps assets by fingerprint, so edits need a hot reload or refresh.

This plugin lets the agent decide which case you're in, and what to do next.

What it does

After installation, the agent gains a set of tools and a skill document. The skill loads on demand; you invoke it with a slash command.

<p align="center">

<img src="assets/invoke-skill.png" alt="Invoking the skill with a slash command" width="600">

</p>

Tools

Read-only — they change nothing on the host.

Tool · Arguments · What it does · Web · Desktop

dsh_list_instances · port · List the DSH hosts running on this machine. A port counts as DSH only when an unauthenticated GET / returns the exact DSH body. "Could not probe" and "not DSH" are reported separately. · ✓ · ✓

dsh_check_auth · host, port · Tell "not running" apart from "not authenticated". · ✓ · ✓

dsh_diagnose_plugin_load · package, port, dshHome · Check whether a plugin actually loaded: bundle membership, mount form, loader tree, with observed evidence kept separate from inferred evidence. · ✓ · ✓

dsh_check_effect_mode · change: config / bundle-added / host-code / client-code, alreadyInDependencies, dshHome · Tell whether a change takes effect live, needs a restart, or needs a hot reload. It probes the running profile instead of guessing. · ✓ · ✗

dsh_dump_config · profile, dshHome · Show what a profile resolved to: the composed tree, plus the diagnostics that explain it. · ✓ · ✗

dsh_sign_cookie · host, port, maxAgeDays, dshHome · Sign a browser-session cookie so a script or CLI client can reach your own DSH instance. · ✓ · ✓

Changes state — the first two swap code or end the host you are debugging.

Tool · Arguments · What it does · Web · Desktop

dsh_hot_reload · exactly one of entryId / module / serverName, plus dryRun · Swap a mounted entry to the latest code on disk without restarting. Rolled back on failure. · ✓ · ✓

dsh_restart · reason, delayMs, dryRun, force · Restart this host when a change truly requires it. Off by default. · ✓ · ✗

Rows follow the order you would use them, so the two tables split on a single line: whether they change anything. The last column is availability by carrier; reasons live under [Platform support](#platform-support).

Three common traps:

  • A 401 from dsh_check_auth does not mean the session expired. A request carrying no cookie always gets 401, so an auth probe's 401 only proves the service is running and wants authentication. To tell "the session is still valid" apart from "the authority is wrong", you must open that host:port in a browser. An old cookie keeps working after a restart on the same port; only a changed port produces 401.
  • dsh_hot_reload may leak. Resources the framework does not track — a timer or socket, for example — leak silently after a swap.
  • dsh_restart has its own section below.

The skill document behind it

The skill document lives at [skills/dsh-plugin-debugging/SKILL.md](skills/dsh-plugin-debugging/SKILL.md) and carries the full reasoning behind install forms, credential acquisition, process identification, and isolated instances.

The tools are accelerators; if a tool's output conflicts with the skill document, the skill document wins.

Install

Install from the Plugins page:

Open the Plugins page, click Add plugin in the upper-right corner, enter dsh-plugin-debugging, and install.

Install from npm:

dsh plugin --profile web add dsh-plugin-debugging

Install from source:

git clone https://github.com/dsh-plugin-lab/dsh-plugin-debugging.git
cd dsh-plugin-debugging
pnpm install && pnpm run build
dsh plugin --pro

…(truncated)

Rendered from the README published on npm. Formatted only, not edited.

Embed the badge

Two badges, each using its own site's identity: left is the **standard** (published by DSHIO), right is the **testing organization** (deepseekbase, which ran the inspection). Each links to the standard text and the test report.

DSHIO/T 10deepseekbase

Markdown(推荐,两个一起)

[![DSHIO/T 10](https://deepseekbase.com/badge/std.svg)](https://dshio.org/10/) [![deepseekbase](https://deepseekbase.com/badge/dsh-plugin-debugging.svg)](https://deepseekbase.com/zh/plugins/dsh-plugin-debugging/)

Note: this is not a certification. DSHIO/T 32 is not in effect.

Versions

Published on npm::16,最后更新 2026-11-06

Links

GitHub · Homepage · npm

Frequently asked

How do I install dsh-plugin-debugging?
Run dsh plugin --profile web add dsh-plugin-debugging in DSH, or paste the package name into the DSH Desktop plugin page.
What if it fails to install?
Check your DSH version first (dsh --version), then look at the first error in the test-results section. If it still fails, open an issue on the repository.
How do I uninstall it?
Run dsh plugin --profile web remove dsh-plugin-debugging.