ML/AISWEVoice AIReal-TimeHackathonFebruary 2026

Mind Duelist: AI Adversarial Interviewer

Real-time voice-based technical interviewer that detects bluffing, maps knowledge gaps, and dynamically escalates follow-up questions using LLM-driven gap analysis and live scoring.

Details

Mind Duelist is a voice-based AI technical interviewer that conducts adversarial interviews in real-time. Unlike standard interview prep tools that follow scripted question lists, Mind Duelist actively listens to responses, detects when candidates are bluffing or giving surface-level answers, and dynamically escalates follow-up questions to probe genuine understanding.

The system uses ElevenLabs for natural text-to-speech voice synthesis and Gemini Flash for rapid LLM inference to analyze responses in real-time. When a candidate provides an answer, the system evaluates coherence against conversation history, assesses technical depth relative to the topic, checks consistency with prior statements, and identifies specific knowledge gaps. If bluffing is detected, the interviewer escalates difficulty; if the answer is genuine, it explores deeper into the topic.

The backend runs on Supabase with Edge Functions for serverless processing, enabling low-latency voice-to-analysis pipelines. The React frontend provides a live interview interface with real-time scoring, knowledge gap visualization, and post-interview analytics showing strengths and areas for improvement.

The project name 'NightmareBot' reflects the interviewer's adversarial design philosophy: it's meant to challenge candidates far beyond what a typical interviewer would, making real interviews feel easy by comparison.

Highlights

  • Real-time voice interaction using ElevenLabs TTS and speech recognition
  • LLM-powered bluff detection analyzing coherence, technical depth, and consistency
  • Dynamic question escalation that adapts difficulty based on detected knowledge gaps
  • Live scoring and knowledge gap mapping during the interview
  • Supabase Edge Functions for low-latency serverless processing
  • Post-interview analytics with strengths and improvement areas
  • Adversarial design philosophy: makes real interviews feel easy by comparison

Code sample

bluff-detector.ts
typescript
async function analyzeResponse(
  answer: string,
  topic: string,
  history: QAPair[]
): Promise<BluffAnalysis> {
  const coherence = await measureCoherence(answer, history);
  const depth = assessTechnicalDepth(answer, topic);
  const consistency = checkConsistency(answer, history);

  const isBluffing =
    coherence < 0.4 || depth < 0.3 || consistency < 0.5;

  return {
    verdict: isBluffing ? "BLUFF_DETECTED" : "GENUINE",
    confidence: 1 - Math.min(coherence, depth, consistency),
    nextAction: isBluffing
      ? "ESCALATE_DIFFICULTY"
      : "EXPLORE_DEEPER",
    knowledgeGaps: extractGaps(answer, topic),
  };
}

Built with

ReactTypeScriptElevenLabsGemini FlashSupabaseEdge FunctionsAI/ML