Skip to main content

mda-project-guide

MDA 项目专属开发指南。用于在 MDA 中编写或审查 MaaFramework Pipeline、Project Interface 任务、locale、go-service 组件时补充项目结构、业务域、命名习惯和现有任务选项示例。与通用 pipeline-guide、pipeline-debug、generate-pi-task、go-service-guide 配合使用。

Zur Installation springen

Quellinformationen

Repository
1204244136/MDA
Letzte Quellaktivität
29. Mai 2026 um 07:10
Erkannte Sprache von SKILL.md
Chinesisch
Sterne
114
Forks
32

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
mda-project-guide
description
MDA 项目专属开发指南。用于在 MDA 中编写或审查 MaaFramework Pipeline、Project Interface 任务、locale、go-service 组件时补充项目结构、业务域、命名习惯和现有任务选项示例。与通用 pipeline-guide、pipeline-debug、generate-pi-task、go-service-guide 配合使用。
# MDA 项目指南 ## 适用范围 当你正在 `C:\Users\12042\Documents\GitHub\MDA` 仓库中工作,并且任务涉及以下内容时使用本 skill: - Pipeline JSON 编写、调试或命名。 - Project Interface 任务文件生成或修改。 - `assets/interface.json`、`assets/tasks/`、`assets/locales/interface/`。 - MDA 的 `agent/go-service/` 自定义组件。 - 需要判断 MDA 现有业务域、任务选项、locale 语言范围或路径约定。 本 skill 只记录 MDA 项目特例;MaaFramework 通用规则请先看: - `pipeline-guide` - `pipeline-debug` - `generate-pi-task` - `go-service-guide` ## 项目结构 MDA 采用 MaaFramework / Project Interface / MXU 风格结构: ```text MDA/ ├── AGENTS.md ├── assets/ │ ├── interface.json │ ├── tasks/ │ ├── locales/interface/ │ │ ├── zh_cn.json │ │ └── en_us.json │ ├── locales/go-service/ │ │ ├── zh_cn.json │ │ └── en_us.json │ └── resource/pipeline/ ├── agent/go-service/ └── tools/schema/ ``` 关键文件: | 路径 | 用途 | | ------------------------------------- | --------------------------------------------------------------------- | | `assets/interface.json` | Project Interface 主配置,包含 import、group、controller、resource 等 | | `assets/tasks/*.json` | PI 任务定义和 option 配置 | | `assets/tasks/preset/*.json` | 预设任务组合 | | `assets/resource/pipeline/**.json` | MaaFramework Pipeline 节点 | | `assets/locales/interface/zh_cn.json` | 界面中文文案 | | `assets/locales/interface/en_us.json` | 界面英文文案 | | `tools/schema/*.json` | Pipeline / PI / Custom schema | | `agent/go-service/` | Go Agent 自定义逻辑 | ## MDA locale 范围 MDA 当前 interface locale 主要维护: - `zh_cn` - `en_us` 新增任务或 option 时,默认只同步这两个文件。不要按其它项目习惯擅自补 `zh_tw`、`ja_jp`、`ko_kr`,除非用户明确要求或项目新增了对应 locale 文件。 所有用户可见文本在任务文件中使用 `$` i18n key,例如: ```json "label": "$task.Shop.label" ``` ## 常见业务域 MDA Pipeline 当前常见业务域包括: | Domain | 说明 | | ----------------------- | ---------------------- | | `Advise` | 咨询 / 剧情 / 剧集相关 | | `Arena` | 竞技场相关 | | `Battle` | 战斗通用流程 | | `Common` | 通用 UI、弹窗、交互 | | `CoordinatedOperations` | 协同作战 | | `DailyRewards` | 日常奖励 | | `Event` | 活动通用域 | | `Interception` | 拦截战 | | `Login` | 登录流程 | | `MapPushing` | 推图 | | `Navigation` | 导航和回到主界面 | | `Outpost` | 前哨基地 | | `RedDotClear` | 红点清理 | | `Shop` | 商店 | | `SimulationRoom` | 模拟室 | | `TribeTower` | 企业塔 / 阵营塔 | 新增节点时优先沿用现有目录与 Domain;不要为了单个节点新建同义 Domain。 ## Pipeline 命名习惯 MDA 使用通用 MaaFramework PascalCase 命名规则,并倾向于: - 入口:`<Domain>Main` - 编排:`<Domain><Subtask>Flow` - 进入页面:`<Domain>Enter<Page>` - 页面确认:`<Domain><Page>Entered` - 页面状态:`<Domain>On<Page>Page` - UI 可见:`<Domain><Object>Visible` - 点击/选择/领取:`<Domain>Click<Object>`、`Select`、`Claim`、`Purchase` - 确认:`<Domain>Confirm<Object>` 或 `CommonConfirm<Object>` MDA 命名中特别注意: - 新节点不要再用 `FlagInX` 表达页面状态。 - `Visible` 节点不要过度拆分;如果只被一个点击节点使用且没有组合识别价值,优先合并进点击节点。 - `Entered` 节点可以只被一个进入流程引用,只要它承担“进入成功哨兵”职责,就不是无意义中转节点。 ## Project Interface 任务文件 MDA 任务文件位于 `assets/tasks/`,当前包括: - `Advise.json` - `Arena.json` - `CashShop.json` - `CoordinatedOperations.json` - `DailyRewards.json` - `Interception.json` - `LargeEvent.json` - `MapPushing.json` - `Outpost.json` - `RedDotClear.json` - `Shop.json` - `SimulationRoom.json` - `SmallEvent.json` - `TribeTower.json` 新增任务文件后,`assets/interface.json` 的 `import[]` 使用相对路径: ```json "tasks/MyTask.json" ``` 而不是: ```json "assets/tasks/MyTask.json" ``` ## MDA 选项建模示例 这些例子来自 MDA 现有任务,用于辅助判断 `generate-pi-task` 的 option 类型。 | Task File | Option | Type | 说明 | | --------------------- | --------------------------- | --------------- | -------------------------------------- | | `Arena.json` | `SpecialReward` | `switch` | 单个是否领取奖励的开关 | | `Arena.json` | `EnterRookieArena` | `switch` | 单个是否进入该竞技场的开关 | | `Interception.json` | `InterceptionType` | `select` | Normal / Anomaly 互斥 | | `Interception.json` | `NormalyInterceptionLevel` | nested `select` | 普通拦截的难度子选项 | | `Interception.json` | `AnomalyInterceptionTarget` | nested `select` | 异常拦截的目标子选项 | | `Interception.json` | `ManualInterceptionBattle` | `switch` | 单个功能开关 | | `Shop.json` | `ArenaShopItemList` | `checkbox` | 多个独立商店物品可同时购买 | | `Shop.json` | `RecyclingShopList` | `checkbox` | 多个独立可回收物品,存在默认选择 | | `Shop.json` | `CommonShopFreeGoods` | `switch` | 单个是否领取免费商品开关 | | `SimulationRoom.json` | `StartOverlock` | `switch` | Yes case 下嵌套 `AutoBIOSSetting` | | `SimulationRoom.json` | `AutoBIOSSetting` | nested `switch` | 自动难度子开关 | | `Outpost.json` | `DefenseRewards` | `switch` | 默认开启时可设置 `default_case: "Yes"` | | `TribeTower.json` | `EnterCommonTower` | `switch` | 默认关闭时可按既有风格让 No 在 Yes 前 | 判断原则: - `select`:互斥路线,case 之间要互相禁用。 - `checkbox`:独立列表,case 通常只启用自身节点。 - `switch`:单个是否执行的功能。 - nested option:只有某个 case 激活后才显示的子配置。 ## MDA Go Service MDA 存在 `agent/go-service/`,当前包含: - `main.go` - `register.go` - `logger.go` - `pkg/pienv` - `pkg/resource` - `pkg/i18n` - `pkg/maafocus` - `taskersink/aspectratio` - `taskersink/hdrcheck` - `taskersink/processcheck` - `taskersink/membership` 开发 Go 组件时: - 先看 `agent/go-service/register.go` 的聚合方式。 - 新包应有自己的 `Register()`。 - 注册名必须与 Pipeline Custom 节点一致。 - 日志和包结构遵循当前已有 Go 代码。 - 如果新增用户可见文案,同时维护 `assets/locales/go-service/zh_cn.json` 和 `en_us.json`。 ## Windows / PowerShell 约束 MDA 的 `AGENTS.md` 明确项目运行环境为 Windows / PowerShell 7。 执行命令时: - 优先使用 PowerShell 语法。 - 路径带空格时加双引号。 - 不要默认使用 Bash heredoc、`grep`、`find`、`sed`、`awk` 等 Unix 写法。 - 文件搜索和读取优先使用 Claude Code 专用工具。 ## 与通用 skill 的配合方式 - 写 Pipeline:先用 `pipeline-guide`,再用本 skill 确认 MDA Domain、locale 范围和任务结构。 - 调试 Pipeline:先用 `pipeline-debug`,再用本 skill 判断 MDA 现有命名和任务语义。 - 生成 PI task:先用 `generate-pi-task`,再用本 skill 参考 MDA 选项建模示例。 - 写 Go Service:先用 `go-service-guide`,再用本 skill 确认 MDA 的包和 locale 目录。 ## 自检清单 - [ ] 新增/修改的任务文件已被 `assets/interface.json` import。 - [ ] 只维护 MDA 当前存在的 interface locale:`zh_cn`、`en_us`。 - [ ] Pipeline 节点 Domain 与现有目录和业务域一致。 - [ ] option 类型符合 MDA 既有建模习惯。 - [ ] `pipeline_override` 节点名真实存在。 - [ ] Go 组件已注册到 `registerAll()`。
Auf GitHub ansehen