Menghuan1918
9c8bdc4aa5
ci: bump actions to Node-24-based majors (checkout@v7, setup-node@v7, pnpm/action-setup@v6)
...
Clears the runner deprecation annotation: the previous major versions
target Node 20 and are force-run on Node 24.
2026-08-14 16:57:06 +08:00
Menghuan1918
bd49fcc3cd
ci: restrict spawn-helper test to macOS, its only platform
...
node-pty@1.1.0 builds the spawn-helper executable only for OS=="mac"
(binding.gyp); linux uses forkpty directly and ships no helper at all.
The test's non-Windows premise was wrong for linux, and no candidate
exists there to assert on.
2026-08-14 16:54:50 +08:00
Menghuan1918
c8fc6c7cbf
ci: fix Linux runner test failures (shallow clone, git identity, node-pty prebuild)
...
- checkout with fetch-depth: 0: the git log paging test needs the full
repository history (default shallow clone yields one commit)
- configure a global git identity on the runner: src/git.ts deliberately
never sets one and revert/cherry-pick rely on ambient config
- tests/unit.spec.ts: node-pty@1.1.0 ships a prebuilt spawn-helper only for
darwin/win32; on linux node-gyp compiles it into build/Release. Align the
assertion with ensureSpawnHelper's candidate list instead of hardcoding
the prebuilds/ path (the Linux test run was red for this reason)
2026-08-14 16:52:57 +08:00
Menghuan1918
20bb60dd03
ci: add GitHub Actions workflow for tests and type/build checks
...
Run pnpm install --frozen-lockfile, typecheck, test (vitest) and build on
push to main and all pull requests.
2026-08-14 16:02:57 +08:00
Menghuan1918
df1ab1c65f
docs: 友情链接新增 dshfind 三方插件市场
2026-08-14 16:00:23 +08:00
Menghuan1918
131398efe1
docs: 友情链接新增 dsh-TUI(ccch1mneyyy)
2026-08-14 15:56:42 +08:00
Atlas Zeng
77ed1ba437
Merge pull request #33 from omdsh-dev/fix/install-script-ws-yml
...
fix: install.sh 变量加花括号($WS_YML:→ ${WS_YML}),修复 macOS bash 3.2 unbound variable(#23)
2026-08-14 15:38:54 +08:00
Menghuan1918
d94465c28d
fix: install.sh 变量加花括号($WS_YML:→ ${WS_YML}),修复 macOS bash 3.2 下 unbound variable(#23)
2026-08-14 15:38:43 +08:00
Atlas Zeng
387992a13f
Merge pull request #32 from omdsh-dev/Menghuan1918-patch-1
...
Update README.md
2026-08-14 15:30:26 +08:00
Atlas Zeng
52341a9d60
Update README.md
2026-08-14 15:30:12 +08:00
Atlas Zeng
cde107ce9e
Merge pull request #27 from omdsh-dev/fix/terminal-open-zero-size
...
fix: 终端延迟到容器有尺寸后再 open(零尺寸初始化崩溃,WKWebView 底部面板空白,issue #25)
v0.11.0
2026-08-14 15:28:47 +08:00
Menghuan1918
0c254a2197
docs: README 末尾新增友情链接(dsh-tianshu-tui,双语同步)
2026-08-14 15:03:03 +08:00
Menghuan1918
c5fda3716d
docs: README 增加最近更新块(v0.11 要点 + #25 修复),精简功能一览(双语同步)
2026-08-14 14:59:44 +08:00
Menghuan1918
37d91befdb
fix: 终端延迟到容器有尺寸后再 open(零尺寸初始化崩溃,WKWebView 底部面板展开后终端空白,#25)
2026-08-14 14:53:03 +08:00
Menghuan1918
d83490c93e
feat: 终端二级设置支持自定义字体(字体族 + 9–32px 字号,实时生效)
...
- SidebarPrefs 新增 terminalFontFamily(空 = 跟随主题等宽字体)/ terminalFontSize(9–32,默认 13),PrefsSchema 与 parsePrefs 同步校验
- 声明式设置 API 扩展:SidebarSettingToggle 支持 type: 'switch' | 'text' | 'number'(缺省 switch,向后兼容)+ min/max/placeholder/unit
- 终端卡片齿轮弹窗新增「终端字体」「终端字号」两行:blur/Enter 提交、number 钳制、提交失败回滚草稿
- TerminalView 经 store 订阅实时应用字体(options + re-fit + resize),懒加载 chunk 无新增依赖
- 新增 resolveTerminalFont 纯函数(回退链:用户字体 → 主题 token → 内置等宽栈)并单测
- 版本 0.11.0,README/AGENTS.md/设计文档同步
2026-08-14 14:36:49 +08:00
Menghuan1918
96064c31a9
docs: DSH 对 client 改动热加载,更新各处「重启 DSH」说明为硬刷新即可(仅 host 半改动需重启)
2026-08-14 14:07:55 +08:00
Menghuan1918
047f48337d
feat: 侧边卡片设置页视觉重构——分组容器卡片、计数徽标、自定义开关、加宽设置弹窗(描述 + 完成按钮),卡片齿轮与勾选徽标纵向对齐同尺寸
2026-08-14 14:07:52 +08:00
Atlas Zeng
efb2e2bd58
Merge pull request #17 from omdsh-dev/release/v0.10.3
...
release: v0.10.3 — turnTail 拦截修复 + 安装体验升级(新增 Windows 一键脚本)
v0.10.3
2026-08-14 01:04:27 +08:00
Menghuan1918
97e52b650e
docs: 安装章节折叠技术细节为可折叠块,版本引用更新为 0.10.3
2026-08-14 00:59:02 +08:00
Menghuan1918
3cbf43854b
docs: README_EN 同步安装章节(PowerShell 一键命令 + 分步手动 + 故障排查表)
2026-08-14 00:49:01 +08:00
Menghuan1918
e128c303bc
feat: 新增 Windows PowerShell 一键安装脚本 install.ps1,README 安装章节两平台同步
...
- scripts/install.ps1:官方 CLI 方式一键安装(PowerShell 5.1+/pwsh),
与 install.sh 对齐:预写 allowBuilds + minimumReleaseAgeExclude(幂等)、
执行 dsh plugin add、幂等清理旧手动挂载行;支持 -Version/-Restart/-DryRun。
- scripts/install.sh:加固 — -h/--help、Windows Git Bash 下 DSH_HOME 回退
$USERPROFILE、npm/pnpm view 双通道解析最新版本、失败提示细化、挂载行
清理改为逐块扫描(删除注释块跟随)。
- README.md:安装章节改为「① 前置 → ② 对应平台一键命令 → ③ 重启硬刷新」,
macOS/Linux 与 Windows PowerShell 双命令示例。
- package.json:files 列表纳入 scripts/install.ps1。
2026-08-14 00:48:44 +08:00
Menghuan1918
8bf6d1d7ba
chore: v0.10.3 — 发布 turnTail 拦截 slots.inject 修复(issue #15)
2026-08-14 00:41:10 +08:00
Menghuan1918
0f9af851ae
fix: 聊天产出文件行拦截改用 slots.inject 延迟注册(issue #15)
...
conversation.chat.turnTail 是宿主 ui-conversation 在 conversation.chat.node
children 表中声明的子插槽,直接 slots.register 会早于声明而抛
"not declared (a parent entry's children table must declare it)",
导致拦截注册失败回退默认 deliverables 行为并弹诊断条。
改用 ctx.slots.inject 等待声明落账后再注册(与官方
dsh-client-ui-deliverables 同款写法):已声明则同步注册,未声明则
在声明提交时注册,声明撤销自动卸载、重声明重新注册,fiber 卸载
幂等清理。editor tab 禁用门控与 openInSidebar 座位不变。
新增 tests/turn-tail-intercept.spec.ts 覆盖已声明/待声明/提前销毁
三种注册时机、editor 禁用回退与 openInSidebar 座位接线。
2026-08-14 00:41:08 +08:00
Menghuan1918
3d88752eb1
docs: 供应链策略说明改为「命令链无法完全规避,24h 后自动消失」
2026-08-14 00:21:01 +08:00
Menghuan1918
1b7c8ba497
docs: 安装置顶一键脚本;手动方式改为 npx dsh 命令链(自愈构建脚本拦截)
2026-08-14 00:12:25 +08:00
Menghuan1918
5a93f610d8
docs: 官方 CLI 安装默认最新版(不带 @版本)
2026-08-13 23:48:56 +08:00
Menghuan1918
9fdb44d9f9
feat: 支持官方 CLI 一行安装(dsh plugin add dsh-better-sidebar)
...
- package.json 声明 dsh.bundle.patch(./cordis.patch.yml),随包发布挂载
patch;dsh plugin --profile <name> add dsh-better-sidebar@<v> 自动完成
安装 + 注册到 dsh.profile.bundles + 下次启动挂载(无需手写挂载行)
- cordis.patch.yml:bundle 挂载层(insert better-sidebar)
- scripts/install.sh:改走官方 CLI;预写 allowBuilds(node-pty/protobufjs)
规避 pnpm 11 strict-dep-builds 非零退出;幂等移除旧手动挂载行防双挂载
- README(EN):安装置顶官方 CLI 一行命令
v0.10.2
2026-08-13 23:19:05 +08:00
Menghuan1918
e515d74f77
chore: v0.10.2 — 发布 [data-slot] 布局修复
2026-08-13 22:54:19 +08:00
Menghuan1918
0a07cff6a3
fix: 适配 DSH 0.1.x 的 [data-slot] DOM 结构,恢复 Session log 挤压与布局
...
DSH 0.1.x 把 slot 宿主包进 [data-slot] 容器:
#root > div[data-slot=root] > div.frame > div.centerCol
> div[data-slot=conversation] > div.root[data-phase]
> div[data-slot=conversation.session.header] > header
旧选择器 #root > div > div:nth-child(2) 选中的是 data-slot=root 包装
层的第 2 子元素(不存在,其唯一子元素是 frame),导致:
- 折叠态 header 右 padding 挤压失效(Session log 胶囊被按钮簇盖住)
- 底部面板纵向挤压 / 拖动过渡 / 减少动效全部失效
- Sidebar.tsx 中间列定位器(#root > div 的 children[1])失效,
底部面板宽度测量回退为 0
修复:全部改用 [data-slot] 语义锚点——
- 中间列:#root > div[data-slot=root] > div > div:nth-child(2)
- header:body[data-dsh-sidebar-collapsed]
[data-slot=conversation.session.header] > header
- Sidebar.tsx 定位器:#root [data-slot=conversation] 的 parentElement
(= centerCol,探针实测确认)
v0.10.1
2026-08-13 22:53:31 +08:00
Menghuan1918
a85d1ab004
feat: v0.10.1 — 新增一键安装脚本 scripts/install.sh,README 安装置顶 npm 方式
...
- scripts/install.sh:把插件以 npm 包形式装进 web profile(幂等写依赖 + 挂载行 + pnpm install;支持版本参数 / --restart / --dry-run)
- 版本 0.10.0 -> 0.10.1(修正 npm 元数据 repository URL 到 omdsh-dev)
- scripts/install.sh 纳入发布 files
2026-08-13 22:42:26 +08:00
Menghuan1918
b9f8eea56d
docs: 安装方式改为以 npm 包为主(源码/plugin-registry 降为可折叠可选)
2026-08-13 22:33:41 +08:00
Menghuan1918
72ba010ab7
docs: README 增加 npm 安装方式(dsh-better-sidebar@0.10.0)
2026-08-13 22:29:49 +08:00
Menghuan1918
1b7014b2d4
docs: 仓库迁移至 omdsh-dev/DSH-better-sidebar,更新 URL 引用
2026-08-13 22:29:20 +08:00
Menghuan1918
64c6aa477e
chore: v0.10.0 npm 发布准备
...
- @deepseek-ai/* 依赖换为实际发布版本(dsh-* ^0.1.0-rc.6、cordis ^4.0.1),
补齐 dsh-client-locale peer/dev 声明(对齐 dsh.client.inject)
- pnpm-lock.yaml 重新生成(移除旧 0.0.1-rc.1 图;锁文件不再引用未公开的 dsh-type-meta)
- pnpm-workspace.yaml 补 minimumReleaseAgeExclude 新版本条目
- src/context-types.ts 增加 @deepseek-ai/cordis 双 augmentation
- package.json 发布脚手架:publishConfig.access、prepublishOnly、files 含 README_EN/LICENSE
- README 版本注释同步(^0.1.0-rc.6 / dsh@0.1.0-rc.6)
2026-08-13 22:25:20 +08:00
Menghuan1918
5f6d4c97d5
docs: 快捷键移至安装之后,头部介绍区改用 HTML 徽标样式排版
2026-08-13 20:28:05 +08:00
Menghuan1918
58d6167b69
docs: README 顶部介绍区改为 HTML 居中排版并新增多语言跳转
2026-08-13 20:23:20 +08:00
Menghuan1918
23b1b564d7
docs: 新增英文 README_EN.md,优化安装指引(@deepseek-ai/* 已公开、plugin-registry 折叠)
2026-08-13 20:19:56 +08:00
Menghuan1918
b31a9a601f
fix: md 预览代码块复制按钮跟随 DSH i18n(MarkdownText 补传 codeLabels)
2026-08-13 10:26:57 +08:00
Menghuan1918
2e9db44a71
chore: v0.9.0 — 版本升级(适配 DSH 命名契约重命名)
v0.9.0
2026-08-13 09:07:19 +08:00
Menghuan1918
1bfabbbfc2
feat: 适配 DSH 命名契约重命名(jobs/terminal/webServer)并处理 Session log 按钮位置
...
- tasks→jobs:ctx.jobs / job_output / job_id / session/jobs / jobsBySession / Job* 词汇
- httpServer→webServer(inject + augmentation + register/registerUpgrade)
- autoOpenTasks→autoOpenJobs 偏好键
- 右上角开关簇回到角落,注入 CSS 挤开 header 的「Session log」胶囊
2026-08-13 09:06:55 +08:00
Menghuan1918
ce052faee8
feat: 预览区划选文字浮窗「添加到对话」(md 预览 + 兜底 code 查看器)
2026-08-13 01:39:59 +08:00
Menghuan1918
a2bb04bce0
fix: 底栏宽度直测中间列,修复启动竞态下底栏跑到最左边
...
- 底栏 left/right 由「appSidebarWidth + detailsWidth + 面板宽反推」改为直接测量 AppFrame 中间列的 bounding rect(唯一真源,展开/收起动画期间跟随 margin-right 挤压)
- 拖动期间暂停测量(avoid per-frame 重渲染卡顿),拖动结束显式重测
- #root MutationObserver 自愈启动竞态:旧实现一次查询失败后永远卡在零尺寸回退(表现为 1px 细条贴在视口最左)
2026-08-13 01:17:01 +08:00
Menghuan1918
422d5e3c10
chore: v0.8.2 — 版本升级(跟随 DSH 的 i18n)
v0.8.2
2026-08-13 00:43:36 +08:00
Menghuan1918
9c5293c94b
feat: 界面文案跟随 DSH 的 i18n(ctx.locale 语言偏好、实时切换、词典入注册表)
2026-08-13 00:43:28 +08:00
Menghuan1918
983d2b2d71
chore: v0.8.1 — 版本升级(任务输出回放活事件镜像)
v0.8.1
2026-08-12 23:04:30 +08:00
Menghuan1918
6e4474cd2e
fix: 任务输出回放合并活事件镜像,修复重启后 store 会话滞后导致新读取不可见
...
- host 半挂 ctx.on('session/event')(api-proxy 同款 API),镜像 task_output
的 tool/call + tool/result 活事件(每会话 200 条有界环,无关结果不缓存)
- tasks.output 回放合并「store 事件日志 + 活事件镜像」,按 seq 去重排序配对
- 零 DSH 写入:会话 store 在宿主重启后可能冻结在再水合边界(持久化文件
停在重启时刻),活事件只走 append 推送链;镜像绕开该滞后
- 测试:新增镜像用例(live 事件、跨会话隔离、种子+镜像合并不双计),
全量 373 通过
2026-08-12 23:04:30 +08:00
Menghuan1918
88f116338a
feat: 任务管理页二级开关「有新后台任务时自动展开」(autoOpenTasks)
...
- 新 pref autoOpenTasks(默认开):当前会话出现新后台任务(任意新任务 id,
非仅首个)时自动展开侧边栏并打开任务管理页,与 autoOpenSubagent 并列
- 注册为 subagent tab 的声明式二级开关(设置页齿轮弹窗,key 在 PrefsSchema)
- Sidebar 新增独立基线 effect(镜像子代理自动展开;刷新不触发、开关关闭/类型
禁用不触发);detectNewTask 纯函数(settling/同 id/他会话不触发)
- 测试:detectNewTask 用例、prefs 解析断言、builtins 开关清单、schema 默认值
断言;全量 371 通过
2026-08-12 23:04:30 +08:00
Menghuan1918
b90251cce5
fix: 遵守仓库硬约束(禁止修改 DSH 源码)——tasks.output 改为会话事件回放
...
- 回退对 harness peek 缝隙的依赖:输出查看不再调用注册表,改为从属主
会话事件日志回放 task_output 的 tool/call+tool/result 对(模型已读内容)
- read:false 时面板提示「模型尚未读取」;'(no new output)' 增量与错误
结果过滤;截断上限不变;kill 走注册表原生 API(缺席时 503)
- AGENTS.md 新增 §0 硬约束:禁止修改 DSH 源码、挂载只走 cordis.patch.yml
+ profile 机制;设计文档同步实施偏差
- 测试:tasks-routes 重写为回放语义(拼接/过滤/read 标志/截断/503),
视图新增 read:false 提示用例;全量 369 通过
2026-08-12 23:04:30 +08:00
Menghuan1918
8c521be26e
chore: v0.8.0 — 任务管理页(子代理拓扑 + 后台命令底部输出 Dock、两击确认终止)
...
- tab 更名为任务管理:同页显示当前树全部后台命令(bash/pwsh 徽标、状态、时长、属主、退出码)
- 点击任务行在侧边栏底部共享 Dock 显示输出(sticky 终端式、自动跟随、单一轮询实例)
- 运行中任务两击确认强制终止;大量任务时列表保持紧凑、排序变动不跳动
- 新增 /sidebar/api tasks.output(非消费 peek,不偷模型 task_output 字节)与 tasks.kill 路由
- 修复任务镜像清空时的 React #300 hook 顺序崩溃(useCallback 移到提前 return 之前)+ 回归测试
2026-08-12 23:04:30 +08:00
Atlas Zeng
27bc49830e
Update README.md
2026-08-12 19:06:18 +08:00