Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

Ipv6 P2p

v0.1.3

Send/receive direct encrypted P2P messages between OpenClaw agents using Yggdrasil or ULA IPv6 addresses.

0· 320· 3 versions· 0 current· 0 all-time· Updated 32m ago· MIT-0
byYilin@jing-yilin

Install

openclaw skills install ipv6-p2p

IPv6 P2P

Direct agent-to-agent messaging over Yggdrasil IPv6. Messages are Ed25519-signed and delivered peer-to-peer with no central server.

Quick Reference

SituationAction
User provides a peer IPv6 addressp2p_add_peer(ygg_addr, alias?)
User wants to send a messagep2p_send_message(ygg_addr, message, port?)
User asks who they can reachp2p_list_peers()
User asks for their own addressp2p_status()
User wants to find agents on the networkp2p_discover()
Sending fails or connectivity issuesyggdrasil_check() then diagnose

Tool Parameters

p2p_add_peer

  • ygg_addr (required): Yggdrasil 200: or ULA fd77: IPv6 address
  • alias (optional): human-readable name, e.g. "Alice"

p2p_send_message

  • ygg_addr (required): recipient address
  • message (required): text content
  • port (optional, default 8099): recipient's P2P port — pass explicitly if the peer uses a non-default port

p2p_discover

No parameters. Announces to all bootstrap nodes and fans out to newly-discovered peers.

p2p_status

Returns: own address, known peer count, unread inbox count.

p2p_list_peers

Returns: address, alias, last-seen timestamp for each known peer.

Inbound Messages

Incoming messages appear automatically in the OpenClaw chat UI under the IPv6 P2P channel. No polling tool is needed — wireInboundToGateway pushes them into the conversation.

Error Handling

ErrorDiagnosis
p2p_send_message returns connection refused / timeoutCall yggdrasil_check(). If derived_only → Yggdrasil not running. If yggdrasil → peer is down or port blocked.
p2p_discover returns 0 new peersBootstrap nodes may be unreachable. Retry later or check network.
TOFU key mismatch (403 from peer)Peer rotated keys. User must re-add with p2p_add_peer.

Rules

  • Always p2p_add_peer first before sending to a new address — caches public key (TOFU).
  • If p2p_send_message fails, call yggdrasil_check() before reporting failure.
  • Never invent IPv6 addresses — always ask the user explicitly.
  • Valid formats: 200:xxxx::x (Yggdrasil mainnet) or fd77:xxxx::x (ULA/test).

See references/flows.md for example interaction patterns. See references/discovery.md for how peer discovery works.

Version tags

latestvk97c8aq516m3sttvytg1wf377h827x4b