explaingit

minedojo/voyager

6,890JavaScriptAudience · researcherComplexity · 5/5LicenseSetup · hard

TLDR

A research AI agent that plays Minecraft autonomously using GPT-4, continuously discovering new skills, storing working code in a library, and reusing it on new tasks without any human guidance.

Mindmap

mindmap
  root((voyager))
    What it does
      Autonomous Minecraft agent
      Continuous skill learning
      No human guidance
    System Parts
      Automatic curriculum
      Skill library
      Iterative feedback loop
    Tech Stack
      Python
      JavaScript
      GPT-4
      Node.js
    Requirements
      Minecraft with mods
      OpenAI API key
      Python 3.9+
    Audience
      AI researchers
      Agent systems builders
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Use as a research baseline for studying lifelong learning and autonomous skill acquisition in AI agents.

USE CASE 2

Extend the skill library mechanism to a different simulation environment to study continual learning outside Minecraft.

USE CASE 3

Study how GPT-4 can iteratively write, test, and debug executable code in a closed feedback loop without human help.

Tech stack

PythonJavaScriptNode.jsGPT-4

Getting it running

Difficulty · hard Time to first run · 1day+

Requires a licensed Minecraft installation with specific mods, Node.js 16.13+, Python 3.9+, and a paid OpenAI API key with GPT-4 access.

MIT, use freely for any purpose including commercial, as long as you keep the copyright notice.

In plain English

Voyager is a research project that lets an AI agent play Minecraft on its own, learning new skills continuously without a human guiding it. The agent uses GPT-4, a large language model, to read the game environment, decide what to do next, write short programs to carry out actions, and then check whether those actions worked. It keeps building on what it already knows, so over time it becomes capable of doing things it could not do at the start. The system has three main parts. First, an automatic curriculum figures out what the agent should try to do next based on what it has already learned and what the game environment offers. Second, a skill library stores working code snippets for things the agent has successfully done, like crafting tools or navigating terrain. When a new task comes up, the agent can pull relevant skills from that library rather than starting from scratch. Third, an iterative feedback loop lets the agent try an action, see what happened, and revise its code if something went wrong, up to several attempts per task. The published results show the agent collecting 3.3 times more unique item types, traveling 2.3 times farther, and unlocking technology milestones up to 15 times faster than earlier automated Minecraft agents. Importantly, a skill library built in one Minecraft world can be transferred to a brand-new world to solve new tasks, which earlier approaches struggled to do. Setting up Voyager requires Python 3.9 or newer, Node.js 16.13 or newer, an actual Minecraft installation with specific mods, and an OpenAI API key for GPT-4 access. The process involves installing Python packages, Node.js packages, and configuring a local Minecraft instance to accept connections from the agent. Once running, the agent plays the game automatically and saves checkpoints so a learning session can be paused and resumed. This is a research prototype from a team at NVIDIA and is not an official product. The code is released under the MIT license.

Copy-paste prompts

Prompt 1
Using the Voyager codebase, explain how the automatic curriculum module decides the next task for the Minecraft agent and what inputs it uses to make that decision.
Prompt 2
How does Voyager's skill library work? Walk me through how a successful action gets stored, how relevant skills are retrieved, and how new code builds on existing skills.
Prompt 3
I want to adapt Voyager's skill library and feedback loop to a different text-based environment instead of Minecraft. What interfaces do I need to replace?
Prompt 4
Show me Voyager's iterative feedback loop, how does it go from a failed action attempt to detecting the error and generating revised code?
Open on GitHub → Explain another repo

← minedojo on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.