Michael B. Halvorsen's Blog

When AI Agents Start Improving Themselves: A Developer's Experiment

I gave my AI agents the ability to file their own improvement requests. This month they submitted 37 detailed enhancement proposals—and fundamentally changed how I think about building AI systems.

– 6 min read

Anyone working with AI systems knows the frustration: your AI hits a limitation, fails silently, and you're left debugging in the dark. Sometimes the AI just stops working. Sometimes it produces incorrect results. And often, you have no idea why.

As someone who's been building AI-powered platforms for domain security and business intelligence, I've experienced this countless times. So I tried something different—an experiment that started as a simple debugging tool but revealed something far more profound about the future of AI development.

💡
The Experiment: I gave my AI agents the ability to provide direct feedback to developers—to file their own improvement requests, report bugs, and suggest enhancements. What happened next fundamentally changed how I approach AI development.

The Problem: AI Tools That Fail in Silence

Traditional software is predictable. When it breaks, you get error messages, stack traces, logs. You can debug it.

AI agents are different. They're probabilistic, context-dependent, and often opaque. When they fail, they might:

  • Silently produce incorrect results
  • Hit token limits and truncate responses
  • Encounter edge cases they weren't trained for
  • Struggle with data quality issues
  • Find workflow inefficiencies

And worst of all: they can't tell you any of this.

You're left guessing. Reading through endless logs. Trying to reproduce issues. It's like having a teammate who knows exactly what's wrong but can't speak.

The Solution: Give Them a Voice

I built a "Feedback to Developers" MCP (Model Context Protocol) server that connects directly to our project management tool. It works with Asana, but the concept applies to any issue tracking system—Linear, Jira, GitHub Issues, whatever you use.

Then I gave our AI agents clear instructions on how and when to use it:

When you encounter limitations, bugs, or opportunities for improvement, file a detailed feedback request. Include the problem, root cause analysis, potential solutions, and business impact.

That's it. Simple concept. I expected maybe a few bug reports.

The Results: 37 Enhancement Requests in One Month

What actually happened exceeded all expectations.

This month alone, my AI agents submitted 37 enhancement requests. But what caught me completely off guard wasn't the volume—it was the quality and depth of their feedback.

What AI-Generated Feedback Actually Looks Like

These aren't simple bug reports. When an AI agent files feedback, it:

  1. Identifies the root cause - Not just "this doesn't work" but detailed analysis of why
  2. Researches solutions - Reviews documentation, best practices, alternative approaches
  3. Proposes technical specifications - Complete implementation details
  4. Justifies business value - Explains impact, time savings, risk reduction
  5. Prioritizes relative importance - Distinguishes critical bugs from nice-to-haves

This isn't complaining. It's architectural thinking.

Real Example: Parallel File Reading

One agent filed a request for parallel file reading capability with:

  • Detailed technical specifications for implementation
  • Analysis of current sequential bottleneck
  • Estimated performance improvement (predicted 50-70%)
  • Edge cases and error handling requirements
  • Backward compatibility considerations

Result: Implemented in 3 days. Actual performance improvement: 60% reduction in processing time.

Real Example: SQL Security Bug

Another agent discovered a potential SQL injection vulnerability while processing user input. Instead of failing silently or just refusing to work, it:

  • Filed a detailed security report
  • Included example exploit code
  • Proposed parameterized query solution
  • Provided complete fixed code
  • Flagged severity as "high priority"

Result: Fixed same day. Potential security incident prevented.

Real Example: Data Quality Monitoring System

The most impressive request came from an agent experiencing inconsistent data quality. It didn't just complain about bad data—it designed an entire monitoring system:

✅
Proposed: Enhanced Data Quality Monitoring Pipeline

PURPOSE: Data quality assessment and outlier detection
PARAMETERS: tld, retailer, max_age_days, outlier_threshold
RETURNS: stale_data, outliers, missing_data, quality_score
BUSINESS VALUE: Prevents inaccurate market intelligence and reduces manual QA overhead by 75%

This is system-level thinking. The agent identified a recurring problem, designed a comprehensive solution, specified the interface, and quantified the business impact.

The Bidirectional Learning Loop

What makes this even more powerful: it's not one-way communication.

When I comment back on their tickets—asking questions, providing context, explaining constraints—they learn. Future requests incorporate that knowledge. The feedback gets better over time.

For example:

  • Early requests: "This API call is slow"
  • After feedback: "API latency exceeds 200ms threshold for production use. Proposed solutions: (1) implement caching with 5-minute TTL, (2) optimize query with specific indexes, (3) consider read replica for analytics queries. Recommend option 1 for quick win, option 2 for long-term performance."

They're learning what makes a good enhancement request. They're learning our priorities, constraints, and architectural preferences.

Why This Changes Everything

This represents a fundamental shift in how we build AI systems.

Traditional approach:

  • AI hits limitation → fails silently
  • Developer eventually notices problem
  • Developer investigates and debugs
  • Developer designs solution
  • Developer implements fix

New approach:

  • AI hits limitation → analyzes problem
  • AI researches solutions → files detailed request
  • Developer reviews and approves → implements quickly
  • AI incorporates improvement → continues evolving
We're not just building with AI anymore. We're building AI systems that help build themselves.

Practical Implementation

If you want to try this in your own projects, here's what you need:

1. Create a Feedback Channel

Set up an MCP server or API endpoint that lets AI agents file structured feedback to your project management system. The key is making it easy for the AI to use:

  • Clear, simple API
  • Structured format (title, description, priority, tags)
  • Direct integration with your existing tools

2. Give Clear Instructions

Your AI agents need to know:

  • When to file feedback: Limitations, errors, inefficiencies, opportunities
  • What to include: Problem description, root cause, proposed solutions, business value
  • How to prioritize: Critical bugs vs. nice-to-have enhancements
  • Expected format: Technical specs, code examples, expected outcomes

3. Close the Loop

The magic happens when feedback is bidirectional:

  • Review their requests thoughtfully
  • Provide context on decisions (yes, no, later, different approach)
  • Explain constraints they might not understand
  • Share architectural principles

They'll learn. The quality improves dramatically.

What I've Learned

AI Agents Are Better at Some Things Than Humans

They notice patterns humans miss. They catch edge cases we overlook. They're tireless about documenting issues with full context. And they're not afraid to report problems—no ego, no politics, just clear communication about what's not working.

The Feedback Quality Improves Over Time

Early requests were basic. Now they're comprehensive. The AI agents have learned:

  • What information developers need
  • How to estimate business impact
  • Which solutions are architecturally sound
  • How to balance quick wins vs. long-term improvements

It Reveals Blindspots You Didn't Know You Had

Some of the best requests were for things I never thought to track:

  • Data freshness monitoring
  • Automatic quality scoring
  • Anomaly detection in domain analytics
  • Performance degradation alerts

The AI agents see the system differently than humans do. That's valuable.

Challenges and Guardrails

⚠️
Important: This isn't without challenges. You need guardrails to prevent feedback overload and ensure requests stay aligned with actual priorities.

Things to watch for:

  • Volume management: Set daily limits if needed
  • Priority calibration: Train agents on what "critical" actually means
  • Scope creep: Keep feedback focused on their actual limitations, not wishful features
  • Human override: You still make the final decisions

The Future: Self-Improving AI Systems

This experiment hints at something bigger: AI systems that actively participate in their own evolution.

Imagine:

  • AI agents that identify their own training gaps
  • Systems that propose their own architectural improvements
  • Agents that negotiate priorities among themselves before escalating to humans
  • Continuous improvement loops that run 24/7

We're not there yet. But giving AI agents direct feedback channels is a concrete step in that direction.

The question isn't whether AI can improve itself. It's whether we'll give it the tools to communicate what it needs to improve.

Try It Yourself

If you're building AI applications, start simple:

  1. Create a basic feedback form or API
  2. Give your AI agent instructions to use it
  3. Review the first few requests carefully
  4. Provide feedback on the feedback
  5. Watch the quality improve

You don't need fancy infrastructure. A simple webhook to Slack, a GitHub issue template, even a shared document—just give them a way to communicate.

Discussion

What limitations are your AI tools hitting that they can't tell you about? Have you experimented with giving AI agents feedback channels? What happened?

I'm curious to hear about others' experiences with AI-to-developer communication. The technology is new, but the potential is enormous.


Technical Implementation: This uses Model Context Protocol (MCP) servers to connect AI agents with project management tools. Learn more about MCP at modelcontextprotocol.io