dsh-file-links
开发工具 活跃维护

dsh-file-links

h1-count/dsh-file-links

支持将对话中 assistant 回复提及的工作区文件及工具引用,自动渲染为带类型图标的可点击 chips,点击即可调用内置预览打开文件,还原 Codex 风格交互体验。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
8 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:h1-count/dsh-file-links
git clone https://github.com/h1-count/dsh-file-links.git
git clone git@github.com:h1-count/dsh-file-links.git
README.md main

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 聊天视图自带 openFile(workspaces.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