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.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

@try-works/dsh-paper-design

Paper Design

Paper Design MCP bridge as a DeepSeek Harness bundle: paper_* tools, image screenshot support, design skills, OAuth auth, and Cursor-parity design guidance.

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

npx -y @deepseek-ai/dsh plugin --profile web add @try-works/dsh-paper-design@0.1.6
READMECompatibilityVersions

Compatibility and provenance

Paper Design is published as @try-works/dsh-paper-design and currently resolves to version 0.1.6. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
npm
Registry updated
11/4/2026

Versions

0.1.6stable
10/17/2026
0.1.5stable
10/7/2026
0.1.4stable
8/17/2026
Show 4 more versionsCollapse versions
0.1.3stable
8/16/2026
0.1.2stable
8/16/2026
0.1.1stable
8/16/2026
0.1.0stable
8/16/2026

Related plugins

Loading related plugins…

Latest
0.1.6
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
104.5 kB
Files
13
Surface
any
License
MIT
Source
npm
GitHub
★ 2
Weekly downloads
156
Security scan
✓ v0.1.6 scan passed
Last push
10/17/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 integrations-communication.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseRemote Web Ui@linxin666/dsh-remote-web-uiScan-to-pair remote access for the dsh web GUI that shares one official interface: a QR beside the settings button pairs phones and PCs into the same Web GUI (a portrait-touch adaptation layer for phones, full desktop on PCs) through one-time tokens and rRemote Bridge@linxin666/dsh-remote-bridgeDSH remote bridge: the host half serves protocol v1 over one exact /ios/v1 WebSocket route — session roster, history baseline, prompting, live turn increments with tool activity, interrupt, and in-process agent approval — to a device paired by a one-shot Im@xmanrui/dsh-im把微信、飞书、企微、钉钉、QQ、Telegram、WhatsApp、Slack、Discord、Matrix接入DSH。 Connect Telegram, WhatsApp, Slack, Discord, Matrix, WeChat, Feishu, WeCom, DingTalk, and QQ to DSH.

README

dsh-paper-design

Paper Design MCP bridge as a DeepSeek Harness bundle.

Connects to the Paper Desktop MCP server (http://127.0.0.1:29979/mcp), registers every Paper tool as a native paper_* tool with image screenshot support, injects Cursor-parity design guidance, registers the Paper skills, and exposes reconnect + OAuth auth commands.

What it provides

  • paper_* tools — every tool advertised by Paper Desktop MCP (get_basic_info, get_screenshot, write_html, update_styles, …), registered natively on ctx.tools. Raw MCP inputSchemas are normalized to the enforced DSH JSON-Schema subset ($schema/format/pattern/propertyNames/min*/max* stripped, anyOf→oneOf).
  • Image screenshot forwarding — get_screenshot image blocks are decoded and durably committed through ctx.attachments (saveImage), then emitted as attachment-backed image blocks (and deferred as plugin-sourced context for nested run_code dispatches), so screenshots reach image-capable models.
  • Cursor-parity guidance — standing rules injected as a system-prompt section (order 150), plus the full paper-mcp-instructions guide injected for the first 2 agent turns after connect/reconnect. paper_get_guide also caches the guide body.
  • Skills — code-to-design, design-to-code (Cursor Paper plugin bodies verbatim), and paper-design (progressive-disclosure tool reference index).
  • /paper-reconnect — re-initializes the MCP session, (re)registers the paper_* tools, clears the guide cache, and resets the early-turn guide-injection budget.
  • Late-start recovery — DSH is usually booted long before Paper Desktop is opened, so a failed first connection is not terminal: the bridge retries in the background (10s by default; retryMs changes it) and publishes the tools as soon as the server answers. The prompt section, skills, and commands register up front, so /paper-reconnect exists even while Paper is closed.
  • MCP OAuth auth (Cursor parity) — a discovery-driven OAuth 2.1 client: RFC 8414/OIDC discovery probe → RFC 7591 dynamic client registration → PKCE (RFC 7636) authorization via loopback redirect → token exchange/refresh → bearer-token attachment with 401/403 WWW-Authenticate challenge handling (RFC 9728). Tokens persist to $DSH_HOME/paper-design/oauth.json. Paper Desktop currently runs unauthenticated on localhost (no discovery/challenge), so the bridge stays dormant there and the auth layer activates only when a server advertises or challenges auth. Commands:
    • /paper-auth-status — show mode (unauthenticated vs oauth), configured/authenticated state, expiry, discovery endpoints, last challenge/error.
    • /paper-auth-login — start the OAuth authorization flow (opens the browser; falls back to printing the URL).
    • /paper-auth-logout — clear stored tokens.

Requirements

  • Paper Desktop running with a file open (the MCP server lives inside the desktop app). It does not have to be running when DSH boots — the bridge picks it up when it appears.
  • DSH 0.2.0-rc.2 or 0.1.0-rc.5+ — the plugin declares matching @deepseek-ai/dsh-* peer ranges, and DSH refuses to load it on a runtime outside them.
  • A DeepSeek Harness profile that bundles @deepseek-ai/dsh-base (or the services it mounts): tools, systemPrompt, attachments (for images), skills, commands, llm.
  • An image-capable model route for screenshot support (text tools work on any route).

Install

Add this package to the profile and its bundles list, e.g. in ~/.dsh/profiles/<name>/package.json:

{
  "dependencies": {
    "@try-works/dsh-paper-design": "^0.1.6"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "@deepseek-ai/dsh-base",
        "@try-works/dsh-paper-design"
      ]
    }
  }
}

Then pnpm install in the profile and restart the running DSH process. The bridge ships its src/*.ts sources directly (DSH loads them through tsx), mirroring dsh-recursive-mode.

Restart is required for host/bundle changes: the web client-plugin HMR only rebuilds the web shell, not host plugins.

Usage

  • Ask the agent to read or design in Paper; it will use paper_get_basic_info, paper_open_file, paper_get_screenshot, and the rest.
  • /paper-reconnect republishes the tools and re-syncs after restarting Paper Desktop. You normally do not need it: the tools appear on their own when Paper starts.
  • /paper-auth-status / /paper-auth-login / /paper-auth-logout manage OAuth auth when a server requires it.

Development

pnpm install
pnpm run build                        # type-check (tsc -p tsconfig.build.json)
pnpm run verify                       # live MCP bridge verification (needs Paper Desktop)
pnpm run verify:bridge                # in-process plugin boot + live paper_get_basic_info
pnpm run verify:parity                # Cursor/pi skill-body parity
pnpm run verify:injection             # prompt-section marker/budget logic
pnpm run verify:auth                  # OAuth flow vs a mock authorization server
pnpm run test:unit                    # bridge + late-start recovery (stub MCP; no Paper needed)
pnpm test                             # everything above

Layout

  • src/index.ts — bundle entry: register prompt/skills/commands, then connect, normalize, and (re)register tools with late-start retry.
  • src/mcp-client.ts — minimal Streamable HTTP MCP client (initialize/tools-list/tools-call, session tracking, SSE parsing, one-shot re-init, bearer-token + challenge hooks).
  • src/auth.ts — discovery-driven MCP OAuth 2.1 client (RFC 8414/OIDC discovery, DCR, PKCE, loopback redirect, token exchange/refresh, persisted store, challenge handling).
  • src/schema.ts — raw Paper JSON Schema → enforced DSH subset normalizer.
  • src/guide.ts — standing rules + early-turn guide markers and builder.
  • src/skills.ts — runtime skill registrations.
  • skills/*/SKILL.md — on-disk skill bodies (parity artifacts).
  • cordis.patch.yml — loader patch inserting the bridge into a cordis:group realm.

License

MIT