Skip to main content

Discord plugin for Crypto.com Agent Client

Project description

Crypto.com Agent Plugin – Discord

The Crypto.com Agent Plugin – Discord adds support for Discord bots to the Crypto.com Agent Client ecosystem. This plugin enables conversational agents to operate directly within Discord servers or DMs using the standard Agent SDK lifecycle and plugin architecture.

Features

Discord Integration

  • Respond to Discord messages in real-time via bot commands or free-form chat.
  • Automatically splits long messages (>2000 characters).
  • Uses Discord’s WebSocket gateway and event loop via discord.py.

Plugin Architecture

  • Packaged as a standalone Python plugin.
  • Uses Python entry points and PEP 621 standards (pyproject.toml).
  • Implements the AgentPlugin interface with setup() and run() lifecycle hooks.
  • Declares its role as a primary plugin — only one such plugin can control the main event loop.

Easy to Install and Extend

  • Fully decoupled from the core agent client.
  • Compatible with other plugins (e.g., storage, LangFuse, CLI).
  • Automatically discovered and initialized by the SDK.

Installation

Install the plugin into your environment:

pip install cryptocom-agent-plugin-discord

Usage

Importing the Plugin

from cryptocom_agent_plugin_discord import DiscordPlugin

Using with the Agent SDK

from cryptocom_agent_client import Agent
from cryptocom_agent_plugin_discord import DiscordPlugin

discord_plugin = DiscordPlugin(bot_token="YOUR_DISCORD_BOT_TOKEN")

agent = Agent.init(
    llm_config={...},
    blockchain_config={...},
    plugins={...},
    plugin_instances=[discord_plugin],
)

agent.start()

Plugin Lifecycle

This plugin defines:

  • mode = "primary" — only one primary plugin is started via agent.start().
  • setup(handler) — prepares Discord commands and message hooks.
  • run() — starts the asynchronous event loop and Discord bot gateway.
  • Optional on_ready(handler) (if needed in future).

Example

from cryptocom_agent_client import Agent
from cryptocom_agent_plugin_discord import DiscordPlugin

discord = DiscordPlugin(bot_token="MTAx...")

agent = Agent.init(
    llm_config={
        "provider": "OpenAI",
        "model": "gpt-4",
        "provider-api-key": "sk-...",
    },
    blockchain_config={
        "api-key": "YOUR_SDK_API_KEY",
    },
    plugins={
        "personality": {
            "tone": "professional",
            "language": "English",
            "verbosity": "medium",
        },
        "instructions": "Answer clearly and briefly.",
    },
    plugin_instances=[discord],
)

agent.start()

Entry Point Declaration

This plugin is auto-discoverable via pyproject.toml:

[tool.poetry.plugins."crypto_com_agent.plugins"]
discord = "cryptocom_agent_plugin_discord:DiscordPlugin"

This allows the Agent SDK to dynamically discover and initialize your plugin.

File Structure

crypto_com_agent_plugin_discord/
├── __init__.py
└── discord.py  # Main plugin implementation

Contributing

We welcome contributions! Please ensure your plugin adheres to the AgentPlugin interface and includes proper setup() and run() hooks.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file cryptocom_agent_plugin_discord-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for cryptocom_agent_plugin_discord-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0b6aa48952532a430a4ad2a20457a172b3aea25b5796ef24a3e8ff01bd72c84e
MD5 706cc31857a1ee712ce485db3e728800
BLAKE2b-256 0ae5fc227558d5f90a695456884b74e84d4e0cc0f1f988036385303488c52724

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page