ECHO: Your Past Self Saves Your Future Self
"What if the best person to help you in a crisis is you, from three weeks ago?"
GitHub: github.com/Sourab17/echo-your-inner-voice
Inspiration
Mental health apps have a problem. Almost every one of them opens with the same question: How do you feel right now? That question is almost useless at 3am during a spiral. When things get bad, thinking narrows. People forget what helps. They lose access to their own personal understanding of what works for them.
The people who need this most are not those who have never struggled. They are the ones who have been through it, found their footing, and are afraid of losing it again. They already have the wisdom. The problem is that crisis robs them of access to it.
ECHO flips the model. Your stable self does the work ahead of time, so your struggling self does not have to.
What It Does
ECHO is a two-mode mental health support tool powered by Claude.
Stable Mode is a guided conversation that a user has when they are doing well. Claude asks specific, concrete questions to surface the user's own knowledge about themselves: their triggers, their early warning signs, what has genuinely helped them before, and their personal reasons to keep going. The answers are turned into a personalized support protocol.
Crisis Mode activates when the user is struggling. The entry point is a single button: I need support right now. Claude does not rely on generic advice. It responds using the user's own words and experiences from when they were clear headed.
The core idea is simple. The system prompt for Crisis Mode is dynamically generated from the user's own Stable Mode inputs. Personalization happens at the model level.
How We Built It
The project is grounded in three clinical frameworks:
- DBT Safety Planning: structured identification of warning signs, coping strategies, and support contacts
- Narrative Therapy: using a person's own story as the basis for intervention
- Implementation Intentions: research showing that "if X then Y" plans improve follow-through in high-stress moments
These frameworks shaped the question design in Stable Mode. Instead of asking "what helps you cope?", the questions are precise: "What did you do last time that helped you get through the first hour?" That specificity is what makes Crisis Mode responses feel personal rather than clinical.
The stable-state conversation is kept short and split across multiple sessions rather than one long form. This keeps the experience from feeling like a medical intake and more like a running dialogue with yourself.
Challenges We Ran Into
Prompt architecture. Generic instructions to Claude produced generic responses. The breakthrough was moving away from category-level questions and toward moment-level ones. Designing that specificity into the conversation flow took significant iteration.
Keeping onboarding from feeling overwhelming. There is a real tension between collecting enough information to make Crisis Mode useful and making the setup feel like a long mental health form. The fix was breaking the stable-state conversation into short sessions over time rather than asking everything at once.
The trust problem. A user in crisis might read their own past advice and think, "that was a different situation." To address this, the stable-state prompts ask users to write directly to their future resistant self: "If you are telling yourself this does not apply right now, here is what I want you to remember."
Accomplishments That We're Proud Of
The system prompt for Crisis Mode is not static. It is built entirely from the user's own language, making Claude respond with the authority of the user's past self rather than a generic support script. Getting that to work consistently, and to feel genuinely different from existing mental health tools, was the accomplishment we are most proud of.
We are also proud of the simplicity of the crisis entry point. One button, no menus, no friction between opening the app and receiving support.
What We Learned
The hardest part of building a mental health tool is not the technology. It is resisting the urge to solve too much. Every feature added to a crisis interface is a decision point that could slow someone down at the worst possible moment. Restraint is a design choice.
Claude's usefulness scales with input quality. A vague system prompt produces vague responses. A prompt built from a user's own specific, lived experience produces something that feels genuinely different. Not like an AI, but like a version of yourself you forgot you had access to.
What's Next for ECHO
Therapist Export. Generate a clean PDF of the user's protocol, covering triggers, coping strategies, and support contacts, that they can share directly with a counselor. This closes the loop between the app and professional care.
Protocol Versioning. Let users update their answers over time and compare them with older ones. This reinforces the core insight: your stable self understands things your crisis self may forget, and that knowledge evolves.
Crisis Escalation Flow. If Crisis Mode detects very serious language, the app would guide the user through a calming step and clearly surface resources like 988 or campus emergency contacts with one tap. This sets a safe boundary between personal support and situations that need immediate human help.
ECHO is built on a simple belief: the most credible voice in your worst moment is your own, from when you were okay.
Built With
- claude
- react
- tailwind
- vite
Log in or sign up for Devpost to join the conversation.