@inboxychat/cli 0.1.0 → 0.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/README.md CHANGED
@@ -1,34 +1,51 @@
1
- # @inboxychat/cli — `inboxy` (read-only)
1
+ # @inboxychat/cli — `inboxy`
2
2
 
3
3
  A command line for agencies and support: check a key, read orders, contacts and
4
- usage, and diagnose a setup. It uses only the public API v1
5
- (`/api/v1/public`) and never writes.
4
+ usage, and diagnose a setup. It supports public reads and audited, explicitly confirmed operation adapters.
6
5
 
7
- Status: local package (plan task API-04). Not published to npm.
6
+ Published on npm as [`@inboxychat/cli`](https://www.npmjs.com/package/@inboxychat/cli).
7
+ Full guide (English and Arabic): https://inboxy.chat/developers/cli
8
8
 
9
- ## Install (local)
9
+ ## Install
10
+
11
+ Needs Node.js 20.3 or newer.
12
+
13
+ ```bash
14
+ npm i -g @inboxychat/cli
15
+ inboxy --version
16
+ # or without installing:
17
+ npx -y -p @inboxychat/cli inboxy --help
18
+ ```
19
+
20
+ Create the key in the Inboxy dashboard as a company admin (Developers → API,
21
+ `/developer-center/api`), with only the scopes you need
22
+ (`orders:read`, `contacts:read`, `analytics:read`, ...) and an expiry.
23
+
24
+ ### From this repository
10
25
 
11
26
  ```bash
12
27
  pnpm install
13
28
  pnpm --filter @inboxychat/cli build # builds the SDK too
14
29
  node packages/inboxy-cli/dist/bin.js --help
15
- # optional: alias inboxy="node $PWD/packages/inboxy-cli/dist/bin.js"
16
30
  ```
17
31
 
18
32
  ## Sign in
19
33
 
20
34
  ```bash
21
- inboxy auth login # paste the key at the hidden prompt
22
- pbpaste | inboxy auth login # or pipe it (keeps it out of shell history)
35
+ inboxy auth login # browser approval on a terminal
36
+ pbpaste | inboxy auth login # or pipe a key (not a TTY; stays out of shell history)
23
37
  inboxy auth login --profile client-a # one profile per company (agencies)
24
38
  inboxy auth status # where the key comes from + is it accepted
25
39
  inboxy auth logout --profile client-a
26
40
  ```
27
41
 
28
- The key is read from stdin, never from a command-line argument: `inboxy auth login <key>`
29
- or a `--key` / `--token` / `--api-key` flag on any command is refused (exit 2) without
30
- echoing what was typed. It is stored in
31
- the OS keychain (macOS Keychain via `security`, Linux Secret Service via
42
+ On a terminal, `inboxy auth login` opens Inboxy in the browser. You approve the
43
+ code, and the CLI stores the API key that approval mints. The key is never a
44
+ command-line argument: `inboxy auth login <key>` or a `--key` / `--token` /
45
+ `--api-key` flag on any command is refused (exit 2) without echoing what was
46
+ typed. When stdin is not a terminal, the same command reads a key from the pipe instead.
47
+
48
+ It is stored in the OS keychain (macOS Keychain via `security`, Linux Secret Service via
32
49
  `secret-tool`; the secret goes to those tools on stdin, not argv). Without a
33
50
  keychain (or with `--store file`) it goes into the config file with mode `0600`
34
51
  in a `0700` directory; a config file other users can read is refused.
@@ -119,3 +136,44 @@ scopes, expiry, refused key, unreachable URL). `test/cli.inprocess.test.ts`
119
136
  covers the keychain path with a fake keychain and redaction of a key echoed by
120
137
  the server. The macOS Keychain adapter was also checked once by hand with a
121
138
  throwaway entry (store, update, read, delete).
139
+
140
+ ## Audited operations
141
+
142
+ `inboxy operations list` and `operations inspect <id>` expose the same 80 schemas
143
+ as the SDK and MCP. `operations preview <id> --input '<json>' --idempotency-key
144
+ <unique-key>` validates locally without credentials or network access. Review the
145
+ payload and warning, then explicitly approve with `operations run <id> --input
146
+ '<same-json>' --idempotency-key <same-key> --confirm <preview-hash>`.
147
+ Use `--json` for structured output. Do not put sensitive input in shell history;
148
+ call the SDK directly when inputs contain private material. A changed payload or
149
+ key invalidates confirmation. No automatic retry occurs. Existing API scopes,
150
+ roles and tenant isolation apply. This is bounded coverage, not full UI parity;
151
+ see [SDK operation boundaries](../inboxy-sdk/README.md#audited-operation-adapters).
152
+
153
+
154
+ ### Expanded operation coverage
155
+
156
+ The source catalog now has 80 operations (553 discovery routes). Added inbox
157
+ assignment/status/labels/internal notes; separate one-message text sending;
158
+ reviewed AI text knowledge and channel assignments; manual orders, state/payment/
159
+ fulfillment records; product/category creation and updates. Inspect the catalog
160
+ for exact schemas. Media/templates/bulk sends, scheduling, order cancellation/
161
+ refunds, URL/file knowledge ingestion and complete automation coverage remain out
162
+ of scope. Orders may trigger configured automation; payment-record changes do not
163
+ charge a payment provider.
164
+
165
+ For a send, preview `inbox.message.send` with `conversationId`, `target` containing
166
+ `contactId`, `channelId`, `channelType` (uppercase enum), and `body.content`.
167
+ Inspect the conversation first and approve the exact recipient, channel and full
168
+ text. CLI uses `messages send --input <same-json> --idempotency-key <same-key>
169
+ --confirm <hash>`; MCP uses the separate `message_send` tool with identical input,
170
+ idempotencyKey and confirmation. Generic operation execution in CLI/MCP refuses
171
+ sends. The SDK dispatch includes a confirmed-target header, validated against the
172
+ current tenant conversation before send; a mismatch requires a new inspection and
173
+ approval. Stable clientMessageId supplements the existing idempotency middleware.
174
+
175
+ The lifecycle slice adds contact status/stage/assignment/internal notes, tag management and bounded flat custom-field replacement. It adds automation graph/run inspection, inactive draft creation and pause, plus campaign audience estimation, pause and cancel. Tag changes may trigger configured automations. Automation graph editing/publish remain unavailable; a preview estimate does not authorize scheduling.
176
+
177
+ Workflow activation: first execute `automations.activation.preview`, show the entire returned preview, then pass it unchanged as `body.approval` to `automations.activate` with an exact confirmation and idempotency key. The server rechecks tenant, published version/hash, complete preview and workflow revision in a transaction. MCP uses `lifecycle_activate`; CLI uses `lifecycle activate <operation>`. The generic operation runner refuses activate effects, including AI publish/channel changes. `automations.simulate` uses existing dry services and skips external side effects.
178
+
179
+ Campaign delivery uses `campaigns.approval` to resolve a complete snapshot (audience, sender, template/content, limits and exact time). Pass that unchanged in `body.approval` to `campaigns.send`, `campaigns.resume` or `campaigns.schedule`, preview locally, then obtain explicit approval. MCP requires `campaign_send` or `campaign_schedule`; CLI requires `campaigns send <operation>` or `campaigns schedule`. The server freezes approval and checks it again before delivery. These actions can send real customer messages and consume budget. Keep the same idempotency key for recovery. Version 0.2.0 is prepared locally; publication and API deployment are separate release steps.
package/dist/bin.js CHANGED
@@ -1,5 +1,23 @@
1
1
  #!/usr/bin/env node
2
+ import { spawn } from 'node:child_process';
2
3
  import { runCli } from './cli.js';
4
+ /** Opens an http(s) URL in the OS browser. Argument array only — no shell. */
5
+ function openBrowser(url) {
6
+ let parsed;
7
+ try {
8
+ parsed = new URL(url);
9
+ }
10
+ catch {
11
+ return;
12
+ }
13
+ if (parsed.protocol !== 'https:' && parsed.protocol !== 'http:')
14
+ return;
15
+ const command = process.platform === 'darwin' ? 'open' : process.platform === 'win32' ? 'cmd' : 'xdg-open';
16
+ const args = process.platform === 'win32' ? ['/c', 'start', '', url] : [url];
17
+ const child = spawn(command, args, { stdio: 'ignore', detached: true, windowsHide: true });
18
+ child.on('error', () => undefined);
19
+ child.unref();
20
+ }
3
21
  async function readAll(stream) {
4
22
  let data = '';
5
23
  stream.setEncoding('utf8');
@@ -44,6 +62,8 @@ const io = {
44
62
  stdout: (t) => process.stdout.write(t),
45
63
  stderr: (t) => process.stderr.write(t),
46
64
  readSecret: (prompt) => (process.stdin.isTTY ? promptHidden(prompt) : readAll(process.stdin)),
65
+ interactive: Boolean(process.stdin.isTTY),
66
+ openUrl: openBrowser,
47
67
  env: process.env,
48
68
  now: () => Date.now(),
49
69
  };
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { type Keychain } from '@inboxychat/sdk';
2
2
  import { type CliIO } from './output.js';
3
- export declare const CLI_VERSION = "0.1.0";
3
+ export declare const CLI_VERSION = "0.2.0";
4
4
  export interface CliDeps {
5
5
  /** Override the OS keychain (tests); undefined = detect, null = none. */
6
6
  keychain?: Keychain | null;
@@ -12,5 +12,6 @@ export declare const LOCAL_COMMANDS: readonly ["auth login", "auth logout", "aut
12
12
  * apps/api/src/lib/capabilities). A command without one is not offered.
13
13
  */
14
14
  export declare const DATA_COMMANDS: string[];
15
+ export declare const OPERATION_COMMANDS: readonly ["operations list", "operations inspect", "operations preview", "operations run", "messages send", "lifecycle activate", "campaigns send", "campaigns schedule"];
15
16
  export declare function runCli(argv: string[], io: CliIO, deps?: CliDeps): Promise<number>;
16
17
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AASA,OAAO,EAqBL,KAAK,QAAQ,EAKd,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAmC,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,WAAW,UAAU,CAAC;AAwDnC,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC5B;AA6DD,gFAAgF;AAChF,eAAO,MAAM,cAAc,iEAAkE,CAAC;AAE9F;;;GAGG;AACH,eAAO,MAAM,aAAa,UAEzB,CAAC;AAcF,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,GAAE,OAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAub3F"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AASA,OAAO,EAuBL,KAAK,QAAQ,EAKd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAmC,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,WAAW,UAAU,CAAC;AAmEnC,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC5B;AA6DD,gFAAgF;AAChF,eAAO,MAAM,cAAc,iEAAkE,CAAC;AAE9F;;;GAGG;AACH,eAAO,MAAM,aAAa,UAEzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,2KASrB,CAAC;AAaX,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,GAAE,OAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CA6f3F"}
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The `inboxy` command line (local, read-only).
2
+ * The `inboxy` command line (local, scoped).
3
3
  *
4
4
  * Inputs are parsed with node:util parseArgs and only ever reach the network
5
5
  * as validated, percent-encoded path segments or URLSearchParams values.
@@ -7,16 +7,17 @@
7
7
  * tools, started with argument arrays by @inboxychat/sdk.
8
8
  */
9
9
  import { parseArgs } from 'node:util';
10
- import { CONTACT_STATUSES, FULFILLMENT_STATUSES, InboxyClient, InboxyError, LIFECYCLE_STAGES, ORDER_SOURCES, ORDER_STATUSES, PAGE_LIMIT_MAX, PAYMENT_STATUSES, PUBLIC_CAPABILITIES, collectPages, loadConfig, looksLikeInboxyKey, normalizeBaseUrl, resolveCredentials, saveConfig, systemKeychain, validateProfileName, } from '@inboxychat/sdk';
10
+ import { describeOperations, prepareOperation, CONTACT_STATUSES, FULFILLMENT_STATUSES, InboxyClient, InboxyError, LIFECYCLE_STAGES, ORDER_SOURCES, ORDER_STATUSES, PAGE_LIMIT_MAX, PAYMENT_STATUSES, PUBLIC_CAPABILITIES, collectPages, loadConfig, looksLikeInboxyKey, normalizeBaseUrl, resolveCredentials, saveConfig, systemKeychain, validateProfileName, } from '@inboxychat/sdk';
11
+ import { loginWithDeviceFlow } from './device-login.js';
11
12
  import { runDoctor } from './doctor.js';
12
13
  import { EXIT, Output, UsageError, table } from './output.js';
13
- export const CLI_VERSION = '0.1.0';
14
- const HELP = `inboxy ${CLI_VERSION} — read-only command line for the Inboxy public API
14
+ export const CLI_VERSION = '0.2.0';
15
+ const HELP = `inboxy ${CLI_VERSION} — scoped command line for Inboxy
15
16
 
16
17
  Usage: inboxy <command> [options]
17
18
 
18
19
  Account
19
- auth login [--store keychain|file] [--no-verify] Store an API key (read from stdin or a hidden prompt)
20
+ auth login [--store keychain|file] [--no-verify] Sign in (browser on a terminal; a key on stdin otherwise)
20
21
  auth logout Remove the stored key of the profile
21
22
  auth status [--offline] Where the key comes from, and whether Inboxy accepts it
22
23
  whoami Company, key name, scopes, expiry, rate limits
@@ -31,6 +32,17 @@ Data
31
32
  orders get <id>
32
33
  contacts search [text] [paging] --status --stage --tags <ids> --created-after --created-before
33
34
 
35
+ Operations
36
+ operations list
37
+ operations inspect <operation>
38
+ operations preview <operation> --input <json> --idempotency-key <key>
39
+ operations run <operation> --input <json> --idempotency-key <key> --confirm <preview-hash>
40
+ campaigns send <operation> --input <json> --idempotency-key <key> --confirm <preview-hash>
41
+ campaigns schedule --input <json> --idempotency-key <key> --confirm <preview-hash>
42
+ lifecycle activate <operation> --input <json> --idempotency-key <key> --confirm <preview-hash>
43
+ messages send --input <json> --idempotency-key <key> --confirm <preview-hash>
44
+ Mutations need explicit approval of the exact preview. No automatic retries.
45
+
34
46
  Paging
35
47
  --limit <1-${PAGE_LIMIT_MAX}> --cursor <nextCursor> --all [--max-pages <n>, default 10]
36
48
 
@@ -45,7 +57,7 @@ Credentials: INBOXY_API_KEY, else the OS keychain entry written by \`auth login\
45
57
  else (machines without a keychain) the 0600 config file. The key is never printed.
46
58
  Exit codes: 0 ok, 2 usage, 3 config, 4 key refused, 5 forbidden, 6 not found,
47
59
  7 rate limited, 8 network/timeout, 9 server, 10 doctor checks failed, 1 unexpected.`;
48
- const KEY_ON_COMMAND_LINE = 'The API key is never passed as an argument (it would stay in shell history). Run `inboxy auth login` and type it at the hidden prompt, or pipe it: `pbpaste | inboxy auth login`.';
60
+ const KEY_ON_COMMAND_LINE = 'The API key is never passed as an argument (it would stay in shell history). On a terminal, `inboxy auth login` opens the browser. Otherwise paste it at the hidden prompt, or pipe it: `pbpaste | inboxy auth login`.';
49
61
  const GLOBAL_OPTIONS = {
50
62
  json: { type: 'boolean' },
51
63
  profile: { type: 'string' },
@@ -121,7 +133,17 @@ export const LOCAL_COMMANDS = ['auth login', 'auth logout', 'auth status', 'doct
121
133
  * apps/api/src/lib/capabilities). A command without one is not offered.
122
134
  */
123
135
  export const DATA_COMMANDS = PUBLIC_CAPABILITIES.flatMap((c) => c.cliCommand ? [c.cliCommand] : []);
124
- const COMMANDS = new Set([...LOCAL_COMMANDS, ...DATA_COMMANDS]);
136
+ export const OPERATION_COMMANDS = [
137
+ 'operations list',
138
+ 'operations inspect',
139
+ 'operations preview',
140
+ 'operations run',
141
+ 'messages send',
142
+ 'lifecycle activate',
143
+ 'campaigns send',
144
+ 'campaigns schedule',
145
+ ];
146
+ const COMMANDS = new Set([...LOCAL_COMMANDS, ...DATA_COMMANDS, ...OPERATION_COMMANDS]);
125
147
  function matchCommand(words) {
126
148
  if (words.length >= 2 && COMMANDS.has(`${words[0]} ${words[1]}`)) {
127
149
  return { name: `${words[0]} ${words[1]}`, positionals: [] };
@@ -154,7 +176,18 @@ export async function runCli(argv, io, deps = {}) {
154
176
  }
155
177
  const extra = {};
156
178
  const name = matched.name;
157
- if (name === 'orders list') {
179
+ if (name.startsWith('operations ') ||
180
+ name === 'messages send' ||
181
+ name === 'lifecycle activate' ||
182
+ name === 'campaigns send' ||
183
+ name === 'campaigns schedule') {
184
+ Object.assign(extra, {
185
+ input: { type: 'string' },
186
+ 'idempotency-key': { type: 'string' },
187
+ confirm: { type: 'string' },
188
+ });
189
+ }
190
+ else if (name === 'orders list') {
158
191
  Object.assign(extra, PAGING_OPTIONS, {
159
192
  status: { type: 'string' },
160
193
  'payment-status': { type: 'string' },
@@ -238,6 +271,51 @@ export async function runCli(argv, io, deps = {}) {
238
271
  throw new UsageError(KEY_ON_COMMAND_LINE);
239
272
  throw new UsageError(`Unexpected argument "${positionals[0]}".`);
240
273
  };
274
+ if (name.startsWith('operations ') ||
275
+ name === 'messages send' ||
276
+ name === 'lifecycle activate' ||
277
+ name === 'campaigns send' ||
278
+ name === 'campaigns schedule') {
279
+ if (name === 'operations list') {
280
+ noPositionals();
281
+ return out.success(describeOperations(), undefined, () => JSON.stringify(describeOperations(), null, 2));
282
+ }
283
+ if (positionals.length !== (['messages send', 'campaigns schedule'].includes(name) ? 0 : 1))
284
+ throw new UsageError('Supply one operation id, or use messages send with --input.');
285
+ const operation = name === 'messages send'
286
+ ? 'inbox.message.send'
287
+ : name === 'campaigns schedule'
288
+ ? 'campaigns.schedule'
289
+ : positionals[0];
290
+ if (name === 'operations inspect') {
291
+ const descriptor = describeOperations().find((op) => op.id === operation);
292
+ if (!descriptor)
293
+ throw new UsageError('Unknown operation.');
294
+ return out.success(descriptor, undefined, () => JSON.stringify(descriptor, null, 2));
295
+ }
296
+ let input;
297
+ try {
298
+ input = JSON.parse(typeof opts.input === 'string' ? opts.input : '{}');
299
+ }
300
+ catch {
301
+ throw new UsageError('--input must be valid JSON.');
302
+ }
303
+ const idempotencyKey = opts['idempotency-key'];
304
+ const preview = prepareOperation(operation, input, idempotencyKey);
305
+ if (name === 'operations preview')
306
+ return out.success(preview, undefined, () => JSON.stringify(preview, null, 2));
307
+ if (name === 'campaigns send' && !['campaigns.send', 'campaigns.resume'].includes(operation))
308
+ throw new UsageError('Only campaigns.send and campaigns.resume are accepted.');
309
+ if (name === 'lifecycle activate' && preview.effect !== 'activate')
310
+ throw new UsageError('Only activate-effect operations are accepted.');
311
+ if (name === 'operations run' && ['send', 'activate', 'schedule'].includes(preview.effect))
312
+ throw new UsageError('Use messages send, lifecycle activate, campaigns send or campaigns schedule after explicit approval of the exact preview.');
313
+ const result = await clientFrom(await credentials()).executeOperation(operation, input, {
314
+ idempotencyKey,
315
+ confirmation: opts.confirm,
316
+ });
317
+ return out.success(result, undefined, () => JSON.stringify(result, null, 2));
318
+ }
241
319
  switch (name) {
242
320
  // ------------------------------------------------------------------
243
321
  case 'whoami': {
@@ -438,7 +516,15 @@ export async function runCli(argv, io, deps = {}) {
438
516
  throw new UsageError('--store must be keychain or file.');
439
517
  }
440
518
  const apiUrl = normalizeBaseUrl(opts.url ?? io.env.INBOXY_API_URL ?? 'https://api.inboxy.chat');
441
- const key = (await io.readSecret('Inboxy API key (input hidden): ')).trim();
519
+ const key = io.interactive
520
+ ? await loginWithDeviceFlow(apiUrl, {
521
+ stderr: (text) => io.stderr(text),
522
+ openUrl: io.openUrl,
523
+ sleep: io.sleep,
524
+ fetch: io.fetch,
525
+ now: () => io.now(),
526
+ })
527
+ : (await io.readSecret('Inboxy API key (input hidden): ')).trim();
442
528
  activeKey = key;
443
529
  if (!key)
444
530
  throw new UsageError('No API key received on stdin.');
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export interface DeviceLoginIO {
2
+ stderr(text: string): void;
3
+ openUrl?(url: string): Promise<void> | void;
4
+ sleep?(ms: number): Promise<void>;
5
+ fetch?: typeof fetch;
6
+ now(): number;
7
+ }
8
+ export declare function loginWithDeviceFlow(apiUrl: string, io: DeviceLoginIO): Promise<string>;
9
+ //# sourceMappingURL=device-login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-login.d.ts","sourceRoot":"","sources":["../src/device-login.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5C,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,IAAI,MAAM,CAAC;CACf;AAwFD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CA+H5F"}
@@ -0,0 +1,214 @@
1
+ /**
2
+ * Browser sign-in for `inboxy auth login` on a TTY.
3
+ *
4
+ * Starts a device flow, opens the approve page, and polls until the dashboard
5
+ * mints one API key. The key is returned to the caller and never printed.
6
+ */
7
+ import { InboxyError, kindForStatus } from '@inboxychat/sdk';
8
+ const MAX_WAIT_MS = 15 * 60 * 1000;
9
+ const MAX_POLLS = 200;
10
+ function sleep(ms) {
11
+ return new Promise((resolve) => setTimeout(resolve, ms));
12
+ }
13
+ function isHttpUrl(value) {
14
+ try {
15
+ const url = new URL(value);
16
+ return url.protocol === 'https:' || url.protocol === 'http:';
17
+ }
18
+ catch {
19
+ return false;
20
+ }
21
+ }
22
+ function stringField(body, key) {
23
+ const value = body[key];
24
+ return typeof value === 'string' ? value : '';
25
+ }
26
+ function numberField(body, key) {
27
+ const value = body[key];
28
+ return typeof value === 'number' && Number.isFinite(value) ? value : null;
29
+ }
30
+ function errorCode(body) {
31
+ if (typeof body.error === 'string')
32
+ return body.error;
33
+ if (body.error && typeof body.error === 'object') {
34
+ const code = body.error.code;
35
+ if (typeof code === 'string')
36
+ return code;
37
+ }
38
+ return '';
39
+ }
40
+ function errorMessage(body, fallback) {
41
+ if (typeof body.error_description === 'string' && body.error_description) {
42
+ return body.error_description;
43
+ }
44
+ if (body.error && typeof body.error === 'object') {
45
+ const message = body.error.message;
46
+ if (typeof message === 'string' && message)
47
+ return message;
48
+ }
49
+ return fallback;
50
+ }
51
+ async function readJson(response) {
52
+ const text = await response.text();
53
+ if (!text)
54
+ return {};
55
+ try {
56
+ const parsed = JSON.parse(text);
57
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
58
+ throw new Error('not an object');
59
+ }
60
+ return parsed;
61
+ }
62
+ catch {
63
+ throw new InboxyError({
64
+ kind: 'invalid_response',
65
+ status: response.status,
66
+ code: 'INVALID_RESPONSE',
67
+ message: 'Inboxy returned a response the CLI could not read.',
68
+ });
69
+ }
70
+ }
71
+ function network(error) {
72
+ if (error instanceof InboxyError)
73
+ return error;
74
+ const aborted = error instanceof Error && error.name === 'TimeoutError';
75
+ return new InboxyError({
76
+ kind: aborted ? 'timeout' : 'network',
77
+ code: aborted ? 'TIMEOUT' : 'NETWORK_ERROR',
78
+ message: aborted
79
+ ? 'Inboxy did not answer in time.'
80
+ : 'Could not reach Inboxy. Check the API URL and your connection.',
81
+ });
82
+ }
83
+ function httpFailure(status, body, fallback) {
84
+ return new InboxyError({
85
+ kind: kindForStatus(status),
86
+ status,
87
+ code: errorCode(body) || 'SIGN_IN_FAILED',
88
+ message: errorMessage(body, fallback),
89
+ });
90
+ }
91
+ export async function loginWithDeviceFlow(apiUrl, io) {
92
+ const base = apiUrl.replace(/\/+$/, '');
93
+ const doFetch = io.fetch ?? fetch;
94
+ const wait = io.sleep ?? sleep;
95
+ const started = io.now();
96
+ let codeResponse;
97
+ try {
98
+ codeResponse = await doFetch(`${base}/api/v1/cli-auth/device/code`, {
99
+ method: 'POST',
100
+ headers: { 'content-type': 'application/json', accept: 'application/json' },
101
+ body: '{}',
102
+ signal: AbortSignal.timeout(20_000),
103
+ });
104
+ }
105
+ catch (error) {
106
+ throw network(error);
107
+ }
108
+ const codeBody = await readJson(codeResponse);
109
+ if (!codeResponse.ok) {
110
+ throw httpFailure(codeResponse.status, codeBody, 'Inboxy could not start sign-in.');
111
+ }
112
+ const deviceCode = stringField(codeBody, 'device_code');
113
+ const userCode = stringField(codeBody, 'user_code');
114
+ const verification = stringField(codeBody, 'verification_uri');
115
+ const complete = stringField(codeBody, 'verification_uri_complete') ||
116
+ (verification && userCode ? `${verification}?user_code=${encodeURIComponent(userCode)}` : '');
117
+ if (!deviceCode || !userCode || !isHttpUrl(complete)) {
118
+ throw new InboxyError({
119
+ kind: 'invalid_response',
120
+ status: codeResponse.status,
121
+ code: 'INVALID_RESPONSE',
122
+ message: 'Inboxy did not return a device sign-in code.',
123
+ });
124
+ }
125
+ const expiresIn = numberField(codeBody, 'expires_in') ?? 600;
126
+ let intervalMs = Math.max(1_000, (numberField(codeBody, 'interval') ?? 5) * 1000);
127
+ const deadline = Math.min(started + expiresIn * 1000, started + MAX_WAIT_MS);
128
+ io.stderr(`Sign in with your browser.\nCode: ${userCode}\n${complete}\nWaiting for approval…\n`);
129
+ if (io.openUrl) {
130
+ try {
131
+ await io.openUrl(complete);
132
+ }
133
+ catch {
134
+ io.stderr('Could not open the browser. Open the link above.\n');
135
+ }
136
+ }
137
+ for (let attempt = 0; attempt < MAX_POLLS && io.now() < deadline; attempt++) {
138
+ let tokenResponse;
139
+ try {
140
+ tokenResponse = await doFetch(`${base}/api/v1/cli-auth/device/token`, {
141
+ method: 'POST',
142
+ headers: { 'content-type': 'application/json', accept: 'application/json' },
143
+ body: JSON.stringify({ device_code: deviceCode }),
144
+ signal: AbortSignal.timeout(20_000),
145
+ });
146
+ }
147
+ catch (error) {
148
+ throw network(error);
149
+ }
150
+ const body = await readJson(tokenResponse);
151
+ if (tokenResponse.ok) {
152
+ const token = stringField(body, 'access_token');
153
+ if (!token) {
154
+ throw new InboxyError({
155
+ kind: 'invalid_response',
156
+ status: tokenResponse.status,
157
+ code: 'INVALID_RESPONSE',
158
+ message: 'Inboxy approved the sign-in but did not return a key.',
159
+ });
160
+ }
161
+ return token;
162
+ }
163
+ const code = errorCode(body);
164
+ if (code === 'authorization_pending') {
165
+ await wait(intervalMs);
166
+ continue;
167
+ }
168
+ if (code === 'slow_down') {
169
+ const next = numberField(body, 'interval');
170
+ intervalMs = Math.max(intervalMs + 5_000, next ? next * 1000 : 0);
171
+ await wait(intervalMs);
172
+ continue;
173
+ }
174
+ if (code === 'access_denied') {
175
+ throw new InboxyError({
176
+ kind: 'auth',
177
+ status: tokenResponse.status,
178
+ code: 'ACCESS_DENIED',
179
+ message: errorMessage(body, 'Sign-in was cancelled in the browser.'),
180
+ });
181
+ }
182
+ if (code === 'expired_token' || code === 'invalid_grant') {
183
+ throw new InboxyError({
184
+ kind: 'auth',
185
+ status: tokenResponse.status,
186
+ code: 'EXPIRED_TOKEN',
187
+ message: errorMessage(body, 'This sign-in expired. Run `inboxy auth login` again.'),
188
+ });
189
+ }
190
+ if (code === 'token_limit' || code === 'API_TOKEN_LIMIT_REACHED') {
191
+ throw new InboxyError({
192
+ kind: 'forbidden',
193
+ status: tokenResponse.status,
194
+ code: 'API_TOKEN_LIMIT_REACHED',
195
+ message: errorMessage(body, 'This company has reached its API key limit.'),
196
+ });
197
+ }
198
+ if (tokenResponse.status === 429) {
199
+ throw new InboxyError({
200
+ kind: 'rate_limited',
201
+ status: 429,
202
+ code: 'RATE_LIMITED',
203
+ message: errorMessage(body, 'Too many sign-in attempts. Wait a moment and try again.'),
204
+ });
205
+ }
206
+ throw httpFailure(tokenResponse.status, body, 'Sign-in failed.');
207
+ }
208
+ throw new InboxyError({
209
+ kind: 'auth',
210
+ code: 'EXPIRED_TOKEN',
211
+ message: 'This sign-in expired before it was approved. Run `inboxy auth login` again.',
212
+ });
213
+ }
214
+ //# sourceMappingURL=device-login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-login.js","sourceRoot":"","sources":["../src/device-login.ts"],"names":[],"mappings":"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"}
package/dist/output.d.ts CHANGED
@@ -30,8 +30,19 @@ export declare class UsageError extends Error {
30
30
  export interface CliIO {
31
31
  stdout(text: string): void;
32
32
  stderr(text: string): void;
33
- /** Reads the API key for `auth login` (piped stdin, or a hidden prompt on a TTY). */
33
+ /** Reads the API key for `auth login` when stdin is not a terminal. */
34
34
  readSecret(prompt: string): Promise<string>;
35
+ /**
36
+ * True on a terminal. `auth login` then uses the browser device flow.
37
+ * A pipe (false) keeps the stdin key paste.
38
+ */
39
+ interactive?: boolean;
40
+ /** Opens the approve page. Failures are reported; the URL is still printed. */
41
+ openUrl?(url: string): Promise<void> | void;
42
+ /** Wait between device-flow polls. Tests replace this. */
43
+ sleep?(ms: number): Promise<void>;
44
+ /** Device-flow HTTP. Defaults to the global fetch. */
45
+ fetch?: typeof fetch;
35
46
  env: NodeJS.ProcessEnv;
36
47
  now(): number;
37
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAA6C,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElG,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,eAAO,MAAM,IAAI;;;;;;;;;;;;CAYP,CAAC;AAEX,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAwBzD;AAED,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qFAAqF;IACrF,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,GAAG,IAAI,MAAM,CAAC;CACf;AAED,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAJP,EAAE,EAAE,KAAK,EACT,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM;IAChC,mEAAmE;IAClD,OAAO,EAAE,MAAM,MAAM,EAAE;IAG1C,OAAO,CAAC,KAAK;IAIb,kDAAkD;IAClD,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,GAAG,MAAM;IAiBlE,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAqD/B,+DAA+D;IAC/D,IAAI,CAAC,IAAI,EAAE,MAAM;CAGlB;AAED,8DAA8D;AAC9D,wBAAgB,KAAK,CACnB,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,GACrD,MAAM,CAiBR"}
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAA6C,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElG,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,eAAO,MAAM,IAAI;;;;;;;;;;;;CAYP,CAAC;AAEX,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAwBzD;AAED,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,uEAAuE;IACvE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+EAA+E;IAC/E,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5C,0DAA0D;IAC1D,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,sDAAsD;IACtD,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,GAAG,IAAI,MAAM,CAAC;CACf;AAED,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAJP,EAAE,EAAE,KAAK,EACT,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM;IAChC,mEAAmE;IAClD,OAAO,EAAE,MAAM,MAAM,EAAE;IAG1C,OAAO,CAAC,KAAK;IAIb,kDAAkD;IAClD,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,GAAG,MAAM;IAiBlE,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAqD/B,+DAA+D;IAC/D,IAAI,CAAC,IAAI,EAAE,MAAM;CAGlB;AAED,8DAA8D;AAC9D,wBAAgB,KAAK,CACnB,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,GACrD,MAAM,CAiBR"}
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@inboxychat/cli",
3
- "version": "0.1.0",
4
- "description": "Inboxy command line: read-only account, orders, contacts and usage, plus doctor diagnostics.",
3
+ "version": "0.2.0",
4
+ "description": "Inboxy command line with read methods, diagnostics and schema-validated confirmed operations.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
7
7
  "bin": {
@@ -16,14 +16,14 @@
16
16
  "node": ">=20.3.0"
17
17
  },
18
18
  "dependencies": {
19
- "@inboxychat/sdk": "0.1.0"
19
+ "@inboxychat/sdk": "^0.2.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/node": "^20.10.0",
23
23
  "typescript": "^5.3.0",
24
24
  "vitest": "^4.0.16"
25
25
  },
26
- "homepage": "https://inboxy.chat",
26
+ "homepage": "https://inboxy.chat/developers/cli",
27
27
  "publishConfig": {
28
28
  "access": "public"
29
29
  },