Skip to main content

MindPy

A Python AI framework for controlling Minecraft bots using PyCraft.

Vision

MindPy is the definitive Python AI framework for Minecraft, built entirely around PyCraft. It provides a clean, modular, plugin-based, event-driven, and highly extensible architecture for building intelligent Minecraft bots.

Features

  • Bot Management: Login, reconnect, disconnect, multi-bot support
  • Navigation: Walking, jumping, swimming, parkour, pathfinding, waypoints
  • Mining: Ore detection, tool selection, safety checks, inventory management
  • Crafting: Recipe lookup, craft planning, execution with multiple machines
  • Inventory: Equipment, storage, chest interaction, sorting
  • Farming: Harvesting, planting, animal breeding, fishing
  • Combat: PvE, PvP, bows, shields, critical attacks
  • World: Block lookup, biome lookup, chunk management, entities
  • Communication: Chat, private messages, command parsing
  • AI System: Perception, memory, planning, decision making, execution
  • Memory System: Working, short-term, long-term, conversation, world, player, task, knowledge base
  • Goal System: Hierarchical goal decomposition
  • Task System: Interruptible, suspendable, serializable, cancelable, restartable
  • Skills: Reusable high-level behaviors
  • Plugin System: Automatic discovery, dependencies, metadata, versioning
  • Event Bus: All communication through events
  • LLM Integration: OpenAI, Anthropic, Google Gemini, Ollama, LM Studio, OpenRouter
  • Tool Calling: AI can invoke tools with descriptions and parameters
  • Reflection: Self-improvement through task evaluation
  • Configuration: YAML, JSON, TOML, environment variables
  • Logging: Structured logging with rich console and file logs
  • CLI: Comprehensive command-line interface
  • API: REST API and optional WebSocket API

Installation

pip install mindpy

For development:

git clone https://github.com/AnujaGajaweera/MindPy.git
cd mindpy
pip install -e ".[dev,llm,docs]"

Quick Start

import asyncio
from mindpy import Bot

async def main():
    bot = Bot(
        host="localhost",
        port=25565,
        username="MyBot"
    )
    
    await bot.connect()
    
    # Your bot logic here
    
    await bot.disconnect()

asyncio.run(main())

Architecture

MindPy follows clean architecture principles:

  • SOLID principles
  • Dependency Injection
  • Composition over inheritance
  • Event Bus architecture
  • Service-oriented design
  • Plugin architecture
  • Domain Driven Design

No global state. Everything is injectable.

Documentation

Comprehensive documentation is available at https://mindpy.readthedocs.io

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE for details.

Acknowledgments

MindPy is inspired by Mineflayer but is a complete reimplementation in Python with modern architecture and extensibility in mind.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mindpy-0.1.3.tar.gz (73.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mindpy-0.1.3-py3-none-any.whl (111.5 kB view details)

Uploaded Python 3

File details

Details for the file mindpy-0.1.3.tar.gz.

File metadata

  • Download URL: mindpy-0.1.3.tar.gz
  • Upload date:
  • Size: 73.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for mindpy-0.1.3.tar.gz
Algorithm Hash digest
SHA256 df29ea77b48473dcad6fb0489519dbecf2f7d04b1948255ff71ba55e88a0d3f6
MD5 3174d93efb653c90000974acd349435f
BLAKE2b-256 c96178c47e9c436dae117094ab6ffbdb26dff9ada11ae2165fd51d151311bbde

See more details on using hashes here.

File details

Details for the file mindpy-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: mindpy-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 111.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for mindpy-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f11bcd12df753fb47be9b77b767ebfa75dd1af4ac148072ae7c8a4e801b8b15e
MD5 1285e13b96d8f2402754f1d7e2d898dd
BLAKE2b-256 bf4680cef39b25e02ecb080e23df43cd6f01fabda738fad8eca860f3a52fadd9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page