Sunse666/dsh-vimina0

dsh-vimina

DeepSeek Harness Cordis plugin: drive Vimina Windows GUI automation via stdio (serve/call). Registers 26 vimina_* tools (scan/click/input/key/VMA scripts/screenshot/window/mouse).

包名
dsh-vimina
版本
0.1.0
许可证
MIT
最近更新
2026年8月16日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Sunse666/dsh-vimina

配置

字段默认说明
exePath自动解析Vimina 可执行文件路径
timeoutMs60000单次工具调用超时

exePath 解析优先级:

  1. 显式配置:DSH web 设置 → 插件 → vimina(推荐),或 profile 的 cordis.patch.yml--patch 补丁
  2. 环境变量 VIMINA_EXE
  3. 自动探测常见安装位置(%LOCALAPPDATA%\Programs\Vimina\Vimina.exe%ProgramFiles%\Vimina\Vimina.exe%ProgramFiles(x86)%\Vimina\Vimina.exe、当前目录)
  4. 回退:PATH 上的 Vimina.exe

只要 Vimina.exe 在以上任一位置,就无需手动填写路径;启动失败时工具会返回明确的配置指引。

AI 使用指南(注入 vimina_info)

插件把完整的使用 playbook 与常见错误规避表打包为 usageGuide 字段,随 vimina_info 工具返回注入给模型(源码见 src/usage.ts)。模型首次使用前应先调用 vimina_info 获取指南。指南要点:

  • 先扫描后操作:任何操作前先 vimina_scan,控件带标签(DJ/AK),点击用中心坐标。
  • 浏览器必须真实点击vimina_clickAt 缺省 backend(真实点击);网页禁用 backend:true。
  • 网页内容滚动后才暴露 UIA:先 vimina_scroll / vimina_key(PageDown|End) 再 scan。
  • 无需视觉模型:scan/getElement 直接返回文本控件名,不要依赖 OCR/截图读内容。
  • 标签临时性:clickLabel 依赖最近一次 scan 的映射,操作前重新扫描。
  • 分任务 playbook:浏览网页 / 桌面应用 / 后台点击 / VMA 脚本,详见 info 返回。

浏览器(Chromium)使用注意事项

真实使用中验证过的经验,模型在操作浏览器页面时请遵循:

  • 网页内容要滚动后才暴露给 UIA:打开页面后先 vimina_scan 只能看到浏览器框架控件; 滚动(vimina_scroll / vimina_key PageDown / End)后再 scan,才能看到网页控件。
  • 点击网页必须用真实点击vimina_clickAt 缺省(backend=false)就是真实点击并激活窗口, 浏览器场景下不要用 backend:true(FlaUI 后台点击对 Chromium 网页无效)。
  • vimina_getControlAt 对网页多返回外层容器:网页内层控件不暴露 UIA 时,坐标命中 的往往是页面容器而非精确控件,以 vimina_scan 为准。