The Age of Agentic Apps
We are not just adding AI to software. We are redefining what software is. The age of agentic apps has already begun — we are just early in figuring out how to build them well.

The Age of Agentic Apps
Software is undergoing a structural shift.
For decades, applications have been built on a simple premise:
Given an input, produce a predictable output.
This paradigm has shaped everything:
- how we design systems
- how we build interfaces
- how users think about software
But that premise is no longer holding.
From Deterministic to Probabilistic
Traditional software is deterministic.
- The same input produces the same output
- Behavior is explicitly defined
- Edge cases are handled through additional logic
Agentic systems are different.
They are:
- probabilistic
- context-dependent
- capable of reasoning and adaptation
Given the same input, they may produce different outputs.
And in many cases, that is a feature — not a bug.
What Makes an App “Agentic”?
An agentic application is not just “AI-enabled.”
It has three defining characteristics:
1. It can take action
Not just generate text, but:
- call tools
- modify state
- trigger workflows
2. It operates over time
It is not a single request-response cycle.
It has:
- ongoing processes
- multi-step reasoning
- persistence
3. It collaborates with the user
The user is not just providing inputs.
They are:
- guiding
- correcting
- refining
- partnering with the system
The Breakdown of the Old UI Model
The traditional UI model assumes:
- predefined flows
- known states
- fixed transitions
Agentic apps break all three.
You cannot fully predefine:
- what the system will do
- how many steps it will take
- what intermediate states will exist
As a result, static interfaces start to fail.
The New Problem: Interaction
This creates a new central problem:
How do users and agents actually work together inside an application?
This is not solved by:
- better prompts
- more powerful models
- more tools
It is solved by designing the interaction layer.
What the Interaction Layer Must Do
A functional interaction layer for agentic apps must:
- Expose agent state
- Show reasoning and progress
- Enable intervention
- Maintain shared context
- Support dynamic UI
Why This Is Hard
This is fundamentally harder than traditional UI design.
Because:
- the system is not fully predictable
- the flow is not fully known
- the state is not fully enumerable
You are designing for:
emergent behavior.
The Stack Is Reorganizing
We are starting to see a new stack emerge:
- Models — intelligence and reasoning
- Tooling / APIs — actions and capabilities
- Interaction Layer — coordination between user and agent
- Application Logic — domain-specific behavior
Historically, the interaction layer was thin.
In agentic systems, it becomes central.
The Implication for Builders
If you are building software today, this shift matters.
Because:
- Your competitive advantage will not just be model quality
- It will be how effectively users can work with your system
This includes:
- how understandable it is
- how controllable it is
- how well it integrates into real workflows
Where This Leads
Agentic apps will:
- Collapse multi-step workflows into collaborative interactions
- Replace rigid flows with adaptive processes
- Shift user expectations from control to collaboration
And over time:
The best applications will feel less like tools and more like partners.
Closing Thought
We are not just adding AI to software.
We are redefining what software is.
The age of agentic apps has already begun —
we are just early in figuring out how to build them well.