MineBrush local downloads
Choose the file that matches your Minecraft version and mod loader. Each link opens the separate MineBrush download page before DLE serves the attached file.
- KubeJS 2101.7.2 build 374 — Minecraft 1.21.1 NeoForge
- Rhino 2101.2.7 build 85 — required dependency
- KubeJS corresponding source
- Rhino corresponding source
- KubeJS LGPL-3.0 license
- Rhino MPL-2.0 license
MineBrush reviewed the official release records and attachment structure. This exact build was not independently launched in a Minecraft runtime; use a backup and match the listed game version, loader, and dependencies.
KubeJS is a Minecraft scripting platform for modpack creators and server administrators. It can change recipes and tags, register custom content, react to server and client events, customize world generation, and provide integrations with other mods. Its jаvascript is executed by the Kube-mods fork of Rhino.
kubejs-neoforge-2101.7.2-build.374.jar for Minecraft 1.21.1 NeoForge, file ID 8715199, plus required Rhino rhino-2101.2.7-build.85.jar. The acquired metadata requires NeoForge 21.1.199+ and Rhino build.81+; do not substitute another Minecraft branch.Required files
| File | Role | License |
|---|---|---|
kubejs-neoforge-2101.7.2-build.374.jar |
KubeJS scripting platform; CurseForge file ID 8715199, 2,292,654 bytes, Release, August 23, 2026 | LGPL-3.0 |
rhino-2101.2.7-build.85.jar |
Required jаvascript engine fork; file ID 8218748, 882,075 bytes, Release, supports 1.21.1 NeoForge | MPL-2.0 |
The selected KubeJS JAR itself is the dependency truth source. Its NeoForge metadata marks Rhino required and Better Advanced Tooltips optional. It also embeds BAT build.1, Tiny Java Server build.33, and Animated GIF Lib 1.7. Do not add an external BAT JAR merely because a project-wide relation page labels it differently.
Install KubeJS
- Back up the instance or server, world, configs, datapacks, and existing
kubejsdirectory. - Create or select a Minecraft 1.21.1 NeoForge profile and launch it once.
- Add the two exact JARs to the correct
modsfolder. - Remove Forge/Fabric, other Minecraft branches, old duplicates, and any incompatible Architectury-era instructions.
- Launch once. KubeJS should generate a
kubejsfolder with examples and a README. - Stop the game/server and commit that clean generated folder to version control before editing scripts.
For multiplayer, align the server and client mod set according to the scripts and content used. Server scripts are server-authoritative, but registered content or client scripts may require matching client resources/mods.
Choose the correct script folder
| Folder | Use | Reload rule |
|---|---|---|
kubejs/startup_scripts/ |
Registries, new items/blocks, startup configuration, and work that must exist during game initialization | Restart is the safe baseline. The wiki lists /kubejs reload startup_scripts, but registry/worldgen work may still require a game or world restart. |
kubejs/server_scripts/ |
Recipes, tags, loot tables, and server event handling | /reload reloads server resources; /kubejs reload server_scripts reloads server scripts only. |
kubejs/client_scripts/ |
Client-only presentation and events such as tooltips | F3 + T reloads client resources, or use /kubejs reload client_scripts for scripts only. |
A file in the wrong folder may never run, run on the wrong side, or run too late for the registry it tries to change. Check the current wiki page for every event or API used.
Security: treat scripts as administrator code
Do not paste an unreviewed KubeJS script into a production server. KubeJS can modify recipes, tags, loot, world behavior, commands, and event handling. Its plugin system can expose Java bindings, and the project documentation describes native Java type access through Java.loadClass with built-in and addon-supplied class filters. That is not a promise of a complete security sandbox.
- Accept scripts only from a trusted, attributable source and review every line and included file.
- Reject obfuscated/minified scripts, remote loaders, encoded payloads, unexplained Java class access, or code that reads/writes outside the intended KubeJS/world data paths.
- Never store tokens, passwords, API keys, RCON credentials, or personal data in scripts or a public repository.
- Test with a disposable offline server account and a copy of the world.
- Run the server process with least filesystem/network privileges available; do not run it as an administrator/root user.
- Use version control, signed/approved changes, peer review, and a rollback tag for every script deployment.
- Audit addon mods: a KubeJS plugin can add bindings or change class-filter exposure.
A safe first recipe script
Begin with a tiny recipe change from the current 1.21.1 wiki syntax, in a disposable profile. Do not copy an old onEvent example without confirming the branch. The general workflow is:
- Create one clearly named file under
server_scripts. - Change one test recipe using the current documented event/API.
- Start or reload and read the KubeJS/server log for syntax and event errors.
- Confirm the recipe in a recipe viewer and crafting test.
- Restart the whole server and verify persistence before adding more changes.
Recipes, tags, loot, and mod integrations
KubeJS supports normal datapack recipe types by default. More complicated mod recipes may require an addon or an exact recipe schema. Match the addon to Minecraft, loader, KubeJS, and target-mod versions. Never assume a KubeJS Create or KubeJS Mekanism addon build supports the newest Core merely because the names match.
Recipe or tag removal can break progression, quests, loot, and automation. Search references before deleting an ID, test existing saves, and keep a changelog for pack users.
Startup content and world generation
New registries and some world-generation changes require startup or world restart and may affect saved data. Adding an item ID and later renaming/removing it can create missing registry entries in existing worlds. Worldgen scripts should be tested in newly generated chunks and a copy of an existing world. Never run experimental worldgen on the only backup.
Reload versus restart
A successful reload does not prove a clean restart. Event listeners can duplicate, registry changes may not reload, and client/server state may diverge. For production acceptance, test: clean start, reload where documented, player reconnect, full server stop/start, and client restart.
Read errors efficiently
- Open the KubeJS log and
latest.log. - Find the first error naming your script path and line number.
- Check brackets, quotes, commas, resource IDs, event names, and folder/side.
- Disable all but the failing file, then reduce it to the smallest reproducible block.
- Confirm the example belongs to KubeJS 2101/1.21.1, not an older branch.
- Restore the last version-control commit if the production server is affected.
Common installation failures
Missing Rhino
Install a Rhino build in the required [2101.2.7-build.81,) range; this package selects stable build.85. Do not add Architectury from an older tutorial because the selected metadata does not require it.
Rhino version mismatch
Use the latest stable Rhino compiled for the matching 2101/Minecraft branch that file 8715199 accepts. Reject a 2001/1.20.1 Rhino JAR and confirm the range in KubeJS metadata.
The script loads but nothing happens
Check folder, event side, resource ID, event timing, and whether a full restart is required. Confirm the target mod and any integration addon loaded.
Commands or events behave differently after reload
Test a clean restart and check current open issues for the exact KubeJS build. An older official issue reported multi-level command registration trouble on an earlier 2101 build; use it only as a regression clue, not proof that build 374 has the same defect.
Backups and deployment
Version the entire KubeJS directory, configs, datapacks, mod list, and world schema together. Deploy to staging first. Make a world backup while the server is stopped, review the diff, run syntax/start/reload/restart tests, then deploy the identical approved commit. Keep a tested rollback that includes both scripts and mod versions.
Official downloads, source, and local mirror
Use the official KubeJS file record, Rhino file record, KubeJS wiki, and source repository. KubeJS build 374 is tied to release commit 6d3c30db6a1504ac81f3c0a833bcf6427d0a6b21; Rhino build.85 is tied to 2d95ef41d02cbaf82e72f2ee0e21a03f5d34557a. MineBrush captured both commit archives, both published source JARs, the licenses, and source for all three embedded libraries. A local mirror may open only when the exact two runtime files and the full source/notice bundle pass staging, malware, and runtime QA together.
Quick answers
Is Rhino optional? No. It is a required KubeJS dependency.
Is Better Advanced Tooltips required? No. The selected JAR marks it optional and already embeds build.1.
Can I reload every script? No. Registries and worldgen can require full game/world restarts.
Are downloaded scripts safe? Not by default. Review and test them as administrator-controlled code.

PLAYER QUESTIONS
Discussion
Include the exact edition, version and step when asking for help.