Skip to main content

pipeline-debug

调试和优化 MaaFramework Pipeline JSON。用于对照 schema 验证配置,检测缺失引用、循环依赖、孤立节点、命名与行为不匹配、ROI/阈值问题,并给出可靠性、性能和可维护性改进建议。触发词包括 debug pipeline、validate pipeline、optimize pipeline、pipeline error。

跳到安装

来源信息

仓库
1204244136/MDA
最近来源活动
2026年6月3日 10:14
检测到的 SKILL.md 语言
中文
星标
114
分支
32

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
5 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
pipeline-debug
description
调试和优化 MaaFramework Pipeline JSON。用于对照 schema 验证配置,检测缺失引用、循环依赖、孤立节点、命名与行为不匹配、ROI/阈值问题,并给出可靠性、性能和可维护性改进建议。触发词包括 debug pipeline、validate pipeline、optimize pipeline、pipeline error。
license
MIT
compatibility
Designed for Claude Code
allowed-tools
Read Grep Glob
# MaaFramework Pipeline 调试 ## 功能说明 - 对照 `tools/schema/pipeline.schema.json` 及相关 schema 验证 Pipeline JSON。 - 检测结构性问题:缺失引用、循环依赖、孤立节点、意外终止。 - 通过命名规范分析节点角色,从节点名推断其预期行为。 - 检测命名与代码不匹配,例如 `Click` 节点没有动作,`Visible` 节点却执行点击。 - 提供性能、可靠性和可维护性优化建议。 - 必要时生成修正后的 Pipeline 片段,可以增删节点以实现正确行为。 ## 使用场景 - Pipeline JSON 运行不符合预期。 - 部署前验证 Pipeline 配置。 - 排查节点跳转、识别失败、重复点击、误点、卡死。 - 优化 ROI、阈值、流程结构或异常处理。 - 根据节点名理解流程语义,检查命名是否与实际识别/动作一致。 ## 工作流程 ### 1. 读取规范文件 优先读取当前项目中的 schema: 1. `tools/schema/pipeline.schema.json` 2. `tools/schema/interface_import.schema.json` 3. `tools/schema/interface.schema.json` 4. `tools/schema/custom.recognition.schema.json` 5. `tools/schema/custom.action.schema.json` 如果项目缺少某个 schema,说明缺失项并继续基于 MaaFramework 通用协议分析。 ### 2. 分析 Pipeline 片段 1. 解析 JSON,列出所有节点。 2. 提取关键字段:`recognition`、`action`、`enabled`、`next`、`interrupt`、`sub`、`on_error`、`timeout`、`max_hit`。 3. 构建节点图:父节点到子节点、反向引用、入口节点、终止节点。 4. 区分 v1 简写字段和 v2 `{type, param}` 字段。 ### 3. 对照 schema 验证 逐节点检查: - 必需字段是否齐全。 - 字段类型是否匹配。 - 枚举值、数值范围、字符串模式是否合法。 - 识别类型及参数是否正确。 - 动作类型及参数是否正确。 - Custom 节点名和参数是否可能与 agent 注册不一致。 ### 4. 通过命名分析节点语义 使用 [Pipeline 节点命名规范](references/pipeline-node-naming.md) 理解节点角色: - `<Domain>Main`:入口节点。 - `<Domain><Subtask>Flow`:流程编排节点。 - `<Domain>Enter<Page>`:进入页面或功能。 - `<Domain>On<Page>Page` / `<Domain><Object>Visible`:页面或 UI 状态检测。 - `<Domain>Click<Object>` / `Select` / `Claim` / `Purchase`:动作节点。 - `<Domain>Confirm<Object>`:确认弹窗或确认操作。 - `<Domain><Page>Entered`:进入成功哨兵节点。 - `<Domain>End` / `EndTask`:终止节点。 重点检查命名与行为不匹配: - `Click<Object>` 但没有 `action: Click` 或等价动作。 - `Visible` / `On<Page>Page` 却执行点击。 - `Flow` 节点包含具体识别或动作。 - `Enter<Page>` 点击后没有成功哨兵或重试/异常处理。 - `Detected` 暴露底层识别实现,而 `Visible` / `Available` / `Selected` 更符合业务语义。 ### 5. 分析节点关系 - 所有 `next[]`、`interrupt[]`、`sub[]`、`on_error[]` 目标都必须存在。 - 识别循环是否有退出条件、`max_hit`、`timeout` 或明确终止节点。 - 找出无法从入口到达的孤立节点。 - 找出没有 `next` 且不像终止节点的死胡同。 - 检查 `[JumpBack]`、`[Anchor]` 等节点属性是否用于合适场景。 ### 6. 识别常见问题 详见 [调试规则参考](references/debug-rules.md)。快速检查: - 缺少识别或识别类型错误。 - TemplateMatch 缺模板、OCR 缺 expected、ColorMatch 缺 lower/upper。 - ROI 过大、阈值过低或过高。 - 点击后没有验证下一画面。 - 重复点击同一按钮,可能误点到下一页元素。 - `enabled` 默认值与 Project Interface 选项语义不一致。 ### 7. 生成优化建议 建议按优先级输出: 1. 正确性问题:会导致执行失败、误点、卡死。 2. 可靠性问题:弹窗、加载、动画、网络波动下容易失败。 3. 性能问题:全屏识别、大模板、高频 OCR。 4. 可维护性问题:命名不清、过度拆分、重复节点、缺少 desc。 ### 8. 提供修正方案 如发现问题,给出修正后的 JSON 片段,并说明每处改动原因。响应格式见 [输出格式](references/output-format.md)。 ## 注意事项 - v1 简写和 v2 object 格式可能共存,应按项目现状判断,不要强行重写无关节点。 - 无 `next` 的节点可以是合法终止节点,但必须符合流程语义。 - `enabled` 默认为 true,只有显式 `false` 才默认关闭。 - `interrupt` / `sub` / `on_error` 的语义依项目使用习惯和 MaaFramework 版本而定,先查 schema 和现有模式。 - 模板路径通常相对 image/resource 图片目录,具体以当前项目约定为准。 - OCR `expected` 可能支持正则;是否自动 i18n 取决于当前项目工具链。 - 输出问题时优先给高置信度结论;不确定项标为“需要运行日志或截图验证”。 ## 参考资料 - [Pipeline 节点命名规范](references/pipeline-node-naming.md) - [调试规则](references/debug-rules.md) - [常见模式](references/common-patterns.md) - [输出格式](references/output-format.md) - MaaFramework Pipeline Protocol:<https://github.com/MaaXYZ/MaaFramework/blob/main/docs/en_us/3.1-PipelineProtocol.md>
在 GitHub 查看