Bundle
dsh-soln-panel
Right-side solution panel for DeepSeek Harness Web: push HTML solutions to a collapsible right drawer with browser-style tabs, resizable width, unread hints, and per-workspace durable persistence. 对话右侧方案面板:HTML 方案展示、多标签页、宽度拖拽、未读提示、按工作区持久化。
- Source
- PastSheep
- License
- MIT
- Updated
- Updated 3 days ago
Readme
# dsh-soln-panel 对话右侧的**方案面板**插件(DeepSeek Harness Web / `dsh` 宿主)。助手可以把 HTML 方案推送到一个可展开/收缩的右侧抽屉:多标签页、宽度拖拽、未读提示、按工作区持久化。 A right-side **solution panel** for DeepSeek Harness Web. The agent pushes HTML solutions into a collapsible right drawer with browser-style tabs, resizable width, unread hints, and per-workspace durable persistence. ## 功能 Features - **HTML 方案展示** — 通过 `show_solution` 工具推送,原样渲染 HTML(表格/代码块/引用等样式齐全) - **多标签页** — 多个方案以浏览器式标签切换,标签多时自动压缩 + 滚动 - **宽度拖拽** — 左缘手柄调整 280–900px - **未读提示** — 更新未显示的方案时,对应标签变橙色,点击后清除 - **动态调整** — 支持按 `id` 更新标题/内容;`activate` 控制跳转、`openPanel` 控制开合 - **按工作区持久化** — 方案池存于 `<工作区>/.dsh/soln-panel.json`,重启保留、同工作区跨会话可见、跨工作区隔离 - **免构建** — 手写 JS,npm / git 安装均可直接使用 ## 安装 Install ```sh dsh plugin --profile web add "github:PastSheep/dsh-soln-panel#main" ``` 然后重启 DeepSeek Harness。安装后: - 会话右侧出现竖排「方案」标签,点击展开面板 - 助手可通过 `show_solution` 工具推送方案(工具为宿主级注册,所有会话可用) 卸载: ```sh dsh plugin --profile web remove dsh-soln-panel ``` ## 工具 show_solution | 参数 | 说明 | | --- | --- | | `id` | 方案 id;提供则更新该方案,省略则追加新方案 | | `title` / `html` | 标题 / HTML 内容;更新时可省略任一字段(保留原值) | | `activate` | 是否跳转到该方案标签(省略:追加默认 true,更新默认 false) | | `openPanel` | 是否展开面板(true/false;省略保持当前状态) | | `clear` | 清空当前工作区全部方案并收起 | 每次调用返回 `solutions` 摘要(全部方案 id/标题/未读状态),便于跨会话接续。 ## 数据与隔离 Data & isolation - 数据文件:`<workspace>/.dsh/soln-panel.json`(每个工作区独立) - 前端通过当前会话的工作区读取对应方案池;无工作区信息时返回空池,不跨工作区泄漏 ## License MIT
Install
dsh plugin --profile web add github:PastSheep/dsh-soln-panel
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-soln-panel from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.