Commands
Every command SlateChat registers, and which permission each one needs.
No built-in aliases
Server aliases are already configurable per-server, so SlateChat ships with just the plain command name — set your own alias on top if you want one.
/ch <channel>
Switches the sender's default channel to <channel>, matched against a
channel's name or its command (so /ch g and /ch global both work if
that's how global is set up). Tab-completes to the channels the sender is
allowed to use.
| Permission |
|---|
The channel's own permission, only checked if that channel has restrict: true |
/chatcolor [color\|clear]
Sets the sender's personal chat color, used to render %chat_color% in
channel formats. Accepts a 6-digit hex code (#4DC3FF), a legacy color code
(&c), or a MiniMessage color tag (<red>, <#4dc3ff>) — solid colors
only, no gradients/rainbow. Either hex form only works while enable_rgb is
on in color.yml. Passing one of the configured clear_keywords (clear,
remove, reset by default) removes it instead.
With no argument, opens a GUI instead of printing a usage message: the 16
standard colors as dyed leather chestplates, a reset button, and a book that
opens an anvil-based hex picker with a live color preview as you type. See
color.yml for the menu's
own text.
| Permission |
|---|
chat.setcolor to use the command at all, chat.colored to set an actual color |
Console can't run this command — it's player-only.
/tell <player> <message> (aliases: /msg, /w)
Sends a private message straight to another player — not tied to any
channel. The recipient sees a clickable [reply] next to it by default
(configurable in tell.yml). Tab-completing the target filters out anyone
the sender can't see (vanished by another plugin); typing a vanished
player's exact name by hand is blocked the same way — indistinguishable from
them being offline — unless the sender has chat.tell.vanish.bypass.
| Permission |
|---|
chat.tell, only checked if restrict: true in tell.yml (open by default) |
Console can't run this command — it's player-only.
/r <message>
Replies to whoever the sender last exchanged a /tell with — either side of
a conversation can /r back. Same permission and restrictions as /tell.
/socialspy
Toggles whether the sender sees other players' /tell traffic. Persists
per-player across relogin/restart. Never shows a tell where either
participant has chat.tell.spy.bypass — full invisibility, not a redacted
line — though it's still always logged to console.
| Permission |
|---|
chat.tell.spy |
Console can't run this command — it's player-only.
/slatechat
With no arguments, prints the running SlateChat version. /slatechat reload
reloads the base config, channels, and every enabled module (chat color,
focus, filter, DiscordSRV/ItemsAdder detection) without a server restart.
/slatechat update checks GitLab for a newer release right now and reports
straight back to whoever ran it — works from console too. /slatechat wiki
links to this documentation (wiki_url in config.yml, editable) — open to
everyone, no permission required.
| Subcommand | Permission |
|---|---|
reload | chat.reload |
update | chat.update |
wiki | (none) |
Channel permissions
Channels only enforce a permission check when restrict: true is set on
that channel in channels.yml — an unrestricted channel is open to everyone.
The built-in channels ship as:
| Channel | Permission | Restricted by default |
|---|---|---|
local | chat.local | No |
global | chat.global | No |
Give a channel restrict: true and its permission node to gate it behind
a rank.
Every permission node
The commands and channels above only cover a handful of permissions — see the dedicated Permissions page for the full list, including the ones formatting/color tags check.
