Docs / Minecraft AI chat permissions
Minecraft AI chat permissions
AI chat on the Spigot bridge is permission-aware:
- If a player is not allowed to see a message, it is not printed (no public “missing permission” spam).
- If a player is not allowed to use AI chat, their
!ai/@ailines are ignored silently.
Code: ChatManager.java · config: plugins/AugmentedIntelligenceBridge/config.yml
Permissions (plugin.yml)
| Permission | Default | Meaning |
|---|---|---|
augmentedintelligence.chat.use |
true | May talk to the AI |
augmentedintelligence.chat.receive |
true | May see normal AI replies |
augmentedintelligence.chat.broadcast |
true | May see global/broadcast AI lines |
augmentedintelligence.chat.admin |
op | May see visibility=admin|debug |
augmentedintelligence.chat.matrix |
true | May see visibility=matrix|lore|construct |
augmentedintelligence.admin |
op | Includes all chat children |
Use LuckPerms (or similar):
/lp user Steve permission set augmentedintelligence.chat.receive false
/lp group default permission set augmentedintelligence.chat.matrix false
/lp group admin permission set augmentedintelligence.chat.admin true
Config
chat:
permission-checks: true # set false to disable (not recommended)
permissions:
use: "augmentedintelligence.chat.use"
receive: "augmentedintelligence.chat.receive"
broadcast: "augmentedintelligence.chat.broadcast"
admin: "augmentedintelligence.chat.admin"
matrix: "augmentedintelligence.chat.matrix"
muted-players: []
allow-players: [] # if non-empty, only these names/UUIDs may use/receive
After editing, /ai reload or restart.
Bridge payload (from _AI)
Optional fields on type: chat messages:
{
"type": "chat",
"target": "Steve",
"message": "Admin diagnostics…",
"scope": "private",
"visibility": "admin",
"permission": "augmentedintelligence.chat.admin"
}
| Field | Effect |
|---|---|
visibility |
chat (default), broadcast/global, admin/debug, matrix/lore |
permission / require_permission |
Exact Bukkit permission required; if missing, no print |
scope |
private / global / nearby / team (still filtered per player) |
Delivery result includes permission_denied count and may set message to permission_denied or partial_permission.
Behavior summary
| Situation | What the player sees |
|---|---|
Has receive |
Normal AI reply |
Missing receive |
Nothing |
Global AI line, missing broadcast |
Nothing (others still get it) |
visibility=admin, missing admin |
Nothing |
| Muted / not on allow-list | Nothing |
Missing use but types !ai |
Silent (no reply, no denial shout) |
Transcripts for AI replies are only written for players who actually received the line.
Related
Generated from the project markdown docs on 2026-07-24. This is a static, self-contained site.