Primer AI
Evolving Search for Intelligence
From rigid search modes to an interface that interprets intent.
Overview
- Context
- Intelligence analysts are trained to distrust their tools, yet the existing search forced every one of them to decide how to search before they could even begin.
- Decision
- I led a phased evolution from separate semantic and Boolean modes to a single AI-interpreted entry point, leading with intent interpretation while preserving a deterministic fallback for the analysts who need exact control.
- Impact
- A 16-week MVP secured a multi-million dollar federal contract. My redesign then cut search from three or four steps to one, unifying semantic, Boolean, and metadata search behind a single prompt, and became the foundation customers were migrated onto.
Context
Why This Mattered
A federal contract on the table
A federal R&D customer offered a contract following a successful demo.
A tight 16-week deadline
Primer had to deliver and prove an MVP on the customer’s data within 16 weeks.
Migrating existing customers to an updated codebase
That MVP would also become the foundational platform for migrating existing customers onto an updated codebase.
The User: Trained to Distrust
My users were intelligence analysts. Their profession trains them to distrust information, the consequences of being wrong are asymmetric and severe, and they have zero tolerance for a tool that obscures where an answer came from. A search experience for them had to earn trust at every step rather than assume it. That single constraint, design for the professionally skeptical, drove every decision that followed.
That distrust showed up as two user types I had to serve at once:
Intelligence Analysts
Skeptical professionals doing high-stakes work who require complete transparency and traceability from their tools.
Research Librarians
Intermediaries who run complex searches on behalf of analysts and decision-makers.
Yet underneath their different roles, both wanted the same thing: to find every piece of relevant information and answer their question comprehensively.
Two Opposing Search Styles
In practice the analysts split into precision seekers, who used rigid, syntax-heavy Boolean queries, and simplicity seekers, who wanted fast but less predictable semantic search. The challenge was to serve both camps without alienating either, and to never ask a skeptical analyst to trust a result they could not trace.
Boolean
(drone OR UAV OR "unmanned aerial") AND (Russia OR Ukraine) AND date:[2024-01 TO 2024-06]
- Precise, reproducible, total control over scope.
- Steep learning curve, syntax-heavy, slow to compose.
Semantic
“Recent drone activity in eastern Europe, focus on military operations.”
- Natural language, low barrier, fast to start.
- Less predictable and harder to scope exactly.
Strategy
Simple by Default, Power on Demand
Simplicity by Default
“Don’t make me think” speed for the infrequent self-serve analyst.
Progressive Disclosure
Advanced power surfaced only when librarians and analysts need comprehensive coverage.
Execution strategy: ship a simple MVP, learn from power users, then iteratively add complexity and hide it again. I partnered with Product and ML Engineering from the start to balance user needs, technical constraints, and contract milestones.
Design Evolution
Semantic Foundation
I designed a single search entry point with primary and secondary pre-search filters, then proved semantic search worked on the customer’s data.
Result Comprehension
I built result views that kept the query editable, led with an AI summary, and mapped filters to the established user goals.
Boolean Power, Hidden by Default
I kept semantic as the default and added an opt-in Boolean mode to support librarians and legacy users’ existing saved-query workflows.
The Outcome
The MVP validated semantic search on the customer’s data and secured the contract. More importantly, early testing surfaced the signal that drove the rest of the work.
The Pivot
Choosing a Mode Was the Real Friction
User Testing Insight
Users hesitate before executing a search. They are thinking about how to search, not what to search for.
The mode toggle I had added for power users had quietly reintroduced the exact cognitive load I removed by defaulting to semantic. The decision about search type had become a barrier sitting in front of the actual task.
Unified Bar, No Mode Decision
I introduced a unified search bar. By moving execution options to after the user types, I removed the upfront cognitive load.
What This Didn’t Solve
This relocated the friction rather than eliminating it. The decision moved later in the flow but did not disappear.
Taking the Leap of Faith
Scoping the AI Bet
An AI-assisted conversational UX had been deferred earlier. ML Engineering favored step-by-step development, citing broad evaluation scopes and complex bug fixes. Rather than override that caution, I scoped the bet to de-risk it: I aligned with Product and ML Engineering on a single end-to-end vision we could evaluate as a whole, on a deadline none of us could hit incrementally. We agreed to build the full vision first and evaluate later.
Landing the Leap: AI-Driven Intent Inference
Taking that leap meant trusting the system to do the heavy lifting. I introduced an AI-powered search that translated plain language directly into execution. Instead of asking the analyst to choose, the system inferred intent, determined the method, composed the query, and set the filters automatically.
Earning Trust in a Non-Deterministic System
Non-determinism was the real risk, so I designed three mechanisms that prioritized trust alongside speed:
The Through-Line
I never eliminated control. Across four phases, I relocated it from a strict prerequisite to an optional override, letting the system assume the heavy lifting while keeping the analyst in the loop.
Built as a System, Not Four Screens
The four phases looked different on the surface. I built them on one component layer designed to evolve, not to be rebuilt each time.
component-search-input.pngSearch Input
Absorbed semantic, Boolean, metadata, then natural language as the system matured, so capability grew without retraining users on a new bar each phase.
component-interpretation-panel.pngInterpretation Panel
Surfaced the inferred intent, query, mode, and filters. The transparency component that made a non-deterministic system legible and debuggable.
component-deterministic-fallback.pngDeterministic Fallback
Interaction Pattern
Advanced Search, the same control, always one click away.
The Reusable Pattern
Underneath the components was a portable standard for any AI-mediated surface: set expectations, show the interpretation, preserve a fallback. I treated it as a reference, not a one-off for search.
Result
A Foundation That Paid for Itself
Next Steps
From Search to Agents
The interpretation layer established a platform foundation, shifting the user’s burden from constructing queries to expressing intent:
- 1Semantic keywords
- 2Deterministic control
- 3Unified input
- 4Intent inference
- Task execution
The user's burden shifts from doing the work to directing it.
The Agentic Evolution
As queries become tasks, the interface shifts from tool to collaborator. The next phase extends this foundation into agentic workflows, where the system runs the research itself, synthesizing sources and surfacing insight. That is only possible because the first phase was anchored in explainability and trust. I designed for where the models were going, not only where they were.
Retrospective
What I Learned Designing for Evolving AI
Betting on the Trajectory
The unified bar was a hedge; AI-powered search was the bet. It paid off because I made the non-determinism legible instead of hiding it.
Non-Deterministic Workflows Have a Repeatable Shape
Set expectations, show transparency, preserve a fallback. That pattern works for any AI-mediated experience, not just search, and it became a reference I carried into later work.
Evaluate at the Right Granularity
Early phases measured each search method on its own. After the leap, the right unit was the whole outcome. Knowing when to measure components and when to measure the experience is its own design judgment.

