gameswu/dsh-pref-kit

gameswu★ 2TypeScript最后同步: 2026-08-15

在 GitHub 打开

缓解部分dsh性能问题的插件

README 摘要

dsh-pref-kit 在数据流层面削减 DSH 会话事件量的性能插件:在 llm/stream 瀑布上合并模型流式输出的同类 delta, 减少写入日志、磁盘与推送到前端的会话记录。 功能 - 合并 text-delta / reasoning-delta (仅同一 block index、同一类型;30ms 窗口,0–200ms 可调,0 = 关闭) - assistant/chunk 事件量显著下降(离线基准实测 54–70%,见基准测试),宿主内存 / JSONL 磁盘 / 推送字节同步下降 - Settings → Plugins 提供 dsh-pref-kit 配置卡片(windowMs 字段,与内置插件卡片同款折叠样式 + 保存/放弃按钮,保存后热生效、跨重启保留,无需重启) - 不改渲染、不改事件语义与线上协议 安装 插件按官方 bundle 形式发布:包自带 cordis.patch.yml ( dsh.bundle.patch ), dsh plugin add 会自动把插件行挂入 profile 组合,无需手工编辑 patch 文件。 卸载: dsh plugin --profile web remove dsh-pref-kit (插件行随 bundle 一并移除)。 更新:重新 npm run build 后先 dsh plugin --profile web remove dsh-pref-kit 再 add ( file: 依赖按拷贝安装,需要 remove+add 刷新)。 配置 配置项 位置 默认 范围 合并窗口 windowMs Settings → Plugins → dsh-pref-kit 卡片 30 ms 0–200 ms(0 = 关闭合并) 组合行 config.windowMs 是设置值的 base 层(初始默认);UI 修改写入用户设置层并热生效, 恢复默认即回到组合值。窗口越小流式显示越即时,越大事件削减越多(首 chunk 延迟 ≈ 窗口)。 实现说明:Host 侧为类插件( PrefKitPlugin extends TypertRemoteService , @Remote('get'/'set') ), Remote 端点由 typert-loader 依据本包 exports["./typert"] 清单自动注册进 typert 注册表; Client 侧配置卡片经标准客户端 RPC 通道( connection.rpc.call('/api', 'prefKit/…') ,与内置 Remote 相同)读写,仅注册 Settings → Plugins 卡片,不触碰渲染器与原版样式。 基准测试 离线基准(uv 隔离环境:不连接 DSH、合成数据、虚拟时钟、确定性复现)实测 30ms 窗口的削减效…

在 GitHub 查看完整 README →
工具/开发dshdsh-plugindsh-plugins

分类