个人工作台面板:总览仪表盘、自定义看板、随手记与资料库,数据由 Host 持久化到本地 JSON。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-life-workbench
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:meihaoyidian/life-workbench
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DSH Web GUI 的个人工作台插件 —— 把「工作 / 生活 / 每日事项」收进一个玻璃拟态面板,一页完成全部日常交互。
- 总览:统计 + 执行 + 记录,所有操作就地完成,不用跳页
- 看板:多列看板,可自定义增删看板与事项,事项可挂附件
- 资料:上传文件与图片的总库,标注归属,可预览放大
- 每日事项:跨天自动归档当天明细(保留 90 天)再重置,可回顾
安装
dsh plugin --profile web add dsh-life-workbench
装完 重启 dsh host 并刷新浏览器,侧边栏出现「工作台」图标。
功能细节
总览
| 区段 | 内容 |
|---|---|
| 开头 | 问候 + 5 个 KPI 读数(今日完成 / 今日待办 / 累计完成 / 近七天 / 资料) |
| 统计 | 完成趋势(点击任意柱子回顾当天逐条明细)、看板进度 |
| 今日 | 今日执行、最近完成 |
| 记录 | 随手记、资料缩略图与上传 |
今日执行是一个统一列表:填了时间就是日程,不填就落进所选看板 —— 不用先想"我该用哪个入口"。日程按天归属,跨天自然不再出现。
看板
- 事项:双击改名、勾选完成、删除
- 事项附件:点回形针 → 上传即归属该事项
- 删除事项时,它的附件退回总库而不是跟着消失
每日事项
跨天时先把当天逐条明细(标题 + 完成状态)归档进 history,再重置勾选。所以能回答"上周三做了什么",而不是只剩一个计数。
数据
存放在 $DSH_HOME/life-workbench/(DSH_HOME 未设时即 ~/.dsh/life-workbench/):
state.json 工作台状态(看板 / 事项 / 便签 / 日程 / 归档)
blob-<id>.b64 上传的文件与图片
- 单次上传上限 8 MB
- 写入采用「临时文件 + rename」的原子替换,避免半截文件覆盖好数据
- 从资料库移除条目不会删除磁盘文件(没有删除 API 语义时保留原件)
开发
零构建 —— 纯 ESM JavaScript,改完 lib/*.js 重启 dsh host 即生效(不需要 TypeScript 或打包器)。
package.json 包清单(dsh.bundle.patch + dsh.client 声明)
cordis.patch.yml 插件行插入声明
lib/index.js Host 半边:数据权威 + HTTP 端点
lib/client.js 浏览器半边:__ModuleLoader__ 协议 + React UI
半边职责
- Host:结构归一、每日事项跨天归档、原子落盘、暴露 4 个端点。只依赖
webServer服务。 - Client:通过
window.__ModuleLoader__.load({ id, factory })装载,用require('react')取 React,注册到sidebar.panellist+main两个 slot。
Host ↔ Client 通信
正式插件没有动态插件的 host.call,因此走同源 HTTP:
| 端点 | 作用 |
|---|---|
POST /life-workbench/load |
读取状态(含每日归档与跨天重置) |
POST /life-workbench/save |
写入状态(history 以磁盘为准合并) |
POST /life-workbench/upload |
落盘一个 base64 文件 |
POST /life-workbench/readFile |
读回某个文件的 base64 |
两个已知的实现约束
Client 的 factory 必须
return module.exports—— 漏掉会让浏览器启动页报invalid plugin ... received undefined。link:安装时包自带的 bundle patch 不会被 dsh 收集(roster 里没有该 bundle 的 section)。这只影响本地 link 开发,此时改用 profile 用户层:# ~/.dsh/profiles/web/cordis.patch.yml - insert: - id: ui-life-workbench name: 'dsh-life-workbench'用
dsh --profile web --dump-config | grep -A2 life-workbench验证是否进入 roster。从 npm 安装没有这个问题 —— 已实测:roster 中会出现
# == dsh-life-workbench段,装完即可用,不需要任何额外步骤。
许可
MIT
链接
同类插件
zhu1090093659/dsh-web#packages/dsh-task-board★ 7809
侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。
zhu1090093659/dsh-web#packages/dsh-web-all★ 7809
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。
omdsh-dev/DSH-better-sidebar★ 3680
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。
ccch1mneyyy/dsh-TUI★ 3110
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。
MeteorNOX/DeepSeek-Balance-Whale-Widget★ 2750
右下角常驻的小鲸鱼挂件:余额、今日已用与每轮对话消耗(含峰谷价),余额预警与今日预算的泡泡内容都可编辑;泡泡点击序列模块化自定义,支持并列加权 A/B、随机台词与随机图片;内置 30+ 厂商模板(OpenAI / OpenRouter / Kimi / 硅基流动 / 方舟 / 智谱 / MiniMax 等),按模型查余额与订阅额度;另有任务结束音效、导入音频、自定义角色与资源管理。数据全在本机,无遥测。
Devin-AXIS/deepseek-design#deepseek-idesign★ 1359
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。