801★by davemorin
clawlink – OpenClaw Skill
clawlink is an OpenClaw Skills integration for security workflows. Encrypted Clawbot-to-Clawbot messaging. Send messages to friends' Clawbots with end-to-end encryption.
Skill Snapshot
| name | clawlink |
| description | Encrypted Clawbot-to-Clawbot messaging. Send messages to friends' Clawbots with end-to-end encryption. OpenClaw Skills integration. |
| owner | davemorin |
| repository | davemorin/clawlink |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @davemorin/clawlink |
| last updated | Feb 7, 2026 |
Maintainer

name: clawlink description: Encrypted Clawbot-to-Clawbot messaging. Send messages to friends' Clawbots with end-to-end encryption. triggers:
- clawlink
- friend link
- add friend
- send message to
- tell [name] that
- message from
- accept friend request
- clawlink preferences
- quiet hours
ClawLink
Encrypted peer-to-peer messaging between Clawbots via central relay.
Philosophy
Communication should be async by default, context-aware, and translated to how the recipient wants to receive it. AI on both ends handles the mediation.
Your Clawbot packages and encrypts your message → sends to their Clawbot → which waits for the right moment and delivers it in their preferred voice.
Installation
cd ~/clawd/skills/clawlink
npm install
node scripts/install.js # Adds to HEARTBEAT.md
node cli.js setup "Your Name"
Quick Start for Clawbot
Use the handler for JSON output:
node handler.js <action> [args...]
Core Actions
| Action | Usage |
|---|---|
check | Poll for messages and requests |
send | send "Matt" "Hello!" [--urgent] [--context=work] |
add | add "clawlink://..." |
accept | accept "Matt" |
link | Get your friend link |
friends | List friends |
status | Get status |
Preference Actions
| Action | Usage |
|---|---|
preferences | Show all preferences |
quiet-hours | quiet-hours 22:00 08:00 or quiet-hours off |
batch | batch on or batch off |
tone | tone casual/formal/brief/natural |
friend-priority | friend-priority "Sophie" high |
Natural Language (for Clawbot)
These phrases trigger ClawLink:
- "Send a message to Sophie saying..."
- "Tell Matt that..."
- "Add this friend: clawlink://..."
- "Accept the friend request from..."
- "Show my friend link"
- "Set quiet hours from 10pm to 7am"
- "What messages do I have?"
Security
- Ed25519 identity keys (your Clawbot ID)
- X25519 key exchange (Diffie-Hellman)
- XChaCha20-Poly1305 authenticated encryption
- Keys never leave your device
- Relay sees only encrypted blobs
Delivery Preferences
Recipients control how they receive messages:
{
"schedule": {
"quietHours": { "enabled": true, "start": "22:00", "end": "08:00" },
"batchDelivery": { "enabled": false, "times": ["09:00", "18:00"] }
},
"delivery": {
"allowUrgentDuringQuiet": true,
"summarizeFirst": true
},
"style": {
"tone": "casual",
"greetingStyle": "friendly"
},
"friends": {
"Sophie Bakalar": { "priority": "high", "alwaysDeliver": true }
}
}
Relay
- URL: https://relay.clawlink.bot
- Stores only encrypted messages temporarily
- Cannot read message contents
- Verifies signatures to prevent spam
File Structure
~/clawd/skills/clawlink/
├── lib/
│ ├── crypto.js # Ed25519/X25519/XChaCha20
│ ├── relay.js # Relay API client
│ ├── requests.js # Friend request protocol
│ ├── clawbot.js # Clawbot integration
│ ├── preferences.js # Delivery preferences
│ └── style.js # Message formatting
├── scripts/
│ ├── setup.js
│ ├── friends.js
│ ├── send.js
│ ├── poll.js
│ ├── preferences.js
│ └── install.js
├── cli.js
├── handler.js # JSON API
├── heartbeat.js # Auto-poll
├── manifest.json
└── SKILL.md
Data Location
All ClawLink data stored at: ~/.config/clawbot/clawlink/
identity.json— Your Ed25519 keypairfriends.json— Friend list with shared secretspreferences.json— Delivery preferences
No README available.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
- **Ed25519** identity keys (your Clawbot ID) - **X25519** key exchange (Diffie-Hellman) - **XChaCha20-Poly1305** authenticated encryption - Keys never leave your device - Relay sees only encrypted blobs
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install clawlink?
Run openclaw add @davemorin/clawlink in your terminal. This installs clawlink into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/davemorin/clawlink. Review commits and README documentation before installing.
