Capstone: Chat2Action
Chat2Action — ERPNext Task Assistant with RAG Helpdesk
Real-World Problem Statement
Business owners, team leads, and operations managers often don't have time to open ERP dashboards just to assign, update, or review tasks. Tasks are frequently delegated informally (messages/DMs) or kept in memory, which leads to missed deadlines, duplicated work, and miscommunication.
This mini-capstone builds a chat-based assistant that performs real task operations in ERPNext (Frappe) and also provides a RAG-powered helpdesk that answers "how to use ERPNext tasks" questions grounded in official documentation.
Project Scope
A) Action Mode (ERPNext Integration — Mandatory)
The chatbot must execute actions in real ERPNext via REST APIs (Frappe).
Task Operations (Doctype: Task)
- Create task (title, assignee required; due date recommended)
- Update task (title, due date, status, assignee)
- Delete/cancel task
- List tasks:
- by user (assignee)
- by status (Open / Working / Completed, etc.)
- by due date window (today/this week)
User Resolution
- Mention-based assignee selection (e.g., "Ali") mapped to ERPNext users
ERP Adapter Layer
- A dedicated service/module wrapping ERPNext calls:
create_task(),update_task(),cancel_or_delete_task(),list_tasks()get_users()(for assignee lookup)
B) Knowledge Mode (RAG using ERPNext Docs — Mandatory)
The chatbot must answer ERPNext workflow questions using Retrieval-Augmented Generation grounded in ERPNext documentation.
RAG Content Source (Required)
- ERPNext official documentation related to Tasks/Projects (minimum: ~10-20 pages worth of content)
Required RAG Features
- Document ingestion pipeline (download → clean → chunk)
- Vector indexing (FAISS/Chroma/Pinecone—any is fine)
- Retrieval (top-k) + answer generation
- Citations: every answer must cite doc chunk(s) or source URLs
- Hallucination control: if not found in docs, refuse safely
C) Interface & System Requirements
- REST API backend (FastAPI recommended)
- Web chat UI (React/Streamlit/Gradio; simple but usable)
- Dockerized run (ERPNext + backend + UI via docker-compose)
- Logging + basic error handling
- Basic auth for your backend (simple token/API key is enough)
Out of Scope (Not Required)
- Invoice generation / Sales Invoice integration
- Training custom ML models
- Building a full ERP system
- Payment systems
- Enterprise SSO
- Advanced analytics dashboards
- Complex multi-tenant permissions (optional bonus)
Expected Time to Complete
Total Duration: 1-2 weeks (7-12 days)
Recommended Schedule
Day 1–2: ERPNext Setup + API Connectivity
- Run ERPNext via Docker
- Create API key/secret
- Verify: list users, create a Task, update a Task
Day 3–4: Action Mode (Chat → Intent → ERP Adapter)
- Implement intent routing: create/update/delete/list tasks
- Implement disambiguation (multiple matching tasks)
- Add input validation (required fields, dates)
Day 5–6: RAG Pipeline
- Ingest ERPNext doc
- Chunk + embed + index
- Implement Knowledge Mode answers with citations + refusal
Day 7–8: UI
- Chat UI with loading states and clear confirmations
- Show citations in the UI for RAG answers
Day 9–12: Polish + Tests + Documentation
- Logging, error handling, retries
- README + short write-up
- Demo assets