DeepSHPlugins
dsh-service-console 项目预览
GITHUB / COMMUNITY PROJECT

dsh-service-console

生态与开发JavaScriptMIT

DSH 本地开发服务控制台:列出本机所有监听服务,并让用户查看、以安全方式停止或重启开发过程中启动的服务。

3 StarsJiyr0119 更新时间 2026-09-05
访问 GitHub 仓库
dsh-service-console 项目预览

项目介绍

中文

DSH 本地开发服务控制台:列出本机所有监听服务,并让用户查看、以安全方式停止或重启开发过程中启动的服务。

English

Local development service console for DSH: lists every listening service on the machine and lets users inspect, safely stop, or restart services that were started during development.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
Jiyr0119
仓库
Jiyr0119/dsh-service-console
GitHub Stars
3
Forks
0
开发语言
JavaScript
许可证
MIT
最近推送
2026-09-05
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

63/ 100
维护活跃
97
文档与实用信息
100
生态关注度
17
安装便捷信号
100
项目声明信号
100

近 6 天仍在更新;README 含完整安装与使用说明;关注度尚低(3)。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add @jiyr0119/dsh-service-console

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

DSH Service Console

English | 中文

License npm npm downloads Awesome DSH Plugin Last commit GitHub stars

⭐ Drop a Star if it helped — it makes the author's day · ★ Give a Star

A local development service console for DSH: discover listening ports, identify services related to the current conversation or workspace, and safely inspect, stop, or restart them.

Single-purpose plugin for the DeepSeek Harness web UI. When the model (or you) starts a local dev server (npm run dev, Vite, Next.js, Uvicorn, Express, Rust, …), Service Console shows it in one place: which ports it listens on, which command and working directory started it, whether it belongs to this conversation or workspace, and whether it is safe to stop or restart.

Features

  • Discovery — scans listening TCP ports and correlates PID, PPID, command, working directory, process group and start time (macOS/Linux).
  • Ownership & risk — five-level attribution: This chat (matched against the session launch ledger), Workspace, Other local, Unknown, Protected.
  • Control — graceful stop to the process group, restart with a safe saved launch command. Every action is confirmed twice and re-validated against the current snapshot.
  • Safeguards — PID-reuse / fingerprint checks before any signal; unknown and protected services are read-only; force-kill is off by default; no implicit auto-cleanup; command output is redacted.
  • All local services — every listening service on this machine is visible; ownership is shown as a safety signal rather than a hidden category filter.
  • Search, config, i18n — keyword filtering, graceful timeout / force-kill settings, and automatic Chinese/English labels from DSH's active locale.
  • On-demand scanning — opening the console fetches the current snapshot once; use the refresh button for an explicit rescan. There is no background polling.
  • DSH-native inspector — an expanded service record card presents process identity, ports, command, working directory and ownership evidence in the Web UI's token-based visual language.

Install

Native package (recommended):

dsh plugin --profile web add -w @jiyr0119/dsh-service-console@latest

Then refresh the DSH web UI — a 🖥 SC entry appears in the conversation header and opens the console panel.

Note: a plugin being listed in dsh-market/awesome does not mean its UI auto-appears — this package ships both Host routes and a browser bundle, so after dsh plugin add the panel is present. Works on macOS / Linux; Windows is not supported yet.

Alternative — dynamic paste (zero-build, process-local): paste dynamic/host.js + dynamic/client.js via the dynamic Cordis plugin flow.

UI preview

Service Console 0.2.0 — all local services and DSH-style inspector

The preview shows the complete local listening-service list and the expanded inspector card. The ownership badge remains visible as a safety signal, while the list itself is no longer split into conversation/workspace/machine categories.

→ Interactive Demo — try the Service Console UI in your browser (no installation required).

Permissions & safety

  • The client never sends raw PIDs or shell commands; it targets a service ID and the Host re-validates PID / start time / fingerprint before acting.
  • Graceful termination first (SIGTERM to the process group); SIGKILL only when explicitly enabled and confirmed.
  • Sensitive tokens/passwords in command summaries are redacted.
  • This plugin is not a general process manager: system-critical, high-privilege, unknown and protected processes are read-only.

Development

pnpm install
npm run typecheck
npm run build
npm test          # unit + integration tests (node --test)

Testing

npm test builds once and runs the whole suite with Node's built-in test runner (node --test). No extra test framework is required.

FileTypeWhat it covers
test/process-inspector.test.mjsUnitPlatform output parsing (parseLstart, parseListenRows, parsePsRows, parseAddress), command redaction, five-level ownership classification
test/host-more.test.mjsUnitConfig validation, session ledger, lifecycle state machine (stop/restart) with fake dependencies, service aggregation & fingerprint stability
test/integration.test.mjsIntegrationReal system commands + a temporary HTTP server spawned by the test itself; signals are only ever sent to test-owned processes
npm test                                   # full suite
npm run build && node --test test/process-inspector.test.mjs   # run a single file

Unit tests import the built output under lib/, so the sources must be compiled first — npm test handles this automatically.

License

MIT

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目