dsh-at-file
FSMargoo/dsh-at-fileCodex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。
行选区:浏览工作区文件、带行号预览代码、可视化选中行范围,一键把 `@path:start-end` 引用写入输入框,agent 发送时自动收到所选行原文,精准修改指定行。
DeepSeek Harness Web GUI 插件:浏览当前工作区文件、带行号预览代码、可视化选中行范围,并把 @相对路径:start-end 引用写入输入框——agent 发送消息时会自动拿到所选行的原文,精准修改第 10–50 行这类区间。
@src/app.ts:10-50 追加到当前草稿;Host 端在发送前自动把该引用展开为 <workspace-selection> 注入,agent 无需自己读文件就能看到第 10–50 行原文@src/app.ts 写入草稿,让 agent 用 read 工具读整个文件(不把大文件内容灌进上下文)@src/app.ts:10-50、@src/app.ts:10(单行)或 @src/app.ts(整文件),无需打开面板dsh plugin --profile web add <本目录或 tarball 路径>
安装后重启 dsh web。
卸载:
dsh plugin --profile web remove dsh-line-select
| 层 | 说明 |
|---|---|
Host(lib/index.js) | lineSelect Typert Remote 服务(strict manifest):list 列目录、read 带行号读文件;agent/pre-step 扫描用户消息里的 @path:start-end,读取行范围并注入 <workspace-selection path="…" start-line="…" end-line="…"><line n="…">…</line></workspace-selection> |
Client(lib/client.js) | conversation.input.dock 条目:面板 UI + 选区交互;通过 inputActions.setDraft 写入草稿(官方公开 seam) |
confine() 强制限制在会话 cwd 内(拒绝绝对路径、盘符与 .. 穿越)@deepseek-ai/dsh-typert-protocol 与 @deepseek-ai/dsh-llm peer 依赖,由 DSH profile 提供)MIT