- Introduction
- Features
- Installation and Setup
- Usage Examples
- System Architecture
- Tracing with LangSmith
- Planned Features
- Contact
Scrum Agent is an open-source, AI-powered supervisor designed to enhance agile project management within Discord communities. Acting as a virtual Scrum Master, this agent integrates multiple tools to streamline sprint planning, issue tracking, research, and team collaboration.
By mapping individual Discord channels to corresponding Taiga projects, Scrum Agent facilitates seamless user story management through threaded discussions—ensuring efficient workflow management and improved project oversight.
Join our Discord Server to test the Scrum Agent and explore its features.
Scrum Agent is particularly helpful for small dev teams without a dedicated Scrum Master, but can also be used by larger teams looking to keep their Discord conversations and Taiga board in sync. Currently, it’s designed for Discord and Taiga, but we plan to extend support to Slack and Jira as well.
The project is still in an early stage and is under active development—use it at your own risk. That said, we welcome contributions and feedback from the community to help shape its future.
Scrum Agent offers a range of capabilities to support agile project management:
-
Seamless Integration:
Acts as a central hub for project updates and agile workflow discussions. -
Automated Task Tracking:
Retrieves and organizes sprint-related messages to ensure no detail is overlooked. -
Efficient Search & Retrieval:
Enables quick access to relevant messages, posts, and threads. -
Channel and Thread Organization:
Provides a structured list of channels and active threads for easy navigation.
-
Issue Management:
Track and update sprints, user stories, and tasks efficiently. -
User Story Details:
Retrieve comprehensive information, including history and assigned users. -
Task Updates:
Modify descriptions, update statuses, and assign watchers as needed. -
User Story Creation:
Enhance team collaboration by creating new user stories directly.
-
DuckDuckGo:
Perform efficient web searches. -
ArXiv:
Access a wide range of research papers. -
YouTube & Wikipedia:
Retrieve information quickly for research or reference. -
Web Navigation:
Gather additional context and relevant data.
-
Advanced Problem-Solving:
Leverage AI-driven insights to address complex challenges. -
Strategic Analysis:
Enhance decision-making with robust analytical tools. -
Abstract Reasoning:
Gain predictive insights and better understand abstract concepts.
-
Create and activate a Conda environment:
conda create -n scrumagent python=3.11 -y conda activate scrumagent
-
Upgrade pip and install dependencies:
pip install --upgrade pip pip install -r requirements.txt
-
Install Ollama for DeepSeek Agent:
Download and install Ollama (adjust size as needed):
curl -fsSL https://ollama.com/install.sh | sh ollama pull deepseek-r1:8b ollama pull llama3.2-vision:11b
- Access the Developer Portal:
Visit the Discord Developer Portal and sign in with your Discord account. - Create a New Application:
Click "New Application", give your bot a name, and create the application.
- Navigate to the OAuth2 Tab:
Once your application is created, click on the OAuth2 tab. - Enable the Bot Option:
In the OAuth2 settings, activate the "bot" option. - Set Bot Permissions:
Under the OAuth2 Bot Permissions section, ensure that the following permissions are enabled:- View Channels
- Send Messages
- Create Public Threads
- Create Private Threads
- Manage Threads
- Send Messages in Threads
- Manage Messages
- Read Message History
- Add Reactions
- Enable Intents:
Go to the "Bot" tab and enable:- Server Members Intent
- Message Content Intent
- Generate the OAuth2 URL:
After configuring the permissions, generate the OAuth2 URL. - Invite the Bot:
Use the generated URL to invite the bot to your Discord server, and follow the on-screen instructions to complete the process.
- Go to the "Bot" Tab:
In your application settings, click on the "Bot" tab in the sidebar. - Reveal the Token:
Under the "Build-A-Bot" section, locate the "Token" field. Click the "Reset Token" or "View Token" button to reveal your bot token.Important: Never share your bot token publicly or commit it to version control. Treat it like a password.
- Copy Your Token:
Copy the bot token for the next step. - Add the Token to Your
.env
File:- If you haven’t created a
.env
file, copy.env.example
to.env
. - Add the following line to your
.env
file:DISCORD_TOKEN=YOUR_DISCORD_BOT_TOKEN_HERE
- If you haven’t created a
-
Set Up Environment Variables:
- Copy the file
.env.example
and rename it to.env
. - Open the new
.env
file and fill in the required details.
- Copy the file
-
Customize the Mapping:
- Copy
config/taiga_discord_maps.yaml.example
and rename it toconfig/taiga_discord_maps.yaml
. - Edit this file as needed to match your project settings.
- Copy
-
Specific Settings:
MAX_MSG_MODE
: 'trim' (only keep the lastMAX_MSG_COUNT
messages) or 'summary' (when the message count exceedsMAX_MSG_COUNT
, summarize the messages and keep the summary as context).
Below are examples showing how to create and update Taiga issues or user stories directly from Discord. Changes made in Discord appear in Taiga, making project management faster and easier.
Left: Updating a user story in Discord
Right: The updated user story in Taiga
Left: Creating or updating an issue in Discord
Right: The newly created or updated issue in Taiga
Join our Discord Server to test the Scrum Agent and explore its features.
Scrum Agent is built on the Langgraphs Supervisor Agent, which allows for flexible integration of multiple agents and tools. For more technical details, please refer to the Langgraphs documentation.
Figure: Architecture diagram of Scrum Agent's multi-agent setup.
-
Adding Agents:
Insert new agent nodes inbuild_agent_graph.py
. -
Supervisor Configuration:
Updatesupervisor_agent.py
with the agent's name and description. Ensure that the names are consistent. -
Tool Integration:
Follow the Langgraphs Documentation for guidance on adding and integrating additional tools.
To enable tracing with LangSmith, follow these steps:
-
Set Environment Variables:
LANGCHAIN_TRACING_V2=True LANGCHAIN_API_KEY=your_api_key_here LANGCHAIN_PROJECT=your_project_name
Replace
your_api_key_here
with your actual API key (refer to.env.example
for guidance). -
Learn More:
This configuration allows you to monitor and trace your application's activity using LangSmith.
If you want to use unit tests or add test files. You can go to the tests folders.The "agent_tests" folder belongs to the agents, and tool tests belong to the tools. For test mocking, you need to use the Taiga API. You can change from .env file
you can use taiga-docker (https://github.com/taigaio/taiga-docker)
- TAIGA_URL="http://localhost:9000/"
- TAIGA_URL="https://api.taiga.io" https://api.taiga.io
-Example usage
python3 testfile.py
See the Taiga Project for the latest updates and planned features.
For inquiries, support, or contributions, please open an issue here or at Taiga
or join our Discord or contact [email protected]