@agentvault/secure-channel 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,16 +1,17 @@
1
1
  /**
2
- * OpenClaw plugin entry point.
2
+ * OpenClaw channel plugin entry point.
3
3
  *
4
- * This file is loaded by OpenClaw at runtime via the `openclaw.extensions`
5
- * field in package.json. It registers AgentVault as a first-class channel.
4
+ * Intentionally thin no heavy imports (libsodium etc.) at module load time.
5
+ * SecureChannel is dynamically imported inside gateway.startAccount (already async)
6
+ * so libsodium's top-level await never runs during plugin registration.
6
7
  *
7
- * Users should not import this file directly use the main package export instead.
8
+ * Loaded by OpenClaw via the `openclaw.extensions` field in package.json.
8
9
  */
9
- declare const plugin: {
10
+ declare const _default: {
10
11
  id: string;
11
12
  name: string;
12
13
  description: string;
13
14
  register(api: any): void;
14
15
  };
15
- export default plugin;
16
+ export default _default;
16
17
  //# sourceMappingURL=openclaw-entry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openclaw-entry.d.ts","sourceRoot":"","sources":["../src/openclaw-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,QAAA,MAAM,MAAM;;;;kBAMI,GAAG;CAKlB,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"openclaw-entry.d.ts","sourceRoot":"","sources":["../src/openclaw-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;;;;;kBAwLa,GAAG;;AALnB,wBASE"}
@@ -0,0 +1,165 @@
1
+ // src/openclaw-entry.ts
2
+ import { resolve } from "node:path";
3
+ var _ocRuntime = null;
4
+ var _channels = /* @__PURE__ */ new Map();
5
+ function listAccountIds(cfg) {
6
+ return cfg?.channels?.agentvault?.dataDir ? ["default"] : [];
7
+ }
8
+ function resolveAccount(cfg, accountId) {
9
+ const av = cfg?.channels?.agentvault ?? {};
10
+ return {
11
+ accountId: accountId ?? "default",
12
+ dataDir: av.dataDir ?? "~/.openclaw/agentvault",
13
+ apiUrl: av.apiUrl ?? "https://api.agentvault.chat",
14
+ agentName: av.agentName ?? "OpenClaw Agent",
15
+ configured: Boolean(av.dataDir)
16
+ };
17
+ }
18
+ async function handleInbound(params) {
19
+ const { plaintext, metadata, channel, account, cfg } = params;
20
+ const core = _ocRuntime;
21
+ const route = core.channel.routing.resolveAgentRoute({
22
+ cfg,
23
+ channel: "agentvault",
24
+ accountId: account.accountId,
25
+ peer: { kind: "direct", id: "agentvault:owner" }
26
+ });
27
+ const storePath = core.channel.session.resolveStorePath(cfg?.session?.store, {
28
+ agentId: route.agentId
29
+ });
30
+ const envelopeOptions = core.channel.reply.resolveEnvelopeFormatOptions(cfg);
31
+ const previousTimestamp = core.channel.session.readSessionUpdatedAt({
32
+ storePath,
33
+ sessionKey: route.sessionKey
34
+ });
35
+ const body = core.channel.reply.formatAgentEnvelope({
36
+ channel: "AgentVault",
37
+ from: "Owner",
38
+ timestamp: new Date(metadata.timestamp).getTime(),
39
+ previousTimestamp,
40
+ envelope: envelopeOptions,
41
+ body: plaintext
42
+ });
43
+ const ctxPayload = core.channel.reply.finalizeInboundContext({
44
+ Body: body,
45
+ RawBody: plaintext,
46
+ CommandBody: plaintext,
47
+ From: "agentvault:owner",
48
+ To: `agentvault:agent:${account.accountId}`,
49
+ SessionKey: route.sessionKey,
50
+ AccountId: account.accountId,
51
+ ChatType: "direct",
52
+ ConversationLabel: "AgentVault",
53
+ SenderName: "Owner",
54
+ SenderId: "agentvault:owner",
55
+ Provider: "agentvault",
56
+ Surface: "agentvault",
57
+ MessageSid: metadata.messageId,
58
+ Timestamp: new Date(metadata.timestamp).getTime(),
59
+ OriginatingChannel: "agentvault",
60
+ OriginatingTo: `agentvault:agent:${account.accountId}`,
61
+ CommandAuthorized: true
62
+ });
63
+ await core.channel.session.recordInboundSession({
64
+ storePath,
65
+ sessionKey: ctxPayload.SessionKey ?? route.sessionKey,
66
+ ctx: ctxPayload,
67
+ onRecordError: (err) => {
68
+ core.error?.(`[AgentVault] session record failed: ${String(err)}`);
69
+ }
70
+ });
71
+ await core.channel.reply.dispatchReplyWithBufferedBlockDispatcher({
72
+ ctx: ctxPayload,
73
+ cfg,
74
+ dispatcherOptions: {
75
+ deliver: async (payload) => {
76
+ const text = (payload.text ?? "").trim();
77
+ if (text) await channel.send(text);
78
+ },
79
+ onError: (err, info) => {
80
+ core.error?.(`[AgentVault] ${info?.kind ?? "reply"} error: ${String(err)}`);
81
+ }
82
+ },
83
+ replyOptions: {}
84
+ });
85
+ }
86
+ var agentVaultPlugin = {
87
+ id: "agentvault",
88
+ meta: {
89
+ id: "agentvault",
90
+ label: "AgentVault",
91
+ selectionLabel: "AgentVault (E2E Encrypted)",
92
+ docsPath: "https://agentvault.chat/docs",
93
+ blurb: "Zero-knowledge, end-to-end encrypted messaging between owners and their AI agents.",
94
+ aliases: ["av", "agent-vault"]
95
+ },
96
+ capabilities: { chatTypes: ["direct"] },
97
+ config: { listAccountIds, resolveAccount },
98
+ gateway: {
99
+ startAccount: async (ctx) => {
100
+ const { account, cfg, log, abortSignal } = ctx;
101
+ if (!account.configured) {
102
+ throw new Error(
103
+ "AgentVault channel not configured. Run: npx @agentvault/secure-channel setup --token=av_tok_...\nThen restart OpenClaw."
104
+ );
105
+ }
106
+ const dataDir = resolve(account.dataDir.replace(/^~/, process.env.HOME ?? "~"));
107
+ log?.(`[AgentVault] starting (dataDir=${dataDir})`);
108
+ const { SecureChannel } = await import("./index.js");
109
+ const channel = new SecureChannel({
110
+ inviteToken: "",
111
+ dataDir,
112
+ apiUrl: account.apiUrl,
113
+ agentName: account.agentName,
114
+ onMessage: async (plaintext, metadata) => {
115
+ if (!_ocRuntime) {
116
+ log?.("[AgentVault] runtime not ready, dropping message");
117
+ return;
118
+ }
119
+ try {
120
+ await handleInbound({ plaintext, metadata, channel, account, cfg });
121
+ } catch (err) {
122
+ log?.(`[AgentVault] inbound error: ${String(err)}`);
123
+ }
124
+ },
125
+ onStateChange: (state) => log?.(`[AgentVault] \u2192 ${state}`)
126
+ });
127
+ _channels.set(account.accountId, channel);
128
+ abortSignal?.addEventListener("abort", () => _channels.delete(account.accountId));
129
+ await channel.start();
130
+ return {
131
+ stop: async () => {
132
+ await channel.stop();
133
+ _channels.delete(account.accountId);
134
+ }
135
+ };
136
+ }
137
+ },
138
+ outbound: {
139
+ deliveryMode: "direct",
140
+ sendText: async ({ text, accountId }) => {
141
+ const ch = _channels.get(accountId ?? "default");
142
+ if (!ch) return { ok: false, error: "AgentVault channel not connected" };
143
+ try {
144
+ await ch.send(text);
145
+ return { ok: true };
146
+ } catch (err) {
147
+ return { ok: false, error: String(err) };
148
+ }
149
+ }
150
+ }
151
+ };
152
+ var openclaw_entry_default = {
153
+ // Plugin id matches unscoped package name (@agentvault/secure-channel → secure-channel)
154
+ id: "secure-channel",
155
+ name: "AgentVault",
156
+ description: "End-to-end encrypted, zero-knowledge messaging between AI agent owners and their agents.",
157
+ register(api) {
158
+ _ocRuntime = api.runtime;
159
+ api.registerChannel({ plugin: agentVaultPlugin });
160
+ }
161
+ };
162
+ export {
163
+ openclaw_entry_default as default
164
+ };
165
+ //# sourceMappingURL=openclaw-entry.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/openclaw-entry.ts"],
4
+ "sourcesContent": ["/**\n * OpenClaw channel plugin entry point.\n *\n * Intentionally thin \u2014 no heavy imports (libsodium etc.) at module load time.\n * SecureChannel is dynamically imported inside gateway.startAccount (already async)\n * so libsodium's top-level await never runs during plugin registration.\n *\n * Loaded by OpenClaw via the `openclaw.extensions` field in package.json.\n */\n\nimport { resolve } from \"node:path\";\n\n// --- Runtime and active channels (set during register) ---\nlet _ocRuntime: any = null;\nconst _channels = new Map<string, any>();\n\n// --- Channel config helpers ---\n\nfunction listAccountIds(cfg: any): string[] {\n return cfg?.channels?.agentvault?.dataDir ? [\"default\"] : [];\n}\n\nfunction resolveAccount(cfg: any, accountId?: string) {\n const av = cfg?.channels?.agentvault ?? {};\n return {\n accountId: accountId ?? \"default\",\n dataDir: av.dataDir ?? \"~/.openclaw/agentvault\",\n apiUrl: av.apiUrl ?? \"https://api.agentvault.chat\",\n agentName: av.agentName ?? \"OpenClaw Agent\",\n configured: Boolean(av.dataDir),\n };\n}\n\n// --- Inbound message dispatch ---\n\nasync function handleInbound(params: {\n plaintext: string;\n metadata: any;\n channel: any;\n account: any;\n cfg: any;\n}): Promise<void> {\n const { plaintext, metadata, channel, account, cfg } = params;\n const core = _ocRuntime;\n\n const route = core.channel.routing.resolveAgentRoute({\n cfg,\n channel: \"agentvault\",\n accountId: account.accountId,\n peer: { kind: \"direct\", id: \"agentvault:owner\" },\n });\n\n const storePath = core.channel.session.resolveStorePath(cfg?.session?.store, {\n agentId: route.agentId,\n });\n\n const envelopeOptions = core.channel.reply.resolveEnvelopeFormatOptions(cfg);\n const previousTimestamp = core.channel.session.readSessionUpdatedAt({\n storePath,\n sessionKey: route.sessionKey,\n });\n\n const body = core.channel.reply.formatAgentEnvelope({\n channel: \"AgentVault\",\n from: \"Owner\",\n timestamp: new Date(metadata.timestamp).getTime(),\n previousTimestamp,\n envelope: envelopeOptions,\n body: plaintext,\n });\n\n const ctxPayload = core.channel.reply.finalizeInboundContext({\n Body: body,\n RawBody: plaintext,\n CommandBody: plaintext,\n From: \"agentvault:owner\",\n To: `agentvault:agent:${account.accountId}`,\n SessionKey: route.sessionKey,\n AccountId: account.accountId,\n ChatType: \"direct\",\n ConversationLabel: \"AgentVault\",\n SenderName: \"Owner\",\n SenderId: \"agentvault:owner\",\n Provider: \"agentvault\",\n Surface: \"agentvault\",\n MessageSid: metadata.messageId,\n Timestamp: new Date(metadata.timestamp).getTime(),\n OriginatingChannel: \"agentvault\",\n OriginatingTo: `agentvault:agent:${account.accountId}`,\n CommandAuthorized: true,\n });\n\n await core.channel.session.recordInboundSession({\n storePath,\n sessionKey: ctxPayload.SessionKey ?? route.sessionKey,\n ctx: ctxPayload,\n onRecordError: (err: Error) => {\n core.error?.(`[AgentVault] session record failed: ${String(err)}`);\n },\n });\n\n await core.channel.reply.dispatchReplyWithBufferedBlockDispatcher({\n ctx: ctxPayload,\n cfg,\n dispatcherOptions: {\n deliver: async (payload: { text?: string }) => {\n const text = (payload.text ?? \"\").trim();\n if (text) await channel.send(text);\n },\n onError: (err: Error, info?: { kind?: string }) => {\n core.error?.(`[AgentVault] ${info?.kind ?? \"reply\"} error: ${String(err)}`);\n },\n },\n replyOptions: {},\n });\n}\n\n// --- Channel plugin definition ---\n\nconst agentVaultPlugin = {\n id: \"agentvault\",\n meta: {\n id: \"agentvault\",\n label: \"AgentVault\",\n selectionLabel: \"AgentVault (E2E Encrypted)\",\n docsPath: \"https://agentvault.chat/docs\",\n blurb: \"Zero-knowledge, end-to-end encrypted messaging between owners and their AI agents.\",\n aliases: [\"av\", \"agent-vault\"],\n },\n capabilities: { chatTypes: [\"direct\"] },\n config: { listAccountIds, resolveAccount },\n\n gateway: {\n startAccount: async (ctx: any) => {\n const { account, cfg, log, abortSignal } = ctx;\n\n if (!account.configured) {\n throw new Error(\n \"AgentVault channel not configured. Run: npx @agentvault/secure-channel setup --token=av_tok_...\\nThen restart OpenClaw.\",\n );\n }\n\n const dataDir = resolve(account.dataDir.replace(/^~/, process.env.HOME ?? \"~\"));\n log?.(`[AgentVault] starting (dataDir=${dataDir})`);\n\n // Lazy import \u2014 defers libsodium initialization until channel actually starts\n const { SecureChannel } = await import(\"./index.js\");\n\n const channel = new SecureChannel({\n inviteToken: \"\",\n dataDir,\n apiUrl: account.apiUrl,\n agentName: account.agentName,\n onMessage: async (plaintext: string, metadata: any) => {\n if (!_ocRuntime) { log?.(\"[AgentVault] runtime not ready, dropping message\"); return; }\n try {\n await handleInbound({ plaintext, metadata, channel, account, cfg });\n } catch (err) {\n log?.(`[AgentVault] inbound error: ${String(err)}`);\n }\n },\n onStateChange: (state: string) => log?.(`[AgentVault] \u2192 ${state}`),\n });\n\n _channels.set(account.accountId, channel);\n abortSignal?.addEventListener(\"abort\", () => _channels.delete(account.accountId));\n await channel.start();\n\n return {\n stop: async () => { await channel.stop(); _channels.delete(account.accountId); },\n };\n },\n },\n\n outbound: {\n deliveryMode: \"direct\" as const,\n sendText: async ({ text, accountId }: { text: string; accountId?: string }) => {\n const ch = _channels.get(accountId ?? \"default\");\n if (!ch) return { ok: false, error: \"AgentVault channel not connected\" };\n try { await ch.send(text); return { ok: true }; }\n catch (err) { return { ok: false, error: String(err) }; }\n },\n },\n};\n\n// --- Plugin export ---\n\nexport default {\n // Plugin id matches unscoped package name (@agentvault/secure-channel \u2192 secure-channel)\n id: \"secure-channel\",\n name: \"AgentVault\",\n description: \"End-to-end encrypted, zero-knowledge messaging between AI agent owners and their agents.\",\n register(api: any) {\n _ocRuntime = api.runtime;\n api.registerChannel({ plugin: agentVaultPlugin });\n },\n};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,wBAAsB,eAAe,CAAC,OAAO,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyHhB"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,wBAAsB,eAAe,CAAC,OAAO,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoIhB"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "id": "agentvault",
2
+ "id": "secure-channel",
3
3
  "name": "AgentVault",
4
4
  "description": "End-to-end encrypted, zero-knowledge messaging between AI agent owners and their agents.",
5
5
  "version": "0.5.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentvault/secure-channel",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",