jinsiyu/dsh-auto-open-web1

dsh-auto-open-web

Open the DSH Web GUI in an app-style WebView2 window on profile start, with a settings card for browser paths

包名
dsh-auto-open-web
版本
0.1.3
许可证
MIT
最近更新
2026年8月17日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:jinsiyu/dsh-auto-open-web

配置

两种途径,等价:

  1. 设置页卡片(推荐):设置 → 插件配置 → 「自动打开网页」卡片。可编辑 appWindow(独立应用窗口)、windowKind(WebView2 宿主 / 浏览器应用窗口)、 browserPath(浏览器可执行文件,支持「浏览」原生对话框选择;位于窗口类型 下方,仅选择「浏览器应用窗口」时使能)、 exitOnWindowClose(窗口关闭时退出 DSH,默认关闭)。 保存后持久化到 settings 文档(命名空间 auto-open-web),首次保存后设置值优先于行配置。
  2. 行配置(cordis.patch.yml):作为启动种子,设置卡片保存前生效。
字段默认说明
appWindowtrue启动时自动打开独立应用窗口;false 时不自动打开任何窗口
windowKindwebview2webview2 = WebView2 宿主(独立进程、任务栏 DSH 图标、随 DSH 退出);browser = 浏览器 --app 专用实例。所选类型不可用时仅记录日志、不打开
exitOnWindowClosefalse(实验性)关闭自动打开的窗口时随之退出 DSH(默认关闭;仅 appWindow 开启时生效)。窗口进程正常退出(用户关闭窗口)时触发 process.exit(0);启动失败/崩溃/被强杀(非 0 退出码)不触发,避免误退出。设置卡片保存后当前会话即时生效(退出监听始终注册、行为由实时标志决定),无需重启 DSH
browserPath''手动指定的浏览器可执行文件路径(单条,如 C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe;仅浏览器模式使用),优先于内置候选 Edge → Chrome;路径不存在会跳过并告警。设置卡片上的「浏览」按钮弹出原生文件对话框:与官方工作区目录选择器同一机制(子进程 + koffi 驱动 IFileOpenDialog,对话框是子进程的第一个窗口,自动置顶;不使用 PowerShell)。「测试」按钮真实拉起一个 --app 专用测试实例(独立 user-data-dir `~/.dsh/
-test-profile`,不污染正式实例):确认浏览器主进程存活后报告成功,窗口展示数秒后自动结束该测试进程树(精确 pid,不动正式实例;Job Object 可用时测试实例也加入作业,DSH 退出时兜底);测试使用当前输入的路径(未保存也能测),失败会显示原因

browserPath 行配置示例

~/.dsh/profiles/web/cordis.patch.yml 中按 id 覆写该行的 config(覆写会整体替换 config,未列出的字段用默认值):

- id: auto-open-web
  config:
    browserPath: 'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe'

browserPath 行配置示例

~/.dsh/profiles/web/cordis.patch.yml 中按 id 覆写该行的 config(覆写会整体替换 config,未列出的字段用默认值):

- id: auto-open-web
  config:
    browserPath: 'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe'