penguin-oo/dsh-pathlink
Ctrl+click file paths and links in DeepSeek Harness chat: paths open their folder in the OS file manager, links open in a new browser tab.
이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.
dsh-pathlink
在 DeepSeek Harness 对话里,Ctrl+点击文件路径与链接。
自动识别聊天消息(助手回复、用户气泡、代码块、工具卡片)中的文件路径和 URL,用淡淡的虚线下划线标记,Ctrl+点击(macOS 为 ⌘)即可打开:
- 路径 → 打开所在文件夹——在系统文件管理器中打开该文件所在的文件夹并
选中它(Windows
explorer /select、macOSopen -R、Linux 用xdg-open打开父目录);如果路径本身是目录,则直接打开目录。 - 链接 → 浏览器新标签页打开——覆盖渲染器未自动转成链接的裸 URL (比如用户消息气泡里的);markdown 链接本身已在新标签页打开。
普通点击不触发任何行为,不会干扰选中、复制等操作。路径不存在时会弹出 toast 提示原因,而不是静默失败。


① 悬停路径显示 Ctrl+点击提示,点击后在文件夹中定位该文件 · ② 真实对话中被识别的路径(虚线下划线)。
安装
dsh plugin --profile web add dsh-pathlink
或从 GitHub 安装:
dsh plugin --profile web add github:penguin-oo/dsh-pathlink
安装后重启 Web 界面生效。仅支持 web 配置档(点击面是浏览器)。
使用
- 等消息渲染完成后,被识别的路径/链接会带虚线下划线。
- 按住 Ctrl(macOS 为 ⌘)点击。
- 路径 → 资源管理器/Finder 打开所在文件夹并选中该文件。
- 链接 → 浏览器新标签页打开。
- 相对路径先按该会话的工作目录解析,再按 Harness 进程目录解析; 路径不存在时弹出 toast 提示。
配置
| 键 | 默认值 | 含义 |
|---|---|---|
maxPathChars | 1024 | 接受的路径文本最大字符数 |
实现原理
- 客户端(
dsh.client,platformweb):MutationObserver 驱动的扫描器 监视已渲染的对话容器(data-chat-flow/data-conversation-scroll), 在文本节点中识别路径与 URL,包成惰性行内 span,并用一个捕获阶段委托的 click 监听统一处理。刻意不使用官方chatFileMentions缝,避免与内置 deliverables 提供方冲突,同时保证所有表面(正文、行内代码、代码块、 用户消息、工具卡片)行为一致。 - 宿主端(
pathlinkRemote 服务):只读的open方法——按所指向会话的 工作目录解析相对路径、校验存在性、拉起平台文件管理器。无持久状态,不 创建/恢复任何 Agent 或 Session。
开发
npm install
npm run build # 打包 src/client → lib/client.js
npm run smoke # Remote 标记 + Typert 清单校验
node scripts/e2e-synthetic.mjs # 浏览器 E2E,目标 http://127.0.0.1:3738
docs/demo.html 由 node scripts/build-demo.mjs 构建(复用生产识别器),
截图用 node scripts/e2e-screenshot.mjs 生成。
限制
- 仅 Web 界面(点击面是浏览器);宿主打开器覆盖 Windows / macOS / Linux。
- 路径识别基于启发式:中文目录名可正常保留;若路径末段是裸英文单词 (无扩展名)且紧接英文正文,偶有过匹配——存在性校验会把这类误判挡在 「路径不存在」toast 里,不会打开错误的东西。
许可证
MIT
致谢
为 DeepSeek Harness 插件生态而作——感谢 LINUX DO 社区的反馈与测试。
보안 및 설치 증거
이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.
공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.
저장소가 MIT 라이선스를 선언했습니다.
최근 180일 내 코드 업데이트가 있습니다.
재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.
검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.