{"id":"46dc702b-83e1-4a57-84d4-be9e750467f5","slug":"crewai-nagarajanuser-interview-practice-assistant-using-crewai","name":"Interview-Practice-Assistant-using-CrewAI","description":"Multi-agent Generative AI application built with FastAPI, CrewAI, Ollama, and MySQL that automates technical interview generation, candidate evaluation, AI-based scoring, and personalized feedback through specialized AI agents for planning, question generation, answer creation, quality assurance, and interview assessment.","canonicalUrl":"https://www.xpersona.co/skill/crewai-nagarajanuser-interview-practice-assistant-using-crewai","sourceUrl":"https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI","homepage":null,"source":"GITHUB_REPOS","vendor":{"slug":"nagarajanuser","label":"Nagarajanuser","url":"https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI"},"protocols":["OPENCLEW"],"capabilities":["crewai","multi-agent"],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":null,"freshnessAt":"2026-10-09T16:16:45.713Z","freshnessLabel":"Oct 9, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Oct 9, 2026"},{"label":"Vendor","value":"Nagarajanuser"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"Unpublished"}],"factsPreview":[{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Nagarajanuser","href":"https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI","sourceUrl":"https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI","sourceType":"profile","confidence":"medium","observedAt":"2026-10-09T16:16:45.723Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://www.xpersona.co/api/v1/agents/crewai-nagarajanuser-interview-practice-assistant-using-crewai/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/crewai-nagarajanuser-interview-practice-assistant-using-crewai/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-10-09T16:16:45.723Z","isPublic":true},{"factKey":"docs_crawl","category":"integration","label":"Crawlable docs","value":"6 indexed pages on the official domain","href":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceUrl":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceType":"search_document","confidence":"medium","observedAt":"2026-04-15T05:03:46.393Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://www.xpersona.co/api/v1/agents/crewai-nagarajanuser-interview-practice-assistant-using-crewai/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/crewai-nagarajanuser-interview-practice-assistant-using-crewai/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["Trust evidence available"],"agentCard":{"name":"Interview-Practice-Assistant-using-CrewAI","description":"Multi-agent Generative AI application built with FastAPI, CrewAI, Ollama, and MySQL that automates technical interview generation, candidate evaluation, AI-based scoring, and personalized feedback through specialized AI agents for planning, question generation, answer creation, quality assurance, and interview assessment.","source":"GITHUB_REPOS","sourceId":"crewai:1314615603","repository":"https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI","documentation":"https://www.xpersona.co/skill/crewai-nagarajanuser-interview-practice-assistant-using-crewai/agent/crewai-nagarajanuser-interview-practice-assistant-using-crewai","protocols":["OPENCLEW"],"capabilities":["crewai","multi-agent"],"languages":["python"],"install":{"command":"git clone https://github.com/Nagarajanuser/Interview-Practice-Assistant-using-CrewAI.git","ecosystem":"git"},"examples":[{"kind":"example","language":"mermaid","snippet":"graph TD\n    %% Styling Definitions\n    classDef client fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#01579b;\n    classDef api fill:#e8f5e9,stroke:#388e3c,stroke-width:2px,color:#1b5e20;\n    classDef agent fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#e65100;\n    classDef llm fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#4a148c;\n    classDef db fill:#ffebee,stroke:#d32f2f,stroke-width:2px,color:#b71c1c;\n\n    subgraph Presentation_Layer[\"🌐 Presentation Layer (Client)\"]\n        UI[\"Angular 17+ SPA Client<br/>(Chat Widget, Admin, Feedback Dashboard)\"]:::client\n    end\n\n    subgraph API_Tier[\"⚡ Application Tier (FastAPI Gateway)\"]\n        CORS[\"CORS Middleware & Auth Guards\"]:::api\n        Router[\"FastAPI REST Router<br/>(/api/v1/interview, /api/v1/evaluation)\"]:::api\n        Service[\"Service Layer<br/>(Interview & Evaluation Services)\"]:::api\n        Config[\"Domain Matrix Config<br/>(backend/config/roles.json)\"]:::api\n    end\n\n    subgraph Agent_Orchestration[\"🤖 Agentic AI Engine (CrewAI Framework)\"]\n        subgraph Interview_Crew[\"Interview Generation Crew\"]\n            Planner[\"1. Planner Agent<br/>(Curriculum & Blueprint)\"]:::agent\n            QGen[\"2. Question Generator Agent<br/>(Technical Question Creator)\"]:::agent\n            AnsGen[\"3. Answer Specialist Agent<br/>(Ideal Benchmark & Rubric)\"]:::agent\n            QA[\"4. QA Reviewer Agent<br/>(Schema & Constraint Validator)\"]:::agent\n        end\n\n        subgraph Evaluation_Crew[\"Candidate Assessment Crew\"]\n            EvalAgent[\"5. Evaluator Agent<br/>(Rubric Matching & Scoring)\"]:::agent\n        end\n    end\n\n    subgraph LLM_Tier[\"🧠 LLM Abstraction & Provider Layer\"]\n        LLMFactory[\"LLM Factory Switcher<br/>(llm_factory.py)\"]:::llm\n        OpenAI_Model[\"OpenAI GPT-4o / GPT-4o-mini\"]:::llm\n        Ollama_Model[\"Ollama Local Model<br/>(Llama 3 / Mistral)\"]:::llm\n    end\n\n    subgraph Persistence_Tier[\"💾 Persistence & Storage Tier\"]\n        Repo[\"Repository Layer<br/>(Interview & Evaluat"},{"kind":"example","language":"mermaid","snippet":"sequenceDiagram\n    autonumber\n    actor Candidate as Candidate / User\n    participant Frontend as Angular Frontend\n    participant API as FastAPI Backend\n    participant Config as roles.json Matrix\n    participant ICrew as Interview Crew (CrewAI)\n    participant ECrew as Evaluation Crew (CrewAI)\n    participant DB as MySQL Database\n\n    %% PHASE 1: GENERATION\n    rect rgb(235, 245, 255)\n    note right of Candidate: Phase 1: Interview Generation & Setup\n    Candidate->>Frontend: Select Role (e.g. AI Engineer), Experience (e.g. 3 Yrs), Difficulty (Hard)\n    Frontend->>API: POST /api/v1/interview/generate {role, experience, difficulty, question_count}\n    API->>Config: Fetch mandatory/optional/excluded skills\n    Config-->>API: Skill Governance Constraints\n    API->>ICrew: Kickoff Interview Generation Crew (Planner -> Question -> Answer -> QA)\n    ICrew->>ICrew: Planner creates blueprint matching experience\n    ICrew->>ICrew: Question Agent generates targeted technical questions\n    ICrew->>ICrew: Answer Agent synthesizes benchmark ideal answers\n    ICrew->>ICrew: QA Agent filters duplicates, verifies constraints & returns InterviewPlanOutput\n    ICrew-->>API: Return Pydantic Validated Question Set\n    API->>DB: Save Session & Generated Questions into MySQL\n    DB-->>API: Session ID Created\n    API-->>Frontend: Return Session Data & Questions (Hiding Ideal Answers from Client)\n    Frontend-->>Candidate: Display Interactive Candidate Interface\n    end\n\n    %% PHASE 2: ASSESSMENT\n    rect rgb(255, 245, 235)\n    note right of Candidate: Phase 2: Candidate Submission & Evaluation\n    Candidate->>Frontend: Complete Interview & Submit Responses\n    Frontend->>API: POST /api/v1/interview/submit {session_id, answers: [{q_id, response}]}\n    API->>DB: Update Candidate Answers in MySQL\n    API->>ECrew: Kickoff Evaluation Crew (session_id)\n    ECrew->>DB: Fetch Questions, Candidate Answers & Ideal References\n    DB-->>ECrew: Return Session Q&A Data\n    ECrew->>ECrew: Sanitize & "}]}}