☰
Mindcraft 快速上手指南:让 LLM 代理在 Minecraft 里干活
2026/9/28 3:03:20 网站建设 项目流程

Mindcraft 快速上手指南:让 LLM 代理在 Minecraft 里干活

【免费下载链接】mindcraftMinecraft AI with LLMs+Mineflayer项目地址: https://gitcode.com/GitHub_Trending/mi/mindcraft

你有没有想过,让大语言模型不止"说",而是真的"做"?Mindcraft 就是干这个的开源项目:它基于 Mineflayer 库,把 GPT、Claude、Gemini 等模型接进 Minecraft,让 AI 代理拥有"身体"——会走路、挖矿、合成、建造,还能多个代理协作盖房子。项目支持 20 多种 LLM API,也提供自家微调的本地模型,用 Ollama 就能零成本跑起来。

🧱 为什么是 Minecraft:一个理想的 LLM 代理沙盒

Minecraft 世界是方块的、规则是确定的、状态是可查询的,而且怎么折腾都不会"弄坏"。想验证 LLM 的具身推理能力——感知环境、制定计划、执行动作、根据反馈修正——这里是最好的试验场。

Mindcraft 的核心机制是:LLM 生成动作指令(调用内置技能或写新代码),Mineflayer 机器人在游戏里执行,执行结果写回对话上下文,模型据此决定下一步。于是"感知—决策—行动"的闭环就跑起来了。

首次运行:从克隆仓库到进游戏只要五步

先确认三样东西:Minecraft Java 版(1.21.x,推荐 1.21.6)、Node.js 18 或 20 LTS(v24+ 会导致原生依赖出问题)、任意一家受支持厂商的 API 密钥(默认 OpenAI)。

  1. 克隆仓库并安装依赖,安装时会自动用 patch-package 给若干依赖打补丁
  2. 把 keys.example.json 复制为keys.json,填入密钥(只需一个)
  3. 用 Minecraft 开一个世界,"对局域网开放",端口设为55916
  4. 在目录下启动,机器人会加入游戏,并自动打开网页 UI(localhost:8080)
git clone https://gitcode.com/GitHub_Trending/mi/mindcraft cd mindcraft npm install node main.js

之后直接在 Minecraft 聊天栏里跟机器人对话即可,网页 UI 里也能看到它的状态和视角。

📝 两份关键配置:settings.js 与代理档案

全局配置集中在 settings.js,几个高频字段值得先认识:

  • host/port/auth:连接目标,局域网默认127.0.0.1:55916,离线模式;连公网服务器需microsoft认证
  • base_profile:生存、助手、创造、神模式四种玩法基调
  • allow_insecure_coding:是否允许 LLM 写代码并在本机执行,默认关闭
  • allow_vision:是否让视觉模型解读游戏截图
  • max_messages/num_examples:上下文窗口大小与示例数量

每个代理一份 JSON 档案,比如 andy.json 只写了两行——名字和模型。进阶玩法是给聊天、编码、视觉、嵌入、语音五类用途分别指定模型(model、code_model、vision_model、embedding、speak_model),模型还可以写成{api}/{model}形式走任意支持的平台。profiles/ 目录下有各厂商的现成档案可直接套用。

🧠 代码导读:代理的大脑与四肢在哪

  • src/agent/agent.js:代理主类,串起对话、动作与记忆
  • src/agent/conversation.js:消息处理与上下文裁剪
  • src/agent/action_manager.js:动作调度与并发控制
  • src/agent/library/skills.js:技能库,采集、合成、寻路、战斗等预制动作都在这
  • src/models/:各 LLM 厂商的适配层,加新模型就是加一个文件
  • src/mindcraft/mindserver.js:管理多代理、托管网页 UI 的服务端

改行为最简单的入口是技能库和档案里的 prompt、examples 字段,动核心逻辑前建议先读懂 agent.js 的主循环。

🏗️ 给代理一张图纸:内置任务系统

tasks/ 目录预置了建筑、烹饪、合成三类任务。以收集任务为例:

node main.js --task_path tasks/basic/single_agent.json --task_id gather_oak_logs

任务 JSON 里定义了目标(goal)、初始背包(initial_inventory)、目标物品与数量(target、number_of_target)、超时时间和禁止的动作。建筑任务则直接丢给代理一张蓝图——dirt_shelter.json、小石屋、教堂等,还支持 2~5 个代理分工协作。这个项目本身也是多智能体研究平台,minecollab.md 里讲了如何自动启动世界、批量跑任务并回收数据。

🛡️ 开启代码执行前:安全边界与 Docker 部署

allow_insecure_coding: true意味着 LLM 可以写 JavaScript 并在你的电脑上运行——虽然有沙箱,但仍可能被注入攻击利用。官方态度很明确:开了这选项就永远不要连公共服务器。

想开代码执行,建议直接进容器:

docker-compose up --build

容器内访问宿主机要改一个值:把settings.js的host设成host.docker.internal。Dockerfile 和 docker-compose.yml 都在仓库根目录,照抄即可。

🔍 连不上、说胡话:6 个常见坑的排查方向

  1. 机器人进不了游戏:确认局域网端口确实是 55916;生成慢的机器把spawn_timeout调大
  2. 机器人自言自语刷屏:档案里的name必须与 Minecraft 账号名逐字一致
  3. npm install 报错:macOS 上是原生模块编译问题,先看 FAQ.md;Node 版本降到 18/20
  4. 想连公网服务器:必须有正版 Microsoft 账号,auth改为minecraft对应的microsoft
  5. 多代理各说各话:配置多个档案后,需要用/msg分别和每个机器人说话
  6. 动作没生效:检查blocked_actions是否误禁了命令,或反作弊触发了block_place_delay相关限制

收尾:接下来可以往哪走

跑通单机对话之后,三条进阶路线任选:给五类用途各配一个模型榨干档案能力;在 skills.js 里加自定义技能;或者按 MineCollab 流程搭一套多代理协作环境,让它组队盖教堂。项目背后有正式论文支撑(多智能体具身推理框架),如果你想做的是研究而不只是玩,任务系统的数据回收能力会很有用。先把最小路径跑通,其余慢慢来。

【免费下载链接】mindcraftMinecraft AI with LLMs+Mineflayer项目地址: https://gitcode.com/GitHub_Trending/mi/mindcraft

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询