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

工作流画布 zzz123123lll/workflow-canvas-sidebar

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

把目标拆成多个 AI 步骤协作,产出可下载文件

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

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

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add zzz123123lll/workflow-canvas-sidebar
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · vision
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 1 天前
档位由哪些信号合成

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

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

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

可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 54 处,展示前 31 条)
  • 读取本地文件
    index.js:29
    const INSTALLED = existsSync(join(SERVER_DIR, 'canvas_editor_server.py'))
  • 读取本地文件
    index.js:31
    try { PLUGIN_CONFIG = JSON.parse(readFileSync(join(__dirname, 'canvas-home.json'), 'utf8')) } catch { PLUGIN_CONFIG = {} }
  • 读取本地文件
    index.js:44
    ? (existsSync(BUNDLED_PY) ? BUNDLED_PY
  • 读取本地文件
    index.js:45
    : (existsSync(join(BASE, 'venv', 'Scripts', 'python.exe')) ? join(BASE, 'venv', 'Scripts', 'python.exe') : 'python'))
  • 写入本地文件
    index.js:51
    mkdirSync(BASE, { recursive: true })
  • 写入本地文件
    index.js:53
    mkdirSync(join(BASE, directory), { recursive: true })
  • 读取本地文件
    index.js:56
    if (!existsSync(join(BASE, 'kb', 'modules.json')) && existsSync(seedKb)) {
  • 读取本地文件
    index.js:115
    try { return JSON.parse(readFileSync(path, 'utf8')) } catch { return fallback }
  • 执行外部命令来自配置/变量
    index.js:120
    execFile(PY, args, { cwd: CODE_CWD, env: CHILD_ENV, timeout, encoding: 'utf8', maxBuffer: 4 * 1024 * 1024 },
  • 执行外部命令来自配置/变量
    index.js:127
    execFile(PY, args, { cwd: CODE_CWD, env: CHILD_ENV, timeout, encoding: 'utf8' }, (err, stdout, stderr) => {
  • 执行外部命令来自配置/变量
    index.js:168
    execFile(PY, [WF].concat(args), { cwd: CODE_CWD, env: CHILD_ENV, timeout: 60000, encoding: 'utf8' }, (err, stdout, stderr) => {
  • 写入本地文件
    index.js:176
    mkdirSync(RUNS, { recursive: true })
  • 执行外部命令来自配置/变量
    index.js:178
    const child = spawn(PY, [WF].concat(args), { cwd: CODE_CWD, detached: true, windowsHide: true, stdio: ['ignore', fd, fd] })
  • 执行外部命令来自配置/变量
    index.js:187
    execFile(PY, args, { cwd: CODE_CWD, env: CHILD_ENV, timeout, encoding: 'utf8' }, (err, stdout) => {
  • 写入本地文件
    index.js:244
    mkdirSync(join(BASE, 'kb'), { recursive: true })
  • 写入本地文件
    index.js:245
    if (existsSync(WORKFLOW)) copyFileSync(WORKFLOW, backup)
  • 写入本地文件
    index.js:248
    writeFileSync(WORKFLOW, JSON.stringify(wf, null, 2), 'utf8')
  • 执行外部命令来自配置/变量
    index.js:254
    execFile(PY, ['workflow.py', 'status', '--json'], { cwd: CODE_CWD, env: CHILD_ENV, timeout: 120000, encoding: 'utf8' },
  • 发起网络请求
    client.js:34
    return fetch(API + path, opts).then(function (r) {
  • 写入剪贴板
    client.js:2948
    workspaceSessionId(data) ? h("button", { onClick: function () { try { navigator.clipboard.writeText(workspaceSessionId(data)); setMsg("已复制会话 id"); } c
  • 读取本地文件
    host-sessions.js:11
    try { return JSON.parse(readFileSync(path, 'utf8')) } catch (error) {
  • 写入本地文件
    host-sessions.js:17
    mkdirSync(join(path, '..'), { recursive: true })
  • 写入本地文件
    host-sessions.js:19
    writeFileSync(temporary, JSON.stringify(value, null, 2), 'utf8')
  • 写入本地文件
    host-sessions.js:20
    renameSync(temporary, path)
  • 写入本地文件
    host-sessions.js:23
    mkdirSync(join(path, '..'), { recursive: true })
  • 写入本地文件
    host-sessions.js:26
    const fd = openSync(lock, 'wx'); writeFileSync(fd, String(process.pid)); closeSync(fd)
  • 读取本地文件
    host-sessions.js:29
    const pid = Number(readFileSync(lock, 'utf8'))
  • 删除本地文件
    host-sessions.js:34
    unlinkSync(lock)
  • 删除本地文件
    host-sessions.js:37
    return () => { try { unlinkSync(lock) } catch (error) { if (error.code !== 'ENOENT') throw error } }
  • 写入本地文件
    server/capture_ui.cjs:23
    fs.mkdirSync(framesDir, { recursive: true });
  • 写入本地文件
    server/capture_ui.cjs:24
    fs.mkdirSync(path.dirname(mainPath), { recursive: true });
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

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

面向 DeepSeek Harness 的视觉 AI 项目工作流:素材、讨论、修订与交付物。

README

由 DeepSeek 最新模型翻译生成
工作流画布 · Workflow Canvas 把一个目标交给多个 AI 步骤协作,持续讨论、局部修改,最后拿到能使用的文件。 这是 DeepSeek Harness 的可视化项目工作台。适合研究写作、资料整理和配置后的短视频制作。项目保存目标、资料、流程、会话和成果版本;画布负责分工,模块工作区负责协作,成果页负责阅读、审阅与下载。 当前源码:v0.17.0 RC3,精简市场候选版。 RC2 因解压体积超过市场 256 MiB 上限未获收录;RC3 去掉冗余独立 Harness 运行时,改用宿主现有子会话。发布与收录状态见插件市场说明。欢迎直接试用并反馈,不收取插件费用;模型服务和可选视频工具按各自条件使用。 English · 安装与快速开始 · 插件市场 · 视频配置 · 升级与恢复 · 兼容与限制 你可以做什么 - 资料到文章:读资料、核对事实、写正文和来源,审阅后交付。 - 简短动态图形视频:分镜/字幕、原创工程、真实渲染,再改片尾或字幕。 - 自定义文件任务:修改一个通用 AI 模块,让它输出 Markdown、JSON 或自己的文件。 - 继续同一模块的对话;原生聊天修改回到画布,登记为新版本。 - 上游改稿只更新受影响步骤,旧版保留;共享知识经确认后用于后续项目。 - 当前工作和交付版分开选择,旧待办有明确的历史/替代状态。
展开完整文档(README 剩余 1 节)
工作流画布 · Workflow Canvas

把一个目标交给多个 AI 步骤协作,持续讨论、局部修改,最后拿到能使用的文件。

这是 DeepSeek Harness 的可视化项目工作台。适合研究写作、资料整理和配置后的短视频制作。项目保存目标、资料、流程、会话和成果版本;画布负责分工,模块工作区负责协作,成果页负责阅读、审阅与下载。

当前源码:v0.17.0 RC3,精简市场候选版。 RC2 因解压体积超过市场 256 MiB 上限未获收录;RC3 去掉冗余独立 Harness 运行时,改用宿主现有子会话。发布与收录状态见插件市场说明。欢迎直接试用并反馈,不收取插件费用;模型服务和可选视频工具按各自条件使用。

English · 安装与快速开始 · 插件市场 · 视频配置 · 升级与恢复 · 兼容与限制

你可以做什么

- 资料到文章:读资料、核对事实、写正文和来源,审阅后交付。
- 简短动态图形视频:分镜/字幕、原创工程、真实渲染,再改片尾或字幕。
- 自定义文件任务:修改一个通用 AI 模块,让它输出 Markdown、JSON 或自己的文件。
- 继续同一模块的对话;原生聊天修改回到画布,登记为新版本。
- 上游改稿只更新受影响步骤,旧版保留;共享知识经确认后用于后续项目。
- 当前工作和交付版分开选择,旧待办有明确的历史/替代状态。

安装

受测平台为 Windows 11 x64,宿主基线 DeepSeek Harness 0.2.1-rc.5。请先安装并启动 Harness 一次。

市场渠道:在 Harness「插件 → 添加插件」填写 dsh-workflow-canvas-sidebar@0.17.0-rc.3,或运行:

dsh plugin --profile desktop add dsh-workflow-canvas-sidebar@0.17.0-rc.3

重启 Harness 后打开“画布”。市场包包含 Python 和 PDF 锁定依赖;AI 由 Harness 宿主执行,无需额外运行 install.cmd,也没有安装时自动执行的 install / postinstall 脚本。RC3 使用 npm 的 next 候选标签,请明确指定版本;现在可直接按包名安装,市场收录进度见申请 #201。

ZIP 渠道:先安装免费的 PowerShell 7,然后:

1. 从本仓库的 Releases 下载 Windows x64 完整 ZIP,并核对 SHA256SUMS。
2. 解压到固定目录,例如 C:\Tools\WorkflowCanvas,双击 install.cmd。
3. 安装完成后重启 Harness,打开左侧“画布”,核对显示版本与下载包一致。
4. 在项目总览选“资料到文章”,先用原创合成示例完成真实 AI 任务,再换成自己的资料。

完整包自带 Python 与锁定依赖,核心安装无需全局 Python 或 Node,依赖齐全时不会再次联网 pip 安装。模型运行仍需联网和 Harness 账号。Node、Chrome、FFmpeg 及 Remotion 仅用于视频,见配置步骤。

第一次目标可写:“把资料整理为给新志愿者看的 300 字说明,保留来源,不补造日期地点。”需要回答时打开对应模块;普通讨论、回复待办、创建修订是三个不同操作。

数据与升级

默认数据位于 %USERPROFILE%\.dsh-workflow-canvas,机器路径保存在不入发行包的 canvas-home.json。安装只登记本插件;不会更改宿主账号或清空会话。升级覆盖插件文件时保留此配置,再运行安装程序;内置模板只补缺,不覆盖用户定义。

任务资料会按你的操作交给 Harness 配置的模型或工具处理;本插件不另设模型账号。诊断报告在本地生成,不会自动上传。市场安装沿用已有数据目录;从自定义目录的 ZIP 安装切换时,按市场说明继续使用原目录。

卸载默认解除插件登记并保留数据;-ShowPlan 可先查看。分享项目默认只导出定义,项目资料需主动选择;不附账号、会话或机器工具配置。

开发与贡献

python -m venv .venv
.\.venv\Scripts\python -m pip install --require-hashes -r requirements-dev.lock.txt
.\.venv\Scripts\python -m pip install --require-hashes -r requirements.lock.txt
.\.venv\Scripts\python scripts/verify.py
.\.venv\Scripts\python scripts/build.py --output dist
.\.venv\Scripts\python scripts/npm_package.py --release-dir dist

开发依赖与运行锁分别安装,详见开发指南。构建从官方锁定的 Python ZIP 和 wheel 组装运行时,不复制维护者的环境;npm 打包从完整 ZIP 取得相同文件,产物为 .tgz 与 npm-manifest.json。manifest 记录源码摘要、提交和资产哈希。无账号 CI 只验证其实际覆盖范围。

遇到问题请使用仓库的 Bug/兼容报告模板,附版本、build、宿主版本和复现步骤。项目总览可以生成本地脱敏诊断,不要求提交私有对话。详见 CONTRIBUTING 与 SECURITY。

本项目代码为 MIT;第三方组件见 THIRD_PARTY_NOTICES。
预览分享卡片长什么样 ↓zzz123123lll/workflow-canvas-sidebar
分享 · DeepSeek Harness Hub
zzz123123lll/workflow-canvas-sidebar

把目标拆成多个 AI 步骤协作,产出可下载文件

这是你的仓库?认领条目

回到顶部