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>
19 lines
533 B
TypeScript
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;
|