@pidgeon-ai/cli 2.1.0 → 2.2.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.2.0
4
+
5
+ - `pidgeon webhooks create --inbox <id>`: the endpoint hears only that
6
+ inbox's events; `webhooks list` shows an endpoint's inboxes.
7
+
3
8
  ## 2.1.0
4
9
 
5
10
  - Email: `pidgeon mail list|read|wait`, `pidgeon search`, `pidgeon threads
package/dist/cli.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const VERSION = "2.1.0";
1
+ export declare const VERSION = "2.2.0";
2
2
  export type Io = {
3
3
  out: (line: string) => void;
4
4
  err: (line: string) => void;
package/dist/cli.js CHANGED
@@ -9,7 +9,7 @@
9
9
  import { parseArgs } from 'node:util';
10
10
  import { PidgeonError } from '@pidgeon-ai/sdk';
11
11
  import { addAgentKey, baseUrlOf, clientFromEnvironment, listAgentKeys, makeKeyProof, readSession, setUpAgent, signIn, signOut, } from '@pidgeon-ai/sdk/node';
12
- export const VERSION = '2.1.0';
12
+ export const VERSION = '2.2.0';
13
13
  const HELP = `pidgeon ${VERSION}: Pidgeon from a terminal.
14
14
 
15
15
  Signing in
@@ -62,7 +62,7 @@ Email
62
62
 
63
63
  The account
64
64
  pidgeon events [--type <type>] [--limit <n>]
65
- pidgeon webhooks list | create <url> --event <type>... | remove <webhook-id>
65
+ pidgeon webhooks list | create <url> --event <type>... [--inbox <id>] | remove <webhook-id>
66
66
  pidgeon api <GET|POST|PATCH|DELETE> <path> [--data <json>] any /v1 call
67
67
 
68
68
  Add --json to any command for the API's own JSON.`;
@@ -562,13 +562,14 @@ async function dispatch(positionals, values, io) {
562
562
  if (sub === 'list') {
563
563
  const list = await pidgeon.webhooks.list();
564
564
  show(list, () => list.data.length
565
- ? list.data.map((h) => `${h.id} ${h.url} ${h.events.join(', ')}`)
565
+ ? list.data.map((h) => `${h.id} ${h.url} ${h.events.join(', ')}${h.inbox_ids ? ` (inboxes: ${h.inbox_ids.join(', ')})` : ''}`)
566
566
  : ['No webhooks.']);
567
567
  }
568
568
  else if (sub === 'create') {
569
569
  const made = await pidgeon.webhooks.create({
570
570
  url: need(arg, 'url (https)'),
571
571
  events: values.event ?? [],
572
+ ...(values.inbox ? { inboxIds: [values.inbox] } : {}),
572
573
  });
573
574
  show(made, () => [`Made ${made.id}. Secret, shown once: ${made.secret}`]);
574
575
  }
@@ -577,7 +578,7 @@ async function dispatch(positionals, values, io) {
577
578
  show({ removed: arg }, () => ['Removed.']);
578
579
  }
579
580
  else
580
- throw new Usage('pidgeon webhooks list | create <url> --event <type>... | remove <id>');
581
+ throw new Usage('pidgeon webhooks list | create <url> --event <type>... [--inbox <id>] | remove <id>');
581
582
  return;
582
583
  }
583
584
  case 'events': {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pidgeon-ai/cli",
3
- "version": "2.1.0",
3
+ "version": "2.2.0",
4
4
  "description": "Pidgeon from a terminal: sign in, set agents up with keys made on your machine, and send from their inboxes.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -36,7 +36,7 @@
36
36
  "LICENSE"
37
37
  ],
38
38
  "dependencies": {
39
- "@pidgeon-ai/sdk": "^2.1.1"
39
+ "@pidgeon-ai/sdk": "^2.2.0"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/node": "^24.10.1",