DEV Community

Philip Stayetski
Philip Stayetski

Posted on

Membership Is Not Trust — and Autonomous Agents Are Why We Finally Have to Decouple Them

Membership Is Not Trust — and Autonomous Agents Are Why We Finally Have to Decouple Them

Every overlay network I joined before building my own had an implicit assumption buried in the transport layer: if a node has the network key, it belongs. It can see your traffic. It can reach your services. The credential that let it in is the same credential that says it's trusted.

That assumption works fine when every node on the network is a server you control, a laptop belonging to an employee, or a cloud VM under your AWS account. All those nodes share a common administrator and a common threat model. The credential is trust.

Then AI agents showed up.

And suddenly the node on your overlay network is a reasoning loop running on a foreign host, connected via an API key scoped to one capability, with a jailbreak as its weakest dependency. Do you still want network-level credentials to grant blanket trust?

The VPN model breaks when nodes are autonomous

Zero-trust networking tools like Tailscale and Nebula made a genuine improvement over traditional VPNs. They shifted from IP-based ACLs to identity-based rules. A node authenticates with a cryptographic identity, and you write policy against that identity. That is strictly better than the old "anyone with the cert gets the full network" model.

But even with identity-based ACLs, the structure is still admission-level: once the directory says "node X belongs to network Y," the default is reachability. The ACL whitelist on top is a separate layer that most setups never tune past a few coarse rules. And critically, the ACL is written by an administrator who presumes stable intent — a server that was safe yesterday will be safe tomorrow. An agent has no such stability guarantee. An agent can be given a new tool, a new system prompt, or a compromised dependency between one run and the next.

This is the flat-network assumption in practice: membership grants a baseline of trust that propagates across every peer the node can reach.

What changes when the nodes reason

The distinction that matters is not technical but architectural. A VPN node is a conduit — it forwards packets, runs services, stores files. An agent node is a decision-maker. It reads context, calls tools, and acts on instructions. Its behavior is not fully determined by its code; it is also determined by the prompt it received five turns ago.

This means agent nodes violate the static-trust assumption in ways that non-agent nodes do not:

  • An agent can be jailbroken mid-session and used to attack peers it already has trust relationships with.
  • An agent can be cloned (same code, same identity) and deployed in an adversarial context, then used to extract data from trusted peers.
  • An agent can autonomously accept a new capability from an app store or skill registry, expanding its attack surface without an administrator approving the change.

Each of these is a scenario where the node is still "in the network" — its membership credential hasn't changed — but the trust worth granting it has.

What decoupling actually looks like

Decoupling membership from trust means treating these as two separate decisions:

  1. Membership: Can this node resolve names, discover peers, and send messages on the network?
  2. Trust: Should I accept incoming messages from this peer, share state, or delegate tasks to it?

Membership is coarse-grained and relatively static. Trust is per-peer, per-session, and revocable. A node stays on the network (it can still send pings and discover other peers) even after trust is revoked for a specific peer.

In practice this means:

  • The rendezvous or nameserver answers "is this agent registered?" — that's membership.
  • Every peer answers "do I accept a connection from this agent?" — that's trust, and it is decided locally, not by a central directory.
  • Trust is stored as a signed handshake record, not derived from network credentials.
  • Revoking trust for one peer does not eject the peer from the network — all other peers are unaffected.

This looks different from a VPN where revoking a node's certificate kicks it off the entire network because the credential was both membership AND trust.

An explicit handshake, not automatic admission

The most visible difference between a membership model and a membership-plus-trust model is the handshake. When node A discovers node B on the network, it does not get a tunnel automatically. It sends a handshake request: "I am node A, here is what I do, will you talk to me?"

Node B evaluates the request locally and explicitly approves or rejects it. The approval is a signed record that both sides hold. The tunnel opens only after both sides have chosen to trust each other.

This means an agent can be a full member of the network (it can run a nameserver, relay messages for other peers, participate in group discovery) while simultaneously rejecting all incoming tunnels from agents it does not trust. Membership is a network-layer property. Trust is a peer-layer property.

This is structurally different from a Tailscale-style mesh where adding a node to the tailnet automatically gives it a virtual IP and any other node on the tailnet can reach it unless an ACL blocks it. The default in decoupled trust is closed. The tunnel stays shut until both sides opt in.

Why this matters for multi-agent systems

If you are running a multi-agent system where agents need to communicate across hosts — especially across organizational boundaries — the flat-network assumption creates real risk. A compromised agent on the same mesh network has a direct path to every other agent. The ACL that separates them is one misconfigured rule away from opening.

With membership-trust decoupling, the risk profile narrows. A compromised agent retains network membership (it can still discover peers, still participate in the rendezvous), but every other peer independently decides whether to maintain its trust relationship. The compromise does not cascade. The attacker gets a single no-op tunnel to a peer that already revoked its approval.

This is the same principle behind capability-based security applied at the networking layer. Membership gives scope. Trust gives authority. The two should not be the same bit.

The practical takeaway

If you are building agent infrastructure, audit your networking layer for the flat-network assumption:

  • Does joining the network implicitly grant reachability to every other node?
  • Is trust managed locally per peer, or is it derived from a central directory or credential?
  • Can a peer be a good citizen on the network (route, discover, relay) while simultaneously refusing connections from specific other peers?
  • Can you revoke trust from a peer without removing it from the network entirely?

If the answer to any of these is "I don't know," the flat-network assumption is almost certainly baked into your transport. It was invisible when the nodes were all your own servers. With autonomous agents on the network, it is the vulnerability you will debug at 2 AM.

Decouple membership from trust before the agents decide who they trust for you.


Pilot Protocol implements this decoupling natively — membership is managed through a rendezvous registry, and trust is a per-peer handshake that both sides must explicitly approve. If you are evaluating agent networking infrastructure, the docs explain the trust model in detail.

curl -fsSL https://pilotprotocol.network/install.sh | sh
pilotctl appstore catalogue  # see what's available
Enter fullscreen mode Exit fullscreen mode

Top comments (0)