// Patched from https://raw.githubusercontent.com/etkecc/baibot/v1.13.0/src/entity/cfg/env.rs
// Implements BAIBOT_SEND_N_NEWEST_MESSAGES=N (e.g., =1) for Letta integration.
// Letta manages its own conversation memory, so we only need to send the last N messages.

pub const BAIBOT_CONFIG_FILE_PATH: &str = "BAIBOT_CONFIG_FILE_PATH";

pub const BAIBOT_HOMESERVER_SERVER_NAME: &str = "BAIBOT_HOMESERVER_SERVER_NAME";
pub const BAIBOT_HOMESERVER_URL: &str = "BAIBOT_HOMESERVER_URL";

pub const BAIBOT_USER_MXID_LOCALPART: &str = "BAIBOT_USER_MXID_LOCALPART";
pub const BAIBOT_USER_PASSWORD: &str = "BAIBOT_USER_PASSWORD";
pub const BAIBOT_USER_NAME: &str = "BAIBOT_USER_NAME";
pub const BAIBOT_USER_AVATAR: &str = "BAIBOT_USER_AVATAR";
pub const BAIBOT_USER_ENCRYPTION_RECOVERY_PASSPHRASE: &str =
    "BAIBOT_USER_ENCRYPTION_RECOVERY_PASSPHRASE";
pub const BAIBOT_USER_ENCRYPTION_RECOVERY_RESET_ALLOWED: &str =
    "BAIBOT_USER_ENCRYPTION_RECOVERY_RESET_ALLOWED";

pub const BAIBOT_COMMAND_PREFIX: &str = "BAIBOT_COMMAND_PREFIX";

// FlowKraft Patch: Control how many recent messages are sent to the LLM
// When set to a positive integer N, only the N most recent messages in a thread/reply chain
// will be sent to the AI model for context. This helps reduce token usage and keeps
// conversations focused on recent context.
pub const BAIBOT_SEND_N_NEWEST_MESSAGES: &str = "BAIBOT_SEND_N_NEWEST_MESSAGES";

pub const BAIBOT_ROOM_POST_JOIN_SELF_INTRODUCTION_ENABLED: &str =
    "BAIBOT_ROOM_POST_JOIN_SELF_INTRODUCTION_ENABLED";

pub const BAIBOT_LOGGING: &str = "BAIBOT_LOGGING";

pub const BAIBOT_ACCESS_ADMIN_PATTERNS: &str = "BAIBOT_ACCESS_ADMIN_PATTERNS";

pub const BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_CATCH_ALL: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_CATCH_ALL";
pub const BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_TEXT_GENERATION: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_TEXT_GENERATION";
pub const BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_TEXT_TO_SPEECH: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_TEXT_TO_SPEECH";
pub const BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_SPEECH_TO_TEXT: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_SPEECH_TO_TEXT";
pub const BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_IMAGE_GENERATION: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_HANDLER_IMAGE_GENERATION";

pub const BAIBOT_INITIAL_GLOBAL_CONFIG_USER_PATTERNS: &str =
    "BAIBOT_INITIAL_GLOBAL_CONFIG_USER_PATTERNS";

pub const BAIBOT_PERSISTENCE_DATA_DIR_PATH: &str = "BAIBOT_PERSISTENCE_DATA_DIR_PATH";

pub const BAIBOT_PERSISTENCE_SESSION_ENCRYPTION_KEY: &str =
    "BAIBOT_PERSISTENCE_SESSION_ENCRYPTION_KEY";

pub const BAIBOT_PERSISTENCE_CONFIG_ENCRYPTION_KEY: &str =
    "BAIBOT_PERSISTENCE_CONFIG_ENCRYPTION_KEY";
