今日已更新 412 条资讯 | 累计 19972 条内容
关于我们

Why I Stopped Organizing AI Agents by Role (and Built a Document Exchange Center Instead)

Alex 2026年06月01日 17:46 3 次阅读 来源:Dev.to

Most multi-agent frameworks for software development organize agents around roles : a product manager agent, a developer agent, a tester agent. ChatDev and MetaGPT pioneered this approach, and it works well for monolithic tasks. But I ran into a wall when I tried to apply it to a real system with multiple independently-deployed services. The Problem with Role-Based Coordination Imagine you have a backend search service and a frontend management console. The backend team implements a new API endpoint. The frontend needs to adapt. In a role-based framework, there's no natural mechanism for this. Both agents are "developers" in the same simulated organization. There's no concept of service boundaries, no versioned contracts, no way to say "the backend changed, and the frontend needs to know exactly what changed." The coordination problem in multi-service development isn't "which role should handle this task" — it's "which service needs to know about this change, and what exactly changed." That reframing led me to build something different. AgentNexus: Coordinating Agents at the Service Granularity AgentNexus is a document exchange center that treats each service as a first-class citizen. Instead of roles, it uses service boundaries as the coordination primitive. Here's how it works: Each service registers as a sub-project with its own document namespace Services publish versioned Markdown documents: requirements, design specs, API docs, config Services subscribe to documents from other services they depend on When a subscribed document changes, the subscriber receives a diff-aware notification containing both the structured diff and the full latest content The whole thing is exposed as an MCP (Model Context Protocol) server running in streamable-HTTP mode, so multiple agents can connect simultaneously from different machines. The Diff-Aware Update Protocol This is the part I'm most proud of. When an agent calls get_my_updates_with_context , it gets back: { "update_id"

本文内容来源于互联网,版权归原作者所有
查看原文