OpenGUI API与CLI完整参考:任务创建、执行状态查询与取消命令5分钟讲透
【免费下载链接】OpenGUIOpenGUI is an Android GUI agent framework for phone-use AI that can see, plan, and operate real mobile apps through the GUI.项目地址https://gitcode.com/gh_mirrors/open/OpenGUI点击查看免费下载OpenGUI 是一个面向 Android 的手机端 GUI Agent 框架让 AI 能看见、规划并操作真实手机上的应用界面。它的后端NestJS LangGraph提供了一套完整的任务管理 API和远程执行控制 API并附带一个开箱即用的CLI 工具pnpm opengui——你可以用一行命令创建任务、查询执行状态、暂停或取消任务无需手写任何 HTTP 请求。本文覆盖任务创建do/run、执行状态查询status、取消命令cancel/pause/resume背后的 API 与 CLI 用法。一、先搞懂两个核心概念任务 与 执行OpenGUI 把任务卡片和一次执行分成了两层这是理解所有 API 的钥匙概念说明对应 API 前缀Task任务卡片可复用的任务描述例如打开浏览器搜索 OpenGUI/api/tasks/...Execution执行记录任务在某台手机上的一次实际运行有独立的状态机和执行结果/api/executions/...、/api/remote-control/...一句话do会帮你建卡 立即执行run则是拿已有卡片再跑一次每次运行都会生成一个新的executionId。执行状态的生命周期源码见 task.enums.tsINITIAL → RUNNING → FINISHEDSUCCEED / FAILED / CANCELLED ├─→ USER_PAUSED → RUNNING 用户手动 pause 后 resume └─→ SUSPENDED → RUNNING Agent 请求人工介入后 resume二、准备工作启动后端与查看 Swagger 文档OpenGUI 后端默认监听http://localhost:7777可用环境变量PORT修改。启动方式见 start.sh# 1. 克隆仓库 git clone https://gitcode.com/gh_mirrors/open/OpenGUI # 2. 一键启动要求 Node.js 22、pnpm、Docker cd OpenGUI/server ./start.sh首次启动会自动拉起 PostgreSQL 和 Redis、生成 Prisma Client并提示你在.env中配置视觉模型VLM_API_KEY你的API密钥 VLM_BASE_URLhttps://dashscope.aliyuncs.com/compatible-mode/v1 VLM_MODELqwen3.6-plus 模型配置是执行真实任务的前提。同一套模型管理逻辑在 DeepSeek Harness 插件中也有可视化页面方便随时切换模型目录与密钥启动成功后浏览器访问http://localhost:7777/docs即可打开Swagger API 文档所有接口可在线调试文档注册见 main.ts。三、任务创建 APIdo 与 run远程控制入口集中在 remote-control.controller.ts 中前缀为/api/remote-control。3.1 创建并立即执行POST /api/remote-control/tasks/do一步完成建任务卡 派发给在线手机 开始执行是最高频的接口{ description: 打开浏览器并搜索 OpenGUI, deviceId: 可选指定手机 ID }字段必填说明description✅任务描述会被 Agent 作为执行指令taskName❌自定义任务卡名称缺省时取描述前 20 字deviceId❌不填则自动选择第一台在线待命手机成功响应200{ success: true, executionId: 42, taskId: 7, taskName: 打开浏览器并搜索 OpenGUI, device: { deviceId: phone-a, deviceName: Pixel 8 }, message: Execution started } 记住返回的executionId后续查状态、取消都要用它。3.2 重跑已有任务POST /api/remote-control/tasks/run{ taskId: 7, deviceId: 可选 }适合同一个任务换台手机再跑一次的场景。3.3 查看在线手机GET /api/remote-control/devices执行前建议先确认手机已连上{ devices: [{ deviceId: phone-a, deviceName: Pixel 8 }], total: 1 }若返回No online device请先在手机上启动 OpenGUI 客户端并等待其进入待命连接详见 remote-control.service.ts 中的设备选择逻辑。四、执行状态查询 API一个 GET 全知道GET /api/remote-control/executions/{executionId}响应字段定义见 task-execution-response.dto.ts字段说明executionStatus当前状态RUNNING/SUSPENDED/USER_PAUSED/FINISHED等executionResult终态结果SUCCEED/FAILED/CANCELLEDcurrentStepAgent 正在执行的当前步骤statusMessage状态补充说明executionResultSummary任务完成后的 AI 总结errorMessage失败原因如有startedAt/finishedAt实际开始 / 完成时间查询节奏建议轮询间隔 2~5 秒直到executionStatus FINISHED。完整字段说明见 new_task_api_doc.md。五、取消命令 APIcancel、pause 与 resume三个控制接口均以执行记录为操作对象命令接口生效状态效果取消PUT /api/remote-control/executions/{id}/cancelRUNNING/SUSPENDED/USER_PAUSED终止执行结果记为CANCELLED暂停PUT /api/remote-control/executions/{id}/pause仅RUNNING状态变为USER_PAUSED可随时恢复恢复PUT /api/remote-control/executions/{id}/resumeUSER_PAUSED/SUSPENDED继续执行可携带反馈resume支持在请求体里附带反馈帮助 Agent 理解下一步怎么做{ feedback: 已经登录好了继续执行 }⭐ 人工介入Human-in-the-Loop当任务遇到登录、验证码或需要确认的操作时Agent 会主动发出call_user动作执行状态变为SUSPENDED。此时轮询status接口从statusMessage中读取 Agent 的提示你在手机上手动完成操作调用resume可附feedback让 Agent 从断点继续。此外完整任务管理 API 还提供PUT /api/executions/cancel-all一键取消当前用户所有活跃执行见 task.controller.ts。六、CLI 一键操作pnpm opengui --手写 HTTP 太麻烦OpenGUI 内置了 opengui-control.mjs把上面所有 API 封装成了 7 个子命令运行 opengui-control.test.mjs 可验证行为# 在 server/ 目录下执行 pnpm opengui -- devices # 查看在线手机 pnpm opengui -- do 打开浏览器并搜索 OpenGUI # 创建并立即执行 pnpm opengui -- run 7 # 重跑已有任务 pnpm opengui -- status 42 # 查询执行状态 pnpm opengui -- cancel 42 # 取消执行 pnpm opengui -- pause 42 # 暂停执行 pnpm opengui -- resume 42 已登录继续 # 恢复执行全局参数参数作用--json输出原始 JSON方便脚本处理默认输出人类友好的摘要--base-url url指定后端地址默认http://localhost:7777--device deviceId指定目标手机do/run命令也可以不改参数直接用环境变量OPENGUI_BASE_URL指向远程后端。典型一次会话$ pnpm opengui -- do 打开设置并查看 Android 版本 --json { success: true, executionId: 42, taskId: 7, taskName: 打开设置并查看 Android 版本, device: { deviceId: phone-a, deviceName: Pixel 8 } } $ pnpm opengui -- status 42 Execution #42 Task: 打开设置并查看 Android 版本 Device: Pixel 8 { executionStatus: RUNNING, currentStep: 打开设置应用 } $ pnpm opengui -- cancel 42 { success: true, message: Execution cancelled }CLI 命令与 API 对照速查CLI 命令HTTP 方法API 端点devicesGET/api/remote-control/devicesdo descPOST/api/remote-control/tasks/dorun taskIdPOST/api/remote-control/tasks/runstatus executionIdGET/api/remote-control/executions/{id}cancel executionIdPUT/api/remote-control/executions/{id}/cancelpause executionIdPUT/api/remote-control/executions/{id}/pauseresume executionId [反馈]PUT/api/remote-control/executions/{id}/resume除了直接调 API / CLIOpenGUI 也支持通过 IM 机器人、MCP 等入口下发同样的任务。例如 WorkBuddy 中启用 OpenGUI 连接器后AI 也能调用这套任务接口七、常见错误码速查HTTP 状态码含义排查建议200/201成功 / 已创建—400参数或当前状态不合法例如已完成的任务无法取消、设备不在线401未授权检查请求头Authorization: Bearer token404资源不存在确认executionId/taskId是否打错500服务内部错误查看后端日志检查模型配置是否完整八、相关资源 任务管理 API 完整文档new_task_api_doc.md 远程控制控制器remote-control.controller.ts 任务与执行控制器task.controller.ts CLI 工具实现opengui-control.mjs 后端一键启动脚本start.sh Swagger 在线文档启动后端后访问http://localhost:7777/docs掌握do → status → cancel这条主线你就已经拥有了 OpenGUI 任务系统 90% 的日常操作能力——现在就去启动后端给你的手机下达第一条指令吧赞分享【免费下载链接】OpenGUIOpenGUI is an Android GUI agent framework for phone-use AI that can see, plan, and operate real mobile apps through the GUI.项目地址https://gitcode.com/gh_mirrors/open/OpenGUI点击查看免费下载相关推荐ChromePass3步找回Chrome浏览器保存的所有密码 ChromePass3步找回Chrome浏览器保存的所有密码 你是否曾经点击过Chrome浏览器的记住密码按钮然后完全忘记了某个重要网站的登录信息网络安全Gulp CLI 完全指南命令行参数、任务执行与任务树调试Gulp CLI 完全指南命令行参数、任务执行与任务树调试 Gulp 的命令行接口CLI是驱动整个构建系统的入口通过 gulp 命令即可加载 gulpf构建工具CLI抖音视频下载完全指南从一条无水印视频到自我更新的素材库抖音视频下载完全指南从一条无水印视频到自我更新的素材库 抖音视频下载真的必须靠网页转换站吗并不。 douyin downloader 是一个免费开源的抖音网页爬虫CLI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

PV模拟工具:可审计的页面访问量生成与埋点验证方案

PV模拟工具:可审计的页面访问量生成与埋点验证方案

简介:天天刷PV v1.0是一款面向网站运营者、SEO初学者及流量优化实践者的网络辅助工具,旨在通过模拟用户访问行为,辅助提升页面浏览量(PV)与独立访客数(IP)等基础流量指标,适用于小规…

2026/10/11 14:58:50 阅读更多 →
WPF TreeView 连接线样式实战:从模板重写到性能优化

WPF TreeView 连接线样式实战:从模板重写到性能优化

简介:这份资源面向WPF桌面开发初学者与需要美化树形控件的开发者,解决原生TreeView缺少连接线、层级关系不够直观的问题。通过自定义Style与ControlTemplate,在TreeViewItem模板中嵌入Line元素,并配合BoolToVisConverter转换器控制…

2026/10/11 14:58:50 阅读更多 →
2026年OpenClaw(Clawdbot)+Skills云上与本地一键部署全解析:把settings改到TaoToken打通统一Key

2026年OpenClaw(Clawdbot)+Skills云上与本地一键部署全解析:把settings改到TaoToken打通统一Key

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:57:50 阅读更多 →

最新新闻

SQL Server学生选课系统设计:从范式到高并发实战

SQL Server学生选课系统设计:从范式到高并发实战

简介:本资源是一份完整的数据库系统课程设计报告模板,面向高校计算机、软件工程等专业本科生,解决数据库课程设计从需求分析到系统实现的全流程实践难题。报告以学生选课管理信息系统为案例,覆盖系统需求分析(含业务流…

2026/10/11 15:46:15 阅读更多 →
Flutter三方库鸿蒙化适配:using Disposable资源生命周期管理实战

Flutter三方库鸿蒙化适配:using Disposable资源生命周期管理实战

事情要从一次内存告警说起。某项目组把一个图像处理相关的 Flutter 三方库从原有平台往鸿蒙上迁移,界面、功能很快都跑通了,大家正高兴,结果性能测试那边反馈:内存曲线一路走高,回收不下来。起初以为是渲染层的问题&am…

2026/10/11 15:46:15 阅读更多 →
MySQL线程池插件原理与高并发调优实战

MySQL线程池插件原理与高并发调优实战

简介:本资源是一份面向MySQL数据库管理员、性能优化工程师及高并发场景开发者的实战型技术文档,聚焦解决生产环境中因高并发请求引发的线程创建开销大、响应延迟高、系统稳定性不足等核心性能瓶颈。文档系统阐述MySQL线程池插件的工作原理、编译安装与关…

2026/10/11 15:46:15 阅读更多 →
CSS3风水罗盘旋转特效:用transform与动画徒手绘制无水印盘面

CSS3风水罗盘旋转特效:用transform与动画徒手绘制无水印盘面

简介:这是一份基于CSS3实现的风水罗盘旋转动画网页特效资源,适合前端开发者、交互设计师以及CSS动画学习者参考使用,可用于个人网站、文化主题页面或演示项目中。资源包内共29个文件,以25张PNG图片为主要素材,另含2张J…

2026/10/11 15:46:15 阅读更多 →
Word无法创建工作文件?临时环境变量排查与修复全攻略

Word无法创建工作文件?临时环境变量排查与修复全攻略

这几天好几个朋友先后给我发来同一个报错截图:Word弹窗提示“word无法创建工作文件,请检查临时环境变量”。后面还跟着一串路径,比如 C:\Users\xxx\AppData\Local\Temp 之类。大部分人的第一反应是怀疑Office坏了,甚至有人直接重…

2026/10/11 15:46:15 阅读更多 →
Openclaw插件重复ID报错全解析:从定位到修复

Openclaw插件重复ID报错全解析:从定位到修复

升级到 Openclaw 2026.3.2 之后,我的飞书插件差点就废了。服务一启动,日志里反复蹦出一行提示:plugin feishu: duplicate plugin id detected,然后整个插件加载流程直接中断,本地机器人彻底失联。连续排查了两个晚上&a…

2026/10/11 15:45:14 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →