RSLN-creator/dsh-web-bridge

Use your logged-in web AI (DeepSeek, GLM, Kimi, Qwen, Doubao...) as model providers in DeepSeek Harness. Web models emit tool calls, DSH runs them under its native permission system, and results return to the same web session. No API keys.

Project Overview项目介绍

This is a native plugin built exclusively for DeepSeek Harness (DSH) that connects logged-in web-based AI chatbots to the DSH workflow. When a web AI model generates a tool call, the plugin routes it to DSH’s native permission system to execute the local tool, then sends the result back to the original web session without bypassing DSH’s permission checks. The plugin is not published to the npm registry, so the only way to install it is via a packaged .tgz file. Users can either download the pre-built tgz from the GitHub Releases page, or clone the repo and package it from source using pnpm.

After installation, you must restart the DSH web process for the plugin to take effect, because the running process only loads the new code after a restart. First run requires two dependencies: Node.js 22.13 or newer, and the Microsoft Edge browser, and no browser extensions are needed to use this plugin. Once you start DSH web, you can navigate to the local address http://127.0.0.1:3080, log in to your desired web AI site via the plugin settings, and then select the corresponding model from the DSH model selector to start using it. The plugin currently supports major web AI sites including DeepSeek, GLM, Kimi, Tongyi Qianwen, and Doubao.

The plugin handles cross-origin resource issues common when loading third-party web AI sites in an iframe, automatically rewriting cross-domain static resource URLs to fix CORS errors and SPA router mismatches. It includes many useful features such as automatic rate limit backoff and retry, adaptation for both old and new versions of web AI UIs, import of local browser login cookies, and import of existing web chat history into DSH sessions. All core functionality is covered by automated tests, and the project maintains a full test matrix to verify that each supported site loads and works correctly with the latest UI updates.

这是 DeepSeek Harness(DSH)的原生插件,作用是将已登录的网页端 AI 接入 DSH 工作流。网页模型产生的工具调用会由 DSH 原生权限系统执行本地工具,执行结果会回传给同一个网页会话,保留 DSH 原有的权限审核流程。本插件不发布到 npm registry,唯一交付物是打包好的 .tgz 安装包,用户可选择下载预构建包或从源码自行打包。

安装完成后必须重启 DSH 才能生效,首次运行需要依赖 Node.js 22.13+ 和 Microsoft Edge 浏览器,无需安装浏览器扩展。启动后会在本地 3080 端口打开服务,用户在 DSH 设置中完成网页站点登录后,即可在 DSH 侧选对应的网页模型使用。它支持 DeepSeek、GLM、Kimi、通义千问、豆包等多个主流网页 AI 站点。

本插件处理了多站点跨域资源问题,会自动改写跨域静态资源地址,解决 CORS 错误和 SPA 路由不匹配问题。它支持限流自动退避重试、不同版本网页 UI 适配、导入本机浏览器登录态、网页历史导入 DSH 会话等功能,当前完整适配多个主流站点的最新 UI,提供了完整的测试验收流程来保证功能可用性。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 2 warnings2 项注意
  • Only 8 stars - very few users, little community feedback星标只有 8,几乎没人在用,遇到问题缺少社区反馈
  • No DSH plugin manifest detected - it may only carry the dsh-plugin topic, so the install method must be confirmed on the spot未检测到 DSH 插件清单:可能只是打了 dsh-plugin 话题,安装方式要现场确认
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-webcode-bridge

把 RSLN-creator/dsh-web-bridge 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

Harness Web Bridge

English · 中文

Use your logged-in web AI — DeepSeek, GLM (Z.ai), Kimi, Qwen, Doubao — as model providers inside DeepSeek Harness. Web models emit tool calls, DSH executes them under its native permission and approval system, and the results go back into the same web session.

No API keys. It drives the site through your own browser login.

dsh plugin --profile web add dsh-webcode-bridge

Why

Most "web model" integrations are fragile in the same three ways: they scrape HTML, they lose the conversation when the page reloads, and they bypass the host's tool permissions. This plugin is built the other way around:

Concern How it is handled
Tool permissions The web model only proposes calls. DSH runs them with its own permission and approval system — the bridge cannot bypass it.
Session continuity A per-session cursor keeps the web conversation alive across turns, across restarts, and after history rewrites. When the web session is lost the bridge replays the full first turn instead of silently starting over.
Long prompts Over-threshold bodies are delivered as a file attachment, bypassing the composer's write-stall and truncation limits, with an automatic fallback to plain text if any step fails.
Rate limits A configurable send gap (global and per site) plus automatic backoff-and-retry on the site's own rate-limit response.

Features

  • Real site rendering in the DSH right sidebar. Not a screenshot, not a mock — the actual site, loaded through a same-origin mirror so you can type, scroll and click in it. Login state persists.
  • Per-site protocol teaching. Each site is taught the tool-call shape it actually accepts (DeepSeek's native token format, GLM's ```json code block, <tool_call> tags elsewhere). The protocol is recomputed from the live tool list every time, so it never drifts.
  • Per-site and global settings. Model, instruction, send gap and prompt-delivery mode can each be set globally and overridden for a single site — changing one site never disturbs the others.
  • Multi-account. One site can hold several independent logins; each gets its own browser profile and its own request pacing.
  • Observable. Every delivery, fallback and rate-limit event is projected into GET /__webcode/status, so "did it actually work" is answerable from the UI instead of from logs.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-drawio 下一个 Next dsh-plugins →