Skip to content

Installation and Setup

github-actions[bot] edited this page Sep 23, 2026 · 3 revisions

Installation & Setup

One release, three files. Take the one for your server from the latest release.

File Server Needs
jarvis-paper-<version>.jar Paper / Purpur 1.21.11 – 26.2 Citizens 2 2.0.43+ · Java 21 (25 on 26.x)
jarvis-fabric-<version>.jar Fabric, Minecraft 26.3 Fabric Loader 0.19.5+ · Fabric API · Java 25
jarvis-neoforge-<version>.jar NeoForge 26.3.0.x Java 25

Optional on every platform:

  • An AI provider — Ollama, Claude, OpenAI, Grok or Gemini. Every slash command works without one except /jarvis ask and freeform /jarvis build <description>; natural-language chat needs one too. See AI Providers.
  • Simple Voice Chat — for talking to him and hearing him back. The plugin on Paper, the mod on Fabric and NeoForge. See Voice.
  • WorldEdit (Paper only) — to save and rotate schematics. Pasting from the library works without it, on every platform.

Nothing else. Speech recognition and his voice run inside the server, and their model files are fetched the first time voice is turned on.


Paper / Purpur

  1. Drop jarvis-paper-<version>.jar and Citizens.jar into plugins/. Add WorldEdit if you want to save or rotate schematics.
  2. Start the server. On the first start Paper downloads GraalJS, which runs the default build planner, from a Maven repository into the server's libraries/ folder — about 60 MB, once. A server with filtered egress needs that allowed; without it Jarvis still loads and builds with the json planner (see Building System). Jarvis writes:
plugins/
└── Jarvis/
    ├── config.yml        the main configuration
    ├── databases.yml     database settings, rarely edited
    ├── data.yml          homes, chests, portal sightings
    ├── duties.yml        standing duties
    ├── database.db       SQLite, created on first run
    ├── models/           speech models, once voice is on
    └── schematics/       .schem / .schematic files for the library
  1. /jarvis bell, ring it, Admin → AI setup, pick a provider and paste your key or your Ollama address. It takes effect at once.

Jarvis refuses to load without Citizens, and says so in the console.

Optional, and worth it for experience memory: ollama pull nomic-embed-text on your Ollama box. Without it memory still works, on the weaker keyword-matching path.

Fabric

  1. Drop jarvis-fabric-<version>.jar and Fabric API into mods/.
  2. Start the server, or open the world. The config appears in config/jarvis/.
  3. The bell and the menu work the same: /jarvis bell, Admin → AI setup.

NeoForge

  1. Drop jarvis-neoforge-<version>.jar into mods/.
  2. Start the server, or open the world. The config appears in config/jarvis/.
  3. Same as above.

See Fabric & NeoForge for what differs on the mods.


First run

/jarvis bell        get the controller bell
/jarvis summon      bring him out
/jarvis version     what is actually running
/jarvis ai          which provider answered, and how fast
/jarvis help        every command

Then talk to him in chat — no command prefix needed:

jarvis, mine some diamonds
jarvis, build me a small stone house
jarvis, take me home

Updating

  1. Stop the server.
  2. Replace the jar. On Paper the file is now jarvis-paper-<version>.jar; delete any older jarvis-<version>.jar so you do not load both.
  3. Start. Your settings, database and data are kept. New config keys from the upgrade are not written into your file: they take their defaults silently. The shipped config.yml inside the jar, or the repository's copy, shows what is new.

Building from source

git clone https://github.com/iamgadgetman/jarvis.git
cd jarvis
mvn clean package -DskipTests          # the Paper plugin
cd jarvis-fabric   && gradle build     # the Fabric mod   (JDK 25)
cd ../jarvis-neoforge && gradle build  # the NeoForge mod (JDK 25)

The plugin lands at jarvis-paper/target/jarvis-paper-<version>.jar, the mods at jarvis-<loader>/build/libs/. The mods need Fabric's, NeoForge's and Mojang's repositories reachable; GitHub Actions builds all three on every push if your network cannot.


Permissions

Permission Default What it allows
jarvis.use everyone Every standard command
jarvis.admin ops Admin commands, the admin menu page, dangerous butler actions
jarvis.menu.use everyone The bell menu

On Fabric and NeoForge there are no permission nodes: admin means server operator, and everything else is open to all players.

With LuckPerms:

lp group default permission set jarvis.use true
lp group admin   permission set jarvis.admin true

Clone this wiki locally