diff --git a/public/llms.txt b/public/llms.txt
index 48b52c0a..70c649ee 100644
--- a/public/llms.txt
+++ b/public/llms.txt
@@ -36,6 +36,7 @@ The managed control plane is in preview. Supported adapters can surface agent ac
## Docs
+- [App Store](https://pilotprotocol.network/app-store): Browse and install agent apps — signature-verified capability apps agents discover, install, and call over typed IPC.
- [Trust Center](https://pilotprotocol.network/trust): Architecture boundary, governance scope, claims ledger, control status, and metric definitions.
- [Security](https://pilotprotocol.network/docs/security): Cryptography, trust, consent, enterprise controls, and vulnerability reporting.
- [Getting Started](https://pilotprotocol.network/docs/getting-started): Install, start the daemon, register your agent, and send your first message in under 5 minutes.
@@ -68,7 +69,7 @@ The managed control plane is in preview. Supported adapters can surface agent ac
- [Nebula vs Tailscale vs ZeroTier: Overlay Network for AI Agents](https://pilotprotocol.network/blog/pilot-vs-tailscale-nebula-zerotier-ai-agents): Head-to-head comparison of the three most popular overlay networks and where Pilot fits for agent workloads.
- [Benchmarking: HTTP vs UDP Overlay](https://pilotprotocol.network/blog/benchmarking-http-vs-udp-overlay): Latency, throughput, and NAT traversal benchmarks comparing HTTP/2 and Pilot's UDP overlay for agent communication.
- [Persistent Connections for AI Agents](https://pilotprotocol.network/blog/move-beyond-rest-persistent-connections-for-agents): Compare REST, WebSocket, gRPC, and persistent UDP tunnels for agent messaging with code examples.
-- [Why AI Agents Need Their Own Network Stack](https://pilotprotocol.network/blog/why-ai-agents-need-network-stack): The case for a dedicated network layer — permanent addresses, NAT traversal, encrypted tunnels, and cryptographic trust for multi-agent systems.
+- [Agent Connectivity Best Practices: Why AI Agents Need a Network Stack](https://pilotprotocol.network/blog/why-ai-agents-need-network-stack): Agent connectivity best practices for multi-agent systems — durable addresses, NAT traversal, encrypted tunnels, and per-peer trust.
- [Overlay Networking Explained](https://pilotprotocol.network/blog/overlay-networking-secure-ai-agent-communication-explained): A practical guide to overlay networking for secure AI agent communication — encapsulation, control planes, protocol trade-offs, and deployment patterns.
- [NATS vs gRPC vs TCP vs Pilot Protocol](https://pilotprotocol.network/blog/pilot-vs-tcp-grpc-nats-comparison): Feature-by-feature comparison of four agent communication protocols with latency and throughput benchmarks.
- [Multi-Agent System Security: Network Defense Strategies](https://pilotprotocol.network/blog/network-security-for-multi-agent-systems-key-strategies): Layered defense, secure protocols (MCP, A2A), and how to protect AI agent networks from compromise.
diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro
index 086486cd..e41637f3 100644
--- a/src/components/BaseHead.astro
+++ b/src/components/BaseHead.astro
@@ -1,6 +1,6 @@
---
import '../styles/global.css';
-import { formatPageTitle } from '../lib/seo.mjs';
+import { formatMetaDescription, formatPageTitle } from '../lib/seo.mjs';
interface Props {
title: string;
@@ -23,6 +23,7 @@ const {
} = Astro.props;
const pageTitle = formatPageTitle(title, Astro.url.pathname);
+const pageDescription = formatMetaDescription(description, Astro.url.pathname);
const canonical = canonicalUrl
? new URL(canonicalUrl, Astro.site ?? 'https://pilotprotocol.network')
: !robots.toLowerCase().includes('noindex')
@@ -46,13 +47,13 @@ const TWITTER_PIXEL_ID =
{pageTitle}
-
+
{resolvedCanonical && }
-
+
{resolvedCanonical && }
@@ -61,7 +62,7 @@ const TWITTER_PIXEL_ID =
-
+
diff --git a/src/data/blogPosts.json b/src/data/blogPosts.json
index c8537942..94deba5e 100644
--- a/src/data/blogPosts.json
+++ b/src/data/blogPosts.json
@@ -32,7 +32,7 @@
{
"slug": "build-agent-app-turn-api-into-tool",
"title": "How to Build an Agent App: Turn Your API Into an Agent-Native Tool",
- "description": "Turn an existing API into an installable agent app on Pilot Protocol — the discover, install, call loop, what to prepare, and how to publish.",
+ "description": "Turn an existing API into an installable agent app on Pilot Protocol \u2014 the discover, install, call loop, what to prepare, and how to publish.",
"date": "Jul 5",
"category": "Blog",
"tags": [
@@ -62,7 +62,7 @@
{
"slug": "overlay-network-ai-agents",
"title": "Overlay Network for AI Agents: Architecture and Trust Model",
- "description": "What an overlay network for AI agents needs — persistent addressing, NAT traversal, encrypted transport, and per-peer trust — and how Pilot Protocol implements it.",
+ "description": "What an overlay network for AI agents needs \u2014 persistent addressing, NAT traversal, encrypted transport, and per-peer trust \u2014 and how Pilot Protocol implements it.",
"date": "Jul 1",
"category": "Blog",
"tags": [
@@ -107,7 +107,7 @@
{
"slug": "direct-communication-protocols-ai-agents-guide",
"title": "AI agent communication protocols: Pilot vs MCP vs A2A vs ACP vs ANP",
- "description": "Compare AI agent communication protocols — MCP, A2A, ACP, ANP, and Pilot — on transport, discovery, NAT traversal, and trust. Find the right stack for your agents.",
+ "description": "Compare five agent protocols across transport, discovery, trust, reachability, and application semantics to choose a complementary stack.",
"date": "Jun 29",
"category": "Blog",
"tags": [
@@ -282,8 +282,8 @@
},
{
"slug": "overlay-networking-secure-ai-agent-communication-explained",
- "title": "Overlay networking: Secure AI agent communication explained",
- "description": "Discover what is overlay networking and how it enables secure communication for AI agents. Optimize your distributed systems today!",
+ "title": "Overlay Networking Explained for Distributed AI Systems",
+ "description": "A vendor-neutral primer on overlay and underlay networks, encapsulation, topology, MTU, control and data planes, identity, routing, and operational tradeoffs.",
"date": "Apr 27",
"category": "Blog",
"tags": [
@@ -514,7 +514,7 @@
{
"slug": "protocol-wrapping-secure-peer-to-peer-ai-systems",
"title": "Protocol wrapping for secure peer-to-peer AI systems",
- "description": "Learn how protocol wrapping powers secure P2P AI networks. Covers VXLAN, Geneve, UDP overlays, anonymity wrappers, and real-world benchmarks for distributed systems engineers.",
+ "description": "How encapsulation, metadata, encryption, direct paths, and relay fallback shape protocol-wrapping choices for distributed AI systems.",
"date": "Aug 11",
"category": "Blog",
"tags": [
@@ -576,8 +576,8 @@
},
{
"slug": "ai-networking-terminology-a2a-mcp-anp-protocols",
- "title": "AI networking terminology explained: A2A, MCP, ANP protocols",
- "description": "Understand A2A, MCP, and ANP protocols for AI agent networking. Learn how each works, their security models, benchmark realities, and which to use in 2026.",
+ "title": "AI Networking Glossary: A2A, MCP, and ANP Terms",
+ "description": "A definition-first glossary for A2A, MCP, ANP, Agent Cards, tools, resources, discovery, transport, identity, and trust in an agent system.",
"date": "Apr 1",
"category": "Blog",
"tags": [
@@ -777,7 +777,7 @@
{
"slug": "openclaw-agents-behind-nat-zero-config",
"title": "OpenClaw Agents Behind NAT: Zero-Config Peer Connectivity",
- "description": "52% of OpenClaw agents were behind NAT. None configured port forwarding. How Pilot Protocol's three-tier traversal delivers zero-config connectivity for autonomous agents.",
+ "description": "How OpenClaw agents can attempt direct traversal and use encrypted relay fallback across home, enterprise, cloud, and mobile environments.",
"date": "Mar 17",
"category": "Guide",
"tags": [
@@ -1024,7 +1024,7 @@
{
"slug": "secure-ai-agent-communication-zero-trust",
"title": "How to Secure AI Agent Communication With Zero Trust",
- "description": "Zero trust for AI agents: Ed25519 identity, private-by-default discovery, mutual handshakes with justification, and instant revocation. CrewAI exfiltrated data 65% of the time -- here is how to stop trusting by default.",
+ "description": "A practical zero-trust model for AI agent communication: authenticated peers, encrypted tunnels, revocable trust, clear boundaries, and application controls.",
"date": "Jun 5",
"category": "Security",
"tags": [
@@ -1128,7 +1128,7 @@
{
"slug": "how-pilot-protocol-works",
"title": "How Pilot Protocol Works",
- "description": "A deep dive into 48-bit virtual addresses, UDP tunnels, three-tier NAT traversal, X25519-based tunnel encryption, and policy-gated endpoint access.",
+ "description": "How Pilot separates agent identity and coordination from encrypted payload paths, including discovery, traversal, direct connections, and relay fallback.",
"date": "May 21",
"category": "Architecture",
"tags": [
@@ -1153,13 +1153,15 @@
},
{
"slug": "why-ai-agents-need-network-stack",
- "title": "Why AI Agents Need Their Own Network Stack",
- "description": "A2A assumes HTTP endpoints. MCP assumes reachable servers. 88% of networks involve NAT. The agent ecosystem is missing its TCP/IP layer.",
+ "title": "Agent Connectivity Best Practices: Why AI Agents Need a Network Stack",
+ "description": "Agent connectivity best practices for reliable multi-agent systems: durable addresses, NAT traversal, encrypted tunnels, and per-peer trust.",
"date": "Feb 2",
"category": "Architecture",
"tags": [
"opinion",
- "ai-agents"
+ "ai-agents",
+ "networking",
+ "best-practices"
],
"banner": "banners/why-ai-agents-need-network-stack.webp",
"iso_date": "2026-02-02"
@@ -1179,8 +1181,8 @@
},
{
"slug": "benchmarking-http-vs-udp-overlay",
- "title": "Benchmarking Agent Communication: HTTP vs. UDP Overlay",
- "description": "Hard numbers comparing connection setup, message latency, throughput, and memory usage between HTTP/2, gRPC, WebSocket, and Pilot Protocol.",
+ "title": "HTTP vs UDP Overlay: An Agent Benchmarking Method",
+ "description": "A reproducible method for comparing cold and warm connections, direct and relayed paths, latency, throughput, resource use, and recovery.",
"date": "Feb 26",
"category": "Architecture",
"tags": [
@@ -1269,8 +1271,8 @@
},
{
"slug": "zero-dependency-encryption-x25519-aes-gcm",
- "title": "Zero-Dependency Agent Encryption: X25519 + AES-256-GCM in Pure Go",
- "description": "How Pilot implements authenticated key exchange, tunnel encryption, nonce management, and replay protection using only Go's standard library.",
+ "title": "AES-256-GCM Encryption: Zero-Dependency Go Implementation Guide",
+ "description": "AES-256-GCM encryption explained with code: X25519 key exchange, GCM authenticated encryption, nonce handling, and wire format in zero-dependency Go.",
"date": "Feb 8",
"category": "Security",
"tags": [
@@ -1295,8 +1297,8 @@
},
{
"slug": "pilot-vs-tcp-grpc-nats-comparison",
- "title": "Pilot vs. TCP vs. gRPC vs. NATS: Agent Communication",
- "description": "An honest comparison with real benchmarks. Where each wins, where each loses, and which to use for your agent architecture.",
+ "title": "Where Pilot Fits with TCP, gRPC, and NATS",
+ "description": "A responsibility-first comparison of transport, typed RPC, brokered messaging, agent identity, and cross-network reachability.",
"date": "Feb 4",
"category": "Architecture",
"tags": [
diff --git a/src/data/solutions.ts b/src/data/solutions.ts
index 042954dc..a63e0206 100644
--- a/src/data/solutions.ts
+++ b/src/data/solutions.ts
@@ -46,8 +46,8 @@ export const solutions: SolutionProfile[] = [
group: 'Connect',
hue: 125,
eyebrow: 'Agent connectivity',
- metaTitle: 'Private Agent Networks Across Boundaries | Pilot Protocol',
- description: 'Give AI agents permanent addresses, private discovery, explicit trust, and encrypted direct or relayed paths across machines and networks.',
+ metaTitle: 'AI Agent Network for Private Connectivity | Pilot Protocol',
+ description: 'Build a private AI agent network with permanent addresses, private discovery, explicit trust, and encrypted paths across machines and clouds.',
heroLead: 'Connect agents across',
heroEmphasis: 'every boundary.',
lede: 'Give every agent a stable network identity and a private path to its peers—across laptops, clouds, offices, and organizations—without treating a central message broker as the data plane.',
diff --git a/src/layouts/BlogLayout.astro b/src/layouts/BlogLayout.astro
index f9ed94f0..2392be17 100644
--- a/src/layouts/BlogLayout.astro
+++ b/src/layouts/BlogLayout.astro
@@ -76,6 +76,86 @@ const related = collectionPosts
.sort((a, b) => b.shared - a.shared)
.slice(0, 3);
+const funnelCtaGroups = [
+ {
+ slugs: new Set([
+ 'why-ai-agents-need-network-stack',
+ 'pilot-vs-tcp-grpc-nats-comparison',
+ 'direct-communication-protocols-ai-agents-guide',
+ 'ai-agent-discovery-process-p2p-networks',
+ 'how-pilot-protocol-works',
+ 'pilot-vs-tailscale-nebula-zerotier-ai-agents',
+ 'connect-ai-agents-behind-nat-without-vpn',
+ 'build-agent-swarm-self-organizes',
+ 'peer-to-peer-agent-communication-no-server',
+ 'overlay-networking-secure-ai-agent-communication-explained',
+ ]),
+ eyebrow: 'For agent platform teams',
+ title: 'Map the network your agents actually need',
+ body: 'Review addressing, private discovery, peer trust, direct paths, and encrypted relay fallback as one deployment model.',
+ href: '/solutions/private-agent-network',
+ label: 'Explore private agent networks',
+ },
+ {
+ slugs: new Set([
+ 'zero-dependency-encryption-x25519-aes-gcm',
+ 'secure-ai-agent-communication-zero-trust',
+ 'agent-communication-security-best-practices',
+ 'trust-model-agents-invisible-by-default',
+ ]),
+ eyebrow: 'For security reviewers',
+ title: 'Separate implemented controls from deployment policy',
+ body: 'Inspect the cryptographic boundary, trust lifecycle, metadata exposure, operational controls, and stated limitations.',
+ href: '/trust',
+ label: 'Open the Trust Center',
+ },
+ {
+ slugs: new Set([
+ 'ai-agent-app-store',
+ 'build-agent-app-turn-api-into-tool',
+ 'mcp-plus-pilot-tools-and-network',
+ ]),
+ eyebrow: 'For API and tool publishers',
+ title: 'Turn one useful service into an agent capability',
+ body: 'Package typed methods, declare required authority, and make the capability discoverable without replacing the upstream product.',
+ href: '/solutions/agent-ready-apis',
+ label: 'See the publisher path',
+ },
+ {
+ slugs: new Set([
+ 'distributed-rag-without-central-knowledge-base',
+ 'scriptorium-replace-agentic-active-research-ready-intelligence',
+ ]),
+ eyebrow: 'For knowledge and research teams',
+ title: 'Evaluate grounded search on your own sources',
+ body: 'Compare lexical, dense, and hybrid retrieval while preserving citations and control over the index and model endpoints.',
+ href: '/solutions/grounded-agent-search',
+ label: 'Explore grounded agent search',
+ },
+ {
+ slugs: new Set(['claude-agent-teams-over-pilot']),
+ eyebrow: 'For engineering leaders',
+ title: 'Manage coding-agent settings and usage as a fleet',
+ body: 'Review the early-access control surface for inventory, signed settings, usage attribution, and audited remote operations.',
+ href: '/enterprise/claude-code-management',
+ label: 'Review enterprise management',
+ },
+ {
+ slugs: new Set([
+ 'enterprise-identity-integration-pilot-protocol',
+ 'enterprise-private-networks-roadmap',
+ 'enterprise-phase-3-rbac-policies-audit-fleet',
+ 'enterprise-production-complete-identity-directory-audit-export',
+ ]),
+ eyebrow: 'For enterprise AI teams',
+ title: 'Put autonomous agents inside an operating control loop',
+ body: 'Connect fleet state, signed policy, approvals, bounded remote operations, usage telemetry, and action evidence.',
+ href: '/enterprise/autonomous-ai-agents',
+ label: 'Explore the agent control plane',
+ },
+];
+const funnelCta = funnelCtaGroups.find((group) => group.slugs.has(currentSlug));
+
// Imported article bodies historically included their own schema and page
// title. The layout owns both, so remove only those first legacy elements.
const renderedBody = await Astro.slots.render('default');
@@ -209,6 +289,16 @@ const faqSectionId = headingIds.has('frequently-asked-questions')
{tags.map((tag) => {tag})}
+ {funnelCta && (
+
+ )}