Plugin directory / Developer / dsh-media-skills
dsh-media-skills
Verified ยท install-tested on dsh akqwpeter-prog
What it does
Give DeepSeek Harness 'eyes' and 'brush' โ free image reading + free image generation Skill. Eyes & brush for DeepSeek Harness: free image reading & generation. ๐๏ธ๐จ
Works โ verified, early-stage project
Give DeepSeek Harness 'eyes' and 'brush' โ free image reading + free image generation Skill. Eyes & brush for DeepSeek Harness: free image reading & generation. ๐๏ธ๐จ It installs cleanly and boots without issues in our testing. It's early-stage but functional.
โVerifiedโ means our automated CI actually ran dsh plugin add in a clean profile and it booted โ nothing more. Feature descriptions and version compatibility are the authorโs claims. This is not a security audit and not an endorsement of third-party code.
README

๐จ dsh-media-skills
Give DeepSeek Harness eyes โ and a brush. Read images in any chat, generate new ones, all with free models.
DeepSeek Harness is brilliant at reasoning โ but a text-only model can't see the image you just dragged into the chat. This bundle fixes that with two free skills, a free vision model route, and a vision engine failover chain:
- ๐ Paste to read โ paste, drag, or pick an image in any session; the free vision model turns it into text your current model understands. (Powered by the DeepSeek Harness core auto-description path โ see docs/HARNESS_PATCH_EN.md; this bundle contributes the vision model route and the skill it relies on.)
- ๐๏ธ
vision-reviewโ analyze images and screenshots, catch UI visual bugs, detect watermarks, turn images into text. - ๐จ
media-toolsโ generate illustrations, avatars, backgrounds and banners with a free, watermark-free model. - ๐ Engine failover โ GLM-4V-Flash โ SiliconFlow Qwen3-VL โ Google Gemini (AI Studio) โ any OpenAI-compatible endpoint, with ModLens-style structured evidence output.
No hardcoded keys, no paid API, no file saving, no session switching.
Why ยท Quick start ยท See it in action ยท Usage ยท Keys & privacy ยท FAQ ยท Examples
English ยท ็ฎไฝไธญๆ ยท ็น้ซไธญๆ ยท ๆฅๆฌ่ช ยท ํ๊ตญ์ด ยท Espaรฑol ยท Deutsch ยท Portuguรชs ยท ะ ัััะบะธะน
๐ค Why
Most DSH vision plugins only read images โ and many push you through a shared third-party endpoint. dsh-media-skills takes a different stance:
| This bundle | Typical vision-only plugin | |
|---|---|---|
| Read images for free | โ Zhipu GLM-4V-Flash | โ |
| Generate images for free | โ SiliconFlow Kolors | โ usually absent |
| Auto model route in the picker | โ installed automatically | sometimes |
| Keys committed to the repo | โ never โ keys stay local | โ ๏ธ often required |
| Docs in multiple languages | โ 9 languages | โ usually English only |
| Privacy | โ you choose the provider; images only go to your provider | shared free endpoints can see your images |
Why bring your own free key instead of a built-in anonymous endpoint? Privacy and reliability. Your images go only to the provider you choose, under your account and your rate limits โ no shared third-party service in the middle.
โจ What you get
| Capability | What it does | Model | Cost |
|---|---|---|---|
| ๐ Paste-image reading | In a text-only session, the input bar gains an โAdd imageโ button (paperclip); pasted images appear instantly with a reading placeholder, then are described by the vision model (GLM-4V-Flash with SiliconFlow Qwen3-VL failover, 15s per route) and handed to the current model as text. (Harness-core feature: requires the core api-proxy admission patch; this bundle supplies the vision route + skill it depends on) | GLM-4V-Flash + Qwen3-VL | Free |
| ๐ง Vision model route | ใๆบ่ฐฑ GLM-4V-Flash๏ผ่ง่ง๏ผใ appears in the model selector automatically โ pick it for a new conversation and talk about images directly | Zhipu GLM-4V-Flash | Free |
๐๏ธ vision-review |
Analyze / recognize / describe images & screenshots; catch UI visual bugs (overlap, overflow, misalignment); detect watermarks/logos; turn images into text. Optional --structured mode returns ModLens-style evidence JSON (summary, full OCR, reading-order layout, entities/relations, uncertainty). Engine failover chain: GLM-4V-Flash โ SiliconFlow Qwen3-VL / Google Gemini (auto-join with free keys) โ any OpenAI-compatible endpoint |
GLM-4V-Flash + Qwen3-VL + Gemini | Free |
๐จ media-tools |
Generate images, illustrations, avatars, backgrounds, banners | SiliconFlow Kolors | Free, no watermark |
โก Quick start
dsh plugin --profile <name> add github:MJorgin/dsh-media-skills
Get two free keys (~2 minutes, no payment):
- Zhipu โ open.bigmodel.cn โ API Keys (
glm-4v-flashis free) - SiliconFlow โ siliconflow.cn โ API Keys (Kolors is free)
- (optional third) Google Gemini โ aistudio.google.com โ Get API key; joins the vision failover chain automatically
- Zhipu โ open.bigmodel.cn โ API Keys (
Add them in the Web GUI (Settings โ Models โ the zhipu-vision provider's API Key field), or use the credentials file:
# ~/.dsh/.credentials.yaml (chmod 600) GLM_API_KEY: <your key>Restart
dsh web, then hard-refresh (Cmd+Shift+R).
Verify: the model selector shows ๆบ่ฐฑ GLM-4V-Flash๏ผ่ง่ง๏ผ. If your Harness build supports paste-image reading, the input bar also has a ๐ Add image button โ paste an image in any session and it arrives as a text description.
Full walkthrough and troubleshooting: docs/SETUP_VISION_EN.md.
๐ธ See it in action
Paste an image in a text-only session โ the free vision model describes it โ your model answers. The same bundle also generates new images on demand.

How it works in one picture:

๐ Usage
Three ways to read images:
| Way | How | When |
|---|---|---|
| A. Paste directly (recommended) | In any session, click the ๐ button / drag / paste an image and send | Everyday image questions โ no file saving, no model switching |
| B. Vision model session | New conversation, pick ๆบ่ฐฑ GLM-4V-Flash๏ผ่ง่ง๏ผ, paste images and chat | Multi-turn image conversations, native read_image |
| C. Files + skill | Put the image in the workspace and say โread this image with vision-reviewโ | Batch review, scripted workflows |
Descriptions follow your message language (Chinese message โ Chinese description; English message โ English description; no text โ Chinese).
Also just say:
- โLook at this image / check this screenshot for visual bugsโ โ
vision-review - โGenerate an image of โฆโ โ
media-tools
๐ Keys & privacy
Keys are never stored in this repo. Skill scripts read, in order: environment variables โ ~/.dsh/secrets/media-tools.env โ ~/.codex/secrets/media-tools.env (legacy fallback). The vision model route reads GLM_API_KEY from DSH's credential store.
Where to get the keys (all free): Zhipu โ open.bigmodel.cn โ API Keys (glm-4v-flash). SiliconFlow โ siliconflow.cn โ API Keys (Kolors). Google (optional, joins the vision failover chain automatically) โ aistudio.google.com โ Get API key.
# ~/.dsh/secrets/media-tools.env (chmod 600, one KEY=value per line)
GLM_API_KEY=...
SILICONFLOW_API_KEY=...
GEMINI_API_KEY=... # optional
Your images are sent only to the provider you configure โ never to this repo, never to a shared anonymous endpoint.
Privacy note on Gemini: Google's free-tier key comes with data-use terms โ requests may be used to improve Google products. For sensitive images (IDs, internal docs, customer data), prefer the direct domestic engines (Zhipu / SiliconFlow).
โ FAQ
Does paste-image reading require a DeepSeek Harness core patch?
The auto-describe pipeline lives in the Harness core (api-proxy image-admission logic; see docs/HARNESS_PATCH_EN.md). This bundle ships the model route + skills: the vision model works on any DSH build, but paste-image reading requires a Harness build with that core support โ see FAQ Q1 in docs/SETUP_VISION_EN.md.
Why not just use a built-in free endpoint with no key at all?
We prefer to let you own the route: your images go to the provider you pick, under your rate limits, with no shared middleman. The keys are free and take about two minutes to create.
Is media-tools really free?
Yes โ SiliconFlow Kolors is free and watermark-free. If a model is temporarily disabled, the skill lists available models and you can switch.
๐ Examples
Sample material to try instantly โ 6 AI-generated images with their prompts, plus a purpose-built vision test card (title, buttons, bar-chart values) for checking reading accuracy:

๐บ๏ธ Layout
dsh-media-skills/
โโโ package.json # dsh.bundle manifest
โโโ cordis.patch.yml # plugin layer
โโโ index.js # registers skills + seeds the zhipu-vision model route
โโโ skills/
โ โโโ vision-review/ # image reading
โ โโโ media-tools/ # image generation
โโโ examples/ # sample images + vision test card
โโโ docs/
โ โโโ screenshots/ # demo mockup & how-it-works diagram
โ โโโ SETUP_VISION_EN.md # detailed setup guide (English)
โ โโโ SETUP_VISION.md # ่ฏฆ็ป้
็ฝฎๆๅ๏ผไธญๆ๏ผ
โ โโโ HARNESS_PATCH_EN.md# core patch notes (English)
โ โโโ HARNESS_PATCH.md # ๆฌไฝ่กฅไธ่ฏดๆ๏ผไธญๆ๏ผ
โ โโโ COMPARE_MODLENS.md # ไธ ModLens ็ๅฏนๆฏ/ๅ
ฑๅญ๏ผไธญๆ๏ผ
โ โโโ lang/ # READMEs in 9 languages
โโโ scripts/make-banner.py # regenerates docs/social-preview.png
โโโ docs/social-preview.png
๐งฉ Using ModLens alongside?
Both this bundle and ModLens give text-only models vision. Installed together they do not conflict: ModLens intercepts pastes first (path โ modlens_read_image tool), and this bundle's api-proxy fallback handles anything it doesn't take over. See docs/COMPARE_MODLENS.md (ไธญๆ) for the full comparison, the paste routing order, and how to point ModLens at the same free Zhipu endpoint.
๐ค Join the DSH plugin ecosystem
DeepSeek Harness developer preview is still in its testing phase for Harness developers; core plugins and base APIs will keep iterating. We look forward to exploring the upper limits of intelligence together with developers worldwide, on top of open-source, open, reusable, and composable infrastructure.
- dsh-plugin topic
- Quickstart
- DeepSeek Harness repo
- dsh-agent-conductor โ ๅไฝ่ ็ๆๆฅๅฎถ๏ผๅจ DSH ้ๆดพๆดป็ป 11 ็งๅค้จ agent CLI๏ผCodex / Claude Code / TraeCodeโฆ๏ผ
This repo is tagged
dsh-pluginand listed in the awesome-dsh-plugin curated list. PRs, issues and translations are welcome.
๐ License
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-media-skills for me" โ your agent finds it in the directory and installs it. Docs: dshbase-catalog ยท verified packs.
This plugin is GitHub source (not published to npm) โ install it straight from the repo:
Web profile:
dsh plugin --profile web add github:akqwpeter-prog/dsh-media-skills Headless (CLI) profile:
dsh plugin --profile headless add github:akqwpeter-prog/dsh-media-skills Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.
When to use it
Extend the agent's coding surface โ give it a new tool, workflow, or integration so it handles a dev task it couldn't before.
Who it's for
Developers who want dsh to behave like a teammate on real codebases โ editing, running, and verifying changes rather than just answering.
For developers โ extending it
The tool/command surface is the seam: expose more of the SDK, add smarter context wiring, or tighten the loop between code changes and verification.