cabaletta/baritone

Games

A Minecraft pathfinding bot that navigates to coordinates, mines blocks, and follows goals through in-game chat commands.

9,335
2,088
Java
LGPL-3.0
8 years old

What it does

Baritone is a Minecraft pathfinding bot and mod. It plans and follows routes through the world with A* pathfinding, so instead of steering manually you give it a goal such as a coordinate, a block type to mine, or a destination, and it moves the player there. It has been the pathfinding system behind the Impact client since 4.4 the README and is a 1.12.2+ rebuild of MineBot, tuned for reliability and path-calculation speed. It is aimed at Minecraft players who want automated travel or resource gathering, and at developers who want to embed pathfinding in their own client.

The core of the project is the path planner plus the processes built on it: goal-seeking, mining, building, and Elytra flight. Chat commands expose most of this without writing code; the Java API is for programmatic control.

Quick start

  1. Identify your Minecraft version and mod loader. Prebuilt jars are published for Forge, Fabric and (on newer versions) NeoForge, covering a long list of Minecraft versions release downloads.
  2. Download the baritone-api-<loader>-<version>.jar matching your Minecraft version and loader from the release table in the README, and put it in your mods folder. Fabric and NeoForge require the corresponding loader to already be installed.
  3. Launch the game and, in chat, run #goto 1000 500 to walk to x=1000, z=500, or #mine diamond_ore to mine diamond ore. Use #stop to halt README.
  4. For other commands, read the usage page or the setup guide for installation cases not covered by the jar table.

The project also publishes a Java API for custom clients. From the README example:

BaritoneAPI.getSettings().allowSprint.value = true;
BaritoneAPI.getSettings().primaryTimeoutMS.value = 2000L;
BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ(10000, 20000));

Only classes outside the baritone.api package are unsupported for API release use, per the README.

Usage constraints

  • The prebuilt jars are tied to specific Minecraft versions and mod loaders. Using a version/loader pair absent from the release table requires building from source or consulting the setup guide.
  • The API is intended for use inside a custom utility client, and that use must comply with LGPL 3.0 licensing the FAQ. The project's license is LGPL-3.0 with an anime exception.
  • Anything outside baritone.api is not part of the supported API surface; relying on internal classes can break between releases.
  • The bot operates by sending real player actions to a Minecraft server. Whether that is acceptable on a given server is governed by that server's rules, not by the mod itself.

HotRepo's take

On the 2026-11-01 Java daily list, Baritone recorded 7 new stars and a best position of 16; the repository sits at 9,335 stars and 2,088 forks. That is a modest single-day figure for a project created in 2018, and the data provides only this one snapshot, so it does not establish a trend. What the record does show is a long-lived game tool that still surfaces in the Java ranking years after release, consistent with its role as a reusable pathfinding layer for multiple Minecraft clients.

Written by AI from the project's README, updated . The project's own docs are the source of truth.