Preface

When performing multimodal conversations in DSH, there are several specific issues: how to send images in the input box to multimodal models as native image content blocks; how to switch back to a pure text model after images have appeared in the session; missing reasoning levels after adding third-party models; and how to integrate Figma design drafts and canvases into DSH.

Below is an introduction to the DSH plugin @eric.wen/dsh-sight. It provides multimodal image direct upload, session image clearing, automatic reasoning level completion, and Figma MCP bridging. DSH’s plugin mechanism assembles capabilities based on the philosophy “everything is a plugin”; the community directory is an independent site and is not equivalent to the official app store.

Plugin Positioning

@eric.wen/dsh-sight is the npm package name, the GitHub repository path is ericfetch/dsh-sight, the maintainer is ericfetch, and the license is MIT.

It targets the DSH plugin environment and covers four categories of capabilities:

  • Multimodal image direct upload
  • Session image clearing
  • Auto-fill reasoning levels
  • Figma MCP bridging

Entries for Multimodal Image Direct Upload and Figma MCP are visible in the settings page.

Core Features

Multimodal Image Direct Upload

Images can be pasted or dragged directly into the input box, and the plugin sends them to the multimodal model as native image content blocks.

The plugin comes with a built-in dictionary of mainstream multimodal models, but manual declaration for each model is also possible. Once declared, images in the input box can enter the model’s visible context.

Clear Session Images

After images appear in a session, DSH may prevent switching to a pure text model. Clearing session images removes the images from the model’s visible history, allowing you to switch back to the pure text model to continue the conversation.

Interface transcription preserves the original image, and the result is persisted; it remains effective after restarting.

Auto-fill Reasoning Levels

After adding a third-party channel, models may not have declared reasoning levels. The plugin writes the official supported levels for models that have not declared reasoning levels, based on the built-in model family dictionary.

The write location is reasoningEfforts in the configuration of llm-pi-ai, and it takes effect on the next request.

Figma MCP

Figma MCP provides two paths:

  1. Design Draft to Code: Requires only a Figma Personal Access Token, using the Figma REST API.
  2. AI-driven Design: Requires Figma Desktop and the Figma UI MCP Bridge plugin, using a local bridge.

The plugin uses the community open-source MCPs figma-developer-mcp and figma-ui-mcp, supporting tools such as figma_write, figma_read, and figma_status. No Figma membership is required; free accounts can generate tokens or install plugins.

Installation and Activation

The desktop version of DSH Desktop uses the desktop profile; the local CLI uses the web profile. Please replace the profile in the command according to your actual environment.

dsh plugin --profile desktop add @eric.wen/dsh-sight

npm installs and distributes pre-built artifacts; no authorization is required. It takes effect after restarting DSH Desktop after an update.

Node runtime environment requirements:

^22.19.0 || >=24.0.0

Typical Usage

Multimodal Image Direct Upload

  1. Open Settings → Multimodal Image Direct Upload, enable “Direct Image Upload” for each model individually, or click “Apply Dictionary Matching in One Click” to declare in bulk.
  2. After adding a third-party channel, click “Auto-fill Reasoning Levels” to write the supported reasoning levels for models that have not declared levels.
  3. Paste or drag an image into the input box to form a thumbnail draft, then send it.
  4. When the current model supports images, a “Direct Image Upload” badge appears on the left side of the input box.
  5. When the session has historical images, “Clear Images (n)” appears in the input box; after clicking twice to confirm, switching to the pure text model will no longer be intercepted.

Figma MCP

  1. Design Draft to Code: Fill in the Figma Token (and optionally a proxy) in the settings page. Enable and restart DSH. Paste the Figma link into the conversation and say “implement”.
  2. AI-driven Design: Install the Figma plugin according to the instructions in the block. Enable and restart DSH. Run “Figma UI MCP Bridge” in Figma. Return to the conversation to describe design requirements.

Applicable Scenarios and Notes

Suitable for doing the following things in DSH:

  • Let multimodal models directly receive input box images
  • Switch between image sessions and pure text models
  • Fill in reasoning levels for third-party models that have not declared them
  • Integrate Figma design drafts and canvases via Figma Token or local bridge

Notes:

  • “Supports Images” is a declaration by the user for the endpoint; the plugin does not probe the endpoint; when the endpoint does not actually support images, it is rejected by the provider side.
  • Clearing images only affects the model’s visible history; the original message is still retained in the session log and interface transcription.
  • In Figma MCP, Design Draft to Code uses the Figma REST API (fill in a proxy if needed); AI-driven Design uses a local bridge, requiring neither proxy nor Token.
  • AI-driven Design requires Figma Desktop; the web version cannot connect to localhost.
  • The @deepseek-ai/* runtimes required are provided by the DSH module table (peer dependency declaration).
  • The plugin runs with the permissions of the current DSH process; you should check the source code and license before installing.

Resources

GitHub Repository: https://github.com/ericfetch/dsh-sight