What it does

CVs are useful, but they are static. I built Chat Me AI to turn a CV into an interactive professional introduction that lets recruiters ask questions and understand a candidate beyond a document.

Candidates upload a CV, photo, social links, and choose a communication persona. Chat Me AI creates a shareable profile where recruiters can chat with an AI representative grounded in that candidate's CV. It answers only from the available profile information and provides a clear fallback whenever the CV does not contain the answer.

How I built it

I started by using Codex to create the project's instruction and planning documents. AGENTS.md defined the working rules, PROJECT_SPEC.md captured the product requirements and architecture, and docs/project_structure.md defined where each part of the system belongs. These documents provided a shared context and clear implementation boundaries throughout development.

I used different Codex models and reasoning levels depending on the task: gpt-5.6-luna for rapid implementation and iteration, gpt-5.6-terra for balanced planning and development, and gpt-5.6-sol for complex architecture and high-stakes reasoning. Low and Medium reasoning handled routine implementation and verification, while High and Extra High reasoning helped design the system architecture, privacy boundaries, retrieval pipeline, and deployment strategy.

The result is a monorepo consisting of a Next.js/TypeScript frontend, a FastAPI backend, PostgreSQL with pgvector, and a storage layer supporting both local development and Supabase in production. The CV pipeline extracts text, cleans and chunks it, generates embeddings, retrieves profile-specific context, and produces grounded AI responses.

Challenges I ran into

The biggest challenge was creating a conversational experience without allowing the AI to invent qualifications or expose another user's information. I solved this by implementing profile-scoped retrieval, deterministic routing for predictable questions, AI guardrails, fallback responses, and automated tests.

Another challenge was coordinating the complete CV processing pipeline—from upload validation and storage through text extraction, embedding generation, and processing status tracking—while supporting both local and cloud environments.

Accomplishments that I'm proud of

  • I transformed a static CV into a shareable, conversational professional profile.
  • I made privacy, factual grounding, and retrieval boundaries core product requirements.
  • I designed a clear architecture separating the frontend, backend, database, storage, and AI components.
  • I leveraged structured project documentation and Codex workflows to keep development focused, consistent, and testable.

What I learned

I learned that reliable AI products depend as much on well-defined system boundaries as they do on the underlying models. Deterministic application logic should handle validation, identity, retrieval scope, processing status, and usage limits, while the language model should focus solely on grounded reasoning and natural language generation.

I also learned that instruction files are practical engineering tools. AGENTS.md, PROJECT_SPEC.md, and the project structure documentation gave both me and Codex a consistent understanding of what to build, where components belong, and how to verify implementation quality.

What's next for Chat Me AI

Next, I plan to complete and validate the audio conversation experience, improve processing observability and retrieval quality, strengthen production security, add profile management and deletion capabilities, and expand end-to-end testing. My goal is to make candidates easier for recruiters to understand while ensuring the AI never appears more certain than the evidence contained in the candidate's profile.

Built With

Share this project:

Updates