Back to home@h1-count

dsh-file-links

No description

Stars
0
Language
JavaScript
Created
Aug 20, 2026
Updated
Aug 20, 2026
GitHub repo

Introduction

dsh-file-links

DSH(DeepSeek Harness)对话文件引用插件:把每条 assistant 回复里被工具引用或正文提及的工作区文件,渲染为 Codex 风格的可点击 chips(类型图标 + 文件名),点击即用 DSH 内置预览打开。

English: README.en.md

功能

  • 自动提取:从三类来源确定性累积每轮引用的文件路径——① 工具结果的 locations(diff/edit 卡片)② 工具调用参数里的路径 ③ 回复正文的行内 code 提及
  • Codex 风格 chips文件引用 标签 + 一行圆角小胶囊(按扩展名着色图标:TS/JS/MD/表格/图片…),hover 高亮,超出 8 个折叠为 +N
  • 点击即预览:复用 DSH 聊天视图自带 openFileworkspaces.openPath),零自建预览
  • 安全:渲染前经 Host 端 fs.stat 校验,只保留真实存在的普通文件(目录、噪声、不存在的路径自动过滤);绝对路径直开、相对路径按会话 cwd 解析,杜绝路径二次拼接
  • 主题适配:样式走 DSH 主题变量(--dsw-alias-*),浅色/深色主题均可读

安装

dsh plugin --profile web add github:<你的账号>/dsh-file-links

或本地源码:

git clone https://github.com/<你的账号>/dsh-file-links.git
# 将目录链接进 profile 的 node_modules,并在 profile 的 package.json 中:
# 1) dependencies 添加 "dsh-file-links": "file:<路径>"
# 2) dsh.profile.bundles 数组追加 "dsh-file-links"
# 然后重启 DSH

工作原理

  • Client 半:注册 conversation.chat.turnTail 链,通过 turn 级 ConversationNodeDefinition(kind file-links)累积路径,渲染 chips
  • Host 半:注册 /file-links/verify HTTP 路由,用 fs.stat 校验绝对路径存在性并只保留普通文件
  • 无业务写入、无敏感信息:插件只读取路径元数据,不读取文件内容、不上传任何数据

许可

MIT