ImgScript 标志ImgScript桌面自动化
MANUAL · 2.0.8 / 2.0.9

ImgScript 使用手册

依据 2.0.8 / 2.0.9 工作区的实际界面与帮助文档整理,覆盖指令、变量、脚本结构、配置、计划任务、日志与扩展能力。目标很直接:交给 AI,它也能照着把脚本跑起来。

下载软件获取激活码
01

这是什么软件:能力、原理与边界

ImgScript 是一款 Windows 桌面自动化工具。它不调用网页接口、不改数据库,而是像人一样操作屏幕:按图像或文字找到目标,然后点击、输入、滚动、拖拽,把重复劳动固化成一条可以反复执行的脚本。核心链路只有三步——截图 → 匹配 → 动作。

它擅长它不擅长
有固定界面、重复操作多的软件(ERP、OA、报表、老式客户端)
批量录入:Excel 数据逐条填进网页表单
跨软件流程:A 软件导出 → B 软件导入 → 截图留证
需要在无人值守时定时跑的任务
没有界面、只有接口的系统对接(请直接用 API)
需要理解语义、判断业务对错的场景(需外接 AI 或人工复核)
验证码、加密狗、强风控页面
毫秒级高频操作或竞技类游戏对抗

一句话判断标准:人能用鼠标键盘一步步做完、且画面每次长得差不多的事,它就能做;需要"看懂意思再决定"的事,它只能借助 OCR 或 AI 命令辅助判断。

02

安装、启动与授权

2.1下载与安装:它是便携软件

ImgScript 是绿色便携版:解压到任意目录即可运行,不写注册表安装项,也不在系统目录留文件。所有用户数据都在 ImgScript.exe 同级的 data 目录里,包括脚本、截图资源、计划任务、日志、设置、授权记录和插件。

  • 不要把它放进 Program Files 或需要管理员权限才能写的目录,否则数据无法落盘。
  • 备份或换机时,先停止所有任务并正常退出,再整体复制软件文件夹,不要只拷 exe。
  • 升级时把新版本解压到新的空目录,用"设置 → 数据管理 → 迁移旧版数据"指向旧目录,不要用新文件覆盖唯一的旧目录。

2.2第一次启动看到什么

首次打开会看到"我的脚本"列表,默认分组里有 4 个示例脚本:新手入门、变量与表达式、定时循环问候、条件判断。若检测到旧版数据,启动时会先问"是否迁移旧版 ImgScript 数据";不确定就点"暂不迁移,直接使用",之后仍可在"设置 → 数据管理"手动迁移。示例不是摆设,建议先复制一份再改,原稿留着对照。

我的脚本列表(v2.0.9:顶部八个入口与默认示例)
我的脚本列表(v2.0.9:顶部八个入口与默认示例)

找不到示例时,到"帮助"页右上角点"恢复示例脚本",它只补回缺失的同名示例,不覆盖你已有的脚本。

2.3免费版与 VIP 版差在哪

两个版本功能完全一致,唯一区别是脚本运行时长:免费版每天累计 30 分钟(顶部会显示"今日剩余 30:00"),VIP 在授权有效期内不限时长。额度按设备计算,复制目录、重新解压都不会重置;额度用完后,当前步骤会在安全边界结束,当天不再启动新任务。

状态表现
免费版顶部显示当天剩余时长;所有指令、计划任务、插件、AI 命令均可用
VIP 版顶部只显示"VIP版",不扣免费额度;到期后无需重启,自动切回免费规则

2.4激活:在线码与离线码

进入"设置 → 授权管理",页面上有三个关键元素:当前机器码、激活码输入框、激活按钮。

  1. 在线激活(ISR2):把以 ISR2. 开头的兑换码整段粘贴进输入框,点"激活",保持联网,等待返回结果。成功后核对授权状态、卡型、授权 ID 和到期时间——只看到输入框有文字不算激活。
  2. 离线激活(ISO1):点"复制机器码"发给授权方,拿到与本机匹配的 ISO1. 码后粘贴激活。离线码绑机器,换电脑必须重新签发。
  3. 换机:在旧电脑点"解绑当前设备"并确认,旧机立即回到免费版;新机用同一张 ISR2 码重新激活即可。旧机已损坏时联系授权方处理。
设置中的授权管理入口(未激活状态)
设置中的授权管理入口(未激活状态)
03

界面导览:八个页面各自干什么

页面用途
我的脚本脚本列表、分组、新建/复制/删除、勾选多个脚本顺序批量运行
脚本编辑工作台左侧指令面板,中间步骤列表,右侧流程视图;双击步骤进入独立参数窗口
运行监控任务树、当前执行目标的实时预览、资源占用、受控子进程
计划任务按 cron 定时触发脚本,支持预设模板、排班日历、手动触发
执行日志每次运行的结果、状态、触发来源,可打开 HTML/TXT 报告
插件中心安装、启用、停用第三方指令包,插件参数以插件声明为准
设置通用、主题、运行安全、AI 模型、授权、主页签控制、数据管理
帮助内置图文教程、搜索、恢复示例脚本、版本与更新提示

当前 2.0.9 顶部实际是八个入口:我的脚本、手机控制、运行监控、计划任务、执行日志、插件中心、帮助、设置。脚本编辑工作台从"我的脚本"里双击脚本进入,不占顶部页签。

编辑工作台:左侧指令面板、中间步骤、右侧流程
编辑工作台:左侧指令面板、中间步骤、右侧流程

3.1编辑器里三个高频操作

  • 添加步骤:左侧指令面板按分类展开,双击或拖入步骤列表;指令前的星标可加入"我的收藏",常用指令置顶。
  • 配置参数:双击某个步骤,弹出独立的指令编辑窗口;保存参数与保存脚本是两次保存,改完参数别忘了再保存整个脚本。
  • 调整顺序与开关:步骤可拖拽排序,每步有启用/禁用开关;禁用的步骤不执行,禁用"循环开始"会跳过整个循环体。
参数保存与脚本保存是两步,容易漏
参数保存与脚本保存是两步,容易漏
04

核心概念:脚本、步骤、执行目标、资源

4.1脚本就是一列步骤

脚本 = 从第一步开始顺序执行的步骤列表。每个步骤包含三样东西:类型(做什么)、参数(怎么做)、错误处理(失败了怎么办)。流程控制类步骤(循环、条件、跳转)会改变执行顺序,其余步骤都是"做完就下一步"。

4.2执行目标:脚本在"谁"身上操作

每个步骤都带一个执行目标,决定截图、找图、点击发生在哪里。新脚本默认目标是全桌面,覆盖所有显示器,用屏幕绝对坐标(副屏可能是负坐标)。需要后台执行、限定截图范围或用窗口客户区坐标时,才去添加 A、B 这样的命名窗口目标。

  • 全桌面:默认,最稳,适合大多数前台操作。
  • 窗口目标:可用前台、后台、游戏模式。后台能否生效取决于目标程序,不保证所有软件支持;游戏模式需前台且不支持汉字输入。
  • Android 目标:先在"手机控制"页连接设备,用手机逻辑坐标;旋转或改分辨率后要重新核对坐标。

关键规则:每个步骤使用自己的目标,不继承上一步。目标解析失败时(窗口关了、身份变了、权限不足),脚本会在动手前直接失败,不会偷偷改用全桌面继续操作。

执行目标管理:全桌面与添加窗口目标
执行目标管理:全桌面与添加窗口目标

4.3图像资源库:模板不是一次性截图

截图框选出来的小图会进入全局图像资源库,可以被多个脚本、多个步骤复用,也能在资源库里改名、替换、查看引用关系。删除脚本不会连带删掉被其他脚本引用的资源;资源可以被放进回收站再恢复。

4.4四条踩坑率最高的铁律

  1. 坐标属于目标:窗口移动、分辨率变化、手机旋转后,旧坐标可能点到别处,必须重新核对。
  2. 等待要配超时:所有等待图像、OCR 找字都要设超时并配错误分支,超时不是"还没好",而是"这次失败了"。
  3. 成功状态不等于业务成功:OCR 可能返回 found=false 仍算执行成功,HTTP 200 也可能业务失败,必须用条件显式判断。
  4. 先看第一个失败步骤:日志里从下往上找没用,从上往下找第一个报错的步骤,问题基本都在那。
05

指令总览:按分类选对步骤

编辑器左侧指令面板按分类组织,支持搜索与收藏。下表是选型地图:先想"我要做什么动作",再落到具体指令;括号里是脚本 JSON 中的命令标识,写脚本或让 AI 生成时用得到。

分类代表指令什么时候用
图像操作单图像点击 image_click、多图像依次点击 multi_image_click、图像位置查找、等待图像出现/消失界面元素位置会变、但长得一样:按钮、图标、单元格
颜色检测区域找色点击 color_click、颜色占比 color_measure目标没有稳定形状,但有稳定颜色:状态灯、高亮行
鼠标坐标点击、随机范围点击、拖拽、滚轮、长按位置固定,或需要"在某个区域里随机点"降低机械感
键盘与文本文本输入 text_input、按键、组合键填表单、搜索框、快捷键操作
变量修改变量 variable_modify、打印变量记录结果、拼接字符串、累加计数
流程控制循环、条件判断 condition、跳转 jump、等待批量处理、分支处理、失败重试
数据与接口JSON 处理 json_process、HTTP 请求 http_request、剪切板读写取接口数据、解析返回、把结果写回系统
文件与表格文本读取/写入、文件夹读取、CSV、Excel 读取/写入批量数据源、结果落盘、报表生成
识别与智能OCR 找字点击、OCR 条件、OCR 提取、AI 命令 ai_command文字位置不固定、界面没图可截、需要"看懂一点"
通知与扩展弹窗提示、Win 消息、子流程调用 call_script、插件指令运行反馈、流程复用、第三方能力
06

重点指令详解

6.1图像点击:最常用也最容易调坏

单图像点击的完整逻辑是:截取当前执行目标的画面 → 在查找区域内做模板匹配 → 过滤低分候选 → 去重 → 按策略点击。参数面板里真正要动的只有五个:

参数怎么设
图像模板框选要点的元素,边缘留 2~4 像素背景,不要框进会变的文字或数字
匹配阈值默认 0.80。先保证模板唯一,再从 0.80 微调到 0.75 左右;低于 0.70 误点概率明显上升
查找区域不填是整屏;能缩到列表区、弹窗区就缩,既快又准
点击策略首个匹配 / 依次点击全部匹配;配合重复次数与间隔做批量点选
结果变量勾选后写入实际点击坐标数组(point_array),后续可用来回点、校验或记录
单图像点击的参数窗口:模板、阈值、区域、点击策略
单图像点击的参数窗口:模板、阈值、区域、点击策略

抗误匹配有一个内置机制:默认在最近 5 帧里至少 3 次命中相近位置才确认点击。要求更快可在高级里把确认窗口和命中次数调小,但抗误匹配能力会下降。

多图像依次点击用于"一张图里多个同类目标要按顺序点完"(如列表勾选框):按模板顺序依次点击,每个模板可单独设区域与偏移。

多图像点击:多个模板按顺序执行
多图像点击:多个模板按顺序执行

等待图像出现 / 等待图像消失是"卡住不动"的主要来源:务必设超时(默认 10 秒),并把超时接到失败分支或重试,而不是让脚本无限等。

6.2坐标点击与鼠标动作

坐标点击适合位置固定的控件,参数是 X、Y、按键、单击/双击/长按。坐标是相对当前执行目标的:全桌面目标用屏幕坐标,窗口目标用窗口客户区坐标,Android 用手机逻辑坐标。改了窗口位置、换了分辨率,坐标就要重设。

  • 屏幕取点:用取点工具在屏幕上点一下,自动回填坐标,比手抄像素靠谱。
  • 随机范围点击:给一个矩形区域,每次在区域内重新取点,用于降低固定落点的机械特征。
  • 拖拽:起点、终点、按住时长、步进;部分程序忽略模拟拖拽,可改用键盘导航。

6.3文本输入与键盘

文本输入只负责"写字":它把内容送进已经获得焦点的输入框,不会自己点一下。标准做法是先用坐标点击或图像点击把焦点落进输入框,再执行文本输入。内容里可以混写变量,例如 订单号:${order_no}。中文与长文本由输入后端处理,快但不等于逐字键入;个别软件需要用打字机效果或按键模式才兼容。

文本输入:目标控件、输入内容与提交方式
文本输入:目标控件、输入内容与提交方式
  • 填表单时推荐"点击 → 全选清空 → 输入 → Tab/Enter 提交"四步固定套路,比逐字段盲输稳。
  • 快捷键用组合键指令,例如 ctrl+s 保存、ctrl+a 全选。
  • 输入前务必确认焦点在正确控件:可以用"等待图像出现"确认光标所在输入框已出现。

6.4循环:三种来源

循环开始与循环结束必须成对配置,中间是循环体。次数来源包括:固定次数、数字变量、图像/变量条件、坐标数组、通用数组和无限循环。数组模式每个元素一轮;无限循环必须提前设好停止方式(条件 + 终止或跳转),否则只能手动停。

固定次数循环:次数与循环体
固定次数循环:次数与循环体

循环体内可用三个只读变量:${local.loop_1.index}(从 0 开始)、${local.loop_1.item}(当前元素)、${local.loop_1.total}(总数)。嵌套循环用层级编号,例如 ${local.loop_2_1.item}。编号由系统按步骤身份自动维护,拖动步骤不会错位。

数组循环进入循环体前会深复制最多 10000 项,源数组之后被修改不会影响本轮;这是"批量处理 CSV/Excel 行"的标准做法。

6.5条件判断:看清"判断什么"

条件支持三类判断:图像是否存在、颜色是否匹配、变量比较,并可选择"全部满足"或"任一满足"。OCR 找字自带条件判断与等待,通常先用它把结果写成 found 变量,再用变量比较做分支。条件成立走"满足"分支,否则走"否则"分支,最后用"判断结束"收口;分支可嵌套但必须层层闭合。

条件判断:变量比较分支结构
条件判断:变量比较分支结构

等待型条件(图像/颜色/OCR)会先立即判一帧,不满足则按检测间隔重复采集,直到满足或超时;超时为 0 表示只判断一次。这是"等页面加载完再动手"的正确写法,比固定等待秒数可靠。

跳转把执行位置移到指定步骤,或跳到脚本末尾 @end;配合条件做"失败就跳到清理段"。错误处理里的"忽略异常并继续 + 错误后跳转"默认关闭,开启时必须指向一个有效且启用的跳入点。

6.6OCR:文字不固定时的兜底

内置 RapidOCR 本地识别,不联网、不消耗 AI 额度。三类用法:找字点击(识别到文字后点它的中心)、找字条件(判断某文字在不在)、文字提取(把识别结果写入变量)。

OCR 指令的区域与识别参数
OCR 指令的区域与识别参数
  • 区域要么留空表示整张来源图,要么给六个严格整数:x, y, width, height, source_width, source_height;坐标相对来源图左上角,窗口目标是客户区。
  • 来源可以是当前执行目标截图、指定图片文件、截图资源或最近一次运行截图。
  • 识别不准时优先放大区域、提高对比度、缩小到文字所在行,而不是反复改阈值。

6.7HTTP 与 JSON:和业务系统对接

HTTP 请求支持 GET/POST/PUT/PATCH/DELETE/HEAD,只允许 HTTP/HTTPS;URL、查询参数、请求头、Body 都能引用变量。JSON Body 里的整值变量会保留原类型(数字还是数字,布尔还是布尔),不会先转成字符串。

  • 默认只接受 2xx;可配置期望状态码。只有 Content-Type 为 JSON 时才自动解析响应。
  • 默认拒绝本机回环、内网和云元数据地址;确有内网需求时才开"允许内网",开启后仍做协议、端口、重定向逐跳检查。
  • 响应可写入原始 Body、解析后的 JSON、状态码、脱敏响应头四类变量,都是可选项,不选就不写。

JSON 处理不依赖插件,支持解析、序列化、读取、设置、删除、存在判断、数组长度、成员读取、追加。路径只支持安全形式:$、$.name、$.items[0]、$["user.name"],不执行代码或过滤表达式。设置/删除/追加默认复制后再改,只有明确勾选"覆盖输入变量"才改原变量。

6.8文件、CSV 与 Excel

文件写入是原子操作:先在内存生成完整内容,写同目录临时文件,再一次性替换,可选保留一代 .bak。任一行失败就整体不落盘,不会留下写坏一半的文件。

Excel 只支持 .xlsx,通过独立配置窗口选工作表、区域、字段映射、筛选与公式模式。写入同样"整步校验后一次替换",所以可以放心让它跑批量回写。

Excel 读取/写入配置:工作表、区域与字段映射
Excel 读取/写入配置:工作表、区域与字段映射
  • 结构化 CSV/Excel 行会带 _source 记录来源行号,按来源行回写时还会复核关键字段,防止外部插行导致写错行。
  • 文本读取支持 UTF-8、UTF-8 BOM、GB18030,编码必须显式选择;选错会出现整片乱码而不是报错。
  • 相对路径按脚本文件所在目录解析,不支持路径字符串拼接;要拼路径请先在变量里拼好。

6.9扩展操作与通用参数

除了界面操作,还有一组"外围动作":打开文件、打开网址、执行命令、结束进程、调用脚本。它们让脚本能串起多个软件,但副作用也最大。

  • 打开文件 / 打开网址:交给系统关联程序或浏览器,打开不等于加载完成,后面必须接就绪检测(等待图像或条件)。
  • 执行命令:启动你配置的程序或命令行,运行前核对程序路径、参数、工作目录和等待方式;不要执行来源不明的命令。
  • 结束进程:可能丢失未保存内容,先在测试程序上验证再用于正式流程。
  • 调用脚本:把可复用流程作为子流程执行,检查调用关系、变量与执行目标;子流程的运行状态不自动等同于调用方。

每条指令的参数都分"常规"和"高级"两页:常规放基础参数,高级放阈值、区域、超时、点击策略等。"执行后延时"只是当前动作后的停顿,与找图/等待的超时不是一回事;错误处理可选终止、忽略异常并继续、重试(含次数与间隔),重试点击或写文件可能产生重复结果,不能当万能修复。另外要区分两个按钮:测试会真实执行当前指令(可能点击、输入、写文件),预测结果只预览预计位置或判断,不推进流程。

6.10AI 命令:只观察,不动手

AI 命令对免费版和 VIP 都开放,但它只负责观察、提取、判断和定位,不会直接点击、输入、打开网址或执行命令。能靠找图、找色、本地 OCR 确定性完成的,优先用确定性指令。

六类用法:画面判断、元素定位、结构化提取、图像分类、操作结果复核、异常分析。默认截图来源是当前执行目标,也可选全桌面、指定区域、图片文件、截图资源或最近一次运行截图。元素定位返回的坐标会被换算成本地坐标数组,再交给普通点击步骤执行。

  • 需要自备 OpenAI 兼容服务:在"设置 → AI 模型"填 Base URL、模型、超时与单价,API Key 保存在本机加密保险库,不进脚本、不进日志。
  • 首次向非本机服务发送截图前必须明确授权;本机服务(localhost)不需要。
  • 可设总超时、重试、最低置信度、失败策略,以及单次费用和每次运行的调用/费用上限。
07

变量体系:脚本的"记忆"

变量解决三个问题:把界面上读到的数据存下来、把多个值拼成一句话、把结果带到下一步或下一个脚本。变量管理器按页面分成四类,引用写法各不相同,混用是最常见的报错来源。

类别引用写法说明
脚本变量${name}在当前脚本的变量管理器里定义,有类型、默认值、可选约束;每次运行从默认值开始
系统变量${system.date}、${system.time}、${system.hour}、${system.now}只读,运行时自动更新,不能写进变量定义
全局变量${global.name}跨脚本共享,独立存储;并发脚本不要同时写同名全局变量
步骤运行变量${local.step.*}、${local.loop_1.item}、${local.http_4.status}只读,来自前面已执行步骤的输出或当前循环的运行值,编号按步骤身份自动维护
变量管理器:脚本变量、全局变量、系统变量与步骤输出
变量管理器:脚本变量、全局变量、系统变量与步骤输出

7.1九种变量类型

类型用途与注意
string文本;拼路径、拼消息、存订单号
number数字;金额、数量、计数,参与比较与运算
bool真/假;条件分支开关
point单个坐标点
point_array坐标数组;图像点击的结果默认写这里
json_object对象;接口返回、结构化结果,默认值写 {} 或合法对象字符串
json_array数组;批量数据,默认值写 [] 或合法数组字符串
file_path文件路径;可加扩展名约束,只能固定值或完整的变量引用
folder_path文件夹路径;供文件夹读取类指令使用

7.2表达式:拼接与取数

表达式里可以混写变量、字面量和函数。字符串必须用引号包起来,变量不加引号。示例:

concat(${greeting_prefix}, ",现在是 ", ${system.date}, " ", ${system.time})

常用函数包括 concat()(拼接)、number()(转数字)等,完整清单在变量管理器的"系统函数"页。布尔字面量支持 true/false,写成字符串 "true" 则按文本处理。

7.3变量使用的六个规则

  1. 先定义再引用:脚本变量必须在变量管理器里定义,引用不存在的变量会直接报错。
  2. 完整引用优先:修改变量时,目标名必须写完整引用,例如 ${count},不能写裸名 count。
  3. 类型要对上:把 point_array 写进 string 变量会失败;理由、置信度、用量这类结果分别要求 string、number、json_object。
  4. 运行即重置:脚本变量每次运行都从默认值开始,跨运行保留数据请写文件或写全局变量。
  5. 编号别手写:循环/条件/HTTP/AI 的 step 编号由系统按稳定 ID 维护,删除来源步骤后引用会变成 missing_*,此时要重新选变量而不是猜编号。
  6. 敏感数据打标:把密码、令牌类变量标记为敏感,日志与 MCP 返回会自动脱敏,但脚本本身的文件、HTTP 指令仍有真实副作用。
08

脚本的 JSON 结构:给 AI 看的说明书

脚本在磁盘上是一个 JSON 对象,这是让 AI 生成或修改脚本时唯一需要理解的结构。字段含义如下(具体版本号以软件导出的文件为准):

字段说明
name脚本名,必填,同名会冲突
steps步骤数组,顺序即执行顺序;每步含 id、command_id、params、target_ref、enabled
variable_definitions变量定义表:类型、默认值、描述、是否敏感、可选约束
execution_targets执行目标表:内置 desktop 不可删除,窗口目标各自有 id
error_action / retry_count / retry_interval_seconds步骤级错误策略:终止、忽略继续、重试次数与间隔
target_ref该步骤用哪个执行目标,必须指向存在的目标,不能悬空
{  "name": "登录并抓取待办数量",  "steps": [    { "id": "step_1", "command_id": "wait", "params": { "seconds": 0.5 }, "target_ref": "desktop", "enabled": true },    { "id": "step_2", "command_id": "image_click", "params": { "image_resource_id": "res_xxx", "threshold": 0.8 }, "target_ref": "desktop", "enabled": true },    { "id": "step_3", "command_id": "text_input", "params": { "text": "${account}" }, "target_ref": "desktop", "enabled": true }  ],  "variable_definitions": {    "account": { "type": "string", "default": "demo", "description": "登录账号", "sensitive": false }  },  "execution_targets": { "default_target_ref": "desktop", "desktop": { "scope": "all_monitors" }, "windows": [] }}

上面只是结构示意,不要照抄参数名:每条指令的真实参数以"指令面板 → 参数窗口"和 MCP 的 describe_command 返回为准。凭记忆写参数是 AI 生成脚本失败的第一原因。

8.1写脚本时最容易犯的四个错

  • 循环没闭合:循环开始与循环结束必须成对,条件与判断结束同理;结构错误在保存时就会被拦下。
  • 变量没定义:JSON 里出现的每个 ${x} 都要在 variable_definitions 里,系统变量除外。
  • 目标悬空:target_ref 指向了不存在的窗口 id,加载时直接报错。
  • 把编号写死:${local.loop_2.item} 的编号由系统维护,手写容易指向错误步骤。
09

运行、日志与监控

运行有三个入口:脚本列表右键运行、编辑器里的运行按钮、计划任务触发。运行中的脚本会在底部实时日志里滚动输出每一步。

执行日志(v2.0.9):日志来源、筛选、统计与导出
执行日志(v2.0.9):日志来源、筛选、统计与导出

9.1执行日志怎么读

  • 表格一行一次运行:脚本名、时间、状态(成功/失败/用户停止)、触发来源(手动/计划任务/快捷键)、日志类型。
  • HTML 报告看步骤详情和已开启的截图记录,TXT 更轻量;截图是否存在取决于当次配置和保留策略。
  • 筛选支持时间范围、脚本名搜索;可导出 CSV,但 CSV 不是完整日志与截图的打包。
  • 日志来源可切"脚本执行日志 / MCP 操作日志",还能按时间范围、脚本名筛选并查看统计报告;日志会按保留天数与数量自动清理,长期留证请在"日志保存设置"里调整,或把关键结果自己写文件。

排查顺序永远是:找第一个失败的步骤 → 读它的失败原因 → 看当时的截图 → 再改参数。不要从最后一条往前猜。

9.2运行监控与安全阀

运行监控展示任务树(手动、批量、计划、子脚本的父子关系)、当前执行目标的实时预览、资源占用和受控子进程。预览只是看,不能接管鼠标键盘。

运行监控(v2.0.9):任务树、实时预览与资源概览
运行监控(v2.0.9):任务树、实时预览与资源概览
保护机制默认与行为
内存软限制默认 1024 MB(配置 0 也等于 1024,不是关闭);达到后不再启动新任务,队列显示"等待:内存保护"
内存恢复比例默认 0.80;回落到位后队列仍等待,需在运行监控里手动确认继续,系统没有"暂停后原位恢复"
步骤看门狗默认 30 秒;超时提示"响应缓慢",4 倍时提示"无响应",只告警不杀进程
停止协作式取消:任务在下一个安全检查点退出,无法安全中断的第三方调用不会被强杀
10

计划任务:让它自己跑

计划任务用 cron 表达式定时触发已保存的脚本。新建时选脚本、填 cron 或套用预设、设生效时间与是否只跑一次;任务必须处于启用状态,且软件保持运行才会触发。

计划任务(v2.0.9):任务列表、排班日历、下次执行与轮询状态
计划任务(v2.0.9):任务列表、排班日历、下次执行与轮询状态
新建计划任务:脚本选择、cron 预设与仅执行一次
新建计划任务:脚本选择、cron 预设与仅执行一次
  • cron 是五段式:分 时 日 月 周。例如 0 9 * * 1-5 表示工作日早上 9 点。
  • 需要"只跑一次"时用单次模式并设未来时间,别用 cron 猜。
  • 触发记录会写进执行日志,触发来源标为"计划任务"。
  • 任务执行期间电脑休眠、软件退出都会导致漏跑,关键任务要配补偿逻辑或手动补跑入口。
11

设置项:值得改的只有这几个

设置分八组:常规、数据管理、主题、运行、授权、主页签控制、AI 模型、AI 连接(MCP)。常规里可设"关闭时最小化到托盘""开机自启""临时置前窗口提示",图像检测间隔默认 0.50 秒(常规 0.3~0.5,追求速度可到 0.1)。其余多数保持默认,真正建议按需调整的是下面这些。

设置→运行(v2.0.9):内存保护、恢复阈值、采样间隔与 OCR 常驻
设置→运行(v2.0.9):内存保护、恢复阈值、采样间隔与 OCR 常驻
设置建议
步骤看门狗(默认 30 秒)长任务多、单步耗时长的场景调到 60~120 秒,避免刷屏告警
内存软限制(默认 1024 MB)批量跑大表格、多任务并发时上调;机器内存小于 8 GB 时不要盲目调大
运行监控采样(默认 1000 ms)只看趋势可调大到 2000~5000 ms,减少截图线程压力
日志保留按磁盘余量设天数与数量;需要留证时先导出再清理
主页签控制隐藏不用的页面,让主界面更清爽;设置页始终保留

"我的脚本"里还能给单个脚本配悬浮框:左键短按启动/停止,按住拖动位置,右下角拖动缩放,右键只有"配置/关闭"。最多 64 个,适合把常用脚本钉在桌面上。

数据管理是最该谨慎的一页:数据在便携 data 目录,"迁移旧版数据"要把旧版完整根目录指过去,不会合并两套 data;迁移前先备份,旧目录保持只读。旁边的"便携性检查"用来核对是否存在外部路径、服务依赖和保险库风险。

12

扩展能力:EXE、插件、MCP、手机

12.1导出独立 EXE:把脚本交给不会用软件的人

导出功能会把脚本打包成一个可直接双击运行的 EXE,对方不需要安装 ImgScript。要求当前授权为有效 VIP;导出的运行器每次运行最长 30 分钟,这与本体 VIP 的每日时长是两套规则。

独立 EXE 导出配置:脚本、图标与输出位置
独立 EXE 导出配置:脚本、图标与输出位置
  • 导出前先把脚本在真实环境跑通,运行器没有编辑器,出问题只能看日志。
  • 导出的运行器仍受运行安全与输入互斥保护,不是"无限权限"的可执行文件。
  • 给对方时要一并说明前置条件:目标软件已打开、分辨率一致、模板与目标画面一致。

12.2插件中心:扩展指令,不改本体

插件中心有两页:工具页是本体自带的小工具(局域网文件分享、常用语库、翻页时钟、开发工具箱);插件页用来安装/更新官方插件、启用停用、选择插件工具并打开或卸载(卸载可选保留数据)。启用后插件指令会出现在指令面板对应分类,参数以插件声明为准;写脚本或让 AI 生成时用完整插件 command_id,业务参数直接放 params,不要写宿主内部元数据。

插件中心(v2.0.9):插件页的安装、启用与卸载
插件中心(v2.0.9):插件页的安装、启用与卸载
  • 插件停用后,引用它的步骤会失效,重新启用即可恢复。
  • 插件能力不受本体版本限制,但插件自身的副作用(联网、写文件)仍由你的脚本决定。

12.3MCP 接入:让 AI 直接操作 ImgScript

MCP 是"AI 客户端 ↔ ImgScript"的本地协议。开启后,支持 MCP 的 AI 可以查询指令、创建草稿、校验、保存,并在授权下运行脚本。软件必须处于运行状态。

  1. 打开"设置 → AI 连接(MCP)",开启"启用本机 MCP"(首次默认关闭)。
  2. 点"复制连接配置"(开启后可点"一键复制给 AI"拿到脱敏配置和提示词),在 AI 客户端配置里合并 mcpServers.imgscript,不要覆盖其他服务。
  3. 让客户端重新加载 MCP,先调用 get_capabilities 确认连通,再查指令。
  4. 需要真正执行时,另开"允许 AI 运行脚本";软件原有的额度、目标、输入互斥与安全保护继续生效。
MCP 工具用途
get_capabilities检查连接,返回编辑约定与能力边界
list_commands / describe_command搜索指令、查参数与输出,是写脚本前的必做一步
get_usage_guide取 workflow、variables、targets、flow、subflows、permissions 指南
create_script_draft / update_script_draft建草稿、整表替换 steps;每次必须带最新 revision
validate_script / save_script按步骤与字段校验;用最新 revision 保存整个会话
get_script读回脚本,支持摘要与分页(每页最多 20 步)
list_resources / import_resource列出或导入图像资源(base64 最多 90 万字符)
run_script / get_run_status / stop_run只运行已保存脚本;启动不等于完成,要轮询状态
get_run_log / list_audit_log读本次会话的运行日志与安全调用摘要
list_monitors列出显示器设备名与坐标范围,不截图
create_subflow / attach_subflow创建或关联子流程成员

硬性限制:单次更新最多 500 步,请求与结果各最多 1 MiB,列表每页最多 100 项;超出时用 response_mode: "summary" 或分页继续。连接走本机命名管道/本地 socket,没有 TCP 端口或远程访问,凭据用 Windows DPAPI 加密。

设置→AI 连接(MCP)(v2.0.9):开关、复制配置与操作日志
设置→AI 连接(MCP)(v2.0.9):开关、复制配置与操作日志

12.4手机控制

在"手机控制"页按提示连接 Android 设备后,才能配置 Android 执行目标。手机用逻辑坐标,旋转、分屏或改分辨率后必须重新核对;截图为手机画面,不受桌面浮层遮罩影响。

手机控制:连接与 Android 目标配置
手机控制:连接与 Android 目标配置

12.5命令面板与内置帮助

记不住指令名时用命令面板搜索。内置帮助页顶部有软件官网、发帖论坛、QQ 群、哔哩哔哩、更新日志五个入口;左侧是教程目录,顶部可搜索、调字号,右上角"恢复示例脚本"只补缺失的同名示例,"导出文档问 AI"可以把整套帮助导出后交给 AI 阅读。

命令面板:按名称或用途搜索指令
命令面板:按名称或用途搜索指令
帮助页(v2.0.9):官网/论坛/群入口与教程目录
帮助页(v2.0.9):官网/论坛/群入口与教程目录
13

把这份文档交给 AI:三种用法

这份文档的目标是让 AI 读完就能完成大部分工作。给 AI 时按下面三种场景提要求,效果差别很大。

13.1用法一:让 AI 生成脚本 JSON

把本文档第 8 节(脚本结构)、第 7 节(变量)、第 6 节(重点指令)一起给 AI,并明确要求"参数不确定就标注为待确认,不要编造"。可直接复制这段提示词:

你是 ImgScript 脚本编写助手。请阅读我提供的《ImgScript 资源中心》文档,然后按以下要求产出脚本 JSON:1. 目标:<用一句话描述要完成的业务动作,以及判定成功的标准>2. 运行环境:<Windows 版本、目标软件名称、屏幕分辨率>3. 已知信息:<界面元素长什么样、数据从哪来、要写到哪里>4. 输出要求:   - 严格使用文档第 8 节的 JSON 结构,steps 按执行顺序排列;   - 每个 ${变量} 都必须在 variable_definitions 中定义,类型正确;   - 每个步骤都要有 target_ref,默认用 desktop;   - 等待图像、OCR 必须显式设置超时与失败分支;   - 参数名如不确定,写 "TODO: 待用 describe_command 确认",不要猜测;   - 最后列出:需要我手动截图的模板清单、需要我确认的坐标、可能失败的环节。

13.2用法二:让 AI 通过 MCP 直接建脚本

要求 AI 按固定流程走,避免它跳过校验:

请通过 ImgScript MCP 完成脚本,流程固定为:get_capabilities → list_commands 搜索相关指令 → describe_command 确认参数 →create_script_draft 建草稿 → 逐步 update_script_draft(每次带最新 revision,保留已有步骤 id)→validate_script 直到通过 → save_script 保存 → get_script 读回确认。需要运行前先问我是否开启"允许 AI 运行脚本",运行后用 get_run_status 轮询,结束再看 get_run_log。

关键约束要一起告诉 AI:steps 是整表替换;单次最多 500 步;修改必须带最新 revision;不确定结果时先查状态,不要重复提交。

13.3用法三:让 AI 看日志排错

把执行日志里的失败步骤名 + 失败原因 + 当次截图(脱敏后)发给 AI,比只发一句"跑不通"有效得多。推荐格式:

脚本:<名称>;第 <n> 步 <步骤名> 失败;错误信息:<原文>;执行目标是:<全桌面/窗口A>;当次截图已附;此前这一步是否成功过:<是/否>。请判断是模板、区域、阈值、等待超时、目标失焦还是权限问题,并给出最小改动方案。
14

排错速查:先看现象,再改参数

现象优先检查
找不到图,一直等到超时模板是否包含会变化的文字;查找区域是否圈错;目标窗口是否在最前;缩放比例是否变了
点到了旁边执行目标绑定是否正确;点击偏移是否设了负值;窗口是否被移动过
输入进不去焦点是否在输入框;是否需要先点击;输入法是否拦住了组合键
循环只跑了一次循环结束是否在循环体内;次数来源是否为空数组;内部是否有跳转提前跳出
条件永远走同一支比较的两边类型是否一致(字符串 "12" 与数字 12);OCR 是否 found=false
脚本跑完但业务没成是否只看了"执行成功";需要加条件或结果校验步骤
计划任务不触发任务是否启用;软件是否在运行;cron 时区与系统时间;电脑是否休眠
内存告警、任务排队调大内存软限制;减少并发;到运行监控确认继续调度
Excel 写坏/没写进去文件是否被 Excel 占用;表头映射是否匹配;是否整步校验失败(此时原文件不变)
HTTP 报 SSRF/被拒目标是否是内网或本机地址;需要时显式开启"允许内网"
15

使用边界、合规与版本说明

  • 只操作你有权操作的系统和数据:自动化不改变业务授权,绕过他人系统权限、批量抓取他人数据都不在支持范围。
  • 高风险动作加人工确认:支付、删除、提交审批、对外发送消息,建议在脚本里插弹窗确认或只做"填好不提交"。
  • 不用于规避风控或对抗性场景:验证码识别、批量注册、刷量、游戏外挂类用途不属于本工具的设计目标。
  • 数据自己负责:日志与截图可能含客户信息,分享前脱敏;便携目录请自行备份。
  • 版本差异:本文依据 2.0.8 / 2.0.9 工作区的实际界面与帮助文档整理,个别选项名称与默认值可能随版本微调,以软件内当前界面为准。

配套资源:软件下载见下载页的夸克、百度、UC、QQ 群文件四个入口;激活码在页首"激活码获取地址";版本更新与反馈走 QQ 频道与 QQ 群文件。遇到文档没覆盖的问题,带上执行日志与截图提问,定位会快很多。