Austin Z. Henley
Associate Teaching Professor
Carnegie Mellon University
5/4/2025

I've been asking for and working on proactive AI coding tools for several years.
- In 2019, I got a grant to research a code editor that helps you overcome bugs before you know you have them.
- In 2021, I claimed that Stack Overflow had all the data needed to build a model that predicts what future problems a developer will face (and the solutions).
- In 2022, I proposed an AI terminal that would fix your errors for you automagically.
- In 2022, my team designed and evaluated 50 user interfaces for proactive code suggestions.
- In early 2023, shortly after ChatGPT came out, I argued that natural language is a lazy UI and that good UIs guide and nudge instead.
It is now 2025. What is the state of proactive tooling? Have agents taken over yet? Will my environment issues automatically get resolved before I even see the error message? Can Cursor get TLS working properly for my vibe-coded app when I forget to set it up? Can Copilot interrupt me before I go down a rabbit hole to fix the wrong thing?
No, not really.
But they can still proactively make suggestions about what code to change next.
Or they can reactively make suggestions based on a prompt while using tools.
I just read a really interesting paper about the pros and cons of proactive AI coding tools that got me thinking about the topic again. (Assistance or Disruption? Exploring and Evaluating the Design and Trade-offs of Proactive AI Programming Support)
They designed a proactive AI code tool, Codellaborator, that goes beyond typical gray-text suggestions by being strategic about the timing, the visual indicators, and the scopes of interaction for code suggestions.
It is just the tip of the iceberg though. We need 1000x more studies like this and to be drastically rethinking how we interact with AI to write code.
Why aren't the commercial tools in this space pushing harder on the user experience? They seem to be taking the shotgun approach: more suggestions in more places and more often. But I don't want more suggestions! I don't need more code thrown at me. I want a small number of high-value episodes of assistance as if a professional developer was sitting beside me.
Generating the next code change is great, but there is opportunity for so much more.
In fact, I previously said:
If I had a personal programmer that sat next to me, how would I work with them? Would I give them a sticky note with the task and wait for them to come back with the code for me to verify?Or would we ask each other clarifying questions, point out significant details, discuss design tradeoffs, and show incremental progress as we work?
Innovating on the user experience is hard, so instead, companies continue to ship an integration with yet-another-model that generates code.
Read more of my thoughts on the topic:
- Natural language is the lazy user interface
- Don't trap me in a chat window
- Coding with Copilot for acceleration and exploration
- How I would redesign Copilot Workspace
- An AI assistant for command line errors
- An inquisitive code editor: Overcome bugs before you know you have them
- Stack Overflow knows your future problem
- Exploring 50 user interfaces for AI code suggestions