feat: add unicom screenshots and update mobile aijia

This commit is contained in:
KeyInfo Bot committed 2026-11-04 10:02:00 +08:00
1 parent 09b9de33dd
commit 04673a8de8
20 files changed
+305 -23

No files matched your search

@@ -328,6 +328,18 @@
},
"category": "Developer Tools"
},
{
"name": "unicom-zhijia-daily-screenshots",
"source": {
"source": "local",
"path": "./plugins/unicom-zhijia-daily-screenshots"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
},
"category": "Developer Tools"
},
{
"name": "updating-gitea-repositories",
"source": {
@@ -1,6 +1,6 @@
{
"name": "mobile-aijia-daily-screenshots",
"version": "1.0.0",
"version": "1.0.1",
"description": "通过 ARTEMIS 采集移动爱家设备截图并按确认方式发送结果。",
"author": {
"name": "hejunxian",
@@ -19,7 +19,7 @@
"interface": {
"displayName": "mobile-aijia-daily-screenshots",
"shortDescription": "采集移动爱家截图并按确认方式发送结果。",
"longDescription": "使用 ARTEMIS Flash 采集移动爱家设备的直播、对讲、云台、告警和回放截图并整理证据。需要可用的 ARTEMIS、artemis-use、Android 模拟器与移动爱家 App;钉钉通知需要 DWS 及对应 Skills。每次执行须取得本轮确认,定时不代表无人值守。",
"longDescription": "使用 ARTEMIS Flash 采集移动爱家设备的直播、对讲、云台、告警和回放截图并整理证据。需要可用的 ARTEMIS、artemis-use、Android 模拟器与移动爱家 App;钉钉通知需要 DWS 及对应 Skills。创建计划时确认完整配置及通知授权,执行时核实设备与授权范围。",
"developerName": "hejunxian",
"category": "Developer Tools",
"capabilities": [
@@ -1,9 +1,9 @@
{
"sourceId": "mobile-aijia-daily-screenshots",
"repo": "https://git.playones.com/hejunxian/mobile-aijia-daily-screenshots.git",
"ref": "v1.0.0",
"commit": "2bd2ba3398cfd1450d53f5ef4e224577340a75b1",
"ref": "v1.0.1",
"commit": "5d331555678eaa581ede62337fc3ae60011354f5",
"adapter": "claude-skill",
"sourcePath": ".",
"syncedAt": "2026-11-03T08:33:05Z"
"syncedAt": "2026-11-04T02:00:38Z"
}
@@ -1,23 +1,21 @@
---
name: mobile-aijia-daily-screenshots
description: 为移动爱家 App 的指定设备采集直播、对讲、云台、告警及卡存和云存回放截图;每次执行前询问天数、每天时间、设备、云台和本人私聊截图加 DING 通知,每轮发送结果,并支持用户确认的每日计划。不用于其他 App 的通用测试。
description: 为移动爱家 App 的指定设备采集直播、对讲、云台、告警及卡存和云存回放截图;下发长稳计划时一次确认,到点按计划执行,结果通过钉钉私聊截图并发文字 DING。不用于其他 App 的通用测试。
metadata:
version: "1.0.0"
version: "1.0.1"
---
# 行研长稳截图
固定应用:移动爱家,包名 `com.cmri.universalapp`。通过已启动的 ARTEMIS 操作用户指定的 Android 模拟器;App 中的摄像头/设备与 Android 模拟器是不同对象。使用已安装的 `artemis-use` Skill 及其单任务执行参考;调用前查看当前 MCP 工具契约。不要重装、清数据、重置设备或修改全局配置。
## 先确认配置
## 下发时确认,到点执行
每轮截图执行前,无论是单次执行还是定时触发,都必须主动询问并取得用户本轮回复,确认以下全部事项:①计划连续执行的天数、起始日期,以及每天执行的具体时间点;②待截图的 App 内设备名称及每台是否有云台(有/无);③通过钉钉私聊将截图发给本人,并发送应用内文字 DING 通知本人。可把之前的配置或计划参数列为待确认选项,但历史答复、默认值和计划配置均不能代替本轮提问及答复。单次立即执行也要询问天数和时间点;用户可明确答复执行 1 天、现在执行,不得自行假设。钉钉本人身份和组织须通过对应 Skill 核实;用户之后若明确指定其他受支持的收件人或方式,按本轮明确要求处理。钉钉身份解析、通道及外部发送遵循对应 Skill 与 Runtime 的实际要求,不读取、输出或保存认证凭据。
创建计划或确认变更时,一次性确认起止日期、连续天数、每天的具体时间点和时区;模拟器名称及唯一 Android serial;App 内每台设备的名称及有无云台;回看规则;以及计划范围内各轮的发送授权(默认方案为钉钉私聊截图给本人,再发应用内文字 DING)。只补问缺项;用户已明确给出并确认完整配置时无需再问。历史任务配置可供新计划参考,不能代替新计划的授权。单次立即执行也在下发时确认范围、时间与发送授权,明确“执行 1 天、现在执行”即可。
执行前还要核对目标回看日期及模拟器 serial;多个模拟器且目标不明确时向用户确认。逐台确认云台功能,不凭型号或页面猜测。区分计划连续执行天数与每轮回看天数,不能混为一谈:除非用户另行指定,回看默认取执行日期的前一自然日;原有 12:00 回放和新增 00:00、09:00 均须核对实际页面日期。直播基准截图每台每次一张,其他截图见单次用例。
**已确认的计划到点直接执行。** 保存已确认的配置及发送授权,适用于该计划范围内的所有轮次。触发后核对计划范围、实际日期、模拟器 serial、目标设备与运行条件,按已确认的配置执行,无需逐轮询问或等待回复。配置缺失、目标无法可靠核实或需要变更设备、云台、接收人或计划范围等已确认事项时,暂停受影响的操作并报告原因;需要变更的事项在更新计划时确认。
创建每日计划前,将上述事项连同模拟器名称及可唯一对应的 Android serial 一起收集并让用户确认;核对计划起止日期和每天各执行时间点。用户确认回溯 N 天则为前 N 个自然日,分别采集各日原有的 12:00 截图;执行日期前一日的 00:00、09:00 另行采集,不随回溯天数重复。用户要求连续执行 N 天时,在最后一天结束后停用计划。所有时间按北京时间(Asia/Shanghai,UTC+08:00),除非用户之后明确改用其他时区。只有用户明确要求定时且确认完整计划后才创建调度,询问天数和时间本身不自动授权建立计划。
每次触发后都须重新主动询问天数、每天时间点、设备、逐台云台功能及本人私聊截图加 DING 通知,并取得本轮答复;计划配置只能用于提示。若用户要求更改计划,应先核对变更和调度器实际下一次触发时间。缺少必要答复、设备无法唯一对应、云台功能未确认或无法询问时,本轮不启动截图;报告阻塞原因。若本轮已确认通知对象及方式,但 ARTEMIS、设备或 App 等不可用导致阻塞,仍在最终处理阶段按已确认的渠道尝试发送阻塞结果。每轮结束后,无论成功、部分完成、失败或阻塞,均按本轮确认的接收人和方式尝试发送结果,不得臆测或静默沿用旧接收人。
区分计划连续执行天数与每轮回看天数。默认回看执行日期的前一自然日;回溯 N 天时,分别采集前 N 个自然日的 12:00,00:00、09:00 仍只采集执行日前一日。三个时刻均须核对页面实际日期。只有用户明确要求定时并确认完整计划后才创建调度;默认采用北京时间(Asia/Shanghai,UTC+08:00)。最后一天的最后一轮结束后停用计划。
## YT70-468 及指定设备单次截图用例
@@ -31,7 +29,7 @@ metadata:
任何用例受阻、失败、无数据或无法验证时,保存现状和页面提示,逐项记录实际状态、缺项及原因,结束受阻项后继续执行后续可执行用例和其他设备;不因单项受阻停止整台设备或整轮任务。云台无法核实停止时记录状态,不重复方向动作,继续其他可执行用例;对讲状态不明时如实记录,继续后续可执行用例。设备离线、App不可达或ARTEMIS服务不可用等使后续操作实际无法进行时,记录受影响项目及原因,不伪称已执行;不绕过安全校验。当次接受现状不代表以后无数据自动通过。报告各截图真实路径及缺项原因,截图仅记录执行事实,不自行判断长稳是否通过。
这是供 Codex 后续长稳调度的单次用例。每次运行都必须将完整用例及当次设备、日期要求传入 ARTEMIS,由 ARTEMIS 执行全部 App 操作和截图;Codex 负责调度、提交、跟踪、读取与整理 ARTEMIS 证据,并按本轮确认的接收人发送结果通知。不得由 Codex 通过 ADB、电脑操作工具或其他直接控制方式代替 ARTEMIS 执行用例,也不得在 ARTEMIS 不可用或执行失败时切换到 Codex 直接操作;应报告阻塞或失败原因。不自行循环或创建定时任务,只有用户明确要求时才执行对应操作。仅要求整理或修改用例/Skill 时不启动设备任务或发送截图结果通知。
这是供 Codex 后续长稳调度的单次用例。每次运行都必须将完整用例及当次设备、日期要求传入 ARTEMIS,由 ARTEMIS 执行全部 App 操作和截图;Codex 负责调度、提交、跟踪、读取与整理 ARTEMIS 证据,并按已确认的发送授权通知结果。不得由 Codex 通过 ADB、电脑操作工具或其他直接控制方式代替 ARTEMIS 执行用例,也不得在 ARTEMIS 不可用或执行失败时切换到 Codex 直接操作;应报告阻塞或失败原因。不自行循环或创建定时任务,只有用户明确要求时才执行对应操作。仅要求整理或修改用例/Skill 时不启动设备任务或发送截图结果通知。
## 截图执行
@@ -44,12 +42,14 @@ metadata:
## 钉钉通知与结果
每轮执行无论成功、部分完成、失败或阻塞,都必须在最终处理阶段尝试向本轮已确认的钉钉接收人发送结果通知:写明执行时间、设备、目标日期、实际状态、缺项及失败或阻塞原因;有截图时通过钉钉私聊发送给本人,再发送应用内文字 DING 说明图片发送状态和结果。保留真实业务回执,投递未知或失败不得说已送达;遇到认证、权限、Runtime 确认或接口故障时分别记录并向用户报告,不能保证实际送达。读取 `dingtalk-misc` 的 DING 指引并使用同一 profile,本人身份通过 `dingtalk-contact` 核实,其他人员按 `dingtalk-aisearch` 和 DING 指引解析,使用真实 `openDingTalkId`,不猜 ID、不选不明确的同名人员。当前 `dws ding message send-personal` 只提供文字内容,没有直接附图参数;每次按实际当前契约确认能力,不伪称 DING 包含图片。尚未取得本轮接收人答复时不能发送,应向用户报告该轮因接收人未确认而阻塞。
每轮无论成功、部分完成、失败或阻塞,都在最终处理阶段按已确认的接收人和方式尝试发送结果。写明执行时间、设备、目标日期、实际状态、缺项及失败或阻塞原因。用 `dingtalk-chat` 的图片指引私聊发送实际取得的截图,再用 `dingtalk-misc` 的 DING 指引发应用内文字通知,说明图片发送状态;无截图时发送文字结果和原因。`dws ding message send-personal` 没有直接附图参数,以当前契约为准,不把本地路径冒充附件。若用户只接受 DING 内附图且接口不支持,在下发前说明并确认可行方式。
用 `dingtalk-chat` 的图片发送指引把真实截图发给本轮已确认的接收人,再发 DING 标明图片发送状态;按实际回执或任务状态确认,禁止用本地文件路径冒充可访问附件。截图部分成功时可发送已取得的截图并在 DING 列明缺项及原因;没有截图时发送文字结果及原因。聊天或 DING 任一失败均分别记录并报告,不能静默切换接收人或通道。若用户只接受 DING 内附图且现有接口不支持,在执行或创建自动化前说明能力限制并等待明确选择;若执行中才发现限制,仍尝试发送说明失败原因的文字 DING。外部发送遵循当前工具 Runtime 的确认要求;若定时运行遇到无法无人值守通过的确认或认证,记录阻塞并向用户报告,不能声称通知已完成。
发送前核对已授权的收件人及组织;本人身份通过 `dingtalk-contact` 核实,其他人员按 `dingtalk-aisearch` 和 DING 指引解析。全程使用同一 profile,使用真实业务返回的 `openDingTalkId`,不猜 ID、不选身份不明确的同名人员,不读取、输出或保存认证凭据。下发时已授权的发送无需逐轮征求同意,按工具 Runtime 接受的方式使用该授权。若工具另需交互确认、认证或权限不可用、身份不匹配、接口故障或缺少发送授权,记录通知受阻并报告;已授权且环境可用的截图继续执行。私聊和 DING 分别保留真实回执,投递未知或失败不得说已送达,不擅自更换收件人或渠道。
## 定时配置
只有用户明确要求定时且已确认以上参数、发送方式及计划范围后,使用宿主的 automation 工具创建每日任务,采用确认的时区和时间;提示词包含使用 Flash 和单任务执行超时 3600 秒、拟定天数与每天时间点、设备配置及逐台云台功能、调用本 Skill、每轮触发后截图前重新询问并取得全部本轮配置及本人私聊截图加 DING 的答复、每次重新计算执行日期、前一日及回溯日期、原有 12:00 及前一日 00:00/09:00 截图、每轮无论结果均按确认接收人发送通知和终止条件,不包含密钥。计划触发不等于已开始截图:必需配置未答复或无法询问时该轮阻塞,不使用历史配置代替;在创建计划前向用户说明每轮需要人工答复,不能承诺无人值守自动截图和发送。Skill 本身不是调度器。若用户只要求创建或修改 Skill,则不启动测试、创建计划或发送截图结果通知。运行前检查 ARTEMIS 和钉钉可用性;不能保证电脑关机、服务离线、认证失效或调度器不可用时仍能执行或发出通知。最终分别报告截图和通知的实际结果及可恢复的证据位置。
用宿主的 automation 工具下发已确认的计划。提示词保存完整配置及发送授权,注明调用本 Skill,**到点直接执行,无需等待用户回复**;每轮重新计算执行日期、前一日及回溯日期,使用 ARTEMIS Flash 和单任务超时 3600 秒,采集各回溯日的 12:00 及前一日的 00:00、09:00,按已授权方式通知结果,达到终止条件后停用。提示词不包含密钥。用户授权既有计划改为到点直接执行时,更新该计划的提示词并移除旧的逐轮确认要求;保留已确认的日期、时间、设备和发送授权,必要的缺项在更新时补齐。
运行前检查 ARTEMIS 和钉钉可用性。ARTEMIS、模拟器或 App 不可用时,记录截图受阻原因,并按已授权渠道尝试发送结果;通知通道不可用时单独记录。分别报告实际开始时间、截图结果、通知状态及证据位置。若用户只要求创建或修改 Skill,则不启动测试、创建计划或发送结果通知。
严格按用户确认的日期和时间设置,统一使用北京时间(Asia/Shanghai,UTC+08:00),除非用户之后明确改用其他时区;不得擅自改变执行时间。创建或修改计划后,核对调度器实际排定的下一次触发时间,并确认计划最后一天包含在内;检查时区转换及调度器可能加入的随机偏移。不要假设规则中的小时字段一定按当地时区解释,具体行为以当前宿主的实际结果为准。优先使用宿主支持且可核验的精确触发方式;如果无法按指定时间排定或无法核实,应如实告知,不能声称已准确设置。计划触发时间与实际开始时间可能不同,若因电脑、服务或会话状态等原因延迟或未执行,应记录实际情况并报告。
@@ -1,6 +1,6 @@
# ARTEMIS 单次截图任务提示词
提交前按主 Skill 的要求主动询问并取得本轮全部配置确认,包含执行天数、每天的时间点、逐台设备名称和云台功能及本人私聊截图加 DING 通知;历史固定配置只能作为提示。然后替换方括号中的占位项:App 内设备及用户本轮逐台确认的云台功能(有/无)、模拟器 serial、执行时区、执行具体日期及其前一自然日的具体日期、原有 12:00 回放的具体回溯日期。多设备或多日期任务应列明全部目标;缺少本轮必要确认时不提交该设备任务。提交时使用 Flash 和单任务 `runtime_overrides.timeout_seconds=3600`。当前 Flash 不提供执行前安全网或 Pro notes,不得假称具备;需要受保护操作的项目若当前模式无法提供所需保护,记录缺项并继续其他可执行项目。不要把历史坐标或历史界面状态当作当次事实。下面的文本完整传给 ARTEMIS,按用户当次明确要求调整,不把占位符原样提交。
提交前使用下发时已确认的计划或单次任务配置;定时触发时直接使用本计划配置,无需再询问或等待用户回复。将方括号中的占位项替换为已确认的 App 内设备及逐台云台功能(有/无)、模拟器 serial、执行时区、实际执行日期及其前一自然日的具体日期、原有 12:00 回放的具体回溯日期。多设备或多日期任务须列明全部目标。必要配置缺失或目标无法核实时,记录受影响项及原因,不提交配置不完整的设备任务。提交时使用 Flash 和单任务 `runtime_overrides.timeout_seconds=3600`。当前 Flash 不提供执行前安全网或 Pro notes,不得假称具备;需要受保护操作的项目若当前模式无法提供所需保护,记录缺项并继续其他可执行项目。不要把历史坐标或历史界面状态当作当次事实。下面的文本完整传给 ARTEMIS,按已确认配置调整,不把占位符原样提交。
```text
在 Android 模拟器 [serial] 的移动爱家(com.cmri.universalapp)执行一轮截图用例。目标 App 内设备及用户确认的云台功能:[逐台列明设备名及有/无];执行时区:[时区];执行日期:[执行日期 YYYY-MM-DD];夜视截图日期(执行日期的前一自然日):[前一日 YYYY-MM-DD];原有回溯截图目标:[具体日期列表],各日期 12:00;新增夜视时段目标:上述前一日的 00:00 和 09:00,两种回看都要采集。仅操作指定设备,不重装、清数据、重置或更改全局配置。逐台执行以下用例,不凭设备型号推断云台能力。
@@ -0,0 +1,41 @@
{
"name": "unicom-zhijia-daily-screenshots",
"version": "1.0.1",
"description": "通过 ARTEMIS 采集联通智家设备截图并按授权方式发送结果。",
"author": {
"name": "hejunxian",
"url": "https://git.playones.com/hejunxian"
},
"homepage": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots",
"repository": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots.git",
"license": "UNKNOWN",
"keywords": [
"android",
"artemis",
"screenshots",
"dingtalk"
],
"skills": "./skills/",
"interface": {
"displayName": "unicom-zhijia-daily-screenshots",
"shortDescription": "采集联通智家截图并按授权方式发送结果。",
"longDescription": "使用 ARTEMIS Flash 采集联通智家设备的直播、通话、云台、告警和回放截图并整理证据。需要 ARTEMIS、artemis-use、Android 模拟器与联通智家 App;钉钉通知需要 DWS 及对应 Skills。创建计划时确认完整配置及通知授权,执行时核实设备与授权范围。",
"developerName": "hejunxian",
"category": "Developer Tools",
"capabilities": [
"Interactive",
"Read",
"Write"
],
"defaultPrompt": [
"使用 unicom-zhijia-daily-screenshots 准备一次截图任务。"
],
"websiteURL": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots",
"privacyPolicyURL": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots",
"termsOfServiceURL": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots",
"brandColor": "#2563EB",
"screenshots": [],
"logo": "./assets/icon.svg",
"composerIcon": "./assets/icon.svg"
}
}
@@ -0,0 +1,9 @@
{
"sourceId": "unicom-zhijia-daily-screenshots",
"repo": "https://git.playones.com/hejunxian/unicom-zhijia-daily-screenshots.git",
"ref": "v1.0.1",
"commit": "9be948fff1d6bb8bfb46f01fc1d26d55ecf8bfc5",
"adapter": "claude-skill",
"sourcePath": ".",
"syncedAt": "2026-11-04T02:00:38Z"
}
@@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
<rect x="5" y="5" width="54" height="54" rx="14" fill="#473349"/>
<rect x="18" y="10" width="28" height="44" rx="6" fill="#ff9877"/>
<rect x="21" y="15" width="22" height="32" rx="2" fill="#fff6ec"/>
<path d="M21 39l6-7 5 4 4-6 7 9v8H21z" fill="#8bd6bd"/>
<circle cx="28" cy="23" r="4" fill="#ffc65a"/>
<path d="M27 12h10" stroke="#473349" stroke-width="2" stroke-linecap="round"/>
<circle cx="32" cy="50.5" r="1.5" fill="#473349"/>
<circle cx="46" cy="43" r="9" fill="#79c9f4"/>
<circle cx="46" cy="43" r="4" fill="#526bdb"/>
</svg>

After

Width:  |  Height:  |  Size: 613 B

@@ -0,0 +1,67 @@
---
name: unicom-zhijia-daily-screenshots
description: 为联通智家 App 的指定设备采集直播、语音通话、条件云台、告警片段及卡回看和云回看截图;下发长稳计划时一次确认,到点按计划执行,结果通过钉钉私聊截图并发文字 DING。也用于维护对应 ARTEMIS 提示词,不用于其他 App 的通用测试。
metadata:
version: "1.0.1"
---
# 联通智家长稳截图
固定应用:联通智家。用户提供的页面图不包含包名;执行前通过已授权的只读应用信息或 ARTEMIS 返回的真实应用信息核实包名,再作为本轮参数填入 `locked_app_package` 和任务提示词。无法可靠核实时向用户确认,不猜包名、不沿用其他 App 的包名。通过已启动的 ARTEMIS 操作用户指定的 Android 模拟器;App 中的摄像头/设备与 Android 模拟器是不同对象。使用已安装的 `artemis-use` Skill 及其单任务执行参考;调用前查看当前 MCP 工具契约。不要重装、清数据、重置设备或修改全局配置。
## 联通智家页面适配
执行前读取 [ARTEMIS 任务提示词](references/artemis-task-prompt.md)。其中的页面锚点来自用户提供的三张截图;[页面参考图](references/ui-screenshots.md)仅供辨认布局,截图里的设备、日期和状态不作为计划参数。目标设备以用户为本计划或单次任务确认的名称为准,不把示例 `中兴ZXHN K757P1E` 固定为默认设备,也不从型号或页面缺少方向盘推断云台能力。
- 直播入口是底部“直播画面”;对讲入口是“语音通话”,不能用“播放录音”代替。
- 告警录像入口是底部“告警片段”;“声光报警”是主动报警操作,不是告警列表入口,本用例不点击。
- 回看入口是底部“监控回看”,再选“卡回看”或“云回看”,以当前选中状态核对存储类型。直播页“云存储回看”卡片不作为两种回看的统一入口,也不据“使用中/未订购”等卡片状态推断录像是否可用。
- 回看播放器下方左侧的日期时间和三角是时间选择入口;展开后有完整日期行及右箭头、“上午/下午”和小时格。12:00 选“下午”,00:00、09:00 选“上午”;日期行是进一步选择目标日期的候选入口,实际弹层必须现场核实。不要硬套移动爱家的日历图标或固定坐标。
- 播放器的 `1.0` 和“视频快放”中的 `8.0` 不作为时间轴缩放证据。回看时间轴的缩放方式、主刻度、云台和通话弹层均以本轮真实界面及 ARTEMIS 能力为准;参考图没有证明这些具体操作。缩放无法完成时记录缺项,继续采集可定位的时段。
## 下发时确认,到点执行
在创建或变更计划时,一次性请用户确认本计划的起止日期、连续天数、每天的具体时间点和时区;模拟器名称及唯一 Android serial;App 内每台设备的名称及有无云台;回看规则;以及本计划内各轮的发送授权(默认方案为钉钉私聊截图给本人,再发应用内文字 DING)。通过对应 Skill 核实钉钉本人身份、组织和发送渠道;如用户指定其他受支持的收件人或方式,按其明确指示确认。历史任务配置只可供新计划参考,不能当作新计划授权。若用户已在当前请求明确给出并确认了完整配置,无需再问一遍;只补齐缺项。单次立即执行也在下发时确认范围、时间与发送授权,明确“执行 1 天、现在执行”即可。
**已确认的计划到点直接执行。** 将用户确认的配置及发送授权写入该计划,适用于其范围内的所有轮次。每次触发读取当前计划,核对计划范围、实际日期、模拟器 serial、App 包名与目标设备,按已确认配置提交 ARTEMIS 并处理结果;无需再问用户或等待回复。设备、云台、收件人或计划范围有未获授权的实质变化时,只暂停受影响的操作并报告;按用户指示确认变更后再更新计划。若原计划的必需配置缺失或目标无法可靠核实,不猜测、不替换目标,报告受阻及原因。
区分计划连续执行天数与每轮回看天数。除非用户另行指定,回看默认取实际执行日期的前一自然日;回溯 N 天时,分别采集前 N 个自然日的 12:00,00:00 和 09:00 仍只采集执行日前一日。三种时刻均须核对页面实际日期。仅在用户明确要求定时且确认完整计划后建立调度;默认使用北京时间(Asia/Shanghai,UTC+08:00)。最后一天的最后一轮结束后停用计划。
## 指定设备单次截图用例
以已确认配置中的联通智家 App 内设备为目标,逐台执行同一组用例。按以下顺序采集,详细操作见任务提示词:
1. **直播及对讲**:直播加载后先保存一张基准截图。点击“语音通话”,核对实际连接/通话状态并截图;使用当前通话界面的挂断/结束控件,核对已挂断并截图。截图验证页面状态,不单凭截图断言双向音频正常。若连接失败或无法确认已挂断,保存提示和现状,记录该项缺失及实际通话状态,然后继续后续可执行用例;不把未知状态说成已挂断。
2. **云台(仅用户确认有此功能时)**:先重新保存一张操作云台前的直播截图;向左转动 1 秒并松开,截图;再向右转动 1 秒并松开,截图。通过 ARTEMIS 的实际受保护操作控制方向、时长及松开;无法执行或核实时如实记录,不用若干次点按冒充 1 秒,也不声称左右等时操作必然恢复原位。用户确认无云台时标记“不适用”。
3. **告警**:点击底部“告警片段”,查看目标设备的告警列表,选择一条可播放的告警,播放后截图并记录该条告警的设备和时间;不点击“声光报警”。无消息、无可播放录像或播放失败时保存列表空态/提示,记录缺项并继续回看。
4. **原有回看**:卡回看和云回看各按下方截图执行流程达到用例约定的全天尺度,选择每个目标回溯日期的 12:00 并截图,默认日期为执行当地时间的前一天。
5. **新增夜视时段截图**:在每种回看中保留原有 12:00 截图后,展开左侧日期时间下拉,通过完整日期行核对并选择执行日期前一日,选择“上午”的 00:00 并截图;再次展开日期时间下拉,核对同一前一日,选择“上午”的 09:00 并截图。两种回看均执行这一顺序,默认回溯 1 天时,12:00、00:00、09:00 均属于同一个前一日。每次切换后重新核对日期、时间、存储类型和缩放;依据实际画面或状态记录夜视表现,不仅凭时刻判定夜视切换成功。无录像或无法选择时保留实际提示,不擅自换成其他日期或时刻。
任何用例受阻、失败、无数据或无法验证时,保存现状和页面提示,逐项记录实际状态、缺项及原因,结束受阻项后继续执行后续可执行用例和其他设备;不因单项受阻停止整台设备或整轮任务。云台无法核实停止时记录状态,不重复方向动作,继续其他可执行用例;对讲状态不明时如实记录,继续后续可执行用例。设备离线、App不可达或ARTEMIS服务不可用等使后续操作实际无法进行时,记录受影响项目及原因,不伪称已执行;不绕过安全校验。当次接受现状不代表以后无数据自动通过。报告各截图真实路径及缺项原因,截图仅记录执行事实,不自行判断长稳是否通过。
这是供 Codex 后续长稳调度的单次用例。每次运行都必须将完整用例及当次设备、日期要求传入 ARTEMIS,由 ARTEMIS 执行全部 App 操作和截图;Codex 负责调度、提交、跟踪、读取与整理 ARTEMIS 证据,并按已确认的发送授权通知结果。不得由 Codex 通过 ADB、电脑操作工具或其他直接控制方式代替 ARTEMIS 执行用例,也不得在 ARTEMIS 不可用或执行失败时切换到 Codex 直接操作;应报告阻塞或失败原因。不自行循环或创建定时任务,只有用户明确要求时才执行对应操作。仅要求整理或修改用例/Skill 时不启动设备任务或发送截图结果通知。
## 截图执行
1. 用 `mobile_workspace` 核对模拟器 serial、队列和在线状态;服务离线按 `artemis-use` 诊断并报告,不自行启动 ARTEMIS 主程序。选择用户确认的目标,单一模拟器上的任务串行。
2. 用 `mobile_run_task` 提交实际任务,设置 `model="Flash"`,并通过单任务 `runtime_overrides={"timeout_seconds":3600}` 设置 1 小时执行超时(不含排队和暂停);指定 `device_serial` 和已核实的联通智家 `locked_app_package`,为每次提交生成唯一 `request_id`。不修改 ARTEMIS 全局配置;其他确需的临时覆盖项合并进同一个 `runtime_overrides`。提交结果不确定时用原 request_id 查询,不能重新生成 ID 重复提交。读取并按当次已核实的包名、设备及云台功能、执行日期、前一日日期、回溯日期、时刻和存储类型填充 [ARTEMIS 任务提示词](references/artemis-task-prompt.md),把完整内容传入任务;根据实际页面识别控件,不假设坐标、登录状态或设备顺序。
当前 Flash 契约没有执行前安全网、持久化计划或 Pro notes;`expected_output_desc` 与 `verification_level` 对 Flash 无效。不得声称已启用这些能力。需要受保护动作的项目,仅在当前 Flash 实际契约提供并能核实所需保护时执行;否则记录缺项并继续其他可执行项目,不用无保护动作代替。通过任务状态、最终 `test_result`、步骤、原生截图及导出报告整理证据,不依赖 Pro notes。
3. 直播、语音通话、条件云台、告警片段及卡回看和云回看按任务提示词执行。时间轴缩放方式须现场识别,不照搬移动爱家的放大镜/减号,也不把 `1.0`、`8.0` 或“视频快放”当作缩放。沿用原用例的 4 小时相邻主刻度作为约定的全天尺度目标;联通智家参考图没有证明该刻度受支持,未达到或无法核实则记“用例尺度未验证”,仍继续可定位的日期时段截图。观察到目标刻度即停止缩小,但不能据此断言控件物理下限或已显示完整 00:00–24:00;物理下限另需明确端点等证据。
短时弹层若存在,优先按当前 `artemis-use` 单任务参考及实际工具契约使用原生 `action_sequence` 的 `ensure_visible` 配合 `click`/`drag`,以本轮观察到的真实 resource_id 和实时可见性检查定位。不能把这种局部检查称作 Flash 的 Pro 执行前安全网;无真实 ID 或无可验证动作时记录限制,不猜 ID、不盲点、不以 ADB 或外部控制代替。最多在重新观察后重试一次;连续两次拦截、目标不明或动作结果不确定就保存现状并停止该项,继续其他截图。核对每轮动作前后的刻度、可见范围和实际时间;日期、12:00/00:00/09:00、设备和存储类型无法同屏显示时保存关联补充证据,无录像不得推断全天无录像。
4. 从 ARTEMIS 实际步骤及截图证据核对页面、设备、对讲状态、云台方向与时长及松开、告警播放状态、回看日期与时刻、缩放与指针;导出实际截图并确认文件存在、可读取,按设备、日期、用例和存储类型整理。每设备每轮预期:直播基准 1 张、对讲 2 张、告警播放 1 张、每个回溯日期的卡存和云存 12:00 各 1 张、执行日期前一日的卡存和云存 00:00/09:00 共 4 张;有云台另加操作前/左转后/右转后 3 张。回溯 D 天时,无云台为 8 + 2D 张,有云台为 11 + 2D 张;默认回溯 1 天分别为 10/13 张,补充证据另计。无云台属不适用;用户确认有云台但不可操作、其他缺项、页面不可达、设备离线、无权限、状态/时长/时间/缩放无法验证都记入逐项结果。`completed` 只是任务结束,不能替代截图证据。实际失败也尽量继续处理其他设备,不能将部分完成报告为全部成功。
## 钉钉通知与结果
每轮执行无论成功、部分完成、失败或阻塞,都在最终处理阶段按已确认的接收人和方式尝试发送结果。结果写明执行时间、设备、目标日期、实际状态、缺项及失败或阻塞原因。用 `dingtalk-chat` 的图片指引私聊发送实际取得的截图,再用 `dingtalk-misc` 的 DING 指引发应用内文字通知,说明图片发送状态;无截图时发送文字结果和原因。`dws ding message send-personal` 没有直接附图参数,以当前契约为准,不把本地路径冒充附件。
发送前核对计划授权范围内的收件人及组织;本人身份通过 `dingtalk-contact` 核实,其他人员按 `dingtalk-aisearch` 和 DING 指引解析。全程使用同一 profile,使用实际取得的 `openDingTalkId`,不猜 ID、不选不明确的同名人员,不读取、输出或保存认证凭据。计划下发时已明确授权的发送无需再征求同意,按工具 Runtime 接受的方式使用该授权。若工具明确要求新的交互确认、认证失效、身份不匹配或没有发送授权,记录通知受阻并报告;已授权且环境可用的截图继续执行。私聊和 DING 各自保留实际回执,投递未知或失败不得说已送达,不擅自换接收人或通道。若用户只接受 DING 内附图且接口不支持,在下发前说明并确认可行方式。
## 定时配置
用宿主的 automation 工具下发已确认的计划。保存完整的计划配置与发送授权,注明调用本 Skill,**到点直接执行,无需等待用户回复**;每轮重新计算执行日期、前一日及回溯日期,并使用 ARTEMIS Flash、单任务执行超时 3600 秒,采集各回溯日 12:00 和前一日 00:00、09:00,按已授权方式通知结果,达到终止条件后停用。提示词不包含密钥。若经用户确认更新已有计划,同时更新其中的执行配置与授权,移除旧的逐轮确认指令。
运行前检查 ARTEMIS 和钉钉可用性。若 ARTEMIS、模拟器或 App 不可用,记录截图受阻原因,并按已授权渠道尝试发送结果;通知通道不可用则记录通知受阻。触发不等于截图已开始,分别报告实际开始时间、截图结果、通知状态及证据位置。若用户只要求创建或修改 Skill,则不启动测试、创建计划或发送结果通知。
严格按用户确认的日期和时间设置,统一使用北京时间(Asia/Shanghai,UTC+08:00),除非用户之后明确改用其他时区;不得擅自改变执行时间。创建或修改计划后,核对调度器实际排定的下一次触发时间,并确认计划最后一天包含在内;检查时区转换及调度器可能加入的随机偏移。不要假设规则中的小时字段一定按当地时区解释,具体行为以当前宿主的实际结果为准。优先使用宿主支持且可核验的精确触发方式;如果无法按指定时间排定或无法核实,应如实告知,不能声称已准确设置。计划触发时间与实际开始时间可能不同,若因电脑、服务或会话状态等原因延迟或未执行,应记录实际情况并报告。
@@ -0,0 +1,3 @@
interface:
display_name: "联通智家长稳截图"
short_description: "采集联通智家直播、通话、云台、告警和卡云回看截图并发送钉钉通知"
@@ -0,0 +1,57 @@
# 联通智家 ARTEMIS 单次截图任务提示词
使用用户在计划下发或单次任务下发时确认的配置。定时触发时按当前计划直接执行,无需再向用户询问或等待回复;实时核实模拟器 serial 与联通智家真实包名,计算目标回看日期,再替换下方全部 `{{…}}` 参数。日期必须展开为具体的 `YYYY-MM-DD`,不要只写“昨天”,也不要把示例设备和截图日期当默认值。通知授权由 Codex 按主 Skill 处理。
将下面代码块完整填入 `mobile_run_task.task_desc`;外层设置 `model="Flash"`、`runtime_overrides={"timeout_seconds":3600}`、`device_serial`、已核实的 `locked_app_package` 及唯一 `request_id`。3600 秒不含排队和暂停。若有其他本轮临时覆盖,合并在同一个 `runtime_overrides`。提交不确定时用原 request_id 反查。下面涉及的 ARTEMIS 原生动作必须以当前工具契约和实际可用能力为准,不凭提示词宣称工具已具备某项保护。
```text
在 Android 模拟器 {{serial}} 的联通智家执行一轮截图用例,真实包名为 {{verified_app_package}}。
目标 App 内设备及下发时逐台确认的云台功能:{{device_names_and_ptz_yes_no}}。
执行时区:{{timezone}};执行日期:{{execution_date_yyyy_mm_dd}}。
原有回溯日期:{{explicit_lookback_date_list}},每个日期各采集 12:00。
夜视时段日期:{{previous_calendar_date_yyyy_mm_dd}},只采集该日 00:00、09:00。
卡回看和云回看都要执行;每种先完成所有回溯日期的 12:00,再完成前一日 00:00→09:00。
只操作指定 App 和设备;不重装、清数据、重置、修改全局配置、购买或开通服务。设备标题用本轮参数核对,不能因示例图显示“中兴ZXHN K757P1E”就改换目标。所有 App 操作和截图均由 ARTEMIS 执行,截图使用 ARTEMIS 原生证据能力。不要用 App 内的“截图/录像”按钮代替任务截图,不执行删除、下载、上传云端或设备分享。钉钉发送由 Codex 在整理证据后处理,不在本 App 任务中跨应用发送。
1. 设备与直播
按当前界面找到并核对目标设备;必要时进入底部“直播画面”。顶部设备标题应与用户指定设备一致。等待实际直播画面加载并保存一张直播基准截图,记录可见设备名、画面时间及加载状态。登录失效、离线、隐私遮挡、黑屏或无法播放时保存提示,不用静止封面冒充已加载的直播。
2. 语音通话
直播页的“语音通话”是对讲入口;“播放录音”、静音图标或“声光报警”都不能代替。点击“语音通话”,依据实际弹层/页面核对连接中、通话中或连接失败等状态并截图。若成功建立通话,使用当前通话界面的挂断/结束控件结束,核对已挂断再截图;不要假设再次点击原入口必然挂断。若权限或连接失败,保存提示和实际状态;未建立连接不能当作已接通后挂断。无法确认是否仍在通话中时如实记录,保存现状并继续后续可执行项目,不反复拨打、不把未知状态说成已挂断。截图只能证明可见状态,不能证明双向音频质量。
3. 条件云台
只有下发配置明确为“有”云台的设备才执行;“无”则标记不适用。返回/保持“直播画面”,先另存操作前截图,再按当前真实控件向左转动 1 秒并松开,核实停止后截图;再向右转动 1 秒并松开,核实停止后截图。用户确认有云台但当前页无控件时,根据实际页面查找入口,找不到就保存现状并记录,不凭型号推断、不把视频拖动或镜像按钮当云台。仅使用当前实际支持且保留所需校验的动作,记录方向、持续时间、松开/停止证据和画面变化。拖动 1000 毫秒不自动证明向左/右持续控制 1 秒;不能用若干次点按冒充 1 秒,也不擅自延长。方向或停止无法核实时结束本项,不重复方向动作,继续其他可执行项目。左右等时动作不证明已恢复原位。
4. 告警片段
进入底部“告警片段”,查看当前目标设备的告警列表,优先选择最近一条可播放录像;核对告警归属、消息时间及播放状态,开始播放后截图。直播页“声光报警”会触发主动报警,本用例不得点击。无消息、无可播放录像、需订购或播放失败时保存列表空态/实际提示并记缺项;不能用别台设备的告警、直播或 AI 场景代替。设备与消息时间无法和播放页同屏时补存关联列表证据。
5. 进入监控回看并核对类型
点击底部“监控回看”,在播放器下方的“云回看/卡回看”分段控件中选定当前目标类型,核对实际选中状态。先完成卡回看,再完成云回看。不要把直播页“云存储回看”卡片作为两种回看的共同入口,不以卡片上的“使用中/未订购”直接判定实际录像可用性。某种类型不可达或需订购时保存其页面与提示,不开通、不购买,继续另一类型。切换类型后重新核对日期、时间与时间轴,不能认为会保留上次位置。
6. 时间轴尺度(每种类型及切换日期后核对)
原用例以相邻主刻度 4 小时作为约定的全天尺度目标。先观察真实时间轴的刻度、可见范围和当前指针;若已达到就停止缩小。参考图只显示时间轴区域与“可放大或缩小进度条查看回看”的提示,没有证明缩放入口、4 小时刻度或物理下限。只根据本轮真实界面识别时间轴缩放方式;不要硬找移动爱家的放大镜/减号,不把视频画面的缩放当作时间轴缩放。播放器的“1.0”和“视频快放/8.0/一键快放”不能用作时间轴缩放或全天范围的证据,本用例不启用快放。
需要展开短时缩放面板时,只有当前原生动作确实支持才使用 action_sequence:以本轮观察到的真实 resource_id 通过 ensure_visible 检查/展开,再执行同组 click 或带可见性条件的 drag;检查实际回执及动作前后刻度。ensure_visible 入口只用于展开界面,不能把业务提交按钮当作 opener,也不能猜资源 ID。Flash 没有 Pro 的执行前安全网、持久计划或 Pro notes;局部原生可见性检查不等于这些能力。没有可验证的安全动作时记录限制,不用无校验连点、过期坐标、ADB shell 或外部控制绕过。
面板消失、目标不唯一或被拦截时重新观察,最多再尝试一次;连续两次拦截、动作回执不确定或页面不符就停止本项缩放并保存现状。未达到/无法读到 4 小时主刻度时记“用例尺度未验证”,继续第 7–8 项可定位的日期时段截图。不能为了缩放反复重开回看、拖错日期或跳过其余用例。缩放成功以实际刻度和可见范围变化为依据;4 小时主刻度不单独证明物理下限或完整 00:00–24:00 均在屏幕内。用户要求物理下限时另需明确端点或其他下限证据,没有就记未验证。
7. 选择日期与整点的通用过程(每个目标时段都执行)
a) 时间选择入口位于回看播放器下方左侧,是形如“11-03 周二 16:59:57”及三角的日期时间行;它不同于顶部设备名下的日期。点击展开;已展开时直接核对内容,不盲点开关以免收起。参考图中展开页有形如“2026-11-03 >”的完整日期行、上午/下午切换、小时格和“取消”。这些是布局示例,不是本轮要选择的值。
b) 先核对完整年月日。日期不符时点击完整日期行或其右箭头,观察实际出现的日期选择器;若出现日历,再按真实控件切换到参数中的目标日期并确认。参考图未展示下一层日期选择器,不假设其按钮、月份或选日手势。不能只看“11-03”就推断年份,也不能把截图日期当目标日期。选择后再次展开/核对完整日期;若当前工具无法确认目标日期,保存现状并记该时段未验证,不能跳过核对凑数。
c) 目标 12:00 选择“下午”及“12:00”;00:00 选择“上午”及“00:00”(若实际显示“0:00”,按真实控件识别);09:00 选择“上午”及“09:00”。先看当前半日的选中状态,仅在需要时切换;不要把上午/下午顺序或文字颜色当作唯一选择证据。小时按钮灰显、不可选、点击无效或出现无录像提示时保存实际状态,不认定操作成功;也不能仅凭灰色就推断该小时或全天无录像。参考图中晚于当时当前时间的小时呈灰色,不将这一状态套用于历史日期。
d) 选择小时后核对弹层是否关闭、目标存储类型及实际回放日期时间。若仍停留在选择器,先确认实际按钮和可见提示,不凭一次点击判成功。等待画面加载或明确失败提示后尽快截图,记录目标整点、实际显示的完整日期时间及是否正常播放。正常播放会使秒数前进,应记录实际秒数;不能用仍在原小时、跳到其他分钟/日期或其他录像段的画面冒充目标整点。不得为了有画面改选邻近小时或其他日期。
e) 最终目标截图优先保留播放器、设备标题、“卡回看/云回看”选中状态、日期时间与时间轴。选择器遮住时间轴或画面变暗时,选择器截图仅作关联补充证据;关闭后另取播放状态截图,不能以遮罩图代替已加载的目标录像。完整年月日无法与播放画面同屏时,补存同一次操作的完整日期选择器证据并关联步骤;以最终播放器时间及关联证据核对,不只证明选择过日期。每次选择后重新核对缩放和指针,不能沿用上一个日期或存储类型的证据。
8. 每种存储类型的固定采集顺序
先依次对参数列明的所有回溯日期执行第 7 项,选择各日“下午 12:00”,加载后截图。然后对参数列明的执行前一自然日执行“展开日期时间→核对完整日期→上午 00:00→加载后截图”;再执行“重新展开日期时间→核对同一完整日期→上午 09:00→加载后截图”。两种存储类型都按这个顺序执行。回溯 D 天只影响各日 12:00 的数量,00:00/09:00 只取执行前一日、不随 D 重复。默认 D=1 时,12:00、00:00、09:00 属于同一个前一自然日。无录像、日期不可选、时间无法定位或加载失败时,保存该目标对应的实际提示并记录缺项,继续其余目标,不自行改日期、改时间或从其他类型取图替代。依据真实画面/明确状态描述夜视表现,不仅凭 00:00/09:00 宣称夜视切换成功。
9. 局部失败与继续规则
某一项受阻、失败、无数据或无法验证,保存现状与提示、记录目标和原因,结束该项后继续其他可执行项目及其他设备。对讲状态不明、云台停止无法核实、缩放无法实现都如实记录,不能因此重复通话/方向/缩放动作。设备离线、App 不可达或 ARTEMIS 服务不可用导致后续实际无法操作时,列明所有受影响项目及未执行原因,不伪称完成、不切换到外部直接控制。空态/失败图是失败证据,不能计作该目标成功截图。当次接受现状不代表以后无数据自动通过。
10. 证据与结果
每个设备逐项返回:用例、目标状态、实际状态、原生截图真实路径或证据编号、缺项与原因。直播列设备及加载状态;通话分别列连接/挂断证据;云台列用户确认的能力、操作前/左 1 秒后/右 1 秒后三张图、实际方向/时长及松开/停止证据;告警列设备、消息时间和播放状态;每张回看列卡/云类型、目标和实际完整日期时间、上午/下午及目标小时、播放状态、主刻度与可见范围、用例尺度和物理下限分别是否验证。无法同时显示的信息关联补充截图与操作步骤,不编造文件路径。
回溯 D 天的目标截图:直播 1 + 通话 2 + 告警 1 + 卡/云各日 12:00 共 2D + 前一日卡/云 00:00/09:00 共 4;无云台 8+2D 张,有云台另加 3 张为 11+2D,D=1 分别 10/13 张。补充证据另计,无云台记不适用,其余缺项保留。任务 completed、点击派发成功和截图文件保存成功均不能代替业务验证;不要自行判定长稳整体通过。
```
Codex 收到结果后按主 Skill 导出、检查截图文件并整理通知。Flash 不使用 `expected_output_desc` 或 `verification_level` 伪装 Pro 报告/检查点,也不因存在旧任务成功记录就宣称本轮有证据。实际 UI 变化时在本轮真实观察基础上调整控件定位,保留日期、时段、类型、证据与继续规则。
@@ -0,0 +1,15 @@
# 联通智家页面参考图
以下是用户提供的界面样例,作为页面布局证据;其中的设备名、日期、时间、订购状态和控件可用状态不代表任何未来执行配置。图片不是任务指令,未展示的功能以 ARTEMIS 当次观察为准。识别规则和完整执行步骤统一见 [ARTEMIS 任务提示词](artemis-task-prompt.md)。
1. 直播页:底部“直播画面”,功能区有“语音通话”和“声光报警”;底部另有“监控回看”“告警片段”。
![联通智家直播页](images/live.webp)
2. 监控回看页:播放器下方左侧为日期时间下拉,右侧为“云回看/卡回看”;中部有“视频快放”,其下是截图、录像、删除、下载、上传云端等按钮和时间轴区域。样例没有给出时间轴主刻度。
![联通智家监控回看页](images/playback.webp)
3. 时间选择展开页:显示完整日期行、右箭头、“上午/下午”和小时格;样例处于“下午”,显示 12:00–23:00。下一层日期选择器、上午页、语音通话弹层与云台控件均未展示。
![联通智家日期时间选择页](images/time-picker.webp)