@sonisoft/now-sdk-ext-cli 5.5.0 → 5.6.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
@@ -41,6 +41,9 @@ Execute individual ATF tests or entire test suites with detailed results, perfec
41
41
  - **Syslog Reader**: Query system logs with filtering
42
42
  - **Code Search**: Search scripts across the platform
43
43
 
44
+ #### Table Behavior
45
+ Discover business rules, UI actions, client scripts, UI/data policies, workflows, flow triggers and state models. Retrieve scripts, definitions and dependencies in the same call or in targeted batches. See [Table Behavior Discovery](#table-behavior-discovery).
46
+
44
47
  #### 📊 Aggregate & Analytics
45
48
  - **Record Counts**: Count records with optional filters
46
49
  - **Aggregate Statistics**: Run AVG, MIN, MAX, SUM across table fields
@@ -94,6 +97,7 @@ Execute individual ATF tests or entire test suites with detailed results, perfec
94
97
  - [Script Execution with REPL](#script-execution-with-repl)
95
98
  - [Company Repository](#company-repository-integration)
96
99
  - [Query & Search](#query--search)
100
+ - [Table Behavior Discovery](#table-behavior-discovery)
97
101
  - [Aggregate & Analytics](#aggregate--analytics)
98
102
  - [Instance Health Check](#instance-health-check)
99
103
  - [Cluster Transactions](#cluster-transactions)
@@ -127,9 +131,7 @@ Execute individual ATF tests or entire test suites with detailed results, perfec
127
131
  > npm install -g @servicenow/sdk@4.3.0
128
132
  >
129
133
  > # 2. Re-add each instance alias
130
- > snc configure profile set
131
- > # — or —
132
- > npx @servicenow/sdk auth --add <your-alias>
134
+ > npx @servicenow/sdk auth --add https://dev12345.service-now.com --alias dev --type oauth
133
135
  >
134
136
  > # 3. Verify your aliases work
135
137
  > npx @servicenow/sdk auth --list
@@ -174,7 +176,7 @@ Verify installation:
174
176
  now-sdk --version
175
177
  ```
176
178
 
177
- **Important**: The `now-sdk-ext-cli` does not manage credentials directly. It uses authentication credentials configured via the ServiceNow SDK (`now-sdk auth` command). This provides:
179
+ Create credentials with the ServiceNow SDK (`now-sdk auth`). Use `nex auth` commands to inspect aliases, diagnose credential access, and select a default alias. This provides:
178
180
  - Secure credential storage in your system's keychain
179
181
  - Centralized authentication management across ServiceNow tools
180
182
  - Support for multiple instance profiles
@@ -182,8 +184,7 @@ now-sdk --version
182
184
 
183
185
  ### Node.js
184
186
 
185
- - **Minimum Version**: Node.js 18.0.0 or higher
186
- - **Recommended**: Node.js 22.x (LTS) or later
187
+ - **Minimum Version**: Node.js 26.0.0 or higher
187
188
 
188
189
  ### ServiceNow Instance
189
190
 
@@ -493,6 +494,82 @@ nex transaction kill --transaction-id 8f9a1234567890abcdef1234567890c1 --confirm
493
494
 
494
495
  > **Warning:** A kill request aborts real work. Only pass an identifier you deliberately selected from a current `nex transaction list` result. Platform acceptance does not mean the transaction has cleared immediately; run a separate later list to confirm.
495
496
 
497
+ ### Table Behavior Discovery
498
+
499
+ Available in **nex 5.5.0**, using core **6.4.1**. Use `nex schema` for table structure and `nex behavior` for configuration that can affect records. Both behavior commands are read-only.
500
+
501
+ ```bash
502
+ nex behavior --table change_request --auth dev --read-only --json
503
+ ```
504
+
505
+ | Category | Functional context |
506
+ | --- | --- |
507
+ | `business_rules` | Operation flags, before/after/async timing, order, conditions and script availability |
508
+ | `ui_actions` | Form/list/workspace placement, roles, visibility conditions and scripts |
509
+ | `client_scripts` | Client events, target fields, views and inherited applicability |
510
+ | `ui_policies` | Conditions and mandatory, visible or read-only field actions |
511
+ | `data_policies` | Server field requirements and enforcement settings |
512
+ | `workflows` | Legacy workflow versions, start conditions, activities and transitions |
513
+ | `flows` | Record triggers, conditions and optional current flow definitions |
514
+ | `state_models` | State fields, transition gates and required fields in supported generic layouts |
515
+
516
+ Defaults include active configuration and applicable ancestors, all eight categories, 50 items per category and a 64 KiB JSON response budget. Conditions and declarative field actions are included in summaries; script bodies and full definitions are opt-in.
517
+
518
+ Request the detail needed for an investigation immediately:
519
+
520
+ ```bash
521
+ nex behavior --table change_request --category business_rules \
522
+ --details scripts --auth dev --read-only --json
523
+
524
+ nex behavior --table change_request --category flows \
525
+ --details definitions --details dependencies --dependency-depth 1 \
526
+ --max-bytes 262144 --auth dev --read-only --json
527
+ ```
528
+
529
+ Retrieve 1–50 known artifacts without repeating table discovery. Repeat `--reference` with `kind:sourceTable:sysId` values from results. Replace these example IDs with real source IDs:
530
+
531
+ ```bash
532
+ nex behavior details \
533
+ --reference flows:sys_hub_flow:0123456789abcdef0123456789abcdef \
534
+ --reference business_rules:sys_script:abcdef0123456789abcdef0123456789 \
535
+ --details scripts --details definitions --details dependencies \
536
+ --dependency-depth 1 --max-bytes 262144 --auth dev --read-only --json
537
+ ```
538
+
539
+ Known subflows, actions, Script Includes and decision tables are also supported. Preserve references returned by discovery: a flow inventory reference can identify its trigger record. For a known flow ID, use `flows:sys_hub_flow:<sys_id>`.
540
+
541
+ | Control | Use |
542
+ | --- | --- |
543
+ | `--category` | Repeat to select categories; default all eight |
544
+ | `--include-inactive` | Include inactive/draft candidates where discoverable |
545
+ | `--no-include-inherited` | Restrict table associations to the requested table |
546
+ | `--name`, `--sys-id` | Filter metadata names or up to 50 source IDs; repeat `--sys-id` |
547
+ | `--limit` | Items per category, 1–200; default 50 |
548
+ | `--cursor` | Continue exactly one selected category with unchanged table and filters |
549
+ | `--details` | Repeat for `scripts`, `definitions`, or `dependencies`; available on both commands |
550
+ | `--dependency-depth` | 0 by default; 1 expands at most 50 unique dependency references and requires `--details dependencies` |
551
+ | `--max-bytes` | JSON budget, 4,096–1,048,576 bytes; default 65,536 |
552
+ | `--scope` | Transaction scope for flow definition reads |
553
+
554
+ Continue a category using its returned `nextCursor`, retaining the original filters and detail selection:
555
+
556
+ ```bash
557
+ nex behavior --table change_request --category business_rules \
558
+ --auth dev --read-only --json
559
+
560
+ nex behavior --table change_request --category business_rules \
561
+ --cursor '<nextCursor from the previous response>' \
562
+ --auth dev --read-only --json
563
+ ```
564
+
565
+ **Read completeness before drawing conclusions.** Each category has `status` (`complete`, `partial`, `unavailable`, or `failed`), `items`, `warnings`, and an optional `nextCursor`. Detail batches return `remainingReferences`; oversized details are omitted whole with `omittedDetails` and warnings, never cut mid-script. Increase `--max-bytes`, narrow the batch, or follow the cursor. Even an empty designer-scan page can require continuation. Visibility is limited to configuration accessible to the authenticated account.
566
+
567
+ For Change Management ATF planning, combine schema choices with behavior conditions, required fields, state transitions and dependent artifacts. Keep client UI requirements separate from server enforcement. Build assertions from that configuration, then validate execution with ATF results, logs and flow contexts. Discovery does not evaluate conditions or predict execution order; runtime trigger metadata and current design definitions have separate provenance and can differ.
568
+
569
+ `--json` prints one JSON document. SDK diagnostics pass through the shared redacting logger to stderr; core 6.4.1 waits for pending file-log writes during bounded shutdown flushing. Live behavior validation used an Australia instance; Zurich validation remains outstanding.
570
+
571
+ See the [behavior guide](docs/table-behavior.md) and [core API reference](https://github.com/sonisoft-cnanda/now-sdk-ext-core/blob/main/docs/TableBehaviorDiscovery.md) for source tables, dependency limits and recovery details.
572
+
496
573
  ### Flow Designer Operations
497
574
 
498
575
  Execute and manage Flow Designer flows, subflows, and actions from the CLI.
@@ -577,152 +654,6 @@ nex bulk update --table incident --query "state=7" --data '{"active":"false"}' -
577
654
 
578
655
  ## 📖 Commands
579
656
 
580
- <!-- toc -->
581
- * [@sonisoft/now-sdk-ext-cli](#sonisoftnow-sdk-ext-cli)
582
- * [Add credentials (interactive - will prompt for username/password)](#add-credentials-interactive---will-prompt-for-usernamepassword)
583
- * [Set as default (optional)](#set-as-default-optional)
584
- * [List configured authentication profiles](#list-configured-authentication-profiles)
585
- * [One-time migration of existing keyring credentials.](#one-time-migration-of-existing-keyring-credentials)
586
- * [Run this from a desktop session — the keyring will prompt to unlock.](#run-this-from-a-desktop-session--the-keyring-will-prompt-to-unlock)
587
- * [Start interactive REPL](#start-interactive-repl)
588
- * [Execute an ATF test](#execute-an-atf-test)
589
- * [List repository applications](#list-repository-applications)
590
- * [Install from repository](#install-from-repository)
591
- * [Execute a single test](#execute-a-single-test)
592
- * [Execute a test suite by ID](#execute-a-test-suite-by-id)
593
- * [Execute by name with JSON output (perfect for CI/CD)](#execute-by-name-with-json-output-perfect-for-cicd)
594
- * [Configure browser and performance settings](#configure-browser-and-performance-settings)
595
- * [Install applications from batch definition](#install-applications-from-batch-definition)
596
- * [Uninstall an application](#uninstall-an-application)
597
- * [List repository applications (what's available to install)](#list-repository-applications-whats-available-to-install)
598
- * [Install from company repository](#install-from-company-repository)
599
- * [List installed repository apps](#list-installed-repository-apps)
600
- * [Script with placeholders: {username}, {table}](#script-with-placeholders-username-table)
601
- * [See what's available](#see-whats-available)
602
- * [Filter for installable apps](#filter-for-installable-apps)
603
- * [Install by scope (automatic lookup)](#install-by-scope-automatic-lookup)
604
- * [Install specific version](#install-specific-version)
605
- * [Background installation](#background-installation)
606
- * [Query any table with encoded queries](#query-any-table-with-encoded-queries)
607
- * [Search applications by name](#search-applications-by-name)
608
- * [List columns for a table](#list-columns-for-a-table)
609
- * [Query system logs](#query-system-logs)
610
- * [Search platform code](#search-platform-code)
611
- * [Count records](#count-records)
612
- * [Run aggregate statistics (AVG, MIN, MAX, SUM)](#run-aggregate-statistics-avg-min-max-sum)
613
- * [Grouped aggregation with display values](#grouped-aggregation-with-display-values)
614
- * [Multiple group-by fields with HAVING clause](#multiple-group-by-fields-with-having-clause)
615
- * [Full health check](#full-health-check)
616
- * [Check only version and stuck jobs](#check-only-version-and-stuck-jobs)
617
- * [Health check with custom stuck job threshold (60 minutes)](#health-check-with-custom-stuck-job-threshold-60-minutes)
618
- * [JSON output for monitoring/alerting](#json-output-for-monitoringalerting)
619
- * [List active transactions](#list-active-transactions)
620
- * [Return complete, untruncated records as JSON](#return-complete-untruncated-records-as-json)
621
- * [Submit a kill request for one deliberately selected transaction](#submit-a-kill-request-for-one-deliberately-selected-transaction)
622
- * [Execute a flow in foreground (waits for completion)](#execute-a-flow-in-foreground-waits-for-completion)
623
- * [Execute with inputs](#execute-with-inputs)
624
- * [Execute a subflow](#execute-a-subflow)
625
- * [Execute an action](#execute-an-action)
626
- * [Check flow status](#check-flow-status)
627
- * [Retrieve flow outputs](#retrieve-flow-outputs)
628
- * [Check for errors](#check-for-errors)
629
- * [Cancel a running flow](#cancel-a-running-flow)
630
- * [Send a message to a waiting flow (e.g., approval)](#send-a-message-to-a-waiting-flow-eg-approval)
631
- * [Read a flow's design-time definition (nothing is executed; no context is created)](#read-a-flows-design-time-definition-nothing-is-executed-no-context-is-created)
632
- * [Read a subflow definition](#read-a-subflow-definition)
633
- * [Read a custom action definition with its ordered steps](#read-a-custom-action-definition-with-its-ordered-steps)
634
- * [Redirect the full JSON definition to a file, or pipe it into another tool](#redirect-the-full-json-definition-to-a-file-or-pipe-it-into-another-tool)
635
- * [Dry-run: preview which records would be updated (safe default)](#dry-run-preview-which-records-would-be-updated-safe-default)
636
- * [Confirm bulk update (actually modifies records)](#confirm-bulk-update-actually-modifies-records)
637
- * [Dry-run: preview which records would be deleted](#dry-run-preview-which-records-would-be-deleted)
638
- * [Confirm bulk delete with limit](#confirm-bulk-delete-with-limit)
639
- * [JSON output for scripting](#json-output-for-scripting)
640
- * [Usage](#usage)
641
- * [Commands](#commands)
642
- * [Global scope](#global-scope)
643
- * [Custom application scope](#custom-application-scope)
644
- * [Development](#development)
645
- * [Production](#production)
646
- * [GitHub Actions](#github-actions)
647
- * [1. Enable autocomplete](#1-enable-autocomplete)
648
- * [2. Follow shell-specific instructions (bash/zsh/fish)](#2-follow-shell-specific-instructions-bashzshfish)
649
- * [3. Reload shell](#3-reload-shell)
650
- * [4. Start using it!](#4-start-using-it)
651
- * [Autocomplete queries ServiceNow and shows:](#autocomplete-queries-servicenow-and-shows)
652
- * [Ready to execute!](#ready-to-execute)
653
- * [Add credentials interactively (will prompt for username/password)](#add-credentials-interactively-will-prompt-for-usernamepassword)
654
- * [For OAuth authentication](#for-oauth-authentication)
655
- * [List all configured authentication profiles](#list-all-configured-authentication-profiles)
656
- * [Set default authentication profile (optional)](#set-default-authentication-profile-optional)
657
- * [Delete an authentication profile](#delete-an-authentication-profile)
658
- * [Use specific authentication profile via --auth flag](#use-specific-authentication-profile-via---auth-flag)
659
- * [Use default profile (if set with --use)](#use-default-profile-if-set-with---use)
660
- * [All commands support the --auth flag](#all-commands-support-the---auth-flag)
661
- * [Set credentials in environment](#set-credentials-in-environment)
662
- * [Add authentication profile (will use environment variables)](#add-authentication-profile-will-use-environment-variables)
663
- * [1. List available repository apps](#1-list-available-repository-apps)
664
- * [2. Install application from repository](#2-install-application-from-repository)
665
- * [3. Configure using REPL](#3-configure-using-repl)
666
- * [4. Run tests](#4-run-tests)
667
- * [5. Deploy to production with parameterized script](#5-deploy-to-production-with-parameterized-script)
668
- * [6. Verify deployment](#6-verify-deployment)
669
- * [Execute a single test](#execute-a-single-test)
670
- * [Execute a test suite and wait for results](#execute-a-test-suite-and-wait-for-results)
671
- * [Execute by name (no need to look up sys_id)](#execute-by-name-no-need-to-look-up-sys_id)
672
- * [Performance test with specific browser](#performance-test-with-specific-browser)
673
- * [CI/CD integration with JSON output](#cicd-integration-with-json-output)
674
- * [Custom polling for long tests](#custom-polling-for-long-tests)
675
- * [Browse company repository](#browse-company-repository)
676
- * [Install from repository](#install-from-repository)
677
- * [Batch install multiple apps](#batch-install-multiple-apps)
678
- * [Uninstall application](#uninstall-application)
679
- * [Execute script file](#execute-script-file)
680
- * [Execute in custom scope](#execute-in-custom-scope)
681
- * [Pipe output](#pipe-output)
682
- * [Start REPL](#start-repl)
683
- * [Execute multi-line scripts interactively](#execute-multi-line-scripts-interactively)
684
- * [Single parameter](#single-parameter)
685
- * [Multiple parameters](#multiple-parameters)
686
- * [From environment variables](#from-environment-variables)
687
- * [daily-tests.sh](#daily-testssh)
688
- * [setup-environment.sh](#setup-environmentsh)
689
- * [Install required apps from repository](#install-required-apps-from-repository)
690
- * [Configure via parameterized script](#configure-via-parameterized-script)
691
- * [Validate with ATF](#validate-with-atf)
692
- * [migrate-data.sh](#migrate-datash)
693
- * [Export from source](#export-from-source)
694
- * [Transform data](#transform-data)
695
- * [Import to target with parameters](#import-to-target-with-parameters)
696
- * [Validate](#validate)
697
- * [List all configured authentication profiles](#list-all-configured-authentication-profiles)
698
- * [Delete and re-add credentials if needed](#delete-and-re-add-credentials-if-needed)
699
- * [Set as default](#set-as-default)
700
- * [Verify installation](#verify-installation)
701
- * [Reinstall if needed](#reinstall-if-needed)
702
- * [Check PATH includes npm global binaries](#check-path-includes-npm-global-binaries)
703
- * [Increase poll interval](#increase-poll-interval)
704
- * [Check instance performance](#check-instance-performance)
705
- * [Check test suite complexity](#check-test-suite-complexity)
706
- * [Review ServiceNow logs](#review-servicenow-logs)
707
- * [Verify user has required roles:](#verify-user-has-required-roles)
708
- * [- atf_test_runner for ATF operations](#--atf_test_runner-for-atf-operations)
709
- * [- admin for app management](#--admin-for-app-management)
710
- * [- appropriate scope access for scripts](#--appropriate-scope-access-for-scripts)
711
- * [General help](#general-help)
712
- * [Command-specific help](#command-specific-help)
713
- * [Command-specific help](#command-specific-help)
714
- * [Enable autocomplete](#enable-autocomplete)
715
- * [Clone the repository](#clone-the-repository)
716
- * [Install dependencies](#install-dependencies)
717
- * [Build](#build)
718
- * [Run tests (960+ tests)](#run-tests-960-tests)
719
- * [Run linter](#run-linter)
720
- * [Test locally](#test-locally)
721
- * [All tests](#all-tests)
722
- * [Specific test file](#specific-test-file)
723
- * [With coverage](#with-coverage)
724
- <!-- tocstop -->
725
-
726
657
  # Usage
727
658
  <!-- usage -->
728
659
  ```sh-session
@@ -730,7 +661,7 @@ $ npm install -g @sonisoft/now-sdk-ext-cli
730
661
  $ nex COMMAND
731
662
  running command...
732
663
  $ nex (--version)
733
- @sonisoft/now-sdk-ext-cli/5.5.0 linux-x64 node-v26.5.0
664
+ @sonisoft/now-sdk-ext-cli/5.6.0 linux-x64 node-v26.5.0
734
665
  $ nex --help [COMMAND]
735
666
  USAGE
736
667
  $ nex COMMAND
@@ -777,6 +708,7 @@ rather than silently denying nothing.
777
708
  * [`nex attachment get`](#nex-attachment-get)
778
709
  * [`nex attachment list`](#nex-attachment-list)
779
710
  * [`nex attachment upload`](#nex-attachment-upload)
711
+ * [`nex auth browser-session`](#nex-auth-browser-session)
780
712
  * [`nex auth delete [ALIAS]`](#nex-auth-delete-alias)
781
713
  * [`nex auth doctor`](#nex-auth-doctor)
782
714
  * [`nex auth list`](#nex-auth-list)
@@ -908,7 +840,7 @@ EXAMPLES
908
840
  $ nex aggregate count --table incident --query "active=true" --json --auth dev
909
841
  ```
910
842
 
911
- _See code: [src/commands/aggregate/count.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/aggregate/count.ts)_
843
+ _See code: [src/commands/aggregate/count.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/aggregate/count.ts)_
912
844
 
913
845
  ## `nex aggregate group`
914
846
 
@@ -976,7 +908,7 @@ EXAMPLES
976
908
  $ nex aggregate group --table incident --group-by priority --count --having "count>10" --auth dev
977
909
  ```
978
910
 
979
- _See code: [src/commands/aggregate/group.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/aggregate/group.ts)_
911
+ _See code: [src/commands/aggregate/group.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/aggregate/group.ts)_
980
912
 
981
913
  ## `nex aggregate query`
982
914
 
@@ -1039,7 +971,7 @@ EXAMPLES
1039
971
  $ nex aggregate query --table incident --sum reassignment_count --json --auth dev
1040
972
  ```
1041
973
 
1042
- _See code: [src/commands/aggregate/query.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/aggregate/query.ts)_
974
+ _See code: [src/commands/aggregate/query.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/aggregate/query.ts)_
1043
975
 
1044
976
  ## `nex app`
1045
977
 
@@ -1102,7 +1034,7 @@ EXAMPLES
1102
1034
  $ nex app -u -i a1b2c3d4e5f6 -s x_my_custom_app -a dev-instance
1103
1035
  ```
1104
1036
 
1105
- _See code: [src/commands/app/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/app/index.ts)_
1037
+ _See code: [src/commands/app/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/app/index.ts)_
1106
1038
 
1107
1039
  ## `nex app install`
1108
1040
 
@@ -1170,7 +1102,7 @@ EXAMPLES
1170
1102
  $ nex app install -b -d ./apps.json -a dev-instance --log-level debug
1171
1103
  ```
1172
1104
 
1173
- _See code: [src/commands/app/install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/app/install.ts)_
1105
+ _See code: [src/commands/app/install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/app/install.ts)_
1174
1106
 
1175
1107
  ## `nex app repo-install`
1176
1108
 
@@ -1255,7 +1187,7 @@ EXAMPLES
1255
1187
  $ nex app repo-install -s x_my_app -a dev-instance --log-level debug
1256
1188
  ```
1257
1189
 
1258
- _See code: [src/commands/app/repo-install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/app/repo-install.ts)_
1190
+ _See code: [src/commands/app/repo-install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/app/repo-install.ts)_
1259
1191
 
1260
1192
  ## `nex app repo-list`
1261
1193
 
@@ -1330,7 +1262,7 @@ EXAMPLES
1330
1262
  $ nex app repo-list -a dev-instance
1331
1263
  ```
1332
1264
 
1333
- _See code: [src/commands/app/repo-list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/app/repo-list.ts)_
1265
+ _See code: [src/commands/app/repo-list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/app/repo-list.ts)_
1334
1266
 
1335
1267
  ## `nex app uninstall`
1336
1268
 
@@ -1392,7 +1324,7 @@ EXAMPLES
1392
1324
  $ nex app uninstall -i a1b2c3d4e5f6 -s x_my_custom_app -a dev-instance
1393
1325
  ```
1394
1326
 
1395
- _See code: [src/commands/app/uninstall.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/app/uninstall.ts)_
1327
+ _See code: [src/commands/app/uninstall.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/app/uninstall.ts)_
1396
1328
 
1397
1329
  ## `nex atf`
1398
1330
 
@@ -1475,7 +1407,7 @@ EXAMPLES
1475
1407
  $ nex atf --suite-id e077e00b83103210621e78c6feaad383 --poll-interval 10000 --auth dev-instance
1476
1408
  ```
1477
1409
 
1478
- _See code: [src/commands/atf/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/atf/index.ts)_
1410
+ _See code: [src/commands/atf/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/atf/index.ts)_
1479
1411
 
1480
1412
  ## `nex attachment get`
1481
1413
 
@@ -1518,7 +1450,7 @@ EXAMPLES
1518
1450
  $ nex attachment get -s att123 --json --auth dev
1519
1451
  ```
1520
1452
 
1521
- _See code: [src/commands/attachment/get.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/attachment/get.ts)_
1453
+ _See code: [src/commands/attachment/get.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/attachment/get.ts)_
1522
1454
 
1523
1455
  ## `nex attachment list`
1524
1456
 
@@ -1563,7 +1495,7 @@ EXAMPLES
1563
1495
  $ nex attachment list -t incident -r abc123 --limit 50 --json --auth dev
1564
1496
  ```
1565
1497
 
1566
- _See code: [src/commands/attachment/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/attachment/list.ts)_
1498
+ _See code: [src/commands/attachment/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/attachment/list.ts)_
1567
1499
 
1568
1500
  ## `nex attachment upload`
1569
1501
 
@@ -1610,7 +1542,30 @@ EXAMPLES
1610
1542
  $ nex attachment upload -t incident -r abc123 -f ./data.csv --content-type text/csv --auth dev
1611
1543
  ```
1612
1544
 
1613
- _See code: [src/commands/attachment/upload.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/attachment/upload.ts)_
1545
+ _See code: [src/commands/attachment/upload.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/attachment/upload.ts)_
1546
+
1547
+ ## `nex auth browser-session`
1548
+
1549
+ Create a verified Playwright cookie session using a stored SDK alias.
1550
+
1551
+ ```
1552
+ USAGE
1553
+ $ nex auth browser-session -a <value> --output <value> [--json] [--cred-store] [--force]
1554
+
1555
+ FLAGS
1556
+ -a, --auth=<value> (required) Stored SDK credential alias.
1557
+ --cred-store Use the headless credential store.
1558
+ --force Replace an existing regular output file.
1559
+ --output=<value> (required) Owner-only Playwright storage-state file.
1560
+
1561
+ GLOBAL FLAGS
1562
+ --json Format output as json.
1563
+
1564
+ DESCRIPTION
1565
+ Create a verified Playwright cookie session using a stored SDK alias.
1566
+ ```
1567
+
1568
+ _See code: [src/commands/auth/browser-session.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/auth/browser-session.ts)_
1614
1569
 
1615
1570
  ## `nex auth delete [ALIAS]`
1616
1571
 
@@ -1645,7 +1600,7 @@ EXAMPLES
1645
1600
  $ nex auth delete --all
1646
1601
  ```
1647
1602
 
1648
- _See code: [src/commands/auth/delete.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/auth/delete.ts)_
1603
+ _See code: [src/commands/auth/delete.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/auth/delete.ts)_
1649
1604
 
1650
1605
  ## `nex auth doctor`
1651
1606
 
@@ -1673,7 +1628,7 @@ EXAMPLES
1673
1628
  $ nex auth doctor --json
1674
1629
  ```
1675
1630
 
1676
- _See code: [src/commands/auth/doctor.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/auth/doctor.ts)_
1631
+ _See code: [src/commands/auth/doctor.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/auth/doctor.ts)_
1677
1632
 
1678
1633
  ## `nex auth list`
1679
1634
 
@@ -1706,7 +1661,7 @@ EXAMPLES
1706
1661
  $ nex auth list --json
1707
1662
  ```
1708
1663
 
1709
- _See code: [src/commands/auth/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/auth/list.ts)_
1664
+ _See code: [src/commands/auth/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/auth/list.ts)_
1710
1665
 
1711
1666
  ## `nex auth use ALIAS`
1712
1667
 
@@ -1734,7 +1689,7 @@ EXAMPLES
1734
1689
  $ nex auth use dev206299
1735
1690
  ```
1736
1691
 
1737
- _See code: [src/commands/auth/use.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/auth/use.ts)_
1692
+ _See code: [src/commands/auth/use.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/auth/use.ts)_
1738
1693
 
1739
1694
  ## `nex autocomplete [SHELL]`
1740
1695
 
@@ -1809,7 +1764,7 @@ EXAMPLES
1809
1764
  $ nex batch create --file ./records.json --no-transaction --auth dev
1810
1765
  ```
1811
1766
 
1812
- _See code: [src/commands/batch/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/batch/create.ts)_
1767
+ _See code: [src/commands/batch/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/batch/create.ts)_
1813
1768
 
1814
1769
  ## `nex batch update`
1815
1770
 
@@ -1853,7 +1808,7 @@ EXAMPLES
1853
1808
  $ nex batch update --file ./updates.json --stop-on-error --auth dev
1854
1809
  ```
1855
1810
 
1856
- _See code: [src/commands/batch/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/batch/update.ts)_
1811
+ _See code: [src/commands/batch/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/batch/update.ts)_
1857
1812
 
1858
1813
  ## `nex behavior`
1859
1814
 
@@ -1911,7 +1866,7 @@ EXAMPLES
1911
1866
  $ nex behavior --table change_request --category business_rules --details scripts --auth dev --json
1912
1867
  ```
1913
1868
 
1914
- _See code: [src/commands/behavior/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/behavior/index.ts)_
1869
+ _See code: [src/commands/behavior/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/behavior/index.ts)_
1915
1870
 
1916
1871
  ## `nex behavior details`
1917
1872
 
@@ -1956,7 +1911,7 @@ EXAMPLES
1956
1911
  $ nex behavior details --reference business_rules:sys_script:0123456789abcdef0123456789abcdef --details scripts --auth dev --json
1957
1912
  ```
1958
1913
 
1959
- _See code: [src/commands/behavior/details.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/behavior/details.ts)_
1914
+ _See code: [src/commands/behavior/details.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/behavior/details.ts)_
1960
1915
 
1961
1916
  ## `nex bulk delete`
1962
1917
 
@@ -2020,7 +1975,7 @@ EXAMPLES
2020
1975
  $ nex bulk delete --table u_staging --query "processed=true" --confirm --json --auth dev
2021
1976
  ```
2022
1977
 
2023
- _See code: [src/commands/bulk/delete.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/bulk/delete.ts)_
1978
+ _See code: [src/commands/bulk/delete.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/bulk/delete.ts)_
2024
1979
 
2025
1980
  ## `nex bulk update`
2026
1981
 
@@ -2089,7 +2044,7 @@ EXAMPLES
2089
2044
  $ nex bulk update --table incident --query "active=true" --data '{"state":"6"}' --confirm --json --auth dev
2090
2045
  ```
2091
2046
 
2092
- _See code: [src/commands/bulk/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/bulk/update.ts)_
2047
+ _See code: [src/commands/bulk/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/bulk/update.ts)_
2093
2048
 
2094
2049
  ## `nex exec SCOPE [FILE]`
2095
2050
 
@@ -2219,7 +2174,7 @@ EXAMPLES
2219
2174
  $ nex exec global ./script.js --auth dev-instance --params '{"token":"abc123","env":"dev"}'
2220
2175
  ```
2221
2176
 
2222
- _See code: [src/commands/exec/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/exec/index.ts)_
2177
+ _See code: [src/commands/exec/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/exec/index.ts)_
2223
2178
 
2224
2179
  ## `nex flow action`
2225
2180
 
@@ -2273,7 +2228,7 @@ EXAMPLES
2273
2228
  '{"table":"incident","values":{"short_description":"Test"}}' --auth dev
2274
2229
  ```
2275
2230
 
2276
- _See code: [src/commands/flow/action.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/action.ts)_
2231
+ _See code: [src/commands/flow/action.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/action.ts)_
2277
2232
 
2278
2233
  ## `nex flow cancel`
2279
2234
 
@@ -2320,7 +2275,7 @@ EXAMPLES
2320
2275
  $ nex flow cancel --context-id abc123def456 --reason "No longer needed" --auth dev
2321
2276
  ```
2322
2277
 
2323
- _See code: [src/commands/flow/cancel.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/cancel.ts)_
2278
+ _See code: [src/commands/flow/cancel.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/cancel.ts)_
2324
2279
 
2325
2280
  ## `nex flow copy`
2326
2281
 
@@ -2385,7 +2340,7 @@ EXAMPLES
2385
2340
  dev
2386
2341
  ```
2387
2342
 
2388
- _See code: [src/commands/flow/copy.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/copy.ts)_
2343
+ _See code: [src/commands/flow/copy.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/copy.ts)_
2389
2344
 
2390
2345
  ## `nex flow definition`
2391
2346
 
@@ -2458,7 +2413,7 @@ EXAMPLES
2458
2413
  $ nex flow definition -i 887dda5583237210fdb8f7b6feaad32c --type action --json --auth dev | jq .summary.steps
2459
2414
  ```
2460
2415
 
2461
- _See code: [src/commands/flow/definition.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/definition.ts)_
2416
+ _See code: [src/commands/flow/definition.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/definition.ts)_
2462
2417
 
2463
2418
  ## `nex flow details`
2464
2419
 
@@ -2519,7 +2474,7 @@ EXAMPLES
2519
2474
  $ nex flow details -c d4e5f6789012345678abcdef01234567 --json --auth dev
2520
2475
  ```
2521
2476
 
2522
- _See code: [src/commands/flow/details.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/details.ts)_
2477
+ _See code: [src/commands/flow/details.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/details.ts)_
2523
2478
 
2524
2479
  ## `nex flow error`
2525
2480
 
@@ -2561,7 +2516,7 @@ EXAMPLES
2561
2516
  $ nex flow error --context-id abc123def456 --auth dev
2562
2517
  ```
2563
2518
 
2564
- _See code: [src/commands/flow/error.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/error.ts)_
2519
+ _See code: [src/commands/flow/error.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/error.ts)_
2565
2520
 
2566
2521
  ## `nex flow logs`
2567
2522
 
@@ -2619,7 +2574,7 @@ EXAMPLES
2619
2574
  $ nex flow logs -c d4e5f6789012345678abcdef01234567 --json --auth dev
2620
2575
  ```
2621
2576
 
2622
- _See code: [src/commands/flow/logs.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/logs.ts)_
2577
+ _See code: [src/commands/flow/logs.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/logs.ts)_
2623
2578
 
2624
2579
  ## `nex flow message`
2625
2580
 
@@ -2669,7 +2624,7 @@ EXAMPLES
2669
2624
  $ nex flow message --context-id abc123def456 --message "data_ready" --payload '{"status":"ok"}' --auth dev
2670
2625
  ```
2671
2626
 
2672
- _See code: [src/commands/flow/message.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/message.ts)_
2627
+ _See code: [src/commands/flow/message.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/message.ts)_
2673
2628
 
2674
2629
  ## `nex flow outputs`
2675
2630
 
@@ -2715,7 +2670,7 @@ EXAMPLES
2715
2670
  $ nex flow outputs --context-id abc123def456 --json --auth dev
2716
2671
  ```
2717
2672
 
2718
- _See code: [src/commands/flow/outputs.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/outputs.ts)_
2673
+ _See code: [src/commands/flow/outputs.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/outputs.ts)_
2719
2674
 
2720
2675
  ## `nex flow run`
2721
2676
 
@@ -2781,7 +2736,7 @@ EXAMPLES
2781
2736
  $ nex flow run --name global.my_flow --mode background --auth dev
2782
2737
  ```
2783
2738
 
2784
- _See code: [src/commands/flow/run.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/run.ts)_
2739
+ _See code: [src/commands/flow/run.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/run.ts)_
2785
2740
 
2786
2741
  ## `nex flow status`
2787
2742
 
@@ -2825,7 +2780,7 @@ EXAMPLES
2825
2780
  $ nex flow status --context-id abc123def456 --auth dev
2826
2781
  ```
2827
2782
 
2828
- _See code: [src/commands/flow/status.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/status.ts)_
2783
+ _See code: [src/commands/flow/status.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/status.ts)_
2829
2784
 
2830
2785
  ## `nex flow subflow`
2831
2786
 
@@ -2885,7 +2840,7 @@ EXAMPLES
2885
2840
  $ nex flow subflow --name x_myapp.process_record --inputs '{"table":"incident","sys_id":"abc123"}' --auth dev
2886
2841
  ```
2887
2842
 
2888
- _See code: [src/commands/flow/subflow.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/subflow.ts)_
2843
+ _See code: [src/commands/flow/subflow.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/subflow.ts)_
2889
2844
 
2890
2845
  ## `nex flow test`
2891
2846
 
@@ -2948,7 +2903,7 @@ EXAMPLES
2948
2903
  $ nex flow test -f 887dda5583237210fdb8f7b6feaad32c -o '{"current":"abc123"}' --json --auth dev
2949
2904
  ```
2950
2905
 
2951
- _See code: [src/commands/flow/test.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/flow/test.ts)_
2906
+ _See code: [src/commands/flow/test.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/flow/test.ts)_
2952
2907
 
2953
2908
  ## `nex health check`
2954
2909
 
@@ -3018,7 +2973,7 @@ EXAMPLES
3018
2973
  $ nex health check --json --auth dev
3019
2974
  ```
3020
2975
 
3021
- _See code: [src/commands/health/check.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/health/check.ts)_
2976
+ _See code: [src/commands/health/check.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/health/check.ts)_
3022
2977
 
3023
2978
  ## `nex help [COMMAND]`
3024
2979
 
@@ -3154,7 +3109,7 @@ EXAMPLES
3154
3109
  $ nex log --no-color --auth dev-instance
3155
3110
  ```
3156
3111
 
3157
- _See code: [src/commands/log/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/log/index.ts)_
3112
+ _See code: [src/commands/log/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/log/index.ts)_
3158
3113
 
3159
3114
  ## `nex plugins`
3160
3115
 
@@ -3476,7 +3431,7 @@ EXAMPLES
3476
3431
  NEX_POLICY_DENY=all nex policy status
3477
3432
  ```
3478
3433
 
3479
- _See code: [src/commands/policy/status.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/policy/status.ts)_
3434
+ _See code: [src/commands/policy/status.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/policy/status.ts)_
3480
3435
 
3481
3436
  ## `nex query`
3482
3437
 
@@ -3539,7 +3494,7 @@ EXAMPLES
3539
3494
  $ nex query --table sys_user --query "active=true" --limit 5 --json --auth dev
3540
3495
  ```
3541
3496
 
3542
- _See code: [src/commands/query/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/query/index.ts)_
3497
+ _See code: [src/commands/query/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/query/index.ts)_
3543
3498
 
3544
3499
  ## `nex query app`
3545
3500
 
@@ -3592,7 +3547,7 @@ EXAMPLES
3592
3547
  $ nex query app --search "HR" --active --auth dev
3593
3548
  ```
3594
3549
 
3595
- _See code: [src/commands/query/app.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/query/app.ts)_
3550
+ _See code: [src/commands/query/app.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/query/app.ts)_
3596
3551
 
3597
3552
  ## `nex query columns`
3598
3553
 
@@ -3647,7 +3602,7 @@ EXAMPLES
3647
3602
  $ nex query columns --table incident --json --auth dev
3648
3603
  ```
3649
3604
 
3650
- _See code: [src/commands/query/columns.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/query/columns.ts)_
3605
+ _See code: [src/commands/query/columns.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/query/columns.ts)_
3651
3606
 
3652
3607
  ## `nex query syslog`
3653
3608
 
@@ -3704,7 +3659,7 @@ EXAMPLES
3704
3659
  $ nex query syslog --query "sourceLIKEincident" --json --auth dev
3705
3660
  ```
3706
3661
 
3707
- _See code: [src/commands/query/syslog.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/query/syslog.ts)_
3662
+ _See code: [src/commands/query/syslog.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/query/syslog.ts)_
3708
3663
 
3709
3664
  ## `nex schema`
3710
3665
 
@@ -3763,7 +3718,7 @@ EXAMPLES
3763
3718
  $ nex schema --table incident --include-choices --include-relationships --auth dev
3764
3719
  ```
3765
3720
 
3766
- _See code: [src/commands/schema/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/schema/index.ts)_
3721
+ _See code: [src/commands/schema/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/schema/index.ts)_
3767
3722
 
3768
3723
  ## `nex schema field`
3769
3724
 
@@ -3810,7 +3765,7 @@ EXAMPLES
3810
3765
  $ nex schema field --table incident --field priority --json --auth dev
3811
3766
  ```
3812
3767
 
3813
- _See code: [src/commands/schema/field.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/schema/field.ts)_
3768
+ _See code: [src/commands/schema/field.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/schema/field.ts)_
3814
3769
 
3815
3770
  ## `nex schema validate-catalog`
3816
3771
 
@@ -3856,7 +3811,7 @@ EXAMPLES
3856
3811
  $ nex schema validate-catalog --sys-id a1b2c3d4e5f6 --json --auth dev
3857
3812
  ```
3858
3813
 
3859
- _See code: [src/commands/schema/validate-catalog.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/schema/validate-catalog.ts)_
3814
+ _See code: [src/commands/schema/validate-catalog.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/schema/validate-catalog.ts)_
3860
3815
 
3861
3816
  ## `nex scope`
3862
3817
 
@@ -3903,7 +3858,7 @@ EXAMPLES
3903
3858
  $ nex scope -l --json --auth dev
3904
3859
  ```
3905
3860
 
3906
- _See code: [src/commands/scope/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/scope/index.ts)_
3861
+ _See code: [src/commands/scope/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/scope/index.ts)_
3907
3862
 
3908
3863
  ## `nex scope set`
3909
3864
 
@@ -3946,7 +3901,7 @@ EXAMPLES
3946
3901
  $ nex scope set -a abc123def456ghi789jkl012mno345pq --json --auth dev
3947
3902
  ```
3948
3903
 
3949
- _See code: [src/commands/scope/set.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/scope/set.ts)_
3904
+ _See code: [src/commands/scope/set.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/scope/set.ts)_
3950
3905
 
3951
3906
  ## `nex script-sync pull`
3952
3907
 
@@ -4006,7 +3961,7 @@ EXAMPLES
4006
3961
  $ nex script-sync pull -n MyClientScript -t sys_script_client --json --auth dev-instance
4007
3962
  ```
4008
3963
 
4009
- _See code: [src/commands/script-sync/pull.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/script-sync/pull.ts)_
3964
+ _See code: [src/commands/script-sync/pull.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/script-sync/pull.ts)_
4010
3965
 
4011
3966
  ## `nex script-sync push`
4012
3967
 
@@ -4067,7 +4022,7 @@ EXAMPLES
4067
4022
  $ nex script-sync push -n MyUIScript -t sys_ui_script -f ./scripts/ui-script.js --json --auth dev-instance
4068
4023
  ```
4069
4024
 
4070
- _See code: [src/commands/script-sync/push.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/script-sync/push.ts)_
4025
+ _See code: [src/commands/script-sync/push.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/script-sync/push.ts)_
4071
4026
 
4072
4027
  ## `nex script-sync sync`
4073
4028
 
@@ -4126,7 +4081,7 @@ EXAMPLES
4126
4081
  $ nex script-sync sync -d ./scripts --json --auth dev-instance
4127
4082
  ```
4128
4083
 
4129
- _See code: [src/commands/script-sync/sync.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/script-sync/sync.ts)_
4084
+ _See code: [src/commands/script-sync/sync.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/script-sync/sync.ts)_
4130
4085
 
4131
4086
  ## `nex search`
4132
4087
 
@@ -4193,7 +4148,7 @@ EXAMPLES
4193
4148
  $ nex search --term "GlideRecord" --limit 10 --json --auth dev-instance
4194
4149
  ```
4195
4150
 
4196
- _See code: [src/commands/search/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/search/index.ts)_
4151
+ _See code: [src/commands/search/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/search/index.ts)_
4197
4152
 
4198
4153
  ## `nex search add-table`
4199
4154
 
@@ -4253,7 +4208,7 @@ EXAMPLES
4253
4208
  dev-instance
4254
4209
  ```
4255
4210
 
4256
- _See code: [src/commands/search/add-table.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/search/add-table.ts)_
4211
+ _See code: [src/commands/search/add-table.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/search/add-table.ts)_
4257
4212
 
4258
4213
  ## `nex search groups`
4259
4214
 
@@ -4302,7 +4257,7 @@ EXAMPLES
4302
4257
  $ nex search groups --json --auth dev-instance
4303
4258
  ```
4304
4259
 
4305
- _See code: [src/commands/search/groups.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/search/groups.ts)_
4260
+ _See code: [src/commands/search/groups.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/search/groups.ts)_
4306
4261
 
4307
4262
  ## `nex search tables`
4308
4263
 
@@ -4353,7 +4308,7 @@ EXAMPLES
4353
4308
  $ nex search tables --search-group "Business Rules" --json --auth dev-instance
4354
4309
  ```
4355
4310
 
4356
- _See code: [src/commands/search/tables.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/search/tables.ts)_
4311
+ _See code: [src/commands/search/tables.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/search/tables.ts)_
4357
4312
 
4358
4313
  ## `nex store install`
4359
4314
 
@@ -4406,7 +4361,7 @@ EXAMPLES
4406
4361
  $ nex store install -a abc123 -v 1.0.0 --demo-data --auth dev
4407
4362
  ```
4408
4363
 
4409
- _See code: [src/commands/store/install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/store/install.ts)_
4364
+ _See code: [src/commands/store/install.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/store/install.ts)_
4410
4365
 
4411
4366
  ## `nex store search`
4412
4367
 
@@ -4457,7 +4412,7 @@ EXAMPLES
4457
4412
  $ nex store search --tab updates --limit 10 --auth dev
4458
4413
  ```
4459
4414
 
4460
- _See code: [src/commands/store/search.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/store/search.ts)_
4415
+ _See code: [src/commands/store/search.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/store/search.ts)_
4461
4416
 
4462
4417
  ## `nex store update`
4463
4418
 
@@ -4509,7 +4464,7 @@ EXAMPLES
4509
4464
  $ nex store update -a abc123 -v 2.0.0 --timeout 3600000 --auth dev
4510
4465
  ```
4511
4466
 
4512
- _See code: [src/commands/store/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/store/update.ts)_
4467
+ _See code: [src/commands/store/update.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/store/update.ts)_
4513
4468
 
4514
4469
  ## `nex store validate`
4515
4470
 
@@ -4548,7 +4503,7 @@ EXAMPLES
4548
4503
  $ nex store validate --file ./batch-definition.json --auth dev
4549
4504
  ```
4550
4505
 
4551
- _See code: [src/commands/store/validate.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/store/validate.ts)_
4506
+ _See code: [src/commands/store/validate.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/store/validate.ts)_
4552
4507
 
4553
4508
  ## `nex task approve`
4554
4509
 
@@ -4599,7 +4554,7 @@ EXAMPLES
4599
4554
  $ nex task approve -n CHG0010001 -c "Looks good, approved" --auth dev
4600
4555
  ```
4601
4556
 
4602
- _See code: [src/commands/task/approve.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/approve.ts)_
4557
+ _See code: [src/commands/task/approve.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/approve.ts)_
4603
4558
 
4604
4559
  ## `nex task assign`
4605
4560
 
@@ -4660,7 +4615,7 @@ EXAMPLES
4660
4615
  $ nex task assign --number CHG0010001 --table change_request --user admin --auth dev
4661
4616
  ```
4662
4617
 
4663
- _See code: [src/commands/task/assign.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/assign.ts)_
4618
+ _See code: [src/commands/task/assign.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/assign.ts)_
4664
4619
 
4665
4620
  ## `nex task close`
4666
4621
 
@@ -4714,7 +4669,7 @@ EXAMPLES
4714
4669
  $ nex task close -n INC0010001 --notes "Closed" --close-code "Solved (Permanently)" --auth dev
4715
4670
  ```
4716
4671
 
4717
- _See code: [src/commands/task/close.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/close.ts)_
4672
+ _See code: [src/commands/task/close.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/close.ts)_
4718
4673
 
4719
4674
  ## `nex task comment`
4720
4675
 
@@ -4774,7 +4729,7 @@ EXAMPLES
4774
4729
  $ nex task comment --number CHG0010001 --table change_request --comment "Approved" --auth dev
4775
4730
  ```
4776
4731
 
4777
- _See code: [src/commands/task/comment.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/comment.ts)_
4732
+ _See code: [src/commands/task/comment.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/comment.ts)_
4778
4733
 
4779
4734
  ## `nex task find`
4780
4735
 
@@ -4830,7 +4785,7 @@ EXAMPLES
4830
4785
  $ nex task find -n INC0010001 --json --auth dev
4831
4786
  ```
4832
4787
 
4833
- _See code: [src/commands/task/find.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/find.ts)_
4788
+ _See code: [src/commands/task/find.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/find.ts)_
4834
4789
 
4835
4790
  ## `nex task resolve`
4836
4791
 
@@ -4884,7 +4839,7 @@ EXAMPLES
4884
4839
  $ nex task resolve -n INC0010001 --notes "Fixed" --close-code "Solved (Permanently)" --auth dev
4885
4840
  ```
4886
4841
 
4887
- _See code: [src/commands/task/resolve.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/task/resolve.ts)_
4842
+ _See code: [src/commands/task/resolve.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/task/resolve.ts)_
4888
4843
 
4889
4844
  ## `nex transaction kill`
4890
4845
 
@@ -4927,7 +4882,7 @@ EXAMPLES
4927
4882
  $ nex transaction kill --transaction-id 8f9a1234567890abcdef1234567890c1 --confirm --json --auth dev
4928
4883
  ```
4929
4884
 
4930
- _See code: [src/commands/transaction/kill.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/transaction/kill.ts)_
4885
+ _See code: [src/commands/transaction/kill.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/transaction/kill.ts)_
4931
4886
 
4932
4887
  ## `nex transaction list`
4933
4888
 
@@ -4974,7 +4929,7 @@ EXAMPLES
4974
4929
  $ nex transaction list --timeout-ms 120000 --poll-interval-ms 2000 --auth dev
4975
4930
  ```
4976
4931
 
4977
- _See code: [src/commands/transaction/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/transaction/list.ts)_
4932
+ _See code: [src/commands/transaction/list.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/transaction/list.ts)_
4978
4933
 
4979
4934
  ## `nex update-set`
4980
4935
 
@@ -5022,7 +4977,7 @@ EXAMPLES
5022
4977
  $ nex update-set --json --auth dev-instance
5023
4978
  ```
5024
4979
 
5025
- _See code: [src/commands/update-set/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/index.ts)_
4980
+ _See code: [src/commands/update-set/index.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/index.ts)_
5026
4981
 
5027
4982
  ## `nex update-set clone`
5028
4983
 
@@ -5066,7 +5021,7 @@ EXAMPLES
5066
5021
  $ nex update-set clone --source us-001 --name "Cloned Set" --json --auth dev-instance
5067
5022
  ```
5068
5023
 
5069
- _See code: [src/commands/update-set/clone.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/clone.ts)_
5024
+ _See code: [src/commands/update-set/clone.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/clone.ts)_
5070
5025
 
5071
5026
  ## `nex update-set create`
5072
5027
 
@@ -5115,7 +5070,7 @@ EXAMPLES
5115
5070
  $ nex update-set create --name "My Feature Set" --application x_my_app --auth dev-instance
5116
5071
  ```
5117
5072
 
5118
- _See code: [src/commands/update-set/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/create.ts)_
5073
+ _See code: [src/commands/update-set/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/create.ts)_
5119
5074
 
5120
5075
  ## `nex update-set current`
5121
5076
 
@@ -5162,7 +5117,7 @@ EXAMPLES
5162
5117
  $ nex update-set current --json --auth dev-instance
5163
5118
  ```
5164
5119
 
5165
- _See code: [src/commands/update-set/current.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/current.ts)_
5120
+ _See code: [src/commands/update-set/current.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/current.ts)_
5166
5121
 
5167
5122
  ## `nex update-set inspect`
5168
5123
 
@@ -5205,7 +5160,7 @@ EXAMPLES
5205
5160
  $ nex update-set inspect --sys-id us-001 --json --auth dev-instance
5206
5161
  ```
5207
5162
 
5208
- _See code: [src/commands/update-set/inspect.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/inspect.ts)_
5163
+ _See code: [src/commands/update-set/inspect.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/inspect.ts)_
5209
5164
 
5210
5165
  ## `nex update-set move`
5211
5166
 
@@ -5255,7 +5210,7 @@ EXAMPLES
5255
5210
  $ nex update-set move --target us-002 --source us-001 --json --auth dev-instance
5256
5211
  ```
5257
5212
 
5258
- _See code: [src/commands/update-set/move.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/update-set/move.ts)_
5213
+ _See code: [src/commands/update-set/move.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/update-set/move.ts)_
5259
5214
 
5260
5215
  ## `nex workflow create`
5261
5216
 
@@ -5298,7 +5253,7 @@ EXAMPLES
5298
5253
  $ nex workflow create -s ./workflow.json --json --auth dev
5299
5254
  ```
5300
5255
 
5301
- _See code: [src/commands/workflow/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/workflow/create.ts)_
5256
+ _See code: [src/commands/workflow/create.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/workflow/create.ts)_
5302
5257
 
5303
5258
  ## `nex workflow publish`
5304
5259
 
@@ -5342,7 +5297,7 @@ EXAMPLES
5342
5297
  $ nex workflow publish -v wfv-001 -s act-001 --json --auth dev
5343
5298
  ```
5344
5299
 
5345
- _See code: [src/commands/workflow/publish.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/workflow/publish.ts)_
5300
+ _See code: [src/commands/workflow/publish.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/workflow/publish.ts)_
5346
5301
 
5347
5302
  ## `nex xml export`
5348
5303
 
@@ -5400,7 +5355,7 @@ EXAMPLES
5400
5355
  $ nex xml export --table sys_script --sys-id abc123 --json --auth dev
5401
5356
  ```
5402
5357
 
5403
- _See code: [src/commands/xml/export.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/xml/export.ts)_
5358
+ _See code: [src/commands/xml/export.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/xml/export.ts)_
5404
5359
 
5405
5360
  ## `nex xml import`
5406
5361
 
@@ -5452,7 +5407,7 @@ EXAMPLES
5452
5407
  $ nex xml import --file ./records.xml --table incident --json --auth dev
5453
5408
  ```
5454
5409
 
5455
- _See code: [src/commands/xml/import.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.5.0/src/commands/xml/import.ts)_
5410
+ _See code: [src/commands/xml/import.ts](https://github.com/sonisoft-cnanda/now-sdk-ext-cli/blob/v5.6.0/src/commands/xml/import.ts)_
5456
5411
  <!-- commandsstop -->
5457
5412
 
5458
5413
  ---
@@ -5766,7 +5721,7 @@ jobs:
5766
5721
  - name: Setup Node.js
5767
5722
  uses: actions/setup-node@v3
5768
5723
  with:
5769
- node-version: '22'
5724
+ node-version: '26'
5770
5725
 
5771
5726
  - name: Install Dependencies
5772
5727
  run: |
@@ -5800,7 +5755,7 @@ jobs:
5800
5755
 
5801
5756
  ```yaml
5802
5757
  servicenow-tests:
5803
- image: node:22
5758
+ image: node:26
5804
5759
  stage: test
5805
5760
  before_script:
5806
5761
  - npm install -g @servicenow/sdk
@@ -6323,3 +6278,32 @@ MIT License - see [LICENSE](LICENSE) file for details.
6323
6278
  Made with ❤️ for the ServiceNow Developer Community
6324
6279
 
6325
6280
  **Ready to get started?** → [Jump to Quick Start](#-quick-start)
6281
+
6282
+ ## Playwright sessions from SDK aliases
6283
+
6284
+ ```bash
6285
+ nex auth browser-session -a dev206299 --cred-store --output playwright/.auth/dev.json --json
6286
+ ```
6287
+
6288
+ Uses SDK OAuth refresh and exports cookie-only Playwright storage state. Output is
6289
+ metadata/path only; the file contains secrets and is written atomically with mode
6290
+ 0600. Existing output requires `--force`; symlinks are refused. Ignore the auth
6291
+ directory in Git and exclude it from test artifacts.
6292
+
6293
+ Pass the file as Playwright's `storageState`. Remote Docker browsers receive the
6294
+ state over the Playwright connection; they need no credential-store mount.
6295
+ Generate a fresh session per test, especially when impersonating. For long tests,
6296
+ renew at an explicit safe checkpoint and open a new context; state files cannot
6297
+ refresh themselves.
6298
+
6299
+ Regular nex commands now pass an alias-bound provider to core so long-running
6300
+ operations can renew credentials. Read-only authentication failures can retry once;
6301
+ writes and stateful workflows are not automatically replayed. nex permission flags
6302
+ do not constrain actions performed later by Playwright.
6303
+
6304
+ Use the same backend/path for `now-sdk-x` and `nex --cred-store`. Plain now-sdk
6305
+ normally uses the keyring and does not synchronize a separate credential store.
6306
+
6307
+ When upgrading a shared store, stop all clients first, upgrade every client
6308
+ (including standalone `now-sdk-x`) to sn-credstore 1.1.1 or later, then restart.
6309
+ The new lock protocol cannot safely run alongside older clients.