🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

路径悬停打开器 whw19761006/path-click

DeepSeek Harness
whw1976100681 天前有提交已提供中文文档扫描:含敏感能力

悬停路径或网址,一键在资源管理器或浏览器中打开

27.4/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add whw19761006/path-click
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · browser
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 6 处,展示前 6 条)
  • 写入本地文件
    lib/index.js:26
    appendFileSync(DIAG_LOG, `${new Date().toISOString()} ${line}\n`);
  • 执行外部命令来自配置/变量
    lib/index.js:103
    execFile(command, args, { encoding: "utf8", signal }, (error, stdout, stderr) => {
  • 读取本地文件
    lib/index.js:146
    info = await stat(target);
  • 执行外部命令固定命令
    lib/index.js:201
    execFile("reg.exe", ["query", key, "/v", valueName], { encoding: "utf8" }, (error, stdout) => {
  • 执行外部命令固定命令
    lib/index.js:215
    execFile("reg.exe", ["query", key, "/ve"], { encoding: "utf8" }, (error, stdout) => {
  • 发起网络请求
    lib/client.js:116
    const response = await fetch("/path-click", {
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 悬停路径或网址
  • 资源管理器中显示
  • 浏览器中打开

在 DSH Web UI 里悬停文件路径和 URL,即可在资源管理器中显示或在默认浏览器中打开。

README

由 DeepSeek 最新模型翻译生成
path-click 一个 DeepSeek Harness(DSH)Web 界面插件:把鼠标悬停到文件路径或网址上,会弹出一个气泡菜单,一键在「资源管理器」中显示,或用默认浏览器打开——任何文件类型都能在浏览器里打开,效果等同于把 file:// 地址粘贴到浏览器地址栏。 🇨🇳 中文 | 🇬🇧 English 功能 - 悬停消息里的文件路径(行内代码、产物 chips、文件提及)→ 气泡菜单: - 📁 在资源管理器中显示:文件打开其所在文件夹,文件夹直接打开 - 🌐 用浏览器打开:无论什么文件类型,都在默认浏览器中打开(HTML、JS、图片、日志……) - 悬停网址(http/https/file/mailto 链接)→ 用默认浏览器打开 - 工具调用卡片里的文件路径(含相对工作区的路径)同样支持 - 气泡采用纵向布局,鼠标可以放心从路径移到按钮上,不会中途消失 工作原理 插件分两部分,通过一个包同时加载: | 部分 | 文件 | 职责 | | 宿主端 | lib/index.js | 注册 /path-click HTTP 路由,执行打开动作;作为 bundle 被 loader 加载 |
展开完整文档(README 剩余 1 节)
path-click

一个 DeepSeek Harness(DSH)Web 界面插件:把鼠标悬停到文件路径或网址上,会弹出一个气泡菜单,一键在「资源管理器」中显示,或用默认浏览器打开——任何文件类型都能在浏览器里打开,效果等同于把 file:// 地址粘贴到浏览器地址栏。

🇨🇳 中文 | 🇬🇧 English

功能

- 悬停消息里的文件路径(行内代码、产物 chips、文件提及)→ 气泡菜单:
- 📁 在资源管理器中显示:文件打开其所在文件夹,文件夹直接打开
- 🌐 用浏览器打开:无论什么文件类型,都在默认浏览器中打开(HTML、JS、图片、日志……)
- 悬停网址(http/https/file/mailto 链接)→ 用默认浏览器打开
- 工具调用卡片里的文件路径(含相对工作区的路径)同样支持
- 气泡采用纵向布局,鼠标可以放心从路径移到按钮上,不会中途消失

工作原理

插件分两部分,通过一个包同时加载:

| 部分 | 文件 | 职责 |
| 宿主端 | lib/index.js | 注册 /path-click HTTP 路由,执行打开动作;作为 bundle 被 loader 加载 |
| 浏览器端 | lib/client.js | 悬停检测与气泡 UI;通过 dsh.client 声明被 dsh-client-modules 自动发现并注入页面 |

打开机制(Windows)

- 资源管理器:直接 explorer.exe (文件 → 打开其所在文件夹;不依赖 explorer 的 /select, 开关,该开关跨进程传递时极不可靠)
- 浏览器(文件路径):从注册表 http\UserChoice 关联探测默认浏览器程序(Chrome / Edge / Firefox 等),把 file:// URL 作为命令行参数交给它——绕开文件类型关联,所以 .js、.lnk 等无关联类型也能在浏览器中打开,且不会弹出"选择打开方式"
- 浏览器(http/https):同一机制;mailto: 走 rundll32 url.dll,FileProtocolHandler

为什么不直接用 ShellExecute / start?ShellExecute 对 file:// 链接会走文件类型关联:HTML 能打开,但 .js 这类会弹"选择打开方式",且 explorer.exe 拿到 file:// 会自己在资源管理器中导航。直接调用浏览器程序是最可控的方案。

安全设计

- 路由不在 /api 前缀下(该前缀由 DSH 的固定路由表把持,第三方插件无法扩展),因此自带信任围栏:
- 仅接受 POST + application/json(强制浏览器预检,防跨站请求)
- Origin 必须等于 http://,且 Host 必须是回环地址(127.0.0.1 / localhost / ::1)——同时防跨站 CSRF 与 DNS rebinding
- 打开动作仅在回环部署(本机访问)下启用
- URL 协议白名单:仅 http: / https: / file: / mailto:;拒绝含引号/换行的值
- 路径含 % 字符时拒绝用浏览器打开(避免 cmd 环境变量展开问题)
- 浏览器端对所有请求的路径做存在性校验后再调用系统

已知问题与设计取舍

- 相对路径(如工具卡片里的 plugins/foo/bar.js)按宿主进程 cwd 解析;默认部署中 cwd 即工作区根,所以正确;若工作区不是宿主启动目录,相对路径会解析错位
- 路径尾部反斜杠会被剥掉再传给 explorer(path\" 会破坏命令行引号解析,导致 explorer 回退打开默认文件夹)
- 思考过程(Think)等大段纯文本里嵌着的路径不支持悬停(为避免误匹配,只对"元素内容恰好是路径"的文本生效)
- macOS / Linux 分支(open -R / xdg-open)已实现但未在真机验证

安装

前置:已安装 DSH(dsh 命令可用)与 pnpm。

从 git 仓库安装

dsh plugin --profile web add github:harmony520/path-click

从本地目录安装

dsh plugin --profile web add /path/to/path-click

Windows 注意:路径含空格(如用户名 "Mo Haowei")时,dsh plugin 的 pnpm 转发会拆坏参数。可改用直接 pnpm:

cd %USERPROFILE%\.dsh\profiles\web
pnpm add C:\path\to\path-click

然后把 "path-click" 手动追加到该目录 package.json 的 dsh.profile.bundles 列表。

安装后重启 DSH(关闭控制台窗口,重新启动),浏览器页面按 F5 刷新。

客户端模块(lib/client.js)的改动支持热更新:DSH 每 500ms 轮询一次模块文件,改了保存即可在当前窗口生效,无需重启。宿主端(lib/index.js)与包名/配置改动需要重启。

使用

1. 打开 DSH Web(默认 http://127.0.0.1:3080)
2. 把鼠标悬停到任意文件路径或网址上
3. 点击气泡里的按钮

卸载

dsh plugin --profile web remove path-click

开发与测试

语法检查
node --check lib/index.js
node --check lib/client.js

宿主逻辑单元测试(校验、信任围栏、路径规范化;不会真正打开任何窗口)
node test-host.mjs

诊断日志:%TEMP%\path-click.log(每次打开动作记录命令与结果,排查问题用)。

目录结构

path-click/
├── lib/
│ ├── index.js # 宿主端:/path-click 路由、信任围栏、打开逻辑、默认浏览器探测 │ └── client.js # 浏览器端:悬停检测与气泡工具条(dsh.client 模块) ├── cordis.patch.yml # bundle patch:注册 loader 行 ├── package.json # dsh.bundle + dsh.client 声明 ├── test-host.mjs # 宿主逻辑单元测试 └── README.md

兼容性

- 针对 DSH 0.1.0-rc.6 开发
- Windows 为主要目标平台;macOS / Linux 分支存在但未验证
- 依赖浏览器默认关联可读(reg.exe),否则回退到 cmd start / rundll32

License

MIT
预览分享卡片长什么样 ↓whw19761006/path-click
分享 · DeepSeek Harness Hub
whw19761006/path-click

悬停路径或网址,一键在资源管理器或浏览器中打开

这是你的仓库?认领条目

回到顶部