CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-py-cord

A modern, async-ready Python API wrapper for Discord with comprehensive bot development features

Overall
score

93%

Overview
Eval results
Files

rubric.jsonevals/scenario-3/

{
  "context": "This criteria evaluates how effectively the engineer uses py-cord's core bot and client connection management features to implement a bot manager with lifecycle tracking. The focus is on proper usage of the Bot class, Intents system, event handling mechanisms, and connection lifecycle methods.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Bot Instance Creation",
      "description": "Uses discord.Bot class to create the bot instance with proper initialization. Should instantiate Bot (not just Client) within the BotManager.__init__ method.",
      "max_score": 15
    },
    {
      "name": "Intents Configuration",
      "description": "Uses discord.Intents properly to configure bot permissions. Should use Intents.default() or create custom Intents with specific flags (guilds, guild_messages, message_content, guild_members) and pass them to the Bot constructor.",
      "max_score": 20
    },
    {
      "name": "Connection Lifecycle",
      "description": "Uses Bot.start() or Bot.login() + Bot.connect() to establish connection, and Bot.close() for disconnection. Should properly manage async connection lifecycle in the connect, disconnect, and shutdown methods.",
      "max_score": 20
    },
    {
      "name": "Event Handler Usage",
      "description": "Uses Bot.listen() decorator or Bot.event() to register event handlers. Should use listen() for multiple handlers per event (as required by spec) rather than event() which replaces handlers. Should properly handle the on_ready event for connection state tracking.",
      "max_score": 25
    },
    {
      "name": "Connection State Tracking",
      "description": "Uses bot properties (is_ready(), is_closed()) or event-based tracking to monitor connection state. Should update the internal ConnectionState enum based on bot lifecycle events and connection status.",
      "max_score": 15
    },
    {
      "name": "Token Authentication",
      "description": "Properly passes the token parameter to Bot.start() or Bot.login() for authentication. Should validate token before attempting connection (checking for empty/None values).",
      "max_score": 5
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/pypi-py-cord

tile.json