🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

OnTheWay111/dsh-plugin-path-completion

DeepSeek 客户端兼容 / 相关生态spec-screened扫描:中风险在 GitHub 查看 ↗
未验证

deepseek harness path completiondeepseek harness @文件名自动补齐和发现

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/22 · 已提供中文文档

deepseek harness path completion(deepseek harness @文件名自动补齐和发现)

综合分
29.7
GitHub 分
29.7
用户评分
—
★ Stars
0
周下载量
—
兼容 / 相关生态插件(非 dsh 原生,请按其对应运行时安装)
git clone https://github.com/OnTheWay111/dsh-plugin-path-completion.git
信任档位:仅索引本站尚未对其实装验证,仅收录元数据
是什么
生态应用(桌面端 / Web 外壳,不以 dsh plugin add 安装)
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
活跃:最近一次提交在 3 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

数据截至 2026/9/25(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
@onthewayli/dsh-plugin-path-completion

为 DeepSeek Harness 的 Web 输入框提供 Codex 风格的 @路径 文件补全,以树外(out-of-tree)插件形式交付:在输入框输入 @ 并继续输入时,触发菜单会列出当前会话项目目录中匹配的文件与目录——上下键、Enter、Esc 由 Harness 自带的输入触发菜单处理选择——选中的路径以 @./相对路径(含空格时为 @"路径 带空格")落进草稿,发送时由 Harness 的提示词侧 @路径 展开读取成文件内容。

本插件把两侧放在同一个包里:

- 宿主半(lib/index.js)在 Harness webserver 上注册一个 HTTP 路由 /path-completion/search,返回有界、排序后的候选列表。它从不在网络上传文件内容——只传名称、类型与查询形态的路径。
- 浏览器半(lib/client.js)在共享的输入触发管道(ctx.inputTriggers)上注册一个 @ 来源,因此本包不含任何 UI 代码、React 或 CSS:候选由管道现有菜单渲染。

安装

从 registry 安装(已发布的包)
dsh plugin --profile web add -w @onthewayli/dsh-plugin-path-completion
从本仓库的 checkout 安装
dsh plugin --profile web add -w file:/path/to/dsh-plugin-path-completion
从 tarball 安装
npm pack && dsh plugin --profile web add -w ./onthewayli-dsh-plugin-path-completion-0.1.0.tgz
从 git 仓库安装(需要 profile 的 allowBuilds 授权;请钉住 commit)
dsh plugin --profile web add -w github:OnTheWay111/dsh-plugin-path-completion#

dsh plugin 会在 ~/.dsh/profiles/web 里转发给 pnpm;由于本包声明了 dsh.bundle,它会被自动追加进 profile 的 dsh.profile.bundles,其 cordis.patch.yml 则插入自己的加载器行。之后需要重启 Web 服务:客户端模块系统按包名缓存元数据且进程内不过期,因此插件集合的变化要在重启后才生效。

卸载:dsh plugin --profile web remove -w @onthewayli/dsh-plugin-path-completion。

配置

可在 ~/.dsh/profiles/web/cordis.patch.yml 里为该行添加可选配置:

- id: path-completion
config:
候选搜索上限(此处为默认值)。
maxResults: 50        # 一次响应携带的候选数
maxVisited: 20000     # 一次查询最多访问的目录项数
budgetMs: 400         # 一次查询遍历的墙钟预算
ignoreDirs: [node_modules, .git, dist, build, ...]  # 永不进入的目录
除回环外还允许调用该路由的裸 host[:port] 授权(局域网场景使用)。
trustedHosts: []

信任模型

只有以 GUI 自身来源抵达该路由的请求才会被应答:

- Host 必须是回环授权(127.0.0.1、localhost、[::1])或 trustedHosts 中的一项;
- 携带 Origin 的请求,其授权必须与 Host 一致;
- Sec-Fetch-Site: cross-site 一律拒绝。

因此,通过局域网地址访问浏览器时,在该授权被写入 trustedHosts 之前不会出现补全。该路由是只读的,只返回名称,绝不暴露文件内容。

兼容性

| 插件 | Harness | Node | 依赖面 |
|---|---|---|---|
| 0.1.0 | 0.1.0-rc.5 或 0.1.x 系列中更新的版本(源码 checkout 或已发布的 dsh 均可) | >= 22.19 | 宿主侧 ctx.webServer.register;浏览器侧 inputTriggers 客户端服务及其 PickOutcome.text 分支;以及 Harness 自带的提示词侧 @路径 展开,负责在发送时读取被选中的文件 |

已验证的安装形态:file: 目录、预构建 tarball、以及基于源码 checkout 的 Harness profile——三者启动后 boot manifest 中都带有本插件的客户端条目,其路由均可正常应答。

升级可能使其失效的耦合事实:

- Harness 的客户端与宿主同版本发布且没有 wire 协议版本号,因此 Harness 升级后可能需要重建本插件。两侧对它使用的接口做结构化类型声明(src/index.ts、src/client/index.ts),就是为了让不匹配在运行时以具名错误暴露,而不是在构建期对着未必安装的包报错。
- @deepseek-ai/cordis 是 peer 依赖(>=4.0.0  version),因为 registry 上已经出现了不少插件包。

npm 现在要求发布请求必须满足 2FA:要么带上验证器动态码(npm publish --otp= --access public),要么(脚本化/CI 发布)使用启用 "Bypass two-factor authentication" 的 granular access token(npmjs.com → Access Tokens → Generate New Token → Granular)。普通的经典 npm_ token 发布时会被 403 拒绝。

开发

需要 tsdown 与 typescript;可把 node_modules 指向某份 Harness checkout(或正常安装它们):
ln -s ../deepseek-harness/node_modules node_modules
#
被软链的 node_modules 携带的是按安装时架构下载的 rolldown 原生绑定(如 darwin-x64),
构建/打包须使用同架构且 >= 22.19 的 Node(tsdown 要求 ^22.18 || >=24);
本机对应的是 nvm 中 22.23.2 的 x64 构建:
nvm use 22.23.2 && node_modules/.bin/tsdown
node_modules/.bin/tsdown                                   # 构建 lib/index.js 与 lib/client.js
node --experimental-strip-types --test tests/plugin.test.ts # 自包含测试,无第三方依赖

dsh plugin add 会把本包的一份拷贝装进 profile(pnpm 对 file: 的处理方式),所以已安装的 profile 不会自动感知重建结果:构建后要重新执行一次 add,并重启服务(客户端包元数据按名称在进程内缓存)。

浏览器 bundle 必须保持 Harness 客户端插件的形态:CommonJS 主体包在 window.__ModuleLoader__.load({ id, factory }) 里,平台模块(React、cordis、共享 UI 包)留作外部依赖,其余全部内联——树外 bundle 不能以值的形式 import 另一个插件的客户端模块。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群