wang-junjian / spritely

已收录

DeepSeek Harness 的插件:灵动的小精灵【sprite(精灵)+ -ly(活泼地)】

main其他 查看源代码

安装

npx -y @deepseek-ai/dsh plugin --profile web add github:wang-junjian/spritely

此安装命令根据 GitHub 仓库地址生成,是未经验证的安装起点。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 4f5f15b同步于 2026年8月18日

最近一次目录同步未能刷新此 README 快照。

Spritely

English | 中文

Your spritely work companion — a floating mascot for the dsh web UI that reacts to the agent's live work state.

Spritely (formerly the ui-sprite plugin) is a dsh client plugin that drops a small, animated character into the corner of the web interface. It watches the agent's activity — idle, thinking, writing, running tools, waiting on you, erroring, or finishing a run — and plays a matching pose, tracks your cursor with its eyes, and can be dragged anywhere.

Four characters: Blob · Bot · Cat · Ghost

Features

  • Four switchable characters — Blob (blue ball), Bot (mint robot), Cat (amber kitty), Ghost (violet specter), each with its own body and eye style.
  • Live work-state poses — idle, thinking, writing, working, waiting, error, and a brief celebration when a run settles.
  • Cursor-tracking eyes — pupils follow the mouse (rAF-throttled).
  • Draggable — grab and move the mascot anywhere; reset returns it to the corner.
  • Customizable background — solid colors, gradients, image URLs, and local image upload, with fit (contain / stretch) and a fade veil for legibility.
  • Sci-fi HUD styling — the menu and panels use a fixed dark holographic palette with a cyan neon frame.
  • Persisted — your character, background, and position survive reloads.

Install

Spritely is a dsh client plugin (dsh.client, not a dsh.bundle). It ships prebuilt artifacts (lib/), so it installs from git or a local checkout without any build step. Activating it in a dsh profile takes two steps:

1. Install the package into the profile.

# from git
dsh plugin --profile <name> add github:wang-junjian/spritely

# or from a local checkout
dsh plugin --profile <name> add ./spritely

2. Register a row in the browser plugin roster. Because Spritely declares dsh.client rather than dsh.bundle, dsh plugin add installs it as a plain dependency (printing "activates no layer") and does not register a row for you. Add this row to your profile's patch layer at ~/.dsh/profiles/<name>/cordis.patch.yml:

- insert:
    - id: ui-sprite
      name: '@deepseek-ai/dsh-client-ui-sprite'

The plugin carries its own dsh.client metadata (platform: web plus its inject edges), so once the row is present the host Loader scans it, serves /plugins/ui-sprite/client.js, and injects it into window.__DSH_BOOT__ automatically.

Its peer dependencies (@deepseek-ai/dsh-client-runtime, dsh-client-ui-layout, dsh-client-locale, …) are in-box dsh packages resolved from the dsh installation itself — they need not be installed separately.

Usage

Click the mascot to open its menu:

  • New session — start a new session (default workspace flow).
  • Reset position — return the mascot to its default corner.
  • Set background — open the background console (colors, gradients, image URL, local upload, scale, fade).
  • Switch sprite — pick one of the four characters.

Characters

CharacterLookPalette
Blobround ball + antenna starblue
Botrounded head + LED eyesmint green
Cattriangular ears + vertical pupils + whiskersamber
Ghostwavy hem + big round eyesviolet

Development

npm install          # installs dsh peer dependencies + dev tooling
npm run build        # tsc (types) + tsdown (node-half lib + browser client bundle)
npm test             # vitest
npm run watch        # tsdown --watch

The build emits the node-half library (lib/index.js, lib/invariant.js) and the browser client bundle (lib/client.js) in dsh's __ModuleLoader__ closure-factory format, with CSS Modules inlined by lightningcss.

License

MIT

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

测试已检测

仓库信息

开发语言
TypeScript
许可证
MIT
最后更新
2026年8月18日 06:38

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。