Getting started
Configuration
Every key in config.yml, its default, and the environment variable that overrides it.
jev-guard reads config.yml from its folder (plugins/jev-guard/ on Paper,
mods/JevGuard_JevGuard/ on Hytale). Run /jevguard reload after a change.
Categories have their own page.
Provider
Where Jev runs: typesafe or cloudflare. See TypeSafe
and Cloudflare.
Your TypeSafe API key.
The Jev model to use with TypeSafe.
Your Cloudflare account ID.
An API token with the Account, Workers AI, Read permission.
The AI Gateway to route through. Empty uses your account’s default gateway.
How long one request to Jev may take.
Retries after a 429, 529 or 5xx answer, with a growing wait between them.
Moderation
A message whose top category is at least this likely, but below that category’s threshold, goes to staff for review. No other action runs.
What normal chat on your server looks like. Jev weighs every category against it, so mention the banter and jokes that should stay allowed.
Messages shorter than this are not checked.
Hold mode and errors
In hold mode, the longest a message waits for its verdict. After that,
on-error decides.
What hold mode does when Jev is slow or down: allow delivers the message,
block hides it and tells the player moderation is unavailable.
After this many failed requests in a row, jev-guard stops calling Jev.
How long it waits before trying again.
Batching
Messages sent to Jev in one request. Bigger batches cost less, but very large ones can lower accuracy.
The longest a message waits for others to share its request.
Privacy and messages
Write the text of flagged messages to the server log. Set false to keep it
out.