Repository navigation
v1.0.0
The first public release.
Client (Fabric mod, any server)
- The hub (H): every tool in a rail grouped by AI, World and Debug, each feature's settings on its page.
- Packet viewer: records both directions, groups the traffic by what likely sends it (Suspects), types, entities,
chunks, every packet with its fields; export, and a chat that looks for the culprit in your plugins. - HUD inspector: the action bar, titles, boss bars and tab list laid out glyph by glyph, guides over the HUD, a watch
for what moves, and a check of declared glyph widths. - Plugin locations drawn in the world, by source and category, the location editor's gizmo, local location sets.
- The WorldEdit selection drawn in any shape (on any server with WorldEdit), and a tool that sets its positions from
afar and moves or resizes it with a gizmo. - A log of plugin messages both ways: a colour per channel, click to expand a decoded + hex/ASCII view, pause and filter;
printed to chat as the hub's rows (hover for the whole text, click to copy it) or to the game's log. - A selection tool of its own, keys to copy your position.
client_dragholds a mouse button and moves (gizmos, scrollbars, mining); dupe-testing inventory tools (gated).- The hub and chats fit small windows: they draw at a smaller GUI scale when the game's is too big for their layout.
- AI chats with your own Claude Code, opencode or OpenRouter, in workspaces of folders; outside agents (Claude Code in
a terminal) can use the client's tools through MCP.
Server (Paper plugin)
-
Dev-server tools: commands with everything they printed, the log since the last reload, stale plugin jars, reloads
through PlugMan, status, a profile of the server thread by plugin, an event's listeners. -
World tools for the AI: renders, edits, terrain, roads, schematics, buildings from editable templates
(catalog/buildings.yml,catalog/rooms.yml), checks that walk a build like a player, undo. They need
FastAsyncWorldEdit; the rest of the plugin runs without it. -
Skills: markdown that teaches the AI a plugin or a workflow, read only when a request needs it (
read_skill,
save_skill,/foreman skills). Bundled for FastAsyncWorldEdit, WorldGuard, MythicMobs, ModelEngine, LuckPerms,
PlaceholderAPI, CoreProtect, EssentialsX, Citizens, TAB and Skript, each offered
while its plugin runs; plugins ship their own inforeman/skills/, servers inplugins/Foreman/skills/. -
worldedit: any WorldEdit/FastAsyncWorldEdit command on a box in one call, undoable withundo. -
modelengine_models: ModelEngine's models with their bones, hitboxes and animations. -
Dupe testing (needs
foreman.test):item_ledgercounts an item everywhere and reports the change since last time,
inventory_watchlogs the inventory events a test fires and who handles them,test_restoresaves and restores
inventories; the client'sinventory_snapshotandinventory_actions(bursts in one tick) replay a player's clicks,
with network profilesburst(hold the sends and send them together) andping_<n>(added latency), and inbound
dropof chosen server packets, for the desync classes (these two only where the server gives the player
foreman.test, which the bridge's hello says). Adupe-testingskill andfind_dupesprompt. -
Every MCP request needs a token, on localhost too (
mcp-token.txt, made at the first start, whenmcp.tokenis
empty); requests from web pages are refused. Tools that act as the console (server_*,learn, WorldGuard and
non-editing WorldEdit commands, plugins' console command tools) needforeman.adminwith a personal token.
For AIs
llms.txtandllms-full.txton the docs site,AGENTS.mdin the repository, and prompts to paste into an agent
("Ask your AI to use Foreman").
API
foreman-server-api:ForemanTools(tools, commands and skills),ForemanWorlds,FurnitureProvider.foreman-paperandforeman-api: the location API, usable from Java and Kotlin.