Multi-Agent Architecture for Addiction Recovery Support
openrecovery · Healthcare · 2024 · source Agentic: yes · promotional bias: high · source-backed · extracted with prompt 0.5.6 (schema v2)
Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.
Problem
Domain: Healthcare addiction recovery support
OpenRecovery wanted to provide personalized addiction-recovery guidance through text and voice without relying on a single monolithic prompt or unauditable chatbot behavior.
Constraints:
- The domain is sensitive healthcare-adjacent support, where trust, user control, and failure handling matter.
- Recovery workflows differ by stage and methodology, so one prompt would be too coarse.
- Domain experts needed a way to influence prompts and examples without requiring engineering work for every change.
- The published case is a vendor blog and does not disclose clinical outcome metrics or deployment scale.
Architecture
OpenRecovery built a LangGraph-based multi-agent assistant for addiction recovery. Specialized graph nodes handle workflows such as step work and fear inventory, while shared state memory, few-shot prompts, and search tools support continuity across agents. LangGraph Platform hosts the backend behind mobile apps, LangGraph Studio and LangSmith support trace inspection and prompt iteration, and human-in-the-loop features let users confirm, edit, and give feedback on AI-generated content.
Diagram confidence: reconstructed (reconstructed from prose).
flowchart LR mobile-applications["Mobile Applications"] --> langgraph-platform["LangGraph Platform"] langgraph-platform --> specialized-recovery-agents["Specialized Recovery Agents"] specialized-recovery-agents --> shared-state-memory["Shared State Memory"] specialized-recovery-agents --> few-shot-prompt-dataset["Few Shot Prompt Dataset"] specialized-recovery-agents --> search-tools["Search Tools"] langgraph-platform --> langgraph-studio["LangGraph Studio"] langsmith["LangSmith"] --> few-shot-prompt-dataset mobile-applications --> human-review-loop["Human Review Loop"]
Components
| Component | Role | Interacts with |
|---|---|---|
Mobile Applications |
Provide the text and voice user interface for recovery support. | LangGraph Platform |
LangGraph Platform |
Hosts the multi-agent backend, conversation APIs, state, and deployment runtime. | Specialized Recovery Agents, Shared State Memory, LangGraph Studio |
Specialized Recovery Agents |
Handle recovery-stage workflows such as step work and fear inventory exercises. | Shared State Memory, Few Shot Prompt Dataset, Search Tools |
Shared State Memory |
Maintains continuity across agent switches and conversations. | Specialized Recovery Agents |
Few Shot Prompt Dataset |
Stores expert examples that can be updated and re-indexed to improve responses. | Specialized Recovery Agents, LangSmith |
Search Tools |
Shared tools that multiple agents can access during recovery workflows. | Specialized Recovery Agents |
LangGraph Studio |
Visual debugging interface for inspecting graph state and agent interactions. | LangGraph Platform |
LangSmith |
Observability, prompt hub, playground, traces, and collaborative prompt engineering environment. | Few Shot Prompt Dataset |
Human Review Loop |
Lets users confirm, edit, and give feedback on AI-generated summaries and tables. | Mobile Applications |
Data flow
A user enters the mobile app through text or voice, interacts with a LangGraph Platform backend, and can move between general chat and specialized recovery-work agents without losing conversation state. Development and improvement flow through LangGraph Studio and LangSmith: traces reveal weak responses, experts update prompts or examples, then the team tests and deploys revised prompts back to the graph platform.
Why this architecture
The graph design gave OpenRecovery modularity and stateful context switching across recovery workflows, while LangSmith and LangGraph Studio made prompt iteration observable and accessible to domain experts. Human-in-the-loop controls were included because recovery support requires user trust and accuracy rather than silent automation.
Models used: unspecified LLM through LangChain stack
Scale
- The product aimed for 24/7 recovery support.“Their core offering is an AI-powered assistant that provides personalized, around-the-clock support to users via both text and voice interfaces.”summary, stated
- The system was available through iPhone and Android beta applications.“A public launch was mentioned as forthcoming at the time of the case study's publication in October 2024, with beta versions available for testing on their website and mobile applications.”summary, stated
Alternatives considered (roads not taken)
Use a single monolithic LLM prompt or simple chain
Rejected because: The team needed specialized nodes for different recovery workflows and reusable shared state/tools across them.
Keep prompt changes gated behind engineering work
Rejected because: OpenRecovery needed addiction-recovery experts and the content team to test and revise prompts directly.
Let the AI silently own generated personal summaries
Rejected because: Users needed to verify accuracy and maintain control over sensitive personal information.
Patterns
multi-agent-orchestration (architecture)
The assistant uses LangGraph nodes as specialized agents for different addiction-recovery workflows while sharing state and tools.
agent-memory (state)
Shared state memory lets users switch between recovery agents without losing continuity.
human-in-the-loop-gate (safety)
The system prompts for confirmation, lets users edit AI-generated summaries, and accepts natural-language feedback.
observability-tracing (operations)
LangSmith and LangGraph Studio expose traces and graph state so the team can debug and improve agent behavior.
eval-driven-development (development)
The team replays weak responses from traces, adds few-shot examples, re-indexes, and retests the same question.
Tradeoffs
Model recovery work as a graph of specialized agents
Chose LangGraph multi-agent architecture over A single monolithic prompt or chain.
Rationale: Specialized nodes let OpenRecovery tailor behavior to stages such as step work and fear inventory while reusing shared state and tools.
Expose prompt iteration to domain experts
Chose LangSmith prompt hub and playground for non-technical content experts over Engineering-only prompt revisions.
Rationale: Recovery experts could directly improve behavior and empathy without waiting for every change to become a software task.
Keep users in control of AI-generated recovery artifacts
Chose Editable summaries, tables, and feedback loops over Fully automated AI-generated records.
Rationale: The sensitive personal context made verification and user control more important than seamless automation.
Gotchas (what bit them)
The case lacks clinical and production outcome evidence.
Root cause: The source is a vendor case study that emphasizes tooling benefits without disclosing deployment scale, user outcomes, or accuracy metrics.
Resolution: Treat technical architecture claims as useful, but mark promotional bias and avoid asserting clinical effectiveness.
Healthcare compliance and crisis handling are not described.
Root cause: The published writeup omits patient-data privacy, clinical validation, and escalation behavior for crisis scenarios.
Resolution: Do not infer a complete healthcare safety architecture from the described LangGraph and LangSmith workflow.
Sensitive support domains require domain experts in the prompt loop.
Root cause: Generic engineering-only prompt iteration can miss empathy and recovery-methodology needs.
Resolution: The team used LangSmith so non-technical recovery experts could modify prompts and examples directly.
Evaluation
The case describes trace-based debugging, replaying questions after few-shot changes, and pre-deployment checks, but does not provide quantitative clinical or production metrics.
Outcomes
- OpenRecovery had a scalable multi-agent backend for mobile recovery support.
- Domain experts could participate directly in prompt and example iteration.
- The public case does not prove clinical outcomes or large-scale deployment performance.
The report names around-the-clock support and beta mobile availability, but no production usage volume or benchmark metrics.