dsh-at-file
FSMargoo/dsh-at-fileCodex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。
DSH Web 原生右侧产物栏:按会话管理报告、图片、数据、视频与音频,提供内联预览、产物质检和可按轮次检索的历史目录。
中文 | English
DSH Right Sidebar is a native output workspace for DeepSeek Harness. It keeps the reports, diagrams, images, data, and documents generated in a session beside the conversation instead of scattering them across the workspace and tool history.
Output Dock is not a file manager, and it does not surface every file in a project. It keeps only results a person can read, inspect, download, or use. Source code, configuration, dependencies, and HTML source files remain the responsibility of the DSH workspace.
Alt+] / Alt+[ cycle outputs, Alt+W closes the current tab, Alt+O toggles the
sidebar, and Esc dismisses popovers| Category | Supported now |
|---|---|
| Automatic outputs | Markdown (md, mdx, markdown), PDF, SVG, images (PNG, JPEG, WebP, GIF, AVIF, BMP, ICO, TIFF), video (MP4, M4V, WebM, OGV, MOV), and audio (MP3, WAV, OGG, OGA, OPUS, M4A, FLAC, AAC) |
| On-demand outputs | TXT, JSON, JSONL, CSV, TSV, and IPYNB; shown only when the agent explicitly mentions the file path or name |
| Not displayed | Source, HTML/HTM, configuration, logs, YAML, TOML, XML, INI, CONF, and other project-internal files |
HTML files are project source. A deployed website should instead be provided by the agent as an
accessible URL in the conversation. This keeps a frontend or full-stack project with many js,
ts, css, and configuration files from drowning out its actual deliverables.
DSH Right Sidebar requires a DSH Web build that exposes the session-scoped details.overlay slot
and named details-surface APIs.
git clone https://github.com/Limitinfinitude/DSH-Right-Sidebar.git
cd DSH-Right-Sidebar
npm install
npm run build
dsh plugin --profile web add .
Refresh the DSH Web session after installation.
The dock does not poll files or ports while idle. Output content is fetched only after selection,
and complex previews initialize on demand. JSON search traverses the data once, tables are capped at
10,000 rows, and TXT rendering is paginated. Media files stream through native players without being
fetched as text. The browser bundle is approximately 188 KB gzip.
Files inside a workspace are path-validated. Agent-produced outputs outside registered workspaces can be accessed temporarily after same-origin authorization from DSH. Up to 256 authorized external roots are retained, and each expires after six hours. Markdown and SVG are sanitized before rendering, binary files are read-only, and HTML/HTM source is never embedded in the dock.
Network outputs require authorization from the same-origin DSH page and are read through a bounded proxy that forwards no cookies or authorization headers. Only supported file extensions are accepted; responses are limited to 16 MB with a 10-second timeout. A bare URL must have delivery-oriented context, while an explicit Markdown file link is accepted directly, so ordinary reference links stay out of the dock. Incomplete paths resolve only when exactly one file matches inside registered workspaces; ambiguous names are rejected instead of guessed.
npm test -- --run
npm run typecheck
npm run build