@getstackrun/cli 0.6.1 → 0.7.0

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.
Files changed (50) hide show
  1. package/dist/agent.d.ts.map +1 -1
  2. package/dist/agent.js +113 -3
  3. package/dist/agent.js.map +1 -1
  4. package/dist/api.d.ts +26 -0
  5. package/dist/api.d.ts.map +1 -0
  6. package/dist/api.js +90 -0
  7. package/dist/api.js.map +1 -0
  8. package/dist/audit.d.ts +2 -0
  9. package/dist/audit.d.ts.map +1 -0
  10. package/dist/audit.js +69 -0
  11. package/dist/audit.js.map +1 -0
  12. package/dist/dropoffs.d.ts +2 -0
  13. package/dist/dropoffs.d.ts.map +1 -0
  14. package/dist/dropoffs.js +140 -0
  15. package/dist/dropoffs.js.map +1 -0
  16. package/dist/events.d.ts +2 -0
  17. package/dist/events.d.ts.map +1 -0
  18. package/dist/events.js +77 -0
  19. package/dist/events.js.map +1 -0
  20. package/dist/format.d.ts +16 -0
  21. package/dist/format.d.ts.map +1 -0
  22. package/dist/format.js +77 -0
  23. package/dist/format.js.map +1 -0
  24. package/dist/identity.d.ts +2 -0
  25. package/dist/identity.d.ts.map +1 -0
  26. package/dist/identity.js +86 -0
  27. package/dist/identity.js.map +1 -0
  28. package/dist/index.js +120 -4
  29. package/dist/index.js.map +1 -1
  30. package/dist/me.d.ts +2 -0
  31. package/dist/me.d.ts.map +1 -0
  32. package/dist/me.js +11 -0
  33. package/dist/me.js.map +1 -0
  34. package/dist/passports.d.ts +2 -0
  35. package/dist/passports.d.ts.map +1 -0
  36. package/dist/passports.js +157 -0
  37. package/dist/passports.js.map +1 -0
  38. package/dist/services.d.ts +2 -0
  39. package/dist/services.d.ts.map +1 -0
  40. package/dist/services.js +97 -0
  41. package/dist/services.js.map +1 -0
  42. package/dist/skills.d.ts +2 -0
  43. package/dist/skills.d.ts.map +1 -0
  44. package/dist/skills.js +96 -0
  45. package/dist/skills.js.map +1 -0
  46. package/dist/team.d.ts +2 -0
  47. package/dist/team.d.ts.map +1 -0
  48. package/dist/team.js +86 -0
  49. package/dist/team.js.map +1 -0
  50. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAyMA,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C/F;AAKD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpE;AAGD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB5D"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AA2MA,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C/F;AAKD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpE;AA+DD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwE5D"}
package/dist/agent.js CHANGED
@@ -19,6 +19,8 @@
19
19
  // persist { agent_id, publicKey, privateKey, enrolled_at } to
20
20
  // ~/.stack/agents/<id>.json (mode 0600)
21
21
  import { env, stdout, stderr } from 'node:process';
22
+ // Reused below; the imports for `api`, `printTable`, `printJson`, etc.
23
+ // come further down via the agent listing/show/etc. section import block.
22
24
  import { generateKeyPairSync, sign as cryptoSign } from 'node:crypto';
23
25
  import { writeFile, mkdir, chmod, readFile } from 'node:fs/promises';
24
26
  import { existsSync } from 'node:fs';
@@ -201,14 +203,97 @@ export async function cmdAgentEnroll(nameOrId, opts) {
201
203
  export async function cmdAgentRotate(nameOrId) {
202
204
  await cmdAgentEnroll(nameOrId, { force: true });
203
205
  }
206
+ // ── List / show / register / suspend / unsuspend / delete ──────────
207
+ //
208
+ // Round out the agent surface so the CLI mirrors what MCP and the
209
+ // dashboard already offer. Auth = standard CLI bearer; all routes are
210
+ // operator-scoped on the API side.
211
+ import { api, takeFlag } from './api.js';
212
+ import { printTable, printJson, printRecord, fmt, fmtTs } from './format.js';
213
+ async function cmdAgentList(json) {
214
+ const agents = await api('GET', '/v1/agents');
215
+ if (json)
216
+ return printJson(agents);
217
+ const rows = agents.map((a) => [
218
+ a.id,
219
+ a.name,
220
+ statusBadge(a),
221
+ a.enrolled_at ? fmt.ok('yes') : fmt.dim('no'),
222
+ fmtTs(a.created_at ?? null),
223
+ ]);
224
+ printTable(['ID', 'NAME', 'STATUS', 'ENROLLED', 'CREATED'], rows);
225
+ }
226
+ async function cmdAgentShow(nameOrId, json) {
227
+ const token = await bearer();
228
+ const agent = await resolveAgent(nameOrId, token);
229
+ if (json)
230
+ return printJson(agent);
231
+ printRecord(agent);
232
+ }
233
+ async function cmdAgentRegister(name, description, json) {
234
+ const body = { name };
235
+ if (description)
236
+ body.description = description;
237
+ const agent = await api('POST', '/v1/agents/register', { body });
238
+ if (json)
239
+ return printJson(agent);
240
+ stdout.write(`registered ${agent.name} (${agent.id})\n`);
241
+ }
242
+ async function cmdAgentSuspend(nameOrId, status, json) {
243
+ const token = await bearer();
244
+ const agent = await resolveAgent(nameOrId, token);
245
+ const updated = await api('PATCH', `/v1/agents/${agent.id}`, { body: { status } });
246
+ if (json)
247
+ return printJson(updated);
248
+ stdout.write(`${agent.name} → ${status}\n`);
249
+ }
250
+ async function cmdAgentDelete(nameOrId, json) {
251
+ const token = await bearer();
252
+ const agent = await resolveAgent(nameOrId, token);
253
+ await api('DELETE', `/v1/agents/${agent.id}`, { expectEmpty: true });
254
+ if (json)
255
+ return printJson({ deleted: true, id: agent.id });
256
+ stdout.write(`deleted ${agent.name} (${agent.id})\n`);
257
+ }
258
+ function statusBadge(a) {
259
+ if (a.passport_blocked)
260
+ return fmt.err('blocked');
261
+ if (a.status === 'suspended')
262
+ return fmt.warn('suspended');
263
+ if (a.status === 'revoked')
264
+ return fmt.dim('revoked');
265
+ return fmt.ok('active');
266
+ }
204
267
  // Subcommand dispatcher: called from main() with args = argv.slice(3).
205
268
  export async function cmdAgent(args) {
269
+ const json = !!takeFlag(args, '--json');
206
270
  const sub = args[0];
207
271
  const target = args[1];
208
272
  const force = args.includes('--force');
273
+ if (sub === 'list' || sub === 'ls') {
274
+ await cmdAgentList(json);
275
+ return;
276
+ }
277
+ if (sub === 'show' || sub === 'get') {
278
+ if (!target) {
279
+ stderr.write(`usage: ${invokeHint('agent show <name|id>')}\n`);
280
+ process.exit(2);
281
+ }
282
+ await cmdAgentShow(target, json);
283
+ return;
284
+ }
285
+ if (sub === 'register') {
286
+ if (!target) {
287
+ stderr.write(`usage: ${invokeHint('agent register <name> [--description "..."]')}\n`);
288
+ process.exit(2);
289
+ }
290
+ const description = takeFlag(args, '--description');
291
+ await cmdAgentRegister(target, typeof description === 'string' ? description : undefined, json);
292
+ return;
293
+ }
209
294
  if (sub === 'enroll') {
210
295
  if (!target) {
211
- stderr.write('usage: stack-cli agent enroll <name|id> [--force]\n');
296
+ stderr.write(`usage: ${invokeHint('agent enroll <name|id> [--force]')}\n`);
212
297
  process.exit(2);
213
298
  }
214
299
  await cmdAgentEnroll(target, { force });
@@ -216,13 +301,38 @@ export async function cmdAgent(args) {
216
301
  }
217
302
  if (sub === 'rotate') {
218
303
  if (!target) {
219
- stderr.write('usage: stack-cli agent rotate <name|id>\n');
304
+ stderr.write(`usage: ${invokeHint('agent rotate <name|id>')}\n`);
220
305
  process.exit(2);
221
306
  }
222
307
  await cmdAgentRotate(target);
223
308
  return;
224
309
  }
225
- stderr.write(`error: unknown agent subcommand "${sub ?? ''}". Use enroll | rotate.\n`);
310
+ if (sub === 'suspend') {
311
+ if (!target) {
312
+ stderr.write(`usage: ${invokeHint('agent suspend <name|id>')}\n`);
313
+ process.exit(2);
314
+ }
315
+ await cmdAgentSuspend(target, 'suspended', json);
316
+ return;
317
+ }
318
+ if (sub === 'unsuspend' || sub === 'activate') {
319
+ if (!target) {
320
+ stderr.write(`usage: ${invokeHint('agent unsuspend <name|id>')}\n`);
321
+ process.exit(2);
322
+ }
323
+ await cmdAgentSuspend(target, 'active', json);
324
+ return;
325
+ }
326
+ if (sub === 'delete' || sub === 'rm') {
327
+ if (!target) {
328
+ stderr.write(`usage: ${invokeHint('agent delete <name|id>')}\n`);
329
+ process.exit(2);
330
+ }
331
+ await cmdAgentDelete(target, json);
332
+ return;
333
+ }
334
+ stderr.write(`error: unknown agent subcommand "${sub ?? ''}".\n` +
335
+ `Use list | show | register | enroll | rotate | suspend | unsuspend | delete\n`);
226
336
  process.exit(2);
227
337
  }
228
338
  //# sourceMappingURL=agent.js.map
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,iEAAiE;AACjE,qDAAqD;AACrD,EAAE;AACF,4DAA4D;AAC5D,wEAAwE;AACxE,6CAA6C;AAC7C,EAAE;AACF,2DAA2D;AAC3D,yCAAyC;AACzC,2EAA2E;AAC3E,gEAAgE;AAChE,6CAA6C;AAC7C,mEAAmE;AACnE,gEAAgE;AAChE,0CAA0C;AAE1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,IAAI,IAAI,UAAU,EAAmB,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,0BAA0B,CAAC;AAgBnE,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,OAAO,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,MAAM;IACnB,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;IACrC,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,CAAC,KAAK,CACV,gCAAgC,UAAU,CAAC,YAAY,CAAC,mCAAmC,CAC5F,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,sEAAsE;AACtE,oEAAoE;AACpE,sEAAsE;AACtE,+BAA+B;AAC/B,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,KAAa;IACzD,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC9E,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;SAC9C,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CAAC,4BAA4B,QAAQ,uBAAuB,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAa,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,EAAE;QAClD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;KAC9C,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,iCAAiC,OAAO,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAe,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CACV,0BAA0B,QAAQ,uBAAuB;YACvD,qDAAqD,CACxD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qEAAqE;AACrE,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,SAA8D;IAKtF,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAA4D,CAAC;IAC3G,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAgE;IAMzF,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAK9C,CAAC;IACF,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,wDAAwD;AACxD,KAAK,UAAU,OAAO,CAAC,MAAiB;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAe,EAAE,KAAa,EAAE,KAAc;IACrE,qBAAqB;IACrB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,kBAAkB,CAAC,OAAO,CAAC,uBAAuB,EAAE;QACnG,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAClF,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAqC,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,MAAM,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAgD,CAAC;IAEvG,oCAAoC;IACpC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAEjD,oEAAoE;IACpE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEzD,uDAAuD;IACvD,MAAM,GAAG,GAAG,GAAG,OAAO,cAAc,kBAAkB,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC5B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACjF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;KAChF,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAqC,CAAC;QAC1F,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,iCAAiC,UAAU,CAAC,gBAAgB,OAAO,EAAE,CAAC,8CAA8C;gBAClH,6CAA6C,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAA6B,CAAC;IAEjE,MAAM,MAAM,GAAc;QACxB,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,QAAQ,CAAC,WAAW;YAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC,CAAC;IACF,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8DAA8D;AAC9D,EAAE;AACF,yEAAyE;AACzE,8BAA8B;AAC9B,qEAAqE;AACrE,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,IAAyB;IAC9E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;IAElC,+DAA+D;IAC/D,qEAAqE;IACrE,yDAAyD;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAC;YAC5C,IAAI,MAAM,CAAC,WAAW;gBAAE,UAAU,GAAG,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC;QAC1G,CAAC;QAAC,MAAM,CAAC;YACP,uCAAuC;QACzC,CAAC;QACD,MAAM,CAAC,KAAK,CACV,UAAU,KAAK,CAAC,EAAE,mCAAmC,IAAI,GAAG,UAAU,KAAK;YACzE,SAAS,UAAU,CAAC,gBAAgB,QAAQ,EAAE,CAAC,sCAAsC;YACrF,0DAA0D,CAC7D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CACV,YAAY,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI;YAClE,sBAAsB,IAAI,IAAI;YAC9B,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI;YACvE,oEAAoE;YACpE,qCAAqC,KAAK,CAAC,EAAE,gCAAgC,CAChF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,IAAI,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,iEAAiE;AACjE,mBAAmB;AACnB,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAc;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,oCAAoC,GAAG,IAAI,EAAE,2BAA2B,CAAC,CAAC;IACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,iEAAiE;AACjE,qDAAqD;AACrD,EAAE;AACF,4DAA4D;AAC5D,wEAAwE;AACxE,6CAA6C;AAC7C,EAAE;AACF,2DAA2D;AAC3D,yCAAyC;AACzC,2EAA2E;AAC3E,gEAAgE;AAChE,6CAA6C;AAC7C,mEAAmE;AACnE,gEAAgE;AAChE,0CAA0C;AAE1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACnD,uEAAuE;AACvE,0EAA0E;AAC1E,OAAO,EAAE,mBAAmB,EAAE,IAAI,IAAI,UAAU,EAAmB,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,0BAA0B,CAAC;AAgBnE,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,OAAO,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,MAAM;IACnB,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;IACrC,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,CAAC,KAAK,CACV,gCAAgC,UAAU,CAAC,YAAY,CAAC,mCAAmC,CAC5F,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,sEAAsE;AACtE,oEAAoE;AACpE,sEAAsE;AACtE,+BAA+B;AAC/B,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,KAAa;IACzD,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC9E,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;SAC9C,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CAAC,4BAA4B,QAAQ,uBAAuB,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAa,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,EAAE;QAClD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;KAC9C,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,iCAAiC,OAAO,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAe,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CACV,0BAA0B,QAAQ,uBAAuB;YACvD,qDAAqD,CACxD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qEAAqE;AACrE,8DAA8D;AAC9D,SAAS,gBAAgB,CAAC,SAA8D;IAKtF,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAA4D,CAAC;IAC3G,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAgE;IAMzF,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAK9C,CAAC;IACF,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,wDAAwD;AACxD,KAAK,UAAU,OAAO,CAAC,MAAiB;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAe,EAAE,KAAa,EAAE,KAAc;IACrE,qBAAqB;IACrB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,kBAAkB,CAAC,OAAO,CAAC,uBAAuB,EAAE;QACnG,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAClF,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAqC,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,MAAM,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAgD,CAAC;IAEvG,oCAAoC;IACpC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAEjD,oEAAoE;IACpE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEzD,uDAAuD;IACvD,MAAM,GAAG,GAAG,GAAG,OAAO,cAAc,kBAAkB,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC5B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACjF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;KAChF,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAqC,CAAC;QAC1F,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,iCAAiC,UAAU,CAAC,gBAAgB,OAAO,EAAE,CAAC,8CAA8C;gBAClH,6CAA6C,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAA6B,CAAC;IAEjE,MAAM,MAAM,GAAc;QACxB,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,QAAQ,CAAC,WAAW;YAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;KAClC,CAAC;IACF,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8DAA8D;AAC9D,EAAE;AACF,yEAAyE;AACzE,8BAA8B;AAC9B,qEAAqE;AACrE,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,IAAyB;IAC9E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;IAElC,+DAA+D;IAC/D,qEAAqE;IACrE,yDAAyD;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAC;YAC5C,IAAI,MAAM,CAAC,WAAW;gBAAE,UAAU,GAAG,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC;QAC1G,CAAC;QAAC,MAAM,CAAC;YACP,uCAAuC;QACzC,CAAC;QACD,MAAM,CAAC,KAAK,CACV,UAAU,KAAK,CAAC,EAAE,mCAAmC,IAAI,GAAG,UAAU,KAAK;YACzE,SAAS,UAAU,CAAC,gBAAgB,QAAQ,EAAE,CAAC,sCAAsC;YACrF,0DAA0D,CAC7D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CACV,YAAY,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI;YAClE,sBAAsB,IAAI,IAAI;YAC9B,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI;YACvE,oEAAoE;YACpE,qCAAqC,KAAK,CAAC,EAAE,gCAAgC,CAChF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,IAAI,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,iEAAiE;AACjE,mBAAmB;AACnB,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,sEAAsE;AACtE,EAAE;AACF,kEAAkE;AAClE,sEAAsE;AACtE,mCAAmC;AAEnC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE7E,KAAK,UAAU,YAAY,CAAC,IAAa;IACvC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAa,KAAK,EAAE,YAAY,CAAC,CAAC;IAC1D,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAI;QACN,WAAW,CAAC,CAAC,CAAC;QACd,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7C,KAAK,CAAE,CAA6B,CAAC,UAAU,IAAI,IAAI,CAAC;KACzD,CAAC,CAAC;IACH,UAAU,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,IAAa;IACzD,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC;IAClC,WAAW,CAAC,KAA2C,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,WAA+B,EAAE,IAAa;IAC1F,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,WAAW;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAChD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAW,MAAM,EAAE,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,KAAK,CAAC,cAAc,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,QAAgB,EAAE,MAA8B,EAAE,IAAa;IAC5F,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAW,OAAO,EAAE,cAAc,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7F,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,MAAM,MAAM,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,IAAa;IAC3D,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,GAAG,CAAC,QAAQ,EAAE,cAAc,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,CAAW;IAC9B,IAAK,CAAoC,CAAC,gBAAgB;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtF,IAAK,CAAyB,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpF,IAAK,CAAyB,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/E,OAAO,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAc;IAC3C,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,6CAA6C,CAAC,IAAI,CAAC,CAAC;YACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACpD,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAChG,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,kCAAkC,CAAC,IAAI,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IACD,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IACD,MAAM,CAAC,KAAK,CACV,oCAAoC,GAAG,IAAI,EAAE,MAAM;QACnD,+EAA+E,CAChF,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
package/dist/api.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ export declare const API_URL: string;
2
+ /**
3
+ * Require an auth token or exit with a clear "not signed in" message.
4
+ * Most CLI commands gate on this; the few that don't (--demo style)
5
+ * skip this helper.
6
+ */
7
+ export declare function requireToken(): Promise<string>;
8
+ /**
9
+ * Authenticated REST call. Method-aware. Body auto-JSON-stringified
10
+ * unless explicitly disabled (e.g. for x-www-form-urlencoded paths).
11
+ * Returns parsed JSON on success. On error: prints to stderr (with the
12
+ * actual API reason) and exits 1.
13
+ */
14
+ export declare function api<T = unknown>(method: 'GET' | 'POST' | 'PATCH' | 'DELETE', path: string, opts?: {
15
+ body?: unknown;
16
+ query?: Record<string, string | number | undefined>;
17
+ expectEmpty?: boolean;
18
+ }): Promise<T>;
19
+ /**
20
+ * Pull a global flag value (e.g. --json, --limit 20) from an argv slice.
21
+ * Returns the value as a string (for `--key val` form) or true for
22
+ * standalone (`--flag`). Argv is mutated to remove the consumed tokens
23
+ * so the caller's positional parsing isn't polluted.
24
+ */
25
+ export declare function takeFlag(args: string[], name: string): string | boolean | undefined;
26
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,OAAO,QAAqD,CAAC;AAE1E;;;;GAIG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAOpD;AAED;;;;;GAKG;AACH,wBAAsB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,EAC3C,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GACpG,OAAO,CAAC,CAAC,CAAC,CAuCZ;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAUnF"}
package/dist/api.js ADDED
@@ -0,0 +1,90 @@
1
+ // Shared API helper for every CLI subcommand. Consolidates:
2
+ // - Bearer-token resolution (OAuth from `auth login` or STACK_API_KEY).
3
+ // - JSON parsing with a consistent error envelope (`{error: {code,
4
+ // message}}`).
5
+ // - Friendly error printing — never silent, always shows the API's
6
+ // reason on stderr so the operator can diagnose without re-running
7
+ // with a sniffer.
8
+ //
9
+ // Used by: agent.ts, passports.ts, services.ts, dropoffs.ts, skills.ts,
10
+ // identity.ts, audit.ts, events.ts, team.ts. Anything that hits the
11
+ // REST API should go through here, not bare fetch().
12
+ import { env, stderr, exit } from 'node:process';
13
+ import { getAccessToken, invokeHint, stringifyOAuthError } from './auth.js';
14
+ export const API_URL = env['STACK_API_URL'] ?? 'https://api.getstack.run';
15
+ /**
16
+ * Require an auth token or exit with a clear "not signed in" message.
17
+ * Most CLI commands gate on this; the few that don't (--demo style)
18
+ * skip this helper.
19
+ */
20
+ export async function requireToken() {
21
+ const token = await getAccessToken();
22
+ if (token)
23
+ return token;
24
+ stderr.write(`error: not signed in.\nRun \`${invokeHint('auth login')}\` first, or set STACK_API_KEY.\n`);
25
+ exit(2);
26
+ }
27
+ /**
28
+ * Authenticated REST call. Method-aware. Body auto-JSON-stringified
29
+ * unless explicitly disabled (e.g. for x-www-form-urlencoded paths).
30
+ * Returns parsed JSON on success. On error: prints to stderr (with the
31
+ * actual API reason) and exits 1.
32
+ */
33
+ export async function api(method, path, opts) {
34
+ const token = await requireToken();
35
+ const url = new URL(`${API_URL}${path}`);
36
+ if (opts?.query) {
37
+ for (const [k, v] of Object.entries(opts.query)) {
38
+ if (v !== undefined && v !== null && v !== '')
39
+ url.searchParams.set(k, String(v));
40
+ }
41
+ }
42
+ const headers = { Authorization: `Bearer ${token}` };
43
+ let body;
44
+ if (opts?.body !== undefined) {
45
+ headers['Content-Type'] = 'application/json';
46
+ body = JSON.stringify(opts.body);
47
+ }
48
+ const res = await fetch(url.toString(), { method, headers, body });
49
+ if (res.status === 204 || opts?.expectEmpty) {
50
+ return undefined;
51
+ }
52
+ const text = await res.text();
53
+ let data;
54
+ try {
55
+ data = text ? JSON.parse(text) : undefined;
56
+ }
57
+ catch {
58
+ // Non-JSON body — probably an HTML error page from an intermediary.
59
+ if (!res.ok) {
60
+ stderr.write(`error: API ${res.status}: ${text.slice(0, 200)}\n`);
61
+ exit(1);
62
+ }
63
+ return text;
64
+ }
65
+ if (!res.ok) {
66
+ const reason = stringifyOAuthError(data);
67
+ stderr.write(`error: API ${res.status} ${method} ${path}: ${reason}\n`);
68
+ exit(1);
69
+ }
70
+ return data;
71
+ }
72
+ /**
73
+ * Pull a global flag value (e.g. --json, --limit 20) from an argv slice.
74
+ * Returns the value as a string (for `--key val` form) or true for
75
+ * standalone (`--flag`). Argv is mutated to remove the consumed tokens
76
+ * so the caller's positional parsing isn't polluted.
77
+ */
78
+ export function takeFlag(args, name) {
79
+ const idx = args.indexOf(name);
80
+ if (idx === -1)
81
+ return undefined;
82
+ const next = args[idx + 1];
83
+ if (!next || next.startsWith('--')) {
84
+ args.splice(idx, 1);
85
+ return true;
86
+ }
87
+ args.splice(idx, 2);
88
+ return next;
89
+ }
90
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function cmdAudit(args: string[]): Promise<void>;
2
+ //# sourceMappingURL=audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAgEA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAa5D"}
package/dist/audit.js ADDED
@@ -0,0 +1,69 @@
1
+ // audit subcommands (non-tail). Use `monitor --follow` for live tail.
2
+ import { stdout, stderr, exit } from 'node:process';
3
+ import { api, takeFlag } from './api.js';
4
+ import { invokeHint } from './auth.js';
5
+ import { printJson, printTable, printRecord, fmt, fmtTs } from './format.js';
6
+ async function cmdList(args, json) {
7
+ const limit = takeFlag(args, '--limit');
8
+ const agentId = takeFlag(args, '--agent');
9
+ const out = await api('GET', '/v1/audit', {
10
+ query: {
11
+ limit: typeof limit === 'string' ? limit : '20',
12
+ agent_id: typeof agentId === 'string' ? agentId : undefined,
13
+ },
14
+ });
15
+ const list = Array.isArray(out) ? out : (out?.entries ?? []);
16
+ if (json)
17
+ return printJson(list);
18
+ if (list.length === 0) {
19
+ stdout.write('(no audit entries)\n');
20
+ return;
21
+ }
22
+ const rows = list.map((e) => [
23
+ fmtTs(e.timestamp),
24
+ e.layer ?? '—',
25
+ e.action ?? '—',
26
+ outcomeBadge(e.outcome),
27
+ e.error_message ?? '',
28
+ ]);
29
+ printTable(['TIME', 'LAYER', 'ACTION', 'OUTCOME', 'ERROR'], rows);
30
+ }
31
+ async function cmdChainHead(json) {
32
+ const out = await api('GET', '/v1/audit/chain-head');
33
+ if (json)
34
+ return printJson(out);
35
+ printRecord(out);
36
+ }
37
+ async function cmdVerifyChain(args, json) {
38
+ const limit = takeFlag(args, '--limit');
39
+ const out = await api('GET', '/v1/audit/verify-chain', {
40
+ query: { limit: typeof limit === 'string' ? limit : undefined },
41
+ });
42
+ if (json)
43
+ return printJson(out);
44
+ printRecord(out);
45
+ }
46
+ function outcomeBadge(o) {
47
+ if (o === 'success')
48
+ return fmt.ok('success');
49
+ if (o === 'failure' || o === 'blocked')
50
+ return fmt.err(o);
51
+ if (o === 'warning')
52
+ return fmt.warn(o);
53
+ return o ?? '—';
54
+ }
55
+ export async function cmdAudit(args) {
56
+ const json = !!takeFlag(args, '--json');
57
+ const sub = args[0];
58
+ if (sub === 'list' || sub === 'ls' || sub === 'tail')
59
+ return cmdList(args.slice(1), json);
60
+ if (sub === 'chain-head' || sub === 'head')
61
+ return cmdChainHead(json);
62
+ if (sub === 'verify-chain' || sub === 'verify')
63
+ return cmdVerifyChain(args.slice(1), json);
64
+ stderr.write(`error: unknown audit subcommand "${sub ?? ''}".\n` +
65
+ `Use list | chain-head | verify-chain\n` +
66
+ `For live tail, use \`${invokeHint('monitor --follow')}\`.\n`);
67
+ exit(2);
68
+ }
69
+ //# sourceMappingURL=audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function cmdDropoff(args: string[]): Promise<void>;
2
+ //# sourceMappingURL=dropoffs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropoffs.d.ts","sourceRoot":"","sources":["../src/dropoffs.ts"],"names":[],"mappings":"AA+GA,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC9D"}
@@ -0,0 +1,140 @@
1
+ // dropoffs subcommands.
2
+ //
3
+ // Drop-offs are point-to-point schema-validated handoffs between agents.
4
+ // Schema files passed via --schema must be a path to a JSON file; the
5
+ // CLI reads + parses it before POSTing.
6
+ import { stdout, stderr, exit } from 'node:process';
7
+ import { readFile } from 'node:fs/promises';
8
+ import { api, takeFlag } from './api.js';
9
+ import { invokeHint } from './auth.js';
10
+ import { printJson, printTable, printRecord, fmt, fmtTs } from './format.js';
11
+ async function readJsonFile(path) {
12
+ const raw = await readFile(path, 'utf8');
13
+ return JSON.parse(raw);
14
+ }
15
+ async function cmdList(json) {
16
+ const list = await api('GET', '/v1/dropoffs');
17
+ if (json)
18
+ return printJson(list);
19
+ if (list.length === 0) {
20
+ stdout.write('(no drop-offs)\n');
21
+ return;
22
+ }
23
+ const rows = list.map((d) => [d.id, d.from_agent_id, d.to_agent_id, statusBadge(d.status), fmtTs(d.created_at), fmtTs(d.expires_at)]);
24
+ printTable(['ID', 'FROM', 'TO', 'STATUS', 'CREATED', 'EXPIRES'], rows);
25
+ }
26
+ async function cmdShow(id, json) {
27
+ const out = await api('GET', `/v1/dropoffs/${encodeURIComponent(id)}`);
28
+ if (json)
29
+ return printJson(out);
30
+ printRecord(out);
31
+ }
32
+ async function cmdCreate(args, json) {
33
+ const from = takeFlag(args, '--from');
34
+ const to = takeFlag(args, '--to');
35
+ const schemaPath = takeFlag(args, '--schema');
36
+ const ttl = takeFlag(args, '--ttl');
37
+ const onExpire = takeFlag(args, '--on-expire');
38
+ if (typeof from !== 'string' || typeof to !== 'string' || typeof schemaPath !== 'string') {
39
+ stderr.write(`usage: ${invokeHint('dropoff create --from <agent-id> --to <agent-id> --schema <file.json> [--ttl <seconds>] [--on-expire notify|retry|fail]')}\n`);
40
+ exit(2);
41
+ }
42
+ const schema = await readJsonFile(schemaPath);
43
+ const body = {
44
+ from_agent_id: from,
45
+ to_agent_id: to,
46
+ schema,
47
+ };
48
+ if (typeof ttl === 'string')
49
+ body.ttl_seconds = parseInt(ttl, 10);
50
+ if (typeof onExpire === 'string')
51
+ body.on_expire = onExpire;
52
+ const out = await api('POST', '/v1/dropoffs', { body });
53
+ if (json)
54
+ return printJson(out);
55
+ stdout.write(`created ${out.id}\n from ${out.from_agent_id} → ${out.to_agent_id}\n expires ${fmtTs(out.expires_at)}\n`);
56
+ }
57
+ async function cmdDeposit(id, args, json) {
58
+ const agentId = takeFlag(args, '--agent');
59
+ const payloadPath = takeFlag(args, '--payload');
60
+ if (typeof agentId !== 'string' || typeof payloadPath !== 'string') {
61
+ stderr.write(`usage: ${invokeHint('dropoff deposit <id> --agent <agent-id> --payload <file.json>')}\n`);
62
+ exit(2);
63
+ }
64
+ const payload = await readJsonFile(payloadPath);
65
+ const out = await api('POST', `/v1/dropoffs/${encodeURIComponent(id)}/deposit`, {
66
+ body: { agent_id: agentId, payload },
67
+ });
68
+ if (json)
69
+ return printJson(out);
70
+ stdout.write(`deposited to ${id}\n`);
71
+ }
72
+ async function cmdCollect(id, args, json) {
73
+ const agentId = takeFlag(args, '--agent');
74
+ if (typeof agentId !== 'string') {
75
+ stderr.write(`usage: ${invokeHint('dropoff collect <id> --agent <agent-id>')}\n`);
76
+ exit(2);
77
+ }
78
+ const out = await api('POST', `/v1/dropoffs/${encodeURIComponent(id)}/collect`, {
79
+ body: { agent_id: agentId },
80
+ });
81
+ if (json)
82
+ return printJson(out);
83
+ stdout.write(JSON.stringify(out.payload, null, 2) + '\n');
84
+ }
85
+ async function cmdExpire(id, json) {
86
+ const out = await api('POST', `/v1/dropoffs/${encodeURIComponent(id)}/expire`);
87
+ if (json)
88
+ return printJson(out);
89
+ stdout.write(`expired ${id}\n`);
90
+ }
91
+ function statusBadge(s) {
92
+ if (s === 'collected')
93
+ return fmt.ok(s);
94
+ if (s === 'expired')
95
+ return fmt.dim(s);
96
+ if (s === 'deposited')
97
+ return fmt.warn(s);
98
+ return s;
99
+ }
100
+ export async function cmdDropoff(args) {
101
+ const json = !!takeFlag(args, '--json');
102
+ const sub = args[0];
103
+ const arg1 = args[1];
104
+ if (sub === 'list' || sub === 'ls')
105
+ return cmdList(json);
106
+ if (sub === 'show' || sub === 'status') {
107
+ if (!arg1) {
108
+ stderr.write(`usage: ${invokeHint('dropoff show <id>')}\n`);
109
+ exit(2);
110
+ }
111
+ return cmdShow(arg1, json);
112
+ }
113
+ if (sub === 'create')
114
+ return cmdCreate(args.slice(1), json);
115
+ if (sub === 'deposit') {
116
+ if (!arg1) {
117
+ stderr.write(`usage: ${invokeHint('dropoff deposit <id> --agent <agent-id> --payload <file.json>')}\n`);
118
+ exit(2);
119
+ }
120
+ return cmdDeposit(arg1, args.slice(2), json);
121
+ }
122
+ if (sub === 'collect') {
123
+ if (!arg1) {
124
+ stderr.write(`usage: ${invokeHint('dropoff collect <id> --agent <agent-id>')}\n`);
125
+ exit(2);
126
+ }
127
+ return cmdCollect(arg1, args.slice(2), json);
128
+ }
129
+ if (sub === 'expire') {
130
+ if (!arg1) {
131
+ stderr.write(`usage: ${invokeHint('dropoff expire <id>')}\n`);
132
+ exit(2);
133
+ }
134
+ return cmdExpire(arg1, json);
135
+ }
136
+ stderr.write(`error: unknown dropoff subcommand "${sub ?? ''}".\n` +
137
+ `Use list | show | create | deposit | collect | expire\n`);
138
+ exit(2);
139
+ }
140
+ //# sourceMappingURL=dropoffs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropoffs.js","sourceRoot":"","sources":["../src/dropoffs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function cmdEvent(args: string[]): Promise<void>;
2
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAgEA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB5D"}