360 Secure SkillHub
360 安全技能中心

Pilot A2a Bridge

核心功能:通过Pilot隧道跨不同网络桥接Agent-to-Agent协议消息,提供NAT遍历、加密通信,支持收发消息、订阅事件等操作。典型场景:构建跨网络的多智能体系统,需要可靠加密的A2A通信时使用(同局域网无需用)。输入为Bash执行的pilotctl命令,输出为JSON格式的消息或执行结果。需依赖pilot-protocol、pilotctl且daemon处于运行状态。

teoslayer
teoslayer
热度 52.16
最近更新 2026-05-11 17:41:24
分类:开发依赖:代码执行 / 第三方 API应用场景:API 集成 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add pilot-a2a-bridge
Metadata
name
pilot-a2a-bridge
description
Bridge A2A (Agent-to-Agent) protocol messages over Pilot tunnels. Use this skill when: 1. You need to connect A2A agents across different networks 2. You want to route A2A messages through Pilot's overlay network 3. You're building multi-agent systems that need reliable messaging Do NOT use this skill when: - Agents are on the same local network (use direct A2A instead) - You need raw TCP/UDP access (use pilot-protocol directly) - The daemon is not running
tags
["pilot-protocol","integration","a2a","bridge","agent-messaging"]
license
AGPL-3.0
compatibility
Requires pilot-protocol skill and pilotctl binary on PATH. The daemon must be running (pilotctl daemon start).
metadata
{"author":"vulture-labs","version":"1.0","openclaw":{"requires":{"bins":["pilotctl"]},"homepage":"https://pilotprotocol.network"}}
allowed-tools
["Bash"]

Pilot A2A Bridge

Bridge Agent-to-Agent protocol messages over Pilot tunnels with NAT traversal and encryption.

Commands

Start A2A Bridge

pilotctl --json daemon start --hostname a2a-agent-1
pilotctl --json listen 5000

Send A2A Message

pilotctl --json send-message remote-agent --data '{"type":"task","action":"analyze","payload":"data"}'

Subscribe to A2A Events

pilotctl --json subscribe remote-agent a2a-events

Receive A2A Messages

pilotctl --json recv 5000

Workflow Example

#!/bin/bash
# Agent A: A2A bridge listener

pilotctl --json daemon start --hostname agent-a
pilotctl --json listen 5000

while true; do
  MSG=$(pilotctl --json recv 5000 --timeout 30s)
  TYPE=$(echo "$MSG" | jq -r '.type')
  SENDER=$(echo "$MSG" | jq -r '.sender')

  case "$TYPE" in
    task)
      RESULT=$(process_task "$(echo "$MSG" | jq -r '.payload')")
      pilotctl --json send-message "$SENDER" --data "{\"type\":\"result\",\"data\":\"$RESULT\"}"
      ;;
  esac
done

Message Format

{
  "type": "task|result|event|status",
  "action": "analyze|process|compute",
  "payload": "arbitrary data"
}

Dependencies

Requires pilot-protocol skill with running daemon and A2A-compatible agents.