Inspiration
Finding skincare and haircare products can be overwhelming. There are thousands of products on the market, each with different ingredients, benefits, and compatibility with different skin and hair types. Many people rely on generic recommendations that don't account for their unique concerns, allergies, or routines. I wanted to build an AI-powered assistant that could provide personalized recommendations while demonstrating how multiple AI agents can collaborate to solve a real-world problem. Rather than relying on a single prompt, I designed an agentic workflow where specialized agents work together to gather user information, recommend products, and create customized routines.
What it does
The Skincare & Haircare Advisor Agent helps users build personalized skincare and haircare routines based on their profile. Through a conversational interface, users can build a personalized profile by providing their skin type, hair type, concerns, allergies, and preferences, receive product recommendations tailored to their needs, generate personalized morning and evening skincare and haircare routines, and ask follow-up questions about products, ingredients, and routines while the system continuously updates their profile.
How I built it
The project follows a full-stack, agentic AI architecture. The frontend, which is made with React, Vite, and Tailwind CSS, provides a chat interface alongside a profile dashboard displaying the user's information, recommended products, and generated routines. The backend, which is made with FastAPI and Python, manages user sessions, profile state, routines, and communication between the frontend and the AI agents. The AI layer is powered by Google's Gemini API and uses two specialized agents: Intake Agent extracts structured user information from natural language and updates the user's profile. Recommendation Agent searches the product database to recommend products that match the user's profile while considering concerns and allergies, and generates personalized morning and evening skincare and haircare routines using the recommended products. These agents communicate through an orchestration layer that determines which agent(s) should execute based on the user's request, allowing the system to combine profile updates, product recommendations, and routine generation within a single conversation. The application also integrates tool functions for profile management, product search, ingredient lookup, safety checks for allergies, and routine generation.
Challenges I ran into
One of the biggest challenges was designing the right agent architecture. I initially built the system using three specialized agents: an Intake Agent, a Research Agent, and a Planner Agent. While this separation seemed clean in theory, it introduced unnecessary orchestration complexity. Information had to be passed across multiple agents, making the workflow harder to maintain and resulting in extra routing logic and slower responses. As I continued developing the project, I realized that the Research and Planner agents had overlapping responsibilities. I refactored the architecture into two agents instead: an Intake Agent, responsible for extracting and updating structured user profile information, and a Recommendation Agent, responsible for selecting products and generating personalized routines in a single step. This redesign significantly simplified the orchestration layer, reduced the number of agent handoffs, and made the system more responsive while still maintaining personalized recommendations and routines.
Accomplishments that I'm proud of
One of my biggest accomplishments was building a fully functional agentic AI application that goes beyond simple chatbot interactions. The project successfully combines a conversational interface, user profiles, product recommendations, and personalized skincare and haircare routines into one experience. I am especially proud of designing an agent-based architecture that can understand user needs, maintain context, and make personalized recommendations. By integrating tool usage for profile management, product search, ingredient analysis, and safety checks, the system can provide recommendations that are more relevant and grounded in user-specific information. Another accomplishment was improving the architecture through iteration. After identifying limitations with my initial three-agent design, I successfully refactored the system into a more efficient two-agent workflow. This reduced unnecessary complexity while preserving the personalization and functionality of the application.
What I learned
Throughout this project, I learned that building effective AI applications requires more than connecting an LLM to a user interface. The surrounding architecture, orchestration logic, and tool integrations play a critical role in creating a reliable and useful system. I learned how to design and orchestrate multi-agent AI workflows with clearly defined responsibilities, build full-stack AI applications using React, FastAPI, and Gemini, integrate LLMs with external tools to perform structured tasks and maintain user state, balance agent specialization with system simplicity when designing AI architectures, and debug and improve AI behavior through iterative testing and refinement.
What's next for Skincare & Haircare Advisor Agent
Moving forward, I want to focus on improving the user experience and making the application feel more like a polished consumer product. Due to the time constraints during development, I was not able to fully customize the way recommendations and routines are presented. One of the next steps would be redesigning the response format to make recommendations more structured, visually engaging, and easier to follow, such as organizing products by purpose, highlighting key ingredients, explaining why each recommendation fits the user's profile, and displaying routines in a clear step-by-step format. Beyond improving personalization and user experience, I would like to expand the project into a full transaction-based application where users can purchase recommended products directly through the platform. This would transform the advisor from a recommendation tool into an end-to-end skincare and haircare assistant by connecting personalized AI recommendations with product discovery and purchasing.
Built With
- agenticai
- aiagents
- datamanagement
- fastapi
- full-stackdevelopment
- generativeai
- git
- googlegeminiapi
- json
- llms
- multi-agentsystems
- natural-language-processing
- personalization
- promptengineering
- python
- rag
- react
- recommendationsystems
- restapi
Log in or sign up for Devpost to join the conversation.