dsh-popout-sidebar 使用指南
为 DeepSeek Harness Web UI 添加可弹出独立标签页的产物与文件树侧边栏,跟踪代理写入/编辑的文件并按类型预览。
本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。
本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。
快速上手
dsh-popout-sidebar
— 源: plugin_wiki.wiki_content
安装与验证
dsh plugin --profile web add dsh-popout-sidebar
复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。
— 源: plugins.install
关键要点
- ↗️ 弹出为独立标签页:一键把侧边栏弹出为独立网页标签页(
/popout-sidebar),每 1.5s 自动刷新,可拖到另一块显示器上更大、更清晰地观看。 - 🗂 产物侧边栏:实时列出代理通过
write/edit创建或修改的文件,以及bash/pwsh命令在工作区里产生的文件(如脚本生成的图片);列表与预览区之间的分界线可拖动调整。 - 🌳 文件树:侧边栏与独立标签页内都有「文件树」,可浏览当前工作区目录(懒加载展开,点击文件即预览),并实时跟随工作区切换。
- 👀 多类型预览:按文件类型预览——代码 / 纯文本(语法高亮 + 行号)、Markdown 渲染、图片、PDF(浏览器原生查看器)、HTML(沙箱 iframe),超长内容自动截断。
- 📝 编辑差异:
edit修改过的文件在预览里展示「删除 / 新增」改动片段对比。
— 源: plugin_wiki.readme_zh (fallback readme_raw)
常见问题
安装后需要在浏览器做什么操作?
装完先重启 dsh web 让 host 端重新加载,然后浏览器做 Cmd/Ctrl+Shift+R 硬刷新;右上角会出现常驻的「产物」图标按钮(即使没有会话也可见)。详见 README 与 client/body.js:91-99 注册的 shell.overlay 触发按钮。
这个侧边栏和其他 sidebar 插件冲突吗?
不冲突。它把面板固定在右侧,其他 sidebar 打开时本面板自动让位到它们的左侧,两者可同时显示;面板宽度通过 --dsh-sidebar-width 让位偏移,详见 client/components.js:243-262。
「清除」按钮会删除磁盘上的文件吗?
不会。清除只是从内存里的产物列表移除条目(host/core.js:207-213 的 removeFile 仅 splice),磁盘文件保持不变;界面顶部还会有提示文案「仅清除内存记录,不删除磁盘文件」。
它怎么追踪 shell 命令产生的文件(比如 python 脚本生成的 PNG)?
bash 和 pwsh 这两个执行器不返回写文件结果,插件在工具执行前后对工作区做指纹快照(core.js:76-106 用 fs.listDir 递归 + 文件 version token,深度 16、文件数 5000 上限),比对差异后并入产物列表;其他不透明执行器暂不追踪。
DSH 必须是哪个版本才能用?
源码与 package.json 没有显式声明 DSH 最低版本。插件通过 dsh.bundle.patch + dsh.client.inject 注册,需要 DSH Web profile 的 cordis 加载器与 shell.overlay / settings.section 槽位(package.json:37-50);只要你的 DSH 版本支持这套挂载机制即可。
独立标签页里的 PDF 预览为什么能离线用?
pdf.js 的 lib 与 worker 被打包进了 src/vendor/,构建时由 scripts/build.js 内联进 src/host.js,host 通过 /popout-sidebar/pdfjs/* 路由(routes.js:117-131)以一年缓存吐给浏览器。侧边栏内嵌自定义渲染,独立标签页则用浏览器原生 PDF 查看器(preview.js:64-89, 178-205)。
设置保存在哪里?
存在浏览器 localStorage,键名 dsh-popout-sidebar:settings,包含默认展开、自动刷新、文件树、最短面板宽度(20-60)、预览区默认高度(20-80),源码见 client/core.js:86-114。
— 源: plugin_wiki.faq_json
兼容性
- DSH: 未声明
- Node: >=20
— 源: plugin_wiki.compatibility_json
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则