What jumps out to me is how little of this is really about “agents” in the flashy sense and how much of it is about runtime plumbing, permissions, and stopping conditions. That’s the boring part, and it’s also the part that decides whether anyone can trust the thing in production.
Microsoft saying the Agent Framework harness and Foundry Hosted Agents are GA feels less like a product launch than an admission that the harness is the product. The article’s line about one binary across local, container, and hosted deployment is the bit I’d actually pay attention to. If that’s true in practice, it’s useful. If it’s only true on slides, then it’s just another way to move the same complexity around.
I also think the benchmark anecdote is doing more work than it first appears to. Holding the model fixed and changing the runtime is the right instinct. Most agent comparisons are mush because they mix model quality, tool quality, prompt quality, and control-loop behavior all together. Here, the interesting result is not that one runtime got a better answer. It’s that one of them apparently enforced its own limit at 40 round-trips while the other kept going to 300 when host-side controls were off. That is exactly the kind of difference that matters in production and exactly the kind of thing teams forget until something spins.
The part I’m less convinced by is the way the Claude Code leak-derived analysis gets used. Yes, harness code is most of the system. That sounds right. But a line-count estimate from exposed TypeScript, with generated and minified code in the mix, is a pretty rough proxy. I wouldn’t treat 98.4% as a precise truth. Still, the broader point survives the fuzziness: the “agent” is mostly scaffolding, policy, recovery, memory, and routing. The model is just the brain inside a lot of machinery.
That makes Microsoft’s move feel strategically sensible, maybe even overdue. If you’re going to sell agents to platform teams, you can’t just hand them a library and wish them luck. They need approval flows, telemetry, file access rules, context handling, and a sane default loop. The fact that shell access, background sub-agents, and automatic looping are opt-in is reassuring. That’s the sort of thing I want to see defaulting to “no,” not “surprise, your bot can now wander.”
What I’d want to know next is mundane and annoying: how easy it is to swap pieces out, how ugly the failure modes are, and whether the governance story holds once real tools and real teams show up. Agent frameworks always look clean until the first messy integration. That’s where the actual test starts.
Reference: Microsoft Agent Framework Harness and Hosted Agents Reach General Availability