openpencil
ZSeven-W
The world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:zhang66633/dsh-plugin-installer
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
A plugin store + install assistant for DeepSeek Harness (dsh): browse the plugin catalog in the Web GUI, confirm an install with one click, and let the agent finish it for you.
dsh-plugin-installer is a dual-face plugin for dsh. One package provides two things:
Who it is for: anyone who wants to discover and install dsh plugins from the UI; developers who want the agent to handle installation and troubleshooting reliably.
| Item | Support |
|---|---|
| dsh ecosystem | 0.1.0-rc.6 (last verified 2026-08) |
| OS | Windows / macOS / Linux |
| Node | ≥ 22.19 |
| Surface | Web GUI (dsh --profile web); non-GUI profiles should use Route B (skill only) |
Route A — full plugin (store tab + skill), once published to npm:
dsh plugin --profile web add dsh-plugin-installer
Local development via link:
// ~/.dsh/profiles/web/package.json
{
"dependencies": { "dsh-plugin-installer": "link:<repo path>" },
"dsh": { "profile": { "bundles": ["dsh-plugin-installer"] } }
}
cd ~/.dsh/profiles/web && pnpm install
Route B — skill only (filesystem discovery, no store UI):
git clone --depth 1 https://github.com/zhang66633/dsh-plugin-installer ~/.dsh/skills/dsh-plugin-installer
dsh plugin add (pin the version); for local links, git pull and rebuild.git pull.Remove dsh-plugin-installer from dsh.profile.bundles (the dependency may stay).
Remove the dependency and the bundle entry from the profile package.json, then pnpm install; for Route B, delete ~/.dsh/skills/dsh-plugin-installer.
dsh web.vision), click 安装, confirm the prompt, and the current session's agent takes over the install.dsh web after the install completes.Minimal reproducible example: search modlens → click install → confirm → the agent reports success → restart → send an image to test OCR.
The refresh button in the store is a light refresh: it re-fetches the catalog, and the host recomputes each plugin's installed / update-available state live — after an install, one click shows 已安装 without restarting dsh. The button has a hover hint, and the store header shows "updated at
Updating the catalog data itself (new plugins, version changes) requires regenerating the snapshot:
scripts/refresh-catalog.ps1 (discover → normalize → l1-scan → export → repack → profile reinstall), or leave it to the daily scheduled task (02:00);dsh plugin add dsh-plugin-installer, pin the version) when the maintainer publishes — the catalog ships with the package.data/store.json is a catalog snapshot (name / description / original link / category / stars) shipped with the package; no network fetch at runtime. Refresh = rebuild the snapshot and reinstall./plugin-store/install route; the actual install is performed by the current session's agent.data/store.json; the catalog and install routes bind to the local web server only.| Symptom | Action |
|---|---|
| Store tab missing | Confirm dsh.profile.bundles includes dsh-plugin-installer; check dsh --profile web --dump-config; restart |
| 安装 does nothing | Confirm the session has a live agent; check the /plugin-store/install response in the browser console |
| Rollback | Remove the bundle entry and run pnpm install — the rest of the profile is untouched |
npm install # build tooling (esbuild)
npm run build # build lib/client.js (client wire bundle)
npm run check # script syntax/standards checks
npm test # unit tests
npm run smoke # smoke: load lib/index.js and print name/inject
Store snapshot refresh: update data/store.json, rebuild, and reinstall. Pull requests welcome; keep README and tests in sync with behavior changes.
MIT © 2026 zhang66633
Report security issues privately via a GitHub security advisory, not a public issue.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: claude-skill、skill、mcp。