TZHR-invest/dsh-plugins

TZHR-invest/dsh-plugins#dsh-lan-gateway: 完整的 Web GUI 局域网/远程访问方案:0.0.0.0 绑定、crypto.randomUUID polyfill、令牌门卫(401 登录页 + WebSocket 拦截,回环豁免)、特权围栏与设置持久化放行,附带幂等安装器与升级恢复。 TZHR-invest/dsh-plugins#dsh-mobile-ui: Web GUI 移动端适配:窄屏全宽响应式布局、会话抽屉、44px 触摸目标、安全区适配与阅读增强,桌面端零影响。 TZHR-invest/dsh-plugins#dsh-vision-tool: Agent 可调用的视觉工具:通过你配置的任意 OpenAI 兼容视觉端点描述本地图片,支持多模型交叉核对,不内置任何密钥。 TZHR-invest/dsh-plugins#dsh-web-search-metaso: 秘塔AI搜索 providers for ctx.web:web_search 返回网页摘要,web_fetch 读取网页全文 markdown,多范围搜索(网页/文库/论文/图片/视频/播客)。

Bundle 已验证 MIT Shell 未知
Bundle 已验证

已收录

1

Browser, Remote, Ui, Vision

Bundle 已验证

版本未知
语言Shell
许可证MIT
在 GitHub 查看

功能介绍

TZHR-invest/dsh-plugins#dsh-lan-gateway: 完整的 Web GUI 局域网/远程访问方案:0.0.0.0 绑定、crypto.randomUUID polyfill、令牌门卫(401 登录页 + WebSocket 拦截,回环豁免)、特权围栏与设置持久化放行,附带幂等安装器与升级恢复。 TZHR-invest/dsh-plugins#dsh-mobile-ui: Web GUI 移动端适配:窄屏全宽响应式布局、会话抽屉、44px 触摸目标、安全区适配与阅读增强,桌面端零影响。 TZHR-invest/dsh-plugins#dsh-vision-tool: Agent 可调用的视觉工具:通过你配置的任意 OpenAI 兼容视觉端点描述本地图片,支持多模型交叉核对,不内置任何密钥。 TZHR-invest/dsh-plugins#dsh-web-search-metaso: 秘塔AI搜索 providers for ctx.web:web_search 返回网页摘要,web_fetch 读取网页全文 markdown,多范围搜索(网页/文库/论文/图片/视频/播客)。

适合

  • 需要向可信局域网或远程设备开放 DSH Web UI,并需要监听绑定、令牌门控和 WebSocket 拦截的团队。
  • 需要窄屏移动端 Web UI、覆盖式会话抽屉、触摸尺寸控件和安全区适配的用户。
  • 需要通过已配置的 OpenAI 兼容视觉端点描述本地图片,并可选用多模型交叉核对的 agent。
  • 需要秘塔支持的摘要搜索和网页全文 Markdown 阅读,并覆盖多种内容范围的流程。

不适合

  • 在不可信网络中部署 LAN gateway,或要求传输加密的场景;其令牌门控只提供授权,不提供加密。
  • 不需要远程访问、移动端适配、视觉分析或秘塔搜索的纯桌面用户。
  • 没有配置兼容视觉端点和凭证的视觉流程;插件不内置密钥。
  • 希望移动端插件改变桌面行为的用户;其作用范围限于 768px 及以下屏幕。

README

dsh-plugins

A small monorepo of plugins for DeepSeek Harness (dsh) — self-hosted, battle-tested against real incidents (crash-prevention discipline, idempotent installers, upgrade recovery).

Plugins

Package npm What it does
dsh-lan-gateway dsh-lan-gateway LAN / remote access gateway for the Web UI: 0.0.0.0 binding, crypto.randomUUID polyfill, token gate (401 login page + WebSocket interception, loopback exempt), privileged-fence + settings-persistence exemptions, idempotent installer + reapply-lan-patches.sh recovery. Trusted networks only.
dsh-vision-tool dsh-vision-tool Registers a vision tool for agents: describe local images via any OpenAI-compatible vision endpoint you configure — no built-in keys, optional multi-model cross_check to guard against hallucinations.
dsh-mobile-ui dsh-mobile-ui Mobile UI for the Web GUI (≤768px): full-width responsive layout, overlay session drawer, 44px touch targets, safe-area support, reading enhancements — zero desktop impact.

All three follow the official bundle contract (dsh.bundle.patch), pass the repo’s contract preflight (classic-script bundles, no top-level import/export, exports["./client"] present), and ship idempotent installers with headless smoke tests and uninstall rollback.

Install

# per-plugin tarball (see each package README) or via npm:
dsh plugin --profile web add dsh-lan-gateway
dsh plugin --profile web add dsh-vision-tool
dsh plugin --profile web add dsh-mobile-ui

⚠️ Security: dsh-lan-gateway binds the Web GUI to 0.0.0.0 — any device that can reach the port can drive the agent. Trusted networks only; the token gate is authorization, not encryption.

Infrastructure in this repo

  • scripts/preflight.mjs — contract preflight for plugin packages (the crash-prevention checklist: platform, exports, classic-script bundle, id consistency). Runs automatically in build.sh.
  • scripts/new-plugin.sh + templates/ — scaffold new plugins from a template with an auto-generated idempotent installer (preflight + headless smoke + idempotent wiring + uninstall rollback).
  • docs/development.md — plugin development guide (host/client mechanism, package spec, wiring, debugging, §8 crash-prevention checklist).
  • docs/publishing.md — tarball distribution guide.

External plugins (registered only, not copied)

  • memory-recall-dsh — long-term memory plugin (6 tools + auto recall injection + auto capture). Code lives in the memory_recall repo (apps/api/src/plugins/dsh/); this repo only links it to avoid source drift. Requires a self-deployed backend.
  • dshmarket — visual plugin market inside the Web GUI (browse/search/install/update/uninstall 300+ community plugins, themes). Upstream: dsh-market/dsh-market (npm dshmarket, MIT, zero runtime deps); registered here only, not copied. Install: dsh plugin --profile web add dshmarket, then restart dsh web; entry at Settings → Plugin Market. Note: its in-UI one-click restart (loopback + same-origin guarded) is enabled by default — on hosts without a supervisor, prefer a manual terminal restart or set allowRestart: false.

License

MIT. Chinese documentation: README.zh.md

常见问题常见问题

在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:TZHR-invest/dsh-plugins#path:/packages/dsh-lan-access。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。