An intelligent Minecraft bot powered by LLM. AIRI can understand natural language commands, interact with the world, and assist players in various tasks.
- 🗣️ Natural language understanding
- 🏃♂️ Advanced pathfinding and navigation
- 🛠️ Block breaking and placing
- 🎯 Combat and PvP capabilities
- 🔄 Auto-reconnect on disconnection
- 📦 Inventory management
- 🤝 Player following and interaction
- 🌍 World exploration and mapping
- 📦 Node.js 20+
- 🔧 pnpm
- 🎮 A Minecraft server (1.20+)
- Clone the repository:
git clone https://github.com/luoling8192/airi-mc.git
cd airi-mc
- Install dependencies:
pnpm install
- Create a
.env.local
file with your configuration:
OPENAI_API_KEY=your_openai_api_key
OPENAI_API_BASEURL=your_openai_api_baseurl
BOT_USERNAME=your_bot_username
BOT_HOSTNAME=localhost
BOT_PORT=25565
BOT_PASSWORD=optional_password
BOT_VERSION=1.20
- Start the bot:
pnpm dev
Once the bot is connected, you can interact with it using chat commands in Minecraft. All commands start with #
.
#help
- Show available commands#follow
- Make the bot follow you#stop
- Stop the current action#come
- Make the bot come to your location
You can also give the bot natural language commands, and it will try to understand and execute them. For example:
- "Build a house"
- "Find some diamonds"
- "Help me fight these zombies"
- "Collect wood from nearby trees"
src/
├── agents/ # AI agent implementations
├── composables/# Reusable composable functions
├── libs/ # Core library code
├── mineflayer/ # Mineflayer plugin implementations
├── prompts/ # AI prompt templates
├── skills/ # Bot skills and actions
└── utils/ # Utility functions
pnpm dev
- Start the bot in development modepnpm lint
- Run ESLintpnpm typecheck
- Run TypeScript type checkingpnpm test
- Run tests
Contributions are welcome! Please feel free to submit a Pull Request.