{"url":"https://levimc.org/mods/github.com/xianyubb/meshgate-agent/","tooth":"github.com/xianyubb/meshgate-agent","name":"meshgate-agent","description":"LeviLamina command bridge for MeshGate seamless backend handoff","owner":"xianyubb","icon":"https://avatars.githubusercontent.com/xianyubb?s=144","repository":"https://github.com/xianyubb/meshgate-agent","issues":"https://github.com/xianyubb/meshgate-agent/issues","releases":"https://github.com/xianyubb/meshgate-agent/releases","stars":1,"updated":"2026-08-30T11:47:11Z","published":"2026-08-25T20:31:33Z","created":"2026-07-30T17:14:04Z","license":"MIT","categories":[],"platforms":["levilamina"],"env":["server"],"gameVersions":["1.21.124"],"tags":["platform:levilamina","type:mod","meshgate"],"latest":{"variant":"","version":"0.1.1","install":"lip install github.com/xianyubb/meshgate-agent@0.1.1"},"readmes":[{"file":"README.md","lang":"zh-Hans","text":"# meshgate-agent\n\nmeshgate-agent 是 MeshGate 的 LeviLamina 原生插件。它在后端 BDS 内注册跨服命令，并把玩家的跨服请求发送给 MeshGate 的本地控制接口。\n\n默认命令：\n\n```text\n/meshgate <target>\n```\n\n其中 `<target>` 必须是 MeshGate 配置文件里 `[[servers]].id` 的值，例如：\n\n```text\n/meshgate survival-02\n```\n\n## 工作方式\n\n玩家在 BDS 内执行命令后，插件会读取玩家身份信息，并向 MeshGate 发送请求：\n\n```http\nPOST /handoff\nAuthorization: Bearer <bearerToken>\nContent-Type: application/json\n\n{\"xuid\":\"<player-xuid>\",\"targetServer\":\"<target>\"}\n```\n\nMeshGate 收到请求后负责处理实际跨服流程。插件本身不直接连接目标 BDS，也不负责转发 Bedrock 数据包。\n\n## 环境要求\n\n- Windows x64\n- Minecraft Bedrock Dedicated Server 1.26.20.04\n- LeviLamina\n- xmake\n- Visual Studio Build Tools 或可用的 clang-cl 工具链\n- Git\n\n后端 BDS 需要关闭在线验证：\n\n```properties\nonline-mode=false\n```\n\n建议同时设置：\n\n```properties\nclient-side-chunk-generation-enabled=false\n```\n\n## 构建方法\n\n在 `meshgate-agent` 仓库目录执行：\n\n```powershell\nxmake f -y -p windows -a x64 -m release\nxmake -y\n```\n\n构建产物会生成在：\n\n```text\nbin/meshgate-agent/\n```\n\n如果需要清理后重新构建：\n\n```powershell\nxmake clean\nxmake -y\n```\n\n## 安装方法\n\n把构建输出目录复制到 LeviLamina 服务端插件目录：\n\n```text\nbin/meshgate-agent/\n```\n\n复制到：\n\n```text\nplugins/meshgate-agent/\n```\n\n最终目录结构类似：\n\n```text\nplugins/\n  meshgate-agent/\n    manifest.json\n    meshgate-agent.dll\n    README.md\n    config.example.json\n```\n\n首次加载后，插件会创建配置文件：\n\n```text\nplugins/meshgate-agent/config/config.json\n```\n\n## 配置方法\n\n示例配置：\n\n```json\n{\n  \"apiHost\": \"127.0.0.1\",\n  \"apiPort\": 31920,\n  \"bearerToken\": \"replace-with-the-same-token-as-meshgate\",\n  \"command\": \"meshgate\"\n}\n```\n\n字段说明：\n\n- `apiHost`：MeshGate 控制接口地址，通常为 `127.0.0.1`。\n- `apiPort`：MeshGate 控制接口端口，需要和 MeshGate 的 `api_port` 一致。\n- `bearerToken`：控制接口认证令牌，需要和 MeshGate 的 `bearer_token` 完全一致。\n- `command`：游戏内命令名，默认是 `meshgate`。\n\nMeshGate 主程序配置中的对应字段：\n\n```toml\napi_host = \"127.0.0.1\"\napi_port = 31920\nbearer_token = \"replace-with-a-random-token-of-at-least-32-characters\"\n```\n\n## 使用方法\n\n1. 启动 MeshGate。\n2. 启动安装了 `meshgate-agent` 的后端 BDS。\n3. 玩家通过 MeshGate 入口进入服务器。\n4. 在游戏内执行：\n\n```text\n/meshgate survival-02\n```\n\n如果目标服务器不存在、令牌错误、玩家身份为空或目标服务器就是当前服务器，插件或 MeshGate 会拒绝本次请求。\n\n## 已使用的库和工具\n\n- [LiteLDev/LeviLamina](https://github.com/LiteLDev/LeviLamina)：BDS 原生插件框架。\n- [LiteLDev/xmake-repo](https://github.com/LiteLDev/xmake-repo)：LeviLamina xmake 包仓库。\n- LeviBuildScript：LeviLamina 插件构建和打包规则。\n- xmake：项目构建系统。\n- Winsock2 / `ws2_32`：Windows HTTP/TCP 请求支持。\n- C++20 标准库。\n\n## 鸣谢\n\n特别感谢：\n\n- LiteLDev / LeviLamina 社区\n- MeshGate 主程序参与者\n\n## 许可证\n\n本项目使用 MIT License 开源，详情见 [LICENSE](LICENSE)。\n\n项目使用到的第三方库和工具仍遵循其各自的许可证；发布插件包或整合分发时，请同时保留相关依赖项目的许可证声明。\n"}],"gallery":[],"variants":[{"label":"","versions":["0.1.1","0.1.0"]}],"versions":[{"version":"0.1.1","prerelease":false,"released":"2026-08-30T11:47:11Z","releaseUrl":"https://github.com/xianyubb/meshgate-agent/releases/tag/v0.1.1","manifestUrl":"https://github.com/xianyubb/meshgate-agent/blob/v0.1.1/tooth.json","info":{"name":"meshgate-agent","description":"LeviLamina command bridge for MeshGate seamless backend handoff","tags":["platform:levilamina","type:mod","meshgate"],"avatar_url":""},"variants":[{"label":"","platform":"win-x64","dependencies":{"github.com/LiteLDev/LeviLamina":"1.8.*"},"leviLamina":"1.8.*","install":"lip install github.com/xianyubb/meshgate-agent@0.1.1"}]},{"version":"0.1.0","prerelease":false,"released":"2026-08-25T20:31:33Z","releaseUrl":"https://github.com/xianyubb/meshgate-agent/releases/tag/v0.1.0","manifestUrl":"https://github.com/xianyubb/meshgate-agent/blob/v0.1.0/tooth.json","info":{"name":"meshgate-agent","description":"LeviLamina command bridge for MeshGate seamless backend handoff","tags":["platform:levilamina","type:mod","meshgate"],"avatar_url":""},"variants":[{"label":"","platform":"win-x64","dependencies":{"github.com/LiteLDev/LeviLamina":"1.8.*"},"leviLamina":"1.8.*","install":"lip install github.com/xianyubb/meshgate-agent@0.1.0"}]}],"dependencies":{"github.com/liteldev/levilamina":{"tooth":"github.com/LiteLDev/LeviLamina","name":"LeviLamina","owner":"LiteLDev","url":"https://levimc.org/mods/github.com/LiteLDev/LeviLamina/"}},"requiredBy":[]}