🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

任务指挥台 catsenior507/dsh-command-center

DeepSeek 客户端
catsenior50737 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

一屏看清后台任务与等待中的提问,久静即提醒

29.8/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/catsenior507/dsh-command-center.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
生态应用
桌面端 / Web 外壳,不以 dsh plugin add 安装
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 37 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 8 处,展示前 8 条)
  • 写入本地文件
    lib/index.js:567
    mkdirSync(dir, { recursive: true });
  • 写入本地文件
    lib/index.js:568
    appendFileSync(join(dir, "llm-failures.jsonl"), JSON.stringify(record) + "\n");
  • 写入本地文件
    lib/index.js:697
    mkdirSync(dir, { recursive: true });
  • 写入本地文件
    lib/index.js:698
    appendFileSync(dir + "\\startup.log", line + "\n");
  • 写入本地文件
    src/index.ts:101
    mkdirSync(dir, { recursive: true })
  • 写入本地文件
    src/index.ts:102
    appendFileSync(join(dir, 'llm-failures.jsonl'), JSON.stringify(record) + '\n')
  • 写入本地文件
    src/index.ts:273
    mkdirSync(dir, { recursive: true })
  • 写入本地文件
    src/index.ts:274
    appendFileSync(dir + '\\startup.log', line + "\n")
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 监控后台任务
  • 识别长时间无动静
  • 提示等待中的提问

DeepSeek Harness 的指挥中心:一个面板盯住后台任务,分清是长时间没动静还是卡死,还能看到智能体什么时候在等你。

README

由 DeepSeek 最新模型翻译生成
dsh-command-center 一个 dsh 插件:把「正在跑什么、agent 在等谁、等了多久」放进一屏,并在 agent 停下来等你的时候喊你。 两组观察者 | | 看什么 | 怎么接 | | jobs | 正在运行的后台任务 | ctx.jobs,跨 agent 联合(见下) | | questions | agent 正在等回答的问题 | user-questions/request waterfall,只观察、绝不代答 | 三个必须知道的约束 1. jobs.list() 不传 caller 时看不到任何有主任务 任务按会话围墙,list() 省略 caller 只会返回无主任务。所以面板必须用 ctx.agents.list() 拿到所有活 agent,逐个 list(agent) 再按 id 去重合并 (src/host/registry.ts)。这个坑靠读类型签名发现不了 —— list(caller?) 里的问号看起来完全无害,只有真跑一个后台任务才会暴露:面板显示 tasks: 0 而任务明明在跑。
展开完整文档(README 剩余 1 节)
dsh-command-center

一个 dsh 插件:把「正在跑什么、agent 在等谁、等了多久」放进一屏,并在 agent 停下来等你的时候喊你。

两组观察者

| | 看什么 | 怎么接 |
| jobs | 正在运行的后台任务 | ctx.jobs,跨 agent 联合(见下) |
| questions | agent 正在等回答的问题 | user-questions/request waterfall,只观察、绝不代答 |

三个必须知道的约束

1. jobs.list() 不传 caller 时看不到任何有主任务

任务按会话围墙,list() 省略 caller 只会返回无主任务。所以面板必须用
ctx.agents.list() 拿到所有活 agent,逐个 list(agent) 再按 id 去重合并
(src/host/registry.ts)。这个坑靠读类型签名发现不了 —— list(caller?) 里的问号看起来完全无害,只有真跑一个后台任务才会暴露:面板显示 tasks: 0 而任务明明在跑。

2. ctx.slots 是属性访问,必须声明 inject

// src/client/index.tsx 顶部必须是:
export const inject = ['slots']

缺少它,整个浏览器 bundle 加载失败:

cannot get property "slots" without inject

(ctx as unknown as {...}).slots 这种强转骗得过 TypeScript,骗不过 cordis ——运行时照样抛。宿主端 ctx.get('jobs') 是方法调用,取不到返回 undefined,可以兜底;客户端 ctx.slots 是属性访问,缺声明直接崩。同样是取服务,两条路的安全性不同。

test/inject.test.ts 会在测试阶段拦住这类错误,并且有一条测试专门证明它抓得住这个 bug。

3. read 模式实测不安全,已停用(2026-09-22 实测)

原本想在 read 模式下读任务输出来测「沉默多久」✓ 思路没错 ✗ 但实测结果是不能做:

observe=read
agent sees: "" ← job_output 什么都拿不到

JobRegistry.read() 的消费游标是按任务记的,不是按调用者记的 ✓ —— 第二个读取者会把差异输出
从第一个那里拿走 ✗。所以插件一旦采样,agent 自己的 job_output 就永远返回空 ✓。

已回滚 ✗ 并把开关名从 DSH_COMMAND_CENTER_OBSERVE 改成了 DSH_COMMAND_CENTER_READ_OUTPUT ✓ —— 因为回滚一度没生效:守望者每次重启宿主都会重新抓取环境快照 ✓ 把运行中宿主里的旧值写回去 ✗ 于是盗窃被重新武装 ✓。换个没人设置的新名字,这条路就断了 ✓。

除非将来有了不消费的读取方式,否则不要再打开它 ✓。

4. 观察模式默认 changed-only

JobRegistry.read() 返回的是消费式差异输出。如果消费游标按任务记而不是按调用者记,
插件轮询就会把 agent 自己的 job_output 输出偷走。所以默认不读输出,每个响应里都带 observe: 'changed-only',面板据此显示「无活动数据」而不是画一根没测过的进度条。

改这个插件的流程

浏览器半边的改动会同时打断我自己的工作界面 —— GUI 坏了我就没法修,只能靠别人。所以:

1. 改代码 → npm test(含 inject 守卫)全绿;
2. npm run build,并确认 lib/client.js 里 exports.inject 与 dsh-clock 一致;
3. 需要重启才生效,重启前先说明,不要突然打断对话;
4. 重启后先读 ~/.dsh/command-center/startup.log 确认 jobs=watched api=4811,再去看界面。日志和 API 说法不一致时(曾经出现 jobs=watched 配 jobsWatched=false),那个矛盾本身就是 bug 的位置。

构建

npm install
npm test # 47 个测试
npm run build # lib/index.mjs (宿主) + lib/client.js (浏览器)

许可

MIT
预览分享卡片长什么样 ↓catsenior507/dsh-command-center
分享 · DeepSeek Harness Hub
catsenior507/dsh-command-center

一屏看清后台任务与等待中的提问,久静即提醒

这是你的仓库?认领条目

回到顶部