Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Concierge

Project Note (Current Focus)

Active development is currently focused on the Chrome extension implementation in concierge-chrome/ (Manifest V3, local-first AI models). Start with concierge-chrome/README.md


This is an agentic script which automates product search, cart management, and checkout on Amazon.in. At it's core, it uses Playwright, with LLM-assisted product selection and guardrails for spend limits.

Overview

Concierge is a full-stack workflow for Amazon.in ordering. A FastAPI backend drives Playwright automation while a Vite + React dashboard lets you watch each step in real time. The backend handles product search, selection, cart management, and checkout. The UI turns this into a readable timeline showing what the agent is doing. On the frontend, lucide-react icons and custom styling power the status indicators and card layouts.

  • FastAPI endpoints orchestrate Playwright sessions and expose order state for the UI.
  • The dashboard surfaces task progress, order metadata, and system health in one place.
  • Product selection runs through Llama 3.1 via Groq with a safe fallback model.
  • The flow supports retail and Fresh carts, proceeds through checkout, and can use Amazon Pay Later.

Tech Stack

Backend

  • Python 3.9+ - Core automation runtime
  • Playwright - Browser automation for Amazon.in
  • FastAPI - REST API server
  • Uvicorn - ASGI server
  • Groq API - LLM provider (Llama 3.1)
  • Pandas - Order history tracking

Frontend

  • React 18 - UI framework
  • Vite - Build tool and dev server
  • Lucide React - Icon library

Integration

  • Amazon.in - Target e-commerce platform
  • Amazon Pay Later - Payment method

Requirements

  • Python 3.9+
  • Playwright (Chromium) and its browser binaries
  • Groq API key
  • Amazon.in account credentials
  • FastAPI + Uvicorn (for the backend API)

Setup

  1. Create a virtual environment and install dependencies:

    python -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    playwright install

Usage

Web Dashboard (Recommended)

  1. Start the backend server:

    uvicorn backend.server:app --reload --host 0.0.0.0 --port 8000
  2. Start the frontend (in a separate terminal):

    cd frontend
    npm install
    npm run dev -- --host 0.0.0.0 --port 5173
  3. Open your browser to http://localhost:5173 and place orders through the dashboard

CLI Mode

You can also run the script directly from the command line:

python backend/amazon_order.py

You will be prompted to choose a mode:

  1. Test Mode (dry run, no order placed)
  2. Real Mode (places orders)
  3. Login / Refresh Session Only

Then enter product queries like 'Hershey's Cookies and Creme Bar' or 'Amul Toned Milk 1L'

Configuration

  • REQUIRE_CONFIRMATION: confirmation guardrails

Logs and session data

  • backend/logs/amazon_orders.log: runtime logs
  • backend/logs/amazon_session.pkl: saved login session

Future Plans

  • Reinstate persistent login and session restore functionality with re-authentication handling during checkout flow
  • Strengthen product selection by refining the LLM prompt, adding heuristic filters, and surfacing confidence metrics for each suggestion.
  • Reintroduce configurable spend tracking (per-order/daily) with editable limits, spend history visualization, and optional alerts before crossing thresholds.
  • Multi-account support for switching between different Amazon accounts
  • Expand beyond Amazon.in to other platforms: food delivery (Swiggy, Doordash), travel booking (MakeMyTrip, Expedia), grocery delivery (BigBasket, Blinkit), and general e-commerce (Flipkart)

Notes and safety

  • Real Mode will place actual orders, and is only recommended when user is closely following the agent's actions.
  • This is intended as a demo for now; and users are advised to use Test Mode
  • The agent launches the locally installed Chrome browser via Playwright's channel="chrome" flag; keep Chrome up to date so automation stays compatible.
  • Amazon may prompt for OTP during login.
  • The checkout flow assumes Amazon Pay Later is available and selected during checkout, and that the default address is the correct one.

About

Agentic Systems

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages