Introduction¶
In the development and debugging of DeepSeek Harness Web, long conversations can make it difficult to scroll back to earlier content. When reviewing the previous context, you often need to scroll the main conversation back to the bottom, which can interrupt the current input focus or code editing state. dsh-history-mirror-plugin is designed to solve this pain point by providing an independent context viewing area through mirroring.
What Is This¶
This is a DeepSeek Harness Web client plugin, developed by maintainer xiaoyanjin15-ux and released under the MIT License. It adds a “History” button to the conversation title bar, mirrors the current conversation content into the right-side details panel, and gives that panel an independent scroll position.
Core Features¶
- Independent Scroll Control: The middle conversation keeps its current input and scroll position; the right-side history panel provides independent scrolling, and scrolling it does not move the middle conversation.
- DOM Reuse: The right side reuses the DOM and native styles already rendered in the middle conversation, so code blocks, tool calls, images, and other content keep their original appearance.
- Real-Time Synchronization: New messages and streaming output are synchronized to the right-side history panel.
- Link Navigation: Clicking an HTTP/HTTPS link in the right-side history automatically switches to the “Web” tab.
Installation and Enabling¶
Install it using the official command:
npx @deepseek-ai/dsh plugin --profile web add github:xiaoyanjin15-ux/dsh-history-mirror-plugin
After installation is complete, run the DeepSeek Harness Web client:
npx @deepseek-ai/dsh web
After refreshing the browser page, the plugin takes effect.
Usage¶
- Open any non-empty conversation.
- Click the “History” button on the right side of the conversation title bar.
Security and Boundaries¶
Security Design
The plugin does not read or upload API Keys, Cookies, Local Storage, Session Storage, or environment variables. It does not access the local file system, does not execute system commands, and does not create background services. During synchronization, scripts, iframes, forms, objects, embeds, meta elements, link elements, and base elements are removed. Web previews use a sandboxed iframe without allow-same-origin and without top-level navigation permissions, and it uses no-referrer.
Known Boundaries
- The right side mirrors the conversation window already loaded in the browser; earlier records that have not yet been loaded by Harness will not appear automatically.
- Some websites prohibit iframe embedding or cannot run inside a restricted sandbox, so the Web tab may display the website’s own denial page.
- The plugin takes over the current version’s single details slot; when enabled, the native tool details panel is replaced by the history panel. Disabling or removing this plugin restores the native tool details.
Conclusion¶
By taking over the single details slot, this plugin provides mirroring and independent scrolling for conversation content within the browser page, which is suitable for scenarios where you need to quickly locate context in long conversations.
Project address: https://github.com/xiaoyanjin15-ux/dsh-history-mirror-plugin