> ## Documentation Index
> Fetch the complete documentation index at: https://www.kitemc.asia/llms.txt
> Use this file to discover all available pages before exploring further.

# 原版菜单个性化

> 在 menus 中调整页面标题、图标、说明和槽位，并保留真实物品与动作。

在 `plugins/KiteMarket/config.yml` 的 `menus` 中个性化首页、市场、发布、条件、钱包、领取、社区、自动化和管理页面。所有页面使用同一配置机制，无需资源包或 IA。

编辑后执行 `/km reload`，再重新打开页面；重载先校验候选，无效配置保留上一份有效配置。

显示设置只改变外观与位置，不改变原有动作、权限、交易规则或资产处理，也不能新增交易按钮。

呈现后端与首页选择见[界面与布局](https://www.kitemc.asia/kitemarket/configuration/gui.md)。

## 标题、背景与按钮

下面示例保留旧首页的“我的挂单”原始槽位 `32`，因此明确选择 `home-layout: legacy`。

合并到已有 `gui` 和 `menus` 中，不要重复写顶层键。未填写的字段保留默认值：

```yaml theme={null}
gui:
  home-layout: legacy
menus:
  home:
    title:
      zh_CN: '&6交易集市'
      en_US: '&6Marketplace'
    background: BROWN_STAINED_GLASS_PANE
    buttons:
      '32':
        material: NAME_TAG
        name:
          zh_CN: '&6我的挂单'
          en_US: '&6My orders'
        lore:
          zh_CN:
            - '{default}'
            - '&8点击查看自己的订单。'
          en_US:
            - '{default}'
            - '&8View your own orders.'
```

### 配置字段

| 字段 | 含义 |
| - | - |
| `menus.<页面>.title` | 标题，字符串或 `zh_CN`／`en_US` 文本映射 |
| `background` | 当前版本的原版 `Material`；仅装饰新版布局空闲的顶栏、底栏，`AIR` 关闭装饰 |
| `buttons.<原始槽位>.material` | 功能按钮的原版物品图标 |
| `buttons.<原始槽位>.name` | 功能按钮名称，字符串或双语文本映射 |
| `buttons.<原始槽位>.lore` | 附加市场说明，字符串列表或双语列表映射 |
| `buttons.<原始槽位>.slot` | 该控件的目标槽位 |
| `slots`／`icons` | 兼容旧位置／图标写法，键仍为原始槽位 |
| `switch.*` | 旧配置兼容读取，不再生成页面右上角的界面切换按钮 |

## 原始槽位与位置交换

菜单槽位为 `0..53`，不包括下方玩家背包。

`buttons`、`slots`、`icons` 按**原始槽位**配置，不按新版布局移位后的视觉位置：列表原始 `0..35` 对应新版物理 `9..44`，所以第一件商品的附加说明配置 `buttons.'0'`。

旧首页 `32` 为“我的挂单”，`34` 为“交易历史”；紧凑首页使用[界面与布局中的槽位表](https://www.kitemc.asia/kitemarket/configuration/gui.md#紧凑首页)。

位置变更必须完整交换，不能只移动一边；以下示例明确保留旧首页：

```yaml theme={null}
gui:
  home-layout: legacy
  vanilla:
    layout: auto
menus:
  home:
    buttons:
      '32':
        slot: 34
      '34':
        slot: 32
```

`buttons.slot` 与 `slots` 共用位置机制，不要重复配置同一来源；旧写法可改为 `slots: {'32': 34, '34': 32}`。

位置改动要求 `gui.vanilla.layout: auto` 使用兼容布局，原始槽位直接对应物理槽位；不要同时强制 `warm`。

### 已有首页配置

`gui.home-slots` 的旧首页位置配置仍可读取；切换为 `compact` 后应迁移为对应的新首页槽位。

旧 `menus.<页面>.switch` 配置保留读取，不向页面注入按钮；界面偏好从个人页或 `/km ui` 进入。

## 文本与默认说明

标题和名称可写单一字符串或双语映射，Lore 可写单一列表或双语列表映射。

`&`／`§` 支持原版颜色和格式，生成名称默认金色、Lore 默认灰色，未明确设置斜体时不使用斜体。

标题／名称中的 `{default}` 保留原文；Lore **独占一行**的 `'{default}'` 展开默认市场说明。

省略 `lore` 保留原说明，`lore: []` 只清除附加说明。

`${字段名}` 读取本页已有只读字段，如 `${wizard.step}`；缺失字段显示 `—`，不执行脚本。

金额原值为最小单位，优先保留 `{default}` 中的格式化金额与资产去向。

### 发布策略与整包字段

`lot-editor`、`lot-batch-item` 提供当前玩家的只读发布策略：

| 字段 | 含义 |
| - | - |
| `lot.policy.maximum-quantity` | 数量上限；按单品完整选择、批量每个独立组或一个整包标的检查 |
| `lot.policy.minimum-price` | 当前价格下界，币种最小单位 |
| `lot.policy.maximum-price` | 结合策略、币种金额上限与所选数量后的价格上界，币种最小单位 |
| `lot.policy.maximum-duration` | 最长期限，单位秒；发布期限至少60秒 |

出售单品/批量的价格为每件单价，拍卖/整包为标的总价。策略字段不保证实际背包数量、空间或最终准入；超限保留草稿，逐单确认重查原请求，不自动调价或降低最低购买量。

整包确认页还提供 `lot.mode`、`lot.entries`、`lot.quantity`、`goods.quantity` 只读字段。它们分别表示标的模式、商品项数、标的份数与物品总量；整包份数为1，不能当作只有1件物品。

保留默认确认摘要可同时显示总价、费用、净收入和钱与物品去向，不用主题当前配置重算旧订单费用。

## 真实商品与资产

功能按钮可改材料和名称；商品、样品、供货背包物品及领取资产仍保留真实材料、名称、附魔和原 Lore，`material`／`name` 不能把它们伪装成另一种物品。

只能调整其位置及附加市场说明，不改变背包、托管快照或交易标的。

## 全部页面 ID

以下为通用页面，后面的分组列出其余配置页。所有键都可以在 `menus` 中使用：

```text theme={null}
home, profile, browse, browse-filters, order, details, editor, confirm, preview,
supply-preview, number, materials, durability, text-condition, enchantments,
enchantment-range, insufficient, wallet, wallet-currency, assets, history,
receipt, admin, admin-player, admin-wallet, admin-assets, admin-orders,
admin-player-history, resolve-source, doctor, inspect, evidence, ui, themes, result
```

使用页面 ID，不使用窗口标题、语言键或 IA 模板别名；例如 `claims`／`wizard-confirm` 应分别使用 `assets`／`confirm`。

### 整包、批量与容器页面

```text theme={null}
lot-editor, lot-select, lot-contents, lot-batch-plan, lot-batch-item,
lot-batch-results, container-preview, order-contents
```

`lot-editor` 源 `12` 选择单品／整包／批量，`14` 选择出售／拍卖，`32` 打开预览或批量计划。批量计划的 `52` 开始逐单确认，结果页的 `52` 请求下一份人工确认；这些按钮不会自动完成整批。

`confirm` 的整包摘要在源 `22`，真实清单在 `24`，`30` 确认、`32` 取消；`lot-contents`、`container-preview` 和 `order-contents` 只读展示真实内容。

### 业务物品条件页面

```text theme={null}
rule-business, rule-source, rule-model, rule-tags, rule-fields, rule-field
```

依次配置业务条件概览、来源身份、模型范围、标签集合、开放字段列表和单字段编辑。业务字段仅来自 `items.exposed-fields` 白名单；OR 与精确样品提示保持只读，外观配置不赋予任意脚本编辑能力。

### 社区与通知页面

```text theme={null}
community, favorites, favorite, saved-searches, subscriptions, saved-search,
saved-search-results, seller, leaderboard, notifications, notification
```

个人页源 `29` 打开社区。收藏和搜索结果仍显示真实订单；保存搜索编辑页分别配置币种、价格范围、来源、分类、排序和订阅开关。卖家日窗口与价格滚动窗口使用服务端各自的说明，不合并成一个时间范围。

### 价格与风险页面

```text theme={null}
risk, risk-cases, risk-case, risk-evidence, risk-review,
risk-prices, risk-price, risk-cloud-confirm
```

公开价格页需要浏览权限，其余风险页需要审计权限，状态／训练／云端操作另需管理权限。`risk-cloud-confirm` 的源 `30` 是发送确认、`32` 是取消，与普通领取确认方向不同；共享进行中或未确认状态没有重复发送动作。

### 自动化与预约页面

```text theme={null}
automation, automation-confirm, automation-income, automation-income-detail,
automation-income-confirm, automation-release-confirm
```

个人页源 `33` 打开自动化。`automation` 的 `20/22/24` 分别为未来收益提现、登录提现、自动领取，`40` 为收益预约。关闭未来收益提现不会自动释放已有预约；确认页的 `30` 取消、`32` 确认，不能把待核对项显示成完成。

### 管理写入工具页面

```text theme={null}
admin-tools, admin-tools-player, admin-tools-orders, admin-tools-money,
admin-tools-assets, admin-tools-listing, admin-tools-export,
admin-tools-retention, admin-tools-confirm
```

管理页源 `52` 按权限打开工具。转账、物品移交和代上架使用实际已有资产，具体目标、原因和后果由 `admin-tools-confirm` 展示；`30` 取消、`32` 确认。配置不能新增处罚或生成资产动作。

完整逐页源槽位及 SDK 动作语义见[页面、动作与生命周期](https://www.kitemc.asia/kitemarket/ui-development/pages.md)。

## 配置校验与排查

每条文本最多512字符，Lore 最多64行；材料必须在当前服务端存在。

未知配置字段、无效槽位或不完整交换会使候选无效，`command`、`action`、脚本与表达式不属于样式配置。

重载失败按反馈和日志中的字段路径修正；未显示修改时重新开页并检查原始槽位、布局及第三方主题是否使用自己的模板。

上述设置不安装或下载 IA 资源。

## v1.1：整包与领取页

### 领取分类与批次确认

领取页面按实际页面 ID 与**源槽位**配置：

| 页面 ID | 真实内容和按钮 |
| - | - |
| `order-contents` | `0..35`已发布整包条目/真实数量，`45/53`分页，`48`刷新，`49`返回；已验证容器项可继续只读预览 |
| `claims-categories` | `10`全部来源，`19..28`来源分类，`49`返回 |
| `claims-details` | `0..35`本页所选真实资产/订单/操作引用，`49`返回 |
| `claims-confirm` | `22`批次/数量/空间/未知提示，`30`取消，`32`确认，`49`返回 |

原 `assets` 页增加 `46`分类、`50`全选/取消本页、`51`领取所选、`52`所选详情；`0..35`为本页资产勾选，`45/53`分页、`48`刷新、`49`返回。`claims` 仍是 IA 模板别名，不能替代 `assets` 页面 ID。

`order-contents`、`claims-details` 和 `assets` 使用列表布局移位；`claims-categories`、`claims-confirm` 使用原源位置。手动领取只处理明确确认的当前页，最多36项；空间不足项保留，未确认结果或会话变更时停止后续项。

所有列表的源 `0..35` 默认移到物理 `9..44`；工具源 `37/46/47/48/50/51/52` 分别移到物理 `5/0/1/7/2/3/4`。非列表页保留源位置。SDK 和 IA 已取得最终物理槽位，不再次移位。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.