如何让编程代理开发可复用自动化
在本地编程代理中打开自动化应用目录,提供项目路径、目标应用和期望结果。代理需要访问本地文件、启动进程,并连接该项目的 ok-script MCP 服务。将下面的路径和任务内容替换成你的实际需求。
连接项目
在 E:\automation\my-app 中工作,使用项目自己的虚拟环境和现有依赖。启动项目的 ok-script MCP 开发入口;如果没有,先帮我配置。在 logs/mcp/connections 中读取有效连接记录,核实项目和进程,用其中的 URL 和 bearer token 连接,不要输出凭据。调用 list_skills,再通过 get_skill 读取相关技能。确认 screenshot 获取的是正确目标。不要使用 Computer Use 技能、插件或工具。
如果代理没有原生 MCP 连接能力,让它用已安装的官方 MCP Python SDK 编写本地客户端,仍然通过 MCP 服务提交任务文件。端口、认证和进程生命周期见 MCP 说明(英文)。
查询任务所需的 API
通过 ok-script MCP 调用 list_skills,读取 get_skill("develop"),以及相关模板或测试技能。我需要找到设置按钮、点击它,并验证新界面。定位这个项目的 Python 解释器实际使用的 ok-script 包,检查截图、匹配、等待和输入方法的源码、文档字符串和 Python 签名,包括继承的方法。列出所需方法的导入路径、准确签名、返回行为和本地源码位置,再给出适用于当前安装版本的最小示例。不要猜测 API 名称,也不要为了套用示例而更换版本。
MCP 提供工作流技能和执行工具,没有 get_api 工具或完整的 Python API 目录。代理通过本地文件访问检查已安装包,获取与项目版本一致的 API。若导入模块需要尚未安装的可选依赖,可先读源码,再判断是否需要安装。无需检出框架源码仓库。
开发并验证新任务
在 E:\automation\my-app 中,为我的 Windows 应用开发可复用 Python 任务 EnableOptionTask。从主界面进入设置,启用“显示详情”,保存,再次打开设置,确认“显示详情”仍为开启状态。重复运行应保持开启,不能把选项再次关闭。
先读取相关 MCP 技能并核实已安装 API,再实现任务。代码保存在项目正式任务模块中。用 ok-script 截图和交互,优先验证 PostMessage 后台输入。优先使用几何、颜色或模板匹配,确有需要再加 OCR。不要使用 Computer Use 工具,也不要给运行中的脚本添加大模型调用。
通过 MCP 测试,提供 reset_to_start、verify_start_state 和可观察的成功断言。每次尝试前恢复并验证起始状态,保存失败日志和截图,设置有上限的等待,并验证重复运行。将完成的任务注册到项目配置,使普通 GUI/CLI 运行也能恢复状态。最后给出保存的文件路径、验证结果、尚未验证的限制,以及不依赖代理的准确运行命令。无法验证 GUI 开始按钮时如实说明。
其他任务也请说明四件事:目标、起始状态、操作、成功条件。还可以补充支持的分辨率、后台运行要求和禁止执行的操作。最终交付物应是可复用 Python 代码、素材、配置和运行说明。
修改已有任务
应用更新设置布局后,已保存的 EnableOptionTask 失败了。调用 list_tasks 找到原始源码,检查失败证据并原地修改。用返回的 task_id 调用 reload_tasks,等待重载成功后恢复目标状态,通过调用已注册任务的轻量 MCP 测试文件验证。不要在临时文件里复制整套任务逻辑。复用恢复方法,验证重复运行;识别逻辑变化时补充截图回归测试。保持日常运行不调用大模型。
重复运行成果
让代理给出真实的已注册任务名和配置入口。例如,在应用项目目录运行:
.\.venv\Scripts\python.exe -m ok run_task EnableOptionTask --config src.config:config
这里的 CLI 命令选择已注册任务;MCP 的 run_task(file_path) 执行任务文件,两者入口不同。也可以关闭 MCP 后从应用 GUI 启动保存的任务。切换到普通运行前先结束开发运行时,详见快速开始。
开发对话会消耗模型 Token;复用本地 Python 自动化无需代理或大模型推理。后续界面变化可能需要新一轮开发;如果你主动要求脚本调用大模型,则该部分仍有推理成本。