diff --git a/bot.py b/bot.py index 57712dd..c4e1958 100644 --- a/bot.py +++ b/bot.py @@ -1815,7 +1815,85 @@ async def owner_command(ctx): except Exception as e: await ctx.send(f"An error occurred while executing the command: {e}") -@client.hybrid_command() +@client.hybrid_command(name="bothelp") +async def bothelp(ctx): + """Shows all available user commands and their descriptions.""" + embed = discord.Embed( + title="🤖 Bot Commands - User Guide", + description="Here are all the commands available to regular users:", + color=0x3498db, + timestamp=datetime.now() + ) + + # General Commands + embed.add_field( + name="🔧 General Commands", + value=( + "`/bothelp` - Shows this help message\n" + "`/points` - Check your current points balance\n" + "`/level [user]` - View level and XP information\n" + "`/leaderboard` - View the server XP leaderboard\n" + "`/permissionlevel` - Check your permission level\n" + "`/version` - Show bot version information" + ), + inline=False + ) + + # AI & Interaction Commands + embed.add_field( + name="🧠 AI & Interaction", + value=( + "`/askmultus ` - Ask Multus AI a question (costs 5 points)\n" + "`/vision ` - Analyze an image with AI\n" + "`/startlivechat` - Start live chat mode in channel\n" + "`/stoplivechat` - Stop live chat mode in channel\n" + "`/summarize ` - Summarize last N messages in channel" + ), + inline=False + ) + + # Notes & Personal Data + embed.add_field( + name="📝 Notes & Personal Data", + value=( + "`/addnotes ` - Add notes from text or URL\n" + "`/asknotes ` - Ask questions about your saved notes\n" + "`/delnotes` - Delete all your saved notes" + ), + inline=False + ) + + # Check if user has moderation permissions to show additional commands + user_data = load_user_data_sync(ctx.author.id, ctx.guild.id) + if user_data["permission"] >= 5: + embed.add_field( + name="🎁 Giveaway & Management Commands", + value=( + "`/startgiveaway <subtitle> <duration>` - Create a giveaway\n" + "`/processes [action] [type]` - View or manage active processes\n" + "`/join` - Join server (if bot has invite permissions)\n" + "`/leave` - Leave server (staff only)" + ), + inline=False + ) + + # Owner-specific commands preview + if user_data["permission"] >= 8: + embed.add_field( + name="🛠️ Advanced Commands Available", + value=( + "Additional admin commands available. Use `/modhelp` for details." + ), + inline=False + ) + + embed.set_footer(text="Use /modhelp for moderation commands (requires permission level 5+)") + await ctx.send(embed=embed) + +# Remove the default help command to avoid conflicts +client.remove_command('help') + +@client.hybrid_command(name="help") async def help(ctx): """Shows all available user commands and their descriptions.""" embed = discord.Embed( @@ -1830,6 +1908,7 @@ async def help(ctx): name="🔧 General Commands", value=( "`/help` - Shows this help message\n" + "`/bothelp` - Alternative help command\n" "`/points` - Check your current points balance\n" "`/level [user]` - View level and XP information\n" "`/leaderboard` - View the server XP leaderboard\n"