DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Plugin Ascension — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-plugin-ascension

Plugin Ascension

Tribulation and Ascension: 仙逆·王林 cultivation companion.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add dsh-plugin-ascension@0.2.0
READMECompatibilityVersions

Description

Tribulation and Ascension: 仙逆·王林 cultivation companion. Monitors session status to drive animations, advances through cultivation realms with use, and unlocks more elaborate skins at higher realms.

Compatibility and provenance

Plugin Ascension is published as dsh-plugin-ascension and currently resolves to version 0.2.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
npm
Registry updated
9/20/2026

Versions

0.2.0stable
8/19/2026
0.1.3stable
8/18/2026
0.1.2stable
8/18/2026
Show 2 more versionsCollapse versions
0.1.1stable
8/18/2026
0.1.0stable
8/18/2026

Related plugins

Loading related plugins…

Latest
0.2.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
16.8 MB
Files
14
Surface
web
License
MIT
Source
npm
GitHub
★ 1
Weekly downloads
36
Last push
8/19/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in ui-customization.

Better Sidebardsh-better-sidebarDSH web plugin: a VSCode-like right sidebar (explorer / editor / terminal / git / browser), isolated per conversation session. Exposes a service for other plugins to register sidebar tabs and file viewers.Codex Ui@michengai/dsh-codex-uiDSH Codex UI — 为 DeepSeek Harness Web 提供 Codex 风格侧栏、工作区会话树、全局搜索和轮次导航 · A Codex-style sidebar, workspace session tree, global search, and turn navigation for DSH WebDafeiyudsh-dafeiyuA desktop-native BigFish companion driven by DeepSeek Harness session events.Web App@deepseek-ai/dsh-web-appThe dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)

README

🇬🇧 English | 🇨🇳 简体中文

dsh-plugin-ascension

A Wang Lin cultivation companion floating in the dsh web UI. It watches the LLM session state in real time and drives animations (thinking = hand seals, tool = casting, replying = calligraphy, done = breakthrough leap, failed = injured), and levels up as you work (Qi Refining → Foundation → Core → Nascent Soul → Spirit Severing → Infant Change → Ascension), with fancier skins at higher realms.

Capabilities ported and re-themed from @linxin666/dsh-pet (MIT): session event projection, state machine, and affinity/cultivation economy as pure logic modules.

Install

# Option 1 (recommended): from npm
dsh plugin --profile web add dsh-plugin-ascension

# Option 2: from GitHub
dsh plugin --profile web add github:d-ouyang/dsh-plugin-ascension

# local dev: dsh plugin --profile web add ./dsh-plugin-ascension

Restart the web service (:3080) after installing.

Features

State monitoring (the pet acts out what the LLM is doing)

The host subscribes to the official session event stream (ctx.on('session/event')) and maps it to 7 phases driving 9 animation tracks:

PhaseTriggerBubble textTrackSheet rowFrames
idlestopped / no session停止修炼stand6spritesheet (standing placeholder)
waitingturn start / step start / awaiting input / blocked凝神入定 · 静待机缘meditation—meditation.webp (✅ real)
thinkingLLM reasoning掐诀推演 · 参悟神通结果running7spritesheet (✅ real)
tooltool call正在施展神通 · 还有 N 道神通未了running7spritesheet (placeholder)
reviewstreaming reply凝神书字 · 整理心得running8spritesheet (placeholder)
doneturn completed圆满出关!running-right—dragon.webp (✅ real, 雷龙庆祝)
failedtool error / interrupt / max-tokens神通反噬 · 心魔反噬 · 灵力枯竭stand6spritesheet (standing placeholder)
  • Animations loop ping-pong (0→1→…→n→…→1→0) while the phase lasts
  • done celebration window: 3 s for a normal turn, 6 s on a realm breakthrough (celebrateMs, passed via onStatus opts)

Cultivation & realms

  • +1 per completed turn (cultivate); click pet +1 (discuss, 3 min cooldown); feed pill +1 (30 s cooldown)
  • 7 realms (Qi Refining → Foundation → Core → Nascent Soul → Spirit Severing → Infant Change → Ascension), thresholds configurable in ascension-core.js (REALMS)
  • Realm-up triggers the breakthrough animation and auto-switches to the next realm's skin; missing skins fall back to the previous realm

Interaction & effects

InteractionEffect
Click petDiscuss (+cultivation, reaction bubble above or left)
Drag petMove it (persisted to config)
Hover petAncient-style panel: realm badge + cultivation progress bar + pill/hide buttons
Click hideWang Lin shrinks into the Tianni Pearl (bottom-right); the pearl loops a gold-wood-water-fire-earth rotating gradient
Click pearlWang Lin grows back out of the pearl (animation first, config synced async)
  • Bubble moves to the left of the pet while hovering, never overlapping the panel
  • All transitions render optimistically without waiting for the API

Settings section (Settings → Ascension)

Full-width form with Save / Cancel at the bottom (applied on save):

  • Enable: master switch, stops monitoring/animation when off
  • Hide pet: show/hide the pet body
  • Name, skin, size (60–400 px), right / bottom insets

Tool

Ask in chat: "王林现在什么境界?" → ascension_status returns realm / cultivation / distance to next realm / pet & feed counts / current animation.

Making skins (important)

One skin = one directory (pet.json + one spritesheet), with a fixed 9-row action order:

RowActionFramesWang Lin pose
0idle6standing with hands down (placeholder)
1sword4sword flight (御剑)
2running-left8sword flight left
3waving4fist-and-palm salute
4jumping5breakthrough leap
5failed8wounded pose (placeholder)
6stand6still, focused (idle/failed 站姿)
7running6hand seals (掐诀)
8review6writing with qi
  • Cell size: current skin is 768×832 (4× HD), declared by the cell field in pet.json — any size works
  • Recommended pipeline: generate a looping action video with Jimeng, split into frames (frames from one video keep the character position stable), export per-frame PNGs
  • Background removal: color-key for solid backgrounds + hole filling + edge feathering (keeps aura effects, removes gray edges); silver-white hair is auto-brightened to remove gray flicker
  • Pack (requires sharp):
    cd /Users/ouyangding/dsh-plugin-ascension
    pnpm install
    node skin-pack.js <skin-id> --name "Wang Lin · Qi Refining"
    
    → outputs assets/<id>/ (spritesheet.webp + pet.json + previews/)
  • Drop-in without code changes: copy a packed skin directory to ~/.dsh/ascension/skins/<id>/ (user skins win)
  • Realm ↔ skin id: wang-lin-1..wang-lin-7 map to the 7 realms

Data & API

  • Persistence: ~/.dsh/ascension/ (state.json / settings.json)
  • RPC: /api/ascension/{state, interact, set-enabled, set-visible, set-config, set-skin}, /api/ascension/skins/<id>/* (skin assets), /api/ascension/tiannizhu/* (pearl animation)

Development

dsh-plugin-ascension/
├── index.js           # host: session/event subscription + cultivation service + RPC + skin registry
├── ascension-core.js  # pure logic: realms / cultivation / event projection / state machine
├── client/client.js   # client: settings section + floating pet + Tianni Pearl (hand-written bundle)
├── skin-pack.js       # skin packer: frames → spritesheet + pet.json + previews
├── assets/            # built-in skin (wang-lin-1) + pearl animation
└── cordis.patch.yml / package.json

Credits

State monitoring / state machine / cultivation economy ported from @linxin666/dsh-pet (MIT License).