dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
English | 简体中文
Electron desktop shell for DeepSeek Harness (DSH). Bundles node + pnpm, installs @deepseek-ai/dsh into ~/.dsh/runtime, and serves the dsh web UI in a browser window.
Prebuilt packages are published on GitHub Releases. First launch installs the DSH runtime (~1-2 min).
DSH-Desktop-*.dmg from the latest release..dmg and drag DSH-Desktop.app into /Applications.xattr -dr com.apple.quarantine /Applications/DSH-Desktop.app
DSH-Desktop Setup *.exe (installer) or DSH-Desktop-*-win.zip (portable) from the latest release.DSH-Desktop.exe.Electron main process
├─ bundled node + pnpm (resources/runtime; repo-root runtime/ in dev)
├─ first launch: pnpm installs @deepseek-ai/dsh → ~/.dsh/runtime (upgradeable)
├─ spawn dsh web --host 127.0.0.1 --port <free-port>
└─ BrowserWindow → http://127.0.0.1:<port>
DSH is installed from npm at runtime, not shipped with the app. Upgrading DSH = detect a newer version on launch → click "Update" → restart. No rebuild or re-signing.
pnpm install
pnpm collect # download node + pnpm into runtime/
pnpm start # first launch installs @deepseek-ai/dsh (~1-2 min)
Dev and packaged behave identically: both use the bundled node and the external ~/.dsh/runtime.
pnpm dist:mac # macOS dmg + zip
pnpm dist:win # Windows nsis + zip (run on Windows)
macOS artifacts are unsigned; Gatekeeper blocks first launch. Allow with:
xattr -dr com.apple.quarantine /Applications/DSH-Desktop.app
scripts/collect-runtime.mjs@deepseek-ai/dsh (npm latest), installed to ~/.dsh/runtimeCompanion DSH plugins live in DSH-Plugs.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。