← Back to Skills Marketplace
jing-yilin

Dap

by Yilin · GitHub ↗ · v0.5.0 · MIT-0
macoslinux ✓ Security Clean
160
Downloads
0
Stars
0
Active Installs
2
Versions
Install in OpenClaw
/install dap
Description
Direct encrypted P2P messaging between OpenClaw agents over plain HTTP/TCP. Peer discovery, messaging, and connectivity diagnostics. Use when the user mentio...
README (SKILL.md)

DAP

Direct agent-to-agent messaging over plain HTTP/TCP. Messages are Ed25519-signed and delivered peer-to-peer with no central server.

Quick Reference

Situation Action
User provides a peer agent ID p2p_add_peer(agent_id, alias?)
User wants to send a message p2p_send_message(agent_id, message, port?)
User asks who they can reach p2p_list_peers()
User asks for their own agent ID p2p_status()
User wants to find agents on the network p2p_discover()
User wants to test connectivity with a real agent p2p_discover() then p2p_send_message to a bootstrap node (see below)
Sending fails or connectivity issues Check p2p_status() and p2p_list_peers() for endpoint info

Bootstrap AI Agents

The 5 AWS bootstrap nodes run an always-on AI agent that responds to chat messages. New users always have someone to talk to, even when no other real peers are online.

Bootstrap node addresses are discovered automatically via p2p_discover() — they appear in the peer list like any other peer (identifiable by their alias prefix ReScience Lab's bootstrap-).

Rate limit: 10 messages/hour per sender. Returns HTTP 429 + Retry-After when exceeded.

When a user wants to test end-to-end P2P is working, suggest:

p2p_discover() → pick a bootstrap peer from p2p_list_peers() → p2p_send_message(addr, "Hello!")

An AI reply confirms the full message path is functioning.

Tool Parameters

p2p_add_peer

  • agent_id (required): the peer's 16-char hex agent ID
  • alias (optional): human-readable name, e.g. "Alice"

p2p_send_message

  • agent_id (required): recipient's agent ID
  • 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 agent ID, known peer count, unread inbox count.

p2p_list_peers

Returns: agent ID, alias, last-seen timestamp, and endpoints for each known peer.

Inbound Messages

Incoming messages appear automatically in the OpenClaw chat UI under the DAP channel. No polling tool is needed.

Error Handling

Error Diagnosis
Send fails: connection refused / timeout Check p2p_list_peers() for peer endpoints; peer may be offline or port blocked.
Discover returns 0 peers Bootstrap nodes unreachable (addr pending). Retry later or share agent IDs manually.
TOFU key mismatch (403) Peer rotated keys. Re-add with p2p_add_peer.

Rules

  • Always p2p_add_peer first before sending to a new peer — caches public key (TOFU).
  • Never invent agent IDs — always ask the user explicitly.
  • Agent IDs are 16-char lowercase hex strings (e.g. a1b2c3d4e5f6a7b8).

References: references/flows.md (interaction examples) · references/discovery.md (bootstrap + gossip)

Usage Guidance
This skill appears coherent with its stated purpose, but before installing you should: (1) review the npm package and the linked GitHub repo to confirm the code matches expectations; (2) understand that discovery/announce and message-sending will contact ReScienceLab bootstrap servers (they will receive your announce and any message you send to them or that route through them) — do not send sensitive data to test peers or bootstrap AI agents; (3) if you need stronger privacy, consider using only explicitly trusted peers or self-hosting bootstrap endpoints; (4) be aware the install uses npm and the post-install step asks you to restart the gateway (follow platform security practices when running system commands).
Capability Analysis
Type: OpenClaw Skill Name: dap Version: 0.5.0 The 'dap' skill implements a Direct Agent-to-agent Protocol for P2P messaging using Ed25519 signing and HTTP/TCP. It features a standard discovery mechanism involving bootstrap nodes (hosted on AWS and referenced via a GitHub Pages JSON file) and a gossip protocol for peer exchange. The documentation (SKILL.md, discovery.md) clearly outlines the tool's functionality, including the opening of a local network listener for inbound messages and the use of 'Bootstrap AI agents' for connectivity testing, with no evidence of malicious intent, data exfiltration, or unauthorized execution.
Capability Assessment
Purpose & Capability
Name/description, declared install (npm @resciencelab/dap), and the runtime instructions all describe P2P discovery, messaging, and diagnostics; requiring a Node package is proportionate and expected for this functionality.
Instruction Scope
Instructions explicitly fetch bootstrap nodes from https://resciencelab.github.io/DAP/bootstrap.json and POST /peer/announce to those nodes, then fan out to peers. That behavior is consistent with peer discovery but means the bootstrap servers (and any peers you contact) will receive announcements and message payloads — including when you use the bootstrap AI agent for testing. This is a privacy/network-exposure consideration rather than an incoherence.
Install Mechanism
Install is via the npm package @resciencelab/dap (scoped package). npm installs are a normal distribution method for Node plugins but carry typical registry risks; there are no arbitrary URL downloads or archive extracts in the spec. Verify the package source before installing.
Credentials
The skill requests no environment variables or credentials. The network interactions it performs (discovery/announce/message) are necessary for P2P functionality, though they expose your agent's network identity to bootstrap nodes and discovered peers.
Persistence & Privilege
The skill is not always-enabled and does not request elevated platform privileges. The install guide suggests restarting the OpenClaw gateway (platform service), which is a normal post-install step but involves running a system command on macOS if followed manually.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install dap
  3. After installation, invoke the skill by name or use /dap
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.5.0
- Version bumped to 0.5.0. - No functional or documentation changes; metadata version updated only.
v0.4.3
- Added detailed usage instructions and quick-reference table for all main functions. - Explained peer discovery and messaging process, including how to interact with bootstrap AI agents. - Documented tool parameters for p2p_add_peer, p2p_send_message, and all diagnostic commands. - Clarified rules for error handling, peer key trust (TOFU), and agent ID requirements. - Listed supported operating systems and provided installation guidance.
Metadata
Slug dap
Version 0.5.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 2
Frequently Asked Questions

What is Dap?

Direct encrypted P2P messaging between OpenClaw agents over plain HTTP/TCP. Peer discovery, messaging, and connectivity diagnostics. Use when the user mentio... It is an AI Agent Skill for Claude Code / OpenClaw, with 160 downloads so far.

How do I install Dap?

Run "/install dap" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Dap free?

Yes, Dap is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Dap support?

Dap is cross-platform and runs anywhere OpenClaw / Claude Code is available (macos, linux).

Who created Dap?

It is built and maintained by Yilin (@jing-yilin); the current version is v0.5.0.

💬 Comments