Saltar al contenido principal
N

dsh-artifact-preview

nirvanaslash/dsh-artifact-preview

Añade una fila de tarjeta de archivos producidos al chat y un panel de vista previa de pantalla dividida redimensionable para artefactos del espacio de trabajo (Markdown, código fuente, CSV, JSON, imágenes, HTML), además de una vista previa de puerto localhost.

Instalar

dsh plugin --profile web add github:nirvanaslash/dsh-artifact-preview

README

dsh-artifact-preview

English · 中文

Codex-style artifact preview for DeepSeek Harness (DSH).

dsh-artifact-preview is a client plugin (dsh.client.platform: "web") that makes produced files visible and inspectable right in the chat:

  • Produced-files row in chat — after the agent writes files, the closing message shows a "产物" row with file chips and inline image thumbnails; clicking any of them opens the side preview.
  • Split-screen side preview panel — a resizable right-hand panel (real split, conversation stays visible and unobstructed) rendering:
    • Markdown → rich text (headings, tables, lists, code fences, links, images; relative local images resolve automatically)
    • Source code (.py .js .ts .sh .css …) → dark syntax highlighting
    • CSV → HTML table
    • JSON → collapsible tree
    • Images (.png .jpg .gif .webp .svg …) → checkerboard-backed centered view
    • HTML / localhost ports → iframe (with port chips for dev servers, URL bar, back/forward/reload, open-external)
  • Global hooks (window.__dshOpenFilePreview / __dshCanPreviewPath) so other plugins can route "open file" intents into the preview panel.

Install

From GitHub (the package declares dsh.bundle + dsh.client, so dsh plugin add installs the dependency and auto-registers the preview as an active client-plugin layer — no manual profile editing):

dsh plugin --profile web add github:nirvanaslash/dsh-artifact-preview

Restart the dsh web service (or DSH Desktop) and refresh the page.

Once the package is published to npm, dsh plugin --profile web add dsh-artifact-preview and the Marketplace search path work the same way.

Prerequisites

  • DSH Desktop (or a dsh web profile that has the dsh-file-changes companion installed) — the preview fetches file content through its /dsh-files/static/<absolute-path> route. On DSH Desktop this route is built in; on a bare dsh web install add the dsh-file-changes companion first.
  • A model that produces files via write/edit-style tools (that is how a turn's "produced files" are tracked).

Compatibility

  • Built for DSH 0.1.0-rc.7 (bundled in DSH Desktop 2.0.1) client plugin ABI: window.__ModuleLoader__ module format, dsh.client metadata, dsh.bundle patch registration, and the conversation.chat.turnTail chain slot. Chain-slot election relies on low priority (-100) to win the produced-files row over the official deliverables row; verify behavior after DSH upgrades.

Known boundaries

  • The chat row and preview panel are fully self-contained in this package.
  • Two optional behaviors are not bundled because they require patching DSH core files (intentionally left out of a public package): multi-type preview buttons in the file view, and "open → preview" for file-name mentions inside message prose. Without them, file-view preview keeps DSH's original HTML-only behavior and prose mentions open with the system app.

License

MIT

Plugins relacionados