Baritone is a Minecraft client-side automation bot that provides autonomous pathfinding, mining, building, exploration, and entity following. It operates as a mod for Fabric, Forge, and NeoForge, integrating deeply with the Minecraft client via mixins to control player movement, block interaction, and chat commands. The system is architected around a central `Baritone` class that orchestrates behaviors (pathing, look, inventory), processes (mine, build, follow, elytra flight), a command system with tab completion, world caching for long-distance pathing, and a schematic system for declarative building. It exposes a public API (`baritone.api`) for embedding in custom utility clients. The core pathfinding engine uses A* with custom movement costs, supporting ground movement (walking, jumping, parkour, swimming) and elytra flight through a Java port of a native nether pathfinder. The world is cached in a compressed 2-bit format (air, solid, water, avoid) with disk persistence, enabling pathfinding across large distances. The command system supports dozens of chat commands (`#goto`, `#mine`, `#build`, `#follow`, `#farm`, `#explore`) with argument parsing and datatype validation. The schematic system allows loading and building structures from various formats (MCEdit, Sponge, Litematica) with composable masks, rotations, and substitutions. External dependencies include the Minecraft client itself (via mixins), optional integration with Litematica and Schematica mods, and a native library for elytra pathfinding (with a Java fallback). The build system uses Gradle with ProGuard for jar shrinking and a custom `Determinizer` for reproducible builds. The codebase is actively maintained with frequent commits, though it carries technical debt from version-specific mixins, commented-out code, and some monolithic process files. It is a high-quality example of game automation and pathfinding research, but its tight coupling to Minecraft internals limits reusability outside that domain.