Professional Windows-only visual automation toolkit with 11 modules for screenshot, OCR, template matching, clicks, input, environment setup, and looping tasks.
这是一个完整的 基于图像识别+OCR 的电脑自动化技能框架,包含多个可独立调用的最小执行单元,也可以自由组合成复杂的自动化任务。本技能包是合集,可以根据需求拆分使用单个单元。
computer_skill/
├─ templates/ # 永久模板库(不删除)
│ ├─ desktop/ # 桌面图标模板
│ ├─ taskbar/ # 任务栏图标模板
│ ├─ system/ # 系统通用按钮模板
│ └─ wechat/ # 微信示例模板(以后可新增其他软件)
└─ temp/ # 临时截图(用完立即删除)
call 单元名 参数 格式即可编写新技能| 单元名称 | 固定调用名 | 功能 | 单独调用方式 |
|---|---|---|---|
| 初始化环境 | init_env | 创建目录结构、清空 temp、检查模板目录 | call init_env |
| 全屏截图 | screenshot_full | 截取整个屏幕保存为 temp/screen.png | call screenshot_full |
| 检查截图有效性 | check_screenshot_valid | 检查是否黑屏/冻结,无效则唤醒界面 | call check_screenshot_valid |
| 唤醒界面 | wake_window | 解决后台不渲染、截图黑屏问题 | call wake_window |
| OCR识别 | ocr_recognize | 识别屏幕所有文字与对应坐标 | call ocr_recognize |
| 模板匹配 | template_match | 用模板图匹配定位图标/按钮 | call template_match 分类 模板名称 |
| 统一定位 | locate_target | OCR优先,找不到再用模板匹配,返回目标坐标 | call locate_target 目标文字 或 分类+模板名 |
| 鼠标点击 | mouse_click | 移动到指定坐标执行点击 | call mouse_click X Y [点击类型,默认单击] |
| 键盘输入 | keyboard_input | 定位输入框后输入文字 | call keyboard_input 目标坐标/描述 输入内容 |
| 清理临时文件 | clean_temp | 删除临时截图,释放空间 | call clean_temp |
| 循环重启 | loop_restart | 等待2秒后回到截图重新开始 | call loop_restart |
格式:
call [单元调用名] [参数...]
示例:
call init_envcall template_match desktop wechatcall mouse_click 100 200 双击按执行顺序,每行写一个调用指令,即可组合成自定义新任务:
格式示例(打开微信):
# 任务名称:打开微信
call init_env
call screenshot_full
call check_screenshot_valid
call locate_target 微信 desktop wechat
call mouse_click {{定位结果X}} {{定位结果Y}} 双击
call clean_temp
组合步骤:
call 单元名 参数 指令{{定位结果X}} {{定位结果Y}} 承接上一个单元的输出call loop_restartcall 技能名称 调用# 通用主流程:vision_auto_main
call init_env
call screenshot_full
call check_screenshot_valid
call ocr_recognize
# 如果需要模板匹配,加这行:call template_match 分类 名称
call locate_target 目标文字
call mouse_click {{X}} {{Y}}
# 如果需要输入文字,替换上面一行为:call keyboard_input {{X}} {{Y}} 输入内容
call clean_temp
# 需要循环就加:call loop_restart
vision_auto_main)执行顺序(从上到下依次执行):
init_env → 初始化环境(创建目录+清空temp+检查模板目录)screenshot_full → 截取全屏保存为temp/screen.pngcheck_screenshot_valid → 检查截图是否有效
├─ 有效 → 继续下一步
└─ 无效 → 调用 wake_window 后回到 step 2 重试ocr_recognize → OCR识别屏幕所有文字与坐标template_match → 如果需要,进行模板图匹配定位locate_target → 统一定位目标(OCR优先,模板补充)mouse_click → 点击目标坐标
└─ 需要文字输入 → keyboard_input → 输入目标文字clean_temp → 删除临时截图,不保留任何临时文件loop_restart(可选) → 如果需要循环监控/重复任务,执行循环重启
└─ 不需要循环 → 流程结束ZIP package — ready to use