---
url: https://wiki.awmc.team/guide/bot/commands.md
---
# AWMC QueryBot 指令调用说明

本页说明账号、上传、BREAK 与管理指令的调用方式。查歌、B50、猜歌、数据报告等完整
查询指令请见 [指令帮助](/guide/bot/advanced)。

::: warning 版本说明
账号功能已经合并到 QueryBot。旧 Koishi maiBot 的优先卡密、解绑卡、账号锁定、保护模式、
账号读写功能已迁移到 AWMC Gateway API；批量 `upsert-all` 不对用户开放。

账号**写操作**（成绩、道具、资料修改）已升级到 **AWMC API v2-3 会话制**：Bot 提交后由服务端
后台执行，并自动完成服务端会话确认与轮询；用户仍须先确认操作摘要与风险。相关指令与价格见
[第八节 账号编辑与批量操作](#八、账号编辑与批量操作-v2-3)。
:::

## 一、通用规则

* 指令前缀由平台配置决定；本文默认不写 `/`。
* 账号和上传流程会引用触发消息；敏感凭据直发因原消息会先撤回，群聊结果改用 `@用户` 标识。
* 交互流程通常支持 `取消`、`cancel`、`q` 或 `退出`。
* 二维码、官方二维码链接和 Token 都是敏感凭据，Bot 会优先尝试撤回。
* 外部调用会生成 `Ref_ID`；发生异常时请把它提供给管理员，不要发送 Token 或 UID。

## AI 生图

| 指令 | 说明 |
|---|---|
| `画图 <描述>` | 文字生图，默认消耗 358 BREAK；失败会退回预扣 BREAK |
| `画图 <描述> -p` / `--reference` | 图生图：发送命令后，再按提示发送参考图 |
| `画图 <描述> -q auto` | 指定质量参数，当前仅支持 `auto` |

官方 QQ 群聊可以直接 `@机器人 画图 <描述>`；也可以在同一条消息中附图。
提示词最长 4000 字符，参考图默认不超过 8 MB，支持 PNG、JPEG、WebP。生图前会进行内容审核，违法违规、敏感政治、未成年人色情等请求不会扣 BREAK；参考图仍会执行安全检查。

## 二、协议与账号

| 指令 | 说明 |
|---|---|
| `用户协议` | 查看当前协议链接和确认方法 |
| `同意用户协议 <完整确认词>` | 确认协议；也可直接发送完整确认词 |
| `撤回用户协议` | 撤回当前版本的同意 |
| `不同意共享我的数据` | 关闭成绩/Rating/趋势等脱敏公开与训练使用（默认开启，详见[协议](/guide/bot/terms#_2-公开数据与训练使用-默认开启)） |
| `mai账号` | 查看账号功能帮助 |
| `mai绑定` / `maibind` | 交互式绑定或认领舞萌账号 |
| `mai绑定 <二维码或链接>` | 一次提交并绑定 |
| `mai解绑` | 解绑舞萌账号，上传 Token 保留 |
| `mai状态` / `mymai` | 查看完整账号状态；缓存失效时重新询问二维码 |
| `舞萌状态` / `mais` | 服务器失败率折线图 + 实时状态（见 [指令帮助](/guide/bot/advanced#_1-1-帮助与信息)） |
| `maiping` | 检查 AWMC API 连接 |
| `mai地图` | 查看游玩地区（服务支持时） |
| `mai预览` / `预览` | 查询账号预览；成功后扣 5 BREAK |
| `mai道具` / `道具` | 查询全部道具；成功后扣 5 BREAK |
| `mai门状态` / `查门` / `门状态` | 查询 Kaleidx Gate 的发现、钥匙与通关状态；成功扣 5 BREAK（见下方 v2-3 说明） |
| `mai查询opt <版本号>` | 查询 Mai2 选项文件 |

门状态会同时显示 Gate 名称：1 蓝色之门、2 白色之门、3 紫色之门、4 黑色之门、
5 黄色之门、6 红色之门、7 棱镜塔、8 表门、9 希望之门、10 里门。

::: warning 上游 v2-3 已移除门状态与活动查询
服务端升级到 v2-3 后不再提供门状态（`get-kaleidx-scope`）与活动事件（`get-game-event`）读取接口，
此时 `mai门状态` / `maievent` 会提示该查询已移除；账号道具可改用 `mai道具` 查询。
**门状态的修改**走 `mai改门`（见 [第八节](#八、账号编辑与批量操作-v2-3)），写入接口支持门 1～6。
:::

二维码输入支持：

```text
SGWCMAID...
https://wq.wahlap.net/qrcode/img/MAID....png
https://wq.wahlap.net/qrcode/req/MAID....html
```

所有使用账号二维码凭据的 API 指令都会检查缓存有效期（**二维码生成时间 + 10 分钟**）。
缓存失效时不会继续使用旧凭据，请直接发送最新 SGWCMAID、官方二维码链接或二维码图片，
验证刷新后重新执行原指令。

凭据无效、过期、返回 500/全空或身份不一致时，Bot 最多重新询问 3 次。
管理员可用 `BREAK配置` 调整与二维码相关的热配置，常用的有：

| 键 | 说明 |
|---|---|
| `one_time_qrcode` | `1` = **一次性二维码**：一个二维码只服务一次用到二维码的操作，之后的操作用户需重新发码（默认 `0`，即 10 分钟内复用） |
| `qrcode_freeze_enabled` / `qrcode_freeze_seconds` | 连续 3 次验码失败后按用户冻结的开关与秒数 |
| `checkin_cooldown_mode` | 签到冷却口径：默认 `24h`（距上次成功签到满 24 小时）；填 `daily` 回退到「每日 00:00 重置」 |

## 三、查分器绑定与上传

| 指令 | 说明 |
|---|---|
| `dfbind` / `绑定水鱼` / `水鱼授权` | 绑定水鱼 OAuth（推荐，同时用于查分和上传） |
| `dfstatus` / `水鱼授权状态` | 查看水鱼 OAuth 授权状态 |
| `dfunbind` / `解绑水鱼` | 取消水鱼 OAuth 授权 |
| `mai绑定水鱼 <Token>` / `maibindfish <Token>` | 绑定水鱼兼容 Token（与 OAuth 分开管理） |
| `mai解绑水鱼` | 解绑水鱼 Token |
| `lxbind` | 绑定落雪 OAuth（推荐） |
| `lxunbind` | 解绑落雪 OAuth |
| `mai绑定落雪 <导入Token>` / `maibindlx <导入Token>` | 绑定落雪兼容 Token |
| `mai解绑落雪` | 解绑落雪兼容 Token |
| `maiu [二维码或链接]` | 上传水鱼 |
| `maiul [二维码或链接]` | 上传落雪 |
| `maiua [二维码或链接]` | 同时上传水鱼和落雪 |

三种上传共享每日首次成功免费额度。默认后续价格为水鱼 2、落雪 2、同时上传 3 BREAK；
失败、超时或取消均不扣费。

### 无二维码快速更新与自动更新 {#quick-update}

::: warning 版本与前提
以下按当前 QueryBot 源码说明，需部署包含该功能的 Bot 及支持 rival 读取的上游服务；不代表所有实例已经上线。价格、时长和容量均可由管理员调整，以 Bot 实际提示为准。
先用 `mai绑定` 绑定舞萌账号；如需同步水鱼或落雪，请先完成 `dfbind` / `lxbind` OAuth 绑定。仅绑定上传 Token 不会用于此快速更新路径。
:::

| 指令 | 说明 |
|---|---|
| `mai对手同步` / `rival同步` | 无需重新扫码，读取已绑定账号的成绩并同步 AWMCNET；有 OAuth 时也同步对应查分器 |
| `导` / `u` / `更` / `更新` | 同上，需整条消息只含该快捷词；群游戏进行时快捷词会被忽略，可改用完整命令 |
| `mai自动更新 [小时]` / `自动更新 [小时]` | 开启限时后台更新；默认 3 小时，支持如 `6`、`6小时`、`6h` |
| `查自动更新` / `mai查自动更新` | 查看剩余时长、下次同步时间、次数与最近结果 |
| `自动更新关闭` / `mai自动更新关闭` | 提前关闭自动更新，剩余时长不退款 |
| `查任务` / `查进度` | 查看后台上传任务与结果；已加入队列不等于外部查分器已完成上传 |

* 合并已有快照：保留旧记录，仅在达成率更高时覆盖。成功同步后才进入默认 **300 秒**用户冷却；拉取失败、配额拒绝或成绩为空不进入冷却，可立即重试。
* **不刷新 FC/FS 标记和 PC 数**。需要完整更新时仍应发送最新二维码；不要将此路径当作全量扫码上传。
* 自动更新走相同的快速更新路径，默认每 **15 分钟**一轮；频率还受快速更新冷却影响。
* 默认可开 **1～12 小时**、全服同时最多 **10 人**，每人只能有一个时段。
* 默认 **30 BREAK / 小时**（3 小时共 90 BREAK），发送 `确认` 后预付整个时段费用；回复其他内容取消。它不是每次同步成功才扣费，提前关闭不退款。

管理员可用 `BREAK配置 <键> <值>` 调整：

| 键 | 默认值 / 用途 |
|---|---|
| `rival_sync_cooldown_seconds` | `300`，快速更新冷却秒数，`0` 关闭冷却 |
| `auto_update_enabled` | `1`，自动更新总开关 |
| `auto_update_fee_per_hour` | `30`，每小时 BREAK |
| `auto_update_default_hours` / `auto_update_max_hours` | `3` / `12`，默认 / 最长时段 |
| `auto_update_interval_minutes` | `15`，同步间隔分钟数（实际还受冷却约束） |
| `auto_update_max_sessions` | `10`，同时开启人数上限 |

## 四、直接二维码与 PC

直接发送 `SGWCMAID...` 或受支持的官方链接，会自动完成 PC 同步，再按照绑定状态上传
水鱼、落雪或两边。未绑定查分器时只同步 PC。

| 指令 | 说明 |
|---|---|
| `更新pc数` | 使用缓存或最新二维码同步 PC |
| `我的pc数` | 查看个人 PC 统计 |
| `pc数 <歌曲>` | 查看指定谱面 PC |
| `pc50` | B50 按 PC 排序 |
| `pca50` | Rating B50 内按 PC 排序 |
| `游玩排行50` | 全库游玩最多的 50 个谱面 |
| `pc排行` | 所有已同步用户的 PC 总量排行 |

::: tip 开发者：AWMCNET 分块同步
QueryBot 或其他服务端将大量成绩同步到 AWMCNET 时，可以把全量快照拆成多个请求，
每块设置 `full_snapshot: true` 并复用同一个 `snapshot_id`。中间块不设置
`snapshot_final`，最后一块设置 `snapshot_final: true`；超时重试时继续使用同一个
`snapshot_id`。完整字段和示例见 [AWMCNET Bot API](/dev/awmcnet-api)。
:::

## 五、段位认定

当前段位表默认使用国服现行版本 **PRiSM PLUS**。查询结果会生成图片，包含段位 LIFE 规则、4 首课题曲、乐曲难度/定数、个人最高达成率，以及服务器近期成绩聚合出的匿名样本统计。

| 指令 | 说明 |
|---|---|
| `段位表` | 查看可查询段位列表与示例 |
| `段位表 <段位>` | 查询指定段位，如 `段位表 真二段` |
| `<段位>段位表` | 同上，如 `真二段段位表` |
| `段位表 <段位> @用户` | 查询被 @ 用户的个人成绩展示 |

图片中的段位资源会优先使用玩家当前名牌与官方段位 Plate；匿名样本来自服务器近期已同步且未关闭数据共享的成绩，低样本或冷启动时回退到内置样本。页脚会标明数据来源与「仅供练习参考，机台结果为准」。

## 六、BREAK 与票券

| 指令 | 说明 |
|---|---|
| `AWMC签到` / `签到` | 签到；距上次成功签到满 24 小时即可再签 |
| `我的AWMC` | 查看 BREAK、连续签到、调用统计、最近流水，以及发票成功/失败率与 `returnCode=0` 统计；群内自动附带本群猜歌数据图 |
| `AWMC帮助` | 查看价格与奖励说明 |
| `转账BREAK @用户 数量` | 转账 |
| `BREAK抽奖 [1-1000]` | 抽奖；默认每次消耗 2 BREAK |
| `发票` / `fp <2/3/5>` | 请求 2、3 或 5 倍票 |
| `mai查票` / `查票` | 格式化查询有效票券（票种、库存、有效期），成功默认 1 BREAK，不会显示账号 UID |

::: danger 发票不可逆
⚠️ 发票不可逆：票券一经发放必须上机使用，不可以屯票。
:::

发票成功默认按倍率收费：2 倍 20 BREAK、3 倍 30 BREAK、5 倍 50 BREAK。
实际提交发票后失败，默认收取固定 **100 BREAK 失败罚金**（余额不足不扣成负数）；写前验码、余额检查失败或本地配额拒绝不收该罚金。已有未使用倍率票触发拦截时另有默认 20 BREAK 的处罚；启用一次性二维码时不做该库存检查与写后到账复核。价格以 Bot 提示和管理员热配置为准。
结果不确定时先用 `查任务` 核实，不要自行重复发票。

## 七、成绩与道具写入

| 指令 | 说明 |
|---|---|
| `mai改成绩` / `改成绩` / `改分` | 交互选择歌曲、难度和成绩；成功扣 258 BREAK / 谱面 |
| `mai改成绩` / `改分 <歌曲> <难度> <达成率> <DX分> [FC] [FS] [简单/专业]` | 一步编辑成绩 |
| `mai删成绩` / `删成绩` / `删分` | 交互选择歌曲和难度；成功扣 50 BREAK / 谱面 |
| `mai删成绩` / `删分 <歌曲> <难度>` | 一步删除成绩 |
| `mai改道具` / `改道具` | 高风险交互式道具修改；成功扣 100 BREAK / 次 |
| `mai改道具` / `改道具 <itemKind> <itemId> <add/del>` | 预填参数后仍需确认风险 |

### 批量成绩（一次最多 20 条，按谱面计费）

`mai改成绩` 支持用换行或分号（`;` / `；`）分隔，一次提交**最多 20 条**成绩：

```text
mai改成绩
歌曲A 紫 100.5% 5 AP FDX
歌曲B 黄 99.8% 4 FC FS
```

`mai删成绩` 同样支持批量（每条写成 `<歌曲> <难度>`）。

* 同一首歌的同一个难度不能重复出现。
* 一次批量必须**统一模式**：DX 分要么全部填星级（简单模式），要么全部填实际 DX 分（专业模式）。
* **按谱面条数计费**：默认修改每条 258 BREAK、删除每条 50 BREAK；例如修改 2 条共 516 BREAK。
* 写入完成后会显示服务端验证结果与上传/跳过条数；账号已满足条件时会提示“无需上传”。

交互模式同样可以累计多条：录完一条后发送 `继续添加`（或 `继续编辑`）返回选歌，
`查看列表` 查看待提交项，`删曲目 N` 移除第 N 项；`完成并提交`（也可 `完成` / `提交`）
查看最终清单与总价，再发送 `确认修改`（删除为 `确认删除`）才执行。`取消` 放弃整批。
批量删成绩不保证可用，且 Bot 无法自动恢复已删除成绩，请先核对清单与风险。

### 成绩格式

成绩命令支持歌曲 ID、完整曲名和别名；交互选择难度时可发送数字：`0 BASIC`、`1 ADVANCED`、
`2 EXPERT`、`3 MASTER`、`4 Re:MASTER`；没有 Re:MASTER 谱面的歌曲只能选择 `0-3`。
难度也支持 `BASIC/ADV/EXP/MAS/Re:MAS`、
绿/黄/红/紫/白，以及宴会场的“宴”。达成率可写 `100.5%`，也可写 `0.995`
（自动解析为 `99.5%`）。

* **简单模式（默认）**：DX 分填写星级 `0～5`。
* **专业模式**：DX 分填写实际 DX 分；填写大于 5 的数值会自动选择专业模式，并校验谱面满分。
* 可显式追加 `简单` 或 `专业`；支持 `FC/FCP/AP/APP` 和 `FS/FSP/FDX/FDXP`。
* API、解析、超时或取消失败时不扣 BREAK；写接口不会自动重试。

::: tip 道具类型
`mai改道具` 的 `itemKind` 支持：1 姓名框、2 称号、3 头像、4 收藏品、5 乐曲解锁、
6 MASTER 谱面解锁、7 Re:MASTER 谱面解锁、10 搭档、11 边框。
角色请使用 `mai改角色`；票券不支持道具写入（须上机购买或使用发票）。
:::

::: danger 道具修改风险
`mai改道具` **未经实际账号测试**，可能造成数据异常或不可逆后果，尤其是
`itemKind=4/8`。Bot 会展示操作摘要，并要求发送“我已知晓风险”后才执行；
继续操作即表示风险由用户自行承担。批量 `upsert-all` 不提供用户命令。
:::

## 八、账号编辑与批量操作（v2-3）

账号写操作已升级到 **AWMC API v2-3 会话制**：Bot 提交请求后由服务端后台执行
（登录 → 分轮上传 → 服务端验证 → 登出），Bot 自动完成“创建 + 立即确认”并轮询结果，
**服务端会话无需额外手动确认，但用户仍须确认操作摘要、总价与风险后才提交**。单次执行通常 1～2 分钟。

`mai改资料`（别名 `资料修改` / `改资料` / `资料命令`）是**集合入口**，会列出全部写操作指令、
当前价格，并提供一键进入各指令的按钮。

| 指令 | 说明 | 价格（成功才扣） |
|---|---|---|
| `mai批量编辑` / `批量编辑` / `批量改` | 一次对话收集多项修改（可跨类型），串行执行；未经测试，非常不推荐 | 整批 1500 BREAK，至少一项确认成功才扣一次 |
| `mai全解锁 [music/master/remaster] [版本ID]` | 一键解锁乐曲 / MASTER / Re:MASTER；未经测试，非常不推荐 | 1500 BREAK / 次 |
| `mai改门 <门 1～6 或名称> <found/key/both/off>` | 修改 Kaleidx Gate 状态 | 50 BREAK / 次 |
| `mai改rating <0~99999>` | 修改显示 Rating（不改历史最高） | 50 BREAK / 次 |
| `mai改里程 <0~99999>` | 修改舞萌里程 | 50 BREAK / 次 |
| `mai改地图库存 <0~999>` | 修改地图库存 | 50 BREAK / 次 |
| `mai改游玩次数 <累计> [当前版本]` | 修改游玩次数 | 50 BREAK / 次 |
| `mai改段位 <段位或ID>` | 修改段位（0～23） | 50 BREAK / 次 |
| `mai改阶级 <阶级或ID>` | 修改阶级（0～25） | 50 BREAK / 次 |
| `mai改搭档 <角色或ID>` | 用该角色填满五个搭档栏位 | 50 BREAK / 次 |
| `mai改角色 <角色或ID> <等级> [觉醒]` | 修改角色等级 / 觉醒 | 50 BREAK / 次 |
| `mai改亲密度 <搭档或ID> <等级>` | 修改搭档亲密度 | 50 BREAK / 次 |
| `mai完成地图 <地图或ID…>` | 临时停用：上游保存验证失败（5006） | 不执行 |
| `mai推进地图 <地图或ID…>` | 临时停用：上游保存验证失败（5006） | 不执行 |
| `mai改登录奖励 <奖励或ID…>` | 临时停用：上游保存验证失败（5006） | 不执行 |
| `mai重置版本` | 重置到当前服务使用的游戏版本 | 50 BREAK / 次 |
| `查进度 [<session_id>]` | 查询自己的任务看板或指定上传会话（别名 `查任务` / `mai查任务` / `查上传任务` / `查会话`） | 免费 |

### 批量编辑：一次改多项

::: danger 批量功能未经测试，非常不推荐使用
`mai批量编辑` 与 `mai全解锁` 的上游处理最长可能约 **30 分钟**，很有可能卡死。结果未确认时先发送 `查进度` 核实，确认未生效前不要重复提交或重发二维码尝试重放。
:::

v2-3 的每个上传接口只接受自己那一类数据（成绩 / 道具 / 各项资料），**跨类型无法合并成一个请求**，
因此批量编辑采用「一次对话收集 → 串行执行多个上传会话」：

```text
mai批量编辑
改rating 16000
改道具 5 11479 add
改成绩 歌曲A 紫 100.5% 5 AP FDX
完成
确认修改
```

* 逐条发送要修改的内容，**最多 3 项**（每项一次上传会话，约 1～2 分钟）。
* 可分多条消息录入，也可一次发送多行；`继续添加` 继续收集，`查看列表` 查清单，`删曲目 N` 移除第 N 项。
* 发送 `完成并提交`（或 `完成` / `提交`）查看清单与总价，发送 `确认修改` 开始执行（`取消` 退出）。
* **整批一口价默认 1500 BREAK**，与项数无关；首个确认成功的项目触发一次扣费，即使其余项目失败，也不是按成功比例收费。取消或没有任何确认成功项时不扣费；已扣费的二维码过期续跑不会重复扣费，且只继续未完成项。
* 此价格仅指跨类型 `mai批量编辑`；直接使用 `mai改成绩` / `mai删成绩` 收集多条谱面，仍按每谱面 258 / 50 BREAK 计费。单独 `mai全解锁` 默认每次成功 1500 BREAK。实际价格以 Bot 热配置与确认页为准。
* 明确失败的项目会记录原因并继续；结算异常会停止。遇到超时或结果未确认，先用 `查任务` 核实，不要重复提交；已提交但未确认的操作不能靠重发二维码安全重试。
* 可写入的内容：`改门` / `改rating` / `改里程` / `改地图库存` / `改游玩次数` / `改段位` /
  `改阶级` / `改搭档` / `改角色` / `改亲密度` / `重置版本` / `改道具` / `改成绩` / `删成绩` / `全解锁`。
* `改地图` / `推进地图` / `改登录奖励` 当前临时停用，批量入口与二维码续跑也不能绕过。

### 名称输入（不知道 ID 也能改）

带“或名称”的参数都可以直接输入名字，Bot 会自动查询上游资源并转换为 ID：

```text
mai改门 紫色之门 found     # 门名 → ID 3
mai改角色 星 <等级>        # 角色名 → 角色 ID
```

* 名称匹配由上游完成（不区分大小写，支持关键词）。
* 匹配到多个同名资源时会列出候选，改用更精确的名称或直接填 ID 即可。
* 段位 / 阶级的名称由上游提供（段位名带版本前缀，如 `1.17_初段`），因此更推荐直接填写数值
  （段位 `0~23`、阶级 `0~25`）。

### 一键全解锁

```text
mai全解锁            # 全部乐曲
mai全解锁 master     # 全部 MASTER 谱面解锁
mai全解锁 remaster 25 # 指定版本范围的 Re:MASTER
```

候选清单由上游生成，账号**已拥有的会自动跳过**（全部跳过时不会上传）。成功后默认扣 **1500 BREAK / 次**，不随曲目数量加价，以 Bot 确认页和热配置为准。

**未经测试，非常不推荐使用**：上游最长可能处理约 30 分钟，很有可能卡死；超时或结果未确认时先 `查进度`，不要重复提交。

### 计费与失败处理

* 上述价格均可在数据库配置中调整（管理员 `BREAK配置`）。
* 上游明确失败（参数不被接受、账号状态异常等）不扣 BREAK；会话执行中途失败会回报具体原因。
* 超时或网络中断时 Bot **不会自动重投**（避免重复写入），可用 `查进度` 查询实际结果。
* 写操作支持**二维码过期续跑**：提示二维码失效后发送最新二维码，Bot 会继续原操作。
* 多数修改会产生一局游玩记录并影响 Rating 显示，上机游玩一局后会自动重算。

不带参数的 `查任务` / `查进度` 还会显示二维码、后台同步与发票等任务；管理员可看全服近期任务，普通用户仅看自己的任务。指定 `session_id` 时也按权限查询；“需核对”不等于一定未写入。

## 九、管理员指令

以下指令仅限 Bot 超级管理员或插件管理员：

| 指令 | 说明 |
|---|---|
| `查询REF <Ref_ID>` | 查看脱敏后的完整处理链路 |
| `封禁用户 <用户> [原因]` | 封禁用户 |
| `解封用户 <用户>` | 解除封禁 |
| `封禁列表` | 查看生效中的封禁 |
| `管理面板` / `WebUI` | 查看 WebUI 地址与配置状态 |
| `查看AWMC <用户>` | 查看用户 BREAK 资料 |
| `设置BREAK <用户> <数量>` | 直接设置余额 |
| `增减BREAK <用户> <数量>` | 增减余额 |
| `BREAK配置 [键 值]` | 查看或修改 BREAK 默认参数（含价格、`one_time_qrcode`、`pick_sensitive_words` 等；改完即生效，跨进程 ≤30 秒） |
| `迁移Koishi 检查 <数据库>` | 只读预检 Koishi 账号迁移 |
| `迁移Koishi 确认 <数据库>` | 确认迁移账号、Token 和协议记录 |
| `发票统计` / `ticket统计` / `returnCode统计` | 全局发票成功/失败与 `returnCode=0` 统计；可加天数，如 `发票统计 7` |
| `存储状态` | 查看 SQLite/YAML/MySQL 存储状态 |
| `存储迁移 检查 <源> <目标>` | 预检数据迁移 |
| `存储迁移 确认 <源> <目标>` | 确认迁移 |
| `存储同步` | 立即同步当前配置的远端存储后端 |
| `mai配额设置 <类别> <窗口=上限,…>` | 设置 AWMC API 全服团队配额，如 `mai配额设置 read 15m=200,1h=600,5h=2000`、`write 15m=50,1h=150`；`on` / `off` 开关全服限额 |
| `自动更新列表` / `mai自动更新列表` | 查看全服自动更新时段；加 `删除 <序号>` 强制关闭对应时段（不退款） |
| `mai配额重置` | 清零全部窗口的团队配额用量（含热重载） |
| `更新定数表` | 曲库更新后重建 rating / plate 表图底图（曲库签名变化时 Bot 会提示执行） |

::: tip 统一存储（MySQL / YAML）
工作集未变更时可跳过打包；MySQL 未改文件可复用；启动时同步在后台执行，不阻塞 Bot 接消息。详见管理员 `存储状态` / `存储同步`。
:::

WebUI 和管理接口不会返回二维码、Token 或完整街机 UID；管理员修改也会记录 `Ref_ID`。

## 十、交互示例

### 绑定并上传两边

```text
用户协议
mai绑定
mai绑定水鱼 <Token>
lxbind
maiua
```

### 二维码失效

```text
Bot：二维码缓存已失效，请发送最新二维码（最多 3 次）
用户：SGWCMAID...
Bot：验证成功并继续原操作
```

### 查询问题

```text
用户：mymai
Bot：引用该消息，返回账号状态与 Ref_ID
```

### 批量成绩（最多 20 条，按谱面计费）

```text
用户：mai改成绩
      歌曲A 紫 100.5% 5 AP FDX
      歌曲B 黄 99.8% 4 FC FS
Bot：⚠️ 即将批量写入 2 条成绩（默认总价 516 BREAK）
      发送“确认修改”开始提交
用户：确认修改
Bot：✅ 已写入 2 条成绩 + 服务端验证结果 + 扣费明细 + Ref_ID
```

### 批量编辑（跨类型一次改多项）

```text
用户：mai批量编辑
Bot：📝 批量编辑模式（一次最多 3 项；整批一口价，至少一项成功才扣）
     ⚠️ 未经测试，非常不推荐，上游最长约 30 分钟，很有可能卡死
用户：改rating 16000
Bot：✅ 已加入 1/3：显示 Rating → 16000
用户：改道具 5 11479 add
Bot：✅ 已加入 2/3：道具添加：乐曲解锁 · itemId=11479
用户：完成
Bot：⚠️ 即将批量执行 2 项（整批一口价 1500 BREAK，串行 2 个上传会话）
      …
用户：确认修改
Bot：✅ 批量编辑完成 2/2 + 每项结果 + 扣费明细 + Ref_ID
```

### 一键全解锁与名称输入

```text
用户：mai全解锁 master
Bot：⚠️ 一键全解锁（MASTER）：候选 45 首（已拥有的会自动跳过）
      发送“确认解锁”继续
用户：确认解锁
Bot：✅ 一键全解锁（MASTER）已提交 + 服务端验证结果

用户：mai改门 紫色之门 found
Bot：⚠️ 即将执行 门状态修改：门 紫色之门（ID 3）→ 开门   ← 名称自动转 ID
用户：确认修改
```

门名称对应关系（写入接口仅支持 1～6）：1 蓝色之门、2 白色之门、3 紫色之门、4 黑色之门、
5 黄色之门、6 红色之门。名称匹配由上游完成，若匹配到多个同名资源，Bot 会列出候选让你确认，
也可以直接填写门 ID。

### 查看上传会话（查进度）

```text
用户：查任务
Bot：任务看板图：进行中 / 已完成 / 失败需核对 三区 + 步骤与「预计还需 X 秒」

用户：查进度 b26759bec50e42d89efe43186a98c40d
Bot：上传会话 …：完成 ／ 处理中（可稍后再查，免费）
```
