DeepSeek Harness Plugin

starwish-ai/xingyuan-dsh

Stars ★ 2 Downloads (30d) 2,143 Category Workflow & Automation Added 2026-08-27 npm @starwish-ai/xingyuan-dsh

Agent preset bundle for wish and task management: create wishes or tasks from conversation, opportunity-day check-ins, micro-actions, plus a memory store and progress charts in the web UI.

Install

# from npm (prebuilt)

dsh plugin --profile web add @starwish-ai/xingyuan-dsh

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:starwish-ai/xingyuan-dsh

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

CI

简体中文 | English

XingYuan is a wish & habit-building companion, shipped as a DeepSeek Harness plugin bundle + agent preset.

Features

  • Conversation-driven: create wishes / tasks in natural language with duplicate detection
  • Opportunity-day check-ins: check-in, make-up, cancel, and future pre-checks; progress always recomputed against today
  • Commitment-based progress: only claimed tasks count; a wish achieves when everything committed is done and nothing is left to claim — full progress with unclaimed tasks leaves it "wrapping up" for your call (claim to continue, or delete to achieve), never nagging, never deciding for you
  • Micro-actions: break an overwhelming goal into 3–7 tiny steps and walk through them guided
  • Growth system: levels Lv.1–Lv.10, streak bonuses, stat cards, 30-day bar chart
  • Session view tabs: Today / Wishes / Tasks / Calendar / Growth / Memory — buttons call action endpoints directly; shown only in XingYuan-preset sessions by default, switchable to always show/hide and per-tab in Settings
  • Memory: important memories injected into context (limit configurable), full CRUD and clear-all
  • Charts: 15 chart types rendered as cards
  • Parity between UI and chat: anything you can do on a page — check in, claim, delete, rename or recolor a category, clear memories, adjust preferences — you can also ask the assistant to do, through the same business layer with the same result; loosening the write-confirmation policy stays user-only (Settings page) by design
  • Safe writes: write confirmation is per-category (create / check-in / undo / claim / edit / save memory); deletion always confirms and cannot be turned off; defaults match previous versions
  • Theming: light/dark follows the app theme

Tools are only mounted on sessions using the XingYuan preset; other sessions are unaffected.

Install

Requires DeepSeek Harness 0.1.7-rc.1 or 0.2.0-rc.1 (peer dependencies admit both version lines, including the host's client-half packages; 0.1.7 rewrote the settings subsystem, so on older hosts this plugin's client half does not activate at all, and since rc.1 dsh refuses to load a whole bundle whose peer range does not match — this package's "every supported line is admitted" claim is locked by a test). Scheduled reminder capabilities differ between the two host versions and are not hardcoded here. Check the upgrade notes in AGENTS.md before bumping dsh).

dsh plugin --profile web add @starwish-ai/xingyuan-dsh

After starting the Web GUI, installation succeeded when "星愿" (XingYuan) appears in the agent picker.

Not in the picker? Upgrade to 0.6.5-alpha.2 or later — as of dsh 0.1.7 the host no longer scans ~/.dsh/.agent-presets/; presets are registered by a declaration row in the plugin patch, so older releases of this bundle silently never show up.

Data & Backup

Business data lives at ~/.dsh/xingyuan/xingyuan.sqlite and survives uninstall / upgrade; backup is just copying that directory. Your preferences moved with dsh 0.1.7 into the profile document (~/.dsh/profiles/<profile>/cordis.patch.yml, this plugin's row), so they are not in that directory — copy the profile file too if you want them on a new machine.

Settings (Web GUI → Settings → XingYuan)

Option Description
Coach style Gentle / humorous / strict
User profile Nickname, occupation, interests
Write confirmation Master switch + per-category toggles (create / check-in / undo / claim / edit / save memory); deletion always confirms and cannot be turned off
Memory injection limit Max memories injected per turn (also settable by saying "use 20 memories" in chat)
Tab visibility Three modes (follow session / always show / always hide) plus per-tab toggles; defaults to follow session. These four non-authorization preferences are also adjustable in chat
Confirm card language Language of the in-chat confirmation card (Chinese / English; the platform does not expose UI language to plugins, defaults to Chinese)

Development

pnpm install
pnpm build   # tsc + tsdown (integration tests depend on lib/)
pnpm test    # vitest

Architecture, domain semantics and client-side discipline live in AGENTS.md (Chinese); contributing guide in CONTRIBUTING.

Releasing: push a v* tag to build and publish to npm automatically (prereleases get the alpha dist-tag).

License

MIT

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.