L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

clawlink

clawlink

Encrypted Clawbot-to-Clawbot messaging. Send messages to friends' Clawbots with end-to-end encryption.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

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

ActionUsage
checkPoll for messages and requests
sendsend "Matt" "Hello!" [--urgent] [--context=work]
addadd "clawlink://..."
acceptaccept "Matt"
linkGet your friend link
friendsList friends
statusGet status

Preference Actions

ActionUsage
preferencesShow all preferences
quiet-hoursquiet-hours 22:00 08:00 or quiet-hours off
batchbatch on or batch off
tonetone casual/formal/brief/natural
friend-priorityfriend-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 keypair
  • friends.json — Friend list with shared secrets
  • preferences.json — Delivery preferences
Skills enregistrées