Pack more. Carry less. Play smarter.
A Paper plugin for fast, safe Minecraft inventory compression with /pack.
SmartPack packs configured inventory materials into compact storage forms, such as nuggets to ingots, ingots to blocks, redstone to redstone blocks, and other server-configured recipes. It is built for survival servers that want quick inventory cleanup with sensible safety checks.
- Safe inventory simulation before item changes are applied.
- Command, Smart Packer item, and optional auto-pack activation.
- Optional Smart Packer cooldown mode with live tooltip updates and a ready ActionBar notice.
- Chest inventory packing through
/pack chestor the Smart Packer item. - Per-player material exclusions through
/pack exclude. - Configurable crafting-table requirements.
- Reversible-recipe warnings and optional strict disabling.
- Inventory-full feedback with extra-slot estimates.
The full setup and usage guide lives in the GitHub Wiki:
- SmartPack Wiki
- Installation
- Commands and Permissions
- Configuration
- Chest Packing
- Recipe Configuration
- Troubleshooting
- Java 25
- Paper 26.1.2
- Maven 3.x, when building from source
mvn clean packageThe compiled jar is created in target/ as smartpack-<version>.jar.
GitHub Actions publishes releases automatically when a push to master changes
the Maven project version in pom.xml. Update pom.xml and CHANGELOG.md,
commit the version bump, and push:
git push origin masterThe workflow builds with Java 25, verifies that the tag matches the Maven
version, creates v<version> after the build passes, and uploads
target/smartpack-<version>.jar to the GitHub release.
Releases can still be created by pushing a version tag directly:
git tag v2.0.1
git push origin v2.0.1The workflow can also be run manually from the Actions tab with either X.Y.Z
or vX.Y.Z. Manual runs use an existing matching tag when one is present; when
the tag does not exist yet, the workflow creates it from the selected branch
after the build passes.
Development branch pushes publish GitHub prereleases through the Dev Release
workflow. It runs on pushes to any branch except master or main.
Each build creates a historical prerelease tag named
smartpack-dev-<branch>-<timestamp> and uploads a jar named
SmartPack-dev-<branch>-<timestamp>.jar, using a UTC timestamp such as
20260505-223000Z at the end. A new push creates a new prerelease instead of
replacing older builds. These builds are for testing and do not replace the
stable master version-bump release flow.
- Place the jar in your server's
plugins/directory. - Start the server once to generate
plugins/SmartPack/config.yml. - Adjust the config.
- Run
/pack reload.
| Command | Description |
|---|---|
/pack |
Pack configured materials |
/pack chest |
Pack the chest you are looking at |
/pack exclude |
Choose materials to skip |
/pack auto |
Toggle automatic packing |
/pack reload |
Reload the config |
SmartPack is licensed under the GNU General Public License v3.0. See License.md.
SmartPack is a fork of the original MinecraftCondensePlugin by rd156.

