dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DSH 工作区权限面板:搜索、分组、批量修改会话权限,显示当前会话实际生效策略。产物均由 AI 生成。
DSH(DeepSeek Harness)的工作区权限面板:一页看完所有会话的权限,想改哪个点哪个,还能一次改一批。
同一份源码同时支持 Web 与 Desktop 两种载体。
本项目的代码、测试、文档与提交信息等产物均由 AI 生成,作者只提供想法与方向。详见文末 AI 生成声明 与 免责声明。
DSH 里每个会话都有自己的权限预设(仅可查看 / 工作区内修改 / 完全权限),但这些设置散在各处:要改一个会话得先进那个会话,想确认「到底哪几个会话是完全权限」就得一个个翻。
这个面板把所有会话的权限收进一张表:按工作区分组、可搜索、可按权限等级筛、可勾选批量改。它不存任何权限状态——读的是宿主当前的权限,改也是走宿主的原生命令,所以面板显示的和会话里实际生效的永远是同一个东西。
# 从 npm 安装(推荐)
dsh plugin --profile <profile> add dsh-permission-panel
# 需要固定某一版时
dsh plugin --profile <profile> add dsh-permission-panel@3.3.0
--profile 是必填项,没有默认 profile。--profile desktop 只能用 DSH Desktop 自带的 dsh;普通 @deepseek-ai/dsh 会拒绝。dsh plugin --profile <profile> remove dsh-permission-panel。dsh web)。之后在 设置 → 插件 能看到「权限面板」与「工作区权限」两页。从源码或 tarball 安装、以及包内字段的说明,见 docs/COMPATIBILITY.md。
两个入口,看到的是同一份数据:
每个会话一行:彩色首字头像、标题、工作目录,正在运行的带绿点。子代理会话不列。
按工作区分组,默认收起。组头显示工作区名、路径、会话数和已选数,点组头可单独折叠;不属于任何工作区的会话落在末尾「未分组」。工具栏有「展开全部 / 折叠全部」。
某个会话的权限还没读出来时,那一行会显示「待读 / 读取中 / 失败」。面板是在向宿主查询,不会把会话打开或激活,所以可以放心让它在后台读;实在读不出来点一下刷新。
搜索和筛选可以叠加使用。
权限预设就三档:仅可查看、工作区内修改、完全权限。
改单个:点这一行右边的下拉,选一档,立刻生效。
改一批:勾选要改的会话,底部出现批量条,选预设后点「应用到所选」。部分失败会告诉你哪几个没改成,不会假装全部成功。
筛选只作用于看得见的行:被搜索或筛选藏起来的行会自动从选中里去掉——批量操作只对眼前这些行生效,不会悄悄改到你没看见的会话。折叠不影响已勾选:把组收起来,之前勾的还在。
切到完全权限会先确认:勾选风险提示才能继续。批量切也只问一次,不会问十遍。
面板里有「新会话默认权限」一项,改的是之后新建的会话用哪个预设,已经存在的会话不受影响。
从会话头部打开时,面板顶部会显示当前会话的标题、它现在实际生效的预设,以及宿主对这个预设的原文说明。这里的值不是面板自己记的,是现场从宿主读回来的——所以在别处改过权限,重开面板或点「重新读取」就能看到最新值。
这张卡片只在会话头部入口出现。设置页没有「当前会话」这个概念,DSH 也没有受支持的接口能回答主视图里是哪个会话,所以设置页不猜,直接告诉你从会话头部进。
| 命令 | 默认键位 | 载体 |
|---|---|---|
| 重启 DSH(权限面板) | Ctrl+Shift+R(macOS Cmd+Shift+R) | 仅 Desktop |
它注册进官方快捷键服务,所以直接出现在 设置 → 快捷键 里,可以像官方命令一样改键、恢复默认、参与冲突检测。浏览器里没有应用可重启,所以这个键位只在 Desktop 存在。
按下后先弹出一张居中的确认卡片(毛玻璃 + squircle 圆角),点「立即重启」DSH 就会关掉并自动重新启动;按 Esc、点「取消」或点卡片外部都不会重启。正在运行的任务会随重启中断,所以这里始终先问一句。
不弹官方对话框是刻意的:DSH Desktop 没有提供「静默重启」的接口,插件这套机制改成了自己起一个脱离进程树的助手——它先等 Electron 主进程退出,再把应用重新拉起,所以既不会有崩溃提示,也不需要手动点确认。浏览器(Web)载体里没有应用可重启,所以这个键位只在 Desktop 存在。
在 设置 → 插件 → 权限面板 里可以关掉这个快捷键;关掉只是按下不执行,键位和冲突检测都不受影响。
| 文档 | 内容 |
|---|---|
| docs/DEVELOPMENT.md | 测试怎么跑、每个测试守着什么、调试工具、以及一些设计取舍的原因 |
| docs/COMPATIBILITY.md | DSH 0.2.x 哪些接口能用、插件字段的含义、从旧包名迁移 |
| docs/RELEASING.md | 发版流程、npm 可信发布者登记、发布后验收、失败恢复 |
| AGENTS.md | 改动代码前必读的规则(分支、提交规范、检查命令) |
当前 3.3.0。3.x 主要节点:3.0.x 修掉归档流锁死刷新、注入缺失、冷读失败静默丢弃、切换后不回写等一批缺陷;3.1.0 增加搜索、两级全选、按工作区分组与当前会话策略卡片;3.2.0 把工作区分组改为默认折叠并补上展开/折叠全部与折叠组已选计数;3.3.0 增加按权限等级筛选与定位当前会话按钮。
更早的记录可在 git 提交里查到。
本项目的代码、测试、文档、提交信息等全部产物均由 AI 生成,作者只提供想法、方向与验收标准。AI 生成的内容可能包含错误、遗漏或不适用于你的环境的假设;请把它当作需要你自己复核的草稿,而不是权威实现。
本项目仅供个人学习和研究使用。