Embeds in Commands

Create rich embeds in Nevi custom commands with titles, descriptions, colors, fields, and template variables.

Embed syntax

Embeds let you create rich, formatted messages with titles, descriptions, colors, and more, instead of plain text. The embed syntax uses a dot-chained format where each property is set with a key-value pair.

Basic syntax

{embed.title:"Your Title".description:"Your description text.".color:"#hex"}

Available properties

PropertyDescriptionExample
titleThe embed's title (displayed at the top in bold).title:"Welcome"
descriptionThe embed's body text.description:"Hello there!"
colorThe colored stripe on the left side (hex color code).color:"#9074f2"
fieldA field with name, value, and optional inline flag.field:"Name|Value|inline"

Simple example

/customcmd create info {embed.title:"Server Info".description:"Welcome to our server!".color:"#9074f2"}

Creates a command that responds with a purple-themed embed containing a title and description.

Embed fields

Fields let you add structured key-value pairs to your embed. Each field has a name, a value, and an optional inline flag.

Field syntax

.field:"Field Name|Field Value|inline"

The three parts are separated by | (pipe characters).

Field Name - The bold label for the field.

Field Value - The content displayed under the label.

inline - Optional. Write inline to display the field side-by-side with other inline fields. Omit it or leave empty for a full-width field.

Multiple fields

You can add as many fields as you need by chaining .field: entries:

{embed.title:"Stats".field:"Members|1,247|inline".field:"Online|342|inline".field:"Channels|28|inline"}

This creates three inline fields displayed side by side, showing members, online count, and channels.

Mixed inline and full-width

{embed.title:"User Report".field:"Username|Blake|inline".field:"Role|Admin|inline".field:"Notes|This is a full-width field that spans the entire embed width."}

The first two fields appear side by side (inline), and the notes field takes up the full width below them.

Complete embed example

Here's a complete custom command that uses all embed properties together to create a polished, informational embed.

Server welcome embed

/customcmd create welcome {embed.title:"Welcome to {server}!".description:"Hey {user.name}, we're glad to have you here! Check out the channels below to get started.".color:"#9074f2".field:"Members|{server.memberCount}|inline".field:"Channel|#{channel}|inline".field:"Rules|Please read #rules before chatting!"}

This creates a rich embed with a title, description, purple accent color, two inline stats fields, and a full-width rules reminder.

Variables in embeds

You can use any template variable inside embed values. Variables work in titles, descriptions, field names, and field values. Just include them with curly braces as you would anywhere else.

Dynamic title

{embed.title:"{user.name}'s Profile".description:"Member of {server}".color:"#5865F2"}

Arguments in fields

{embed.title:"Report".field:"Submitted by|{user.name}|inline".field:"Details|{args}"}

Whatever the user types after the command becomes the "Details" field value.

Random values in embeds

{embed.title:"Fortune Cookie".description:"{random(You will find great success,A surprise awaits you,Good things come to those who wait,Today is your lucky day)}".color:"#FFD700"}

Each time the command is run, a different fortune appears in the embed.

Tips

Keep embeds concise

Discord has limits on embed content. Titles can be up to 256 characters, descriptions up to 4,096 characters, and field values up to 1,024 characters. Keep your content within these limits to avoid truncation.

Match your server's theme

Use the color property to match your server's branding. Common choices include #9074f2 (Nevi purple), #5865F2 (Discord blurple), #57F287 (green for success), and #ED4245 (red for errors).

Combine embeds with actions

Embeds work alongside actions . You can add reactions to an embed, auto-delete it after a delay, or edit it with new content. Just include the action expressions alongside the embed expression in your command response.

Use inline fields for stats

When displaying multiple short values (like counts, statuses, or labels), use inline fields so they appear side by side instead of stacking vertically. This makes your embeds more compact and scannable.

Related Commands

/customcmdmanagementRequires mod

Create and manage custom commands with template support