跳到主内容

dsh/packages/dsh

12Star1Fork0Issue0Watching

为 DeepSeek Harness 提供项目看板、任务表、AI 会议转录与意图落库的开源办公协作与团队管理插件。

机审证据5/5方法论数据来源安装命令持续维护DSH 版本风险扫描
机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
TypeScript
License
MIT
分支
main
ai-assistantsdsh-pluginknowledge-managementmeeting-assistantproject-managementproject-management-systemtask-managementteam-collaboration

安装

命令web profile
$ dsh plugin --profile web add github:juntaoding/Flowboard#path:packages/dsh

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 juntaoding/Flowboard/packages/dsh:先查看仓库 https://github.com/juntaoding/Flowboard 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

一句话定位

为 DeepSeek Harness 增加办公协作与团队管理能力:把项目、任务、会议、转录和资料放进同一个共享工作空间,让 DSH Agent 能像团队成员一样读、改、跟进这些工作。

核心能力

  • Jira 式项目看板:每个项目自带待办 / 进行中 / 已完成三栏工作流,支持拖拽、负责人、优先级、进度与截止时间
  • 多维任务表:支持文本、数字、日期、单选、多选、人员等自定义字段,原位编辑并保存到项目共享视图
  • 个人与团队视角:我的任务、个人看板、个人日程、跨项目聚合都在同一份业务数据上展示,不复制数据
  • 浏览器内 AI 会议:浏览器 VAD 自动切片 → 本地 Whisper 转录 → 会议 Supervisor 实时识别行动项、决议、风险
  • 可追溯的工作关系:项目、会议、任务、Markdown 资料之间通过 intent_key、evidenceFromSequence 等字段相互关联,能顺着任务找会议、找资料
  • 共享的写入通道:Agent 工具与浏览器 Remote 都走同一个 FlowboardService,写入统一经过授权、校验、幂等、乐观锁、事务与审计

技术实现

  • 语言: TypeScript(ESM),私有 workspace 包在构建时聚合进单一插件 tarball
  • 关键依赖: @flowboard/dsh-service(Host 端 Cordis 服务 + Agent 工具注册)、fastify(内嵌 HTTP API)、node:sqlite(持久化)、whisper.cpp(linux-x64 原生 CLI,随包发布)、antd + @dnd-kit/*(浏览器 UI)、@deepseek-ai/dsh-typert-protocol(Host/Client Remote 桥)
  • 架构模式: DSH Cordis 双端插件。Host 端通过 cordis.patch.yml 挂载 @flowboard/dsh,构造 FlowboardService(继承 TypertRemoteService)并启动内嵌 Fastify、SQLite、Whisper Worker;Client 端 packages/dsh-client/src/client/index.ts 通过 ctx.slots.inject 注册 conversation.view(FlowboardView)和 conversation.input.dock(FlowboardMeetingDock)两个槽位
  • 入口文件: packages/dsh/src/index.ts(仅 re-export)、packages/dsh-service/src/index.ts(Host 主入口)、packages/dsh-client/src/client/index.ts(Browser 主入口)、packages/server/src/runtime.ts(内嵌运行时)

适用场景

希望在不离开 DeepSeek Harness 的前提下让团队工作有"骨架"的团队:会议中口头产生的任务、决议、风险能自动转写并落到项目看板,Agent 在自己的 Session 里也能直接读、改这些任务,并把产出沉淀回同一任务上下文。适合需要把"会议 → 任务 → 文档"打通的小到中型团队,特别是已经在用 DSH Agent 协作的场景。

前置依赖与兼容性

依赖最低版本说明
DeepSeek Harness0.1.0-rc.6由 peerDependencies 声明,DSH Tools / Typert 协议等都是 ^0.1.0-rc.6
Node.js22.19.0 或 24+`engines.node: ^22.19.0
平台Linux x64内置 Whisper 仅发布 vendor/whisper/linux-x64,其他平台首次启动会议会抛错
原生模块node:sqlite、Whisper CLI、ggml-small 模型持久化与转写都是原生依赖;模型随包发布,约 430 MB
磁盘空间约 500 MB包含完整 ggml-small 转写模型

安装方式

dsh plugin --profile web add github:juntaoding/Flowboard#path:packages/dsh

配置项

插件没有运行时可视化配置页;可在安装目录的 cordis.patch.yml 里调整挂载参数。

配置类型说明默认值
embedded布尔是否在 DSH Host 进程内启动 Fastify + SQLite + Whisper Worker;关闭后只做远程客户端true
apiBase字符串内嵌 API 的访问地址,embedded: false 时指向独立部署的服务端http://127.0.0.1:8787
host字符串仅 embedded: true 时生效,绑定监听的网卡127.0.0.1
port数字仅 embedded: true 时生效,Fastify 监听端口8787
token字符串仅 embedded: true 时生效,可注入固定访问令牌;留空则每次启动随机生成 32 字节 base64url随机生成
dataDirectory字符串覆盖 SQLite 与上传目录的父目录$DSH_HOME/flowboard
FLOWBOARD_HOST / FLOWBOARD_PORT / FLOWBOARD_TOKEN / FLOWBOARD_DB / FLOWBOARD_UPLOAD_DIR / FLOWBOARD_PUBLIC_URL环境变量独立运行 packages/server/src/cli.ts(flowboard-whisper 之外的旁路)时使用—
FLOWBOARD_TRANSCRIBE_COMMAND / FLOWBOARD_TRANSCRIBE_ARGS / FLOWBOARD_TRANSCRIBE_LANGUAGE环境变量覆盖内置 Whisper,可换用其他 ASR 命令;ARGS 必须是 JSON 字符串数组linux-x64 走 vendor/whisper/linux-x64/bin/whisper-cli,语言 zh

常见问题

Q: 数据放在哪里?卸载后会丢失吗?

A: 默认写到 $DSH_HOME/flowboard,未设置 DSH_HOME 时是 ~/.dsh/flowboard。dsh plugin --profile web remove @flowboard/dsh 不会自动删除该目录,要清理的话先停 DSH 再手动备份和删除。

Q: 浏览器侧的会议录音会上传到哪?

A: 浏览器 VAD 把 PCM 编码成 WAV 切片,通过 flowboard_upload_audio 走 DSH Typert Remote 推到 Host 的 Fastify 上传接口,落到 $DSH_HOME/flowboard/uploads 下的临时文件,由同进程的 Whisper Worker 读取并删除,过程中不经过任何第三方服务。

Q: 浏览器会读到我的大模型 API Token 吗?

A: 不会。FlowboardService 只读取自己的内嵌访问令牌(默认随机生成),浏览器只与 Host 的 Typert Remote 通信;上游模型 Token 由 DSH Host 统一管理,浏览器代码拿不到。

Q: 我能在 macOS 或 Windows 上用会议转录吗?

A: 内置 Whisper CLI 只随包发布 Linux x64 版本,packages/server/src/whisper-runtime.ts 在其它平台会抛 "The bundled Flowboard transcriber does not support …"。要支持其它平台,要么新增经过校验的 vendor 变体,要么通过 FLOWBOARD_TRANSCRIBE_COMMAND / FLOWBOARD_TRANSCRIBE_ARGS 指向本机已有的 ASR 命令。

Q: Agent 调用 flowboard_create_task 会出错吗?

A: 一般不会。工具会先通过 client.snapshot 找到当前可写项目,缺失字段(如标题)会用"未命名任务"先建可修订实体,再让后续调用改;只有缺失可写项目 / 可写团队、权限不足、删除等不可逆操作会主动抛错并等待用户确认。

Q: 怎么升级插件?

A: 先下载新版本的 Alpha tarball 与 SHA256SUMS 并校验,再用 dsh plugin --profile web add --force ./flowboard-dsh-*.tgz 覆盖安装;当前 Alpha 不提供数据库迁移链,schema 版本变化时需要手动备份并清空 $DSH_HOME/flowboard 后再启动。

Q: 启动后默认有什么数据?

A: 首次启动会自动植入一个本地 Owner 账号(tenant-local)、Default Team、Default Project 以及三栏默认工作流(待办 / 进行中 / 已完成)和项目看板、任务表两个默认视图;可以在 DSH 设置里改名再建真实团队成员。

Q: 插件是开源的吗?

A: 是。仓库采用 MIT License,主页上有 CONTRIBUTING.md / SECURITY.md / CODE_OF_CONDUCT.md / THIRD_PARTY_NOTICES.md;Alpha 阶段只接受 v*-alpha.* tag 并通过 GitHub prerelease 发布。

上手难度

进阶 — 普通用户只需要安装后让 Agent 创建第一批任务,并在浏览器里开一场会议;但要理解任务、意图(intent_key / evidenceFromSequence / delivered vs analyzed 水位)等概念,需要熟悉一段时间;要自定义转写或部署分布式版本则需要阅读 docs/architecture/ 下的设计文档。

已知问题与限制

  • 内置 Whisper CLI 仅提供 Linux x64 vendor;macOS / Windows / Linux arm64 启动会议会抛平台不支持错误,需自备 ASR 并通过环境变量接入(packages/server/src/whisper-runtime.ts:36)
  • 当前只有一个本地 Owner 账号,没有完整的注册、邀请、令牌管理 UI(README.zh-CN.md:182)
  • 持久化仅支持 SQLite,没有 PostgreSQL adapter 或分布式部署方案(README.zh-CN.md:183)
  • 数据库 schema_migrations 当前固定版本 3,Alpha 阶段不提供生产迁移链;schema 演进需要手动清理 $DSH_HOME/flowboard 后重建(packages/server/src/database.ts:6、README.zh-CN.md:185)
  • 默认 API 监听 127.0.0.1,不直接对外服务;要远程访问需要自行用反向代理或改 FLOWBOARD_HOST 为 0.0.0.0 并提供有效 token(packages/server/src/runtime.ts:29)
  • 浏览器 VAD 与 Whisper 转写串行处理,默认 Worker 并发 2、单段最长 15 秒;长时间会议不会出现丢字但实时性取决于模型速度(packages/server/src/worker.ts:54、packages/dsh-client/src/client/use-audio-recorder.ts:13)
  • 不是每个 DSH Session 都会被自动绑定到任务;跨 Session 的执行追踪仍是产品演进方向(README.zh-CN.md:186)
  • 安装包包含完整 ggml-small 模型与 Linux 共享库,Alpha tarball 体积约 430 MB,已通过 GitHub Release 提供以避开 npm 字符串上限(CHANGELOG.md:11)

查看使用指南 →

该插件的安装步骤、关键要点、FAQ 与兼容性说明(基于已收录字段派生)。

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/juntaoding/Flowboard/packages/dsh)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录