Back

Architecture Agent

Making AI recommendations easier to understand and act on - a usability test for the Architecture Agent.

Client
Actual AI
Timeline
January 2026 - March 2026
Team
JP Nguyen, Sara Chong, Elnaz Melli, Nimesh Mohanakrishnan
Role
Design Researcher

Making AI’s actions visible and understandable

Actual AI is a platform that helps engineering teams manage architecture and code quality in an era where both humans and AI agents are writing code. We partnered with their team through HCDE 517 to run a moderated usability study on one feature: the Architecture Agent, which surfaces and applies Architecture Decision Records (ADRs) across a codebase.

Over five sessions with practicing software engineers and delivery managers, we found that people could generally follow the interface's structure, but consistently lost track of what the system had actually done at the moments that mattered most: right after accepting a change, and while that change was syncing in the background.

This case study walks through three of our 29 findings in depth. A link to the full report is at the end.

An ADR is a recommendation; a Context File is what makes that recommendation stick.

Before I get into what we found, it's worth explaining what architecture does and what an ADR is.

The Architecture Agent is an AI agent that crawls a codebase, understands and spots technical architecture patterns, and proposes Architecture Decision Records, things like "adopt a consistent testing convention" or "standardize how environment configuration is handled." Architecture Decision Records (ADRs) are the architecture recommendations generated by the architecture agent.

In the product, a user looks at each ADR and accepts, rejects, or archives it. Once someone accepts an ADR, it still has to make its way into the codebase's Context Files. These are the reference docs that AI coding tools (Claude, Cursor, Kiro, you name it) actually read before they touch any code, so that whatever gets built next follows the same rules. Getting an ADR into a Context File means the system generates a pull request, and a human still has to go review and merge it on GitHub.

Existing codebase contains numerous technical patterns.

Actual AI needed to know if the Architecture Agent's recommendations were actually usable, not just automated.

The team didn't know whether developers could actually understand what the AI was recommending or confidently apply those recommendations without guidance. Our usability study focused on answering two questions:

Can users find, understand, and act on ADRs without guidance?

How do users decide whether to accept, reject, or revert a decision, and what information do they lean on most to make that call?

Research team and participant during a remote moderated usability session

Five 60-minute sessions, one shared test repo, and a research team that rotated roles every time.

We conducted five 60-minute moderated usability sessions using the same test organization and sample repository.

Across sessions, our research team rotated between moderator, note-taker, and timekeeper. I independently moderated one complete session, while also contributing observations and synthesis across the study.

We collected both behavioral and attitudinal data:

ParticipantsFormatData Collected
5 engineers & engineering managers60-min remote sessionsTime on task
2–20 yrs experienceZoom, recorded w/ consentLikert ratings (ease, trust)
Recruited via screener surveyThink-aloud protocolInteraction counts
-Shared test org + sample repoPost-task debrief
Architecture Agent research team group photo

Developers could accept AI recommendations (ADRs), but couldn't confidently complete the workflow.

Every participant successfully located and accepted an Architecture Decision Record. However, accepting the recommendation created a second required step: synchronizing Context Files. Because this status appeared at the bottom of the page, participants interpreted the confirmation message as the end of the workflow and missed the remaining action entirely. Rather than failing to perform an interaction, participants failed to understand the system's current state.

This finding directly answered the first research question. Participants could discover recommendations and act on them, but they could not reliably complete the workflow because the interface failed to communicate that another action was still required. The usability issue wasn't interaction — it was workflow visibility.

  1. 5 of 5 participants assumed accepting the ADR completed the task.
  2. Task completion time ranged from 3:18 to 12:08, depending on how quickly participants discovered the unsynchronized Context Files.

I feel like I've completed the test.

Participant 3

I would expect some sort of either a notification or some sort of progress indicator... to indicate the state of it.

Participant 2

Based on our usability findings, we recommended making the synchronization step visible within the primary workflow so users could clearly understand what remained after accepting an ADR. Specifically, we proposed:

  1. Surface Context File synchronization immediately after accepting an ADR.
  2. Clearly communicate synchronization status and required next steps through persistent workflow feedback.

Following the study, Actual AI removed the manual Context File synchronization step from the workflow. After developers accept an ADR, Context Files are now generated automatically in the background, allowing users to review the resulting pull request directly in their codebase before merging. By eliminating an entire step, the updated workflow reduces the ambiguity observed during testing and makes architectural decisions feel complete once accepted.

Developers struggled to build a mental model of the Architecture Agent before completing tasks.

Before participants could evaluate Architecture Decision Records, they first had to understand how the Architecture Agent itself worked. Across sessions, participants spent considerable time exploring the interface, asking clarifying questions, and trying to infer relationships between Repositories, Categories, Decisions, Context Files, and pull requests. Rather than learning through the interface itself, participants relied on the moderator's explanations to understand the workflow.

This wasn't simply unfamiliarity with a new product. The Architecture Agent introduces concepts—such as ADRs and Context Files—that are unique to Actual AI and have no established mental model for most developers. Without guidance, participants entered the tasks with an incomplete understanding of how the system was organized. That increased cognitive load before meaningful work could begin.

Annotated Architecture Agent interface showing where developers struggled to form a mental model
  1. 2 of 5 participants explicitly identified terminology as an overall usability issue during the post-test debrief.
  2. Ease ratings ranged from 2–5/5. The participants giving the lowest rating (2–3/5) specifically attributed it to terminology.

Took a bit to make the link between 'Decision' and recommendations.

Participant 4

Like, tools that, as you first open up a new page, they can walk you through how to use the experience.

Participant 2

Rather than introducing every feature upfront, we recommended progressive onboarding that helps developers form a mental model while they explore. Specifically:

  1. Introduce a first-run walkthrough explaining the Architecture Agent workflow.
  2. Provide contextual explanations for concepts such as ADRs and Context Files.
  3. Use progressive disclosure so information appears when it becomes relevant.

Based on my observations, I provided 2 recommendations:

  1. Move Context File status directly into the primary workflow, making synchronization the obvious next step after accepting an ADR.
  2. Remove the context files entirely and make the ADR acceptance an automated experience.

What I learned from this project

Working on an AI product made me realize that good AI UX isn't only about explaining the model's output. Users also need to understand what the system is doing between actions. In the Architecture Agent, the recommendation itself was understandable enough; what became confusing was what happened after accepting it. That made system state feel like a much more important part of AI interaction design than I had previously considered.

Our original Task 2 asked participants to find “architectural recommendations you care about.” After P1 and P2 struggled with the task, we realized the phrasing itself was ambiguous and changed it to “find specific architectural recommendations.” The next three participants completed the task successfully.

This reinforced the value of pilot testing the study design itself. Small wording choices can influence what participants understand—and ultimately, what you're measuring.