aamp-cli 0.1.0 → 0.1.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.
package/README.md CHANGED
@@ -5,8 +5,9 @@ Command-line mailbox client for AAMP, built on top of [aamp-sdk](../sdk/README.m
5
5
  ## What it does
6
6
 
7
7
  - Connect an arbitrary mailbox identity to AAMP from the terminal
8
- - Listen for `task.dispatch`, `task.help`, `task.result`, `task.ack`, and human replies
9
- - Send `task.dispatch`, `task.help`, and `task.result`
8
+ - Listen for `task.dispatch`, `task.cancel`, `task.help_needed`, `task.result`, `task.ack`, `card.query`, `card.response`, and human replies
9
+ - Send `task.dispatch`, `task.cancel`, `task.help_needed`, `task.result`, `card.query`, and `card.response`
10
+ - Manage an AAMP agent directory profile and search cooperating agents
10
11
  - Store reusable mailbox profiles under `~/.aamp-cli/profiles/`
11
12
 
12
13
  ## Install
@@ -18,19 +19,27 @@ npm install -g aamp-cli
18
19
  ## Quick start
19
20
 
20
21
  ```bash
22
+ aamp-cli register
21
23
  aamp-cli login
22
24
  aamp-cli listen
23
25
  ```
24
26
 
27
+ `register` will:
28
+
29
+ - discover the AAMP service via `/.well-known/aamp`
30
+ - create a new mailbox identity
31
+ - exchange the one-time registration code for credentials
32
+ - save the resulting profile under `~/.aamp-cli/profiles/`
33
+
25
34
  `login` will prompt for:
26
35
 
27
36
  - mailbox email
28
37
  - mailbox password
29
38
 
30
- JMAP base URL and SMTP host are derived automatically from the mailbox domain.
39
+ AAMP base URL and SMTP host are derived automatically from the mailbox domain.
31
40
  For example, `agent@meshmail.ai` defaults to:
32
41
 
33
- - `jmapUrl = https://meshmail.ai`
42
+ - `baseUrl = https://meshmail.ai`
34
43
  - `smtpHost = meshmail.ai`
35
44
  - `smtpPort = 587`
36
45
 
@@ -44,11 +53,18 @@ The profile is stored at:
44
53
 
45
54
  ```bash
46
55
  aamp-cli login [--profile NAME]
56
+ aamp-cli register [--profile NAME] [--host URL] [--slug NAME]
47
57
  aamp-cli init [--profile NAME]
48
58
  aamp-cli listen [--profile NAME]
49
59
  aamp-cli status [--profile NAME]
50
60
  aamp-cli inbox [--profile NAME] [--limit N]
51
- aamp-cli dispatch --to EMAIL --title TEXT [--body TEXT] [--timeout SECS] [--context-link URL]...
61
+ aamp-cli directory-list [--profile NAME] [--include-self] [--limit N]
62
+ aamp-cli directory-search --query TEXT [--profile NAME] [--include-self] [--limit N]
63
+ aamp-cli directory-update [--profile NAME] [--summary TEXT] [--card-text TEXT] [--card-file PATH]
64
+ aamp-cli dispatch --to EMAIL --title TEXT [--body TEXT] [--priority urgent|high|normal] [--expires-at ISO] [--context-link URL]...
65
+ aamp-cli cancel --to EMAIL --task-id ID [--body TEXT]
52
66
  aamp-cli result --to EMAIL --task-id ID --status completed|rejected [--output TEXT] [--error TEXT]
53
67
  aamp-cli help --to EMAIL --task-id ID --question TEXT [--reason TEXT] [--option TEXT]...
68
+ aamp-cli card-query --to EMAIL [--body TEXT]
69
+ aamp-cli card-response --to EMAIL --task-id ID --summary TEXT [--body TEXT] [--card-file PATH]
54
70
  ```
package/dist/index.d.ts CHANGED
@@ -1,2 +1,45 @@
1
1
  #!/usr/bin/env node
2
+ import { AampClient, type ReceivedAttachment } from 'aamp-sdk';
3
+ type CommandName = 'init' | 'login' | 'register' | 'listen' | 'dispatch' | 'result' | 'help' | 'cancel' | 'status' | 'inbox' | 'directory-list' | 'directory-search' | 'directory-update' | 'card-query' | 'card-response' | 'unknown';
4
+ interface ParsedArgs {
5
+ command: CommandName;
6
+ positionals: string[];
7
+ values: Record<string, string[]>;
8
+ booleans: Set<string>;
9
+ }
10
+ export declare function deriveServiceDefaults(email: string): {
11
+ baseUrl: string;
12
+ smtpHost: string;
13
+ };
14
+ export declare function parseArgs(argv: string[]): ParsedArgs;
15
+ export declare function runInit(args: ParsedArgs): Promise<void>;
16
+ export declare function runLogin(args: ParsedArgs): Promise<void>;
17
+ export declare function runRegister(args: ParsedArgs): Promise<void>;
18
+ export declare function printDispatch(task: {
19
+ taskId: string;
20
+ title: string;
21
+ from: string;
22
+ priority?: 'urgent' | 'high' | 'normal';
23
+ expiresAt?: string;
24
+ bodyText?: string;
25
+ contextLinks?: string[];
26
+ attachments?: ReceivedAttachment[];
27
+ dispatchContext?: Record<string, string>;
28
+ }, logger?: Pick<typeof console, 'log'>): void;
29
+ type ListenClient = Pick<AampClient, 'on' | 'email' | 'isUsingPollingFallback' | 'connect' | 'disconnect'>;
30
+ type ListenLogger = Pick<typeof console, 'log' | 'error'>;
31
+ export declare function attachListenHandlers(client: ListenClient, logger?: ListenLogger): void;
32
+ export declare function runListen(args: ParsedArgs): Promise<void>;
33
+ export declare function runStatus(args: ParsedArgs): Promise<void>;
34
+ export declare function runInbox(args: ParsedArgs): Promise<void>;
35
+ export declare function runDispatch(args: ParsedArgs): Promise<void>;
36
+ export declare function runResult(args: ParsedArgs): Promise<void>;
37
+ export declare function runHelp(args: ParsedArgs): Promise<void>;
38
+ export declare function runCancel(args: ParsedArgs): Promise<void>;
39
+ export declare function runDirectoryList(args: ParsedArgs): Promise<void>;
40
+ export declare function runDirectorySearch(args: ParsedArgs): Promise<void>;
41
+ export declare function runDirectoryUpdate(args: ParsedArgs): Promise<void>;
42
+ export declare function runCardQuery(args: ParsedArgs): Promise<void>;
43
+ export declare function runCardResponse(args: ParsedArgs): Promise<void>;
44
+ export declare function main(): Promise<void>;
2
45
  export {};
package/dist/index.js CHANGED
@@ -4,17 +4,18 @@ import { existsSync } from 'node:fs';
4
4
  import os from 'node:os';
5
5
  import path from 'node:path';
6
6
  import readline from 'node:readline/promises';
7
+ import { pathToFileURL } from 'node:url';
7
8
  import { stdin as input, stdout as output } from 'node:process';
8
9
  import { AampClient } from 'aamp-sdk';
9
10
  const DEFAULT_PROFILE = 'default';
10
- const DEFAULT_JMAP_URL = 'https://meshmail.ai';
11
- function deriveServiceDefaults(email) {
11
+ const DEFAULT_BASE_URL = 'https://meshmail.ai';
12
+ export function deriveServiceDefaults(email) {
12
13
  const domain = email.split('@')[1]?.trim();
13
14
  if (!domain) {
14
- return { jmapUrl: DEFAULT_JMAP_URL, smtpHost: new URL(DEFAULT_JMAP_URL).hostname };
15
+ return { baseUrl: DEFAULT_BASE_URL, smtpHost: new URL(DEFAULT_BASE_URL).hostname };
15
16
  }
16
17
  return {
17
- jmapUrl: `https://${domain}`,
18
+ baseUrl: `https://${domain}`,
18
19
  smtpHost: domain,
19
20
  };
20
21
  }
@@ -23,23 +24,34 @@ function printUsage() {
23
24
 
24
25
  Usage:
25
26
  aamp-cli login [--profile NAME]
27
+ aamp-cli register [--profile NAME] [--host URL] [--slug NAME]
26
28
  aamp-cli init [--profile NAME]
27
29
  aamp-cli listen [--profile NAME]
28
30
  aamp-cli status [--profile NAME]
29
31
  aamp-cli inbox [--profile NAME] [--limit N]
30
- aamp-cli dispatch --to EMAIL --title TEXT [--body TEXT] [--timeout SECS] [--context-link URL]...
32
+ aamp-cli directory-list [--profile NAME] [--include-self] [--limit N]
33
+ aamp-cli directory-search --query TEXT [--profile NAME] [--include-self] [--limit N]
34
+ aamp-cli directory-update [--profile NAME] [--summary TEXT] [--card-text TEXT] [--card-file PATH]
35
+ aamp-cli dispatch --to EMAIL --title TEXT [--body TEXT] [--priority urgent|high|normal] [--expires-at ISO] [--context-link URL]...
31
36
  aamp-cli result --to EMAIL --task-id ID --status completed|rejected [--output TEXT] [--error TEXT]
32
37
  aamp-cli help --to EMAIL --task-id ID --question TEXT [--reason TEXT] [--option TEXT]...
38
+ aamp-cli cancel --to EMAIL --task-id ID [--body TEXT]
39
+ aamp-cli card-query --to EMAIL [--body TEXT]
40
+ aamp-cli card-response --to EMAIL --task-id ID --summary TEXT [--body TEXT] [--card-file PATH]
33
41
 
34
42
  Examples:
35
43
  aamp-cli login
44
+ aamp-cli register --host https://meshmail.ai --slug openclaw-agent
36
45
  aamp-cli listen --profile default
37
- aamp-cli dispatch --to agent@meshmail.ai --title "Review this patch" --body "Please review PR #42"
46
+ aamp-cli directory-search --query reviewer
47
+ aamp-cli dispatch --to agent@meshmail.ai --title "Review this patch" --priority high --body "Please review PR #42"
38
48
  aamp-cli result --to meego@meshmail.ai --task-id 123 --status completed --output "Done"
39
49
  aamp-cli help --to meego@meshmail.ai --task-id 123 --question "Which environment?" --option staging --option production
50
+ aamp-cli cancel --to agent@meshmail.ai --task-id 123 --body "No longer needed"
51
+ aamp-cli card-query --to agent@meshmail.ai --query "What services do you provide?"
40
52
  `);
41
53
  }
42
- function parseArgs(argv) {
54
+ export function parseArgs(argv) {
43
55
  const [rawCommand, ...rest] = argv;
44
56
  const command = (rawCommand ?? 'unknown');
45
57
  const positionals = [];
@@ -97,17 +109,19 @@ async function saveProfile(profile, data) {
97
109
  await writeFile(file, `${JSON.stringify(data, null, 2)}\n`, 'utf8');
98
110
  return file;
99
111
  }
100
- function resolveSmtpHost(jmapUrl, explicit) {
101
- return explicit || new URL(jmapUrl).hostname;
112
+ function resolveBaseUrl(profile) {
113
+ return profile.baseUrl || deriveServiceDefaults(profile.email).baseUrl;
114
+ }
115
+ function resolveSmtpHost(baseUrl, explicit) {
116
+ return explicit || new URL(baseUrl).hostname;
102
117
  }
103
118
  function createClient(profile) {
104
- return new AampClient({
119
+ const baseUrl = resolveBaseUrl(profile);
120
+ return AampClient.fromMailboxIdentity({
105
121
  email: profile.email,
106
- jmapToken: profile.jmapToken,
107
- jmapUrl: profile.jmapUrl,
108
- smtpHost: resolveSmtpHost(profile.jmapUrl, profile.smtpHost),
109
- smtpPort: profile.smtpPort ?? 587,
110
122
  smtpPassword: profile.smtpPassword,
123
+ baseUrl,
124
+ smtpPort: profile.smtpPort ?? 587,
111
125
  rejectUnauthorized: profile.rejectUnauthorized,
112
126
  });
113
127
  }
@@ -125,69 +139,96 @@ async function prompt(question, defaultValue = '') {
125
139
  rl.close();
126
140
  }
127
141
  }
128
- async function runInit(args) {
142
+ export async function runInit(args) {
129
143
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
130
144
  const existingFile = getProfilePath(profile);
131
145
  const existing = existsSync(existingFile) ? await loadProfile(profile) : null;
132
146
  const email = firstArg(args, 'email') ?? await prompt('Mailbox email', existing?.email ?? '');
133
147
  const smtpPassword = firstArg(args, 'password') ?? firstArg(args, 'smtp-password') ?? await prompt('Mailbox password', existing?.smtpPassword ?? '');
134
- const jmapToken = Buffer.from(`${email}:${smtpPassword}`).toString('base64');
135
148
  const inferred = deriveServiceDefaults(email);
136
- const jmapUrl = firstArg(args, 'jmap-url') ?? existing?.jmapUrl ?? inferred.jmapUrl;
149
+ const baseUrl = firstArg(args, 'base-url') ?? existing?.baseUrl ?? inferred.baseUrl;
137
150
  const smtpHost = firstArg(args, 'smtp-host') ?? existing?.smtpHost ?? inferred.smtpHost;
138
151
  const smtpPort = Number(firstArg(args, 'smtp-port') ?? String(existing?.smtpPort ?? 587));
139
152
  const rejectUnauthorized = (firstArg(args, 'reject-unauthorized') ?? String(existing?.rejectUnauthorized ?? true)) !== 'false';
140
153
  const file = await saveProfile(profile, {
141
154
  email,
142
- jmapToken,
143
155
  smtpPassword,
144
- jmapUrl,
156
+ baseUrl,
145
157
  smtpHost,
146
158
  smtpPort,
147
159
  rejectUnauthorized,
148
160
  });
149
161
  console.log(`Saved profile "${profile}" to ${file}`);
150
- console.log(`Derived JMAP URL: ${jmapUrl}`);
162
+ console.log(`Derived base URL: ${baseUrl}`);
151
163
  console.log(`Derived SMTP host: ${smtpHost}:${smtpPort}`);
152
164
  }
153
- async function runLogin(args) {
165
+ export async function runLogin(args) {
154
166
  await runInit(args);
155
167
  }
156
- function printDispatch(task) {
157
- console.log(`\n[AAMP] <- task.dispatch ${task.taskId}`);
158
- console.log(` from: ${task.from}`);
159
- console.log(` title: ${task.title}`);
160
- if (task.timeoutSecs)
161
- console.log(` timeout: ${task.timeoutSecs}s`);
168
+ export async function runRegister(args) {
169
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
170
+ const host = firstArg(args, 'host') ?? await prompt('AAMP host', DEFAULT_BASE_URL);
171
+ const slugInput = firstArg(args, 'slug') ?? await prompt('Mailbox slug', 'agent');
172
+ const slug = slugInput.toLowerCase().replace(/[\s_]+/g, '-').replace(/[^a-z0-9-]/g, '');
173
+ if (slug.length < 2) {
174
+ throw new Error('Mailbox slug must be at least 2 characters');
175
+ }
176
+ const identity = await AampClient.registerMailbox({
177
+ aampHost: host,
178
+ slug,
179
+ description: `Registered via aamp-cli (${profile})`,
180
+ });
181
+ const inferred = deriveServiceDefaults(identity.email);
182
+ const file = await saveProfile(profile, {
183
+ email: identity.email,
184
+ smtpPassword: identity.smtpPassword,
185
+ baseUrl: identity.baseUrl,
186
+ smtpHost: inferred.smtpHost,
187
+ smtpPort: 587,
188
+ rejectUnauthorized: true,
189
+ });
190
+ console.log(JSON.stringify({
191
+ profile,
192
+ email: identity.email,
193
+ baseUrl: identity.baseUrl,
194
+ mailboxToken: identity.mailboxToken,
195
+ savedTo: file,
196
+ }, null, 2));
197
+ }
198
+ export function printDispatch(task, logger = console) {
199
+ logger.log(`\n[AAMP] <- task.dispatch ${task.taskId}`);
200
+ logger.log(` from: ${task.from}`);
201
+ logger.log(` title: ${task.title}`);
202
+ logger.log(` priority: ${task.priority}`);
203
+ if (task.expiresAt)
204
+ logger.log(` expiresAt: ${task.expiresAt}`);
162
205
  if (task.contextLinks?.length)
163
- console.log(` contextLinks: ${task.contextLinks.join(', ')}`);
206
+ logger.log(` contextLinks: ${task.contextLinks.join(', ')}`);
164
207
  if (task.dispatchContext && Object.keys(task.dispatchContext).length) {
165
- console.log(` dispatchContext: ${JSON.stringify(task.dispatchContext)}`);
208
+ logger.log(` dispatchContext: ${JSON.stringify(task.dispatchContext)}`);
166
209
  }
167
210
  if (task.attachments?.length) {
168
- console.log(` attachments: ${task.attachments.map((item) => item.filename).join(', ')}`);
211
+ logger.log(` attachments: ${task.attachments.map((item) => item.filename).join(', ')}`);
169
212
  }
170
213
  if (task.bodyText?.trim()) {
171
- console.log(' body:');
172
- console.log(task.bodyText.split('\n').map((line) => ` ${line}`).join('\n'));
214
+ logger.log(' body:');
215
+ logger.log(task.bodyText.split('\n').map((line) => ` ${line}`).join('\n'));
173
216
  }
174
217
  }
175
- async function runListen(args) {
176
- const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
177
- const client = createClient(await loadProfile(profile));
218
+ export function attachListenHandlers(client, logger = console) {
178
219
  let lastErrorSignature = '';
179
220
  client.on('connected', () => {
180
- console.log(`[AAMP] connected as ${client.email} (${formatTransport(client)})`);
221
+ logger.log(`[AAMP] connected as ${client.email} (${formatTransport(client)})`);
181
222
  });
182
223
  client.on('disconnected', (reason) => {
183
- console.log(`[AAMP] disconnected: ${reason}`);
224
+ logger.log(`[AAMP] disconnected: ${reason}`);
184
225
  });
185
226
  client.on('error', (err) => {
186
227
  const isFallbackActive = client.isUsingPollingFallback();
187
228
  const isHandshakeNoise = err.message.startsWith('JMAP WebSocket handshake failed:');
188
229
  const isFallbackTransition = err.message.startsWith('JMAP WebSocket unavailable, falling back to polling:');
189
230
  if (isFallbackTransition) {
190
- console.log(`[AAMP] websocket unavailable, using polling fallback`);
231
+ logger.log(`[AAMP] websocket unavailable, using polling fallback`);
191
232
  return;
192
233
  }
193
234
  if (isFallbackActive && isHandshakeNoise)
@@ -195,35 +236,57 @@ async function runListen(args) {
195
236
  if (err.message === lastErrorSignature)
196
237
  return;
197
238
  lastErrorSignature = err.message;
198
- console.error(`[AAMP] error: ${err.message}`);
239
+ logger.error(`[AAMP] error: ${err.message}`);
199
240
  });
200
241
  client.on('task.dispatch', (task) => {
201
- printDispatch(task);
242
+ printDispatch(task, logger);
243
+ });
244
+ client.on('task.cancel', (cancel) => {
245
+ logger.log(`\n[AAMP] <- task.cancel ${cancel.taskId} from=${cancel.from}`);
246
+ if (cancel.bodyText?.trim())
247
+ logger.log(` body: ${cancel.bodyText}`);
202
248
  });
203
249
  client.on('task.ack', (ack) => {
204
- console.log(`\n[AAMP] <- task.ack ${ack.taskId} from=${ack.from}`);
250
+ logger.log(`\n[AAMP] <- task.ack ${ack.taskId} from=${ack.from}`);
205
251
  });
206
252
  client.on('task.help_needed', (help) => {
207
- console.log(`\n[AAMP] <- task.help_needed ${help.taskId} from=${help.from}`);
208
- console.log(` question: ${help.question}`);
253
+ logger.log(`\n[AAMP] <- task.help_needed ${help.taskId} from=${help.from}`);
254
+ logger.log(` question: ${help.question}`);
209
255
  if (help.blockedReason)
210
- console.log(` blockedReason: ${help.blockedReason}`);
256
+ logger.log(` blockedReason: ${help.blockedReason}`);
211
257
  if (help.suggestedOptions?.length)
212
- console.log(` suggestedOptions: ${help.suggestedOptions.join(', ')}`);
258
+ logger.log(` suggestedOptions: ${help.suggestedOptions.join(', ')}`);
213
259
  });
214
260
  client.on('task.result', (result) => {
215
- console.log(`\n[AAMP] <- task.result ${result.taskId} from=${result.from} status=${result.status}`);
261
+ logger.log(`\n[AAMP] <- task.result ${result.taskId} from=${result.from} status=${result.status}`);
216
262
  if (result.output)
217
- console.log(` output: ${result.output}`);
263
+ logger.log(` output: ${result.output}`);
218
264
  if (result.errorMsg)
219
- console.log(` error: ${result.errorMsg}`);
265
+ logger.log(` error: ${result.errorMsg}`);
220
266
  if (result.attachments?.length)
221
- console.log(` attachments: ${result.attachments.map((item) => item.filename).join(', ')}`);
267
+ logger.log(` attachments: ${result.attachments.map((item) => item.filename).join(', ')}`);
268
+ });
269
+ client.on('card.query', (cardQuery) => {
270
+ logger.log(`\n[AAMP] <- card.query ${cardQuery.taskId} from=${cardQuery.from}`);
271
+ logger.log(` subject: ${cardQuery.subject}`);
272
+ if (cardQuery.bodyText?.trim())
273
+ logger.log(` body: ${cardQuery.bodyText}`);
274
+ });
275
+ client.on('card.response', (cardResponse) => {
276
+ logger.log(`\n[AAMP] <- card.response ${cardResponse.taskId} from=${cardResponse.from}`);
277
+ logger.log(` summary: ${cardResponse.summary}`);
278
+ if (cardResponse.bodyText?.trim())
279
+ logger.log(` body: ${cardResponse.bodyText}`);
222
280
  });
223
281
  client.on('reply', (reply) => {
224
- console.log(`\n[AAMP] <- human reply inReplyTo=${reply.inReplyTo} from=${reply.from}`);
225
- console.log(` body: ${reply.bodyText}`);
282
+ logger.log(`\n[AAMP] <- human reply inReplyTo=${reply.inReplyTo} from=${reply.from}`);
283
+ logger.log(` body: ${reply.bodyText}`);
226
284
  });
285
+ }
286
+ export async function runListen(args) {
287
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
288
+ const client = createClient(await loadProfile(profile));
289
+ attachListenHandlers(client);
227
290
  await client.connect();
228
291
  console.log(`[AAMP] listening as ${client.email}; press Ctrl+C to stop`);
229
292
  const shutdown = () => {
@@ -234,7 +297,7 @@ async function runListen(args) {
234
297
  process.on('SIGTERM', shutdown);
235
298
  await new Promise(() => { });
236
299
  }
237
- async function runStatus(args) {
300
+ export async function runStatus(args) {
238
301
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
239
302
  const cfg = await loadProfile(profile);
240
303
  const client = createClient(cfg);
@@ -243,35 +306,36 @@ async function runStatus(args) {
243
306
  console.log(JSON.stringify({
244
307
  profile,
245
308
  email: cfg.email,
246
- jmapUrl: cfg.jmapUrl,
247
- smtpHost: resolveSmtpHost(cfg.jmapUrl, cfg.smtpHost),
309
+ baseUrl: resolveBaseUrl(cfg),
310
+ smtpHost: resolveSmtpHost(resolveBaseUrl(cfg), cfg.smtpHost),
248
311
  smtpPort: cfg.smtpPort ?? 587,
249
312
  transport: formatTransport(client),
250
313
  smtpVerified: smtpOk,
251
314
  }, null, 2));
252
315
  client.disconnect();
253
316
  }
254
- async function runInbox(args) {
317
+ export async function runInbox(args) {
255
318
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
256
319
  const limit = Number(firstArg(args, 'limit') ?? '20');
257
320
  const client = createClient(await loadProfile(profile));
258
321
  const processed = await client.reconcileRecentEmails(limit);
259
322
  console.log(`Reconciled ${processed} recent email(s)`);
260
323
  }
261
- async function runDispatch(args) {
324
+ export async function runDispatch(args) {
262
325
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
263
326
  const client = createClient(await loadProfile(profile));
264
327
  const payload = {
265
328
  to: requireArg(args, 'to'),
266
329
  title: requireArg(args, 'title'),
267
330
  bodyText: firstArg(args, 'body'),
268
- timeoutSecs: firstArg(args, 'timeout') ? Number(firstArg(args, 'timeout')) : undefined,
331
+ priority: firstArg(args, 'priority'),
332
+ expiresAt: firstArg(args, 'expires-at'),
269
333
  contextLinks: allArgs(args, 'context-link'),
270
334
  };
271
335
  const result = await client.sendTask(payload);
272
336
  console.log(JSON.stringify(result, null, 2));
273
337
  }
274
- async function runResult(args) {
338
+ export async function runResult(args) {
275
339
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
276
340
  const client = createClient(await loadProfile(profile));
277
341
  const payload = {
@@ -284,7 +348,7 @@ async function runResult(args) {
284
348
  await client.sendResult(payload);
285
349
  console.log(`Sent task.result for ${payload.taskId}`);
286
350
  }
287
- async function runHelp(args) {
351
+ export async function runHelp(args) {
288
352
  const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
289
353
  const client = createClient(await loadProfile(profile));
290
354
  const payload = {
@@ -297,7 +361,72 @@ async function runHelp(args) {
297
361
  await client.sendHelp(payload);
298
362
  console.log(`Sent task.help_needed for ${payload.taskId}`);
299
363
  }
300
- async function main() {
364
+ export async function runCancel(args) {
365
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
366
+ const client = createClient(await loadProfile(profile));
367
+ const payload = {
368
+ to: requireArg(args, 'to'),
369
+ taskId: requireArg(args, 'task-id'),
370
+ bodyText: firstArg(args, 'body'),
371
+ };
372
+ await client.sendCancel(payload);
373
+ console.log(`Sent task.cancel for ${payload.taskId}`);
374
+ }
375
+ export async function runDirectoryList(args) {
376
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
377
+ const client = createClient(await loadProfile(profile));
378
+ const agents = await client.listDirectory({
379
+ includeSelf: args.booleans.has('include-self'),
380
+ limit: firstArg(args, 'limit') ? Number(firstArg(args, 'limit')) : undefined,
381
+ });
382
+ console.log(JSON.stringify({ agents }, null, 2));
383
+ }
384
+ export async function runDirectorySearch(args) {
385
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
386
+ const client = createClient(await loadProfile(profile));
387
+ const agents = await client.searchDirectory({
388
+ query: requireArg(args, 'query'),
389
+ includeSelf: args.booleans.has('include-self'),
390
+ limit: firstArg(args, 'limit') ? Number(firstArg(args, 'limit')) : undefined,
391
+ });
392
+ console.log(JSON.stringify({ agents }, null, 2));
393
+ }
394
+ export async function runDirectoryUpdate(args) {
395
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
396
+ const client = createClient(await loadProfile(profile));
397
+ const cardFile = firstArg(args, 'card-file');
398
+ const cardText = firstArg(args, 'card-text')
399
+ ?? (cardFile ? await readFile(cardFile, 'utf8') : undefined);
400
+ const profileData = await client.updateDirectoryProfile({
401
+ summary: firstArg(args, 'summary'),
402
+ cardText,
403
+ });
404
+ console.log(JSON.stringify({ profile: profileData }, null, 2));
405
+ }
406
+ export async function runCardQuery(args) {
407
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
408
+ const client = createClient(await loadProfile(profile));
409
+ const result = await client.sendCardQuery({
410
+ to: requireArg(args, 'to'),
411
+ bodyText: firstArg(args, 'body'),
412
+ });
413
+ console.log(JSON.stringify(result, null, 2));
414
+ }
415
+ export async function runCardResponse(args) {
416
+ const profile = firstArg(args, 'profile') ?? DEFAULT_PROFILE;
417
+ const client = createClient(await loadProfile(profile));
418
+ const cardFile = firstArg(args, 'card-file');
419
+ const bodyText = firstArg(args, 'body')
420
+ ?? (cardFile ? await readFile(cardFile, 'utf8') : '');
421
+ await client.sendCardResponse({
422
+ to: requireArg(args, 'to'),
423
+ taskId: requireArg(args, 'task-id'),
424
+ summary: requireArg(args, 'summary'),
425
+ bodyText,
426
+ });
427
+ console.log(`Sent card.response for ${requireArg(args, 'task-id')}`);
428
+ }
429
+ export async function main() {
301
430
  const args = parseArgs(process.argv.slice(2));
302
431
  if (args.booleans.has('help') || args.command === 'unknown') {
303
432
  printUsage();
@@ -307,6 +436,9 @@ async function main() {
307
436
  case 'login':
308
437
  await runLogin(args);
309
438
  return;
439
+ case 'register':
440
+ await runRegister(args);
441
+ return;
310
442
  case 'init':
311
443
  await runInit(args);
312
444
  return;
@@ -328,12 +460,33 @@ async function main() {
328
460
  case 'help':
329
461
  await runHelp(args);
330
462
  return;
463
+ case 'cancel':
464
+ await runCancel(args);
465
+ return;
466
+ case 'directory-list':
467
+ await runDirectoryList(args);
468
+ return;
469
+ case 'directory-search':
470
+ await runDirectorySearch(args);
471
+ return;
472
+ case 'directory-update':
473
+ await runDirectoryUpdate(args);
474
+ return;
475
+ case 'card-query':
476
+ await runCardQuery(args);
477
+ return;
478
+ case 'card-response':
479
+ await runCardResponse(args);
480
+ return;
331
481
  default:
332
482
  printUsage();
333
483
  }
334
484
  }
335
- main().catch((err) => {
336
- console.error(`[aamp-cli] ${err instanceof Error ? err.message : String(err)}`);
337
- process.exit(1);
338
- });
485
+ const isDirectRun = process.argv[1] && import.meta.url === pathToFileURL(process.argv[1]).href;
486
+ if (isDirectRun) {
487
+ main().catch((err) => {
488
+ console.error(`[aamp-cli] ${err instanceof Error ? err.message : String(err)}`);
489
+ process.exit(1);
490
+ });
491
+ }
339
492
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,QAAQ,MAAM,wBAAwB,CAAA;AAC7C,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAA;AAC/D,OAAO,EAAE,UAAU,EAA+F,MAAM,UAAU,CAAA;AAqBlI,MAAM,eAAe,GAAG,SAAS,CAAA;AACjC,MAAM,gBAAgB,GAAG,qBAAqB,CAAA;AAE9C,SAAS,qBAAqB,CAAC,KAAa;IAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAA;IACpF,CAAC;IACD,OAAO;QACL,OAAO,EAAE,WAAW,MAAM,EAAE;QAC5B,QAAQ,EAAE,MAAM;KACjB,CAAA;AACH,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;CAkBb,CAAC,CAAA;AACF,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IAClC,MAAM,OAAO,GAAG,CAAC,UAAU,IAAI,SAAS,CAAgB,CAAA;IACxD,MAAM,WAAW,GAAa,EAAE,CAAA;IAChC,MAAM,MAAM,GAA6B,EAAE,CAAA;IAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACvB,SAAQ;QACV,CAAC;QAED,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACjB,SAAQ;QACV,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QAClC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtB,CAAC,EAAE,CAAA;IACL,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;AACnD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAgB,EAAE,GAAW;IAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,OAAO,CAAC,IAAgB,EAAE,GAAW;IAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;AAC/B,CAAC;AAED,SAAS,UAAU,CAAC,IAAgB,EAAE,GAAW;IAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACjC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAA;IACxD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;AACzD,CAAC;AAED,SAAS,cAAc,CAAC,OAAO,GAAG,eAAe;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,OAAO,GAAG,eAAe;IAClD,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,mCAAmC,OAAO,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,OAAO,EAAE,UAAU,CAAC,CAAA;IAC7I,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAe,CAAA;AACtC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,OAAe,EAAE,IAAgB;IAC1D,MAAM,GAAG,GAAG,cAAc,EAAE,CAAA;IAC5B,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACrC,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACpC,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACnE,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,QAAiB;IACzD,OAAO,QAAQ,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAA;AAC9C,CAAC;AAED,SAAS,YAAY,CAAC,OAAmB;IACvC,OAAO,IAAI,UAAU,CAAC;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;QAC5D,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,GAAG;QACjC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;KAC/C,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB;IACzC,OAAO,MAAM,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAA;AAC3E,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,YAAY,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IACtD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACvD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,IAAI,CAAC,CAAA;QAC1D,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,YAAY,CAAA;IACtC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,IAAgB;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAE7E,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,MAAM,CAAC,eAAe,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAA;IAC7F,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,MAAM,MAAM,CAAC,kBAAkB,EAAE,QAAQ,EAAE,YAAY,IAAI,EAAE,CAAC,CAAA;IACpJ,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC5E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,QAAQ,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAA;IACnF,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAA;IACvF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAA;IACzF,MAAM,kBAAkB,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,kBAAkB,IAAI,IAAI,CAAC,CAAC,KAAK,OAAO,CAAA;IAE9H,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE;QACtC,KAAK;QACL,SAAS;QACT,YAAY;QACZ,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,kBAAkB;KACnB,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,QAAQ,IAAI,EAAE,CAAC,CAAA;IACpD,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAA;IAC3C,OAAO,CAAC,GAAG,CAAC,sBAAsB,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,IAAgB;IACtC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;AACrB,CAAC;AAED,SAAS,aAAa,CAAC,IAStB;IACC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IACrC,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;IACpE,IAAI,IAAI,CAAC,YAAY,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC7F,IAAI,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;IAC3E,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC3F,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAgB;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,IAAI,kBAAkB,GAAG,EAAE,CAAA;IAE3B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,KAAK,KAAK,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE;QACnC,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACzB,MAAM,gBAAgB,GAAG,MAAM,CAAC,sBAAsB,EAAE,CAAA;QACxD,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAA;QACnF,MAAM,oBAAoB,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,sDAAsD,CAAC,CAAA;QAC3G,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAA;YACnE,OAAM;QACR,CAAC;QACD,IAAI,gBAAgB,IAAI,gBAAgB;YAAE,OAAM;QAChD,IAAI,GAAG,CAAC,OAAO,KAAK,kBAAkB;YAAE,OAAM;QAC9C,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAA;QAChC,OAAO,CAAC,KAAK,CAAC,iBAAiB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE;QAClC,aAAa,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;IACpE,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,CAAC,MAAM,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5E,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC3C,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;QAC7E,IAAI,IAAI,CAAC,gBAAgB,EAAE,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC3G,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE;QAClC,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,IAAI,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QACnG,IAAI,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAC5D,IAAI,MAAM,CAAC,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC/D,IAAI,MAAM,CAAC,WAAW,EAAE,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC7H,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,CAAC,GAAG,CAAC,qCAAqC,KAAK,CAAC,SAAS,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QACtF,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;IACtB,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,KAAK,wBAAwB,CAAC,CAAA;IAExE,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,MAAM,CAAC,UAAU,EAAE,CAAA;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAA;IACD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAE/B,MAAM,IAAI,OAAO,CAAO,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AACnC,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAgB;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IAChC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;IAC3D,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;IACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,OAAO;QACP,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC;QACpD,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,GAAG;QAC7B,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC;QAClC,YAAY,EAAE,MAAM;KACrB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACZ,MAAM,CAAC,UAAU,EAAE,CAAA;AACrB,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,IAAgB;IACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,cAAc,SAAS,kBAAkB,CAAC,CAAA;AACxD,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAgB;IACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;QAChC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAChC,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QACtF,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC;KAC5C,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAgB;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,MAAM,OAAO,GAAsB;QACjC,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC;QACnC,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,QAAQ,CAA6B;QAC9D,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;QACtC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;KAClC,CAAA;IACD,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAChC,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,IAAgB;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC;QACnC,QAAQ,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC;QACtC,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;QAC7C,gBAAgB,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;KAC1C,CAAA;IACD,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC9B,OAAO,CAAC,GAAG,CAAC,6BAA6B,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC5D,UAAU,EAAE,CAAA;QACZ,OAAM;IACR,CAAC;IAED,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;YACpB,OAAM;QACR,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,OAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,OAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,OAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;YACpB,OAAM;QACR,KAAK,UAAU;YACb,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;YACvB,OAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,OAAM;QACR,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,OAAM;QACR;YACE,UAAU,EAAE,CAAA;IAChB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,151 @@
1
+ import { mkdtempSync, readFileSync } from 'node:fs';
2
+ import { mkdir, writeFile } from 'node:fs/promises';
3
+ import os from 'node:os';
4
+ import path from 'node:path';
5
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
6
+ class FakeClient {
7
+ handlers = new Map();
8
+ email = 'agent@meshmail.ai';
9
+ sendTask = vi.fn().mockResolvedValue({ taskId: 'task-1', messageId: 'msg-1' });
10
+ sendResult = vi.fn().mockResolvedValue(undefined);
11
+ sendHelp = vi.fn().mockResolvedValue(undefined);
12
+ sendCancel = vi.fn().mockResolvedValue(undefined);
13
+ verifySmtp = vi.fn().mockResolvedValue(true);
14
+ connect = vi.fn().mockResolvedValue(undefined);
15
+ disconnect = vi.fn();
16
+ isUsingPollingFallback = vi.fn().mockReturnValue(false);
17
+ on(event, handler) {
18
+ const list = this.handlers.get(event) ?? [];
19
+ list.push(handler);
20
+ this.handlers.set(event, list);
21
+ }
22
+ emit(event, payload) {
23
+ for (const handler of this.handlers.get(event) ?? []) {
24
+ handler(payload);
25
+ }
26
+ }
27
+ }
28
+ const registerMailbox = vi.fn();
29
+ const fromMailboxIdentity = vi.fn();
30
+ let tempHome = '';
31
+ describe('aamp-cli helpers', () => {
32
+ beforeEach(() => {
33
+ vi.resetModules();
34
+ vi.restoreAllMocks();
35
+ tempHome = mkdtempSync(path.join(os.tmpdir(), 'aamp-cli-test-'));
36
+ vi.spyOn(os, 'homedir').mockReturnValue(tempHome);
37
+ registerMailbox.mockReset();
38
+ fromMailboxIdentity.mockReset();
39
+ fromMailboxIdentity.mockImplementation(() => new FakeClient());
40
+ vi.doMock('aamp-sdk', () => ({
41
+ AampClient: {
42
+ registerMailbox,
43
+ fromMailboxIdentity,
44
+ },
45
+ }));
46
+ });
47
+ it('writes init profiles with derived defaults', async () => {
48
+ const cli = await import('./index.ts');
49
+ const args = cli.parseArgs([
50
+ 'init',
51
+ '--email', 'worker@meshmail.ai',
52
+ '--password', 'smtp-1',
53
+ '--profile', 'demo',
54
+ ]);
55
+ const logSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
56
+ await cli.runInit(args);
57
+ const profile = JSON.parse(readFileSync(path.join(tempHome, '.aamp-cli', 'profiles', 'demo.json'), 'utf8'));
58
+ expect(profile).toMatchObject({
59
+ email: 'worker@meshmail.ai',
60
+ smtpPassword: 'smtp-1',
61
+ baseUrl: 'https://meshmail.ai',
62
+ smtpHost: 'meshmail.ai',
63
+ smtpPort: 587,
64
+ rejectUnauthorized: true,
65
+ });
66
+ expect(logSpy).toHaveBeenCalledWith(expect.stringContaining('Saved profile "demo"'));
67
+ });
68
+ it('registers a mailbox and persists the returned identity', async () => {
69
+ registerMailbox.mockResolvedValue({
70
+ email: 'registered@meshmail.ai',
71
+ smtpPassword: 'smtp-registered',
72
+ mailboxToken: 'mailbox-token',
73
+ baseUrl: 'https://meshmail.ai',
74
+ });
75
+ const cli = await import('./index.ts');
76
+ const args = cli.parseArgs([
77
+ 'register',
78
+ '--host', 'https://meshmail.ai',
79
+ '--slug', 'OpenClaw Agent',
80
+ '--profile', 'demo',
81
+ ]);
82
+ const logSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
83
+ await cli.runRegister(args);
84
+ expect(registerMailbox).toHaveBeenCalledWith(expect.objectContaining({
85
+ aampHost: 'https://meshmail.ai',
86
+ slug: 'openclaw-agent',
87
+ }));
88
+ const saved = JSON.parse(readFileSync(path.join(tempHome, '.aamp-cli', 'profiles', 'demo.json'), 'utf8'));
89
+ expect(saved.email).toBe('registered@meshmail.ai');
90
+ expect(logSpy).toHaveBeenCalledWith(expect.stringContaining('"profile": "demo"'));
91
+ });
92
+ it('dispatches tasks through the SDK client', async () => {
93
+ const cli = await import('./index.ts');
94
+ const profilePath = path.join(tempHome, '.aamp-cli', 'profiles', 'default.json');
95
+ const profile = {
96
+ email: 'worker@meshmail.ai',
97
+ smtpPassword: 'smtp-1',
98
+ baseUrl: 'https://meshmail.ai',
99
+ smtpHost: 'meshmail.ai',
100
+ smtpPort: 587,
101
+ rejectUnauthorized: true,
102
+ };
103
+ await mkdir(path.dirname(profilePath), { recursive: true });
104
+ await writeFile(profilePath, JSON.stringify(profile), 'utf8');
105
+ const args = cli.parseArgs([
106
+ 'dispatch',
107
+ '--to', 'reviewer@meshmail.ai',
108
+ '--title', 'Review PR',
109
+ '--body', 'Please review the change.',
110
+ '--context-link', 'https://example.com/pr/42',
111
+ ]);
112
+ const logSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
113
+ await cli.runDispatch(args);
114
+ const client = fromMailboxIdentity.mock.results[0].value;
115
+ expect(client.sendTask).toHaveBeenCalledWith(expect.objectContaining({
116
+ to: 'reviewer@meshmail.ai',
117
+ title: 'Review PR',
118
+ bodyText: 'Please review the change.',
119
+ contextLinks: ['https://example.com/pr/42'],
120
+ }));
121
+ expect(logSpy).toHaveBeenCalledWith(expect.stringContaining('"taskId": "task-1"'));
122
+ });
123
+ it('logs inbound dispatch and result events for listen mode', async () => {
124
+ const cli = await import('./index.ts');
125
+ const client = new FakeClient();
126
+ const messages = [];
127
+ const logger = {
128
+ log: (message) => messages.push(message),
129
+ error: (message) => messages.push(message),
130
+ };
131
+ cli.attachListenHandlers(client, logger);
132
+ client.emit('task.dispatch', {
133
+ taskId: 'task-3',
134
+ from: 'dispatcher@meshmail.ai',
135
+ title: 'Review protocol',
136
+ priority: 'high',
137
+ contextLinks: ['https://example.com/context'],
138
+ bodyText: 'Please compare the latest headers.',
139
+ });
140
+ client.emit('task.result', {
141
+ taskId: 'task-3',
142
+ from: 'worker@meshmail.ai',
143
+ status: 'completed',
144
+ output: 'Done.',
145
+ });
146
+ expect(messages.join('\n')).toContain('task.dispatch task-3');
147
+ expect(messages.join('\n')).toContain('Please compare the latest headers.');
148
+ expect(messages.join('\n')).toContain('task.result task-3');
149
+ });
150
+ });
151
+ //# sourceMappingURL=index.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "dist"
5
5
  ],
6
6
  "license": "MIT",
7
- "version": "0.1.0",
7
+ "version": "0.1.2",
8
8
  "description": "CLI for connecting any agent mailbox to the AAMP network via aamp-sdk",
9
9
  "type": "module",
10
10
  "main": "dist/index.js",
@@ -14,14 +14,16 @@
14
14
  "scripts": {
15
15
  "dev": "tsx src/index.ts",
16
16
  "build": "tsc",
17
- "start": "node dist/index.js"
17
+ "start": "node dist/index.js",
18
+ "test": "vitest run"
18
19
  },
19
20
  "dependencies": {
20
- "aamp-sdk": "^0.1.10"
21
+ "aamp-sdk": "^0.1.14"
21
22
  },
22
23
  "devDependencies": {
23
24
  "@types/node": "^20.11.30",
24
25
  "tsx": "^4.7.1",
25
- "typescript": "^5.4.3"
26
+ "typescript": "^5.4.3",
27
+ "vitest": "^1.6.1"
26
28
  }
27
29
  }