A little less grind.
A lot more game.

Give the repetitive work to your bots. Collect kits, run AFK scripts, and manage your Minecraft accounts in one place.

Free desktop app Windows / macOS / Linux

You set the task. Your bots take it from here.
9,000,000
bots joined servers
33,000
accounts registered
Explore JNbot

Our scripts.

Pick a built-in script and let your bots handle the routine.

Kit collector

Collect kits across your accounts without logging into each one.

GKit collector

Let your bots open the GKit menu and collect available rewards.

AFK script

Keep your bots at their AFK spots while you get on with your day.

Book sorter

Take the repeated inventory clicks out of sorting your books.

Available kits and script setup depend on your server profile.

Your accounts, together.

See who is connected, what is running, and what each account needs. Switch server profiles without rebuilding your setup.

A task of your own?
Show a bot how.

Record your movement and actions in Minecraft, then let a bot replay them. Another way to automate, without writing a script.

Harvest a row of wheat
Record yourself Replay on a bot
You · Ready to record
Recorded actions0 / 6
  1. Waiting for action…
  2. Waiting for action…
  3. Waiting for action…
  4. Waiting for action…
  5. Waiting for action…
  6. Waiting for action…

Your movements and clicks, captured in order.

Record yourself harvesting three crops.
JNbot mobile overview of connected bots and scriptsYour desktop keeps running.
Your phone keeps you connected.

Away from your desk.
Still in control.

Check bot status, run a script, send a message, or inspect an inventory from your phone. Connect to the JNbot instance running on your computer or server.

iOS via sideloading · Android in private testing

A few lines.
A bot with a job.

Make it yours with JavaScript or TypeScript. Change the chat message below, then run the example to see your bot get to work.

diamonds.jsJavaScript
1const { Bot } = require("JNbot");2const bot = await Bot.join({ username: "MyAlt" });3await bot.chat("");4bot.setControlState("forward", true);5await bot.waitForTicks(20);6bot.setControlState("forward", false);7const ore = bot.findBlock({8  matching: b => b.name === "diamond_ore",9  maxDistance: 410});11if (ore) await bot.dig(ore);
Edit the message on line 3, then run.
In the world
Press run to spawn your bot.
Build your first plugin

Less routine.
More time to play.

Download JNbot for your desktop and start with a built-in script. No code needed.

Download JNbot Common questions