@xano/cli 0.0.69-beta.3 → 0.0.71-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -387,82 +387,6 @@
387
387
  "index.js"
388
388
  ]
389
389
  },
390
- "branch:get": {
391
- "aliases": [],
392
- "args": {
393
- "branch_label": {
394
- "description": "Branch label (e.g., \"v1\", \"dev\")",
395
- "name": "branch_label",
396
- "required": true
397
- }
398
- },
399
- "description": "Get details for a specific branch",
400
- "examples": [
401
- "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
402
- "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
403
- "$ xano branch get staging --output json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false,\n \"live\": false\n}\n"
404
- ],
405
- "flags": {
406
- "profile": {
407
- "char": "p",
408
- "description": "Profile to use (uses default profile if not specified)",
409
- "env": "XANO_PROFILE",
410
- "name": "profile",
411
- "required": false,
412
- "hasDynamicHelp": false,
413
- "multiple": false,
414
- "type": "option"
415
- },
416
- "verbose": {
417
- "char": "v",
418
- "description": "Show detailed request/response information",
419
- "env": "XANO_VERBOSE",
420
- "name": "verbose",
421
- "required": false,
422
- "allowNo": false,
423
- "type": "boolean"
424
- },
425
- "output": {
426
- "char": "o",
427
- "description": "Output format",
428
- "name": "output",
429
- "required": false,
430
- "default": "summary",
431
- "hasDynamicHelp": false,
432
- "multiple": false,
433
- "options": [
434
- "summary",
435
- "json"
436
- ],
437
- "type": "option"
438
- },
439
- "workspace": {
440
- "char": "w",
441
- "description": "Workspace ID (uses profile workspace if not provided)",
442
- "name": "workspace",
443
- "required": false,
444
- "hasDynamicHelp": false,
445
- "multiple": false,
446
- "type": "option"
447
- }
448
- },
449
- "hasDynamicHelp": false,
450
- "hiddenAliases": [],
451
- "id": "branch:get",
452
- "pluginAlias": "@xano/cli",
453
- "pluginName": "@xano/cli",
454
- "pluginType": "core",
455
- "strict": true,
456
- "enableJsonFlag": false,
457
- "isESM": true,
458
- "relativePath": [
459
- "dist",
460
- "commands",
461
- "branch",
462
- "get",
463
- "index.js"
464
- ]
465
- },
466
390
  "branch:list": {
467
391
  "aliases": [],
468
392
  "args": {
@@ -530,90 +454,6 @@
530
454
  "index.js"
531
455
  ]
532
456
  },
533
- "branch:set_live": {
534
- "aliases": [],
535
- "args": {
536
- "branch_label": {
537
- "description": "Branch label to set as live (use \"v1\" for default branch)",
538
- "name": "branch_label",
539
- "required": true
540
- }
541
- },
542
- "description": "Set a branch as the live (active) branch for API requests",
543
- "examples": [
544
- "$ xano branch set-live staging\nAre you sure you want to set 'staging' as the live branch? (y/N) y\nBranch 'staging' is now live\n",
545
- "$ xano branch set-live v1 --force\nBranch 'v1' is now live\n",
546
- "$ xano branch set-live production -f -o json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"production\",\n \"backup\": false,\n \"live\": true\n}\n"
547
- ],
548
- "flags": {
549
- "profile": {
550
- "char": "p",
551
- "description": "Profile to use (uses default profile if not specified)",
552
- "env": "XANO_PROFILE",
553
- "name": "profile",
554
- "required": false,
555
- "hasDynamicHelp": false,
556
- "multiple": false,
557
- "type": "option"
558
- },
559
- "verbose": {
560
- "char": "v",
561
- "description": "Show detailed request/response information",
562
- "env": "XANO_VERBOSE",
563
- "name": "verbose",
564
- "required": false,
565
- "allowNo": false,
566
- "type": "boolean"
567
- },
568
- "force": {
569
- "char": "f",
570
- "description": "Skip confirmation prompt",
571
- "name": "force",
572
- "required": false,
573
- "allowNo": false,
574
- "type": "boolean"
575
- },
576
- "output": {
577
- "char": "o",
578
- "description": "Output format",
579
- "name": "output",
580
- "required": false,
581
- "default": "summary",
582
- "hasDynamicHelp": false,
583
- "multiple": false,
584
- "options": [
585
- "summary",
586
- "json"
587
- ],
588
- "type": "option"
589
- },
590
- "workspace": {
591
- "char": "w",
592
- "description": "Workspace ID (uses profile workspace if not provided)",
593
- "name": "workspace",
594
- "required": false,
595
- "hasDynamicHelp": false,
596
- "multiple": false,
597
- "type": "option"
598
- }
599
- },
600
- "hasDynamicHelp": false,
601
- "hiddenAliases": [],
602
- "id": "branch:set_live",
603
- "pluginAlias": "@xano/cli",
604
- "pluginName": "@xano/cli",
605
- "pluginType": "core",
606
- "strict": true,
607
- "enableJsonFlag": false,
608
- "isESM": true,
609
- "relativePath": [
610
- "dist",
611
- "commands",
612
- "branch",
613
- "set_live",
614
- "index.js"
615
- ]
616
- },
617
457
  "function:create": {
618
458
  "aliases": [],
619
459
  "args": {},
@@ -720,25 +560,20 @@
720
560
  "index.js"
721
561
  ]
722
562
  },
723
- "function:edit": {
563
+ "branch:set_live": {
724
564
  "aliases": [],
725
565
  "args": {
726
- "function_id": {
727
- "description": "Function ID to edit",
728
- "name": "function_id",
729
- "required": false
566
+ "branch_label": {
567
+ "description": "Branch label to set as live (use \"v1\" for default branch)",
568
+ "name": "branch_label",
569
+ "required": true
730
570
  }
731
571
  },
732
- "description": "Edit a function in a workspace",
572
+ "description": "Set a branch as the live (active) branch for API requests",
733
573
  "examples": [
734
- "$ xano function:edit 163\n# Fetches the function code and opens it in $EDITOR for editing\nFunction updated successfully!\nID: 163\nName: my_function\n",
735
- "$ xano function:edit\n# Prompts for function, fetches the code and opens it in $EDITOR for editing\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
736
- "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
737
- "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
738
- "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
739
- "$ xano function:edit 163 -f function.xs --edit\n# Opens function.xs in $EDITOR, then updates function with edited content\nFunction updated successfully!\nID: 163\nName: my_function\n",
740
- "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
741
- "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
574
+ "$ xano branch set-live staging\nAre you sure you want to set 'staging' as the live branch? (y/N) y\nBranch 'staging' is now live\n",
575
+ "$ xano branch set-live v1 --force\nBranch 'v1' is now live\n",
576
+ "$ xano branch set-live production -f -o json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"production\",\n \"backup\": false,\n \"live\": true\n}\n"
742
577
  ],
743
578
  "flags": {
744
579
  "profile": {
@@ -760,26 +595,14 @@
760
595
  "allowNo": false,
761
596
  "type": "boolean"
762
597
  },
763
- "edit": {
764
- "char": "e",
765
- "description": "Open file in editor before updating function (requires --file)",
766
- "name": "edit",
598
+ "force": {
599
+ "char": "f",
600
+ "description": "Skip confirmation prompt",
601
+ "name": "force",
767
602
  "required": false,
768
603
  "allowNo": false,
769
604
  "type": "boolean"
770
605
  },
771
- "file": {
772
- "char": "f",
773
- "description": "Path to file containing XanoScript code",
774
- "exclusive": [
775
- "stdin"
776
- ],
777
- "name": "file",
778
- "required": false,
779
- "hasDynamicHelp": false,
780
- "multiple": false,
781
- "type": "option"
782
- },
783
606
  "output": {
784
607
  "char": "o",
785
608
  "description": "Output format",
@@ -794,27 +617,9 @@
794
617
  ],
795
618
  "type": "option"
796
619
  },
797
- "publish": {
798
- "description": "Publish the function after editing",
799
- "name": "publish",
800
- "required": false,
801
- "allowNo": false,
802
- "type": "boolean"
803
- },
804
- "stdin": {
805
- "char": "s",
806
- "description": "Read XanoScript code from stdin",
807
- "exclusive": [
808
- "file"
809
- ],
810
- "name": "stdin",
811
- "required": false,
812
- "allowNo": false,
813
- "type": "boolean"
814
- },
815
620
  "workspace": {
816
621
  "char": "w",
817
- "description": "Workspace ID (optional if set in profile)",
622
+ "description": "Workspace ID (uses profile workspace if not provided)",
818
623
  "name": "workspace",
819
624
  "required": false,
820
625
  "hasDynamicHelp": false,
@@ -824,7 +629,7 @@
824
629
  },
825
630
  "hasDynamicHelp": false,
826
631
  "hiddenAliases": [],
827
- "id": "function:edit",
632
+ "id": "branch:set_live",
828
633
  "pluginAlias": "@xano/cli",
829
634
  "pluginName": "@xano/cli",
830
635
  "pluginType": "core",
@@ -834,8 +639,8 @@
834
639
  "relativePath": [
835
640
  "dist",
836
641
  "commands",
837
- "function",
838
- "edit",
642
+ "branch",
643
+ "set_live",
839
644
  "index.js"
840
645
  ]
841
646
  },
@@ -1058,19 +863,13 @@
1058
863
  "index.js"
1059
864
  ]
1060
865
  },
1061
- "platform:get": {
866
+ "platform:list": {
1062
867
  "aliases": [],
1063
- "args": {
1064
- "platform_id": {
1065
- "description": "Platform ID to retrieve",
1066
- "name": "platform_id",
1067
- "required": true
1068
- }
1069
- },
1070
- "description": "Get details of a specific platform",
868
+ "args": {},
869
+ "description": "List all platforms",
1071
870
  "examples": [
1072
- "$ xano platform get 23629\nPlatform ID: 23629\n Created: 2025-11-28\n Helm: 0.1.356\n Images:\n backend 0.0.2985\n frontend 0.1.3427\n database 0.1.6\n node 0.1.192\n deno 0.0.212\n redis 0.1.34\n realtime 0.1.149\n standalone 0.0.2456\n playwright 0.0.992\n static 0.0.10\n static-build 0.0.4\n backend-encoded 0.0.1396\n",
1073
- "$ xano platform get 23629 -o json"
871
+ "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
872
+ "$ xano platform list --output json"
1074
873
  ],
1075
874
  "flags": {
1076
875
  "profile": {
@@ -1109,7 +908,7 @@
1109
908
  },
1110
909
  "hasDynamicHelp": false,
1111
910
  "hiddenAliases": [],
1112
- "id": "platform:get",
911
+ "id": "platform:list",
1113
912
  "pluginAlias": "@xano/cli",
1114
913
  "pluginName": "@xano/cli",
1115
914
  "pluginType": "core",
@@ -1120,17 +919,23 @@
1120
919
  "dist",
1121
920
  "commands",
1122
921
  "platform",
1123
- "get",
922
+ "list",
1124
923
  "index.js"
1125
924
  ]
1126
925
  },
1127
- "platform:list": {
926
+ "platform:get": {
1128
927
  "aliases": [],
1129
- "args": {},
1130
- "description": "List all platforms",
1131
- "examples": [
1132
- "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
1133
- "$ xano platform list --output json"
928
+ "args": {
929
+ "platform_id": {
930
+ "description": "Platform ID to retrieve",
931
+ "name": "platform_id",
932
+ "required": true
933
+ }
934
+ },
935
+ "description": "Get details of a specific platform",
936
+ "examples": [
937
+ "$ xano platform get 23629\nPlatform ID: 23629\n Created: 2025-11-28\n Helm: 0.1.356\n Images:\n backend 0.0.2985\n frontend 0.1.3427\n database 0.1.6\n node 0.1.192\n deno 0.0.212\n redis 0.1.34\n realtime 0.1.149\n standalone 0.0.2456\n playwright 0.0.992\n static 0.0.10\n static-build 0.0.4\n backend-encoded 0.0.1396\n",
938
+ "$ xano platform get 23629 -o json"
1134
939
  ],
1135
940
  "flags": {
1136
941
  "profile": {
@@ -1169,7 +974,7 @@
1169
974
  },
1170
975
  "hasDynamicHelp": false,
1171
976
  "hiddenAliases": [],
1172
- "id": "platform:list",
977
+ "id": "platform:get",
1173
978
  "pluginAlias": "@xano/cli",
1174
979
  "pluginName": "@xano/cli",
1175
980
  "pluginType": "core",
@@ -1180,7 +985,49 @@
1180
985
  "dist",
1181
986
  "commands",
1182
987
  "platform",
1183
- "list",
988
+ "get",
989
+ "index.js"
990
+ ]
991
+ },
992
+ "profile:delete": {
993
+ "aliases": [],
994
+ "args": {
995
+ "name": {
996
+ "description": "Profile name to delete",
997
+ "name": "name",
998
+ "required": true
999
+ }
1000
+ },
1001
+ "description": "Delete a profile configuration",
1002
+ "examples": [
1003
+ "$ xano profile:delete old-profile\nAre you sure you want to delete profile 'old-profile'? (y/n): y\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1004
+ "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1005
+ "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1006
+ ],
1007
+ "flags": {
1008
+ "force": {
1009
+ "char": "f",
1010
+ "description": "Skip confirmation prompt",
1011
+ "name": "force",
1012
+ "required": false,
1013
+ "allowNo": false,
1014
+ "type": "boolean"
1015
+ }
1016
+ },
1017
+ "hasDynamicHelp": false,
1018
+ "hiddenAliases": [],
1019
+ "id": "profile:delete",
1020
+ "pluginAlias": "@xano/cli",
1021
+ "pluginName": "@xano/cli",
1022
+ "pluginType": "core",
1023
+ "strict": true,
1024
+ "enableJsonFlag": false,
1025
+ "isESM": true,
1026
+ "relativePath": [
1027
+ "dist",
1028
+ "commands",
1029
+ "profile",
1030
+ "delete",
1184
1031
  "index.js"
1185
1032
  ]
1186
1033
  },
@@ -1280,48 +1127,6 @@
1280
1127
  "index.js"
1281
1128
  ]
1282
1129
  },
1283
- "profile:delete": {
1284
- "aliases": [],
1285
- "args": {
1286
- "name": {
1287
- "description": "Profile name to delete",
1288
- "name": "name",
1289
- "required": true
1290
- }
1291
- },
1292
- "description": "Delete a profile configuration",
1293
- "examples": [
1294
- "$ xano profile:delete old-profile\nAre you sure you want to delete profile 'old-profile'? (y/n): y\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1295
- "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1296
- "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1297
- ],
1298
- "flags": {
1299
- "force": {
1300
- "char": "f",
1301
- "description": "Skip confirmation prompt",
1302
- "name": "force",
1303
- "required": false,
1304
- "allowNo": false,
1305
- "type": "boolean"
1306
- }
1307
- },
1308
- "hasDynamicHelp": false,
1309
- "hiddenAliases": [],
1310
- "id": "profile:delete",
1311
- "pluginAlias": "@xano/cli",
1312
- "pluginName": "@xano/cli",
1313
- "pluginType": "core",
1314
- "strict": true,
1315
- "enableJsonFlag": false,
1316
- "isESM": true,
1317
- "relativePath": [
1318
- "dist",
1319
- "commands",
1320
- "profile",
1321
- "delete",
1322
- "index.js"
1323
- ]
1324
- },
1325
1130
  "profile:edit": {
1326
1131
  "aliases": [],
1327
1132
  "args": {
@@ -1574,23 +1379,68 @@
1574
1379
  "index.js"
1575
1380
  ]
1576
1381
  },
1577
- "profile:set": {
1382
+ "branch:get": {
1578
1383
  "aliases": [],
1579
1384
  "args": {
1580
- "name": {
1581
- "description": "Profile name to set as default",
1582
- "name": "name",
1385
+ "branch_label": {
1386
+ "description": "Branch label (e.g., \"v1\", \"dev\")",
1387
+ "name": "branch_label",
1583
1388
  "required": true
1584
1389
  }
1585
1390
  },
1586
- "description": "Set the default profile",
1391
+ "description": "Get details for a specific branch",
1587
1392
  "examples": [
1588
- "$ xano profile set production\nDefault profile set to 'production'\n"
1393
+ "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
1394
+ "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
1395
+ "$ xano branch get staging --output json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false,\n \"live\": false\n}\n"
1589
1396
  ],
1590
- "flags": {},
1397
+ "flags": {
1398
+ "profile": {
1399
+ "char": "p",
1400
+ "description": "Profile to use (uses default profile if not specified)",
1401
+ "env": "XANO_PROFILE",
1402
+ "name": "profile",
1403
+ "required": false,
1404
+ "hasDynamicHelp": false,
1405
+ "multiple": false,
1406
+ "type": "option"
1407
+ },
1408
+ "verbose": {
1409
+ "char": "v",
1410
+ "description": "Show detailed request/response information",
1411
+ "env": "XANO_VERBOSE",
1412
+ "name": "verbose",
1413
+ "required": false,
1414
+ "allowNo": false,
1415
+ "type": "boolean"
1416
+ },
1417
+ "output": {
1418
+ "char": "o",
1419
+ "description": "Output format",
1420
+ "name": "output",
1421
+ "required": false,
1422
+ "default": "summary",
1423
+ "hasDynamicHelp": false,
1424
+ "multiple": false,
1425
+ "options": [
1426
+ "summary",
1427
+ "json"
1428
+ ],
1429
+ "type": "option"
1430
+ },
1431
+ "workspace": {
1432
+ "char": "w",
1433
+ "description": "Workspace ID (uses profile workspace if not provided)",
1434
+ "name": "workspace",
1435
+ "required": false,
1436
+ "hasDynamicHelp": false,
1437
+ "multiple": false,
1438
+ "type": "option"
1439
+ }
1440
+ },
1591
1441
  "hasDynamicHelp": false,
1592
1442
  "hiddenAliases": [],
1593
- "id": "profile:set",
1443
+ "id": "branch:get",
1594
1444
  "pluginAlias": "@xano/cli",
1595
1445
  "pluginName": "@xano/cli",
1596
1446
  "pluginType": "core",
@@ -1600,8 +1450,8 @@
1600
1450
  "relativePath": [
1601
1451
  "dist",
1602
1452
  "commands",
1603
- "profile",
1604
- "set",
1453
+ "branch",
1454
+ "get",
1605
1455
  "index.js"
1606
1456
  ]
1607
1457
  },
@@ -1631,71 +1481,23 @@
1631
1481
  "index.js"
1632
1482
  ]
1633
1483
  },
1634
- "profile:wizard": {
1484
+ "profile:set": {
1635
1485
  "aliases": [],
1636
- "args": {},
1637
- "description": "Create a new profile configuration using an interactive wizard",
1638
- "examples": [
1639
- "$ xano profile:wizard\nWelcome to the Xano Profile Wizard!\n? Enter your access token: ***...***\n? Select an instance:\n > Production (https://app.xano.com)\n Staging (https://staging.xano.com)\n? Profile name: production\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n"
1640
- ],
1641
- "flags": {
1642
- "insecure": {
1643
- "char": "k",
1644
- "description": "Skip TLS certificate verification (for self-signed certificates)",
1645
- "name": "insecure",
1646
- "required": false,
1647
- "allowNo": false,
1648
- "type": "boolean"
1649
- },
1486
+ "args": {
1650
1487
  "name": {
1651
- "char": "n",
1652
- "description": "Profile name (skip prompt if provided)",
1488
+ "description": "Profile name to set as default",
1653
1489
  "name": "name",
1654
- "required": false,
1655
- "hasDynamicHelp": false,
1656
- "multiple": false,
1657
- "type": "option"
1658
- },
1659
- "origin": {
1660
- "char": "o",
1661
- "description": "Xano instance origin URL",
1662
- "name": "origin",
1663
- "required": false,
1664
- "default": "https://app.xano.com",
1665
- "hasDynamicHelp": false,
1666
- "multiple": false,
1667
- "type": "option"
1490
+ "required": true
1668
1491
  }
1669
1492
  },
1670
- "hasDynamicHelp": false,
1671
- "hiddenAliases": [],
1672
- "id": "profile:wizard",
1673
- "pluginAlias": "@xano/cli",
1674
- "pluginName": "@xano/cli",
1675
- "pluginType": "core",
1676
- "strict": true,
1677
- "enableJsonFlag": false,
1678
- "isESM": true,
1679
- "relativePath": [
1680
- "dist",
1681
- "commands",
1682
- "profile",
1683
- "wizard",
1684
- "index.js"
1685
- ]
1686
- },
1687
- "profile:workspace": {
1688
- "aliases": [],
1689
- "args": {},
1690
- "description": "Print the workspace ID for the default profile",
1493
+ "description": "Set the default profile",
1691
1494
  "examples": [
1692
- "$ xano profile:workspace\nabc123-workspace-id\n",
1693
- "$ xano profile:workspace | pbcopy\n# Copies the workspace ID to clipboard on macOS\n"
1495
+ "$ xano profile set production\nDefault profile set to 'production'\n"
1694
1496
  ],
1695
1497
  "flags": {},
1696
1498
  "hasDynamicHelp": false,
1697
1499
  "hiddenAliases": [],
1698
- "id": "profile:workspace",
1500
+ "id": "profile:set",
1699
1501
  "pluginAlias": "@xano/cli",
1700
1502
  "pluginName": "@xano/cli",
1701
1503
  "pluginType": "core",
@@ -1706,17 +1508,29 @@
1706
1508
  "dist",
1707
1509
  "commands",
1708
1510
  "profile",
1709
- "workspace",
1511
+ "set",
1710
1512
  "index.js"
1711
1513
  ]
1712
1514
  },
1713
- "release:create": {
1515
+ "function:edit": {
1714
1516
  "aliases": [],
1715
- "args": {},
1716
- "description": "Create a new release in a workspace",
1517
+ "args": {
1518
+ "function_id": {
1519
+ "description": "Function ID to edit",
1520
+ "name": "function_id",
1521
+ "required": false
1522
+ }
1523
+ },
1524
+ "description": "Edit a function in a workspace",
1717
1525
  "examples": [
1718
- "$ xano release create --name \"v1.0\" --branch main\nCreated release: v1.0 - ID: 10\n",
1719
- "$ xano release create --name \"v1.1-hotfix\" --branch main --hotfix --description \"Critical fix\" -o json"
1526
+ "$ xano function:edit 163\n# Fetches the function code and opens it in $EDITOR for editing\nFunction updated successfully!\nID: 163\nName: my_function\n",
1527
+ "$ xano function:edit\n# Prompts for function, fetches the code and opens it in $EDITOR for editing\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
1528
+ "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
1529
+ "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
1530
+ "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
1531
+ "$ xano function:edit 163 -f function.xs --edit\n# Opens function.xs in $EDITOR, then updates function with edited content\nFunction updated successfully!\nID: 163\nName: my_function\n",
1532
+ "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
1533
+ "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
1720
1534
  ],
1721
1535
  "flags": {
1722
1536
  "profile": {
@@ -1738,36 +1552,22 @@
1738
1552
  "allowNo": false,
1739
1553
  "type": "boolean"
1740
1554
  },
1741
- "branch": {
1742
- "char": "b",
1743
- "description": "Branch to create the release from",
1744
- "name": "branch",
1745
- "required": true,
1746
- "hasDynamicHelp": false,
1747
- "multiple": false,
1748
- "type": "option"
1749
- },
1750
- "description": {
1751
- "char": "d",
1752
- "description": "Release description",
1753
- "name": "description",
1754
- "required": false,
1755
- "hasDynamicHelp": false,
1756
- "multiple": false,
1757
- "type": "option"
1758
- },
1759
- "hotfix": {
1760
- "description": "Mark as a hotfix release",
1761
- "name": "hotfix",
1555
+ "edit": {
1556
+ "char": "e",
1557
+ "description": "Open file in editor before updating function (requires --file)",
1558
+ "name": "edit",
1762
1559
  "required": false,
1763
1560
  "allowNo": false,
1764
1561
  "type": "boolean"
1765
1562
  },
1766
- "name": {
1767
- "char": "n",
1768
- "description": "Name for the release",
1769
- "name": "name",
1770
- "required": true,
1563
+ "file": {
1564
+ "char": "f",
1565
+ "description": "Path to file containing XanoScript code",
1566
+ "exclusive": [
1567
+ "stdin"
1568
+ ],
1569
+ "name": "file",
1570
+ "required": false,
1771
1571
  "hasDynamicHelp": false,
1772
1572
  "multiple": false,
1773
1573
  "type": "option"
@@ -1786,17 +1586,27 @@
1786
1586
  ],
1787
1587
  "type": "option"
1788
1588
  },
1789
- "table-ids": {
1790
- "description": "Comma-separated table IDs to include",
1791
- "name": "table-ids",
1589
+ "publish": {
1590
+ "description": "Publish the function after editing",
1591
+ "name": "publish",
1792
1592
  "required": false,
1793
- "hasDynamicHelp": false,
1794
- "multiple": false,
1795
- "type": "option"
1593
+ "allowNo": false,
1594
+ "type": "boolean"
1595
+ },
1596
+ "stdin": {
1597
+ "char": "s",
1598
+ "description": "Read XanoScript code from stdin",
1599
+ "exclusive": [
1600
+ "file"
1601
+ ],
1602
+ "name": "stdin",
1603
+ "required": false,
1604
+ "allowNo": false,
1605
+ "type": "boolean"
1796
1606
  },
1797
1607
  "workspace": {
1798
1608
  "char": "w",
1799
- "description": "Workspace ID (uses profile workspace if not provided)",
1609
+ "description": "Workspace ID (optional if set in profile)",
1800
1610
  "name": "workspace",
1801
1611
  "required": false,
1802
1612
  "hasDynamicHelp": false,
@@ -1806,7 +1616,7 @@
1806
1616
  },
1807
1617
  "hasDynamicHelp": false,
1808
1618
  "hiddenAliases": [],
1809
- "id": "release:create",
1619
+ "id": "function:edit",
1810
1620
  "pluginAlias": "@xano/cli",
1811
1621
  "pluginName": "@xano/cli",
1812
1622
  "pluginType": "core",
@@ -1816,25 +1626,44 @@
1816
1626
  "relativePath": [
1817
1627
  "dist",
1818
1628
  "commands",
1819
- "release",
1820
- "create",
1629
+ "function",
1630
+ "edit",
1821
1631
  "index.js"
1822
1632
  ]
1823
1633
  },
1824
- "release:delete": {
1634
+ "profile:workspace": {
1825
1635
  "aliases": [],
1826
- "args": {
1827
- "release_name": {
1828
- "description": "Release name to delete",
1829
- "name": "release_name",
1830
- "required": true
1831
- }
1832
- },
1833
- "description": "Delete a release permanently. This action cannot be undone.",
1636
+ "args": {},
1637
+ "description": "Print the workspace ID for the default profile",
1834
1638
  "examples": [
1835
- "$ xano release delete v1.0\nAre you sure you want to delete release 'v1.0'? This action cannot be undone. (y/N) y\nDeleted release 'v1.0'\n",
1836
- "$ xano release delete v1.0 --force\nDeleted release 'v1.0'\n",
1837
- "$ xano release delete v1.0 -f -o json"
1639
+ "$ xano profile:workspace\nabc123-workspace-id\n",
1640
+ "$ xano profile:workspace | pbcopy\n# Copies the workspace ID to clipboard on macOS\n"
1641
+ ],
1642
+ "flags": {},
1643
+ "hasDynamicHelp": false,
1644
+ "hiddenAliases": [],
1645
+ "id": "profile:workspace",
1646
+ "pluginAlias": "@xano/cli",
1647
+ "pluginName": "@xano/cli",
1648
+ "pluginType": "core",
1649
+ "strict": true,
1650
+ "enableJsonFlag": false,
1651
+ "isESM": true,
1652
+ "relativePath": [
1653
+ "dist",
1654
+ "commands",
1655
+ "profile",
1656
+ "workspace",
1657
+ "index.js"
1658
+ ]
1659
+ },
1660
+ "release:create": {
1661
+ "aliases": [],
1662
+ "args": {},
1663
+ "description": "Create a new release in a workspace",
1664
+ "examples": [
1665
+ "$ xano release create --name \"v1.0\" --branch main\nCreated release: v1.0 - ID: 10\n",
1666
+ "$ xano release create --name \"v1.1-hotfix\" --branch main --hotfix --description \"Critical fix\" -o json"
1838
1667
  ],
1839
1668
  "flags": {
1840
1669
  "profile": {
@@ -1856,14 +1685,40 @@
1856
1685
  "allowNo": false,
1857
1686
  "type": "boolean"
1858
1687
  },
1859
- "force": {
1860
- "char": "f",
1861
- "description": "Skip confirmation prompt",
1862
- "name": "force",
1688
+ "branch": {
1689
+ "char": "b",
1690
+ "description": "Branch to create the release from",
1691
+ "name": "branch",
1692
+ "required": true,
1693
+ "hasDynamicHelp": false,
1694
+ "multiple": false,
1695
+ "type": "option"
1696
+ },
1697
+ "description": {
1698
+ "char": "d",
1699
+ "description": "Release description",
1700
+ "name": "description",
1701
+ "required": false,
1702
+ "hasDynamicHelp": false,
1703
+ "multiple": false,
1704
+ "type": "option"
1705
+ },
1706
+ "hotfix": {
1707
+ "description": "Mark as a hotfix release",
1708
+ "name": "hotfix",
1863
1709
  "required": false,
1864
1710
  "allowNo": false,
1865
1711
  "type": "boolean"
1866
1712
  },
1713
+ "name": {
1714
+ "char": "n",
1715
+ "description": "Name for the release",
1716
+ "name": "name",
1717
+ "required": true,
1718
+ "hasDynamicHelp": false,
1719
+ "multiple": false,
1720
+ "type": "option"
1721
+ },
1867
1722
  "output": {
1868
1723
  "char": "o",
1869
1724
  "description": "Output format",
@@ -1878,6 +1733,14 @@
1878
1733
  ],
1879
1734
  "type": "option"
1880
1735
  },
1736
+ "table-ids": {
1737
+ "description": "Comma-separated table IDs to include",
1738
+ "name": "table-ids",
1739
+ "required": false,
1740
+ "hasDynamicHelp": false,
1741
+ "multiple": false,
1742
+ "type": "option"
1743
+ },
1881
1744
  "workspace": {
1882
1745
  "char": "w",
1883
1746
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -1890,7 +1753,7 @@
1890
1753
  },
1891
1754
  "hasDynamicHelp": false,
1892
1755
  "hiddenAliases": [],
1893
- "id": "release:delete",
1756
+ "id": "release:create",
1894
1757
  "pluginAlias": "@xano/cli",
1895
1758
  "pluginName": "@xano/cli",
1896
1759
  "pluginType": "core",
@@ -1901,23 +1764,24 @@
1901
1764
  "dist",
1902
1765
  "commands",
1903
1766
  "release",
1904
- "delete",
1767
+ "create",
1905
1768
  "index.js"
1906
1769
  ]
1907
1770
  },
1908
- "release:edit": {
1771
+ "release:delete": {
1909
1772
  "aliases": [],
1910
1773
  "args": {
1911
1774
  "release_name": {
1912
- "description": "Release name to edit",
1775
+ "description": "Release name to delete",
1913
1776
  "name": "release_name",
1914
1777
  "required": true
1915
1778
  }
1916
1779
  },
1917
- "description": "Edit an existing release",
1780
+ "description": "Delete a release permanently. This action cannot be undone.",
1918
1781
  "examples": [
1919
- "$ xano release edit v1.0 --name \"v1.0-final\" --description \"Updated description\"\nUpdated release: v1.0-final - ID: 10\n",
1920
- "$ xano release edit v1.0 --description \"New description\" -o json"
1782
+ "$ xano release delete v1.0\nAre you sure you want to delete release 'v1.0'? This action cannot be undone. (y/N) y\nDeleted release 'v1.0'\n",
1783
+ "$ xano release delete v1.0 --force\nDeleted release 'v1.0'\n",
1784
+ "$ xano release delete v1.0 -f -o json"
1921
1785
  ],
1922
1786
  "flags": {
1923
1787
  "profile": {
@@ -1939,23 +1803,13 @@
1939
1803
  "allowNo": false,
1940
1804
  "type": "boolean"
1941
1805
  },
1942
- "description": {
1943
- "char": "d",
1944
- "description": "New description",
1945
- "name": "description",
1946
- "required": false,
1947
- "hasDynamicHelp": false,
1948
- "multiple": false,
1949
- "type": "option"
1950
- },
1951
- "name": {
1952
- "char": "n",
1953
- "description": "New name for the release",
1954
- "name": "name",
1806
+ "force": {
1807
+ "char": "f",
1808
+ "description": "Skip confirmation prompt",
1809
+ "name": "force",
1955
1810
  "required": false,
1956
- "hasDynamicHelp": false,
1957
- "multiple": false,
1958
- "type": "option"
1811
+ "allowNo": false,
1812
+ "type": "boolean"
1959
1813
  },
1960
1814
  "output": {
1961
1815
  "char": "o",
@@ -1983,7 +1837,7 @@
1983
1837
  },
1984
1838
  "hasDynamicHelp": false,
1985
1839
  "hiddenAliases": [],
1986
- "id": "release:edit",
1840
+ "id": "release:delete",
1987
1841
  "pluginAlias": "@xano/cli",
1988
1842
  "pluginName": "@xano/cli",
1989
1843
  "pluginType": "core",
@@ -1994,7 +1848,7 @@
1994
1848
  "dist",
1995
1849
  "commands",
1996
1850
  "release",
1997
- "edit",
1851
+ "delete",
1998
1852
  "index.js"
1999
1853
  ]
2000
1854
  },
@@ -2082,19 +1936,19 @@
2082
1936
  "index.js"
2083
1937
  ]
2084
1938
  },
2085
- "release:get": {
1939
+ "release:edit": {
2086
1940
  "aliases": [],
2087
1941
  "args": {
2088
1942
  "release_name": {
2089
- "description": "Release name to retrieve",
1943
+ "description": "Release name to edit",
2090
1944
  "name": "release_name",
2091
1945
  "required": true
2092
1946
  }
2093
1947
  },
2094
- "description": "Get details of a specific release",
1948
+ "description": "Edit an existing release",
2095
1949
  "examples": [
2096
- "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2097
- "$ xano release get v1.0 -w 5 -o json"
1950
+ "$ xano release edit v1.0 --name \"v1.0-final\" --description \"Updated description\"\nUpdated release: v1.0-final - ID: 10\n",
1951
+ "$ xano release edit v1.0 --description \"New description\" -o json"
2098
1952
  ],
2099
1953
  "flags": {
2100
1954
  "profile": {
@@ -2116,6 +1970,24 @@
2116
1970
  "allowNo": false,
2117
1971
  "type": "boolean"
2118
1972
  },
1973
+ "description": {
1974
+ "char": "d",
1975
+ "description": "New description",
1976
+ "name": "description",
1977
+ "required": false,
1978
+ "hasDynamicHelp": false,
1979
+ "multiple": false,
1980
+ "type": "option"
1981
+ },
1982
+ "name": {
1983
+ "char": "n",
1984
+ "description": "New name for the release",
1985
+ "name": "name",
1986
+ "required": false,
1987
+ "hasDynamicHelp": false,
1988
+ "multiple": false,
1989
+ "type": "option"
1990
+ },
2119
1991
  "output": {
2120
1992
  "char": "o",
2121
1993
  "description": "Output format",
@@ -2142,7 +2014,7 @@
2142
2014
  },
2143
2015
  "hasDynamicHelp": false,
2144
2016
  "hiddenAliases": [],
2145
- "id": "release:get",
2017
+ "id": "release:edit",
2146
2018
  "pluginAlias": "@xano/cli",
2147
2019
  "pluginName": "@xano/cli",
2148
2020
  "pluginType": "core",
@@ -2153,7 +2025,7 @@
2153
2025
  "dist",
2154
2026
  "commands",
2155
2027
  "release",
2156
- "get",
2028
+ "edit",
2157
2029
  "index.js"
2158
2030
  ]
2159
2031
  },
@@ -2235,13 +2107,19 @@
2235
2107
  "index.js"
2236
2108
  ]
2237
2109
  },
2238
- "release:list": {
2110
+ "release:get": {
2239
2111
  "aliases": [],
2240
- "args": {},
2241
- "description": "List all releases in a workspace",
2112
+ "args": {
2113
+ "release_name": {
2114
+ "description": "Release name to retrieve",
2115
+ "name": "release_name",
2116
+ "required": true
2117
+ }
2118
+ },
2119
+ "description": "Get details of a specific release",
2242
2120
  "examples": [
2243
- "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2244
- "$ xano release list -w 5 --output json"
2121
+ "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2122
+ "$ xano release get v1.0 -w 5 -o json"
2245
2123
  ],
2246
2124
  "flags": {
2247
2125
  "profile": {
@@ -2289,7 +2167,7 @@
2289
2167
  },
2290
2168
  "hasDynamicHelp": false,
2291
2169
  "hiddenAliases": [],
2292
- "id": "release:list",
2170
+ "id": "release:get",
2293
2171
  "pluginAlias": "@xano/cli",
2294
2172
  "pluginName": "@xano/cli",
2295
2173
  "pluginType": "core",
@@ -2300,25 +2178,147 @@
2300
2178
  "dist",
2301
2179
  "commands",
2302
2180
  "release",
2303
- "list",
2181
+ "get",
2304
2182
  "index.js"
2305
2183
  ]
2306
2184
  },
2307
- "release:pull": {
2185
+ "release:list": {
2308
2186
  "aliases": [],
2309
- "args": {
2310
- "directory": {
2311
- "description": "Output directory for pulled documents",
2312
- "name": "directory",
2313
- "required": true
2314
- }
2315
- },
2316
- "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2187
+ "args": {},
2188
+ "description": "List all releases in a workspace",
2317
2189
  "examples": [
2318
- "$ xano release pull ./my-release -r v1.0\nPulled 42 documents from release 'v1.0' to ./my-release\n",
2319
- "$ xano release pull ./output -r v1.0 -w 40\nPulled 15 documents from release 'v1.0' to ./output\n",
2320
- "$ xano release pull ./backup -r v1.0 --profile production --env --records\nPulled 58 documents from release 'v1.0' to ./backup\n"
2321
- ],
2190
+ "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2191
+ "$ xano release list -w 5 --output json"
2192
+ ],
2193
+ "flags": {
2194
+ "profile": {
2195
+ "char": "p",
2196
+ "description": "Profile to use (uses default profile if not specified)",
2197
+ "env": "XANO_PROFILE",
2198
+ "name": "profile",
2199
+ "required": false,
2200
+ "hasDynamicHelp": false,
2201
+ "multiple": false,
2202
+ "type": "option"
2203
+ },
2204
+ "verbose": {
2205
+ "char": "v",
2206
+ "description": "Show detailed request/response information",
2207
+ "env": "XANO_VERBOSE",
2208
+ "name": "verbose",
2209
+ "required": false,
2210
+ "allowNo": false,
2211
+ "type": "boolean"
2212
+ },
2213
+ "output": {
2214
+ "char": "o",
2215
+ "description": "Output format",
2216
+ "name": "output",
2217
+ "required": false,
2218
+ "default": "summary",
2219
+ "hasDynamicHelp": false,
2220
+ "multiple": false,
2221
+ "options": [
2222
+ "summary",
2223
+ "json"
2224
+ ],
2225
+ "type": "option"
2226
+ },
2227
+ "workspace": {
2228
+ "char": "w",
2229
+ "description": "Workspace ID (uses profile workspace if not provided)",
2230
+ "name": "workspace",
2231
+ "required": false,
2232
+ "hasDynamicHelp": false,
2233
+ "multiple": false,
2234
+ "type": "option"
2235
+ }
2236
+ },
2237
+ "hasDynamicHelp": false,
2238
+ "hiddenAliases": [],
2239
+ "id": "release:list",
2240
+ "pluginAlias": "@xano/cli",
2241
+ "pluginName": "@xano/cli",
2242
+ "pluginType": "core",
2243
+ "strict": true,
2244
+ "enableJsonFlag": false,
2245
+ "isESM": true,
2246
+ "relativePath": [
2247
+ "dist",
2248
+ "commands",
2249
+ "release",
2250
+ "list",
2251
+ "index.js"
2252
+ ]
2253
+ },
2254
+ "profile:wizard": {
2255
+ "aliases": [],
2256
+ "args": {},
2257
+ "description": "Create a new profile configuration using an interactive wizard",
2258
+ "examples": [
2259
+ "$ xano profile:wizard\nWelcome to the Xano Profile Wizard!\n? Enter your access token: ***...***\n? Select an instance:\n > Production (https://app.xano.com)\n Staging (https://staging.xano.com)\n? Profile name: production\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n"
2260
+ ],
2261
+ "flags": {
2262
+ "insecure": {
2263
+ "char": "k",
2264
+ "description": "Skip TLS certificate verification (for self-signed certificates)",
2265
+ "name": "insecure",
2266
+ "required": false,
2267
+ "allowNo": false,
2268
+ "type": "boolean"
2269
+ },
2270
+ "name": {
2271
+ "char": "n",
2272
+ "description": "Profile name (skip prompt if provided)",
2273
+ "name": "name",
2274
+ "required": false,
2275
+ "hasDynamicHelp": false,
2276
+ "multiple": false,
2277
+ "type": "option"
2278
+ },
2279
+ "origin": {
2280
+ "char": "o",
2281
+ "description": "Xano instance origin URL",
2282
+ "name": "origin",
2283
+ "required": false,
2284
+ "default": "https://app.xano.com",
2285
+ "hasDynamicHelp": false,
2286
+ "multiple": false,
2287
+ "type": "option"
2288
+ }
2289
+ },
2290
+ "hasDynamicHelp": false,
2291
+ "hiddenAliases": [],
2292
+ "id": "profile:wizard",
2293
+ "pluginAlias": "@xano/cli",
2294
+ "pluginName": "@xano/cli",
2295
+ "pluginType": "core",
2296
+ "strict": true,
2297
+ "enableJsonFlag": false,
2298
+ "isESM": true,
2299
+ "relativePath": [
2300
+ "dist",
2301
+ "commands",
2302
+ "profile",
2303
+ "wizard",
2304
+ "index.js"
2305
+ ]
2306
+ },
2307
+ "release:pull": {
2308
+ "aliases": [],
2309
+ "args": {
2310
+ "directory": {
2311
+ "description": "Output directory for pulled documents",
2312
+ "name": "directory",
2313
+ "required": true
2314
+ }
2315
+ },
2316
+ "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2317
+ "examples": [
2318
+ "$ xano release pull ./my-release -r v1.0\nPulled 42 documents from release 'v1.0' to ./my-release\n",
2319
+ "$ xano release pull ./output -r v1.0 -w 40\nPulled 15 documents from release 'v1.0' to ./output\n",
2320
+ "$ xano release pull ./backup -r v1.0 --profile production --env --records\nPulled 58 documents from release 'v1.0' to ./backup\n"
2321
+ ],
2322
2322
  "flags": {
2323
2323
  "profile": {
2324
2324
  "char": "p",
@@ -2507,95 +2507,6 @@
2507
2507
  "index.js"
2508
2508
  ]
2509
2509
  },
2510
- "static_host:list": {
2511
- "aliases": [],
2512
- "args": {},
2513
- "description": "List all static hosts in a workspace from the Xano Metadata API",
2514
- "examples": [
2515
- "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2516
- "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2517
- "$ xano static_host:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"my-static-host\",\n \"domain\": \"example.com\"\n }\n]\n",
2518
- "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2519
- ],
2520
- "flags": {
2521
- "profile": {
2522
- "char": "p",
2523
- "description": "Profile to use (uses default profile if not specified)",
2524
- "env": "XANO_PROFILE",
2525
- "name": "profile",
2526
- "required": false,
2527
- "hasDynamicHelp": false,
2528
- "multiple": false,
2529
- "type": "option"
2530
- },
2531
- "verbose": {
2532
- "char": "v",
2533
- "description": "Show detailed request/response information",
2534
- "env": "XANO_VERBOSE",
2535
- "name": "verbose",
2536
- "required": false,
2537
- "allowNo": false,
2538
- "type": "boolean"
2539
- },
2540
- "output": {
2541
- "char": "o",
2542
- "description": "Output format",
2543
- "name": "output",
2544
- "required": false,
2545
- "default": "summary",
2546
- "hasDynamicHelp": false,
2547
- "multiple": false,
2548
- "options": [
2549
- "summary",
2550
- "json"
2551
- ],
2552
- "type": "option"
2553
- },
2554
- "page": {
2555
- "description": "Page number for pagination",
2556
- "name": "page",
2557
- "required": false,
2558
- "default": 1,
2559
- "hasDynamicHelp": false,
2560
- "multiple": false,
2561
- "type": "option"
2562
- },
2563
- "per_page": {
2564
- "description": "Number of results per page",
2565
- "name": "per_page",
2566
- "required": false,
2567
- "default": 50,
2568
- "hasDynamicHelp": false,
2569
- "multiple": false,
2570
- "type": "option"
2571
- },
2572
- "workspace": {
2573
- "char": "w",
2574
- "description": "Workspace ID (optional if set in profile)",
2575
- "name": "workspace",
2576
- "required": false,
2577
- "hasDynamicHelp": false,
2578
- "multiple": false,
2579
- "type": "option"
2580
- }
2581
- },
2582
- "hasDynamicHelp": false,
2583
- "hiddenAliases": [],
2584
- "id": "static_host:list",
2585
- "pluginAlias": "@xano/cli",
2586
- "pluginName": "@xano/cli",
2587
- "pluginType": "core",
2588
- "strict": true,
2589
- "enableJsonFlag": false,
2590
- "isESM": true,
2591
- "relativePath": [
2592
- "dist",
2593
- "commands",
2594
- "static_host",
2595
- "list",
2596
- "index.js"
2597
- ]
2598
- },
2599
2510
  "tenant:create": {
2600
2511
  "aliases": [],
2601
2512
  "args": {
@@ -2820,7 +2731,7 @@
2820
2731
  "index.js"
2821
2732
  ]
2822
2733
  },
2823
- "tenant:deploy_platform": {
2734
+ "tenant:deploy_release": {
2824
2735
  "aliases": [],
2825
2736
  "args": {
2826
2737
  "tenant_name": {
@@ -2829,10 +2740,10 @@
2829
2740
  "required": true
2830
2741
  }
2831
2742
  },
2832
- "description": "Deploy a platform version to a tenant",
2743
+ "description": "Deploy a release to a tenant",
2833
2744
  "examples": [
2834
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2835
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json"
2745
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
2746
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json"
2836
2747
  ],
2837
2748
  "flags": {
2838
2749
  "profile": {
@@ -2868,9 +2779,10 @@
2868
2779
  ],
2869
2780
  "type": "option"
2870
2781
  },
2871
- "platform_id": {
2872
- "description": "Platform ID to deploy",
2873
- "name": "platform_id",
2782
+ "release": {
2783
+ "char": "r",
2784
+ "description": "Release name to deploy",
2785
+ "name": "release",
2874
2786
  "required": true,
2875
2787
  "hasDynamicHelp": false,
2876
2788
  "multiple": false,
@@ -2888,7 +2800,7 @@
2888
2800
  },
2889
2801
  "hasDynamicHelp": false,
2890
2802
  "hiddenAliases": [],
2891
- "id": "tenant:deploy_platform",
2803
+ "id": "tenant:deploy_release",
2892
2804
  "pluginAlias": "@xano/cli",
2893
2805
  "pluginName": "@xano/cli",
2894
2806
  "pluginType": "core",
@@ -2899,11 +2811,11 @@
2899
2811
  "dist",
2900
2812
  "commands",
2901
2813
  "tenant",
2902
- "deploy_platform",
2814
+ "deploy_release",
2903
2815
  "index.js"
2904
2816
  ]
2905
2817
  },
2906
- "tenant:deploy_release": {
2818
+ "tenant:deploy_platform": {
2907
2819
  "aliases": [],
2908
2820
  "args": {
2909
2821
  "tenant_name": {
@@ -2912,10 +2824,10 @@
2912
2824
  "required": true
2913
2825
  }
2914
2826
  },
2915
- "description": "Deploy a release to a tenant",
2827
+ "description": "Deploy a platform version to a tenant",
2916
2828
  "examples": [
2917
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
2918
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json"
2829
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2830
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json"
2919
2831
  ],
2920
2832
  "flags": {
2921
2833
  "profile": {
@@ -2951,10 +2863,9 @@
2951
2863
  ],
2952
2864
  "type": "option"
2953
2865
  },
2954
- "release": {
2955
- "char": "r",
2956
- "description": "Release name to deploy",
2957
- "name": "release",
2866
+ "platform_id": {
2867
+ "description": "Platform ID to deploy",
2868
+ "name": "platform_id",
2958
2869
  "required": true,
2959
2870
  "hasDynamicHelp": false,
2960
2871
  "multiple": false,
@@ -2972,7 +2883,7 @@
2972
2883
  },
2973
2884
  "hasDynamicHelp": false,
2974
2885
  "hiddenAliases": [],
2975
- "id": "tenant:deploy_release",
2886
+ "id": "tenant:deploy_platform",
2976
2887
  "pluginAlias": "@xano/cli",
2977
2888
  "pluginName": "@xano/cli",
2978
2889
  "pluginType": "core",
@@ -2983,7 +2894,7 @@
2983
2894
  "dist",
2984
2895
  "commands",
2985
2896
  "tenant",
2986
- "deploy_release",
2897
+ "deploy_platform",
2987
2898
  "index.js"
2988
2899
  ]
2989
2900
  },
@@ -3116,19 +3027,15 @@
3116
3027
  "index.js"
3117
3028
  ]
3118
3029
  },
3119
- "tenant:get": {
3030
+ "static_host:list": {
3120
3031
  "aliases": [],
3121
- "args": {
3122
- "tenant_name": {
3123
- "description": "Tenant name to retrieve",
3124
- "name": "tenant_name",
3125
- "required": true
3126
- }
3127
- },
3128
- "description": "Get details of a specific tenant",
3032
+ "args": {},
3033
+ "description": "List all static hosts in a workspace from the Xano Metadata API",
3129
3034
  "examples": [
3130
- "$ xano tenant get t1234-abcd-xyz1\nTenant: My Tenant (my-tenant)\n State: ok\n License: tier1\n Domain: my-tenant.xano.io\n Cluster: default\n Release: v1.0\n",
3131
- "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
3035
+ "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
3036
+ "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
3037
+ "$ xano static_host:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"my-static-host\",\n \"domain\": \"example.com\"\n }\n]\n",
3038
+ "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
3132
3039
  ],
3133
3040
  "flags": {
3134
3041
  "profile": {
@@ -3164,9 +3071,27 @@
3164
3071
  ],
3165
3072
  "type": "option"
3166
3073
  },
3074
+ "page": {
3075
+ "description": "Page number for pagination",
3076
+ "name": "page",
3077
+ "required": false,
3078
+ "default": 1,
3079
+ "hasDynamicHelp": false,
3080
+ "multiple": false,
3081
+ "type": "option"
3082
+ },
3083
+ "per_page": {
3084
+ "description": "Number of results per page",
3085
+ "name": "per_page",
3086
+ "required": false,
3087
+ "default": 50,
3088
+ "hasDynamicHelp": false,
3089
+ "multiple": false,
3090
+ "type": "option"
3091
+ },
3167
3092
  "workspace": {
3168
3093
  "char": "w",
3169
- "description": "Workspace ID (uses profile workspace if not provided)",
3094
+ "description": "Workspace ID (optional if set in profile)",
3170
3095
  "name": "workspace",
3171
3096
  "required": false,
3172
3097
  "hasDynamicHelp": false,
@@ -3176,7 +3101,7 @@
3176
3101
  },
3177
3102
  "hasDynamicHelp": false,
3178
3103
  "hiddenAliases": [],
3179
- "id": "tenant:get",
3104
+ "id": "static_host:list",
3180
3105
  "pluginAlias": "@xano/cli",
3181
3106
  "pluginName": "@xano/cli",
3182
3107
  "pluginType": "core",
@@ -3186,8 +3111,8 @@
3186
3111
  "relativePath": [
3187
3112
  "dist",
3188
3113
  "commands",
3189
- "tenant",
3190
- "get",
3114
+ "static_host",
3115
+ "list",
3191
3116
  "index.js"
3192
3117
  ]
3193
3118
  },
@@ -3274,75 +3199,6 @@
3274
3199
  "index.js"
3275
3200
  ]
3276
3201
  },
3277
- "tenant:list": {
3278
- "aliases": [],
3279
- "args": {},
3280
- "description": "List all tenants in a workspace",
3281
- "examples": [
3282
- "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n - Staging (staging) [ok] - tier1\n",
3283
- "$ xano tenant list -w 5 --output json"
3284
- ],
3285
- "flags": {
3286
- "profile": {
3287
- "char": "p",
3288
- "description": "Profile to use (uses default profile if not specified)",
3289
- "env": "XANO_PROFILE",
3290
- "name": "profile",
3291
- "required": false,
3292
- "hasDynamicHelp": false,
3293
- "multiple": false,
3294
- "type": "option"
3295
- },
3296
- "verbose": {
3297
- "char": "v",
3298
- "description": "Show detailed request/response information",
3299
- "env": "XANO_VERBOSE",
3300
- "name": "verbose",
3301
- "required": false,
3302
- "allowNo": false,
3303
- "type": "boolean"
3304
- },
3305
- "output": {
3306
- "char": "o",
3307
- "description": "Output format",
3308
- "name": "output",
3309
- "required": false,
3310
- "default": "summary",
3311
- "hasDynamicHelp": false,
3312
- "multiple": false,
3313
- "options": [
3314
- "summary",
3315
- "json"
3316
- ],
3317
- "type": "option"
3318
- },
3319
- "workspace": {
3320
- "char": "w",
3321
- "description": "Workspace ID (uses profile workspace if not provided)",
3322
- "name": "workspace",
3323
- "required": false,
3324
- "hasDynamicHelp": false,
3325
- "multiple": false,
3326
- "type": "option"
3327
- }
3328
- },
3329
- "hasDynamicHelp": false,
3330
- "hiddenAliases": [],
3331
- "id": "tenant:list",
3332
- "pluginAlias": "@xano/cli",
3333
- "pluginName": "@xano/cli",
3334
- "pluginType": "core",
3335
- "strict": true,
3336
- "enableJsonFlag": false,
3337
- "isESM": true,
3338
- "relativePath": [
3339
- "dist",
3340
- "commands",
3341
- "tenant",
3342
- "list",
3343
- "index.js"
3344
- ]
3345
- },
3346
3202
  "tenant:pull": {
3347
3203
  "aliases": [],
3348
3204
  "args": {
@@ -3789,19 +3645,13 @@
3789
3645
  "index.js"
3790
3646
  ]
3791
3647
  },
3792
- "workflow_test:delete": {
3648
+ "tenant:list": {
3793
3649
  "aliases": [],
3794
- "args": {
3795
- "workflow_test_id": {
3796
- "description": "ID of the workflow test to delete",
3797
- "name": "workflow_test_id",
3798
- "required": true
3799
- }
3800
- },
3801
- "description": "Delete a workflow test",
3650
+ "args": {},
3651
+ "description": "List all tenants in a workspace",
3802
3652
  "examples": [
3803
- "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3804
- "$ xano workflow-test delete 1 --force"
3653
+ "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n - Staging (staging) [ok] - tier1\n",
3654
+ "$ xano tenant list -w 5 --output json"
3805
3655
  ],
3806
3656
  "flags": {
3807
3657
  "profile": {
@@ -3823,14 +3673,6 @@
3823
3673
  "allowNo": false,
3824
3674
  "type": "boolean"
3825
3675
  },
3826
- "force": {
3827
- "char": "f",
3828
- "description": "Skip confirmation prompt",
3829
- "name": "force",
3830
- "required": false,
3831
- "allowNo": false,
3832
- "type": "boolean"
3833
- },
3834
3676
  "output": {
3835
3677
  "char": "o",
3836
3678
  "description": "Output format",
@@ -3857,7 +3699,7 @@
3857
3699
  },
3858
3700
  "hasDynamicHelp": false,
3859
3701
  "hiddenAliases": [],
3860
- "id": "workflow_test:delete",
3702
+ "id": "tenant:list",
3861
3703
  "pluginAlias": "@xano/cli",
3862
3704
  "pluginName": "@xano/cli",
3863
3705
  "pluginType": "core",
@@ -3867,25 +3709,24 @@
3867
3709
  "relativePath": [
3868
3710
  "dist",
3869
3711
  "commands",
3870
- "workflow_test",
3871
- "delete",
3712
+ "tenant",
3713
+ "list",
3872
3714
  "index.js"
3873
3715
  ]
3874
3716
  },
3875
- "workflow_test:get": {
3717
+ "tenant:get": {
3876
3718
  "aliases": [],
3877
3719
  "args": {
3878
- "workflow_test_id": {
3879
- "description": "ID of the workflow test",
3880
- "name": "workflow_test_id",
3720
+ "tenant_name": {
3721
+ "description": "Tenant name to retrieve",
3722
+ "name": "tenant_name",
3881
3723
  "required": true
3882
3724
  }
3883
3725
  },
3884
- "description": "Get a specific workflow test",
3726
+ "description": "Get details of a specific tenant",
3885
3727
  "examples": [
3886
- "$ xano workflow-test get 1\nWorkflow Test: my-test (ID: 1)\n Description: Validates auth endpoints\n Branch: main\n",
3887
- "$ xano workflow-test get 1 -o xs",
3888
- "$ xano workflow-test get 1 -o json"
3728
+ "$ xano tenant get t1234-abcd-xyz1\nTenant: My Tenant (my-tenant)\n State: ok\n License: tier1\n Domain: my-tenant.xano.io\n Cluster: default\n Release: v1.0\n",
3729
+ "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
3889
3730
  ],
3890
3731
  "flags": {
3891
3732
  "profile": {
@@ -3907,13 +3748,6 @@
3907
3748
  "allowNo": false,
3908
3749
  "type": "boolean"
3909
3750
  },
3910
- "include-draft": {
3911
- "description": "Include draft version",
3912
- "name": "include-draft",
3913
- "required": false,
3914
- "allowNo": false,
3915
- "type": "boolean"
3916
- },
3917
3751
  "output": {
3918
3752
  "char": "o",
3919
3753
  "description": "Output format",
@@ -3924,8 +3758,7 @@
3924
3758
  "multiple": false,
3925
3759
  "options": [
3926
3760
  "summary",
3927
- "json",
3928
- "xs"
3761
+ "json"
3929
3762
  ],
3930
3763
  "type": "option"
3931
3764
  },
@@ -3941,7 +3774,7 @@
3941
3774
  },
3942
3775
  "hasDynamicHelp": false,
3943
3776
  "hiddenAliases": [],
3944
- "id": "workflow_test:get",
3777
+ "id": "tenant:get",
3945
3778
  "pluginAlias": "@xano/cli",
3946
3779
  "pluginName": "@xano/cli",
3947
3780
  "pluginType": "core",
@@ -3951,19 +3784,24 @@
3951
3784
  "relativePath": [
3952
3785
  "dist",
3953
3786
  "commands",
3954
- "workflow_test",
3787
+ "tenant",
3955
3788
  "get",
3956
3789
  "index.js"
3957
3790
  ]
3958
3791
  },
3959
- "workflow_test:list": {
3792
+ "workflow_test:delete": {
3960
3793
  "aliases": [],
3961
- "args": {},
3962
- "description": "List all workflow tests in a workspace",
3794
+ "args": {
3795
+ "workflow_test_id": {
3796
+ "description": "ID of the workflow test to delete",
3797
+ "name": "workflow_test_id",
3798
+ "required": true
3799
+ }
3800
+ },
3801
+ "description": "Delete a workflow test",
3963
3802
  "examples": [
3964
- "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
3965
- "$ xano workflow-test list -w 5 --output json",
3966
- "$ xano workflow-test list --branch main"
3803
+ "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3804
+ "$ xano workflow-test delete 1 --force"
3967
3805
  ],
3968
3806
  "flags": {
3969
3807
  "profile": {
@@ -3985,14 +3823,13 @@
3985
3823
  "allowNo": false,
3986
3824
  "type": "boolean"
3987
3825
  },
3988
- "branch": {
3989
- "char": "b",
3990
- "description": "Filter by branch name",
3991
- "name": "branch",
3826
+ "force": {
3827
+ "char": "f",
3828
+ "description": "Skip confirmation prompt",
3829
+ "name": "force",
3992
3830
  "required": false,
3993
- "hasDynamicHelp": false,
3994
- "multiple": false,
3995
- "type": "option"
3831
+ "allowNo": false,
3832
+ "type": "boolean"
3996
3833
  },
3997
3834
  "output": {
3998
3835
  "char": "o",
@@ -4020,7 +3857,7 @@
4020
3857
  },
4021
3858
  "hasDynamicHelp": false,
4022
3859
  "hiddenAliases": [],
4023
- "id": "workflow_test:list",
3860
+ "id": "workflow_test:delete",
4024
3861
  "pluginAlias": "@xano/cli",
4025
3862
  "pluginName": "@xano/cli",
4026
3863
  "pluginType": "core",
@@ -4031,23 +3868,24 @@
4031
3868
  "dist",
4032
3869
  "commands",
4033
3870
  "workflow_test",
4034
- "list",
3871
+ "delete",
4035
3872
  "index.js"
4036
3873
  ]
4037
3874
  },
4038
- "workflow_test:run": {
3875
+ "workflow_test:get": {
4039
3876
  "aliases": [],
4040
3877
  "args": {
4041
3878
  "workflow_test_id": {
4042
- "description": "ID of the workflow test to run",
3879
+ "description": "ID of the workflow test",
4043
3880
  "name": "workflow_test_id",
4044
3881
  "required": true
4045
3882
  }
4046
3883
  },
4047
- "description": "Run a workflow test",
3884
+ "description": "Get a specific workflow test",
4048
3885
  "examples": [
4049
- "$ xano workflow-test run 1\nRunning workflow test 1...\nResult: PASS (1.234s)\n",
4050
- "$ xano workflow-test run 1 -o json"
3886
+ "$ xano workflow-test get 1\nWorkflow Test: my-test (ID: 1)\n Description: Validates auth endpoints\n Branch: main\n",
3887
+ "$ xano workflow-test get 1 -o xs",
3888
+ "$ xano workflow-test get 1 -o json"
4051
3889
  ],
4052
3890
  "flags": {
4053
3891
  "profile": {
@@ -4069,6 +3907,13 @@
4069
3907
  "allowNo": false,
4070
3908
  "type": "boolean"
4071
3909
  },
3910
+ "include-draft": {
3911
+ "description": "Include draft version",
3912
+ "name": "include-draft",
3913
+ "required": false,
3914
+ "allowNo": false,
3915
+ "type": "boolean"
3916
+ },
4072
3917
  "output": {
4073
3918
  "char": "o",
4074
3919
  "description": "Output format",
@@ -4079,7 +3924,8 @@
4079
3924
  "multiple": false,
4080
3925
  "options": [
4081
3926
  "summary",
4082
- "json"
3927
+ "json",
3928
+ "xs"
4083
3929
  ],
4084
3930
  "type": "option"
4085
3931
  },
@@ -4095,7 +3941,7 @@
4095
3941
  },
4096
3942
  "hasDynamicHelp": false,
4097
3943
  "hiddenAliases": [],
4098
- "id": "workflow_test:run",
3944
+ "id": "workflow_test:get",
4099
3945
  "pluginAlias": "@xano/cli",
4100
3946
  "pluginName": "@xano/cli",
4101
3947
  "pluginType": "core",
@@ -4106,17 +3952,18 @@
4106
3952
  "dist",
4107
3953
  "commands",
4108
3954
  "workflow_test",
4109
- "run",
3955
+ "get",
4110
3956
  "index.js"
4111
3957
  ]
4112
3958
  },
4113
- "workflow_test:run_all": {
3959
+ "workflow_test:list": {
4114
3960
  "aliases": [],
4115
3961
  "args": {},
4116
- "description": "Run all workflow tests in a workspace",
3962
+ "description": "List all workflow tests in a workspace",
4117
3963
  "examples": [
4118
- "$ xano workflow-test run-all\nRunning 3 workflow tests...\n\nPASS my-test (1.234s)\nPASS auth-flow (0.567s)\nFAIL data-validation (0.890s)\n Error: assertion failed at step 3\n\nResults: 2 passed, 1 failed (2.691s total)\n",
4119
- "$ xano workflow-test run-all --branch main -o json"
3964
+ "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
3965
+ "$ xano workflow-test list -w 5 --output json",
3966
+ "$ xano workflow-test list --branch main"
4120
3967
  ],
4121
3968
  "flags": {
4122
3969
  "profile": {
@@ -4173,7 +4020,7 @@
4173
4020
  },
4174
4021
  "hasDynamicHelp": false,
4175
4022
  "hiddenAliases": [],
4176
- "id": "workflow_test:run_all",
4023
+ "id": "workflow_test:list",
4177
4024
  "pluginAlias": "@xano/cli",
4178
4025
  "pluginName": "@xano/cli",
4179
4026
  "pluginType": "core",
@@ -4184,19 +4031,97 @@
4184
4031
  "dist",
4185
4032
  "commands",
4186
4033
  "workflow_test",
4187
- "run_all",
4034
+ "list",
4188
4035
  "index.js"
4189
4036
  ]
4190
4037
  },
4191
- "workspace:create": {
4038
+ "workflow_test:run_all": {
4192
4039
  "aliases": [],
4193
- "args": {
4194
- "name": {
4195
- "description": "Name of the workspace",
4196
- "name": "name",
4197
- "required": true
4198
- }
4199
- },
4040
+ "args": {},
4041
+ "description": "Run all workflow tests in a workspace",
4042
+ "examples": [
4043
+ "$ xano workflow-test run-all\nRunning 3 workflow tests...\n\nPASS my-test (1.234s)\nPASS auth-flow (0.567s)\nFAIL data-validation (0.890s)\n Error: assertion failed at step 3\n\nResults: 2 passed, 1 failed (2.691s total)\n",
4044
+ "$ xano workflow-test run-all --branch main -o json"
4045
+ ],
4046
+ "flags": {
4047
+ "profile": {
4048
+ "char": "p",
4049
+ "description": "Profile to use (uses default profile if not specified)",
4050
+ "env": "XANO_PROFILE",
4051
+ "name": "profile",
4052
+ "required": false,
4053
+ "hasDynamicHelp": false,
4054
+ "multiple": false,
4055
+ "type": "option"
4056
+ },
4057
+ "verbose": {
4058
+ "char": "v",
4059
+ "description": "Show detailed request/response information",
4060
+ "env": "XANO_VERBOSE",
4061
+ "name": "verbose",
4062
+ "required": false,
4063
+ "allowNo": false,
4064
+ "type": "boolean"
4065
+ },
4066
+ "branch": {
4067
+ "char": "b",
4068
+ "description": "Filter by branch name",
4069
+ "name": "branch",
4070
+ "required": false,
4071
+ "hasDynamicHelp": false,
4072
+ "multiple": false,
4073
+ "type": "option"
4074
+ },
4075
+ "output": {
4076
+ "char": "o",
4077
+ "description": "Output format",
4078
+ "name": "output",
4079
+ "required": false,
4080
+ "default": "summary",
4081
+ "hasDynamicHelp": false,
4082
+ "multiple": false,
4083
+ "options": [
4084
+ "summary",
4085
+ "json"
4086
+ ],
4087
+ "type": "option"
4088
+ },
4089
+ "workspace": {
4090
+ "char": "w",
4091
+ "description": "Workspace ID (uses profile workspace if not provided)",
4092
+ "name": "workspace",
4093
+ "required": false,
4094
+ "hasDynamicHelp": false,
4095
+ "multiple": false,
4096
+ "type": "option"
4097
+ }
4098
+ },
4099
+ "hasDynamicHelp": false,
4100
+ "hiddenAliases": [],
4101
+ "id": "workflow_test:run_all",
4102
+ "pluginAlias": "@xano/cli",
4103
+ "pluginName": "@xano/cli",
4104
+ "pluginType": "core",
4105
+ "strict": true,
4106
+ "enableJsonFlag": false,
4107
+ "isESM": true,
4108
+ "relativePath": [
4109
+ "dist",
4110
+ "commands",
4111
+ "workflow_test",
4112
+ "run_all",
4113
+ "index.js"
4114
+ ]
4115
+ },
4116
+ "workspace:create": {
4117
+ "aliases": [],
4118
+ "args": {
4119
+ "name": {
4120
+ "description": "Name of the workspace",
4121
+ "name": "name",
4122
+ "required": true
4123
+ }
4124
+ },
4200
4125
  "description": "Create a new workspace via the Xano Metadata API",
4201
4126
  "examples": [
4202
4127
  "$ xano workspace create my-workspace\nCreated workspace: my-workspace (ID: 123)\n",
@@ -4714,17 +4639,17 @@
4714
4639
  "type": "option"
4715
4640
  },
4716
4641
  "delete": {
4717
- "description": "Delete workspace objects not included in the push (default: false)",
4642
+ "description": "Delete workspace objects not included in the push",
4718
4643
  "name": "delete",
4719
4644
  "required": false,
4720
- "allowNo": true,
4645
+ "allowNo": false,
4721
4646
  "type": "boolean"
4722
4647
  },
4723
4648
  "env": {
4724
- "description": "Include environment variables in import (default: true, use --no-env to exclude)",
4649
+ "description": "Include environment variables in import",
4725
4650
  "name": "env",
4726
4651
  "required": false,
4727
- "allowNo": true,
4652
+ "allowNo": false,
4728
4653
  "type": "boolean"
4729
4654
  },
4730
4655
  "partial": {
@@ -4735,10 +4660,10 @@
4735
4660
  "type": "boolean"
4736
4661
  },
4737
4662
  "records": {
4738
- "description": "Include records in import (default: true, use --no-records to exclude)",
4663
+ "description": "Include records in import",
4739
4664
  "name": "records",
4740
4665
  "required": false,
4741
- "allowNo": true,
4666
+ "allowNo": false,
4742
4667
  "type": "boolean"
4743
4668
  },
4744
4669
  "sync-guids": {
@@ -4940,26 +4865,19 @@
4940
4865
  "index.js"
4941
4866
  ]
4942
4867
  },
4943
- "static_host:build:get": {
4868
+ "workflow_test:run": {
4944
4869
  "aliases": [],
4945
4870
  "args": {
4946
- "build_id": {
4947
- "description": "Build ID",
4948
- "name": "build_id",
4949
- "required": true
4950
- },
4951
- "static_host": {
4952
- "description": "Static Host name",
4953
- "name": "static_host",
4871
+ "workflow_test_id": {
4872
+ "description": "ID of the workflow test to run",
4873
+ "name": "workflow_test_id",
4954
4874
  "required": true
4955
4875
  }
4956
4876
  },
4957
- "description": "Get details of a specific build for a static host",
4877
+ "description": "Run a workflow test",
4958
4878
  "examples": [
4959
- "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
4960
- "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
4961
- "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
4962
- "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
4879
+ "$ xano workflow-test run 1\nRunning workflow test 1...\nResult: PASS (1.234s)\n",
4880
+ "$ xano workflow-test run 1 -o json"
4963
4881
  ],
4964
4882
  "flags": {
4965
4883
  "profile": {
@@ -4997,7 +4915,7 @@
4997
4915
  },
4998
4916
  "workspace": {
4999
4917
  "char": "w",
5000
- "description": "Workspace ID (optional if set in profile)",
4918
+ "description": "Workspace ID (uses profile workspace if not provided)",
5001
4919
  "name": "workspace",
5002
4920
  "required": false,
5003
4921
  "hasDynamicHelp": false,
@@ -5007,7 +4925,7 @@
5007
4925
  },
5008
4926
  "hasDynamicHelp": false,
5009
4927
  "hiddenAliases": [],
5010
- "id": "static_host:build:get",
4928
+ "id": "workflow_test:run",
5011
4929
  "pluginAlias": "@xano/cli",
5012
4930
  "pluginName": "@xano/cli",
5013
4931
  "pluginType": "core",
@@ -5017,27 +4935,31 @@
5017
4935
  "relativePath": [
5018
4936
  "dist",
5019
4937
  "commands",
5020
- "static_host",
5021
- "build",
5022
- "get",
4938
+ "workflow_test",
4939
+ "run",
5023
4940
  "index.js"
5024
4941
  ]
5025
4942
  },
5026
- "static_host:build:list": {
4943
+ "static_host:build:get": {
5027
4944
  "aliases": [],
5028
4945
  "args": {
4946
+ "build_id": {
4947
+ "description": "Build ID",
4948
+ "name": "build_id",
4949
+ "required": true
4950
+ },
5029
4951
  "static_host": {
5030
4952
  "description": "Static Host name",
5031
4953
  "name": "static_host",
5032
4954
  "required": true
5033
4955
  }
5034
4956
  },
5035
- "description": "List all builds for a static host",
4957
+ "description": "Get details of a specific build for a static host",
5036
4958
  "examples": [
5037
- "$ xano static_host:build:list default -w 40\nAvailable builds:\n - v1.0.0 (ID: 1) - Status: completed\n - v1.0.1 (ID: 2) - Status: pending\n",
5038
- "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
5039
- "$ xano static_host:build:list default -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n }\n]\n",
5040
- "$ xano static_host:build:list default -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"v1.0.2\"\n }\n]\n"
4959
+ "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
4960
+ "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
4961
+ "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
4962
+ "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
5041
4963
  ],
5042
4964
  "flags": {
5043
4965
  "profile": {
@@ -5073,24 +4995,6 @@
5073
4995
  ],
5074
4996
  "type": "option"
5075
4997
  },
5076
- "page": {
5077
- "description": "Page number for pagination",
5078
- "name": "page",
5079
- "required": false,
5080
- "default": 1,
5081
- "hasDynamicHelp": false,
5082
- "multiple": false,
5083
- "type": "option"
5084
- },
5085
- "per_page": {
5086
- "description": "Number of results per page",
5087
- "name": "per_page",
5088
- "required": false,
5089
- "default": 50,
5090
- "hasDynamicHelp": false,
5091
- "multiple": false,
5092
- "type": "option"
5093
- },
5094
4998
  "workspace": {
5095
4999
  "char": "w",
5096
5000
  "description": "Workspace ID (optional if set in profile)",
@@ -5103,7 +5007,7 @@
5103
5007
  },
5104
5008
  "hasDynamicHelp": false,
5105
5009
  "hiddenAliases": [],
5106
- "id": "static_host:build:list",
5010
+ "id": "static_host:build:get",
5107
5011
  "pluginAlias": "@xano/cli",
5108
5012
  "pluginName": "@xano/cli",
5109
5013
  "pluginType": "core",
@@ -5115,23 +5019,25 @@
5115
5019
  "commands",
5116
5020
  "static_host",
5117
5021
  "build",
5118
- "list",
5022
+ "get",
5119
5023
  "index.js"
5120
5024
  ]
5121
5025
  },
5122
- "tenant:backup:create": {
5026
+ "static_host:build:list": {
5123
5027
  "aliases": [],
5124
5028
  "args": {
5125
- "tenant_name": {
5126
- "description": "Tenant name to back up",
5127
- "name": "tenant_name",
5029
+ "static_host": {
5030
+ "description": "Static Host name",
5031
+ "name": "static_host",
5128
5032
  "required": true
5129
5033
  }
5130
5034
  },
5131
- "description": "Create a backup for a tenant",
5035
+ "description": "List all builds for a static host",
5132
5036
  "examples": [
5133
- "$ xano tenant backup create t1234-abcd-xyz1 --description \"Pre-deploy backup\"\nCreated backup #15 for tenant t1234-abcd-xyz1\n",
5134
- "$ xano tenant backup create t1234-abcd-xyz1 -d \"Daily backup\" -o json"
5037
+ "$ xano static_host:build:list default -w 40\nAvailable builds:\n - v1.0.0 (ID: 1) - Status: completed\n - v1.0.1 (ID: 2) - Status: pending\n",
5038
+ "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
5039
+ "$ xano static_host:build:list default -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n }\n]\n",
5040
+ "$ xano static_host:build:list default -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"v1.0.2\"\n }\n]\n"
5135
5041
  ],
5136
5042
  "flags": {
5137
5043
  "profile": {
@@ -5153,16 +5059,6 @@
5153
5059
  "allowNo": false,
5154
5060
  "type": "boolean"
5155
5061
  },
5156
- "description": {
5157
- "char": "d",
5158
- "description": "Backup description",
5159
- "name": "description",
5160
- "required": false,
5161
- "default": "",
5162
- "hasDynamicHelp": false,
5163
- "multiple": false,
5164
- "type": "option"
5165
- },
5166
5062
  "output": {
5167
5063
  "char": "o",
5168
5064
  "description": "Output format",
@@ -5177,9 +5073,27 @@
5177
5073
  ],
5178
5074
  "type": "option"
5179
5075
  },
5076
+ "page": {
5077
+ "description": "Page number for pagination",
5078
+ "name": "page",
5079
+ "required": false,
5080
+ "default": 1,
5081
+ "hasDynamicHelp": false,
5082
+ "multiple": false,
5083
+ "type": "option"
5084
+ },
5085
+ "per_page": {
5086
+ "description": "Number of results per page",
5087
+ "name": "per_page",
5088
+ "required": false,
5089
+ "default": 50,
5090
+ "hasDynamicHelp": false,
5091
+ "multiple": false,
5092
+ "type": "option"
5093
+ },
5180
5094
  "workspace": {
5181
5095
  "char": "w",
5182
- "description": "Workspace ID (uses profile workspace if not provided)",
5096
+ "description": "Workspace ID (optional if set in profile)",
5183
5097
  "name": "workspace",
5184
5098
  "required": false,
5185
5099
  "hasDynamicHelp": false,
@@ -5189,7 +5103,7 @@
5189
5103
  },
5190
5104
  "hasDynamicHelp": false,
5191
5105
  "hiddenAliases": [],
5192
- "id": "tenant:backup:create",
5106
+ "id": "static_host:build:list",
5193
5107
  "pluginAlias": "@xano/cli",
5194
5108
  "pluginName": "@xano/cli",
5195
5109
  "pluginType": "core",
@@ -5199,26 +5113,25 @@
5199
5113
  "relativePath": [
5200
5114
  "dist",
5201
5115
  "commands",
5202
- "tenant",
5203
- "backup",
5204
- "create",
5116
+ "static_host",
5117
+ "build",
5118
+ "list",
5205
5119
  "index.js"
5206
5120
  ]
5207
5121
  },
5208
- "tenant:backup:delete": {
5122
+ "tenant:backup:create": {
5209
5123
  "aliases": [],
5210
5124
  "args": {
5211
5125
  "tenant_name": {
5212
- "description": "Tenant name that owns the backup",
5126
+ "description": "Tenant name to back up",
5213
5127
  "name": "tenant_name",
5214
5128
  "required": true
5215
5129
  }
5216
5130
  },
5217
- "description": "Delete a tenant backup permanently. This action cannot be undone.",
5131
+ "description": "Create a backup for a tenant",
5218
5132
  "examples": [
5219
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to delete backup #10? This action cannot be undone. (y/N) y\nDeleted backup #10\n",
5220
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 --force",
5221
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 -o json"
5133
+ "$ xano tenant backup create t1234-abcd-xyz1 --description \"Pre-deploy backup\"\nCreated backup #15 for tenant t1234-abcd-xyz1\n",
5134
+ "$ xano tenant backup create t1234-abcd-xyz1 -d \"Daily backup\" -o json"
5222
5135
  ],
5223
5136
  "flags": {
5224
5137
  "profile": {
@@ -5240,22 +5153,16 @@
5240
5153
  "allowNo": false,
5241
5154
  "type": "boolean"
5242
5155
  },
5243
- "backup_id": {
5244
- "description": "Backup ID to delete",
5245
- "name": "backup_id",
5246
- "required": true,
5156
+ "description": {
5157
+ "char": "d",
5158
+ "description": "Backup description",
5159
+ "name": "description",
5160
+ "required": false,
5161
+ "default": "",
5247
5162
  "hasDynamicHelp": false,
5248
5163
  "multiple": false,
5249
5164
  "type": "option"
5250
5165
  },
5251
- "force": {
5252
- "char": "f",
5253
- "description": "Skip confirmation prompt",
5254
- "name": "force",
5255
- "required": false,
5256
- "allowNo": false,
5257
- "type": "boolean"
5258
- },
5259
5166
  "output": {
5260
5167
  "char": "o",
5261
5168
  "description": "Output format",
@@ -5282,7 +5189,7 @@
5282
5189
  },
5283
5190
  "hasDynamicHelp": false,
5284
5191
  "hiddenAliases": [],
5285
- "id": "tenant:backup:delete",
5192
+ "id": "tenant:backup:create",
5286
5193
  "pluginAlias": "@xano/cli",
5287
5194
  "pluginName": "@xano/cli",
5288
5195
  "pluginType": "core",
@@ -5294,7 +5201,7 @@
5294
5201
  "commands",
5295
5202
  "tenant",
5296
5203
  "backup",
5297
- "delete",
5204
+ "create",
5298
5205
  "index.js"
5299
5206
  ]
5300
5207
  },
@@ -5476,105 +5383,19 @@
5476
5383
  "index.js"
5477
5384
  ]
5478
5385
  },
5479
- "tenant:backup:restore": {
5386
+ "tenant:backup:import": {
5480
5387
  "aliases": [],
5481
5388
  "args": {
5482
5389
  "tenant_name": {
5483
- "description": "Tenant name to restore",
5390
+ "description": "Tenant name to import backup into",
5484
5391
  "name": "tenant_name",
5485
5392
  "required": true
5486
5393
  }
5487
5394
  },
5488
- "description": "Restore a tenant from a backup. This replaces the current tenant data.",
5489
- "examples": [
5490
- "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to restore tenant t1234-abcd-xyz1 from backup 10? This will replace current data. (y/N) y\nRestored tenant t1234-abcd-xyz1 from backup #10\n",
5491
- "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
5492
- ],
5493
- "flags": {
5494
- "profile": {
5495
- "char": "p",
5496
- "description": "Profile to use (uses default profile if not specified)",
5497
- "env": "XANO_PROFILE",
5498
- "name": "profile",
5499
- "required": false,
5500
- "hasDynamicHelp": false,
5501
- "multiple": false,
5502
- "type": "option"
5503
- },
5504
- "verbose": {
5505
- "char": "v",
5506
- "description": "Show detailed request/response information",
5507
- "env": "XANO_VERBOSE",
5508
- "name": "verbose",
5509
- "required": false,
5510
- "allowNo": false,
5511
- "type": "boolean"
5512
- },
5513
- "backup_id": {
5514
- "description": "Backup ID to restore from",
5515
- "name": "backup_id",
5516
- "required": true,
5517
- "hasDynamicHelp": false,
5518
- "multiple": false,
5519
- "type": "option"
5520
- },
5521
- "force": {
5522
- "char": "f",
5523
- "description": "Skip confirmation prompt",
5524
- "name": "force",
5525
- "required": false,
5526
- "allowNo": false,
5527
- "type": "boolean"
5528
- },
5529
- "output": {
5530
- "char": "o",
5531
- "description": "Output format",
5532
- "name": "output",
5533
- "required": false,
5534
- "default": "summary",
5535
- "hasDynamicHelp": false,
5536
- "multiple": false,
5537
- "options": [
5538
- "summary",
5539
- "json"
5540
- ],
5541
- "type": "option"
5542
- },
5543
- "workspace": {
5544
- "char": "w",
5545
- "description": "Workspace ID (uses profile workspace if not provided)",
5546
- "name": "workspace",
5547
- "required": false,
5548
- "hasDynamicHelp": false,
5549
- "multiple": false,
5550
- "type": "option"
5551
- }
5552
- },
5553
- "hasDynamicHelp": false,
5554
- "hiddenAliases": [],
5555
- "id": "tenant:backup:restore",
5556
- "pluginAlias": "@xano/cli",
5557
- "pluginName": "@xano/cli",
5558
- "pluginType": "core",
5559
- "strict": true,
5560
- "enableJsonFlag": false,
5561
- "isESM": true,
5562
- "relativePath": [
5563
- "dist",
5564
- "commands",
5565
- "tenant",
5566
- "backup",
5567
- "restore",
5568
- "index.js"
5569
- ]
5570
- },
5571
- "tenant:cluster:create": {
5572
- "aliases": [],
5573
- "args": {},
5574
- "description": "Create a new tenant cluster",
5395
+ "description": "Import a backup file into a tenant",
5575
5396
  "examples": [
5576
- "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5577
- "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5397
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5398
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5578
5399
  ],
5579
5400
  "flags": {
5580
5401
  "profile": {
@@ -5596,49 +5417,20 @@
5596
5417
  "allowNo": false,
5597
5418
  "type": "boolean"
5598
5419
  },
5599
- "credentials": {
5600
- "description": "Kubeconfig credentials (raw text)",
5601
- "exclusive": [
5602
- "credentials_file"
5603
- ],
5604
- "name": "credentials",
5605
- "required": false,
5606
- "hasDynamicHelp": false,
5607
- "multiple": false,
5608
- "type": "option"
5609
- },
5610
- "credentials_file": {
5611
- "description": "Path to kubeconfig credentials file",
5612
- "exclusive": [
5613
- "credentials"
5614
- ],
5615
- "name": "credentials_file",
5616
- "required": false,
5617
- "hasDynamicHelp": false,
5618
- "multiple": false,
5619
- "type": "option"
5620
- },
5621
5420
  "description": {
5622
5421
  "char": "d",
5623
- "description": "Cluster description",
5422
+ "description": "Backup description",
5624
5423
  "name": "description",
5625
5424
  "required": false,
5425
+ "default": "",
5626
5426
  "hasDynamicHelp": false,
5627
5427
  "multiple": false,
5628
5428
  "type": "option"
5629
5429
  },
5630
- "domain": {
5631
- "description": "Custom domain for the cluster",
5632
- "name": "domain",
5633
- "required": false,
5634
- "hasDynamicHelp": false,
5635
- "multiple": false,
5636
- "type": "option"
5637
- },
5638
- "name": {
5639
- "char": "n",
5640
- "description": "Cluster name",
5641
- "name": "name",
5430
+ "file": {
5431
+ "char": "f",
5432
+ "description": "Path to the backup file (.tar.gz)",
5433
+ "name": "file",
5642
5434
  "required": true,
5643
5435
  "hasDynamicHelp": false,
5644
5436
  "multiple": false,
@@ -5658,23 +5450,19 @@
5658
5450
  ],
5659
5451
  "type": "option"
5660
5452
  },
5661
- "type": {
5662
- "description": "Cluster type",
5663
- "name": "type",
5453
+ "workspace": {
5454
+ "char": "w",
5455
+ "description": "Workspace ID (uses profile workspace if not provided)",
5456
+ "name": "workspace",
5664
5457
  "required": false,
5665
- "default": "standard",
5666
5458
  "hasDynamicHelp": false,
5667
5459
  "multiple": false,
5668
- "options": [
5669
- "standard",
5670
- "run"
5671
- ],
5672
5460
  "type": "option"
5673
5461
  }
5674
5462
  },
5675
5463
  "hasDynamicHelp": false,
5676
5464
  "hiddenAliases": [],
5677
- "id": "tenant:cluster:create",
5465
+ "id": "tenant:backup:import",
5678
5466
  "pluginAlias": "@xano/cli",
5679
5467
  "pluginName": "@xano/cli",
5680
5468
  "pluginType": "core",
@@ -5685,24 +5473,25 @@
5685
5473
  "dist",
5686
5474
  "commands",
5687
5475
  "tenant",
5688
- "cluster",
5689
- "create",
5476
+ "backup",
5477
+ "import",
5690
5478
  "index.js"
5691
5479
  ]
5692
5480
  },
5693
- "tenant:backup:import": {
5481
+ "tenant:backup:delete": {
5694
5482
  "aliases": [],
5695
5483
  "args": {
5696
5484
  "tenant_name": {
5697
- "description": "Tenant name to import backup into",
5485
+ "description": "Tenant name that owns the backup",
5698
5486
  "name": "tenant_name",
5699
5487
  "required": true
5700
5488
  }
5701
5489
  },
5702
- "description": "Import a backup file into a tenant",
5490
+ "description": "Delete a tenant backup permanently. This action cannot be undone.",
5703
5491
  "examples": [
5704
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5705
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5492
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to delete backup #10? This action cannot be undone. (y/N) y\nDeleted backup #10\n",
5493
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 --force",
5494
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 -o json"
5706
5495
  ],
5707
5496
  "flags": {
5708
5497
  "profile": {
@@ -5720,29 +5509,26 @@
5720
5509
  "description": "Show detailed request/response information",
5721
5510
  "env": "XANO_VERBOSE",
5722
5511
  "name": "verbose",
5723
- "required": false,
5724
- "allowNo": false,
5725
- "type": "boolean"
5726
- },
5727
- "description": {
5728
- "char": "d",
5729
- "description": "Backup description",
5730
- "name": "description",
5731
- "required": false,
5732
- "default": "",
5733
- "hasDynamicHelp": false,
5734
- "multiple": false,
5735
- "type": "option"
5512
+ "required": false,
5513
+ "allowNo": false,
5514
+ "type": "boolean"
5736
5515
  },
5737
- "file": {
5738
- "char": "f",
5739
- "description": "Path to the backup file (.tar.gz)",
5740
- "name": "file",
5516
+ "backup_id": {
5517
+ "description": "Backup ID to delete",
5518
+ "name": "backup_id",
5741
5519
  "required": true,
5742
5520
  "hasDynamicHelp": false,
5743
5521
  "multiple": false,
5744
5522
  "type": "option"
5745
5523
  },
5524
+ "force": {
5525
+ "char": "f",
5526
+ "description": "Skip confirmation prompt",
5527
+ "name": "force",
5528
+ "required": false,
5529
+ "allowNo": false,
5530
+ "type": "boolean"
5531
+ },
5746
5532
  "output": {
5747
5533
  "char": "o",
5748
5534
  "description": "Output format",
@@ -5769,7 +5555,7 @@
5769
5555
  },
5770
5556
  "hasDynamicHelp": false,
5771
5557
  "hiddenAliases": [],
5772
- "id": "tenant:backup:import",
5558
+ "id": "tenant:backup:delete",
5773
5559
  "pluginAlias": "@xano/cli",
5774
5560
  "pluginName": "@xano/cli",
5775
5561
  "pluginType": "core",
@@ -5781,24 +5567,23 @@
5781
5567
  "commands",
5782
5568
  "tenant",
5783
5569
  "backup",
5784
- "import",
5570
+ "delete",
5785
5571
  "index.js"
5786
5572
  ]
5787
5573
  },
5788
- "tenant:cluster:delete": {
5574
+ "tenant:backup:restore": {
5789
5575
  "aliases": [],
5790
5576
  "args": {
5791
- "cluster_id": {
5792
- "description": "Cluster ID to delete",
5793
- "name": "cluster_id",
5577
+ "tenant_name": {
5578
+ "description": "Tenant name to restore",
5579
+ "name": "tenant_name",
5794
5580
  "required": true
5795
5581
  }
5796
5582
  },
5797
- "description": "Delete a tenant cluster. This action cannot be undone.",
5583
+ "description": "Restore a tenant from a backup. This replaces the current tenant data.",
5798
5584
  "examples": [
5799
- "$ xano tenant cluster delete 3\nAre you sure you want to delete tenant cluster 3? This action cannot be undone. (y/N) y\nTenant cluster 3 deleted successfully\n",
5800
- "$ xano tenant cluster delete 3 --force\nTenant cluster 3 deleted successfully\n",
5801
- "$ xano tenant cluster delete 3 -f -o json"
5585
+ "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to restore tenant t1234-abcd-xyz1 from backup 10? This will replace current data. (y/N) y\nRestored tenant t1234-abcd-xyz1 from backup #10\n",
5586
+ "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
5802
5587
  ],
5803
5588
  "flags": {
5804
5589
  "profile": {
@@ -5820,6 +5605,14 @@
5820
5605
  "allowNo": false,
5821
5606
  "type": "boolean"
5822
5607
  },
5608
+ "backup_id": {
5609
+ "description": "Backup ID to restore from",
5610
+ "name": "backup_id",
5611
+ "required": true,
5612
+ "hasDynamicHelp": false,
5613
+ "multiple": false,
5614
+ "type": "option"
5615
+ },
5823
5616
  "force": {
5824
5617
  "char": "f",
5825
5618
  "description": "Skip confirmation prompt",
@@ -5841,11 +5634,20 @@
5841
5634
  "json"
5842
5635
  ],
5843
5636
  "type": "option"
5637
+ },
5638
+ "workspace": {
5639
+ "char": "w",
5640
+ "description": "Workspace ID (uses profile workspace if not provided)",
5641
+ "name": "workspace",
5642
+ "required": false,
5643
+ "hasDynamicHelp": false,
5644
+ "multiple": false,
5645
+ "type": "option"
5844
5646
  }
5845
5647
  },
5846
5648
  "hasDynamicHelp": false,
5847
5649
  "hiddenAliases": [],
5848
- "id": "tenant:cluster:delete",
5650
+ "id": "tenant:backup:restore",
5849
5651
  "pluginAlias": "@xano/cli",
5850
5652
  "pluginName": "@xano/cli",
5851
5653
  "pluginType": "core",
@@ -5856,24 +5658,18 @@
5856
5658
  "dist",
5857
5659
  "commands",
5858
5660
  "tenant",
5859
- "cluster",
5860
- "delete",
5661
+ "backup",
5662
+ "restore",
5861
5663
  "index.js"
5862
5664
  ]
5863
5665
  },
5864
- "tenant:cluster:edit": {
5666
+ "tenant:cluster:create": {
5865
5667
  "aliases": [],
5866
- "args": {
5867
- "cluster_id": {
5868
- "description": "Cluster ID to edit",
5869
- "name": "cluster_id",
5870
- "required": true
5871
- }
5872
- },
5873
- "description": "Update an existing tenant cluster",
5668
+ "args": {},
5669
+ "description": "Create a new tenant cluster",
5874
5670
  "examples": [
5875
- "$ xano tenant cluster edit 1 --name \"us-east-1-updated\" --description \"Updated cluster\" --domain \"us-east.xano.io\" --type standard\nUpdated tenant cluster: us-east-1-updated (standard) - ID: 1\n",
5876
- "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
5671
+ "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5672
+ "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5877
5673
  ],
5878
5674
  "flags": {
5879
5675
  "profile": {
@@ -5895,11 +5691,33 @@
5895
5691
  "allowNo": false,
5896
5692
  "type": "boolean"
5897
5693
  },
5694
+ "credentials": {
5695
+ "description": "Kubeconfig credentials (raw text)",
5696
+ "exclusive": [
5697
+ "credentials_file"
5698
+ ],
5699
+ "name": "credentials",
5700
+ "required": false,
5701
+ "hasDynamicHelp": false,
5702
+ "multiple": false,
5703
+ "type": "option"
5704
+ },
5705
+ "credentials_file": {
5706
+ "description": "Path to kubeconfig credentials file",
5707
+ "exclusive": [
5708
+ "credentials"
5709
+ ],
5710
+ "name": "credentials_file",
5711
+ "required": false,
5712
+ "hasDynamicHelp": false,
5713
+ "multiple": false,
5714
+ "type": "option"
5715
+ },
5898
5716
  "description": {
5899
5717
  "char": "d",
5900
5718
  "description": "Cluster description",
5901
5719
  "name": "description",
5902
- "required": true,
5720
+ "required": false,
5903
5721
  "hasDynamicHelp": false,
5904
5722
  "multiple": false,
5905
5723
  "type": "option"
@@ -5907,7 +5725,7 @@
5907
5725
  "domain": {
5908
5726
  "description": "Custom domain for the cluster",
5909
5727
  "name": "domain",
5910
- "required": true,
5728
+ "required": false,
5911
5729
  "hasDynamicHelp": false,
5912
5730
  "multiple": false,
5913
5731
  "type": "option"
@@ -5938,7 +5756,8 @@
5938
5756
  "type": {
5939
5757
  "description": "Cluster type",
5940
5758
  "name": "type",
5941
- "required": true,
5759
+ "required": false,
5760
+ "default": "standard",
5942
5761
  "hasDynamicHelp": false,
5943
5762
  "multiple": false,
5944
5763
  "options": [
@@ -5950,7 +5769,7 @@
5950
5769
  },
5951
5770
  "hasDynamicHelp": false,
5952
5771
  "hiddenAliases": [],
5953
- "id": "tenant:cluster:edit",
5772
+ "id": "tenant:cluster:create",
5954
5773
  "pluginAlias": "@xano/cli",
5955
5774
  "pluginName": "@xano/cli",
5956
5775
  "pluginType": "core",
@@ -5962,7 +5781,83 @@
5962
5781
  "commands",
5963
5782
  "tenant",
5964
5783
  "cluster",
5965
- "edit",
5784
+ "create",
5785
+ "index.js"
5786
+ ]
5787
+ },
5788
+ "tenant:cluster:delete": {
5789
+ "aliases": [],
5790
+ "args": {
5791
+ "cluster_id": {
5792
+ "description": "Cluster ID to delete",
5793
+ "name": "cluster_id",
5794
+ "required": true
5795
+ }
5796
+ },
5797
+ "description": "Delete a tenant cluster. This action cannot be undone.",
5798
+ "examples": [
5799
+ "$ xano tenant cluster delete 3\nAre you sure you want to delete tenant cluster 3? This action cannot be undone. (y/N) y\nTenant cluster 3 deleted successfully\n",
5800
+ "$ xano tenant cluster delete 3 --force\nTenant cluster 3 deleted successfully\n",
5801
+ "$ xano tenant cluster delete 3 -f -o json"
5802
+ ],
5803
+ "flags": {
5804
+ "profile": {
5805
+ "char": "p",
5806
+ "description": "Profile to use (uses default profile if not specified)",
5807
+ "env": "XANO_PROFILE",
5808
+ "name": "profile",
5809
+ "required": false,
5810
+ "hasDynamicHelp": false,
5811
+ "multiple": false,
5812
+ "type": "option"
5813
+ },
5814
+ "verbose": {
5815
+ "char": "v",
5816
+ "description": "Show detailed request/response information",
5817
+ "env": "XANO_VERBOSE",
5818
+ "name": "verbose",
5819
+ "required": false,
5820
+ "allowNo": false,
5821
+ "type": "boolean"
5822
+ },
5823
+ "force": {
5824
+ "char": "f",
5825
+ "description": "Skip confirmation prompt",
5826
+ "name": "force",
5827
+ "required": false,
5828
+ "allowNo": false,
5829
+ "type": "boolean"
5830
+ },
5831
+ "output": {
5832
+ "char": "o",
5833
+ "description": "Output format",
5834
+ "name": "output",
5835
+ "required": false,
5836
+ "default": "summary",
5837
+ "hasDynamicHelp": false,
5838
+ "multiple": false,
5839
+ "options": [
5840
+ "summary",
5841
+ "json"
5842
+ ],
5843
+ "type": "option"
5844
+ }
5845
+ },
5846
+ "hasDynamicHelp": false,
5847
+ "hiddenAliases": [],
5848
+ "id": "tenant:cluster:delete",
5849
+ "pluginAlias": "@xano/cli",
5850
+ "pluginName": "@xano/cli",
5851
+ "pluginType": "core",
5852
+ "strict": true,
5853
+ "enableJsonFlag": false,
5854
+ "isESM": true,
5855
+ "relativePath": [
5856
+ "dist",
5857
+ "commands",
5858
+ "tenant",
5859
+ "cluster",
5860
+ "delete",
5966
5861
  "index.js"
5967
5862
  ]
5968
5863
  },
@@ -6188,19 +6083,19 @@
6188
6083
  "index.js"
6189
6084
  ]
6190
6085
  },
6191
- "tenant:env:get": {
6086
+ "tenant:cluster:edit": {
6192
6087
  "aliases": [],
6193
6088
  "args": {
6194
- "tenant_name": {
6195
- "description": "Tenant name",
6196
- "name": "tenant_name",
6089
+ "cluster_id": {
6090
+ "description": "Cluster ID to edit",
6091
+ "name": "cluster_id",
6197
6092
  "required": true
6198
6093
  }
6199
6094
  },
6200
- "description": "Get a single environment variable for a tenant",
6095
+ "description": "Update an existing tenant cluster",
6201
6096
  "examples": [
6202
- "$ xano tenant env get my-tenant --name DATABASE_URL\npostgres://localhost:5432/mydb\n",
6203
- "$ xano tenant env get my-tenant --name DATABASE_URL -w 5 -o json"
6097
+ "$ xano tenant cluster edit 1 --name \"us-east-1-updated\" --description \"Updated cluster\" --domain \"us-east.xano.io\" --type standard\nUpdated tenant cluster: us-east-1-updated (standard) - ID: 1\n",
6098
+ "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
6204
6099
  ],
6205
6100
  "flags": {
6206
6101
  "profile": {
@@ -6222,9 +6117,26 @@
6222
6117
  "allowNo": false,
6223
6118
  "type": "boolean"
6224
6119
  },
6120
+ "description": {
6121
+ "char": "d",
6122
+ "description": "Cluster description",
6123
+ "name": "description",
6124
+ "required": true,
6125
+ "hasDynamicHelp": false,
6126
+ "multiple": false,
6127
+ "type": "option"
6128
+ },
6129
+ "domain": {
6130
+ "description": "Custom domain for the cluster",
6131
+ "name": "domain",
6132
+ "required": true,
6133
+ "hasDynamicHelp": false,
6134
+ "multiple": false,
6135
+ "type": "option"
6136
+ },
6225
6137
  "name": {
6226
6138
  "char": "n",
6227
- "description": "Environment variable name",
6139
+ "description": "Cluster name",
6228
6140
  "name": "name",
6229
6141
  "required": true,
6230
6142
  "hasDynamicHelp": false,
@@ -6245,19 +6157,22 @@
6245
6157
  ],
6246
6158
  "type": "option"
6247
6159
  },
6248
- "workspace": {
6249
- "char": "w",
6250
- "description": "Workspace ID (uses profile workspace if not provided)",
6251
- "name": "workspace",
6252
- "required": false,
6160
+ "type": {
6161
+ "description": "Cluster type",
6162
+ "name": "type",
6163
+ "required": true,
6253
6164
  "hasDynamicHelp": false,
6254
6165
  "multiple": false,
6166
+ "options": [
6167
+ "standard",
6168
+ "run"
6169
+ ],
6255
6170
  "type": "option"
6256
6171
  }
6257
6172
  },
6258
6173
  "hasDynamicHelp": false,
6259
6174
  "hiddenAliases": [],
6260
- "id": "tenant:env:get",
6175
+ "id": "tenant:cluster:edit",
6261
6176
  "pluginAlias": "@xano/cli",
6262
6177
  "pluginName": "@xano/cli",
6263
6178
  "pluginType": "core",
@@ -6268,8 +6183,8 @@
6268
6183
  "dist",
6269
6184
  "commands",
6270
6185
  "tenant",
6271
- "env",
6272
- "get",
6186
+ "cluster",
6187
+ "edit",
6273
6188
  "index.js"
6274
6189
  ]
6275
6190
  },
@@ -6443,7 +6358,7 @@
6443
6358
  "index.js"
6444
6359
  ]
6445
6360
  },
6446
- "tenant:env:set": {
6361
+ "tenant:env:get": {
6447
6362
  "aliases": [],
6448
6363
  "args": {
6449
6364
  "tenant_name": {
@@ -6452,10 +6367,10 @@
6452
6367
  "required": true
6453
6368
  }
6454
6369
  },
6455
- "description": "Set (create or update) an environment variable for a tenant",
6370
+ "description": "Get a single environment variable for a tenant",
6456
6371
  "examples": [
6457
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
6458
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
6372
+ "$ xano tenant env get my-tenant --name DATABASE_URL\npostgres://localhost:5432/mydb\n",
6373
+ "$ xano tenant env get my-tenant --name DATABASE_URL -w 5 -o json"
6459
6374
  ],
6460
6375
  "flags": {
6461
6376
  "profile": {
@@ -6500,14 +6415,6 @@
6500
6415
  ],
6501
6416
  "type": "option"
6502
6417
  },
6503
- "value": {
6504
- "description": "Environment variable value",
6505
- "name": "value",
6506
- "required": true,
6507
- "hasDynamicHelp": false,
6508
- "multiple": false,
6509
- "type": "option"
6510
- },
6511
6418
  "workspace": {
6512
6419
  "char": "w",
6513
6420
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -6520,7 +6427,7 @@
6520
6427
  },
6521
6428
  "hasDynamicHelp": false,
6522
6429
  "hiddenAliases": [],
6523
- "id": "tenant:env:set",
6430
+ "id": "tenant:env:get",
6524
6431
  "pluginAlias": "@xano/cli",
6525
6432
  "pluginName": "@xano/cli",
6526
6433
  "pluginType": "core",
@@ -6532,7 +6439,7 @@
6532
6439
  "commands",
6533
6440
  "tenant",
6534
6441
  "env",
6535
- "set",
6442
+ "get",
6536
6443
  "index.js"
6537
6444
  ]
6538
6445
  },
@@ -6629,7 +6536,7 @@
6629
6536
  "index.js"
6630
6537
  ]
6631
6538
  },
6632
- "tenant:license:get": {
6539
+ "tenant:license:set": {
6633
6540
  "aliases": [],
6634
6541
  "args": {
6635
6542
  "tenant_name": {
@@ -6638,12 +6545,12 @@
6638
6545
  "required": true
6639
6546
  }
6640
6547
  },
6641
- "description": "Get the license for a tenant",
6548
+ "description": "Set/update the license for a tenant",
6642
6549
  "examples": [
6643
- "$ xano tenant license get my-tenant\nLicense saved to license_my-tenant.yaml\n",
6644
- "$ xano tenant license get my-tenant --file ./my-license.yaml\nLicense saved to my-license.yaml\n",
6645
- "$ xano tenant license get my-tenant --view",
6646
- "$ xano tenant license get my-tenant -o json"
6550
+ "$ xano tenant license set my-tenant\nReads from license_my-tenant.yaml\n",
6551
+ "$ xano tenant license set my-tenant --file ./license.yaml",
6552
+ "$ xano tenant license set my-tenant --value 'key: value'",
6553
+ "$ xano tenant license set my-tenant -o json"
6647
6554
  ],
6648
6555
  "flags": {
6649
6556
  "profile": {
@@ -6665,9 +6572,22 @@
6665
6572
  "allowNo": false,
6666
6573
  "type": "boolean"
6667
6574
  },
6575
+ "clean": {
6576
+ "description": "Remove the source file after successful upload",
6577
+ "exclusive": [
6578
+ "value"
6579
+ ],
6580
+ "name": "clean",
6581
+ "required": false,
6582
+ "allowNo": false,
6583
+ "type": "boolean"
6584
+ },
6668
6585
  "file": {
6669
6586
  "char": "f",
6670
- "description": "Output file path (default: license_<tenant_name>.yaml)",
6587
+ "description": "Path to license file (default: license_<tenant_name>.yaml)",
6588
+ "exclusive": [
6589
+ "value"
6590
+ ],
6671
6591
  "name": "file",
6672
6592
  "required": false,
6673
6593
  "hasDynamicHelp": false,
@@ -6688,12 +6608,17 @@
6688
6608
  ],
6689
6609
  "type": "option"
6690
6610
  },
6691
- "view": {
6692
- "description": "Print license to stdout instead of saving to file",
6693
- "name": "view",
6611
+ "value": {
6612
+ "description": "Inline license value",
6613
+ "exclusive": [
6614
+ "file",
6615
+ "clean"
6616
+ ],
6617
+ "name": "value",
6694
6618
  "required": false,
6695
- "allowNo": false,
6696
- "type": "boolean"
6619
+ "hasDynamicHelp": false,
6620
+ "multiple": false,
6621
+ "type": "option"
6697
6622
  },
6698
6623
  "workspace": {
6699
6624
  "char": "w",
@@ -6707,7 +6632,7 @@
6707
6632
  },
6708
6633
  "hasDynamicHelp": false,
6709
6634
  "hiddenAliases": [],
6710
- "id": "tenant:license:get",
6635
+ "id": "tenant:license:set",
6711
6636
  "pluginAlias": "@xano/cli",
6712
6637
  "pluginName": "@xano/cli",
6713
6638
  "pluginType": "core",
@@ -6719,11 +6644,11 @@
6719
6644
  "commands",
6720
6645
  "tenant",
6721
6646
  "license",
6722
- "get",
6647
+ "set",
6723
6648
  "index.js"
6724
6649
  ]
6725
6650
  },
6726
- "tenant:license:set": {
6651
+ "tenant:license:get": {
6727
6652
  "aliases": [],
6728
6653
  "args": {
6729
6654
  "tenant_name": {
@@ -6732,12 +6657,12 @@
6732
6657
  "required": true
6733
6658
  }
6734
6659
  },
6735
- "description": "Set/update the license for a tenant",
6660
+ "description": "Get the license for a tenant",
6736
6661
  "examples": [
6737
- "$ xano tenant license set my-tenant\nReads from license_my-tenant.yaml\n",
6738
- "$ xano tenant license set my-tenant --file ./license.yaml",
6739
- "$ xano tenant license set my-tenant --value 'key: value'",
6740
- "$ xano tenant license set my-tenant -o json"
6662
+ "$ xano tenant license get my-tenant\nLicense saved to license_my-tenant.yaml\n",
6663
+ "$ xano tenant license get my-tenant --file ./my-license.yaml\nLicense saved to my-license.yaml\n",
6664
+ "$ xano tenant license get my-tenant --view",
6665
+ "$ xano tenant license get my-tenant -o json"
6741
6666
  ],
6742
6667
  "flags": {
6743
6668
  "profile": {
@@ -6759,22 +6684,9 @@
6759
6684
  "allowNo": false,
6760
6685
  "type": "boolean"
6761
6686
  },
6762
- "clean": {
6763
- "description": "Remove the source file after successful upload",
6764
- "exclusive": [
6765
- "value"
6766
- ],
6767
- "name": "clean",
6768
- "required": false,
6769
- "allowNo": false,
6770
- "type": "boolean"
6771
- },
6772
6687
  "file": {
6773
6688
  "char": "f",
6774
- "description": "Path to license file (default: license_<tenant_name>.yaml)",
6775
- "exclusive": [
6776
- "value"
6777
- ],
6689
+ "description": "Output file path (default: license_<tenant_name>.yaml)",
6778
6690
  "name": "file",
6779
6691
  "required": false,
6780
6692
  "hasDynamicHelp": false,
@@ -6795,17 +6707,12 @@
6795
6707
  ],
6796
6708
  "type": "option"
6797
6709
  },
6798
- "value": {
6799
- "description": "Inline license value",
6800
- "exclusive": [
6801
- "file",
6802
- "clean"
6803
- ],
6804
- "name": "value",
6710
+ "view": {
6711
+ "description": "Print license to stdout instead of saving to file",
6712
+ "name": "view",
6805
6713
  "required": false,
6806
- "hasDynamicHelp": false,
6807
- "multiple": false,
6808
- "type": "option"
6714
+ "allowNo": false,
6715
+ "type": "boolean"
6809
6716
  },
6810
6717
  "workspace": {
6811
6718
  "char": "w",
@@ -6819,7 +6726,7 @@
6819
6726
  },
6820
6727
  "hasDynamicHelp": false,
6821
6728
  "hiddenAliases": [],
6822
- "id": "tenant:license:set",
6729
+ "id": "tenant:license:get",
6823
6730
  "pluginAlias": "@xano/cli",
6824
6731
  "pluginName": "@xano/cli",
6825
6732
  "pluginType": "core",
@@ -6831,7 +6738,7 @@
6831
6738
  "commands",
6832
6739
  "tenant",
6833
6740
  "license",
6834
- "set",
6741
+ "get",
6835
6742
  "index.js"
6836
6743
  ]
6837
6744
  },
@@ -6929,6 +6836,110 @@
6929
6836
  "index.js"
6930
6837
  ]
6931
6838
  },
6839
+ "tenant:cluster:license:set": {
6840
+ "aliases": [],
6841
+ "args": {
6842
+ "cluster_id": {
6843
+ "description": "Tenant cluster ID",
6844
+ "name": "cluster_id",
6845
+ "required": true
6846
+ }
6847
+ },
6848
+ "description": "Set/update the license (kubeconfig) for a tenant cluster",
6849
+ "examples": [
6850
+ "$ xano tenant cluster license set 1\nReads from kubeconfig-1.yaml\n",
6851
+ "$ xano tenant cluster license set 1 --file ./kubeconfig.yaml",
6852
+ "$ xano tenant cluster license set 1 --value 'apiVersion: v1...'",
6853
+ "$ xano tenant cluster license set 1 -o json"
6854
+ ],
6855
+ "flags": {
6856
+ "profile": {
6857
+ "char": "p",
6858
+ "description": "Profile to use (uses default profile if not specified)",
6859
+ "env": "XANO_PROFILE",
6860
+ "name": "profile",
6861
+ "required": false,
6862
+ "hasDynamicHelp": false,
6863
+ "multiple": false,
6864
+ "type": "option"
6865
+ },
6866
+ "verbose": {
6867
+ "char": "v",
6868
+ "description": "Show detailed request/response information",
6869
+ "env": "XANO_VERBOSE",
6870
+ "name": "verbose",
6871
+ "required": false,
6872
+ "allowNo": false,
6873
+ "type": "boolean"
6874
+ },
6875
+ "clean": {
6876
+ "description": "Remove the source file after successful upload",
6877
+ "exclusive": [
6878
+ "value"
6879
+ ],
6880
+ "name": "clean",
6881
+ "required": false,
6882
+ "allowNo": false,
6883
+ "type": "boolean"
6884
+ },
6885
+ "file": {
6886
+ "char": "f",
6887
+ "description": "Path to kubeconfig file (default: kubeconfig_<cluster_id>.yaml)",
6888
+ "exclusive": [
6889
+ "value"
6890
+ ],
6891
+ "name": "file",
6892
+ "required": false,
6893
+ "hasDynamicHelp": false,
6894
+ "multiple": false,
6895
+ "type": "option"
6896
+ },
6897
+ "output": {
6898
+ "char": "o",
6899
+ "description": "Output format",
6900
+ "name": "output",
6901
+ "required": false,
6902
+ "default": "summary",
6903
+ "hasDynamicHelp": false,
6904
+ "multiple": false,
6905
+ "options": [
6906
+ "summary",
6907
+ "json"
6908
+ ],
6909
+ "type": "option"
6910
+ },
6911
+ "value": {
6912
+ "description": "Inline kubeconfig YAML value",
6913
+ "exclusive": [
6914
+ "file",
6915
+ "clean"
6916
+ ],
6917
+ "name": "value",
6918
+ "required": false,
6919
+ "hasDynamicHelp": false,
6920
+ "multiple": false,
6921
+ "type": "option"
6922
+ }
6923
+ },
6924
+ "hasDynamicHelp": false,
6925
+ "hiddenAliases": [],
6926
+ "id": "tenant:cluster:license:set",
6927
+ "pluginAlias": "@xano/cli",
6928
+ "pluginName": "@xano/cli",
6929
+ "pluginType": "core",
6930
+ "strict": true,
6931
+ "enableJsonFlag": false,
6932
+ "isESM": true,
6933
+ "relativePath": [
6934
+ "dist",
6935
+ "commands",
6936
+ "tenant",
6937
+ "cluster",
6938
+ "license",
6939
+ "set",
6940
+ "index.js"
6941
+ ]
6942
+ },
6932
6943
  "tenant:cluster:license:get": {
6933
6944
  "aliases": [],
6934
6945
  "args": {
@@ -7015,21 +7026,19 @@
7015
7026
  "index.js"
7016
7027
  ]
7017
7028
  },
7018
- "tenant:cluster:license:set": {
7029
+ "tenant:env:set": {
7019
7030
  "aliases": [],
7020
7031
  "args": {
7021
- "cluster_id": {
7022
- "description": "Tenant cluster ID",
7023
- "name": "cluster_id",
7032
+ "tenant_name": {
7033
+ "description": "Tenant name",
7034
+ "name": "tenant_name",
7024
7035
  "required": true
7025
7036
  }
7026
7037
  },
7027
- "description": "Set/update the license (kubeconfig) for a tenant cluster",
7038
+ "description": "Set (create or update) an environment variable for a tenant",
7028
7039
  "examples": [
7029
- "$ xano tenant cluster license set 1\nReads from kubeconfig-1.yaml\n",
7030
- "$ xano tenant cluster license set 1 --file ./kubeconfig.yaml",
7031
- "$ xano tenant cluster license set 1 --value 'apiVersion: v1...'",
7032
- "$ xano tenant cluster license set 1 -o json"
7040
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
7041
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
7033
7042
  ],
7034
7043
  "flags": {
7035
7044
  "profile": {
@@ -7051,24 +7060,11 @@
7051
7060
  "allowNo": false,
7052
7061
  "type": "boolean"
7053
7062
  },
7054
- "clean": {
7055
- "description": "Remove the source file after successful upload",
7056
- "exclusive": [
7057
- "value"
7058
- ],
7059
- "name": "clean",
7060
- "required": false,
7061
- "allowNo": false,
7062
- "type": "boolean"
7063
- },
7064
- "file": {
7065
- "char": "f",
7066
- "description": "Path to kubeconfig file (default: kubeconfig_<cluster_id>.yaml)",
7067
- "exclusive": [
7068
- "value"
7069
- ],
7070
- "name": "file",
7071
- "required": false,
7063
+ "name": {
7064
+ "char": "n",
7065
+ "description": "Environment variable name",
7066
+ "name": "name",
7067
+ "required": true,
7072
7068
  "hasDynamicHelp": false,
7073
7069
  "multiple": false,
7074
7070
  "type": "option"
@@ -7088,12 +7084,17 @@
7088
7084
  "type": "option"
7089
7085
  },
7090
7086
  "value": {
7091
- "description": "Inline kubeconfig YAML value",
7092
- "exclusive": [
7093
- "file",
7094
- "clean"
7095
- ],
7087
+ "description": "Environment variable value",
7096
7088
  "name": "value",
7089
+ "required": true,
7090
+ "hasDynamicHelp": false,
7091
+ "multiple": false,
7092
+ "type": "option"
7093
+ },
7094
+ "workspace": {
7095
+ "char": "w",
7096
+ "description": "Workspace ID (uses profile workspace if not provided)",
7097
+ "name": "workspace",
7097
7098
  "required": false,
7098
7099
  "hasDynamicHelp": false,
7099
7100
  "multiple": false,
@@ -7102,7 +7103,7 @@
7102
7103
  },
7103
7104
  "hasDynamicHelp": false,
7104
7105
  "hiddenAliases": [],
7105
- "id": "tenant:cluster:license:set",
7106
+ "id": "tenant:env:set",
7106
7107
  "pluginAlias": "@xano/cli",
7107
7108
  "pluginName": "@xano/cli",
7108
7109
  "pluginType": "core",
@@ -7113,12 +7114,11 @@
7113
7114
  "dist",
7114
7115
  "commands",
7115
7116
  "tenant",
7116
- "cluster",
7117
- "license",
7117
+ "env",
7118
7118
  "set",
7119
7119
  "index.js"
7120
7120
  ]
7121
7121
  }
7122
7122
  },
7123
- "version": "0.0.69-beta.3"
7123
+ "version": "0.0.71-beta.2"
7124
7124
  }