This project came about after we had completed much of the extensive student-facing AI build-out. The question we asked in a client call was: “where can we integrate AI to make advisers' lives easier?” What evolved out of it was a “smart interaction” tool to assist advisers with their most common data-input task — logging an interaction every time they talk to a student.
In that first conversation we all pictured a new interface in the app. My work, including research into existing UI patterns, narrowed it to something smaller: a “fill fields from notes” button sitting under the notes field in the existing interaction form. A small intervention that meets advisers where they are.
An agent with the form's rules and the adviser documentation baked in reads the notes advisers already write and infers form state, filling the form for them in a fraction of the time it would take by hand. A new transition on the affected fields makes the magic-fill visible as it happens. We run form validation on what the agent filled out, which has the benefit of showing the user where they need to manually add some information. I ran automated testing across several models to pick the right one for the task, prioritizing speed and balancing accuracy against cost.
Scoping the feature, I dug into how advisers were actually using the form and found many of them working in batches — opening the modal, logging an interaction (which closes the modal), opening the modal again. As a result, I pitched and built two more features on the back of that.
First, a “keep window open” toggle, for advisers who like the one-at-a-time dialog but shouldn't have to keep re-opening it. That toggle is visible in the video above. It's a simple intervention that saves users a repeated hassle. Second, for the power users, a new bulk import mode. This entailed extending our existing importer to handle the interaction form's harder requirements — conditional fields, clearable selects, better error messages — which improved every other bulk import in the app along the way and was a far bigger lift than the original feature — some 7k lines of code added over 100 files and 7 PRs.