Skip to main content

pipeline-debug

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

الانتقال إلى التثبيت

معلومات المصدر

المستودع
1204244136/MDA
آخر نشاط في المصدر
٣ يونيو ٢٠٢٦ في ١٠:١٤
لغة SKILL.md المكتشفة
الصينية
النجوم
١١٤
التفرعات
٣٢

خيارات التثبيت

يُحدَّد 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