DSH WebTokens · DeepSeek 网页桥接
43.5/100
综合分
23
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/27 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
该插件未发布到 npm,按作者文档从 GitHub 源安装即可(静态检查只覆盖 npm 路径,不代表插件不可用)。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add xinyuquan985-coder/DSH-webtokens该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · model
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 46 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装engines.node 要求 >=24,不满足 Node 22.19.0
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-web-bridge(未发布到 npm,仅可源码安装)
✗Node 引擎要求 >=24 · 基线 Node 22.19 不满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 07:02:05
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 24 处,展示前 23 条)
- 写入本地文件plugins/dsh-web-bridge/index.js:67
const broker = new Broker({ ...config, onEvent: event => { if (config.auditPath) appendFile(config.auditPath, JSON.stringify(event) + '\n').catch(() = - 发起网络请求plugins/dsh-web-bridge/client.js:17
const response = await fetch('/web-bridge/panel', { cache: 'no-store', signal: AbortSignal.timeout(6000) }); - 发起网络请求plugins/dsh-web-bridge/client.js:32
const response = await fetch('/web-bridge/open-page', { method: 'POST', headers: { 'content-type': 'application/json', ...(detail?.id ? { 'x-dsh-reque - 读取本地文件bin/dsh-web-bridge.mjs:13
try { return await readFile(path, 'utf8'); } - 读取本地文件bin/dsh-web-bridge.mjs:22
const manifest = JSON.parse(await readFile(join(profileDir, 'package.json'), 'utf8')); - 写入本地文件bin/dsh-web-bridge.mjs:38
await mkdir(ctx.state, { recursive: true }); - 写入本地文件bin/dsh-web-bridge.mjs:44
await writeFile(tokenFile, token + '\n', { flag: 'wx', mode: 0o600 }); - 写入本地文件bin/dsh-web-bridge.mjs:47
await mkdir(chromeDir, { recursive: true }); - 读取本地文件bin/dsh-web-bridge.mjs:48
for (const name of await readdir(join(packageRoot, 'extension'))) { - 写入本地文件bin/dsh-web-bridge.mjs:50
await copyFile(join(packageRoot, 'extension', name), join(chromeDir, name)); - 写入本地文件bin/dsh-web-bridge.mjs:53
await writeFile(join(chromeDir, 'local-config.json'), JSON.stringify({ token }, null, 2) + '\n', { mode: 0o600 }); - 写入本地文件bin/dsh-web-bridge.mjs:64
if (previous) await writeFile(ctx.patch + '.web-bridge-backup-' + Date.now(), previous, { flag: 'wx', mode: 0o600 }); - 读取本地文件bin/dsh-web-bridge.mjs:72
const token = (await readFile(join(ctx.state, 'token'), 'utf8')).trim(); - 读取本地文件bin/dsh-web-bridge.mjs:73
const config = JSON.parse(await readFile(join(ctx.state, 'chrome', 'local-config.json'), 'utf8')); - 发起网络请求bin/dsh-web-bridge.mjs:75
const pairing = await fetch('http://127.0.0.1:3081/pairing-check', { headers: { authorization: 'Bearer ' + token }, signal: AbortSignal.timeout(4000) - 发起网络请求bin/dsh-web-bridge.mjs:77
const status = await (await fetch('http://127.0.0.1:3081/status', { signal: AbortSignal.timeout(4000) })).json(); - 发起网络请求plugins/dsh-web-bridge/context.js:35
fits(options) { try { this.request(options); return true; } catch (e) { if (e.code !== 'WEB_CONTEXT_LIMIT') throw e; return false; } } - 发起网络请求plugins/dsh-web-bridge/context.js:40
const make = text => this.request({ sessionId: options.sessionId, purpose: 'compaction', system: instruction, messages: [message(text)], tools: [] }); - 发起网络请求plugins/dsh-web-bridge/context.js:70
if (this.fits(options)) return { request: this.request(options) }; - 发起网络请求plugins/dsh-web-bridge/context.js:81
this.request({ ...options, messages: [reserve, ...(pinned ? [pinned] : [])] }); - 发起网络请求plugins/dsh-web-bridge/context.js:114
const request = this.request(continuation(summary)); - 发起网络请求extension/background.js:4
const configPromise = fetch(chrome.runtime.getURL('local-config.json')).then(r => r.json()); - 发起网络请求extension/background.js:10
const response = await fetch(BASE + path, { method: 'POST', headers: { 'Content-Type': 'application/json', Authorization: 'Bearer ' + config.token },
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-llm@deepseek-ai/schemastery@deepseek-ai/cordis给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
1 张 · 点击查看大图README
由 DeepSeek 最新模型翻译生成展开完整文档(README 剩余 1 节)
DSH WebTokens · DeepSeek 网页桥接 把已登录的 DeepSeek 网页作为算力接入 DeepSeek Harness(DSH) 的模型菜单,让 Harness 在本机完成工具调用、多轮任务、验证与修复。 本仓库是第三方桥接插件。稳定核心来自 82440ec209d50d5e8063119cc5e19c84ac9f0ebc,DSH 插件 0.2.15,Chrome 扩展 0.2.19。当前仅支持 DeepSeek 网页,其他模型网页正在验证中。 DeepSeek 网页桥接插件封面 安装 需要 Node.js 24+、pnpm、Chrome,以及可以正常登录使用的 DeepSeek 网页账号。已验证的 DSH CLI 版本为 0.1.5-rc.1。下列命令在终端执行。 如果尚未安装 DSH: npm install -g pnpm @deepseek-ai/dsh@0.1.5-rc.1 通过 DSH 官方插件入口安装本仓库: dsh plugin --profile web add "git+https://github.com/xinyuquan985-coder/DSH-webtokens.git#v0.2.15-deepseek" dsh plugin --profile web exec dsh-web-bridge setup setup 会输出一个 Chrome 扩展目录,并在当前 DSH profile 内生成本机配对密钥和配置。保留这份目录,不要删除。它位于 profile 的 web-bridge/chrome 下,不是仓库中的 extension 目录,也不是 node_modules 中的目录。 已有 DSH 的用户应在准备使用的 profile 中安装。如果不是 web,请在安装、setup、启动命令中统一替换 profile 名称。手工配置过旧桥接的用户应先备份并迁移旧条目;setup 检测到重复条目会停止,不会替你删除。 Chrome 插件怎么用 1. 在 Chrome 打开 chrome://extensions,打开右上角 开发者模式。 2. 点击 加载已解压的扩展程序,选择上一步 setup 输出的 web-bridge/chrome 目录。 3. 确认卡片名称为 DeepSeek Harness 网页桥接,版本 0.2.19。同一个 Chrome 用户配置中只加载一份已配对的扩展。 4. 在这个 Chrome 用户配置中打开 DeepSeek 网页,完成登录。 5. 启动 DSH;若安装前已经启动,先结束旧 DSH 进程,再重新启动: dsh web 6. 在 Harness 输入框的模型菜单中选择 DeepSeek 网页(deepseek-web),再发送任务。不要误选需要 API 配置的 DeepSeek 型号。 7. 保持 Chrome 运行。扩展自动使用专用网页会话,接收并回传回答;Harness 负责执行本机工具。不要在工作中的专用会话里手动输入或删除消息。 8. Harness 的 网页桥接 面板可查看阶段、推理进度和结果。需要查看实际网页时,点击 查看网页,也可以使用 Chrome 扩展弹窗的 打开桥接网页。 首次建议用一个测试目录发任务:“读取 test.txt,原样复制为 test-copy.txt,再读取副本核对。”检查真实文件和工具执行记录,确认完整链路。 连接检查: dsh plugin --profile web exec dsh-web-bridge doctor paired: true 表示本地配对成功;connected: true 表示 Chrome 已连接。若 Chrome 尚未连接,doctor 返回退出码 2。该命令不打印密钥。 工作方式 Harness 用户任务与工具定义 ↓ DSH 模型适配器 → 本机桥接 127.0.0.1:3081 ↓ Chrome 扩展 → 已登录的 DeepSeek 网页 ↓ 回答校验 → Harness 原生工具调用 → 实际工具结果 → 下一轮 - 多轮执行: 网页返回结构化调用,桥接验证请求标识、工具名称和参数,然后交给 Harness 原生工具系统执行。结果进入下一轮上下文。 - 验证和修复: 协议格式错误最多请求模型纠正一次;不会猜测缺失参数或自行拼接执行命令。工具执行结果由 Harness 回传,模型据此继续检查和修复任务;不保证任何任务都自动成功。 - 长任务续接: 按网页实际传输预算分段摘要,保留近期上下文与结果;会话容量不足时切换网页会话,并携带经校验的摘要继续。 - 代码传输: DSH_CALLS、DSH_BODY 是本插件定义的传输协议,不是 DeepSeek 官方 API 字段,用于完整保留大段文件正文和转义符。 - 职责划分: 插件注册、任务循环、本机工具、权限管理、会话等由官方 Harness 提供;网页调度、内容采集、传输协议、校验、分段续接和桥接面板由本插件实现。 浏览器网页自身的模型选择、登录验证、限额与服务可用性仍由 DeepSeek 决定。本插件不提供 API Key,也不解锁网页账号没有的模型。 更新与排障 更新到指定版本后,再执行一次 setup,然后在 Chrome 扩展卡片上点击 重新加载。已打开的旧专用网页需要刷新;先等当前任务结束,再更新。 - 找不到“DeepSeek 网页”: 确认安装与启动的是同一个 profile,重启 DSH,检查启动错误。setup 本身不会切换默认模型。 - 找不到插件命令: 确认前面的 add 成功,且通过 dsh plugin --profile web exec ... 运行。 - 3081 端口被占用/配对失败: 检查是否有另一个 DSH 桥接实例正在运行。本基线扩展固定连接本机 3081,同时只运行一套桥接服务。 - 等待扩展连接: 确认加载了 setup 输出的目录、Chrome 正在运行、扩展未关闭。直接加载仓库 extension 目录会缺少配对文件。 - 网页等待登录/验证: 点击查看网页,手动完成登录或验证,再按界面提示继续或重新提交失败任务。 - 后台停滞: 点击查看网页确认实际进度;不要重复手动发送输入框内容。网页改版可能需要更新适配。 - 参数或正文校验失败: 查看面板中的具体错误。插件会停止不确定调用,不会把未验证的内容当作成功结果。 日志保存在 profile 的 web-bridge/logs/events.jsonl。密钥、local-config.json、profile 配置和日志属于本机文件,不要上传到公开仓库。发到 DeepSeek 的上下文包含任务所需的文件内容和工具结果,因此只在适合发送给该网页服务的项目中使用。 源码与验证 SOURCE.json 记录来自指定提交的 43 个核心、扩展与回归测试文件的 SHA-256。新增加的内容是根目录安装包元数据、setup/doctor、安装测试和公开文档;未改写基线核心文件。 npm install npm test npm run verify:source npm pack 实际安装与运行检查见 VERIFICATION.md。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
xinyuquan985-coder/DSH-webtokens
DSH WebTokens · DeepSeek 网页桥接
相关插件 · 模型接入
API 中继安全审计toby-bridges/api-relay-audit
面向 AI API 中转与 LLM 代理的本地安全审计。
★ 897已汉化DSH
69.4
免费搜索插件DDDMUC/dsh-free-search
DeepSeek Harness 免费搜索插件 —— 无需 API key,零成本,多引擎可切换。 一个给…
★ 761已汉化DSH
68.7
免费联网搜索liustack/modsearch
在官方 App 里模型能联网,切到 API 就不能了。ModSearch 把联网补回来:网页搜索、X…
★ 863已汉化DSH
68.5
OpenCode 免费模型FishBottle7/opencode2dsh
在 DSHDeepSeek Harness里原生使用 OpenCode Zen 的免费匿名模型。
★ 379已汉化DSH
67.8
AI 模型网关tingly-dev/tingly-box
Tingly Box Web UI 演示
★ 373已汉化DSH
67.4
WorkBuddy 账号池XDTrees/dsh-xdpool
把你能白嫖的模型额度接进 DSH 同一个池:WorkBuddy 多账号自动容错、十三家扫码登录、76…
★ 359已汉化DSH
67.1