ZhuXinAI/sidesight

CLI-first vision sidecar for text-only coding agents

CLI-first vision sidecar for text-only coding agents, wired into DSH. The plugin carries the configured Base URL, vision model and API key into DSH-managed shell calls and the bundled skill maps them to SideSight's environment variables when it invokes npx -y sidesight <command> (image, ui, ocr, diagnose, diagram, chart, diff, video). Attached images travel through an image-input-capable wrapper that reads the durable attachment, sends it to SideSight and forwards only bounded visual evidence to the original text model, then deletes the temporary materialization.

Web UI Enhancements ★ 1 updated 2026-08-14 — untested
View on GitHub ↗

Install

npx @deepseek-ai/dsh plugin --profile web add github:ZhuXinAI/sidesight

README install command (verbatim; it can also be triggered by asking the agent to install the ZhuXinAI/sidesight dsh plugin). Restart the profile after changing its configuration (npx @deepseek-ai/dsh --profile web), then open DSH Web Settings, choose the SideSight entry and fill in Base URL, Vision model and API key. A filesystem-skill install path is also documented (clone the repo into .dsh/skills/sidesight or $DSH_HOME/skills/sidesight); install into another profile by replacing web, and remove the bundle with dsh plugin --profile <name> remove sidesight.

Compatibility

Supports both DSH native extension paths — a filesystem skill and a configurable plugin bundle — and neither starts an MCP server. After configuring, you must select a model from the added DeepSeek (SideSight vision) provider before attaching or pasting an image: the regular DeepSeek-V4-Flash / deepseek-official route is text-only and rejects the attachment before any tool can run. A GitHub/source install has no bundled dist/cli.js, so the pasted-image bridge automatically falls back to npx -y sidesight (needs npx and npm access or a cached package).

Details

Recent updates

README documents the security shape of the bridge: the API key field is write-only (shown only as configured, never prefilled or returned), the key is not interpolated into command text or ordinary tool results, the skill forbids inspecting or printing it, and an explicit --allowed-dir scoped allowlist is used for direct CLI calls on paths outside the workspace.

FAQ

How do I install SideSight for DSH?
Run: npx @deepseek-ai/dsh plugin --profile web add github:ZhuXinAI/sidesight, restart the profile, then fill in Base URL, Vision model and API key under Settings -> SideSight. (Or ask the agent in a DSH conversation to install ZhuXinAI/sidesight.)
Why does DSH still say the model does not support images?
DSH checks the selected model's declared input modalities. The original deepseek-official route is text-only, so after configuring SideSight choose a model from the added DeepSeek (SideSight vision) provider (for example DeepSeek-V4-Flash (SideSight vision)) before attaching an image.
Do I need to run npx sidesight setup for the DSH plugin?
No. When baseUrl, apiKey and model are filled in through DSH, setup is optional; it remains a fallback when those fields are blank or for filesystem-skill installs that prefer SideSight's owner-only saved configuration.

More plugins in Web UI Enhancements

Browse more in Web UI Enhancements

Guides for Web UI Enhancements plugins