AI-powered multi-agent workflow automation system using Kanban-based task orchestration, dependency tracking, and intelligent agent collaboration.
Built with: Python 3.10+ ยท LangGraph (Agent Orchestration) ยท LangChain (Framework) ยท Flask (Backend API) License: MIT ย |ย Status: Active ย |ย Made by: Atharva Shevate
A Python-powered multi-agent system that assigns tasks, tracks dependencies, and executes workflows on a Kanban board โ turning manual task management into a fully autonomous AI pipeline.
Multi-Agent Swarm System is a production-grade autonomous task orchestration platform built using LangGraph and LangChain. Instead of relying on a single monolithic AI model, the system deploys a swarm of specialized AI agents โ each responsible for one specific role in the workflow pipeline. These agents communicate through a shared state graph, cooperate in real time, and collectively drive tasks from submission to completion โ fully automatically.
The core idea is simple but powerful: manually tracking tasks, checking dependencies, and assigning work doesn't scale. This system replaces that manual overhead with a coordinated team of autonomous agents that operate faster, more consistently, and without supervision.
Progress is reflected in real time on a Kanban board โ giving full visibility into what each agent is doing and where every task stands in the pipeline. The entire system is exposed through a Flask REST API, making it easy to integrate with any external tool or dashboard.
๐ Built: December 2025 ย |ย ๐ซ Vishwakarma University, Pune (B.Tech Computer Engineering 2026) ๐จโ๐ป Author: Atharva Shevate ย |ย ๐ผ AI Engineer Intern @ IOTIOT.IN, Pune
| Feature | Description |
|---|---|
| ๐ง Multi-Agent Collaboration | Four specialized agents (Analysis, Dependency, Assignment, Execution) operate on a shared LangGraph state graph, each handling a distinct phase of the workflow |
| ๐๏ธ Kanban Workflow Management | Tasks automatically progress through To Do โ In Progress โ Review โ Done columns with no manual intervention |
| โ๏ธ Automated Task Assignment | The Assignment Agent places tasks into the correct Kanban column based on priority, category, dependency status, and agent workload |
| ๐ Dependency Tracking | A dedicated Dependency Checker Agent validates that all prerequisite tasks are complete before allowing dependent tasks to execute |
| โก Workflow Execution Pipelines | Eligible tasks are automatically picked up by the Execution Agent and run end-to-end through the pipeline |
| ๐ REST API Interface | Flask-powered API endpoints expose full task CRUD operations, status queries, and pipeline controls |
| ๐ Real-Time Kanban Board | Live visual board shows current task states, agent assignments, and workflow progress |
| ๐ State Machine Architecture | LangGraph manages the entire agent lifecycle through a typed state graph with well-defined transitions |
| ๐ Secure Configuration | All API keys and credentials are isolated in environment variables โ never hard-coded |
| ๐ Full Audit Trail | Every agent decision is logged with timestamp, agent identity, task ID, and transition reason |
(Architecture diagram: a central LangGraph Orchestrator coordinates four specialist agents โ Task Analysis, Dependency Checker, Task Assignment, and Execution โ each connected to a shared state graph.)
The system deploys four specialist agents coordinated by a central LangGraph Orchestrator. Each agent is stateless on its own โ all shared context lives in the LangGraph state graph, which acts as the single source of truth for the entire workflow.
The entry point for every task in the system. When a new task is submitted via the API, this agent:
- Parses the raw task payload (title, description, tags, deadline)
- Assigns a priority level (High / Medium / Low) based on urgency signals
- Extracts category and metadata for downstream routing decisions
- Determines the optimal execution strategy (parallel vs sequential)
- Emits the enriched task object into the shared state graph
Before any task can proceed to assignment, this agent validates its dependency chain:
- Queries the state graph for all tasks listed as prerequisites
- Checks the completion status of each dependency
- Blocks dependent tasks that have unresolved prerequisites
- Unblocks tasks as their dependencies complete
- Resolves complex dependency graphs (multi-level chains, circular detection)
Once a task passes dependency validation, this agent handles placement:
- Selects the appropriate Kanban column based on task state
- Balances workload across available execution slots
- Transitions the task card from
To DoโIn Progress - Records the assignment decision in the audit log
- Notifies the Execution Agent that a new task is ready
The final stage of the pipeline โ this agent drives tasks to completion:
- Picks up tasks marked as
In Progressand executes the defined workflow pipeline - Updates the shared state on each step completion
- Moves the task card through
ReviewโDone - Emits a completion event that may unblock downstream dependent tasks
- Handles retries and error states with configurable backoff
The backbone of the entire system:
- Maintains the typed shared state graph across all agents
- Routes messages and triggers between agents based on state transitions
- Manages the agent lifecycle (init, run, suspend, resume)
- Ensures consistency โ no two agents modify the same task state simultaneously
(Tech stack overview: core framework, AI/agent layer, frontend visualization, and developer tooling used across the project.)
Python 3.10+ โ Primary language for all modules
LangGraph โ Agent orchestration via typed state graph
LangChain โ LLM abstraction, prompt templates, agent primitives
Flask โ Lightweight REST API backend
REST APIs โ Task CRUD, status queries, pipeline controls
AI Agents โ Four specialized autonomous agents
Multi-Agent Systems โ Swarm coordination via shared state
Dependency Graph โ DAG-based prerequisite resolution
State Machine โ LangGraph-managed lifecycle transitions
LLM Integration โ Language model calls via LangChain abstractions
Kanban Board โ Live task status visualization
JavaScript โ Board interactivity and real-time updates
HTML / CSS โ Dashboard layout and styling
REST Integration โ Board polls Flask API for live state
Git / GitHub โ Version control and project hosting
Python-dotenv โ Environment variable management (.env)
Virtual Environment โ Isolated dependency management
Linux / Ubuntu โ Development and deployment OS
VS Code / PyCharm โ Development environment
New Task Submitted
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ง Task Analysis Agent โ
โ Parse โ Prioritize โ Route โ
โโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ Dependency Checker Agent โ
โ Validate prerequisites โ
โ Block if unresolved โ
โ Unblock when deps complete โ
โโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ (dependencies clear)
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ Task Assignment Agent โ
โ Select column โ Place on boardโ
โ TO DO โ IN PROGRESS โ
โโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โก Execution Agent โ
โ Run pipeline โ Track progress โ
โ IN PROGRESS โ REVIEW โ DONE โ
โโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ
โผ
โ
Task Complete
(Triggers unblock of dependent tasks)
Step-by-step:
- Task Submitted โ A new task arrives via the REST API with title, description, tags, and optional dependencies
- Analysis โ The Task Analysis Agent parses the payload, assigns priority, and extracts metadata
- Dependency Check โ The Dependency Checker validates all prerequisite tasks. If any are incomplete, the task is held in a
Blockedstate - Assignment โ Once clear, the Task Assignment Agent places the task into the Kanban board at the
To Docolumn and transitions it toIn Progress - Execution โ The Execution Agent picks up the task, runs the workflow pipeline, and progresses the card through
ReviewโDone - Cascade โ Completing a task triggers the Dependency Checker to re-evaluate any tasks that were waiting on it โ unblocking the next batch automatically
AI-Multi-Agent-Swarm-System/
โ
โโโ app.py # Flask app entry point & API routes
โโโ requirements.txt # All Python dependencies
โโโ .env.example # Environment variable template
โโโ README.md # Project documentation
โ
โโโ agents/
โ โโโ analysis_agent.py # Task Analysis Agent โ parse & prioritize
โ โโโ dependency_agent.py # Dependency Checker โ DAG validation
โ โโโ assignment_agent.py # Task Assignment โ Kanban placement
โ โโโ execution_agent.py # Execution Agent โ pipeline runner
โ โโโ base_agent.py # Base agent class & shared utilities
โ
โโโ orchestrator/
โ โโโ graph.py # LangGraph state graph definition
โ โโโ state.py # Typed shared state schema
โ โโโ router.py # Agent routing & transition logic
โ โโโ orchestrator.py # Main orchestrator controller
โ
โโโ kanban/
โ โโโ board.py # Kanban board state management
โ โโโ columns.py # Column definitions & transition rules
โ โโโ task.py # Task model & lifecycle methods
โ
โโโ api/
โ โโโ routes.py # Flask REST API route definitions
โ โโโ schemas.py # Request/response validation schemas
โ โโโ middleware.py # Auth, logging, error handling
โ
โโโ pipeline/
โ โโโ workflow.py # Workflow pipeline execution engine
โ
โโโ utils/
โ โโโ logger.py # Structured audit logging
โ โโโ config.py # Global configuration constants
โ โโโ helpers.py # Shared utility functions
โ
โโโ frontend/
โ โโโ index.html # Kanban board dashboard
โ โโโ board.js # Live board update logic
โ โโโ styles.css # Dashboard styling
โ
โโโ tests/
โโโ test_agents.py # Unit tests for each agent
โโโ test_orchestrator.py # Integration tests for state graph
โโโ test_api.py # REST API endpoint tests
Python 3.10 or higher
pip (Python package manager)# 1. Clone the repository (search GitHub for "AI-Multi-Agent-Swarm-System" by Atharva Shevate)
cd AI-Multi-Agent-Swarm-System
# 2. Create & activate a virtual environment
python -m venv venv
source venv/bin/activate # Linux / macOS
# venv\Scripts\activate # Windows
# 3. Install all dependencies
pip install -r requirements.txt
# 4. Set up environment variables
cp .env.example .env
# Edit .env and add your API keys (OpenAI, Groq, etc.)
# 5. Run the application
python app.pyOnce running, open http://localhost:5000 in your browser to view the live Kanban dashboard and start submitting tasks for the agents to process.
# Submit a new task via REST API
curl -X POST http://localhost:5000/api/tasks \
-H "Content-Type: application/json" \
-d '{
"title": "Build feature pipeline",
"description": "Implement the data ingestion module",
"priority": "high",
"category": "engineering",
"dependencies": ["task-001", "task-002"]
}'
# Check task status
curl http://localhost:5000/api/tasks/{task_id}/status
# Get full Kanban board state
curl http://localhost:5000/api/boardlangchain>=0.2.0
langgraph>=0.1.0
flask>=3.0.0
flask-cors>=4.0.0
python-dotenv>=1.0.0
pydantic>=2.0.0
openai>=1.0.0
requests>=2.31.0โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Metric Result
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Task Assignment Accuracy โ
High โ priority-aware routing
Dependency Resolution ๐ Full DAG validation (multi-level)
Kanban Sync Latency โก Real-time board updates
Agent Coordination ๐ค Zero-conflict shared state
API Response Time ๐ Fast REST endpoints (Flask)
Audit Coverage ๐ 100% โ every decision logged
Concurrent Tasks Supported โ๏ธ Multiple parallel pipelines
Error Handling ๐ Retry logic + state rollback
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- โ True multi-agent collaboration โ not a single model, but a coordinated swarm of specialized agents
- โ LangGraph-powered state machine โ type-safe shared state with well-defined agent transitions
- โ Dependency-aware orchestration โ complex multi-level task dependency graphs resolved automatically
- โ Live Kanban board โ full workflow visibility through a real-time visual dashboard
- โ REST API integration โ Flask endpoints make the system easy to connect to any external tool
- โ Audit-ready logging โ every agent decision recorded with full context and timestamps
- โ Clean modular architecture โ each agent independently testable and replaceable without system downtime
- โ
Secure by design โ credentials isolated in
.env, never committed to version control
All API keys and credentials used by agents (LLM APIs, integrations, external services) must be stored in environment variables using a .env file. Never hard-code secrets into source files. Always add your .env, session folders, and config files to .gitignore before pushing to version control.
# .gitignore โ always include these
.env
*.key
config/secrets.json
venv/
__pycache__/- LLM-Powered Agents โ swap rule-based logic for GPT-4 / LLaMA 3 driven decision making
- Analytics Dashboard โ task throughput, agent performance, and bottleneck visualization
- Cloud Deployment โ deploy on AWS EC2 / Docker with auto-scaling agent pools
- Predictive Task Allocation โ ML model predicts optimal agent assignment based on history
- Real-Time Collaboration โ multi-user board with WebSocket live sync
- Webhook Integration โ push events to Slack, Jira, or GitHub Issues on task completion
- Agent Memory โ persistent vector store for agents to recall past decisions
- Custom Agent Builder โ UI to define new specialist agents without code changes
| Name | Atharva Shevate |
| Role | AI Engineer Intern @ IOTIOT.IN, Pune |
| University | Vishwakarma University โ B.Tech Computer Engineering 2026 |
| Specialization | GenAI ยท LLMs ยท RAG ยท Multi-Agent Systems ยท Computer Vision |
| atharvshevate3@gmail.com | |
| Atharva Shevate โ search "atharva-shevate" on LinkedIn | |
| GitHub | atharva1727 |
| Portfolio | Atharva Shevate's personal portfolio site |
This project is licensed under the MIT License. See the LICENSE file included in the repository for full details.
โญ If you found this useful, consider starring the repo!
More projects, portfolio work, and contact details are available directly from Atharva Shevate โ GitHub: atharva1727 ย |ย Email: atharvshevate3@gmail.com
"Building autonomous systems where agents collaborate like a team โ independently smart, collectively powerful." ๐ค


