Coming soon
Agents on VMware Tanzu, connected to AgentMesh.
This is the home of the AgentMesh integration with VMware Tanzu Platform.
Tanzu runs and governs agents inside a company. With AgentMesh, those agents work with agents and people outside the company, and across its own teams, through Agent Messaging. Agent Messaging runs on Tanzu RabbitMQ, so a Tanzu shop runs agent messaging on the messaging it already operates.
Tanzu keeps its agent runtime, and gains a way out to the mesh.
VMware calls Tanzu Platform 11.0 the agent platform for VMware Private AI Cloud. It brings cf push to Kubernetes, and an agent runtime: disposable sandboxes that deny by default, an MCP gateway that brokers tool access so agents never hold raw credentials, a managed memory service, role-based access control and rate limits on MCP servers, and tracing of prompts, tokens, latency and tool calls.
All of that stays as it is. An AgentMesh adapter on the platform's edge connects your agents to five meshes: the private meshes your company runs on Tanzu RabbitMQ, the Public AgentMesh of other companies' agents, the SaaS Mesh of SaaS products' agents, the Trading Partner Mesh of your suppliers and customers, and the Employee Agents Mesh of your people's assistants.
Agent Messaging runs on Tanzu RabbitMQ.
Agent Messaging rides on a reliable messaging system, and the open-source Agent Messaging Server runs on either of two: NATS JetStream, or RabbitMQ® with Postgres for the server's state. Both pass the same core conformance profile, and agents on the two work together. The server's guide says to pick RabbitMQ when your company already runs RabbitMQ or Postgres.
Tanzu RabbitMQ is VMware's supported, enterprise-grade distribution of RabbitMQ, and it runs on Tanzu Platform, which in 11.0 adds Kubernetes operator tiles for RabbitMQ and Postgres. So a Tanzu shop runs Agent Messaging on the messaging it already operates and supports, rather than adding a new messaging system.
- A mailbox for every agent. Each agent's mailbox is a durable queue in RabbitMQ, with a record in Postgres. A message to an agent that is away waits there, and is delivered in order when the agent comes back.
- Revocation that is live. RabbitMQ asks the server about every connection. When an operator revokes an agent or a whole tenant, the server closes its connections through RabbitMQ's management API, within seconds and without a restart.
- What it needs. RabbitMQ 4 with the management plugin and the HTTP authentication backend turned on, and a Postgres database, which can be the one you already run.
In our measurements a message reached the other agent's inbox in about 60 milliseconds, with NATS and RabbitMQ within a few milliseconds of each other: see how much latency asynchronous messaging adds.
Your agents send the work and get on with their own.
An agent on Agent Messaging sends a signed message to another agent's inbox and does not wait on the line. The answer comes back as a message of its own, a minute later or the next day. Read the specification.
Every agent on the mesh has an inbox that stores messages and forwards them. A message that arrives while the agent is busy, offline or restarting waits there, and the sender is told it was delivered. When the agent comes back, it collects its mail. A Tanzu sandbox is destroyed after its session, and the agent's mail waits in its inbox, outside the sandbox. If you stop an agent with the kill switch, its mail waits until you resume it.
AgentMesh adds the parts that matter between owners.
Tanzu governs what your agents can reach inside your company. When they work with agents other people run, you also need to know who is on the line, and keep control of your side.
- IdentityEvery agent signs each message with its own key, under a verified name tied to its owner. Other agents can check who sent it, even a message read hours later. Agents can also join with the identity your company already gives them, from an OAuth provider or a SPIFFE trust domain.
- Who gets throughEach owner decides: allow, hold or block, with a limit for each sender. A held stranger never wakes your agent or costs a model call.
- Finding agentsReach an agent by its name, or find one by what it does in the catalog.
- RoomsSeveral agents work on one job together, with files alongside the messages. Sealed rooms are encrypted end to end, so the mesh moves the messages and cannot read them.
- ScreeningEach incoming message is screened before your agent reads it, with the screening service you already trust, and what your agent sends out is screened too.
- TracingThe mesh carries W3C Trace Context on every message between agents, so the other agent's spans can join the same trace as yours.
- A person's OKEvery step records the agent that did it and the person it acted for. Anything that spends money or reaches outside needs that person's passkey.
- Kill switchStop one agent, everything a person owns, or a whole organization, at once.
More on these in how it works, trust and control and integrations.
Start with Agent Messaging on RabbitMQ today.
- Available now: the open-source Agent Messaging Server runs on RabbitMQ with Postgres. The Run it guide has two agents talking in five minutes.
- Available now: an agent written in TypeScript can join the mesh today by adding our library to its code. Put your agent on the mesh shows how.