Multi-agent platform that democratizes agricultural expertise for farmers worldwide — in French, English, and Wolof.
Built for the "Built with Claude: Claude Code Hackathon" (February 10–16, 2026).
Over 500 million smallholder farmers worldwide lack access to timely, expert agricultural advice. Language barriers, costly consultants, and limited internet connectivity leave them making decisions based on incomplete information — leading to crop losses, pest damage, and missed market opportunities.
AgriAgent is an autonomous multi-agent AI system powered by Claude Opus 4.6 that delivers personalized, real-time advice on weather, crop management, disease diagnosis, and market pricing — accessible via web, mobile, or SMS in the farmer's own language.
| Feature | Description |
|---|---|
| 🤖 Multi-Agent Chat | Orchestrator routes queries to specialized Weather, Agro, and Market agents running in parallel |
| 📸 Crop Photo Diagnosis | Upload a photo → Claude Vision identifies diseases and recommends treatments |
| 🎤 Voice Input/Output | Speech-to-text input + text-to-speech for responses (accessibility) |
| 🌍 Interactive World Map | Leaflet map with 20+ countries, agricultural data, and city-level weather |
| 🗓️ Agricultural Calendar | Zone-specific planting calendars in grid and timeline views |
| 🌱 Field Management | Full CRUD for parcelles (fields), crops, season history, rotation advice |
| 📊 Market Intelligence | Crop prices by region with inter-city comparison |
| 📱 SMS Interface | Text METEO, NJEG, TOOL, or JEGGE via Twilio — response in Wolof or French |
| 🌗 Dark/Light Theme | Full theme support with CSS variables |
| 🌐 Trilingual | French, English, and Wolof across every page and notification |
| 🏆 Gamification | Farmer levels, badges, and achievement stats |
| 🔔 Smart Alerts | AI-generated personalized alerts (weather, pests, market, calendar) |
┌─────────────────────────────────────────────────────┐
│ USERS │
│ Web · SMS · Voice │
└────────────────────┬────────────────────────────────┘
│
┌────────────────────┴────────────────────────────────┐
│ NEXT.JS 16 FRONTEND │
│ React 19 · Tailwind 4 · Framer Motion │
│ Auth · i18n (FR/EN/WO) · Dark/Light │
└────────────────────┬────────────────────────────────┘
│ REST + SSE Streaming
┌────────────────────┴────────────────────────────────┐
│ FASTAPI BACKEND │
│ Supabase JWT · Public + Protected Routes │
└────────────────────┬────────────────────────────────┘
│
┌────────────────────┴────────────────────────────────┐
│ ORCHESTRATOR AGENT │
│ Claude Sonnet 4 · Keyword Routing │
│ Auto Language Detection · Multi-Agent Sync │
└──────┬─────────────┬──────────────┬─────────────────┘
│ │ │
┌──────┴──────┐ ┌────┴─────┐ ┌─────┴──────┐
│ WEATHER │ │ AGRO │ │ MARKET │
│ Claude 3 │ │ Claude 3 │ │ Claude 3 │
│ Haiku │ │ Haiku │ │ Haiku │
│ +Open-Meteo │ │ +Crops │ │ +Prices │
│ Tool Use │ │ +Disease │ │ +Compare │
│ 50+ cities │ │ +Zones │ │ Tool Use │
└─────────────┘ └──────────┘ └────────────┘
Each agent uses Claude tool-use to call specialized functions (weather API, crop database, market data), then the orchestrator synthesizes a unified response.
| Layer | Technology |
|---|---|
| LLM | Claude Sonnet 4 (orchestrator) + Claude 3 Haiku (sub-agents) |
| Backend | Python 3.12 · FastAPI · Uvicorn |
| Frontend | Next.js 16 · React 19 · TypeScript 5 |
| Styling | Tailwind CSS 4 · Framer Motion 12 |
| Maps | Leaflet · React-Leaflet |
| Auth | Supabase (PostgreSQL · JWT · RLS) |
| SMS | Twilio |
| Weather | Open-Meteo API (free, no key required) |
| AI Vision | Claude Vision (crop photo diagnosis) |
- Python 3.10+
- Node.js 18+
- Supabase project (free tier works)
- Anthropic API key
git clone https://github.com/MedouneSGB/AgriAgent-SN.git
cd AgriAgent-SNcd backend
pip install -r requirements.txtCreate backend/.env:
ANTHROPIC_API_KEY=sk-ant-...
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_ROLE_KEY=eyJ...
SUPABASE_JWT_SECRET=your-jwt-secret
# Optional:
TWILIO_ACCOUNT_SID=AC...
TWILIO_AUTH_TOKEN=...
TWILIO_PHONE_NUMBER=+1...Run the SQL migration in your Supabase dashboard:
# Copy backend/migration.sql into Supabase SQL Editor and executeStart the server:
uvicorn main:app --reload --port 8095cd frontend
npm installCreate frontend/.env.local:
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJ...
NEXT_PUBLIC_API_URL=http://localhost:8095/apiStart the dev server:
npm run devOpen http://localhost:3000 🎉
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/chat |
AI chat (JSON response) |
POST |
/api/chat/stream |
AI chat (SSE streaming) |
GET |
/api/weather/{city} |
7-day forecast for 50+ cities |
POST |
/api/diagnose |
Crop photo diagnosis (Vision) |
POST |
/api/sms/incoming |
Twilio SMS webhook |
GET |
/api/crops |
Crop database |
GET |
/api/markets |
Market prices |
GET |
/api/zones |
Agro-ecological zones |
GET |
/api/cities |
City coordinates |
| Method | Endpoint | Description |
|---|---|---|
GET/PUT |
/api/me |
User profile |
GET/POST |
/api/parcelles |
Field management |
GET/POST |
/api/cultures |
Crop tracking |
GET/POST |
/api/history |
Season history |
GET |
/api/alerts |
Personalized alerts |
POST |
/api/alerts/generate |
AI-generate alerts |
GET |
/api/calendar/{zone} |
Agricultural calendar |
GET |
/api/rotation/{id} |
Crop rotation advice |
- 50+ cities with weather data across 5 continents
- 20+ countries with agricultural data (crops, zones, markets)
- 16+ agro-ecological zones with specific crop calendars
- 50+ crops with full growing guides
- 3 languages — French, English, Wolof
agriagent/
├── backend/
│ ├── main.py # FastAPI app entry
│ ├── api.py # Public endpoints
│ ├── api_protected.py # JWT-protected endpoints
│ ├── auth.py # Supabase JWT verification
│ ├── config.py # Settings, cities, zones
│ ├── data_loader.py # JSON data loader
│ ├── migration.sql # Supabase DB schema + RLS
│ ├── agents/
│ │ ├── orchestrator.py # Multi-agent router
│ │ ├── weather_agent.py # Weather + Open-Meteo
│ │ ├── agro_agent.py # Crops + diseases + zones
│ │ ├── market_agent.py # Prices + comparison
│ │ └── alerts_agent.py # AI alert generation
│ ├── services/
│ │ ├── weather_service.py # Open-Meteo client
│ │ ├── supabase_service.py # Supabase client
│ │ └── sms_service.py # Twilio SMS parsing
│ └── data/
│ ├── crops.json # Crop knowledge base
│ ├── diseases.json # Disease/pest database
│ ├── markets.json # Market price data
│ └── zones.json # Agro-ecological zones
│
├── frontend/
│ └── src/
│ ├── app/ # Next.js pages (7 routes)
│ ├── components/ # React components (12)
│ ├── components/ui/ # Design system (14)
│ ├── context/ # Auth, Language, Theme
│ ├── lib/ # API client, Supabase
│ └── data/ # World agriculture data
│
└── .claude/docs/ # Project documentation
AgriAgent is built entirely on the Claude Opus 4.6 ecosystem, leveraging its capabilities across the entire stack:
- Claude Opus 4.6 — Powers the orchestrator agent for intelligent routing, language detection, and multi-agent synthesis
- Claude 3 Haiku — Fast sub-agents (weather, agro, market) with tool-use for real-time data access
- Claude Vision — Crop disease diagnosis from uploaded photos
- Tool Use — Each agent defines tools (functions) that Claude calls to fetch weather data, search crops, compare prices
- Multilingual — Claude generates responses in French, English, or Wolof based on detected language
- Streaming — SSE streaming for word-by-word chat responses
- Claude Code — The entire project was built using Claude Code as the development agent
MIT — See LICENSE for details.
Built with ❤️ for the Claude Code Hackathon 2026
Empowering farmers worldwide with AI-driven agricultural intelligence