A Python-based agent that connects Discord to Asana in real time, creating Asana tasks for new threads in specified Discord channels.
- Real-time Discord Gateway connection (no polling)
- Filters for specific channels, new threads, and user exclusions
- Idempotency with SQLite/file store
- Asana integration with custom fields and tags
- Configurable via environment variables
- Docker-ready
- Clone the repo
- Install dependencies:
pip install -r requirements.txt
- Copy
.env.example
to.env
and fill in your valuesDISCORD_BOT_TOKEN
ASANA_PAT
ASANA_PROJECT_GID
TARGET_CHANNELS
(comma-separated IDs)MONALI_USER_ID
- Optional:
ASANA_TAG_GIDS
(comma-separated tag GIDs) - Optional:
ASANA_DISCORD_MSG_ID_FIELD_GID
(custom field GID)
- Run the bot realtime:
python main.py
- Run catch-up mode:
python main.py --catchup
Build and run with Docker:
docker build -t discord-asana-agno .
docker run --env-file .env discord-asana-agno