$ cat ~/map/pi2dsh.md
pi2dsh
Compatibility bridge that lets DeepSeek Harness run unmodified pi ecosystem packages by mapping pi's public extension ABI onto DSH native services.
tools✓ Oct 16
Facts
- repository
- github.com/weijiafu14/pi2dsh ↗
- GitHub Stars
- ★ 216
- Forks
- 34
- license
- MIT
- npm / mo
- —
- last push
- Oct 14, 2026
install
dsh plugin add pi2dsh## TL;DR
Compatibility bridge that runs pi ecosystem plugins on DeepSeek Harness unmodified — install one engine with dsh plugin add pi2dsh, then add any pi package straight from npm: no fork, no patch, no per-package adapter.
## Key points
- $Implements pi's public extension ABI on top of DSH's native services, so a pi package runs on DSH exactly as published; the core contains no per-package special cases — one ABI gap fixed unlocks every package that hits it.
- $One bridge instance mounts every pi package in the profile through a single engine — one model directory, one login, one credential store, one upgrade unit. Plugins mount at startup, so restart dsh after adding or removing anything.
- $Day-to-day is ordinary dsh plugin add/remove; npx pi2dsh inspect <pkg>@<version> prints a compatibility report before you upgrade a plugin, npx pi2dsh matrix --json dumps the full capability matrix, and npx pi2dsh mcp-config translates pi mcpServers config into official DSH MCP entries.
- $Verified end to end with runnable examples for plugins including pi-mcp-adapter, @tintinweb/pi-subagents, @kassing/pi-vision, pi-hermes-memory, pi-background-tasks, and pi-btw; separately, the pi catalog's top 50 packages by monthly downloads were each mounted in a real DSH runtime and probed, with per-package evidence published in the repo.
- $Subscription login works on DSH: the bridge adds pi's interactive OAuth layer, with pi's four official flows (OpenAI Codex, Anthropic, GitHub Copilot, Kimi Code) built in; credentials persist with pi's auth.json semantics and resolve per request through a standard dsh-credentials provider.
- $Requires Node.js 22.19+ and DeepSeek Harness. The engine has a single opt-in config option, serveNativeSubagents, which serves DSH-native subagents with the profile's pi packages on their own agent scope.
## FAQ
Q How do I upgrade the engine or a plugin?
dsh plugin add <pkg>@latest upgrades one plugin and leaves the engine untouched; dsh plugin add pi2dsh@latest upgrades the engine and leaves your plugins alone. Remove plugins before removing the engine.
Q Why did an add silently install an older version?
pnpm's minimumReleaseAge can skip versions published very recently — pin it with dsh plugin add pi2dsh@<version>. If pnpm blocks dependency build scripts (ERR_PNPM_IGNORED_BUILDS), run pnpm approve-builds inside $DSH_HOME/profiles/<profile> or allow the listed packages under allowBuilds, then re-run the add.
Q Does every pi plugin work?
Read the repo's evidence, not a blanket claim. End-to-end verified plugins each ship a runnable example; the top-50 probe only shows the bridge covers what a plugin touches. A capability with no safe mapping is reported in plain language rather than faked.
## References
## Related entries
$ dsh-pi-agent
DeepSeek Harness (DSH) AgentFactory that swaps DSH's native agent loop for a headless pi --mode rpc child, so DSH's web UI, sessions, hooks, and presets keep working with pi's minimal prompt and four tools.
$ Pi Taste
Local preference-learning extension that distills accepted and rejected turns into one readable taste.md.
$ @earendil-works/pi-coding-agent
The official npm package — install the Pi coding agent CLI with one command.
Last updated: Aug 31, 2026