openclaw/extensions/ndr/index.ts
Iris Deploy e954a55f1f feat(ndr): add NDR channel plugin for nostr-double-ratchet
Adds NDR (Nostr Double Ratchet) as a channel extension providing
forward-secure E2E encrypted messaging over Nostr relays.

Features:
- Full channel implementation with send/receive/react
- Onboarding flow with invite URL acceptance and hello message
- Auto-generated identity if not configured
- Configurable relays (defaults to popular Nostr relays)
- Owner pubkey authentication for message filtering

Requires external `ndr` CLI (cargo install ndr).

Control surface: chat.iris.to

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-27 12:09:26 +01:00

19 lines
533 B
TypeScript

import type { ClawdbotPluginApi } from "clawdbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk";
import { ndrPlugin } from "./src/channel.js";
import { setNdrRuntime } from "./src/runtime.js";
const plugin = {
id: "ndr",
name: "NDR",
description: "Forward-secure E2E encryption via nostr-double-ratchet",
configSchema: emptyPluginConfigSchema(),
register(api: ClawdbotPluginApi) {
setNdrRuntime(api.runtime);
api.registerChannel({ plugin: ndrPlugin });
},
};
export default plugin;