P PraxisNotes
04 · The agents · the AI team, member by member

Hire the team once. It shows up for every RBT.

The new PraxisNotes isn't one AI feature — it's four specialist agents that mirror how the clinic already works: an RBT-facing Scribe, a Clinical Reviewer with a BCBA's eye, a Compliance Reviewer that runs the payer rules, and a Billing Prep agent that walks every claim gate. Configure them at the clinic level, and each RBT gets their own copy — same brain, same tools, same rule packs underneath.

One shared brain

Every agent calls the same tool catalog and the same rule packs. Nothing to drift out of sync.

Humans on every gate

The RBT signs, reviewers handle exceptions, the biller submits. Agents draft and check; people commit.

Rules, not code

Payer requirements live in versioned, clinic-editable packs. A change reaches every agent on the next note.

A quick honesty note up front: none of this is a black box. Every agent turn is logged, every draft is editable, and every autonomy step is earned and reversible. The rest of this page is exactly how that works.

The roster

Four agents, each with a tight mandate. For every one: what it reads, what it can do, what it can never do, when it escalates to a human, and where its autonomy starts. The line that never moves — no agent signs, and no agent submits.

The Scribe

· session-note writer · one clone per RBT

Drafts a complete, payer-ready note from what the RBT actually said and did. Each RBT gets their own clone of a single template the clinic edits centrally — change the template once and the update reaches all 100+ clones on their next note.

Autonomy: Suggest — locked
Reads
  • · the session record — date, start/end time, location, participants, CPT code
  • · voice-note transcripts, in any language
  • · the client's treatment plan and active goals
  • · the payer's rule pack
  • · this RBT's own correction history
Does
  • · drafts the sectioned note, written to the payer's required elements
  • · cites its source per section — which transcript line, which goal, which data point
  • · asks one-tap questions when a required fact is missing
Never
  • · invents a clinical fact or fills a gap with a plausible guess
  • · signs the note
  • · submits anything

Fabrication in a legal record is the line it will not cross — it asks instead.

Escalates when
  • · a required field is missing — a deterministic completeness check, plus its own judgment
  • · a transcript segment came back low-confidence

The RBT reviews, edits, and signs every note. A note is a draft until a credentialed human commits it.

The Clinical Reviewer

· the BCBA lens · one per role or per BCBA

Reads the signed note the way a supervising BCBA would — clinical soundness, not payer boxes. Produces a verdict and specific, cited findings. It flags; the RBT revises.

Autonomy: Suggest → earns auto-pass
Reads
  • · the signed note
  • · the client's treatment plan
Does — what a BCBA checks
  • · each goal ties back to the authorized plan
  • · response-to-intervention is present, not just data
  • · protocol modifications are documented
  • · the narrative is individualized and proportional to session length
Never
  • · edits the note itself
  • · signs or overrides the human BCBA

A verdict is a recommendation. The BCBA's approval is what counts.

Escalates when
  • · a finding is a judgment call — it routes to the supervising BCBA

Starts in Suggest — the BCBA approves every verdict — and earns auto-pass on categories of clean notes as agreement proves out. Exceptions always reach a human.

The Compliance Reviewer

· the QA lens · the payer-rule gate

Runs the payer's rule pack against every note before it can be billed — the QA department's checklist, on 100% of notes, in minutes. Cites the payer source for every finding.

Autonomy: Suggest → earns auto-pass
Reads
  • · the note and the session's unit/time data
  • · the rendering provider's credential
  • · the active payer rule pack
  • · the client's recent notes (for similarity)
Does — the payer checklist
  • · every required element present
  • · timestamps and unit math reconciled — duration equals billed units; nothing signed before session end
  • · credential and modifier match the CPT code
  • · telehealth / place-of-service modality rules
  • · anti-cloning similarity vs the RBT's recent notes
  • · excluded content flagged — nap, meal, academic time
Never
  • · signs or submits
  • · silently passes an exception a human hasn't seen

Its checklist is the OIG deficiency list — unit-support, signatures, cloning, credentials, excluded time — each finding carries its payer citation.

Escalates when
  • · anything ambiguous or novel — it routes to a human QA specialist

Same trust ladder: Suggest first, auto-pass clean categories later, exceptions forever human.

The Billing Prep agent

· ready-to-submit packet · the claim gate

Turns an approved note into a verified, ready-to-submit packet — and stops it at the door if any billing gate fails. Then it flags the upstream root cause so the same failure doesn't recur next week.

Autonomy: verifies freely · submit stays human
Reads
  • · the approved note
  • · the client's authorization and eligibility
  • · provider NPI / taxonomy and credential
  • · the payer's billing rules
Does — assembles & walks 11 gates
  • · authorization on file · units remaining
  • · eligibility active
  • · NPI valid · taxonomy match
  • · credential-to-CPT match · place-of-service code
  • · MUE unit caps · modifier correctness
  • · EVV capture present · inside the timely-filing window
Never
  • · submits

Office Puzzle has no public API, and submission is money and irreversible. The biller presses submit — v1 is a verified packet, deeper automation is roadmap.

Escalates when
  • · a gate fails — it hands the biller the specific fix
  • · a client's authorization is nearly exhausted — it alerts before next week's sessions are scheduled, not after the claim denies

This is the clinic's own org chart, made into software: RBT → BCBA → QA → billing. Nobody in ABA sells a pipeline of specialized reviewer agents with human sign-off at each gate — incumbents run one audit pass, or bolt an auditor on after the fact. See the rule packs that drive them →

Ask, never invent — the escalation loop

When the Scribe hits a missing required fact, it doesn't guess and it doesn't dead-end. It asks the RBT one structured question on their phone and resumes the moment they answer. This exact loop — agent asks, phone answers, one tap — is production code in the platform today.

Gap detected

A required element is missing, or a transcript segment is low-confidence.

Question composed

One question with up to three one-tap options — and always an open answer.

Pushed to the phone

A notification deep-links straight to the answer card. No hunting.

Answer re-enters

The tap feeds back as trusted input — before the question is even marked answered.

Note completes

Generation resumes with the fact grounded — never fabricated.

Batched, not a drip. Questions stack and commit together — a soft cap keeps the RBT from being pinged one at a time.

"Let the agent decide." Dismiss is a valid answer — and it becomes a learning signal, not a dropped thread.

Everything logged. The question, the options, the answer, and who answered — all part of the note's audit trail.

5:47
Your Scribe needs you
Marcus D. · 4:00–5:30 session
You noted a behavior spike at 5:12, but no antecedent. What happened right before?
Question 1 of 2 Let the agent decide

Answered in the car, right after the session — while the detail is fresh, and while the RBT is still on the clock.

Autonomy is earned, per agent

Day one, everything is Suggest — humans approve every agent verdict. As agreement rates prove out, the clinic dials specific agents up: clean-note categories auto-pass with human sampling, exceptions always route to a person. Irreversible actions — submission, anything touching money — stay human forever.

Suggest
Day one · the floor

Agent drafts every note and verdict. A human approves each one. This never goes away for the RBT's signature.

Auto-pass clean
Earned · per agent

Reviewer agents auto-pass categories of clean notes once agreement proves out. Humans sample; exceptions always route to a person.

Auto-submit
Never

No agent submits a claim or moves money. The biller presses submit — this stays off the ladder entirely.

Reversible in one tap

Dial any agent back to Suggest instantly. Trust is a setting, not a one-way door.

Confirmed on enable

Turning an agent up shows a confirm dialog. Autonomy is never inferred from another setting — it fail-safes to Suggest.

Only on the review side

Autonomy climbs on checking, never on authoring. The note is always a draft a human signs.

This is the scaling story in one sentence: 100% of notes reviewed, QA humans see only exceptions — the exact outcome the audit-tooling market already monetizes, but built into the authoring flow instead of bolted on after.

One brain, shared tools

Every agent uses the same tool catalog and the same rule packs. Voice input and typed input reach the same writer — a new modality is new input, never a second engine. There is nothing to drift out of sync.

Today's app · two disjoint surfaces
Chat assistant

Can create clinical entities — but cannot generate or edit a session note.

no shared tools
Note engine

A separate pipeline with its own prompt. The two AI surfaces share nothing.

Two brains means two places to update, two places to drift, two places a rule change can be missed.

The new PraxisNotes · one catalog
Shared tool catalog & rule packs
compose_note review_note escalate query_rule_pack assemble_packet
Voice input
Typed input
The same Scribe

Both paths land in one writer, calling one catalog against one rule pack.

Update a rule pack once and every agent — writer, reviewers, billing — complies on its next turn.

How the team gets better

The team improves from what humans actually do to its drafts — measured, not guessed. Every edit is a signal, every QA return is a lesson, and nothing changes an agent's behavior until the clinic approves it.

Captured
Every human edit

An RBT's change to a draft is stored as a correction — with the exact edit distance, so "small tweak" and "rewrote it" are told apart. Measured, not vibes.

Distilled
Returns become lessons

A QA return, or a repeated correction, becomes a lesson — situation, what went wrong, what to do instead — only once it recurs, not on a single one-off.

Versioned
Learnings, with a rollback

Lessons digest into a versioned agent learning the clinic can read, approve, or roll back. Auto-apply or approval-required — the clinic chooses.

Applied
The next note is better

Approved learning is injected at review time. The 80%-first-pass-failure baseline shrinks month over month, per RBT.

Shadow replay — the killer feature

Before a guideline change or a payer-rule update goes live, test it against last month's real notes. See exactly which notes the new rule would have flagged, and which it would have cleared — so an update never surprises anyone the day it ships.

Proposed: Optum stop-clock timestamp rule replay
312 would pass
27 newly flagged
0 regressions

Illustrative — real replays run against the clinic's own captured note history.

A coaching signal, not a blame report

The same correction data shows who needs help with what — which RBT keeps missing antecedents, which one under-documents protocol changes. It replaces the QA rep's manual "track patterns to spot training needs" step and feeds supervision directly.

With 65–103% annual RBT turnover keeping the workforce perpetually junior, per-RBT error patterns turn note QA into targeted onboarding — the training amortizes even when the tenure doesn't.

Nothing the team does is a black box

Every agent turn is recorded — including the full effective prompt it ran on. A supervisor can open any thread, take the wheel mid-conversation, and every turn is metered against a per-agent budget. Observability isn't a dashboard bolted on after; it's how the runtime works.

Full effective prompt

Every turn logs the exact prompt it ran on, broken down by tier — platform, org, agent, rules, learning. You can see why an agent did what it did.

Any thread, on the record

A supervision view shows every agent conversation across the clinic — plain-language outcomes by default, the technical trace one click deeper.

Take the wheel

A human can pause any agent on any conversation, inject steering, and release it. The supervisor is always able to step in.

Metered, per agent

Every turn logs its cost against a per-agent budget. No unmetered AI — a hard requirement, from the first call site.

This is also the audit story: voice transcript → agent draft → escalation Q&A → RBT edits → reviewer findings → human sign-offs, every step with an actor, a role, and a timestamp. When a payer asks "who authored this note?", there's a complete answer. See the audit trail in full →

Where the team will be wrong early — honestly

This artifact wins trust by being honest, so here's the part most vendors skip. Agents make mistakes, especially at the start. The design assumption is not "the agent is right" — it's "the human catches the agent, and the agent gets better."

Ambiguous voice notes

A hurried, half-in-Spanish dictation with background noise can be misheard, and a rushed phrasing can be read two ways. Independent evaluations of voice-first documentation tools flag exactly this — practitioners still edit for accuracy and occasional wrong assumptions.

What contains it: low-confidence transcript segments route to the escalation loop instead of being guessed, the source transcript sits beside the draft so a bilingual RBT verifies before signing, and the RBT signs nothing they haven't read.

Novel payer edge cases

Payers change requirements on their own schedule, and a brand-new rule the pack hasn't captured yet is exactly where a reviewer agent has no precedent. The Compliance Reviewer won't invent a verdict for a rule it doesn't have.

What contains it: anything ambiguous or novel escalates to a human QA specialist; the rule pack is edited once, versioned, and shadow-replayed against last month's notes before it goes live — so the new rule is tested, not trusted on faith.

The floor holds while the errors shrink

Because every agent starts in Suggest, an early mistake is a draft a human corrects — never a bad note that reaches a payer. Each correction is captured, distilled into a lesson, and folded into a versioned learning the clinic approves. The error rate that starts high is designed to fall month over month, per agent and per RBT — and the Suggest floor means it costs a review, not a recoupment, along the way.

Configure the team once. It shows up for every RBT, every session, every payer.

Four agents, one shared brain, humans on every gate that matters. What turns their checks into something a payer can't argue with is the layer underneath — the rule packs, the signatures, and the audit trail.

See how it stays compliant