dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
Ycet/dsh-my-plugins
DSH 设置-插件页新增「我的插件」标签:双列卡片展示用户自己安装的插件(配置状态、Cordis 状态、插件介绍)。Add a "My Plugins" tab to the DSH settings plugins page, listing user-installed plugins in two-column cards with configuration status, Cordis status and description.
PROJECT TOPICS
PROJECT README
DeepSeek Harness(DSH)网页界面插件:在设置 → 插件页新增「我的插件」标签,以双列卡片形式集中展示你自己安装的插件,无需在加载器条目列表里逐一辨认。
每个插件卡片点击后展开详情:
package.json 的 description为什么有用:DSH 默认的「插件」页展示的是 Loader 条目(含系统内置条目与伪模块),分不清哪些是自己装的。本插件只筛选用户安装的插件,并直接给出挂载健康状态。

「我的插件」标签:搜索框 + 双列卡片。点击卡片展开配置状态、Cordis 状态与插件介绍。
package.json 的 descriptionPOST /my-plugins/api/list 调用宿主半部,带同源与回环信任围栏需要 DSH CLI 与 pnpm(dsh plugin 内部转发到 pnpm)。
# 从 GitHub 安装:
dsh plugin --profile web add github:Ycet/dsh-my-plugins
# 本地目录安装(开发):
dsh plugin --profile web add dsh-my-plugins@link:/path/to/dsh-my-plugins
包声明了 dsh.bundle 补丁层(见 package.json 与 cordis.patch.yml),dsh plugin 会自动把加载项合入 profile 的 bundle 层,无需手动编辑 cordis.patch.yml。手动方式:
# ~/.dsh/profiles/<profile>/cordis.patch.yml
- insert:
- id: my-plugins
name: dsh-my-plugins
dsh webflowchart LR
A[浏览器半部 lib/client.js<br/>「我的插件」页签] -->|POST /my-plugins/api/list| B[宿主半部 lib/index.js<br/>路由 + 信任围栏]
B --> C[枚举 Loader 条目]
C --> D[过滤用户安装的插件]
D --> E[读取插件包 description]
E -->|JSON 响应| A
/my-plugins/api 前缀路由(list 方法),枚举 Loader 条目 → 按「伪模块排除 / 安装闭包判断 / 补丁层 insert 匹配」三条规则筛选用户插件 → 读取各插件包 package.json 的 description 返回。settings.plugins.tab 槽位注入「我的插件」页签,双列卡片渲染 + 展开详情 + 搜索过滤。webRuntime.trustedHosts 白名单内,且拒绝 cross-site 请求与跨源 Origin。本插件无任何配置项。安装后即生效。
欢迎通过以下方式参与:
问题或建议也可直接开 Issue 讨论。
dsh plugin CLICLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。