Skip to content

Repository files navigation

Vimina

GUI 文本化 · AI 友好的 Windows 桌面自动化工具

基于 FlaUI/UIA3,将界面控件文本化为结构化 JSON;支持标签点击、坐标/后台点击、输入、按键、 VMA 脚本、截图(全屏/区域)、HTTP API 与 stdio 服务(serve)。

安装

  1. GitHub Releases 下载最新版本
  2. 解压到任意目录
  3. 运行 Vimina.exe

系统要求

  • 操作系统:Windows 10 / 11
  • 运行时:
    • 小体积版(~3 MB):需安装 .NET 8 Desktop Runtime
    • 自包含版(~180 MB):无需任何依赖,解压即用

使用说明

标签点击(主界面)

快捷键 功能
Alt + F 显示/隐藏控件标签
Alt + R 刷新标签
Esc 清除所有标签
A-Z 输入标签字母点击控件
Backspace 删除已输入字符

操作流程:聚焦目标窗口 → 按 Alt+F 显示标签 → 输入标签上的字母(如 DJ)→ 自动点击对应控件。

命令行执行脚本

Vimina.exe run ./demo.vma   # 执行脚本
Vimina.exe ./demo.vma       # 可省略 run 关键字
Vimina.exe help             # 查看命令行用法

脚本执行结果与日志输出到控制台,执行完成后进程退出。

stdio 服务(供外部程序 / AI 调用)

Vimina.exe serve

行分隔 JSON-RPC:标准输入一行 {"id","method","params"} 请求 → 标准输出一行 {"id","ok","result","error"} 响应。完整方法列表由 info 方法返回。

HTTP API(仅监听本机 127.0.0.1)

# 扫描窗口
curl http://localhost:51401/api/scan
# 点击标签
curl -X POST http://localhost:51401/api/click -d '{"label":"DJ"}'
# 坐标点击
curl http://localhost:51401/api/click/500/300
# 后台点击(不移动鼠标)
curl "http://localhost:51401/api/click/500/300?useBackend=1"
# 截图:默认全屏;传 x/y/w/h 只截区域
curl "http://localhost:51401/api/screenshot?filename=shot.png&x=100&y=200&w=400&h=300"

配置文件(config.yaml)

程序根目录,首次运行自动生成;修改后重启生效。参考模板 config.yaml.example

backgroundColorDefault: "0xFFAE04"  # 标签默认底色
fontSize: 12
apiPort: 51401                      # API 端口(仅监听本机)
apiToken: ""                        # 留空 = 不鉴权

VMA 脚本

activate("记事本")
scan()
clickLabel("A")
input("Hello World")
keyPress("Ctrl+S")
screenshot("shot.png", 100, 200, 400, 300)   // 区域截图;不带 x/y/w/h 为全屏

与 AI 集成

import requests

# 扫描窗口,获取结构化数据
result = requests.get("http://localhost:51401/api/scanAll").json()
# AI 分析界面内容,决策后执行
requests.post("http://localhost:51401/api/click", json={"label": "A"})
requests.post("http://localhost:51401/api/input", json={"text": "Hello"})

接口返回全部为结构化 JSON,AI 无需视觉模型即可理解并操作界面。 DeepSeek Harness 插件见 dsh-vimina

License

MIT License

About

AI-friendly Windows GUI automation - Convert interface to text, no vision model needed

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages