Bundle
dsh-file-links
DSH (DeepSeek Harness) plugin: Codex-style clickable file-reference chips in the conversation. Workspace files referenced by tools or mentioned in a reply render as icon chips under each assistant turn; click to open in the built-in preview.
- Source
- h1-count
- License
- MIT
- Updated
- Updated 2 days ago
Readme
# dsh-file-links DSH(DeepSeek Harness)对话文件引用插件:把每条 assistant 回复里被工具引用或正文提及的工作区文件,渲染为 **Codex 风格的可点击 chips**(类型图标 + 文件名),点击即用 DSH 内置预览打开。 > English: [README.en.md](./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-*`),浅色/深色主题均可读 ## 安装 ```bash dsh plugin --profile web add github:<你的账号>/dsh-file-links ``` 或本地源码: ```bash 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
Install
dsh plugin --profile web add github:h1-count/dsh-file-links
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-file-links from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.