DeepSeek Harness plugin

dsh-client-ui-slingshot

A playful slingshot toy for the dsh web GUI: drag to aim, fire a stone, shatter UI elements and watch them tumble off screen — then pop back, good as new.

Jump to install

Source facts

Repository
JingkaiTang/dsh-client-ui-slingshot
Latest update
Aug 17, 2026
Category
Just for Fun
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/JingkaiTang/dsh-client-ui-slingshot
Plugin: dsh-client-ui-slingshot
Author: JingkaiTang

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

弹弓玩具 · dsh slingshot toy 🪀

![弹弓玩具演示](assets/slingshot-demo.gif)

A playful, purely-visual toy for the dsh web GUI. A wooden slingshot lives in the bottom-right corner of the page (drag it anywhere!):

1. 拖拽瞄准 — press and hold the leather pouch, drag it backwards (Angry-Birds style). A dotted arc previews where the stone will fly. 2. 松手发射 — release to fire the stone. 3. 打碎元素 — the stone shatters the first UI element it hits: the element is cloned into shards that burst apart, and the whole wreckage tumbles off the screen under gravity. 4. 自动恢复 — once it has fallen out of the viewport, the original element pops back with a small animation. Nothing in the GUI is ever permanently damaged — html/body and the toy itself are never targeted, and the layout is preserved the whole time (the original is only visibility:hidden while its clone flies).

Extra features:

  • 🪵 手柄拖动 — the slingshot has a leather grip handle at the bottom of

the trunk (orange-brown, with grip ridges and a grab cursor). Press and drag it to move the slingshot anywhere on the screen (clamped to the viewport) — no mode toggles. The position is persisted in localStorage and restored after reload; the collapsed launcher button follows the gun.

  • 🔊/🔇 sound toggle — WebAudio-synthesized boings, crashes and pops (no

assets), muted and state persisted in localStorage.

  • 💥 score counter (persisted).
  • Collapsible widget: ✕ hides it into a small launcher button that pulses and

shows a "where did it go" tip.

  • The client bundle is part of the dsh client HMR chain: edit

lib/client.js and the running page hot-swaps the plugin without a refresh.

安装(给使用者)

DSH 0811 起不再有官方 repository 插件机制,客户端插件统一挂进 web profile:

1. 把本包放进 profile 的模块解析路径(二选一): - 直接把 dsh-client-ui-slingshot 目录复制/软链到 ~/.dsh/profiles/node_modules/@t7kai/ 下,或 - 用 plugin-registry 控制台 git 源安装: dsh plugin --profile web add "github:<你的账号>/dsh-client-ui-slingshot#main" 2. 在 ~/.dsh/profiles/web/cordis.patch.yml 注册一行(配置层 HMR 热生效,无需重启):

``yaml - insert: - id: ui-slingshot name: '@t7kai/dsh-client-ui-slingshot' ``

3. 刷新浏览器页面,右下角出现弹弓 🪀(点击 ✕ 可收起;位置、声音、得分自动记忆)。

发布到 dshfind 插件超市

1. 将本仓库推送到 GitHub(公开仓库)。 2. 给仓库添加 dsh-plugin topic(仓库页 → About → Topics,或 gh repo edit <owner>/<repo> --add-topic dsh-plugin)。 3. dshfind.com/zh/plugins 每日自动同步该 topic 下的仓库 (star、贡献者、增长数据),无需提交申请。可选:再打上 deepseek-harnessdshcordis 等 topic 增加曝光。

Files

FilePurpose
package.jsonPackage manifest: dsh.client.platform = "web" + dsh.bundle.client = "./lib/client.js" declarations + ./client export (the dsh client-modules contract)
lib/index.jsHost-side no-op plugin (the loader row needs a valid host entry; the toy is browser-only)
lib/client.jsThe whole toy — vanilla DOM, no dependencies, ModuleLoader bundle format
README.mdThis file

How it is wired in

  • The package lives in the session workspace and is linked into the profile's

module resolution: ~/.dsh/profiles/node_modules/@t7kai/dsh-client-ui-slingshot → <workspace>/dsh-client-ui-slingshot

  • ~/.dsh/profiles/web/cordis.patch.yml registers the loader row

ui-slingshot (@t7kai/dsh-client-ui-slingshot); the profile patch layer is hot-reloaded by the running server, so the row and its bundle are served without a restart (a one-time page refresh picks the new plugin up).

Removing the toy

Delete the ui-slingshot row from ~/.dsh/profiles/web/cordis.patch.yml and remove the symlink ~/.dsh/profiles/node_modules/@t7kai/dsh-client-ui-slingshot. A page refresh unloads it.