<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Toshik Soni</title>
    <description>The latest articles on Forem by Toshik Soni (@toshiksoni).</description>
    <link>https://forem.com/toshiksoni</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3741986%2F5bf848f0-185e-4304-a582-9f436f356139.png</url>
      <title>Forem: Toshik Soni</title>
      <link>https://forem.com/toshiksoni</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/toshiksoni"/>
    <language>en</language>
    <item>
      <title>Vish AI: 24/7 Mental Health Companion Built with GitHub Copilot CLI</title>
      <dc:creator>Toshik Soni</dc:creator>
      <pubDate>Wed, 04 Feb 2026 07:46:47 +0000</pubDate>
      <link>https://forem.com/toshiksoni/vish-ai-247-mental-health-companion-built-with-github-copilot-cli-2n78</link>
      <guid>https://forem.com/toshiksoni/vish-ai-247-mental-health-companion-built-with-github-copilot-cli-2n78</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-01-21"&gt;GitHub Copilot CLI Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Vish AI — a multi-agent mental health companion that's available when you actually need it.&lt;/p&gt;

&lt;p&gt;332 million people worldwide deal with depression. Suicide is the third leading cause of death for 15–29 year olds. Traditional therapy has month-long waitlists and runs $100–250 per session. Crisis hotlines only help during emergencies. Mental health apps? 70–75% abandoned within 100 days.&lt;/p&gt;

&lt;p&gt;Vish AI tackles this with 4 specialized AI agents — a Crisis Counselor, CBT Therapist, Mindfulness Coach, and Conversational Companion — that dynamically route to the right specialist based on what you're going through. It learns from your journals, medical records, and personal history to provide context-aware, personalized support. Text or voice, whenever you need it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Features
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Multi-Agent Intelligence
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;4 specialized agents with automatic routing: Crisis Counselor (🚨), CBT Therapist (🧠), Mindfulness Coach (🧘), Companion (💙)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Agent badges show you exactly which specialist is responding — full transparency&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Agents are mutually aware and suggest handoffs when appropriate&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  3D Avatar Companions with Real-Time Lip Sync
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;3 selectable VRM avatars (Ava, Luna, Kai) rendered in Three.js&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Real-time lip sync driven by Web Audio API frequency analysis — avatar mouths move in sync with AI speech&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Emotion-reactive facial expressions based on response sentiment&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automatic blinking, idle breathing, head sway, and wave greeting on load&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Azure AI Avatar
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Microsoft's photorealistic Text-to-Speech Avatar streamed via WebRTC&lt;br&gt;
6 characters with natural lip sync and body language&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;6 characters with multiple natural lip sync voices and body language&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Voice Conversation Mode
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Full hands-free with speech recognition and Azure OpenAI audio&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Barge-in support — interrupt anytime&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Continuous flow with auto resume&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  RAG + Personal Document Upload
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Built-in mental health resources + your own PDFs, journals, medical records&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Source attribution on every response&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  MCP Server (Model Context Protocol)
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Standalone server with 5 tools and 4 resource collections&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Real-time crisis assessment (3-tier severity + confidence)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Structured CBT delivery and topic search&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Crisis Safety System
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Keyword detection on every message&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MCP-powered severity scoring&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Auto crisis modal with country-specific hotlines&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Graceful fallback when Azure Content Safety blocks — never leaves the user hanging&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Deep Personalization
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;13 profile fields&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose how Vish acts: friend, therapist, mentor, sibling, coach, confidant&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Avatar fully embodies the chosen personality, name, gender, and voice&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; This is an LLM-powered tool. It makes mistakes. If you're in crisis, seek professional help immediately.&lt;/p&gt;




&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/ToshikSoni/JS-AI_VishAI/" rel="noopener noreferrer"&gt;https://github.com/ToshikSoni/JS-AI_VishAI/&lt;/a&gt;&lt;br&gt;
Try it out: &lt;a href="https://gentle-ground-0e9b60d03.2.azurestaticapps.net" rel="noopener noreferrer"&gt;VishAI&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;I had to remove the live demo because of the hosting cost. You can deploy the website and test it out on your own by providing the required API keys. You need to use Microsoft text-to-speech avatar service for real-time realistic avatar. Along with any chat based and voice based AI LLM.&lt;/strong&gt;&lt;br&gt;
Video Demo for real-time avatar: 

  &lt;iframe src="https://www.youtube.com/embed/CLgC3gebGWY"&gt;
  &lt;/iframe&gt;


&lt;br&gt;
Website Demo: &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1q9ztlbhjw0dsxvrlrh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1q9ztlbhjw0dsxvrlrh.png" alt=" "&gt;&lt;/a&gt;&lt;br&gt;
Real-time avatars:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feeov8edneeuslcl2u0u7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feeov8edneeuslcl2u0u7.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  My Experience with GitHub Copilot CLI
&lt;/h2&gt;

&lt;p&gt;GitHub Copilot CLI wasn't just a helper — it was a force multiplier. I lived in the terminal the entire build and it completely changed the pace.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where Copilot CLI made the biggest impact:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Multi-agent orchestration: I described the routing logic, priority escalation, and handoff system. It scaffolded the entire orchestrator, agent definitions, and mutual awareness in one go. What would've been a full day of architecture took an afternoon.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MCP Server: Built the entire Model Context Protocol server (5 tools, 4 resource collections, REST protocol) from scratch. Copilot CLI nailed the tool schemas, crisis scoring algorithm, and client-server wiring.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Real-time lip sync: Told it "analyze Web Audio API frequencies to drive VRM blend shapes for visemes." It gave me the full FFT analysis, band mapping, smoothing, and blend shape code. Feature that normally takes days was done in hours.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Azure AI Avatar integration: WebRTC, ICE negotiation, Speech SDK flow — Copilot CLI generated the whole connection management, throttling, and error handling.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RAG pipeline: Chunking strategy, scoring, prompt injection — all suggested and refined instantly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Azure deployment hell: When things broke, I pasted the errors and it diagnosed auth, CORS, Bicep syntax, and even fixed the docker-compose for local dev.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Crisis safety fallback: Critical part — when Content Safety blocks, it can't fail silently. Copilot CLI designed the try-catch flow that auto-generates compassionate safety responses with resources.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The development speed difference:&lt;/strong&gt;&lt;br&gt;
Features that took 20–30 minutes each dropped to 5–10 minutes. Over 30+ complex features, that compounding let me ship something way more ambitious than I could've alone. Copilot CLI kept me in flow the entire time.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>cli</category>
      <category>githubcopilot</category>
    </item>
  </channel>
</rss>
