Agent skill

Pipeline Guide

by MaaEnd in MaaEnd/MaaEnd

MaaEnd Pipeline JSON 编写指南。基于 MaaFramework Pipeline 协议,提供节点命名、识别算法、动作类型、流程控制、可复用节点等编码规范与模式参考。在编写、修改或审查 Pipeline JSON、设计节点流程、使用 TemplateMatch/OCR/Custom 识别或 Click/Swipe 动作时使用。

AGPL-3.0Auto-check passedMobile

Install Pipeline Guide

skills CLI
$ npx skills add MaaEnd/MaaEnd --skill pipeline-guide -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install MaaEnd/MaaEnd pipeline-guide --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/pipeline-guide .claude/skills/pipeline-guide && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
pipeline-guide
GitHub stars
4k
Token cost
~1.9k tokens
SKILL.md length
264 words
Files
2
Skills in repo
14
Repo updated
First seen
Licence
AGPL-3.0

At a glance

MaaEnd Pipeline JSON 编写指南。基于 MaaFramework Pipeline 协议,提供节点命名、识别算法、动作类型、流程控制、可复用节点等编码规范与模式参考。在编写、修改或审查 Pipeline JSON、设计节点流程、使用 TemplateMatch/OCR/Custom 识别或 Click/Swipe 动作时使用。

  • Works in 5 steps: 状态驱动:遵循"识别 → 操作 →… → 高命中率:扩充 next 列表,覆盖当前操作后所有可能画面,力争一次截图命中。 → 避免硬延迟:尽量不用 pre_delay / post_delay /… → …
  • Mobile work in your project
  • SKILL.md covers 核心原则, 节点命名, Pipeline v2 格式(推荐) and 常用识别算法, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Pipeline Guide is an agent skill from MaaEnd/MaaEnd. MaaEnd Pipeline JSON 编写指南。基于 MaaFramework Pipeline 协议,提供节点命名、识别算法、动作类型、流程控制、可复用节点等编码规范与模式参考。在编写、修改或审查 Pipeline JSON、设计节点流程、使用 TemplateMatch/OCR/Custom 识别或 Click/Swipe 动作时使用。

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `field-reference.md`).

It sits in Mobile. The repository describes itself as: MaaEnd 终末地小助手:基于视觉 AI 的「明日方舟:终末地」自动化工具. The licence is AGPL-3.0.

When your agent uses it

  • Mobile work in your project

Example prompts

  • “/pipeline-guide”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. 状态驱动:遵循"识别 → 操作 → 识别"循环。每次操作必须基于识别结果,禁止假设操作后画面状态。
  2. 高命中率:扩充 next 列表,覆盖当前操作后所有可能画面,力争一次截图命中。
  3. 避免硬延迟:尽量不用 pre_delay / post_delay / timeout,优先通过增加中间识别节点解决;只在必须等画面稳定时才用 pre_wait_freezes / post_wait_freezes。当确实不需要延迟时,要在节点上显式将 rate_limit…
  4. 720p 基准:所有坐标、ROI、图片必须基于 1280×720。
  5. 格式化:JSON 遵循 .prettierrc(4 空格缩进,数组元素换行)。

What it can do on your machine

Read from SKILL.md and the folder at commit f47207b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are jsonc).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Pipeline Guide loads about 1.9k tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 264 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~47
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from MaaEnd/MaaEnd at commit f47207b, republished under its AGPL-3.0 licence (© MaaEnd). 264 words, ~1,869 tokens.

Download SKILL.mdSave it as .claude/skills/pipeline-guide/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
pipeline-guide
description
MaaEnd Pipeline JSON 编写指南。基于 MaaFramework Pipeline 协议,提供节点命名、识别算法、动作类型、流程控制、可复用节点等编码规范与模式参考。在编写、修改或审查 Pipeline JSON、设计节点流程、使用 TemplateMatch/OCR/Custom 识别或 Click/Swipe 动作时使用。

MaaEnd Pipeline 编写指南

核心原则

  1. 状态驱动:遵循"识别 → 操作 → 识别"循环。每次操作必须基于识别结果,禁止假设操作后画面状态。
  2. 高命中率:扩充 next 列表,覆盖当前操作后所有可能画面,力争一次截图命中。
  3. 避免硬延迟:尽量不用 pre_delay / post_delay / timeout,优先通过增加中间识别节点解决;只在必须等画面稳定时才用 pre_wait_freezes / post_wait_freezes。当确实不需要延迟时,要在节点上显式将 rate_limit / pre_delay / post_delay 设为 0(协议默认 rate_limit=1000ms、pre_delay/post_delay=200ms,省略字段会引入隐式等待;仓库的 tools/add_node_defaults.py 会为 Common 节点补齐这些 0 值字段)。
  4. 720p 基准:所有坐标、ROI、图片必须基于 1280×720。
  5. 格式化:JSON 遵循 .prettierrc(4 空格缩进,数组元素换行)。

节点命名

  • 使用 PascalCase,同一任务内节点以任务名/模块名为前缀。
  • 内部实现节点以 __ 开头(如 __ScenePrivateXXX),不对外暴露。
  • 示例:ResellMain、DailyProtocolPassInMenu、RealTimeAutoFightEntry。

Pipeline v2 格式(推荐)

MaaEnd 使用 v2 格式,recognition 和 action 放入二级字典:

jsonc
{
    "MyNode": {
        "recognition": {
            "type": "TemplateMatch",
            "param": {
                "template": "MyTask/button.png",
                "roi": [100, 200, 300, 100],
                "threshold": 0.7,
            },
        },
        "action": {
            "type": "Click",
        },
        "next": ["NextNode"],
    },
}

常用识别算法

TemplateMatch(找图)
jsonc
"recognition": {
    "type": "TemplateMatch",
    "param": {
        "template": "path/to/image.png",  // 相对 image 文件夹
        "roi": [x, y, w, h],              // 720p 坐标,缩小搜索范围
        "threshold": 0.7                   // 默认 0.7,按需调整
    }
}
  • 图片必须从无损原图裁剪并缩放到 720p。
  • green_mask: true 可遮蔽不参与匹配的区域(用 RGB(0,255,0) 涂色)。
OCR(文字识别)
jsonc
"recognition": {
    "type": "OCR",
    "param": {
        "roi": [x, y, w, h],
        "expected": ["完整文本"]
    }
}
  • expected 必须写完整文本,不要写片段。多语言由 tools/i18n 自动展开。
  • 仅当 OCR 引擎对完整文本识别不稳定(如包含易误识字符、夹杂特殊符号),确需用片段或手写正则才能稳定命中时,才允许在 expected 中写截断/正则;此时必须:
    1. 在 expected 数组内加 // @i18n-skip,让 i18n 工具跳过该节点;
    2. 在数组上方用普通 JSON 注释保留完整原文,便于后续审查、多语言对照和恢复完整匹配。
jsonc
// OCR 引擎对 "稳定生产 100%" 中的百分号识别不稳定,截断匹配
"expected": [
    // "稳定生产 100%"
    // @i18n-skip
    "稳定生产"
]
ColorMatch(找色)
jsonc
"recognition": {
    "type": "ColorMatch",
    "param": {
        "roi": [x, y, w, h],
        "method": 40,                     // HSV 空间(推荐)
        "lower": [h_low, s_low, v_low],
        "upper": [h_high, s_high, v_high],
        "count": 100
    }
}
  • 优先使用 HSV(method: 40)或灰度(method: 6),避免 RGB 直接匹配(不同显卡渲染差异)。
And / Or(组合识别)
jsonc
// And:全部子识别都成功才算命中
"recognition": {
    "type": "And",
    "param": {
        "all_of": ["NodeA", "NodeB"],  // 可引用节点名或内联 object
        "box_index": 0
    }
}

// Or:任一子识别成功即命中
"recognition": {
    "type": "Or",
    "param": {
        "any_of": ["NodeA", "NodeB"]
    }
}
Custom(自定义识别)

调用 go-service 注册的自定义识别器:

jsonc
"recognition": {
    "type": "Custom",
    "param": {
        "custom_recognition": "ExpressionRecognition",
        "custom_recognition_param": {
            "expression": "{CreditOCR}<300"
        }
    }
}

常用动作类型

动作用途关键字段
Click点击target, target_offset
LongPress长按target, duration
Swipe滑动begin, end, duration
Scroll滚轮(仅Win32)target, dx, dy
ClickKey按键key(虚拟键码)
InputText输入文本input_text
StartApp / StopApp启停应用package
StopTask停止当前任务链无
Custom自定义动作custom_action, custom_action_param
DoNothing不执行(默认)无

target 支持:true(当前识别结果)、节点名字符串、[x, y]、[x, y, w, h]。

流程控制

next 列表

按序识别,首个命中的节点执行其 action 后成为当前节点。next 为空或全部超时则任务结束。

on_error

识别超时或动作失败时执行的节点列表。

Node Attributes(节点属性)

[JumpBack]:命中后执行完该节点链,自动返回父节点继续识别 next。适用于处理弹窗、加载等中断场景。

jsonc
"next": [
    "BusinessNode",
    "[JumpBack]HandlePopup",
    "[JumpBack]WaitLoading"
]

[Anchor]:动态引用锚点,运行时解析为最后设置该锚点的节点。

等待画面稳定

只在必须时使用 pre_wait_freezes / post_wait_freezes 等待画面静止,不要为了执行稳定而使用延迟:

jsonc
"post_wait_freezes": {
    "time": 200,
    "target": [0, 0, 0, 0]  // 全屏
}

避免对同一按钮重复点击——第二次点击可能作用于下一界面的其他元素。

max_hit

限制节点最大命中次数,超过后自动跳过:

jsonc
"max_hit": 3

可复用节点

编写前先检查是否已有可复用节点,避免重复造轮子。

通用按钮(Common/Button/)
节点说明
WhiteConfirmButtonType1白底圆环确认
WhiteConfirmButtonType2白底对号确认
YellowConfirmButtonType1黄底圆环确认
YellowConfirmButtonType2黄底对号确认
CancelButton白底 X 取消
CloseButtonType1右上角 X(不兼容 ESC 菜单)
CloseButtonType2右上角 X(兼容 ESC 菜单,推荐)
TeleportButton地图右下角传送
QuickTeleportButton地图「前往传送」
CloseRewardsButton奖励界面对号关闭
SceneManager(万能跳转)

从任意界面自动导航到目标场景。仅使用 Interface/ 下的接口节点,禁止引用 __ScenePrivate* 内部节点。

jsonc
"next": [
    "MyBusinessNode",
    "[JumpBack]SceneAnyEnterWorld"
]

常用接口:SceneAnyEnterWorld、SceneEnterMapAny、SceneEnterWorldFactory、SceneDialogConfirm、SceneWaitLoadingExit 等。详见 docs/zh_cn/developers/scene-manager.md。

Custom 节点
  • SubTask:顺序执行子任务列表。
  • ClearHitCount:清除节点命中计数。
  • ExpressionRecognition:计算布尔表达式。
  • 详见 docs/zh_cn/developers/custom.md。

典型模式

带弹窗处理的任务入口
jsonc
{
    "MyTaskEntry": {
        "next": [
            "MyTaskMainStep",
            "[JumpBack]SceneDialogConfirm",
            "[JumpBack]SceneWaitLoadingExit",
            "[JumpBack]SceneAnyEnterWorld",
        ],
    },
}
确认后验证画面变化
jsonc
{
    "ClickConfirm": {
        "recognition": { "type": "TemplateMatch", "param": { "template": "confirm.png", "roi": [...] } },
        "action": { "type": "Click" },
        "post_wait_freezes": { "time": 200, "target": [0, 0, 0, 0] },
        "next": ["VerifyNextScreen", "[JumpBack]ClickConfirm"]
    }
}
And 组合识别(背景 + 图标)
jsonc
{
    "MyButton": {
        "recognition": {
            "type": "And",
            "param": {
                "all_of": ["ButtonBackground", "ButtonIcon"],
                "box_index": 0,
            },
        },
        "action": {"type": "Click"},
    },
}

审查清单

  • 字段名拼写正确、类型合法(核对 Pipeline 协议)
  • 无不必要的 pre_delay / post_delay / timeout
  • next 列表覆盖所有可能画面,含弹窗/加载/异常
  • 每次点击后有识别验证,不假设操作后状态
  • ROI / target 坐标基于 1280×720
  • JSON 格式化符合 .prettierrc
  • locales/ 已添加新增任务的多语言文本
  • OCR expected 默认写完整文本;确需截断时已加 // @i18n-skip,且在数组上方注释保留完整原文
  • 优先通过中间节点避免重复点击,只在必须时用 post_wait_freezes
  • 未引用 __ScenePrivate* 内部节点

参考

  • Pipeline 协议完整规范:PipelineProtocol
  • 通用按钮文档:docs/zh_cn/developers/common-buttons.md
  • SceneManager 文档:docs/zh_cn/developers/scene-manager.md
  • Custom 节点文档:docs/zh_cn/developers/custom.md
  • 开发手册:docs/zh_cn/developers/README.md
  • 节点测试:docs/zh_cn/developers/node-testing.md

© MaaEnd, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/pipeline-guide of MaaEnd/MaaEnd.

  • SKILL.md
  • field-reference.md

Open the folder on GitHubat commit f47207b

Compare with similar skills

Pipeline Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Pipeline Guide compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Pipeline Guide this skillMaaEnd/MaaEnd4k—~1.9kAutomated safety check: PassAGPL-3.0
React Native Best Practicesvercel-labs/openreview1.7k17 repos~1.1kAutomated safety check: PassMIT
Swiftui Protwostraws/SwiftUI-Agent-Skill5.1k2 repos~1.5kAutomated safety check: PassMIT
Kortix Brandkortix-ai/suna20k—~4kAutomated safety check: PassCustom licence
Ip As LogoKartikLabhshetwar/better-shot2.4k1 repos~4.3kAutomated safety check: PassMIT
Compose Multiplatform Patternsmonta-app/ocpp-emulator1805 repos~2kAutomated safety check: PassApache-2.0

Similar skills

  • React Native Best Practices

    vercel-labs/openreview

    Official

    A prioritized rule set for React Native and Expo apps covering list performance, animation, navigation, UI patterns, state, rendering, monorepos and configuration.

    1.7k GitHub starsUsed in 17 repos~1.1k tokens
    MobileAuto-check passed
  • Swiftui Pro

    twostraws/SwiftUI-Agent-Skill

    Comprehensively reviews SwiftUI code for best practices on modern APIs, maintainability, and performance.

    5.1k GitHub starsUsed in 2 repos~1.5k tokens
    MobileAuto-check passed
  • Kortix Brand

    kortix-ai/suna

    Load FIRST for anything that carries the Kortix look or voice: product or mobile UI, copy of any kind, decks, social, images, email, CLI output, anything with the logo, and reviews of these.

    20k GitHub stars~4k tokensUpdated today
    MobileAuto-check passed
  • Ip As Logo

    KartikLabhshetwar/better-shot

    Generate extremely simple, cute, personified square character images with rounded heavy forms, two purposeful character colors, one solid background color, and a dominant lower-corner composition.

    2.4k GitHub starsUsed in 1 repo~4.3k tokens
    MobileAuto-check passed
  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    180 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed
  • Aso Appstore Screenshots

    adamlyttleapps/claude-skill-aso-appstore-screenshots

    Generate high-converting App Store screenshots by analyzing your app's codebase, discovering core benefits, and creating ASO-optimized screenshot images using Nano Banana Pro.

    1.8k GitHub starsUsed in 1 repo~9.6k tokens
    MobileAuto-check passed

More from MaaEnd/MaaEnd

All 14 skills in this repo
  • Maa Logging

    MaaEnd/MaaEnd

    MaaFramework 日志宏用法指南,适用于 MaaEnd cpp-algo。Use when writing logging code, using LogInfo/LogError/LogWarn/LogDebug/LogTrace, outputting containers or custom types to logs, or when the user asks about…

    4k GitHub stars~807 tokensUpdated yesterday
    Auto-check passed
  • Maaend Test Image

    MaaEnd/MaaEnd

    为 MaaEnd 添加、导入或补充节点识别测试截图,并按仓库约定脱敏图片、放入 tests/MaaEndTestset、维护 tests//test.json 和运行 pnpm check/pnpm test 验证。用户提到“添加测试图片/截图”“把截图加入 ADB 或 Win32 测试集”“给节点补正例或反例”“更新 hits/box”“UID…

    4k GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Meojson

    MaaEnd/MaaEnd

    Guide for using the meojson C++ JSON library in MaaEnd cpp-algo.

    4k GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • 新增或改写 MaaEnd 的 AutoCollect 自动采集路线说明。默认包含路线文件创建、AutoCollect 主入口接线、任务选项注册和多语言文案补充。适用于“参考现有 AutoCollect 路线新建一条采集线”“给定传送点与路径点位生成 AutoCollectRouteX.json 并注册到任务中”“用户已经写好路线文件,只需要补注册接口”等场景。注意:本 skill 仅适用于参考…

    4k GitHub stars~3.2k tokensUpdated yesterday
    Auto-check passed
  • 仅分析 AutoStockStapleMain 的 MaaEnd 日志。用于还原该任务实际购买了什么、购买所对应的证据、逐步剩余账单(券/账单)数值时间线,以及在 pipeline 或 go-service 中应当加日志/埋点的位置。适用于用户询问 AutoStockStapleMain、AutoStockStaple、武陵/四号谷地的稳定需求物资购买,或该任务内账单数值变化原因等场景。

    4k GitHub stars~2.8k tokensUpdated yesterday
    Auto-check passed
  • Cpp Algo Style

    MaaEnd/MaaEnd

    MaaEnd cpp-algo C++ 编码风格与工程规范指南。参考 MaaFramework 的优秀实践,规范命名、头文件、公共工具、错误处理、日志、CMake 等方面。在编写、修改或审查 agent/cpp-algo/ 下的 C++ 代码时使用。

    4k GitHub stars~2.3k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Pipeline Guide

What does Pipeline Guide do?

MaaEnd Pipeline JSON 编写指南。基于 MaaFramework Pipeline 协议,提供节点命名、识别算法、动作类型、流程控制、可复用节点等编码规范与模式参考。在编写、修改或审查 Pipeline JSON、设计节点流程、使用 TemplateMatch/OCR/Custom 识别或 Click/Swipe 动作时使用。. Pipeline Guide is an agent skill from MaaEnd/MaaEnd.

When should I use Pipeline Guide?

Pipeline Guide fits situations like: mobile work in your project.

How do I install Pipeline Guide in Claude Code?

Run `npx skills add MaaEnd/MaaEnd --skill pipeline-guide -a claude-code`. Or copy the skill folder (.agents/skills/pipeline-guide in MaaEnd/MaaEnd) into .claude/skills/pipeline-guide in your project. Claude Code loads it when a task matches its description.

How do I install Pipeline Guide in Codex?

Run `npx skills add MaaEnd/MaaEnd --skill pipeline-guide -a codex`. Or copy the skill folder (.agents/skills/pipeline-guide in MaaEnd/MaaEnd) into .agents/skills/pipeline-guide in your project. Codex loads it when a task matches its description.

Can I use Pipeline Guide in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add MaaEnd/MaaEnd --skill pipeline-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pipeline-guide, .gemini/skills/pipeline-guide, .github/skills/pipeline-guide and .opencode/skills/pipeline-guide in your project.

What does Pipeline Guide need to run?

SKILL.md names no scripts, command-line tools or credentials: Pipeline Guide is instructions for the agent only.

Does Pipeline Guide access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Pipeline Guide safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Pipeline Guide use?

Pipeline Guide is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Pipeline Guide use?

About 1.9k tokens (SKILL.md is roughly 7.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Pipeline Guide?

Skills that share tags, products or a category with Pipeline Guide: React Native Best Practices (vercel-labs/openreview, 1.7k stars), Swiftui Pro (twostraws/SwiftUI-Agent-Skill, 5.1k stars), Kortix Brand (kortix-ai/suna, 20k stars) and Ip As Logo (KartikLabhshetwar/better-shot, 2.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Pipeline Guide?

MaaEnd (a GitHub organization) maintains it in MaaEnd/MaaEnd, which has 3,991 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 7, 2026.

Source: MaaEnd/MaaEnd on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.