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

开发循环面板 jhfnetboy/dsh-devloop-ui

DeepSeek Harness
jhfnetboy48 天前有提交已提供中文文档扫描:含敏感能力

在侧边栏一键打开项目仪表盘并查看进度与支出

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

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

该插件未发布到 npm,按作者文档从 GitHub 源安装即可(静态检查只覆盖 npm 路径,不代表插件不可用)。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add jhfnetboy/dsh-devloop-ui
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · browser
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 48 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-devloop-ui(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/21 23:43:11

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

读写/删除本地文件发起外部网络请求
查看扫描证据(共 2 处,展示前 2 条)
  • 发起网络请求
    client.js:237
    const res = await fetch(`${API}/projects`)
  • 读取本地文件
    check-client.mjs:22
    const source = readFileSync(CLIENT, 'utf8')
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 侧边栏打开仪表盘
  • 查看项目进度
  • 查看项目支出

侧边栏入口,在 DSH Desktop 里打开 DevLoop 仪表盘——参考实现 + 交接说明,面向原生 Harness UI 的另一半

README

由 DeepSeek 最新模型翻译生成
dsh-devloop-ui 为 DevLoop 仪表盘提供的原生 DSH Desktop 界面:一个侧边栏入口,以及一个设置概览。 本包之所以存在,是因为 DevLoop 的仪表盘是 Harness 源上的一个路由(/devloop/),而不是一个 Harness UI 插件,而仅宿主的插件无法出现在应用的界面外壳中。DevLoop 本身没有任何变化:这是它的配套 UI 部分,单独保留,以便无需发布 DevLoop 即可安装、移除或重写它。 HANDOFF.md 记录了两半式包契约、客户端 bundle 格式、插槽规则、DevLoop 的 HTTP API,以及那些容易出错的约束。下面两个插槽都遵循它。 下面两个插槽都不是主内容区域:一个侧边栏按钮和一个设置区块是启动器和侧面板。对于应用中的一个页面——Chat 和 Trajectory 旁边填满视图区域的一个标签页——请注册到 conversation.view;参见 HANDOFF.md 的 §3。 它的作用 注册两个占用者: - sidebar.footer.action —— 侧边栏页脚中的一个图标按钮(侧边栏展开时显示图标加标签,折叠成窄栏时仅显示图标)。点击它会在新窗口中打开 /devloop/。
展开完整文档(README 剩余 1 节)
dsh-devloop-ui

为 DevLoop 仪表盘提供的原生 DSH Desktop 界面:一个侧边栏入口,以及一个设置概览。

本包之所以存在,是因为 DevLoop 的仪表盘是 Harness 源上的一个路由(/devloop/),而不是一个 Harness UI 插件,而仅宿主的插件无法出现在应用的界面外壳中。DevLoop 本身没有任何变化:这是它的配套 UI 部分,单独保留,以便无需发布 DevLoop 即可安装、移除或重写它。

HANDOFF.md 记录了两半式包契约、客户端 bundle 格式、插槽规则、DevLoop 的 HTTP API,以及那些容易出错的约束。下面两个插槽都遵循它。

下面两个插槽都不是主内容区域:一个侧边栏按钮和一个设置区块是启动器和侧面板。对于应用中的一个页面——Chat 和 Trajectory 旁边填满视图区域的一个标签页——请注册到 conversation.view;参见 HANDOFF.md 的 §3。

它的作用

注册两个占用者:

- sidebar.footer.action —— 侧边栏页脚中的一个图标按钮(侧边栏展开时显示图标加标签,折叠成窄栏时仅显示图标)。点击它会在新窗口中打开 /devloop/。
- settings.section —— 设置中的一个精简概览:每个已注册项目的名称、状态(需要你 / 运行中 / 空闲 / 完成,对应仪表盘自身的 lane 分类),以及今日总支出。它只读取 GET /devloop/api/projects(同源 fetch,面板打开时每 5 秒轮询一次)——启动项目、回答问题以及其他所有操作都留在仪表盘中,一键即可通过“打开完整仪表盘 →”或点击项目行(会直接打开该项目)到达。

两者都以窗口方式打开仪表盘,而不是将其嵌入,因为仪表盘会以 x-frame-options: DENY 和 frame-ancestors 'none' 作为响应。该窗口是应用窗口,而不是系统浏览器:DSH Desktop 的 isTrustedAppUrl 将每个 127.0.0.1 / localhost URL 都视为可信,并允许其在应用内打开。

布局

| 文件 | 作用 |
| index.js | 宿主部分。不注册任何内容——它的存在是为了让该包成为一个 Loader 条目,而这正是让 dsh-client-modules 组合并提供浏览器部分的原因。 |
| client.js | 浏览器部分。纯浏览器 JavaScript,由客户端模块加载器逐字求值:没有 TypeScript,没有 JSX,没有打包器。 |
| cordis.patch.yml | 插入单个 Loader 条目的 bundle 补丁。 |

package.json 承载声明的两半:dsh.bundle.patch(Loader 条目)和 dsh.client(浏览器部分加上 platform: "web")。

安装

安装到 DSH 配置文件中,从该配置文件自身的 Harness 执行:

DSH_HOME="$HOME/Library/Application Support/dsh-desktop/harness" \
PATH="$HOME/Library/Application Support/dsh-desktop/harness/.desktop-bin:$PATH" \
node "/Applications/DSH Desktop.app/Contents/Resources/app/node_modules/@deepseek-ai/dsh/lib/bin.js" \
plugin --profile web add link:/Users/jason/Dev/jhfnetboy/dsh-devloop-ui
之后重启 DSH Desktop —— 新的 bundle 在 Harness 启动时才会组合,因此不会实时生效。

移除它:

同样的 DSH_HOME / PATH 前缀 plugin --profile web remove dsh-devloop-ui

不重启 Desktop 进行验证

node check-client.mjs

针对加载器和插槽契约对 client.js 进行桩求值,覆盖两个占用者:加载器 id、导出的 face、每个注入的插槽、每个列表插槽的 id、侧边栏按钮的 onClick 目标,以及设置区的“Open full dashboard”操作(打开 /devloop/ 并调用 close())。
预览分享卡片长什么样 ↓jhfnetboy/dsh-devloop-ui
分享 · DeepSeek Harness Hub
jhfnetboy/dsh-devloop-ui

在侧边栏一键打开项目仪表盘并查看进度与支出

这是你的仓库?认领条目

回到顶部