dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
把复杂问题回答成一页可视化 HTML:模型只写简短的 Markdown 草稿,随包附带的零依赖 `am` 命令行负责排版、配色与图表坐标。以上游 answer-me-with-html 技能原样内置,是纯技能的 DSH bundle,不含 Host 代码。
Answer me with HTML as a DeepSeek Harness plugin: an opt-in, skill-only bundle that answers hard questions with a one-page HTML you can actually read.
The model writes a short Markdown draft; the bundled am CLI writes the CSS, the layout and the SVG
diagram coordinates. About 1/8 of the tokens of hand-written HTML.
| Path | Role |
|---|---|
cordis.patch.yml | The only row: a dedicated @deepseek-ai/dsh-skill-filesystem provider whose single root is skills/ |
skills/answer-me-with-html/ | The upstream skill, vendored verbatim — SKILL.md, references/, and the dependency-free scripts/am.mjs CLI |
scripts/update-skill.sh | Re-vendors the folder above from upstream and checks it (npm test) |
scripts/publish-to-npm.sh | Logs in if needed, then publishes this package to npm |
There is no Host code. The skill reaches the session catalog through the bundled skill root, so nothing
is copied into ~/.dsh/skills and no other profile is affected.
From npm — no build step, and nothing to authorise:
dsh plugin --profile <name> add dsh-answer-me-with-html
Or from a clone, which is how this repository is used for development:
dsh plugin --profile <name> add /path/to/dsh-answer-me-with-html
Or install it from the plugin market / settings UI by pointing at the same directory.
Installing from the git URL also works, but dsh plugin add needs pnpm on your PATH for that, and
GitHub's tarball has no build step to run either way.
am CLI runs as node <skill dir>/scripts/am.mjs; no npm install step).~/.answer-me-with-html/pages/.Ask a question the way you always do. The skill decides when a page is worth it:
Explain the TCP three-way handshake Redis or Memcached for our cache?
The skill name is answer-me-with-html, and DSH passes its own base directory into the loaded skill, so
the ${CLAUDE_SKILL_DIR} placeholders in SKILL.md need no edit.
One trap: if you also enable the default
@deepseek-ai/dsh-skill-filesystemprovider, it scans~/.dsh/skillsand~/.agents/skillsat a higher rank than this bundle's root. An older copy of this skill left in either directory then shadows this one — a stale copy, silently.Before deleting that copy, check what else points at it:
ls -la ~/.dsh/skills ~/.agents/skills ~/.claude/skills 2>/dev/null | grep answer-me-with-html
~/.agents/skills/answer-me-with-htmlis often the real copy for other agents (Claude Code, ZCode, Hermes and WorkBuddy typically symlink to it), so deleting it breaks those. Either leave the default provider off — it is off unless something enables it — or update the shared copy too instead of removing it.
skills/answer-me-with-html/ is a verbatim copy of the upstream skills/answer-me-with-html folder, so an
update is a copy and not a merge:
scripts/update-skill.sh
It clones upstream, and if the copy already matches, says so and exits without touching anything.
Otherwise it re-copies the folder, moves package.json's version to the vendored CLI's version, and runs
the tests. It prints the upstream commit — put that hash in the commit message, because upstream has
shipped code changes without a version bump, and the hash is what identifies the vendored state.
The CLI's own update hint is wrong here. After a week
am rendermay print! Update hint: Answer me with HTML <v> is available ... run npx skills update answer-me-with-html -y. That command belongs to vercel-labs/skills and updates a copy in~/.agents/skills— never the copy this plugin serves. It cannot update this plugin; runscripts/update-skill.shin this repository instead. Upstream has no DeepSeek Harness branch for this (checked in 0.5.0), so the hint keeps saying it.
MIT. The vendored skill and CLI are MIT, © QingYunA — see LICENSE.