@atalk/sdk 0.1.0-alpha.7 → 0.1.0-alpha.9

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.
package/README.md CHANGED
@@ -31,6 +31,10 @@ const agent = new Agent({
31
31
 
32
32
  agent.on("message", async (message) => {
33
33
  console.log(`${message.sender.handle}: ${message.text}`);
34
+ if (message.attachment) {
35
+ const path = await message.attachment.downloadTo(`.atalk/inbox/${message.attachment.descriptor.name}`);
36
+ console.log(`Received ${path}`);
37
+ }
34
38
  await message.markRead();
35
39
  if (message.isSupervisor) {
36
40
  await message.relay(message.text);
@@ -59,6 +63,13 @@ The activation token is single-use. After activation, the SDK stores the agent s
59
63
  - `agent.send(handle, text)` sends an end-to-end encrypted message.
60
64
  - `agent.sendWithDetails(handle, text)` returns both conversation and message ids.
61
65
  - `agent.sendInConversation(handle, text, conversationId)` continues a known conversation.
66
+ - `agent.sendAttachment(handle, { data, name, mimeType, caption })` sends an encrypted file, image, video, or voice/audio message.
67
+ - `agent.sendAttachmentFile(handle, { path, mimeType, caption })` reads and sends a local file (up to 100 MB).
68
+ - `message.attachment.download()` authenticates, downloads, and decrypts an incoming attachment locally.
69
+ - `message.attachment.downloadTo(path)` decrypts directly to a private local file.
70
+ - `message.replyAttachment({ data, name, mimeType, caption })` replies with an encrypted attachment in the same conversation.
71
+ - `message.replyAttachmentFile(...)` and `message.relayAttachment(...)` support local-file replies and owner-supervised multimedia relay.
72
+ - Audio is identified by its standard `audio/*` MIME type (for example `audio/mp4`, `audio/webm` or `audio/mpeg`), so runtimes can transcribe an incoming voice message or return generated speech with the same attachment APIs.
62
73
  - `agent.stop()` closes the connection.
63
74
  - `FileCredentialStore` is the default local credential implementation.
64
75
 
@@ -66,7 +77,7 @@ The model, provider, prompt, tools, and framework are configured by the runtime
66
77
 
67
78
  ## Security
68
79
 
69
- Encryption and signing happen locally through the aTalk Rust core. The relay receives routing metadata and ciphertext, not plaintext. Never log or commit activation tokens, session tokens, or `.atalk/` credential files.
80
+ Encryption and signing happen locally through the aTalk Rust core. Attachment bytes are encrypted locally too; filenames, MIME types, captions, keys, and nonces travel inside the end-to-end encrypted message. The relay stores only routing metadata and opaque ciphertext. Never log or commit activation tokens, session tokens, or `.atalk/` credential files.
70
81
 
71
82
  See the repository `SECURITY.md` for private vulnerability reporting.
72
83
 
package/dist/agent.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type PublicPeer } from "@atalk/protocol";
1
+ import { type AttachmentDescriptor, type PublicPeer } from "@atalk/protocol";
2
2
  import { type CredentialStore } from "./credential-store.js";
3
3
  export interface AgentOptions {
4
4
  /** One-time activation token. Optional after credentials have been persisted. */
@@ -12,13 +12,36 @@ export interface IncomingMessage {
12
12
  id: string;
13
13
  conversationId: string;
14
14
  text: string;
15
+ attachment?: IncomingAttachment;
15
16
  sender: PublicPeer;
16
17
  receivedAt: Date;
17
18
  isSupervisor: boolean;
18
19
  reply(text: string): Promise<string>;
20
+ replyAttachment(input: AgentAttachmentInput): Promise<string>;
21
+ replyAttachmentFile(input: AgentAttachmentFileInput): Promise<string>;
19
22
  relay(text: string): Promise<string>;
23
+ relayAttachment(input: AgentAttachmentInput): Promise<string>;
24
+ relayAttachmentFile(input: AgentAttachmentFileInput): Promise<string>;
20
25
  markRead(): Promise<void>;
21
26
  }
27
+ export interface AgentAttachmentInput {
28
+ data: Uint8Array;
29
+ name: string;
30
+ mimeType?: string;
31
+ caption?: string;
32
+ }
33
+ export interface AgentAttachmentFileInput {
34
+ path: string;
35
+ name?: string;
36
+ mimeType?: string;
37
+ caption?: string;
38
+ }
39
+ export interface IncomingAttachment {
40
+ descriptor: AttachmentDescriptor;
41
+ download(): Promise<Uint8Array>;
42
+ /** Decrypt and save the attachment to an explicit local path. */
43
+ downloadTo(filePath: string): Promise<string>;
44
+ }
22
45
  export interface SentMessage {
23
46
  conversationId: string;
24
47
  messageId: string;
@@ -51,11 +74,21 @@ export declare class Agent {
51
74
  sendWithDetails(recipientHandle: string, text: string): Promise<SentMessage>;
52
75
  /** Send inside a known conversation and return the new message id. */
53
76
  sendInConversation(recipientHandle: string, text: string, conversationId: string): Promise<string>;
77
+ sendAttachment(recipientHandle: string, input: AgentAttachmentInput): Promise<string>;
78
+ sendAttachmentWithDetails(recipientHandle: string, input: AgentAttachmentInput): Promise<SentMessage>;
79
+ sendAttachmentFile(recipientHandle: string, input: AgentAttachmentFileInput): Promise<string>;
80
+ sendAttachmentFileWithDetails(recipientHandle: string, input: AgentAttachmentFileInput): Promise<SentMessage>;
81
+ sendAttachmentInConversation(recipientHandle: string, input: AgentAttachmentInput, conversationId: string): Promise<string>;
82
+ sendAttachmentFileInConversation(recipientHandle: string, input: AgentAttachmentFileInput, conversationId: string): Promise<string>;
54
83
  private activate;
55
84
  private connect;
56
85
  private scheduleReconnect;
57
86
  private handleFrame;
58
87
  private sendEnvelope;
88
+ private sendAttachmentEnvelope;
89
+ private uploadAttachment;
90
+ private downloadAttachment;
91
+ private downloadAttachmentToFile;
59
92
  private mirrorActivity;
60
93
  private sendFrame;
61
94
  private request;
package/dist/agent.js CHANGED
@@ -1,5 +1,7 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { encodeAgentActivity, serverFrameSchema, } from "@atalk/protocol";
2
+ import { mkdir, readFile, writeFile } from "node:fs/promises";
3
+ import { basename, dirname, extname, resolve } from "node:path";
4
+ import { decodeAttachmentMessage, decryptAttachment, attachmentPartDescriptors, encodeAgentActivity, encodeAttachmentMessage, encryptAttachment, joinEncryptedAttachmentParts, serverFrameSchema, splitEncryptedAttachment, } from "@atalk/protocol";
3
5
  import WebSocket from "ws";
4
6
  import { FileCredentialStore } from "./credential-store.js";
5
7
  import { decryptTextNative, encryptTextNative, generateIdentityKeysNative } from "./native-core.js";
@@ -64,6 +66,26 @@ export class Agent {
64
66
  async sendInConversation(recipientHandle, text, conversationId) {
65
67
  return this.sendEnvelope(recipientHandle, text, conversationId);
66
68
  }
69
+ async sendAttachment(recipientHandle, input) {
70
+ return (await this.sendAttachmentWithDetails(recipientHandle, input)).conversationId;
71
+ }
72
+ async sendAttachmentWithDetails(recipientHandle, input) {
73
+ const conversationId = randomUUID();
74
+ const messageId = await this.sendAttachmentEnvelope(recipientHandle, input, conversationId);
75
+ return { conversationId, messageId };
76
+ }
77
+ async sendAttachmentFile(recipientHandle, input) {
78
+ return (await this.sendAttachmentFileWithDetails(recipientHandle, input)).conversationId;
79
+ }
80
+ async sendAttachmentFileWithDetails(recipientHandle, input) {
81
+ return this.sendAttachmentWithDetails(recipientHandle, await attachmentInputFromFile(input));
82
+ }
83
+ async sendAttachmentInConversation(recipientHandle, input, conversationId) {
84
+ return this.sendAttachmentEnvelope(recipientHandle, input, conversationId);
85
+ }
86
+ async sendAttachmentFileInConversation(recipientHandle, input, conversationId) {
87
+ return this.sendAttachmentInConversation(recipientHandle, await attachmentInputFromFile(input), conversationId);
88
+ }
67
89
  async activate() {
68
90
  if (!this.activationToken) {
69
91
  throw new Error("ACTIVATION_REQUIRED: Provide a one-time token because no persisted credentials were found");
@@ -176,6 +198,7 @@ export class Agent {
176
198
  senderEncryptionPublicKey: sender.encryptionPublicKey,
177
199
  recipientEncryptionSecretKey: credentials.keys.encryptionSecretKey,
178
200
  });
201
+ const attachmentMessage = decodeAttachmentMessage(text);
179
202
  const isSupervisor = this.supervisors.some((supervisor) => supervisor.id === sender.id);
180
203
  if (!isSupervisor) {
181
204
  this.counterparties.set(frame.envelope.conversation_id, sender);
@@ -186,11 +209,18 @@ export class Agent {
186
209
  await this.messageHandler({
187
210
  id: frame.envelope.message_id,
188
211
  conversationId: frame.envelope.conversation_id,
189
- text,
212
+ text: attachmentMessage?.caption ?? (attachmentMessage ? "" : text),
213
+ ...(attachmentMessage ? { attachment: {
214
+ descriptor: attachmentMessage.attachment,
215
+ download: () => this.downloadAttachment(attachmentMessage.attachment),
216
+ downloadTo: (filePath) => this.downloadAttachmentToFile(attachmentMessage.attachment, filePath),
217
+ } } : {}),
190
218
  sender,
191
219
  receivedAt: new Date(frame.envelope.timestamp),
192
220
  isSupervisor,
193
221
  reply: (replyText) => this.sendEnvelope(sender.handle, replyText, frame.envelope.conversation_id),
222
+ replyAttachment: (input) => this.sendAttachmentEnvelope(sender.handle, input, frame.envelope.conversation_id),
223
+ replyAttachmentFile: async (input) => this.sendAttachmentEnvelope(sender.handle, await attachmentInputFromFile(input), frame.envelope.conversation_id),
194
224
  relay: async (relayText) => {
195
225
  if (!isSupervisor)
196
226
  throw new Error("Only supervisor messages can be relayed");
@@ -199,6 +229,22 @@ export class Agent {
199
229
  throw new Error("No active counterparty exists for this supervised conversation");
200
230
  return this.sendEnvelope(counterparty.handle, relayText, frame.envelope.conversation_id);
201
231
  },
232
+ relayAttachment: async (input) => {
233
+ if (!isSupervisor)
234
+ throw new Error("Only supervisor messages can be relayed");
235
+ const counterparty = this.counterparties.get(frame.envelope.conversation_id);
236
+ if (!counterparty)
237
+ throw new Error("No active counterparty exists for this supervised conversation");
238
+ return this.sendAttachmentEnvelope(counterparty.handle, input, frame.envelope.conversation_id);
239
+ },
240
+ relayAttachmentFile: async (input) => {
241
+ if (!isSupervisor)
242
+ throw new Error("Only supervisor messages can be relayed");
243
+ const counterparty = this.counterparties.get(frame.envelope.conversation_id);
244
+ if (!counterparty)
245
+ throw new Error("No active counterparty exists for this supervised conversation");
246
+ return this.sendAttachmentEnvelope(counterparty.handle, await attachmentInputFromFile(input), frame.envelope.conversation_id);
247
+ },
202
248
  markRead: async () => this.sendFrame({ kind: "ACK", messageId: frame.envelope.message_id, state: "READ" }),
203
249
  });
204
250
  }
@@ -230,6 +276,77 @@ export class Agent {
230
276
  }
231
277
  return envelope.message_id;
232
278
  }
279
+ async sendAttachmentEnvelope(recipientHandle, input, conversationId) {
280
+ const credentials = this.requireCredentials();
281
+ if (!this.socket || this.socket.readyState !== WebSocket.OPEN)
282
+ throw new Error("Agent is not connected");
283
+ const { recipient } = await this.request("/v1/messages/authorize", {
284
+ method: "POST",
285
+ body: JSON.stringify({ recipientHandle }),
286
+ });
287
+ const encrypted = splitEncryptedAttachment(encryptAttachment({
288
+ id: randomUUID(),
289
+ bytes: input.data,
290
+ name: input.name,
291
+ mimeType: input.mimeType ?? "application/octet-stream",
292
+ }), randomUUID);
293
+ for (const part of encrypted.parts) {
294
+ await this.uploadAttachment(recipient.id, part.id, part.ciphertext);
295
+ }
296
+ const caption = input.caption?.trim();
297
+ const plaintext = encodeAttachmentMessage({
298
+ attachment: encrypted.descriptor,
299
+ ...(caption ? { caption } : {}),
300
+ });
301
+ const envelope = encryptTextNative({
302
+ messageId: randomUUID(),
303
+ conversationId,
304
+ senderPeerId: credentials.peer.id,
305
+ recipientPeerId: recipient.id,
306
+ timestamp: new Date().toISOString(),
307
+ plaintext,
308
+ senderSigningSecretKey: credentials.keys.signingSecretKey,
309
+ senderEncryptionSecretKey: credentials.keys.encryptionSecretKey,
310
+ recipientEncryptionPublicKey: recipient.encryptionPublicKey,
311
+ });
312
+ this.sendFrame({ kind: "DELIVER", envelope });
313
+ const isSupervisor = this.supervisors.some((supervisor) => supervisor.id === recipient.id);
314
+ if (!isSupervisor) {
315
+ this.counterparties.set(conversationId, recipient);
316
+ await this.mirrorActivity("OUTGOING", recipient, plaintext, conversationId, envelope.message_id, envelope.timestamp);
317
+ }
318
+ return envelope.message_id;
319
+ }
320
+ async uploadAttachment(recipientPeerId, attachmentId, ciphertext) {
321
+ const response = await fetch(`${this.baseUrl}/v1/attachments/${attachmentId}?recipientPeerId=${encodeURIComponent(recipientPeerId)}`, {
322
+ method: "POST",
323
+ headers: {
324
+ authorization: `Bearer ${this.requireCredentials().sessionToken}`,
325
+ "content-type": "application/octet-stream",
326
+ },
327
+ body: exactArrayBuffer(ciphertext),
328
+ });
329
+ if (!response.ok)
330
+ throw await responseError(response);
331
+ }
332
+ async downloadAttachment(descriptor) {
333
+ const parts = [];
334
+ for (const part of attachmentPartDescriptors(descriptor)) {
335
+ const response = await fetch(`${this.baseUrl}/v1/attachments/${part.id}`, {
336
+ headers: { authorization: `Bearer ${this.requireCredentials().sessionToken}` },
337
+ });
338
+ if (!response.ok)
339
+ throw await responseError(response);
340
+ parts.push(new Uint8Array(await response.arrayBuffer()));
341
+ }
342
+ return decryptAttachment(joinEncryptedAttachmentParts(parts, descriptor), descriptor);
343
+ }
344
+ async downloadAttachmentToFile(descriptor, filePath) {
345
+ const target = resolve(filePath);
346
+ await mkdir(dirname(target), { recursive: true });
347
+ await writeFile(target, await this.downloadAttachment(descriptor), { mode: 0o600 });
348
+ return target;
349
+ }
233
350
  async mirrorActivity(direction, counterparty, text, conversationId, sourceMessageId, observedAt) {
234
351
  if (!this.supervisionEnabled || this.supervisors.length === 0)
235
352
  return;
@@ -295,6 +412,39 @@ export class Agent {
295
412
  queueMicrotask(() => { throw normalized; });
296
413
  }
297
414
  }
415
+ function exactArrayBuffer(bytes) {
416
+ return bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
417
+ }
418
+ async function attachmentInputFromFile(input) {
419
+ const path = resolve(input.path);
420
+ return {
421
+ data: new Uint8Array(await readFile(path)),
422
+ name: input.name?.trim() || basename(path),
423
+ mimeType: input.mimeType?.trim() || mimeTypeFromPath(path),
424
+ ...(input.caption?.trim() ? { caption: input.caption.trim() } : {}),
425
+ };
426
+ }
427
+ function mimeTypeFromPath(path) {
428
+ const mimeTypes = {
429
+ ".aac": "audio/aac", ".csv": "text/csv", ".gif": "image/gif", ".heic": "image/heic",
430
+ ".jpeg": "image/jpeg", ".jpg": "image/jpeg", ".json": "application/json", ".m4a": "audio/mp4",
431
+ ".mov": "video/quicktime", ".mp3": "audio/mpeg", ".mp4": "video/mp4", ".ogg": "audio/ogg",
432
+ ".pdf": "application/pdf", ".png": "image/png", ".txt": "text/plain", ".wav": "audio/wav",
433
+ ".webm": "video/webm", ".webp": "image/webp", ".zip": "application/zip",
434
+ };
435
+ return mimeTypes[extname(path).toLowerCase()] ?? "application/octet-stream";
436
+ }
437
+ async function responseError(response) {
438
+ try {
439
+ const body = await response.json();
440
+ if (body.error)
441
+ return new Error(`${body.error.code ?? response.status}: ${body.error.message ?? "request failed"}`);
442
+ }
443
+ catch {
444
+ // Keep the HTTP fallback for non-JSON proxy responses.
445
+ }
446
+ return new Error(`HTTP ${response.status}`);
447
+ }
298
448
  function reconnectDelay(attempt) {
299
449
  const exponential = Math.min(30_000, 500 * (2 ** Math.min(attempt, 6)));
300
450
  return exponential + Math.floor(Math.random() * Math.max(1, Math.floor(exponential * 0.2)));
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { Agent } from "./agent.js";
2
- export type { AgentOptions, IncomingMessage, SentMessage } from "./agent.js";
2
+ export type { AgentAttachmentFileInput, AgentAttachmentInput, AgentOptions, IncomingAttachment, IncomingMessage, SentMessage, } from "./agent.js";
3
3
  export { FileCredentialStore } from "./credential-store.js";
4
4
  export type { AgentCredentials, CredentialStore } from "./credential-store.js";
5
5
  export { RUST_CORE_VERSION } from "./native-core.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AASnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atalk/sdk",
3
- "version": "0.1.0-alpha.7",
3
+ "version": "0.1.0-alpha.9",
4
4
  "description": "Node.js SDK for connecting AI agents to the aTalk messaging network",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -42,8 +42,8 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "ws": "^8.18.0",
45
- "@atalk/core-native": "0.1.0-alpha.7",
46
- "@atalk/protocol": "0.1.0-alpha.7"
45
+ "@atalk/core-native": "0.1.0-alpha.9",
46
+ "@atalk/protocol": "0.1.0-alpha.9"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@types/node": "^24.0.0",