在独立标签页实时查看各分组工作流运行状态
28.1/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add qichuang321/dsh-workflow-groups该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 24 处,展示前 20 条)
- 读取本地文件lib/index.js:11
const text = readFileSync(GROUP_MAP_PATH, "utf8").replace(/^ FEFF/, ""); - 写入本地文件lib/index.js:20
mkdirSync(join(process.env.DSH_HOME ?? homedir(), ".dsh"), { recursive: true }); - 写入本地文件lib/index.js:21
writeFileSync(GROUP_MAP_PATH, JSON.stringify(map, null, 2), "utf8"); - 读取本地文件lib/index.js:31
return [...new Set(candidates)].filter((dir) => existsSync(dir)); - 读取本地文件lib/index.js:41
if (!existsSync(runPath)) return void 0; - 读取本地文件lib/index.js:44
run = JSON.parse(readFileSync(runPath, "utf8")); - 读取本地文件lib/index.js:52
const manifest = JSON.parse(readFileSync(join(dir, "manifest.json"), "utf8")); - 读取本地文件lib/index.js:62
const eventsText = readFileSync(join(dir, "events.jsonl"), "utf8"); - 发起网络请求lib/client.js:37
const response = await fetch(`${API_PREFIX}/list`, { method: "GET" }); - 发起网络请求lib/client.js:42
const response = await fetch(`${API_PREFIX}/clear`, { method: "POST", headers: { "content-type": "application/json" }, body: "{}" }); - 发起网络请求src/client.ts:23
const response = await fetch(`${API_PREFIX}/list`, { method: 'GET' }) - 发起网络请求src/client.ts:29
const response = await fetch(`${API_PREFIX}/clear`, { method: 'POST', headers: { 'content-type': 'application/json' }, body: '{}' }) - 读取本地文件src/index.ts:49
const text = readFileSync(GROUP_MAP_PATH, 'utf8').replace(/^ FEFF/, '') - 写入本地文件src/index.ts:59
mkdirSync(join(process.env.DSH_HOME ?? homedir(), '.dsh'), { recursive: true }) - 写入本地文件src/index.ts:60
writeFileSync(GROUP_MAP_PATH, JSON.stringify(map, null, 2), 'utf8') - 读取本地文件src/index.ts:73
return [...new Set(candidates)].filter((dir) => existsSync(dir)) - 读取本地文件src/index.ts:86
if (!existsSync(runPath)) return undefined - 读取本地文件src/index.ts:89
run = JSON.parse(readFileSync(runPath, 'utf8')) - 读取本地文件src/index.ts:98
const manifest = JSON.parse(readFileSync(join(dir, 'manifest.json'), 'utf8')) - 读取本地文件src/index.ts:109
const eventsText = readFileSync(join(dir, 'events.jsonl'), 'utf8')
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-session@deepseek-ai/dsh-tools给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 独立标签页展示
- 实时查看运行状态
- 显示阶段与子agent
分组工作流看板插件:每个分好组的 workflow 在 DSH Web GUI 有独立标签页实时展示状态/阶段/子agent/日志
README
由 DeepSeek 最新模型翻译生成dsh-workflow-groups · 分组工作流看板
为 DeepSeek Harness Web GUI 提供分好组的工作流看板:每个分组的 workflow 在会话头部的独立「工作流」标签页中实时展示 —— 状态徽章、阶段进度、子 agent 明细与实时日志。
功能
- 分组展示:每个分组一个独立面板,组内逐条展示每个 workflow 的运行卡片。
- 实时刷新:每 2 秒轮询 /api/workflow-groups/list,另有「刷新」「清空」按钮。
- 模型工具:
- workflow_new —— 创建并启动一个分组 workflow(经 ctx.dynamicWorkflows.startInline 直接启动引擎,approvalGranted 免审批;引擎不可达时登记为「已登记」);
- workflow_groups —— 只读列出当前分组面板数据。
- 数据源:直接读取 workflow 引擎的持久化运行目录(.dsh/workflow-runs/run-* 下的 run.json + manifest.json + events.jsonl),无需事件流接线;分组名持久化在 ~/.dsh/dsh-workflow-groups.json(runId → group),重启不丢。
展开完整文档(README 剩余 1 节)
dsh-workflow-groups · 分组工作流看板 为 DeepSeek Harness Web GUI 提供分好组的工作流看板:每个分组的 workflow 在会话头部的独立「工作流」标签页中实时展示 —— 状态徽章、阶段进度、子 agent 明细与实时日志。 功能 - 分组展示:每个分组一个独立面板,组内逐条展示每个 workflow 的运行卡片。 - 实时刷新:每 2 秒轮询 /api/workflow-groups/list,另有「刷新」「清空」按钮。 - 模型工具: - workflow_new —— 创建并启动一个分组 workflow(经 ctx.dynamicWorkflows.startInline 直接启动引擎,approvalGranted 免审批;引擎不可达时登记为「已登记」); - workflow_groups —— 只读列出当前分组面板数据。 - 数据源:直接读取 workflow 引擎的持久化运行目录(.dsh/workflow-runs/run-* 下的 run.json + manifest.json + events.jsonl),无需事件流接线;分组名持久化在 ~/.dsh/dsh-workflow-groups.json(runId → group),重启不丢。 安装 从 GitHub dsh plugin --profile web add https://github.com/CriscolTheCoder/dsh-workflow-groups 安装后刷新页面,会话头部出现「工作流」标签;Agent 调用 workflow_new 创建分组 workflow 即实时出现在对应分组面板。 依赖与配置 - 需要 workflow 引擎:本看板展示的是 @dsh-external/workflow(DSH 工作流引擎)产生的运行。请确保该插件已安装: dsh plugin --profile web add @dsh-external/workflow - 审批策略为 never 时必须配置(否则工作流无法运行):workflow 引擎默认 approvalMode: generated-and-local(inline 生成的工作流要先过一次审批)。 当会话审批策略是 never 时,该审批请求会被自动拒绝,工作流报 workflow approval rejected。此时在 profile 的 cordis.patch.yml 中给引擎加配置覆盖: - id: dsh-external-workflow config: approvalMode: never 之后重启 DSH web。若审批策略是 ask,则无需此配置(审批弹窗放行即可)。 结构 src/index.ts Host 半区:run 目录扫描、group 映射、模型工具、HTTP 路由 src/client.ts Client 半区:「工作流」conversation.view 标签页(react 外部化,随 shell 渲染) cordis.patch.yml 插件行(insert: workflow-groups) scripts/build.mjs 构建(esbuild bundle 到 lib/) 开发 node scripts/build.mjs License Apache-2.0
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
qichuang321/dsh-workflow-groups
在独立标签页实时查看各分组工作流运行状态
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,350已汉化DSH
71.5
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,506已汉化DSH
71.1
AI 矢量设计工具ZSeven-W/openpencil
全球首个 AI 原生开源矢量设计工具。
★ 7,027已汉化DSH
71.1
这是你的仓库?认领条目