Worklists: one demonstrated task, run once per record

OpenAdapt runs one demonstrated task once for each row of a worklist you provide, such as a file of referrals or claims. Each row gets its own right-record check and its own result, and a list longer than the limit you set stops. Our 8-referral OpenEMR batch and 6-claim openIMIS batch were worklist runs, on synthetic records.

Updated 2026-10-18

How it works

  1. Record the task, for example adding a note in the EMR.
  2. Provide the worklist as a file whose columns match the values the task fills.
  3. Set the most rows it may run.
  4. It runs the task once per row. Each row ends with its own plain result. If a row can't be entered safely, it stops on that row instead of skipping it.

Reading a queue off the screen as it changes isn't supported; you provide the list.

Where this stands

Tested on open-source systems with synthetic records. On OpenEMR, 11 Oct 2026: 8 referrals, 7 saved with 12 of 12 fields read back by our test setup, 1 stopped at the duplicate check. On openIMIS, 12 Oct 2026: 6 claims, 5 saved with 15 of 15 fields read back, 1 stopped before saving.

Related: referral intake · claims intake · patient note entry

Sources

  1. OpenAdapt on OpenEMR 8.0.0.3 (open-source EMR), local test copy, 11 Oct 2026. One program ran over 8 synthetic eReferrals in one batch, with 0 AI model calls. 7 new patients were saved; our test setup read each chart back through the OpenEMR API and database, and 12 of 12 fields matched the referral. The 8th (Rosa Delgado, same name as an existing chart, different birth date) stopped at the EMR's duplicate check; afterwards no new chart existed. The engine labels the saved runs "Finished, not checked" (practice profile) and the stop "Check the record".
  2. OpenAdapt on openIMIS 25.10 (open-source insurance system), local test copy, 12 Oct 2026. A program learned from one demonstration entered 6 synthetic health-facility claims in one batch, with 0 AI model calls. 5 were saved; our test setup read each back through SQL and the openIMIS API, and 15 of 15 fields matched the claim document. On the 6th, the insured number had two digits swapped: openIMIS found no member, the screen no longer matched the demonstration, and the program stopped before saving (no claim was written). The engine labels the 5 saved runs "Finished, not checked", because this program has no record check of its own yet.

See it on your process

Bring one task your team types every day. We'll tell you whether it fits, and what a test on your own system would cover.