maa-pipeline-guide

maa-pipeline-guide is a skill for Claude Code, Codex from KhazixW2/Everything-Maa. It costs 80 tokens per session (5,828 once invoked), scanned A, original, MIT.

A coding guide for MaaFramework Pipeline JSON, a format for describing automated screen interactions. It covers how to recognize screen states, perform actions such as clicks and swipes, wait for changes, and structure reusable steps.

In plain words
What is it for?
Use it to write, modify, or review pipelines that use OCR, image matching, custom recognition, clicks, swipes, and controlled navigation through app screens.
Why use it?
It reduces automation errors caused by assuming what the screen looks like after an action. It also provides conventions for consistent coordinates, timing, naming, and reuse.

Skill for Claude CodeCodex

Written for Claude Code and Codex: shipped in a Claude Code plugin, but also agents/openai.yaml present. Also seen: $skill-name invocation.

Part of the everything-maa plugin — 14 skills, 3 MCP servers shipped together

Good fit Use it to write, modify, or review pipelines that use OCR, image matching, custom recognition, clicks, swipes, and controlled navigation through app screens.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/khazixw2/everything-maa/maa-pipeline-guide
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add KhazixW2/Everything-Maa --skill maa-pipeline-guide
Clone the repo
git clone --depth 1 https://github.com/KhazixW2/Everything-Maa

Made for: Claude Code, Codex.

Or install everything-maa, the plugin that ships this one along with the rest of its 14 skills, 3 MCP servers.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for maa-pipeline-guide

README.md
[![agentmods](https://agentmods.dev/badge/skills/khazixw2/everything-maa/maa-pipeline-guide/github.svg)](https://agentmods.dev/skills/khazixw2/everything-maa/maa-pipeline-guide)
Your own site
<a href="https://agentmods.dev/skills/khazixw2/everything-maa/maa-pipeline-guide"><img src="https://agentmods.dev/badge/skills/khazixw2/everything-maa/maa-pipeline-guide/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for maa-pipeline-guide

Your own site · 80×15
<a href="https://agentmods.dev/skills/khazixw2/everything-maa/maa-pipeline-guide"><img src="https://agentmods.dev/badge/skills/khazixw2/everything-maa/maa-pipeline-guide.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 80 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,828 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00080 $0.05828
Opus 5 $0.00040 $0.02914
Sonnet 5 $0.00016 $0.01166
Haiku 4.5 $0.00008 $0.00583

Measured 10d ago against content hash d8188c63d203, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

maa-pipeline-guide scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/maa-pipeline-guide/SKILL.md · 468 lines

How it starts

The opening of the file, as written. The whole thing — 468 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Universal Pipeline 编写指南

官方知识核对

本指南中的 Pipeline 约定是工作经验和社区规范,不能替代 pinned 版本的官方协议、schema 或源码。当字段语义、默认值、版本差异或 API 行为存在疑问时,通过 $maa-wiki 定位 MaaLLMWiki catalog 中的原始来源,再以官方文档、tools/pipeline.schema.json 或 MaaFramework 源码为准。

如果用户提出的是尚未定义起始状态、安全边界和验收条件的端到端自动化目标,先交给 $maa-workflow-build 建立任务契约与状态机;已有契约时,再用本 skill 处理 Pipeline 设计、修改或审查。

项目初始化接力

开始广泛扫描仓库前,先在目标项目根目录查找 basic_info.md

  1. 存在时先读其中“0. Maa Skills 接力协议”,再优先读第 3/4/5/7/8/9 节,获取主 Pipeline、公共节点、返回/弹窗、OCR、模板与 ROI 约定。
  2. 它只是 maa-project-init 生成的上下文缓存;待修改节点必须回到当前 JSON/Python 核实,设备相关结论必须用当前截图或识别结果核实。
  3. 文件缺失或没有第 0 节时,按本 skill 正常发现项目结构并说明未使用初始化缓存;不得自动调用 $maa-project-init,只有用户明确要求初始化或刷新时才调用。
  4. 相关 interface.json、Pipeline 或 Agent 文件晚于 basic_info.md 时,将缓存视为可能过期并以当前源码为准;不得自动刷新或覆盖已有非空文件。

核心原则

  1. 状态驱动:遵循"识别 → 操作 → 识别"循环。每次操作必须基于识别结果,禁止假设操作后画面状态。
  2. 高命中率:扩充 next 列表,覆盖当前操作后所有可能画面,力争一次截图命中。
  3. 显式等待策略:优先通过中间识别节点确认状态,不用盲目的长 delay 掩盖问题;但启动、动画、结算、加载稳定等场景可以使用短的 pre_delay / post_delay / timeout / *_wait_freezes。当确实不需要等待时,要在节点上显式将 rate_limit / pre_delay / post_delay 设为 0(协议默认 rate_limit=1000mspre_delay/post_delay=200ms,省略字段会引入隐式等待)。不要假设仓库存在自动补默认值脚本,使用前先发现真实工具。
  4. 720p 基准:所有坐标、ROI、图片必须基于 720X1280
  5. 点击目标由识别结果推导:优先让 MaaFramework 点击识别框中心(target 默认 true)。不要用 DirectHit + 硬编码 target 跳过识别,也不要在识别命中后用写死的 target_offset 把点击挪到未被识别的控件上——模拟器分辨率、缩放与 UI 版本差异会让这类坐标静默点错位置。
  6. 格式化:JSON 遵循 .prettierrc(4 空格缩进,数组元素换行)。

需要完整字段速查时读取 references/field-reference.md,不要把整份字段表重复加载到日常任务上下文。编写或审查带点击动作的节点时读取 references/coordinate-hygiene.md,其中有两种坐标坏味、OCR/TemplateMatch 点击的推荐写法和允许偏移的例外条件。

历史审查后的设计准则

这些规则来自 MaaGumballs 与 M9A 的 Pipeline 历史审查,优先级高于早期经验里的绝对化表述:

  1. 状态机优先,不等于禁止 Python:稳定、可枚举的页面流转优先写成 next + [JumpBack]。当逻辑需要运行时数据、事件库、动态目标选择、跨节点计数、复杂 OCR/图像后处理、pipeline_override 计算或失败策略时,使用 CustomAction/CustomRecognition。
  2. Custom 不只是 action:MaaGumballs 主要使用 action: Custom,M9A 同时大量使用 custom_actioncustom_recognitiontasker_sink。设计新流程时先判断问题属于“控制流/动作决策”还是“识别/列表解析/图像后处理”。
  3. 链路要显式:父节点的 next 放“当前页面可能出现的下一批状态”;临时弹窗、加载、确认框用 [JumpBack];高风险分支(战斗、购买、消耗、结算继续)要和普通调查/领取/返回分开。
  4. 等待不是禁用项:不要用盲目的长 delay 掩盖状态识别问题;但启动、切页动画、结算、加载后稳定画面等场景可以使用短的 post_delayrate_limit*_wait_freezes,并配套下一屏识别验证。
  5. 校验分层:资源加载通过只说明 JSON/资源可加载,不代表 Custom 名称、Python 参数路径、run_task() 结果判断都正确。Custom 映射和关键链路需要单独检查。

Read the full file on GitHub · 468 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 468 lines · 80 tokens per session scan A d8188c63d203

Subscribe to this mod's changes

maa-pipeline-guide is a skill published in the GitHub repository KhazixW2/Everything-Maa (12 stars, last pushed 2d ago), licensed MIT. It adds 80 tokens to every session and 5,828 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

playwright-cli

Automate browser interactions, test web pages and work with Playwright tests.

microsoft/playwright · 19 tokens

hive.slack-notifications-setup

Set up a Slack notification channel (Sentinel) for a colony by driving the browser — reuse or create the "Hive Sentinel" Slack app from a JSON manifest, install it, capture the bot + app tokens, create/select the channel via the Slack API, and turn Sentinel on so the colony can ping the user on Slack and accept…

aden-hive/hive · 136 tokens

amazon-search-listing

Amazon search and category listing scraper: extract product listings from any Amazon search results page, keyword search URL, or category browse page and return per-item cards (asin, title, url, image, price, listPrice, stars, reviewCount, badges, isAmazonChoice, isBestSeller, isSponsored, delivery, boughtInPast…

browser-act/skills · 341 tokens

etsy-product-detail

Etsy product detail scraper: given an Etsy listing URL, returns full product detail including listingId, title, priceCurrent, priceOriginal, currency, images (all), description, shopName, shopUrl, rating, reviewCount, favorites, inCartCount, variations (with per-option price ranges), highlights, listedDate…

browser-act/skills · 187 tokens

walmart-product-detail

Walmart product detail page extractor: given a walmart.com product URL (walmart.com/ip/...), extract full product data including itemId, title, brand, model, UPC, price, wasPrice, currency, availability, category path, seller info, all images, shortDescription, longDescription, product highlights, full specifications…

browser-act/skills · 252 tokens

amazon-bestseller-listing

Amazon Best Sellers listing scraper: extract product cards from any Amazon Best Sellers (zgbs) or /gp/bestsellers/ category page — returns rank (position on chart), asin, title, url, image, imageAlt, price, stars, reviewCount, ratingRaw per item, plus category metadata (categoryName, categoryFullName, categoryUrl) and…

browser-act/skills · 300 tokens