Release mobile-aijia-daily-screenshots v1.0.1

This commit is contained in:
hejunxian committed 2026-11-04 09:48:13 +08:00
1 parent 2bd2ba3398
commit 5d33155567
3 files changed
+28 -29

No files matched your search

+15 -16
View File
@@ -1,26 +1,25 @@
# 行研长稳截图 v1.0.0
# 移动爱家长稳截图 v1.0.1
首次发布 `mobile-aijia-daily-screenshots`,适用于移动爱家 App(`com.cmri.universalapp`)。
`mobile-aijia-daily-screenshots` 用于通过 ARTEMIS 采集移动爱家 App 的指定设备截图,整理实际证据,并按用户确认的授权发送钉钉结果。固定包名为 `com.cmri.universalapp`。
## 功能
## 1.0.1 更新
- 通过 ARTEMIS Flash 采集直播基准、对讲连接与挂断、条件云台、告警播放截图。
- 卡存和云存回看支持各回溯日期的 12:00,以及执行日期前一自然日的 00:00、09:00。
- 按设备、日期、用例与存储类型整理实际证据,逐项记录失败、无数据及无法验证的状态。
- 每轮先取得用户对执行天数、日期时间、设备、逐台云台能力及通知方式的答复;结果可通过钉钉私聊图片和文字 DING 发送。
- 支持用户明确确认的每日计划,默认使用北京时间(Asia/Shanghai,UTC+08:00)。每次计划触发后仍须取得本轮人工答复。
- 在下发或变更计划时一次确认日期范围、连续天数、每日时间、模拟器 serial、设备、云台能力、回看规则和通知授权;已确认的计划到点直接执行,无需逐轮等待用户回复。
- 保存计划范围内的配置与通知授权;配置缺失、目标无法核实或需实质变更时,记录原因并暂停受影响操作。
- 默认使用北京时间(Asia/Shanghai,UTC+08:00),严格保持用户指定时间;创建或修改计划后核对实际下一次触发及最后一天,分别报告触发时间和实际开始时间,无法精确设置或核验时如实说明。
- ARTEMIS 任务提示词同步使用已确认的计划或单次任务配置。
## 运行条件
## 功能与运行条件
- 已启动并可访问的 ARTEMIS、可唯一对应的 Android 模拟器,以及移动爱家 App。
- 已安装的 `artemis-use` Skill 和当前工具契约;任务使用 Flash,单任务执行超时为 3600 秒。
- 如需通知,须具备可用且已认证的 DWS CLI 及对应钉钉 Skills;如需每日计划,须有可用的宿主调度工具。
- 本包只分发 Skill 和任务提示词,不附带 ARTEMIS、App、DWS、凭据或调度器。
- 采集直播、通话连接与挂断、条件云台、告警播放,以及卡回看和云回看截图;逐项保留失败、无数据和无法验证的证据,继续其余可执行项目。
- 回溯 D 天时,卡/云各采集每个回溯日 12:00;00:00、09:00 仅取执行前一自然日。无云台预期 8+2D 张,有云台 11+2D 张,补充证据另计。
- 运行需要已启动并可用的 ARTEMIS、目标 Android 模拟器、已登录的移动爱家 App、`artemis-use` Skill 和当前工具契约。使用 Flash,单任务执行超时 3600 秒。
- 通知需要可用且已认证的 DWS CLI 和对应钉钉 Skills;定时计划需要可用的宿主调度工具。包含完整 ARTEMIS 任务提示词。
## 安装
解压 `mobile-aijia-daily-screenshots-1.0.0.zip`,将其中整个 `mobile-aijia-daily-screenshots` 文件夹放入 `$CODEX_HOME/skills`;未设置 `CODEX_HOME` 时使用 `~/.codex/skills`。确认 `SKILL.md` 直接位于该文件夹内。已有同名 Skill 时先在技能目录之外备份旧版本,再替换。重新加载技能或新开会话后,用 `$mobile-aijia-daily-screenshots` 调用。
解压 `mobile-aijia-daily-screenshots-1.0.1.zip`,将其中整个 `mobile-aijia-daily-screenshots` 文件夹放入 `$CODEX_HOME/skills`;未设置 `CODEX_HOME` 时使用 `~/.codex/skills`。`SKILL.md` 应直接位于该文件夹内。替换已有版本前,先在技能目录之外备份旧版本。重新加载技能或新开会话后,用 `$mobile-aijia-daily-screenshots` 调用。
## 本次验证
## 验证范围
已执行 Skill 基础校验,检查 YAML、相对引用、版本信息、归档完整性及逐文件 SHA-256。保留原有截图执行流程,在 Skill 元数据中增加 `version: "1.0.0"`,发布包统一使用 UTF-8、LF 换行及单个文件末尾换行。未启动设备测试、创建每日计划或发送钉钉通知;本次打包不构成设备功能或长稳通过的证明。
本次仅发布 Skill,校验基础格式、YAML、版本、相对引用、PNG 可读取性(如有)、ZIP 完整性和逐文件 SHA-256。发布文本采用 UTF-8、LF 换行,正文及资源保持已安装内容。本次未运行设备测试;发布结果不构成设备功能或长稳通过的证明。
+12 -12
View File
@@ -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 -1
View File
@@ -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,两种回看都要采集。仅操作指定设备,不重装、清数据、重置或更改全局配置。逐台执行以下用例,不凭设备型号推断云台能力。