控制中心安装器 brittanistrehlowll-oss/dsh-control-center
DeepSeek Harness一键装好额度面板与控制条,随时重启或关闭 DSH
29.9/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add brittanistrehlowll-oss/dsh-control-center该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · market
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 56 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-control-center(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.19.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/21 23:42:38
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 37 处,展示前 37 条)
- 读取本地文件apps/supervisor/src/surface.ts:26
cachedHtml = await readFile(join(import.meta.dirname, '..', 'assets', 'surface.html'), 'utf8'); - 删除本地文件递归packages/operation-journal/src/index.test.ts:11
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 读取本地文件packages/operation-journal/src/index.test.ts:49
expect((await readFile(join(root, 'operations.jsonl'), 'utf8')).trim().split(/ ? /)).toHaveLength(2); - 写入本地文件packages/operation-journal/src/index.ts:39
await mkdir(dirname(filePath), { recursive: true }); - 写入本地文件packages/operation-journal/src/index.ts:50
await rename(tempPath, filePath); - 删除本地文件packages/operation-journal/src/index.ts:53
await rm(tempPath, { force: true }); - 删除本地文件packages/operation-journal/src/index.ts:56
await rm(filePath, { force: true }); - 写入本地文件packages/operation-journal/src/index.ts:57
await rename(tempPath, filePath); - 删除本地文件packages/operation-journal/src/index.ts:62
await rm(filePath, { force: true }); - 写入本地文件packages/operation-journal/src/index.ts:94
await mkdir(this.rootDir, { recursive: true }); - 读取本地文件packages/operation-journal/src/index.ts:130
content = await readFile(this.filePath, 'utf8'); - 读取本地文件packages/operation-journal/src/index.ts:195
const raw = JSON.parse(await readFile(this.currentPath, 'utf8')) as unknown; - 删除本地文件递归packages/snapshot-store/src/compactor.test.ts:11
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 读取本地文件packages/snapshot-store/src/compactor.ts:107
const raw = JSON.parse(await readFile(join(this.rootDir, 'snapshot-base.json'), 'utf8')) as unknown; - 删除本地文件递归packages/snapshot-store/src/index.test.ts:11
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 写入本地文件packages/snapshot-store/src/index.test.ts:52
await writeFile(join(root, 'surface-snapshot.json'), '{broken', 'utf8'); - 读取本地文件packages/snapshot-store/src/index.test.ts:57
expect(await readFile(join(root, 'surface-snapshot.last-good.json'), 'utf8')).toContain('0.1.0-rc.7'); - 读取本地文件packages/snapshot-store/src/index.ts:60
const value = JSON.parse(await readFile(path, 'utf8')) as unknown; - 删除本地文件递归packages/supervisor-core/src/index.test.ts:19
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 写入本地文件packages/supervisor-core/src/index.ts:109
await mkdir(stateDir, { recursive: true }); - 删除本地文件packages/supervisor-core/src/index.ts:120
await rm(filePath, { force: true }); - 删除本地文件packages/supervisor-core/src/index.ts:128
await rm(filePath, { force: true }); - 读取本地文件packages/supervisor-core/src/index.ts:135
const raw = JSON.parse(await readFile(filePath, 'utf8')) as { pid?: number }; - 写入本地文件packages/supervisor-core/src/index.ts:448
await mkdir(join(stateDir, 'journal'), { recursive: true }); - 写入本地文件packages/supervisor-core/src/index.ts:449
await mkdir(join(stateDir, 'snapshots'), { recursive: true }); - 删除本地文件递归packages/update-provider/src/coordinator.test.ts:11
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 读取本地文件packages/update-provider/src/coordinator.test.ts:170
const content = JSON.parse(await readFile(manifest, 'utf8')) as { version: string; verifiedOfficialSource: boolean }; - 写入本地文件packages/update-provider/src/coordinator.ts:223
await mkdir(dir, { recursive: true }); - 写入本地文件packages/update-provider/src/coordinator.ts:225
await writeFile(join(dir, 'staged-manifest.json'), JSON.stringify({ - 读取本地文件packages/update-provider/src/coordinator.ts:241
const entries = await readdir(parent); - 删除本地文件递归packages/update-provider/src/coordinator.ts:245
await Promise.all(stale.map((path) => rm(path, { recursive: true, force: true }))); - 删除本地文件递归packages/update-provider/src/verifier.test.ts:12
await Promise.all(tempRoots.splice(0).map((root) => rm(root, { recursive: true, force: true }))); - 写入本地文件packages/update-provider/src/verifier.test.ts:40
await writeFile(file, content); - 写入本地文件packages/update-provider/src/verifier.test.ts:53
await writeFile(file, Buffer.concat([content, Buffer.from('x')])); - 写入本地文件packages/update-provider/src/verifier.test.ts:67
await writeFile(file, content); - 写入本地文件packages/update-provider/src/verifier.test.ts:82
await writeFile(file, content); - 读取本地文件packages/update-provider/src/verifier.ts:51
fileBuffer = await readFile(packageFilePath);
扫描于 2026/11/2(1 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 一键安装额度面板
- 一键安装控制条
- 重启或关闭DSH
README
由 DeepSeek 最新模型翻译生成DSH 控制中心
V2 定位(2026-08-19 起):薄整合层 / meta-package(installer) —— 不是独立监控后台。
V2 的运行时职责由两个插件仓库承担:dsh-lifecycle(左下角控制条:额度摘要 + 重启/关闭 + takeover overlay + 关闭后极简启动页 :3081)和 dsh-quota-panel (额度 capsule/卡片)。本仓库只负责:
检测 DSH → 安装 dsh-quota-panel + dsh-lifecycle → 写统一配置 → 安装/启动 Watchdog → 升级 / 卸载 / 健康检查
权威基线:docs/V2-DIRECTION.md(源自 Google Drive 00_FINAL_READ_FIRST|20260819-V2)。
V1 的 "Supervisor-first Control Plane / Monitoring Center" 方向已降级为历史(代码保留作 research,不继续扩张,不以它为 UI 依赖)。
用户感知三件事:① 我还有多少额度 ② 我能快速重启/关闭 DSH ③ DSH 关闭后我总有一个稳定页面能重新打开它。
展开完整文档(README 剩余 1 节)
DSH 控制中心 V2 定位(2026-08-19 起):薄整合层 / meta-package(installer) —— 不是独立监控后台。 V2 的运行时职责由两个插件仓库承担:dsh-lifecycle(左下角控制条:额度摘要 + 重启/关闭 + takeover overlay + 关闭后极简启动页 :3081)和 dsh-quota-panel (额度 capsule/卡片)。本仓库只负责: 检测 DSH → 安装 dsh-quota-panel + dsh-lifecycle → 写统一配置 → 安装/启动 Watchdog → 升级 / 卸载 / 健康检查 权威基线:docs/V2-DIRECTION.md(源自 Google Drive 00_FINAL_READ_FIRST|20260819-V2)。 V1 的 "Supervisor-first Control Plane / Monitoring Center" 方向已降级为历史(代码保留作 research,不继续扩张,不以它为 UI 依赖)。 用户感知三件事:① 我还有多少额度 ② 我能快速重启/关闭 DSH ③ DSH 关闭后我总有一个稳定页面能重新打开它。 历史保留(V1 research 代码) V1 构建的 Supervisor / Contract / Snapshot / Diagnostics / SSE / 更新验签等代码保留在本仓库 packages/*、apps/supervisor 中供研究,不再扩张。它们验证过真实 DSH 协议(/api/system/health + bootId、:3081 controller、RPC session.list),对理解 DSH 运行时仍有价值。 Non-goals (V2) - 不建设 Monitoring Center / 多页控制台 / Diagnostics Dashboard - 不建设 Electron 壳 / 独立 React Dashboard(作为产品) - 不为最近会话引入数据库 - 不直接杀进程 / 不接管 DSH 生命周期(仍走 marker/watchdog) - 不在 Codex 会话内真实 stop/restart DSH(只允许 dry-run/检测) Workspace apps/supervisor runnable supervisor entry (read-only first round) apps/control-surface gated Electron-shell placeholder (Checkpoint B/C) packages/control-contract all V1.1 Zod schemas (the contract) packages/operation-journal append-only operations.jsonl + atomic JSON packages/runtime-discovery real-surface probing + identity + ownership packages/snapshot-store atomic snapshots, last-good, sensitive scan packages/security redaction + secret detection packages/diagnostics PASS/WARN/FAIL/UNKNOWN across subsystems packages/dsh-client read-only RPC client (bounded, redacted) packages/quota-adapter fixed trusted-endpoint quota pipeline packages/update-provider official-source verify + compatibility + rollback packages/supervisor-core single-instance lock, journal recovery, reconcile adapters/lifecycle/legacy-watchdog ONLY place knowing 3080/3081/markers tests/fake-runtime fake DSH mirroring the real surface Quick start pnpm install --frozen-lockfile pnpm test # build + vitest pnpm verify:contract pnpm scan:secret # no credentials/cookies/prompts in tracked state pnpm scan:path # no absolute local paths in committed files Read-only first round (Checkpoint A) The supervisor entry performs only the allowed first-round actions: identify DSH, read version, read fingerprint, confirm ownership === legacy, and a Legacy Adapter dry-run. It never stops or restarts DSH. pnpm --filter @dsh-control-center/supervisor start -- --state-dir "%LOCALAPPDATA%\DSHControlCenter\state" --dsh-logs-dir "" Docs - docs/PLAN.md — frozen V1.1 plan + optimizations - docs/WORK-INVENTORY.md — what exists / what's next - docs/CHECKPOINTS.md — Checkpoints A/B/C acceptance - docs/decisions/ — ADR-001..004 CI 工作流文件位于源码检出目录中的 .github/workflows/ci.yml,但尚未提交到此仓库:发布令牌缺少 GitHub workflow 权限范围(GitHub 会拒绝在没有该权限的情况下创建/更新工作流文件的 PAT 推送)。要启用 CI:通过具有 workflow 权限范围的账户/令牌发起拉取请求来添加该文件,或为发布令牌授予该权限范围。该工作流会在 windows-latest + Node 24 上运行 pnpm build、pnpm test、verify:contract、 scan:secret、scan:path、hash:artifacts。 仓库主题 dsh-plugin、deepseek-harness、deepseek、control-center 许可证 MIT。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
brittanistrehlowll-oss/dsh-control-center
一键装好额度面板与控制条,随时重启或关闭 DSH
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,025未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,358已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13938 个插件含 PR 收录与…
★ 350已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7