Documentation menu

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

api.providerdefault typesafe

Where Jev runs: typesafe or cloudflare. See TypeSafe and Cloudflare.

api.typesafe.keyenv TYPESAFE_API_KEY

Your TypeSafe API key.

api.typesafe.modeldefault jev-latest

The Jev model to use with TypeSafe.

api.cloudflare.account-idenv CLOUDFLARE_ACCOUNT_ID

Your Cloudflare account ID.

api.cloudflare.api-tokenenv CLOUDFLARE_API_TOKEN

An API token with the Account, Workers AI, Read permission.

The AI Gateway to route through. Empty uses your account’s default gateway.

api.timeout-msdefault 4000

How long one request to Jev may take.

Retries after a 429, 529 or 5xx answer, with a growing wait between them.

Moderation

modedefault shadow

shadow, deliver or hold. See modes.

review-thresholddefault 0.5

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

hold.timeout-msdefault 1500

In hold mode, the longest a message waits for its verdict. After that, on-error decides.

on-errordefault allow

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.

What players and staff see, in MiniMessage format with <player>, <message>, <category> and <probability>. See actions.

Something wrong or missing on this page?Open an issue on GitHub.