Skip to main content

Documentation Index

Fetch the complete documentation index at: https://anniemei.app/llms.txt

Use this file to discover all available pages before exploring further.

Overview

The /recommend command fetches AniList community recommendations for a given anime or manga. It shows up to five related titles with scores, genres, and links.

Command syntax

/recommend type:<anime|manga> search:<AniList ID or search term>

Parameters

type
string
required
Whether to find anime or manga recommendations
  • anime — search anime recommendations
  • manga — search manga recommendations
AniList ID (numeric) or search term (title in any language)

Usage examples

/recommend type:anime search:21
Returns recommendations for One Piece using its AniList ID.

Response data

The bot returns a rich embed with:
Title
The title of the anime or manga you searched for, with a link to its AniList page
Recommendations
Up to five recommended titles, each showing:
  • Title with AniList link
  • Media type (Anime / Manga)
  • Format and status (e.g. “TV / Finished”)
  • Average score (out of 100)
  • AniList community rating
  • Up to three genres
Thumbnail
Cover image from AniList

Search tips

AniList IDs are the most reliable way to search. Find the ID in the URL:https://anilist.co/anime/1 → Use /recommend type:anime search:1
If a title has no community recommendations on AniList, the bot returns:
No recommendations found for <title>.
Age-restricted titles and their recommendations are hidden in non-NSFW channels. Use /recommend in an age-restricted channel to see all recommendations.

Input validation

The bot validates your search input before processing:
  • Empty queries are rejected
  • Queries that exceed the maximum length are rejected
If validation fails, you’ll see a message like: “Invalid search input: search cannot be empty.”

Source code reference

Implementation: src/commands/recommend/command.rs:30 The register() function defines the command structure:
pub fn register() -> CreateCommand {
    CreateCommand::new("recommend")
        .description("Fetch AniList recommendations for an anime or manga")
        .add_option(
            CreateCommandOption::new(
                CommandOptionType::String,
                "type",
                "Whether to find anime or manga recommendations",
            )
            .add_string_choice("Anime", "anime")
            .add_string_choice("Manga", "manga")
            .required(true),
        )
        .add_option(
            CreateCommandOption::new(
                CommandOptionType::String,
                "search",
                "AniList ID or search term",
            )
            .required(true),
        )
}