numbered
Practice or health system
Ambient Clinical Documentation Agent
Listens to the visit and writes the note in real time, so the clinician looks at the patient instead of the screen.
<div class="hx-demo-box" style="margin-top:40px;border:1px solid #D2D2CA;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 12px 32px -12px rgba(23,25,21,.18)"><div style="background:#232A23;padding:12px 20px;display:flex;align-items:center;justify-content:space-between"><div style="display:flex;align-items:center;gap:10px"><span style="width:22px;height:22px;border-radius:6px;background:#D7F154;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#1A1D12">hx</span><span style="font-size:13px;color:#EDEFE8;font-weight:600">Ambient Documentation · room 4, follow-up visit</span></div><span style="font-size:12px;color:#A9B1A4;display:flex;align-items:center;gap:6px"><span style="width:7px;height:7px;border-radius:50%;background:#E0554F;animation:pulse 1.2s ease infinite"></span>{{ stageLabel }}</span></div><div style="display:flex"><div style="flex:1;border-right:1px solid #E4E4DE;padding:18px 20px;min-height:250px"><div style="font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:#8B9086;margin-bottom:12px;font-weight:600">Live transcript</div><div style="display:flex;flex-direction:column;gap:10px;font-size:13px;line-height:1.5"><div style="animation:fadeUp .3s ease both"><span style="color:#8B9086;font-weight:600">Dr. Anand:</span> How has the shoulder pain been since we adjusted the dose?</div><sc-if value="{{ l2 }}"><div style="animation:fadeUp .3s ease both"><span style="color:#8B9086;font-weight:600">Patient:</span> Better, maybe a 4 out of 10 now, worse in the morning.</div></sc-if><sc-if value="{{ l3 }}"><div style="animation:fadeUp .3s ease both"><span style="color:#8B9086;font-weight:600">Dr. Anand:</span> Any numbness or tingling down the arm?</div></sc-if><sc-if value="{{ l4 }}"><div style="animation:fadeUp .3s ease both"><span style="color:#8B9086;font-weight:600">Patient:</span> No, none of that.</div></sc-if></div></div><div style="flex:1;padding:18px 20px;min-height:250px;background:#FAFAF7"><div style="font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:#8B9086;margin-bottom:12px;font-weight:600">Note drafting live</div><div style="display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.5"><sc-if value="{{ n1 }}"><div style="animation:fadeUp .3s ease both"><span style="font-weight:700">Subjective:</span> Reports shoulder pain improved to 4/10 on current dose, worse in the AM.</div></sc-if><sc-if value="{{ n2 }}"><div style="animation:fadeUp .3s ease both"><span style="font-weight:700">Objective:</span> No radicular symptoms, no numbness or tingling reported.</div></sc-if><sc-if value="{{ n3 }}"><div style="background:#EAF6C9;border-radius:6px;padding:8px 10px;animation:pop .4s ease both"><span style="font-weight:700;color:#3E4A1B">Suggested code:</span> <span style="color:#3E4A1B">M75.101, unspecified rotator cuff syndrome</span></div></sc-if></div></div></div></div>
window.HX_DEMOS=window.HX_DEMOS||{};
window.HX_DEMOS["amb"]=function(Base){
const CYCLE_SEC=9;
class Comp_amb extends Base {
state={t:0,name:'',email:'',org:'',formSubmitted:false};
componentDidMount(){
this._start=Date.now();
this._iv=setInterval(()=>{
if((Date.now()-this._start)/1000>=CYCLE_SEC){clearInterval(this._iv);return;}
const t=((Date.now()-this._start)/1000)%CYCLE_SEC;
this.setState({t});
},150);
}
componentWillUnmount(){clearInterval(this._iv);}
onName=(e)=>this.setState({name:e.currentTarget.value});
onEmail=(e)=>this.setState({email:e.currentTarget.value});
onOrg=(e)=>this.setState({org:e.currentTarget.value});
submit=()=>this.setState({formSubmitted:true});
renderVals(){
const t=this.state.t;
return {stageLabel:t<7?'Listening...':'Note drafted',
l2:t>=1.4,l3:t>=2.8,l4:t>=4.2,n1:t>=2,n2:t>=4,n3:t>=6,
name:this.state.name,onName:this.onName,email:this.state.email,onEmail:this.onEmail,org:this.state.org,onOrg:this.onOrg,submit:this.submit,
formOpen:!this.state.formSubmitted,formSubmitted:this.state.formSubmitted,nameSuffix:this.state.name?', '+this.state.name.split(' ')[0]:''};
}
}
return Comp_amb;
};
Hear it on a real visit →
Free to start. No credit card.
How the Ambient Clinical Documentation Agent works
1
Captures the encounter
Captures the encounter
An ambient mic listens during the visit, with consent, and captures the conversation between clinician and patient in real time.
2
Structures the note
Structures the note
Converts the conversation into a structured SOAP note, pulling in relevant history, medications, and assessment detail.
3
Suggests codes
Suggests codes
Flags the ICD-10 and CPT codes supported by the documented encounter, ready for the clinician to confirm.
4
Step label
Files to the EHR
The clinician reviews and signs off, and the note is filed to the chart the same day, not days later.
5
Step label
4.2 hrs
saved per clinician, per week
96%
of notes filed the same day
<1 min
from end of visit to draft note
Stop typing during the visit.
Start free with one clinician and see the note quality on your own patients.
✓
Works with your EHR's existing chart structure
✓
Every note stays in draft until the clinician signs it
✓
Free for your first clinician, no credit card
Starts free
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.