@xano/cli 0.0.82-beta.0 → 0.0.82-beta.3

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.
@@ -291,109 +291,6 @@
291
291
  "index.js"
292
292
  ]
293
293
  },
294
- "branch:edit": {
295
- "aliases": [],
296
- "args": {
297
- "branch_label": {
298
- "description": "Branch label to edit (cannot edit \"v1\" label)",
299
- "name": "branch_label",
300
- "required": true
301
- }
302
- },
303
- "description": "Update an existing branch (cannot update \"v1\" label)",
304
- "examples": [
305
- "$ xano branch edit dev --label development\nUpdated branch: development\n",
306
- "$ xano branch edit feature-auth -l feature-authentication --color \"#ff5733\"\nUpdated branch: feature-authentication\n Color: #ff5733\n",
307
- "$ xano branch edit staging --description \"Staging environment\" -o json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false\n}\n"
308
- ],
309
- "flags": {
310
- "profile": {
311
- "char": "p",
312
- "description": "Profile to use (uses default profile if not specified)",
313
- "env": "XANO_PROFILE",
314
- "name": "profile",
315
- "required": false,
316
- "hasDynamicHelp": false,
317
- "multiple": false,
318
- "type": "option"
319
- },
320
- "verbose": {
321
- "char": "v",
322
- "description": "Show detailed request/response information",
323
- "env": "XANO_VERBOSE",
324
- "name": "verbose",
325
- "required": false,
326
- "allowNo": false,
327
- "type": "boolean"
328
- },
329
- "color": {
330
- "char": "c",
331
- "description": "New color hex code for the branch (e.g., \"#ff5733\")",
332
- "name": "color",
333
- "required": false,
334
- "hasDynamicHelp": false,
335
- "multiple": false,
336
- "type": "option"
337
- },
338
- "description": {
339
- "char": "d",
340
- "description": "New description for the branch",
341
- "name": "description",
342
- "required": false,
343
- "hasDynamicHelp": false,
344
- "multiple": false,
345
- "type": "option"
346
- },
347
- "label": {
348
- "char": "l",
349
- "description": "New label for the branch",
350
- "name": "label",
351
- "required": false,
352
- "hasDynamicHelp": false,
353
- "multiple": false,
354
- "type": "option"
355
- },
356
- "output": {
357
- "char": "o",
358
- "description": "Output format",
359
- "name": "output",
360
- "required": false,
361
- "default": "summary",
362
- "hasDynamicHelp": false,
363
- "multiple": false,
364
- "options": [
365
- "summary",
366
- "json"
367
- ],
368
- "type": "option"
369
- },
370
- "workspace": {
371
- "char": "w",
372
- "description": "Workspace ID (uses profile workspace if not provided)",
373
- "name": "workspace",
374
- "required": false,
375
- "hasDynamicHelp": false,
376
- "multiple": false,
377
- "type": "option"
378
- }
379
- },
380
- "hasDynamicHelp": false,
381
- "hiddenAliases": [],
382
- "id": "branch:edit",
383
- "pluginAlias": "@xano/cli",
384
- "pluginName": "@xano/cli",
385
- "pluginType": "core",
386
- "strict": true,
387
- "enableJsonFlag": false,
388
- "isESM": true,
389
- "relativePath": [
390
- "dist",
391
- "commands",
392
- "branch",
393
- "edit",
394
- "index.js"
395
- ]
396
- },
397
294
  "branch:list": {
398
295
  "aliases": [],
399
296
  "args": {
@@ -545,16 +442,25 @@
545
442
  "index.js"
546
443
  ]
547
444
  },
548
- "function:create": {
445
+ "function:edit": {
549
446
  "aliases": [],
550
- "args": {},
551
- "description": "Create a new function in a workspace",
447
+ "args": {
448
+ "function_id": {
449
+ "description": "Function ID to edit",
450
+ "name": "function_id",
451
+ "required": false
452
+ }
453
+ },
454
+ "description": "Edit a function in a workspace",
552
455
  "examples": [
553
- "$ xano function:create -w 40 -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
554
- "$ xano function:create -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
555
- "$ xano function:create -w 40 -f function.xs --edit\n# Opens function.xs in $EDITOR, then creates function with edited content\nFunction created successfully!\nID: 123\nName: my_function\n",
556
- "$ cat function.xs | xano function:create -w 40 --stdin\nFunction created successfully!\nID: 123\nName: my_function\n",
557
- "$ xano function:create -w 40 -f function.xs -o json\n{\n \"id\": 123,\n \"name\": \"my_function\",\n ...\n}\n"
456
+ "$ 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",
457
+ "$ 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",
458
+ "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
459
+ "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
460
+ "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
461
+ "$ 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",
462
+ "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
463
+ "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
558
464
  ],
559
465
  "flags": {
560
466
  "profile": {
@@ -578,10 +484,7 @@
578
484
  },
579
485
  "edit": {
580
486
  "char": "e",
581
- "dependsOn": [
582
- "file"
583
- ],
584
- "description": "Open file in editor before creating function (requires --file)",
487
+ "description": "Open file in editor before updating function (requires --file)",
585
488
  "name": "edit",
586
489
  "required": false,
587
490
  "allowNo": false,
@@ -613,6 +516,13 @@
613
516
  ],
614
517
  "type": "option"
615
518
  },
519
+ "publish": {
520
+ "description": "Publish the function after editing",
521
+ "name": "publish",
522
+ "required": false,
523
+ "allowNo": false,
524
+ "type": "boolean"
525
+ },
616
526
  "stdin": {
617
527
  "char": "s",
618
528
  "description": "Read XanoScript code from stdin",
@@ -636,7 +546,7 @@
636
546
  },
637
547
  "hasDynamicHelp": false,
638
548
  "hiddenAliases": [],
639
- "id": "function:create",
549
+ "id": "function:edit",
640
550
  "pluginAlias": "@xano/cli",
641
551
  "pluginName": "@xano/cli",
642
552
  "pluginType": "core",
@@ -647,29 +557,20 @@
647
557
  "dist",
648
558
  "commands",
649
559
  "function",
650
- "create",
560
+ "edit",
651
561
  "index.js"
652
562
  ]
653
563
  },
654
- "function:edit": {
564
+ "function:create": {
655
565
  "aliases": [],
656
- "args": {
657
- "function_id": {
658
- "description": "Function ID to edit",
659
- "name": "function_id",
660
- "required": false
661
- }
662
- },
663
- "description": "Edit a function in a workspace",
566
+ "args": {},
567
+ "description": "Create a new function in a workspace",
664
568
  "examples": [
665
- "$ 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",
666
- "$ 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",
667
- "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
668
- "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
669
- "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
670
- "$ 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",
671
- "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
672
- "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
569
+ "$ xano function:create -w 40 -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
570
+ "$ xano function:create -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
571
+ "$ xano function:create -w 40 -f function.xs --edit\n# Opens function.xs in $EDITOR, then creates function with edited content\nFunction created successfully!\nID: 123\nName: my_function\n",
572
+ "$ cat function.xs | xano function:create -w 40 --stdin\nFunction created successfully!\nID: 123\nName: my_function\n",
573
+ "$ xano function:create -w 40 -f function.xs -o json\n{\n \"id\": 123,\n \"name\": \"my_function\",\n ...\n}\n"
673
574
  ],
674
575
  "flags": {
675
576
  "profile": {
@@ -693,7 +594,10 @@
693
594
  },
694
595
  "edit": {
695
596
  "char": "e",
696
- "description": "Open file in editor before updating function (requires --file)",
597
+ "dependsOn": [
598
+ "file"
599
+ ],
600
+ "description": "Open file in editor before creating function (requires --file)",
697
601
  "name": "edit",
698
602
  "required": false,
699
603
  "allowNo": false,
@@ -725,13 +629,6 @@
725
629
  ],
726
630
  "type": "option"
727
631
  },
728
- "publish": {
729
- "description": "Publish the function after editing",
730
- "name": "publish",
731
- "required": false,
732
- "allowNo": false,
733
- "type": "boolean"
734
- },
735
632
  "stdin": {
736
633
  "char": "s",
737
634
  "description": "Read XanoScript code from stdin",
@@ -755,7 +652,7 @@
755
652
  },
756
653
  "hasDynamicHelp": false,
757
654
  "hiddenAliases": [],
758
- "id": "function:edit",
655
+ "id": "function:create",
759
656
  "pluginAlias": "@xano/cli",
760
657
  "pluginName": "@xano/cli",
761
658
  "pluginType": "core",
@@ -766,7 +663,7 @@
766
663
  "dist",
767
664
  "commands",
768
665
  "function",
769
- "edit",
666
+ "create",
770
667
  "index.js"
771
668
  ]
772
669
  },
@@ -989,19 +886,20 @@
989
886
  "index.js"
990
887
  ]
991
888
  },
992
- "platform:get": {
889
+ "branch:get": {
993
890
  "aliases": [],
994
891
  "args": {
995
- "platform_id": {
996
- "description": "Platform ID to retrieve",
997
- "name": "platform_id",
892
+ "branch_label": {
893
+ "description": "Branch label (e.g., \"v1\", \"dev\")",
894
+ "name": "branch_label",
998
895
  "required": true
999
896
  }
1000
897
  },
1001
- "description": "Get details of a specific platform",
898
+ "description": "Get details for a specific branch",
1002
899
  "examples": [
1003
- "$ 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",
1004
- "$ xano platform get 23629 -o json"
900
+ "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
901
+ "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
902
+ "$ 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"
1005
903
  ],
1006
904
  "flags": {
1007
905
  "profile": {
@@ -1036,11 +934,20 @@
1036
934
  "json"
1037
935
  ],
1038
936
  "type": "option"
937
+ },
938
+ "workspace": {
939
+ "char": "w",
940
+ "description": "Workspace ID (uses profile workspace if not provided)",
941
+ "name": "workspace",
942
+ "required": false,
943
+ "hasDynamicHelp": false,
944
+ "multiple": false,
945
+ "type": "option"
1039
946
  }
1040
947
  },
1041
948
  "hasDynamicHelp": false,
1042
949
  "hiddenAliases": [],
1043
- "id": "platform:get",
950
+ "id": "branch:get",
1044
951
  "pluginAlias": "@xano/cli",
1045
952
  "pluginName": "@xano/cli",
1046
953
  "pluginType": "core",
@@ -1050,18 +957,24 @@
1050
957
  "relativePath": [
1051
958
  "dist",
1052
959
  "commands",
1053
- "platform",
960
+ "branch",
1054
961
  "get",
1055
962
  "index.js"
1056
963
  ]
1057
964
  },
1058
- "platform:list": {
965
+ "platform:get": {
1059
966
  "aliases": [],
1060
- "args": {},
1061
- "description": "List all platforms",
967
+ "args": {
968
+ "platform_id": {
969
+ "description": "Platform ID to retrieve",
970
+ "name": "platform_id",
971
+ "required": true
972
+ }
973
+ },
974
+ "description": "Get details of a specific platform",
1062
975
  "examples": [
1063
- "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
1064
- "$ xano platform list --output json"
976
+ "$ 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",
977
+ "$ xano platform get 23629 -o json"
1065
978
  ],
1066
979
  "flags": {
1067
980
  "profile": {
@@ -1100,7 +1013,7 @@
1100
1013
  },
1101
1014
  "hasDynamicHelp": false,
1102
1015
  "hiddenAliases": [],
1103
- "id": "platform:list",
1016
+ "id": "platform:get",
1104
1017
  "pluginAlias": "@xano/cli",
1105
1018
  "pluginName": "@xano/cli",
1106
1019
  "pluginType": "core",
@@ -1111,82 +1024,89 @@
1111
1024
  "dist",
1112
1025
  "commands",
1113
1026
  "platform",
1114
- "list",
1027
+ "get",
1115
1028
  "index.js"
1116
1029
  ]
1117
1030
  },
1118
- "profile:create": {
1031
+ "branch:edit": {
1119
1032
  "aliases": [],
1120
1033
  "args": {
1121
- "name": {
1122
- "description": "Profile name",
1123
- "name": "name",
1034
+ "branch_label": {
1035
+ "description": "Branch label to edit (cannot edit \"v1\" label)",
1036
+ "name": "branch_label",
1124
1037
  "required": true
1125
1038
  }
1126
1039
  },
1127
- "description": "Create a new profile configuration",
1040
+ "description": "Update an existing branch (cannot update \"v1\" label)",
1128
1041
  "examples": [
1129
- "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n",
1130
- "$ xano profile:create staging -a https://staging-account.xano.com -i https://staging-instance.xano.com -t token456\nProfile 'staging' created successfully at ~/.xano/credentials.yaml\n",
1131
- "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
1132
- "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123 --default\nProfile 'production' created successfully at ~/.xano/credentials.yaml\nDefault profile set to 'production'\n",
1133
- "$ xano profile:create selfhosted -i https://self-signed.example.com -t token123 --insecure\nProfile 'selfhosted' created successfully at ~/.xano/credentials.yaml\n"
1042
+ "$ xano branch edit dev --label development\nUpdated branch: development\n",
1043
+ "$ xano branch edit feature-auth -l feature-authentication --color \"#ff5733\"\nUpdated branch: feature-authentication\n Color: #ff5733\n",
1044
+ "$ xano branch edit staging --description \"Staging environment\" -o json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false\n}\n"
1134
1045
  ],
1135
1046
  "flags": {
1136
- "access_token": {
1137
- "char": "t",
1138
- "description": "Access token for the Xano Metadata API",
1139
- "name": "access_token",
1140
- "required": true,
1047
+ "profile": {
1048
+ "char": "p",
1049
+ "description": "Profile to use (uses default profile if not specified)",
1050
+ "env": "XANO_PROFILE",
1051
+ "name": "profile",
1052
+ "required": false,
1141
1053
  "hasDynamicHelp": false,
1142
1054
  "multiple": false,
1143
1055
  "type": "option"
1144
1056
  },
1145
- "account_origin": {
1146
- "char": "a",
1147
- "description": "Account origin URL. Optional for self hosted installs.",
1148
- "name": "account_origin",
1057
+ "verbose": {
1058
+ "char": "v",
1059
+ "description": "Show detailed request/response information",
1060
+ "env": "XANO_VERBOSE",
1061
+ "name": "verbose",
1062
+ "required": false,
1063
+ "allowNo": false,
1064
+ "type": "boolean"
1065
+ },
1066
+ "color": {
1067
+ "char": "c",
1068
+ "description": "New color hex code for the branch (e.g., \"#ff5733\")",
1069
+ "name": "color",
1149
1070
  "required": false,
1150
1071
  "hasDynamicHelp": false,
1151
1072
  "multiple": false,
1152
1073
  "type": "option"
1153
1074
  },
1154
- "branch": {
1155
- "char": "b",
1156
- "description": "Branch name",
1157
- "name": "branch",
1075
+ "description": {
1076
+ "char": "d",
1077
+ "description": "New description for the branch",
1078
+ "name": "description",
1158
1079
  "required": false,
1159
1080
  "hasDynamicHelp": false,
1160
1081
  "multiple": false,
1161
1082
  "type": "option"
1162
1083
  },
1163
- "default": {
1164
- "description": "Set this profile as the default",
1165
- "name": "default",
1084
+ "label": {
1085
+ "char": "l",
1086
+ "description": "New label for the branch",
1087
+ "name": "label",
1166
1088
  "required": false,
1167
- "allowNo": false,
1168
- "type": "boolean"
1089
+ "hasDynamicHelp": false,
1090
+ "multiple": false,
1091
+ "type": "option"
1169
1092
  },
1170
- "insecure": {
1171
- "char": "k",
1172
- "description": "Skip TLS certificate verification (for self-signed certificates)",
1173
- "name": "insecure",
1093
+ "output": {
1094
+ "char": "o",
1095
+ "description": "Output format",
1096
+ "name": "output",
1174
1097
  "required": false,
1175
- "allowNo": false,
1176
- "type": "boolean"
1177
- },
1178
- "instance_origin": {
1179
- "char": "i",
1180
- "description": "Instance origin URL",
1181
- "name": "instance_origin",
1182
- "required": true,
1098
+ "default": "summary",
1183
1099
  "hasDynamicHelp": false,
1184
1100
  "multiple": false,
1101
+ "options": [
1102
+ "summary",
1103
+ "json"
1104
+ ],
1185
1105
  "type": "option"
1186
1106
  },
1187
1107
  "workspace": {
1188
1108
  "char": "w",
1189
- "description": "Workspace name",
1109
+ "description": "Workspace ID (uses profile workspace if not provided)",
1190
1110
  "name": "workspace",
1191
1111
  "required": false,
1192
1112
  "hasDynamicHelp": false,
@@ -1196,7 +1116,7 @@
1196
1116
  },
1197
1117
  "hasDynamicHelp": false,
1198
1118
  "hiddenAliases": [],
1199
- "id": "profile:create",
1119
+ "id": "branch:edit",
1200
1120
  "pluginAlias": "@xano/cli",
1201
1121
  "pluginName": "@xano/cli",
1202
1122
  "pluginType": "core",
@@ -1206,39 +1126,57 @@
1206
1126
  "relativePath": [
1207
1127
  "dist",
1208
1128
  "commands",
1209
- "profile",
1210
- "create",
1129
+ "branch",
1130
+ "edit",
1211
1131
  "index.js"
1212
1132
  ]
1213
1133
  },
1214
- "profile:delete": {
1134
+ "platform:list": {
1215
1135
  "aliases": [],
1216
- "args": {
1217
- "name": {
1218
- "description": "Profile name to delete",
1219
- "name": "name",
1220
- "required": true
1221
- }
1222
- },
1223
- "description": "Delete a profile configuration",
1136
+ "args": {},
1137
+ "description": "List all platforms",
1224
1138
  "examples": [
1225
- "$ 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",
1226
- "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1227
- "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1139
+ "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
1140
+ "$ xano platform list --output json"
1228
1141
  ],
1229
1142
  "flags": {
1230
- "force": {
1231
- "char": "f",
1232
- "description": "Skip confirmation prompt",
1233
- "name": "force",
1143
+ "profile": {
1144
+ "char": "p",
1145
+ "description": "Profile to use (uses default profile if not specified)",
1146
+ "env": "XANO_PROFILE",
1147
+ "name": "profile",
1148
+ "required": false,
1149
+ "hasDynamicHelp": false,
1150
+ "multiple": false,
1151
+ "type": "option"
1152
+ },
1153
+ "verbose": {
1154
+ "char": "v",
1155
+ "description": "Show detailed request/response information",
1156
+ "env": "XANO_VERBOSE",
1157
+ "name": "verbose",
1234
1158
  "required": false,
1235
1159
  "allowNo": false,
1236
1160
  "type": "boolean"
1161
+ },
1162
+ "output": {
1163
+ "char": "o",
1164
+ "description": "Output format",
1165
+ "name": "output",
1166
+ "required": false,
1167
+ "default": "summary",
1168
+ "hasDynamicHelp": false,
1169
+ "multiple": false,
1170
+ "options": [
1171
+ "summary",
1172
+ "json"
1173
+ ],
1174
+ "type": "option"
1237
1175
  }
1238
1176
  },
1239
1177
  "hasDynamicHelp": false,
1240
1178
  "hiddenAliases": [],
1241
- "id": "profile:delete",
1179
+ "id": "platform:list",
1242
1180
  "pluginAlias": "@xano/cli",
1243
1181
  "pluginName": "@xano/cli",
1244
1182
  "pluginType": "core",
@@ -1248,62 +1186,41 @@
1248
1186
  "relativePath": [
1249
1187
  "dist",
1250
1188
  "commands",
1251
- "profile",
1252
- "delete",
1189
+ "platform",
1190
+ "list",
1253
1191
  "index.js"
1254
1192
  ]
1255
1193
  },
1256
- "profile:edit": {
1194
+ "profile:create": {
1257
1195
  "aliases": [],
1258
1196
  "args": {
1259
1197
  "name": {
1260
- "description": "Profile name to edit (uses default profile if not specified)",
1198
+ "description": "Profile name",
1261
1199
  "name": "name",
1262
- "required": false
1200
+ "required": true
1263
1201
  }
1264
1202
  },
1265
- "description": "Edit an existing profile configuration",
1203
+ "description": "Create a new profile configuration",
1266
1204
  "examples": [
1267
- "$ xano profile:edit --access_token new_token123\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1268
- "$ xano profile:edit production --access_token new_token123\nProfile 'production' updated successfully at ~/.xano/credentials.yaml\n",
1269
- "$ xano profile:edit staging -i https://new-staging-instance.xano.com -t new_token456\nProfile 'staging' updated successfully at ~/.xano/credentials.yaml\n",
1270
- "$ xano profile:edit -b new-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1271
- "$ xano profile:edit --remove-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1272
- "$ xano profile:edit --insecure\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1273
- "$ xano profile:edit --remove-insecure\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n"
1205
+ "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n",
1206
+ "$ xano profile:create staging -a https://staging-account.xano.com -i https://staging-instance.xano.com -t token456\nProfile 'staging' created successfully at ~/.xano/credentials.yaml\n",
1207
+ "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
1208
+ "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123 --default\nProfile 'production' created successfully at ~/.xano/credentials.yaml\nDefault profile set to 'production'\n",
1209
+ "$ xano profile:create selfhosted -i https://self-signed.example.com -t token123 --insecure\nProfile 'selfhosted' created successfully at ~/.xano/credentials.yaml\n"
1274
1210
  ],
1275
1211
  "flags": {
1276
- "profile": {
1277
- "char": "p",
1278
- "description": "Profile to use (uses default profile if not specified)",
1279
- "env": "XANO_PROFILE",
1280
- "name": "profile",
1281
- "required": false,
1282
- "hasDynamicHelp": false,
1283
- "multiple": false,
1284
- "type": "option"
1285
- },
1286
- "verbose": {
1287
- "char": "v",
1288
- "description": "Show detailed request/response information",
1289
- "env": "XANO_VERBOSE",
1290
- "name": "verbose",
1291
- "required": false,
1292
- "allowNo": false,
1293
- "type": "boolean"
1294
- },
1295
1212
  "access_token": {
1296
1213
  "char": "t",
1297
- "description": "Update access token for the Xano Metadata API",
1214
+ "description": "Access token for the Xano Metadata API",
1298
1215
  "name": "access_token",
1299
- "required": false,
1216
+ "required": true,
1300
1217
  "hasDynamicHelp": false,
1301
1218
  "multiple": false,
1302
1219
  "type": "option"
1303
1220
  },
1304
1221
  "account_origin": {
1305
1222
  "char": "a",
1306
- "description": "Update account origin URL",
1223
+ "description": "Account origin URL. Optional for self hosted installs.",
1307
1224
  "name": "account_origin",
1308
1225
  "required": false,
1309
1226
  "hasDynamicHelp": false,
@@ -1312,15 +1229,23 @@
1312
1229
  },
1313
1230
  "branch": {
1314
1231
  "char": "b",
1315
- "description": "Update branch name",
1232
+ "description": "Branch name",
1316
1233
  "name": "branch",
1317
1234
  "required": false,
1318
1235
  "hasDynamicHelp": false,
1319
1236
  "multiple": false,
1320
1237
  "type": "option"
1321
1238
  },
1239
+ "default": {
1240
+ "description": "Set this profile as the default",
1241
+ "name": "default",
1242
+ "required": false,
1243
+ "allowNo": false,
1244
+ "type": "boolean"
1245
+ },
1322
1246
  "insecure": {
1323
- "description": "Enable insecure mode (skip TLS certificate verification)",
1247
+ "char": "k",
1248
+ "description": "Skip TLS certificate verification (for self-signed certificates)",
1324
1249
  "name": "insecure",
1325
1250
  "required": false,
1326
1251
  "allowNo": false,
@@ -1328,37 +1253,16 @@
1328
1253
  },
1329
1254
  "instance_origin": {
1330
1255
  "char": "i",
1331
- "description": "Update instance origin URL",
1256
+ "description": "Instance origin URL",
1332
1257
  "name": "instance_origin",
1333
- "required": false,
1258
+ "required": true,
1334
1259
  "hasDynamicHelp": false,
1335
1260
  "multiple": false,
1336
1261
  "type": "option"
1337
1262
  },
1338
- "remove-branch": {
1339
- "description": "Remove branch from profile",
1340
- "name": "remove-branch",
1341
- "required": false,
1342
- "allowNo": false,
1343
- "type": "boolean"
1344
- },
1345
- "remove-insecure": {
1346
- "description": "Remove insecure mode from profile",
1347
- "name": "remove-insecure",
1348
- "required": false,
1349
- "allowNo": false,
1350
- "type": "boolean"
1351
- },
1352
- "remove-workspace": {
1353
- "description": "Remove workspace from profile",
1354
- "name": "remove-workspace",
1355
- "required": false,
1356
- "allowNo": false,
1357
- "type": "boolean"
1358
- },
1359
1263
  "workspace": {
1360
1264
  "char": "w",
1361
- "description": "Update workspace name",
1265
+ "description": "Workspace name",
1362
1266
  "name": "workspace",
1363
1267
  "required": false,
1364
1268
  "hasDynamicHelp": false,
@@ -1368,7 +1272,7 @@
1368
1272
  },
1369
1273
  "hasDynamicHelp": false,
1370
1274
  "hiddenAliases": [],
1371
- "id": "profile:edit",
1275
+ "id": "profile:create",
1372
1276
  "pluginAlias": "@xano/cli",
1373
1277
  "pluginName": "@xano/cli",
1374
1278
  "pluginType": "core",
@@ -1379,7 +1283,7 @@
1379
1283
  "dist",
1380
1284
  "commands",
1381
1285
  "profile",
1382
- "edit",
1286
+ "create",
1383
1287
  "index.js"
1384
1288
  ]
1385
1289
  },
@@ -1505,58 +1409,154 @@
1505
1409
  "index.js"
1506
1410
  ]
1507
1411
  },
1508
- "branch:get": {
1412
+ "profile:delete": {
1509
1413
  "aliases": [],
1510
1414
  "args": {
1511
- "branch_label": {
1512
- "description": "Branch label (e.g., \"v1\", \"dev\")",
1513
- "name": "branch_label",
1415
+ "name": {
1416
+ "description": "Profile name to delete",
1417
+ "name": "name",
1514
1418
  "required": true
1515
1419
  }
1516
1420
  },
1517
- "description": "Get details for a specific branch",
1421
+ "description": "Delete a profile configuration",
1518
1422
  "examples": [
1519
- "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
1520
- "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
1521
- "$ 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"
1423
+ "$ 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",
1424
+ "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1425
+ "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1522
1426
  ],
1523
1427
  "flags": {
1524
- "profile": {
1525
- "char": "p",
1526
- "description": "Profile to use (uses default profile if not specified)",
1527
- "env": "XANO_PROFILE",
1528
- "name": "profile",
1529
- "required": false,
1530
- "hasDynamicHelp": false,
1531
- "multiple": false,
1532
- "type": "option"
1533
- },
1534
- "verbose": {
1535
- "char": "v",
1536
- "description": "Show detailed request/response information",
1537
- "env": "XANO_VERBOSE",
1538
- "name": "verbose",
1428
+ "force": {
1429
+ "char": "f",
1430
+ "description": "Skip confirmation prompt",
1431
+ "name": "force",
1539
1432
  "required": false,
1540
1433
  "allowNo": false,
1541
1434
  "type": "boolean"
1542
- },
1543
- "output": {
1544
- "char": "o",
1545
- "description": "Output format",
1546
- "name": "output",
1435
+ }
1436
+ },
1437
+ "hasDynamicHelp": false,
1438
+ "hiddenAliases": [],
1439
+ "id": "profile:delete",
1440
+ "pluginAlias": "@xano/cli",
1441
+ "pluginName": "@xano/cli",
1442
+ "pluginType": "core",
1443
+ "strict": true,
1444
+ "enableJsonFlag": false,
1445
+ "isESM": true,
1446
+ "relativePath": [
1447
+ "dist",
1448
+ "commands",
1449
+ "profile",
1450
+ "delete",
1451
+ "index.js"
1452
+ ]
1453
+ },
1454
+ "profile:edit": {
1455
+ "aliases": [],
1456
+ "args": {
1457
+ "name": {
1458
+ "description": "Profile name to edit (uses default profile if not specified)",
1459
+ "name": "name",
1460
+ "required": false
1461
+ }
1462
+ },
1463
+ "description": "Edit an existing profile configuration",
1464
+ "examples": [
1465
+ "$ xano profile:edit --access_token new_token123\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1466
+ "$ xano profile:edit production --access_token new_token123\nProfile 'production' updated successfully at ~/.xano/credentials.yaml\n",
1467
+ "$ xano profile:edit staging -i https://new-staging-instance.xano.com -t new_token456\nProfile 'staging' updated successfully at ~/.xano/credentials.yaml\n",
1468
+ "$ xano profile:edit -b new-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1469
+ "$ xano profile:edit --remove-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1470
+ "$ xano profile:edit --insecure\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
1471
+ "$ xano profile:edit --remove-insecure\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n"
1472
+ ],
1473
+ "flags": {
1474
+ "profile": {
1475
+ "char": "p",
1476
+ "description": "Profile to use (uses default profile if not specified)",
1477
+ "env": "XANO_PROFILE",
1478
+ "name": "profile",
1479
+ "required": false,
1480
+ "hasDynamicHelp": false,
1481
+ "multiple": false,
1482
+ "type": "option"
1483
+ },
1484
+ "verbose": {
1485
+ "char": "v",
1486
+ "description": "Show detailed request/response information",
1487
+ "env": "XANO_VERBOSE",
1488
+ "name": "verbose",
1489
+ "required": false,
1490
+ "allowNo": false,
1491
+ "type": "boolean"
1492
+ },
1493
+ "access_token": {
1494
+ "char": "t",
1495
+ "description": "Update access token for the Xano Metadata API",
1496
+ "name": "access_token",
1497
+ "required": false,
1498
+ "hasDynamicHelp": false,
1499
+ "multiple": false,
1500
+ "type": "option"
1501
+ },
1502
+ "account_origin": {
1503
+ "char": "a",
1504
+ "description": "Update account origin URL",
1505
+ "name": "account_origin",
1506
+ "required": false,
1507
+ "hasDynamicHelp": false,
1508
+ "multiple": false,
1509
+ "type": "option"
1510
+ },
1511
+ "branch": {
1512
+ "char": "b",
1513
+ "description": "Update branch name",
1514
+ "name": "branch",
1515
+ "required": false,
1516
+ "hasDynamicHelp": false,
1517
+ "multiple": false,
1518
+ "type": "option"
1519
+ },
1520
+ "insecure": {
1521
+ "description": "Enable insecure mode (skip TLS certificate verification)",
1522
+ "name": "insecure",
1523
+ "required": false,
1524
+ "allowNo": false,
1525
+ "type": "boolean"
1526
+ },
1527
+ "instance_origin": {
1528
+ "char": "i",
1529
+ "description": "Update instance origin URL",
1530
+ "name": "instance_origin",
1547
1531
  "required": false,
1548
- "default": "summary",
1549
1532
  "hasDynamicHelp": false,
1550
1533
  "multiple": false,
1551
- "options": [
1552
- "summary",
1553
- "json"
1554
- ],
1555
1534
  "type": "option"
1556
1535
  },
1536
+ "remove-branch": {
1537
+ "description": "Remove branch from profile",
1538
+ "name": "remove-branch",
1539
+ "required": false,
1540
+ "allowNo": false,
1541
+ "type": "boolean"
1542
+ },
1543
+ "remove-insecure": {
1544
+ "description": "Remove insecure mode from profile",
1545
+ "name": "remove-insecure",
1546
+ "required": false,
1547
+ "allowNo": false,
1548
+ "type": "boolean"
1549
+ },
1550
+ "remove-workspace": {
1551
+ "description": "Remove workspace from profile",
1552
+ "name": "remove-workspace",
1553
+ "required": false,
1554
+ "allowNo": false,
1555
+ "type": "boolean"
1556
+ },
1557
1557
  "workspace": {
1558
1558
  "char": "w",
1559
- "description": "Workspace ID (uses profile workspace if not provided)",
1559
+ "description": "Update workspace name",
1560
1560
  "name": "workspace",
1561
1561
  "required": false,
1562
1562
  "hasDynamicHelp": false,
@@ -1566,7 +1566,7 @@
1566
1566
  },
1567
1567
  "hasDynamicHelp": false,
1568
1568
  "hiddenAliases": [],
1569
- "id": "branch:get",
1569
+ "id": "profile:edit",
1570
1570
  "pluginAlias": "@xano/cli",
1571
1571
  "pluginName": "@xano/cli",
1572
1572
  "pluginType": "core",
@@ -1576,8 +1576,8 @@
1576
1576
  "relativePath": [
1577
1577
  "dist",
1578
1578
  "commands",
1579
- "branch",
1580
- "get",
1579
+ "profile",
1580
+ "edit",
1581
1581
  "index.js"
1582
1582
  ]
1583
1583
  },
@@ -1638,59 +1638,6 @@
1638
1638
  "index.js"
1639
1639
  ]
1640
1640
  },
1641
- "profile:wizard": {
1642
- "aliases": [],
1643
- "args": {},
1644
- "description": "Create a new profile configuration using an interactive wizard",
1645
- "examples": [
1646
- "$ 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"
1647
- ],
1648
- "flags": {
1649
- "insecure": {
1650
- "char": "k",
1651
- "description": "Skip TLS certificate verification (for self-signed certificates)",
1652
- "name": "insecure",
1653
- "required": false,
1654
- "allowNo": false,
1655
- "type": "boolean"
1656
- },
1657
- "name": {
1658
- "char": "n",
1659
- "description": "Profile name (skip prompt if provided)",
1660
- "name": "name",
1661
- "required": false,
1662
- "hasDynamicHelp": false,
1663
- "multiple": false,
1664
- "type": "option"
1665
- },
1666
- "origin": {
1667
- "char": "o",
1668
- "description": "Xano instance origin URL",
1669
- "name": "origin",
1670
- "required": false,
1671
- "default": "https://app.xano.com",
1672
- "hasDynamicHelp": false,
1673
- "multiple": false,
1674
- "type": "option"
1675
- }
1676
- },
1677
- "hasDynamicHelp": false,
1678
- "hiddenAliases": [],
1679
- "id": "profile:wizard",
1680
- "pluginAlias": "@xano/cli",
1681
- "pluginName": "@xano/cli",
1682
- "pluginType": "core",
1683
- "strict": true,
1684
- "enableJsonFlag": false,
1685
- "isESM": true,
1686
- "relativePath": [
1687
- "dist",
1688
- "commands",
1689
- "profile",
1690
- "wizard",
1691
- "index.js"
1692
- ]
1693
- },
1694
1641
  "release:create": {
1695
1642
  "aliases": [],
1696
1643
  "args": {},
@@ -2063,13 +2010,19 @@
2063
2010
  "index.js"
2064
2011
  ]
2065
2012
  },
2066
- "release:import": {
2013
+ "release:get": {
2067
2014
  "aliases": [],
2068
- "args": {},
2069
- "description": "Import a release file into a workspace",
2015
+ "args": {
2016
+ "release_name": {
2017
+ "description": "Release name to retrieve",
2018
+ "name": "release_name",
2019
+ "required": true
2020
+ }
2021
+ },
2022
+ "description": "Get details of a specific release",
2070
2023
  "examples": [
2071
- "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
2072
- "$ xano release import --file ./my-release.tar.gz -o json"
2024
+ "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2025
+ "$ xano release get v1.0 -w 5 -o json"
2073
2026
  ],
2074
2027
  "flags": {
2075
2028
  "profile": {
@@ -2091,15 +2044,6 @@
2091
2044
  "allowNo": false,
2092
2045
  "type": "boolean"
2093
2046
  },
2094
- "file": {
2095
- "char": "f",
2096
- "description": "Path to the release file (.tar.gz)",
2097
- "name": "file",
2098
- "required": true,
2099
- "hasDynamicHelp": false,
2100
- "multiple": false,
2101
- "type": "option"
2102
- },
2103
2047
  "output": {
2104
2048
  "char": "o",
2105
2049
  "description": "Output format",
@@ -2126,7 +2070,7 @@
2126
2070
  },
2127
2071
  "hasDynamicHelp": false,
2128
2072
  "hiddenAliases": [],
2129
- "id": "release:import",
2073
+ "id": "release:get",
2130
2074
  "pluginAlias": "@xano/cli",
2131
2075
  "pluginName": "@xano/cli",
2132
2076
  "pluginType": "core",
@@ -2137,23 +2081,17 @@
2137
2081
  "dist",
2138
2082
  "commands",
2139
2083
  "release",
2140
- "import",
2084
+ "get",
2141
2085
  "index.js"
2142
2086
  ]
2143
2087
  },
2144
- "release:get": {
2088
+ "release:import": {
2145
2089
  "aliases": [],
2146
- "args": {
2147
- "release_name": {
2148
- "description": "Release name to retrieve",
2149
- "name": "release_name",
2150
- "required": true
2151
- }
2152
- },
2153
- "description": "Get details of a specific release",
2090
+ "args": {},
2091
+ "description": "Import a release file into a workspace",
2154
2092
  "examples": [
2155
- "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2156
- "$ xano release get v1.0 -w 5 -o json"
2093
+ "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
2094
+ "$ xano release import --file ./my-release.tar.gz -o json"
2157
2095
  ],
2158
2096
  "flags": {
2159
2097
  "profile": {
@@ -2175,6 +2113,15 @@
2175
2113
  "allowNo": false,
2176
2114
  "type": "boolean"
2177
2115
  },
2116
+ "file": {
2117
+ "char": "f",
2118
+ "description": "Path to the release file (.tar.gz)",
2119
+ "name": "file",
2120
+ "required": true,
2121
+ "hasDynamicHelp": false,
2122
+ "multiple": false,
2123
+ "type": "option"
2124
+ },
2178
2125
  "output": {
2179
2126
  "char": "o",
2180
2127
  "description": "Output format",
@@ -2201,7 +2148,7 @@
2201
2148
  },
2202
2149
  "hasDynamicHelp": false,
2203
2150
  "hiddenAliases": [],
2204
- "id": "release:get",
2151
+ "id": "release:import",
2205
2152
  "pluginAlias": "@xano/cli",
2206
2153
  "pluginName": "@xano/cli",
2207
2154
  "pluginType": "core",
@@ -2212,46 +2159,20 @@
2212
2159
  "dist",
2213
2160
  "commands",
2214
2161
  "release",
2215
- "get",
2162
+ "import",
2216
2163
  "index.js"
2217
2164
  ]
2218
2165
  },
2219
- "profile:workspace": {
2166
+ "release:pull": {
2220
2167
  "aliases": [],
2221
- "args": {},
2222
- "description": "Print the workspace ID for the default profile",
2223
- "examples": [
2224
- "$ xano profile:workspace\nabc123-workspace-id\n",
2225
- "$ xano profile:workspace | pbcopy\n# Copies the workspace ID to clipboard on macOS\n"
2226
- ],
2227
- "flags": {},
2228
- "hasDynamicHelp": false,
2229
- "hiddenAliases": [],
2230
- "id": "profile:workspace",
2231
- "pluginAlias": "@xano/cli",
2232
- "pluginName": "@xano/cli",
2233
- "pluginType": "core",
2234
- "strict": true,
2235
- "enableJsonFlag": false,
2236
- "isESM": true,
2237
- "relativePath": [
2238
- "dist",
2239
- "commands",
2240
- "profile",
2241
- "workspace",
2242
- "index.js"
2243
- ]
2244
- },
2245
- "release:pull": {
2246
- "aliases": [],
2247
- "args": {
2248
- "directory": {
2249
- "description": "Output directory for pulled documents",
2250
- "name": "directory",
2251
- "required": true
2252
- }
2253
- },
2254
- "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2168
+ "args": {
2169
+ "directory": {
2170
+ "description": "Output directory for pulled documents",
2171
+ "name": "directory",
2172
+ "required": true
2173
+ }
2174
+ },
2175
+ "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2255
2176
  "examples": [
2256
2177
  "$ xano release pull ./my-release -r v1.0\nPulled 42 documents from release 'v1.0' to ./my-release\n",
2257
2178
  "$ xano release pull ./output -r v1.0 -w 40\nPulled 15 documents from release 'v1.0' to ./output\n",
@@ -2327,6 +2248,75 @@
2327
2248
  "index.js"
2328
2249
  ]
2329
2250
  },
2251
+ "release:list": {
2252
+ "aliases": [],
2253
+ "args": {},
2254
+ "description": "List all releases in a workspace",
2255
+ "examples": [
2256
+ "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2257
+ "$ xano release list -w 5 --output json"
2258
+ ],
2259
+ "flags": {
2260
+ "profile": {
2261
+ "char": "p",
2262
+ "description": "Profile to use (uses default profile if not specified)",
2263
+ "env": "XANO_PROFILE",
2264
+ "name": "profile",
2265
+ "required": false,
2266
+ "hasDynamicHelp": false,
2267
+ "multiple": false,
2268
+ "type": "option"
2269
+ },
2270
+ "verbose": {
2271
+ "char": "v",
2272
+ "description": "Show detailed request/response information",
2273
+ "env": "XANO_VERBOSE",
2274
+ "name": "verbose",
2275
+ "required": false,
2276
+ "allowNo": false,
2277
+ "type": "boolean"
2278
+ },
2279
+ "output": {
2280
+ "char": "o",
2281
+ "description": "Output format",
2282
+ "name": "output",
2283
+ "required": false,
2284
+ "default": "summary",
2285
+ "hasDynamicHelp": false,
2286
+ "multiple": false,
2287
+ "options": [
2288
+ "summary",
2289
+ "json"
2290
+ ],
2291
+ "type": "option"
2292
+ },
2293
+ "workspace": {
2294
+ "char": "w",
2295
+ "description": "Workspace ID (uses profile workspace if not provided)",
2296
+ "name": "workspace",
2297
+ "required": false,
2298
+ "hasDynamicHelp": false,
2299
+ "multiple": false,
2300
+ "type": "option"
2301
+ }
2302
+ },
2303
+ "hasDynamicHelp": false,
2304
+ "hiddenAliases": [],
2305
+ "id": "release:list",
2306
+ "pluginAlias": "@xano/cli",
2307
+ "pluginName": "@xano/cli",
2308
+ "pluginType": "core",
2309
+ "strict": true,
2310
+ "enableJsonFlag": false,
2311
+ "isESM": true,
2312
+ "relativePath": [
2313
+ "dist",
2314
+ "commands",
2315
+ "release",
2316
+ "list",
2317
+ "index.js"
2318
+ ]
2319
+ },
2330
2320
  "release:push": {
2331
2321
  "aliases": [],
2332
2322
  "args": {
@@ -2445,13 +2435,45 @@
2445
2435
  "index.js"
2446
2436
  ]
2447
2437
  },
2448
- "release:list": {
2438
+ "profile:workspace": {
2449
2439
  "aliases": [],
2450
2440
  "args": {},
2451
- "description": "List all releases in a workspace",
2441
+ "description": "Print the workspace ID for the default profile",
2452
2442
  "examples": [
2453
- "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2454
- "$ xano release list -w 5 --output json"
2443
+ "$ xano profile:workspace\nabc123-workspace-id\n",
2444
+ "$ xano profile:workspace | pbcopy\n# Copies the workspace ID to clipboard on macOS\n"
2445
+ ],
2446
+ "flags": {},
2447
+ "hasDynamicHelp": false,
2448
+ "hiddenAliases": [],
2449
+ "id": "profile:workspace",
2450
+ "pluginAlias": "@xano/cli",
2451
+ "pluginName": "@xano/cli",
2452
+ "pluginType": "core",
2453
+ "strict": true,
2454
+ "enableJsonFlag": false,
2455
+ "isESM": true,
2456
+ "relativePath": [
2457
+ "dist",
2458
+ "commands",
2459
+ "profile",
2460
+ "workspace",
2461
+ "index.js"
2462
+ ]
2463
+ },
2464
+ "tenant:create": {
2465
+ "aliases": [],
2466
+ "args": {
2467
+ "display": {
2468
+ "description": "Display name for the tenant",
2469
+ "name": "display",
2470
+ "required": true
2471
+ }
2472
+ },
2473
+ "description": "Create a new tenant in a workspace",
2474
+ "examples": [
2475
+ "$ xano tenant create \"Production\"\nCreated tenant: Production (production) - ID: 42\n",
2476
+ "$ xano tenant create \"Staging\" --description \"Staging env\" --cluster_id 1 --platform_id 1 --license tier2 -o json"
2455
2477
  ],
2456
2478
  "flags": {
2457
2479
  "profile": {
@@ -2473,6 +2495,57 @@
2473
2495
  "allowNo": false,
2474
2496
  "type": "boolean"
2475
2497
  },
2498
+ "cluster_id": {
2499
+ "description": "Cluster ID to deploy to (required for tier2/tier3)",
2500
+ "name": "cluster_id",
2501
+ "required": false,
2502
+ "hasDynamicHelp": false,
2503
+ "multiple": false,
2504
+ "type": "option"
2505
+ },
2506
+ "description": {
2507
+ "char": "d",
2508
+ "description": "Tenant description",
2509
+ "name": "description",
2510
+ "required": false,
2511
+ "hasDynamicHelp": false,
2512
+ "multiple": false,
2513
+ "type": "option"
2514
+ },
2515
+ "domain": {
2516
+ "description": "Custom domain for the tenant",
2517
+ "name": "domain",
2518
+ "required": false,
2519
+ "hasDynamicHelp": false,
2520
+ "multiple": false,
2521
+ "type": "option"
2522
+ },
2523
+ "ephemeral": {
2524
+ "description": "Mark tenant as ephemeral (allows push operations)",
2525
+ "name": "ephemeral",
2526
+ "allowNo": false,
2527
+ "type": "boolean"
2528
+ },
2529
+ "ingress": {
2530
+ "description": "Enable ingress",
2531
+ "name": "ingress",
2532
+ "allowNo": true,
2533
+ "type": "boolean"
2534
+ },
2535
+ "license": {
2536
+ "description": "License tier",
2537
+ "name": "license",
2538
+ "required": false,
2539
+ "default": "tier1",
2540
+ "hasDynamicHelp": false,
2541
+ "multiple": false,
2542
+ "options": [
2543
+ "tier1",
2544
+ "tier2",
2545
+ "tier3"
2546
+ ],
2547
+ "type": "option"
2548
+ },
2476
2549
  "output": {
2477
2550
  "char": "o",
2478
2551
  "description": "Output format",
@@ -2487,6 +2560,20 @@
2487
2560
  ],
2488
2561
  "type": "option"
2489
2562
  },
2563
+ "platform_id": {
2564
+ "description": "Platform ID to use",
2565
+ "name": "platform_id",
2566
+ "required": false,
2567
+ "hasDynamicHelp": false,
2568
+ "multiple": false,
2569
+ "type": "option"
2570
+ },
2571
+ "tasks": {
2572
+ "description": "Enable background tasks",
2573
+ "name": "tasks",
2574
+ "allowNo": true,
2575
+ "type": "boolean"
2576
+ },
2490
2577
  "workspace": {
2491
2578
  "char": "w",
2492
2579
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2499,7 +2586,7 @@
2499
2586
  },
2500
2587
  "hasDynamicHelp": false,
2501
2588
  "hiddenAliases": [],
2502
- "id": "release:list",
2589
+ "id": "tenant:create",
2503
2590
  "pluginAlias": "@xano/cli",
2504
2591
  "pluginName": "@xano/cli",
2505
2592
  "pluginType": "core",
@@ -2509,20 +2596,25 @@
2509
2596
  "relativePath": [
2510
2597
  "dist",
2511
2598
  "commands",
2512
- "release",
2513
- "list",
2599
+ "tenant",
2600
+ "create",
2514
2601
  "index.js"
2515
2602
  ]
2516
2603
  },
2517
- "static_host:list": {
2604
+ "tenant:deploy_platform": {
2518
2605
  "aliases": [],
2519
- "args": {},
2520
- "description": "List all static hosts in a workspace from the Xano Metadata API",
2606
+ "args": {
2607
+ "tenant_name": {
2608
+ "description": "Tenant name to deploy to",
2609
+ "name": "tenant_name",
2610
+ "required": true
2611
+ }
2612
+ },
2613
+ "description": "Deploy a platform version to a tenant",
2521
2614
  "examples": [
2522
- "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2523
- "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2524
- "$ 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",
2525
- "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2615
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2616
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json",
2617
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 --license ./license.yaml"
2526
2618
  ],
2527
2619
  "flags": {
2528
2620
  "profile": {
@@ -2544,6 +2636,15 @@
2544
2636
  "allowNo": false,
2545
2637
  "type": "boolean"
2546
2638
  },
2639
+ "license": {
2640
+ "char": "l",
2641
+ "description": "Path to a license override file to apply after deploy",
2642
+ "name": "license",
2643
+ "required": false,
2644
+ "hasDynamicHelp": false,
2645
+ "multiple": false,
2646
+ "type": "option"
2647
+ },
2547
2648
  "output": {
2548
2649
  "char": "o",
2549
2650
  "description": "Output format",
@@ -2558,27 +2659,111 @@
2558
2659
  ],
2559
2660
  "type": "option"
2560
2661
  },
2561
- "page": {
2562
- "description": "Page number for pagination",
2563
- "name": "page",
2662
+ "platform_id": {
2663
+ "description": "Platform ID to deploy",
2664
+ "name": "platform_id",
2665
+ "required": true,
2666
+ "hasDynamicHelp": false,
2667
+ "multiple": false,
2668
+ "type": "option"
2669
+ },
2670
+ "workspace": {
2671
+ "char": "w",
2672
+ "description": "Workspace ID (uses profile workspace if not provided)",
2673
+ "name": "workspace",
2674
+ "required": false,
2675
+ "hasDynamicHelp": false,
2676
+ "multiple": false,
2677
+ "type": "option"
2678
+ }
2679
+ },
2680
+ "hasDynamicHelp": false,
2681
+ "hiddenAliases": [],
2682
+ "id": "tenant:deploy_platform",
2683
+ "pluginAlias": "@xano/cli",
2684
+ "pluginName": "@xano/cli",
2685
+ "pluginType": "core",
2686
+ "strict": true,
2687
+ "enableJsonFlag": false,
2688
+ "isESM": true,
2689
+ "relativePath": [
2690
+ "dist",
2691
+ "commands",
2692
+ "tenant",
2693
+ "deploy_platform",
2694
+ "index.js"
2695
+ ]
2696
+ },
2697
+ "tenant:deploy_release": {
2698
+ "aliases": [],
2699
+ "args": {
2700
+ "tenant_name": {
2701
+ "description": "Tenant name to deploy to",
2702
+ "name": "tenant_name",
2703
+ "required": true
2704
+ }
2705
+ },
2706
+ "description": "Deploy a release to a tenant",
2707
+ "examples": [
2708
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
2709
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json",
2710
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 --license ./license.yaml"
2711
+ ],
2712
+ "flags": {
2713
+ "profile": {
2714
+ "char": "p",
2715
+ "description": "Profile to use (uses default profile if not specified)",
2716
+ "env": "XANO_PROFILE",
2717
+ "name": "profile",
2564
2718
  "required": false,
2565
- "default": 1,
2566
2719
  "hasDynamicHelp": false,
2567
2720
  "multiple": false,
2568
2721
  "type": "option"
2569
2722
  },
2570
- "per_page": {
2571
- "description": "Number of results per page",
2572
- "name": "per_page",
2723
+ "verbose": {
2724
+ "char": "v",
2725
+ "description": "Show detailed request/response information",
2726
+ "env": "XANO_VERBOSE",
2727
+ "name": "verbose",
2573
2728
  "required": false,
2574
- "default": 50,
2729
+ "allowNo": false,
2730
+ "type": "boolean"
2731
+ },
2732
+ "license": {
2733
+ "char": "l",
2734
+ "description": "Path to a license override file to apply after deploy",
2735
+ "name": "license",
2736
+ "required": false,
2737
+ "hasDynamicHelp": false,
2738
+ "multiple": false,
2739
+ "type": "option"
2740
+ },
2741
+ "output": {
2742
+ "char": "o",
2743
+ "description": "Output format",
2744
+ "name": "output",
2745
+ "required": false,
2746
+ "default": "summary",
2747
+ "hasDynamicHelp": false,
2748
+ "multiple": false,
2749
+ "options": [
2750
+ "summary",
2751
+ "json"
2752
+ ],
2753
+ "type": "option"
2754
+ },
2755
+ "release": {
2756
+ "char": "r",
2757
+ "description": "Release name to deploy",
2758
+ "name": "release",
2759
+ "required": true,
2575
2760
  "hasDynamicHelp": false,
2576
2761
  "multiple": false,
2577
2762
  "type": "option"
2578
2763
  },
2579
2764
  "workspace": {
2580
2765
  "char": "w",
2581
- "description": "Workspace ID (optional if set in profile)",
2766
+ "description": "Workspace ID (uses profile workspace if not provided)",
2582
2767
  "name": "workspace",
2583
2768
  "required": false,
2584
2769
  "hasDynamicHelp": false,
@@ -2588,7 +2773,60 @@
2588
2773
  },
2589
2774
  "hasDynamicHelp": false,
2590
2775
  "hiddenAliases": [],
2591
- "id": "static_host:list",
2776
+ "id": "tenant:deploy_release",
2777
+ "pluginAlias": "@xano/cli",
2778
+ "pluginName": "@xano/cli",
2779
+ "pluginType": "core",
2780
+ "strict": true,
2781
+ "enableJsonFlag": false,
2782
+ "isESM": true,
2783
+ "relativePath": [
2784
+ "dist",
2785
+ "commands",
2786
+ "tenant",
2787
+ "deploy_release",
2788
+ "index.js"
2789
+ ]
2790
+ },
2791
+ "profile:wizard": {
2792
+ "aliases": [],
2793
+ "args": {},
2794
+ "description": "Create a new profile configuration using an interactive wizard",
2795
+ "examples": [
2796
+ "$ 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"
2797
+ ],
2798
+ "flags": {
2799
+ "insecure": {
2800
+ "char": "k",
2801
+ "description": "Skip TLS certificate verification (for self-signed certificates)",
2802
+ "name": "insecure",
2803
+ "required": false,
2804
+ "allowNo": false,
2805
+ "type": "boolean"
2806
+ },
2807
+ "name": {
2808
+ "char": "n",
2809
+ "description": "Profile name (skip prompt if provided)",
2810
+ "name": "name",
2811
+ "required": false,
2812
+ "hasDynamicHelp": false,
2813
+ "multiple": false,
2814
+ "type": "option"
2815
+ },
2816
+ "origin": {
2817
+ "char": "o",
2818
+ "description": "Xano instance origin URL",
2819
+ "name": "origin",
2820
+ "required": false,
2821
+ "default": "https://app.xano.com",
2822
+ "hasDynamicHelp": false,
2823
+ "multiple": false,
2824
+ "type": "option"
2825
+ }
2826
+ },
2827
+ "hasDynamicHelp": false,
2828
+ "hiddenAliases": [],
2829
+ "id": "profile:wizard",
2592
2830
  "pluginAlias": "@xano/cli",
2593
2831
  "pluginName": "@xano/cli",
2594
2832
  "pluginType": "core",
@@ -2598,24 +2836,25 @@
2598
2836
  "relativePath": [
2599
2837
  "dist",
2600
2838
  "commands",
2601
- "static_host",
2602
- "list",
2839
+ "profile",
2840
+ "wizard",
2603
2841
  "index.js"
2604
2842
  ]
2605
2843
  },
2606
- "tenant:create": {
2844
+ "tenant:delete": {
2607
2845
  "aliases": [],
2608
2846
  "args": {
2609
- "display": {
2610
- "description": "Display name for the tenant",
2611
- "name": "display",
2847
+ "tenant_name": {
2848
+ "description": "Tenant name to delete",
2849
+ "name": "tenant_name",
2612
2850
  "required": true
2613
2851
  }
2614
2852
  },
2615
- "description": "Create a new tenant in a workspace",
2853
+ "description": "Delete a tenant permanently. This destroys all associated infrastructure and cannot be undone.",
2616
2854
  "examples": [
2617
- "$ xano tenant create \"Production\"\nCreated tenant: Production (production) - ID: 42\n",
2618
- "$ xano tenant create \"Staging\" --description \"Staging env\" --cluster_id 1 --platform_id 1 --license tier2 -o json"
2855
+ "$ xano tenant delete t1234-abcd-xyz1\nAre you sure you want to delete tenant t1234-abcd-xyz1? This action cannot be undone. (y/N) y\nDeleted tenant t1234-abcd-xyz1\n",
2856
+ "$ xano tenant delete t1234-abcd-xyz1 --force\nDeleted tenant t1234-abcd-xyz1\n",
2857
+ "$ xano tenant delete t1234-abcd-xyz1 -f -o json"
2619
2858
  ],
2620
2859
  "flags": {
2621
2860
  "profile": {
@@ -2637,57 +2876,14 @@
2637
2876
  "allowNo": false,
2638
2877
  "type": "boolean"
2639
2878
  },
2640
- "cluster_id": {
2641
- "description": "Cluster ID to deploy to (required for tier2/tier3)",
2642
- "name": "cluster_id",
2643
- "required": false,
2644
- "hasDynamicHelp": false,
2645
- "multiple": false,
2646
- "type": "option"
2647
- },
2648
- "description": {
2649
- "char": "d",
2650
- "description": "Tenant description",
2651
- "name": "description",
2652
- "required": false,
2653
- "hasDynamicHelp": false,
2654
- "multiple": false,
2655
- "type": "option"
2656
- },
2657
- "domain": {
2658
- "description": "Custom domain for the tenant",
2659
- "name": "domain",
2879
+ "force": {
2880
+ "char": "f",
2881
+ "description": "Skip confirmation prompt",
2882
+ "name": "force",
2660
2883
  "required": false,
2661
- "hasDynamicHelp": false,
2662
- "multiple": false,
2663
- "type": "option"
2664
- },
2665
- "ephemeral": {
2666
- "description": "Mark tenant as ephemeral (allows push operations)",
2667
- "name": "ephemeral",
2668
2884
  "allowNo": false,
2669
2885
  "type": "boolean"
2670
2886
  },
2671
- "ingress": {
2672
- "description": "Enable ingress",
2673
- "name": "ingress",
2674
- "allowNo": true,
2675
- "type": "boolean"
2676
- },
2677
- "license": {
2678
- "description": "License tier",
2679
- "name": "license",
2680
- "required": false,
2681
- "default": "tier1",
2682
- "hasDynamicHelp": false,
2683
- "multiple": false,
2684
- "options": [
2685
- "tier1",
2686
- "tier2",
2687
- "tier3"
2688
- ],
2689
- "type": "option"
2690
- },
2691
2887
  "output": {
2692
2888
  "char": "o",
2693
2889
  "description": "Output format",
@@ -2702,20 +2898,6 @@
2702
2898
  ],
2703
2899
  "type": "option"
2704
2900
  },
2705
- "platform_id": {
2706
- "description": "Platform ID to use",
2707
- "name": "platform_id",
2708
- "required": false,
2709
- "hasDynamicHelp": false,
2710
- "multiple": false,
2711
- "type": "option"
2712
- },
2713
- "tasks": {
2714
- "description": "Enable background tasks",
2715
- "name": "tasks",
2716
- "allowNo": true,
2717
- "type": "boolean"
2718
- },
2719
2901
  "workspace": {
2720
2902
  "char": "w",
2721
2903
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2728,7 +2910,7 @@
2728
2910
  },
2729
2911
  "hasDynamicHelp": false,
2730
2912
  "hiddenAliases": [],
2731
- "id": "tenant:create",
2913
+ "id": "tenant:delete",
2732
2914
  "pluginAlias": "@xano/cli",
2733
2915
  "pluginName": "@xano/cli",
2734
2916
  "pluginType": "core",
@@ -2739,24 +2921,23 @@
2739
2921
  "dist",
2740
2922
  "commands",
2741
2923
  "tenant",
2742
- "create",
2924
+ "delete",
2743
2925
  "index.js"
2744
2926
  ]
2745
2927
  },
2746
- "tenant:delete": {
2928
+ "tenant:edit": {
2747
2929
  "aliases": [],
2748
2930
  "args": {
2749
2931
  "tenant_name": {
2750
- "description": "Tenant name to delete",
2932
+ "description": "Tenant name to edit",
2751
2933
  "name": "tenant_name",
2752
2934
  "required": true
2753
2935
  }
2754
2936
  },
2755
- "description": "Delete a tenant permanently. This destroys all associated infrastructure and cannot be undone.",
2937
+ "description": "Edit an existing tenant",
2756
2938
  "examples": [
2757
- "$ xano tenant delete t1234-abcd-xyz1\nAre you sure you want to delete tenant t1234-abcd-xyz1? This action cannot be undone. (y/N) y\nDeleted tenant t1234-abcd-xyz1\n",
2758
- "$ xano tenant delete t1234-abcd-xyz1 --force\nDeleted tenant t1234-abcd-xyz1\n",
2759
- "$ xano tenant delete t1234-abcd-xyz1 -f -o json"
2939
+ "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
2940
+ "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
2760
2941
  ],
2761
2942
  "flags": {
2762
2943
  "profile": {
@@ -2778,12 +2959,36 @@
2778
2959
  "allowNo": false,
2779
2960
  "type": "boolean"
2780
2961
  },
2781
- "force": {
2782
- "char": "f",
2783
- "description": "Skip confirmation prompt",
2784
- "name": "force",
2962
+ "description": {
2963
+ "char": "d",
2964
+ "description": "New description",
2965
+ "name": "description",
2785
2966
  "required": false,
2786
- "allowNo": false,
2967
+ "hasDynamicHelp": false,
2968
+ "multiple": false,
2969
+ "type": "option"
2970
+ },
2971
+ "display": {
2972
+ "description": "New display name",
2973
+ "name": "display",
2974
+ "required": false,
2975
+ "hasDynamicHelp": false,
2976
+ "multiple": false,
2977
+ "type": "option"
2978
+ },
2979
+ "domain": {
2980
+ "description": "Custom domain",
2981
+ "name": "domain",
2982
+ "required": false,
2983
+ "hasDynamicHelp": false,
2984
+ "multiple": false,
2985
+ "type": "option"
2986
+ },
2987
+ "ingress": {
2988
+ "description": "Enable/disable ingress",
2989
+ "name": "ingress",
2990
+ "required": false,
2991
+ "allowNo": true,
2787
2992
  "type": "boolean"
2788
2993
  },
2789
2994
  "output": {
@@ -2800,6 +3005,28 @@
2800
3005
  ],
2801
3006
  "type": "option"
2802
3007
  },
3008
+ "proxy": {
3009
+ "description": "Proxy URL",
3010
+ "name": "proxy",
3011
+ "required": false,
3012
+ "hasDynamicHelp": false,
3013
+ "multiple": false,
3014
+ "type": "option"
3015
+ },
3016
+ "rbac": {
3017
+ "description": "Enable/disable RBAC",
3018
+ "name": "rbac",
3019
+ "required": false,
3020
+ "allowNo": true,
3021
+ "type": "boolean"
3022
+ },
3023
+ "tasks": {
3024
+ "description": "Enable/disable background tasks",
3025
+ "name": "tasks",
3026
+ "required": false,
3027
+ "allowNo": true,
3028
+ "type": "boolean"
3029
+ },
2803
3030
  "workspace": {
2804
3031
  "char": "w",
2805
3032
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2812,7 +3039,7 @@
2812
3039
  },
2813
3040
  "hasDynamicHelp": false,
2814
3041
  "hiddenAliases": [],
2815
- "id": "tenant:delete",
3042
+ "id": "tenant:edit",
2816
3043
  "pluginAlias": "@xano/cli",
2817
3044
  "pluginName": "@xano/cli",
2818
3045
  "pluginType": "core",
@@ -2823,23 +3050,23 @@
2823
3050
  "dist",
2824
3051
  "commands",
2825
3052
  "tenant",
2826
- "delete",
3053
+ "edit",
2827
3054
  "index.js"
2828
3055
  ]
2829
3056
  },
2830
- "tenant:deploy_platform": {
3057
+ "tenant:impersonate": {
2831
3058
  "aliases": [],
2832
3059
  "args": {
2833
3060
  "tenant_name": {
2834
- "description": "Tenant name to deploy to",
3061
+ "description": "Tenant name to impersonate",
2835
3062
  "name": "tenant_name",
2836
3063
  "required": true
2837
3064
  }
2838
3065
  },
2839
- "description": "Deploy a platform version to a tenant",
3066
+ "description": "Impersonate a tenant and open it in the browser",
2840
3067
  "examples": [
2841
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2842
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json"
3068
+ "$ xano tenant impersonate my-tenant\nOpening browser...\nImpersonation successful!\n",
3069
+ "$ xano tenant impersonate my-tenant -o json"
2843
3070
  ],
2844
3071
  "flags": {
2845
3072
  "profile": {
@@ -2875,13 +3102,13 @@
2875
3102
  ],
2876
3103
  "type": "option"
2877
3104
  },
2878
- "platform_id": {
2879
- "description": "Platform ID to deploy",
2880
- "name": "platform_id",
2881
- "required": true,
2882
- "hasDynamicHelp": false,
2883
- "multiple": false,
2884
- "type": "option"
3105
+ "url-only": {
3106
+ "char": "u",
3107
+ "description": "Print the URL without opening the browser",
3108
+ "name": "url-only",
3109
+ "required": false,
3110
+ "allowNo": false,
3111
+ "type": "boolean"
2885
3112
  },
2886
3113
  "workspace": {
2887
3114
  "char": "w",
@@ -2895,7 +3122,7 @@
2895
3122
  },
2896
3123
  "hasDynamicHelp": false,
2897
3124
  "hiddenAliases": [],
2898
- "id": "tenant:deploy_platform",
3125
+ "id": "tenant:impersonate",
2899
3126
  "pluginAlias": "@xano/cli",
2900
3127
  "pluginName": "@xano/cli",
2901
3128
  "pluginType": "core",
@@ -2906,23 +3133,25 @@
2906
3133
  "dist",
2907
3134
  "commands",
2908
3135
  "tenant",
2909
- "deploy_platform",
3136
+ "impersonate",
2910
3137
  "index.js"
2911
3138
  ]
2912
3139
  },
2913
- "tenant:deploy_release": {
3140
+ "tenant:pull": {
2914
3141
  "aliases": [],
2915
3142
  "args": {
2916
- "tenant_name": {
2917
- "description": "Tenant name to deploy to",
2918
- "name": "tenant_name",
3143
+ "directory": {
3144
+ "description": "Output directory for pulled documents",
3145
+ "name": "directory",
2919
3146
  "required": true
2920
3147
  }
2921
3148
  },
2922
- "description": "Deploy a release to a tenant",
3149
+ "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
2923
3150
  "examples": [
2924
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
2925
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json"
3151
+ "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3152
+ "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3153
+ "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3154
+ "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
2926
3155
  ],
2927
3156
  "flags": {
2928
3157
  "profile": {
@@ -2944,24 +3173,31 @@
2944
3173
  "allowNo": false,
2945
3174
  "type": "boolean"
2946
3175
  },
2947
- "output": {
2948
- "char": "o",
2949
- "description": "Output format",
2950
- "name": "output",
3176
+ "draft": {
3177
+ "description": "Include draft versions",
3178
+ "name": "draft",
2951
3179
  "required": false,
2952
- "default": "summary",
2953
- "hasDynamicHelp": false,
2954
- "multiple": false,
2955
- "options": [
2956
- "summary",
2957
- "json"
2958
- ],
2959
- "type": "option"
3180
+ "allowNo": false,
3181
+ "type": "boolean"
2960
3182
  },
2961
- "release": {
2962
- "char": "r",
2963
- "description": "Release name to deploy",
2964
- "name": "release",
3183
+ "env": {
3184
+ "description": "Include environment variables",
3185
+ "name": "env",
3186
+ "required": false,
3187
+ "allowNo": false,
3188
+ "type": "boolean"
3189
+ },
3190
+ "records": {
3191
+ "description": "Include records",
3192
+ "name": "records",
3193
+ "required": false,
3194
+ "allowNo": false,
3195
+ "type": "boolean"
3196
+ },
3197
+ "tenant": {
3198
+ "char": "t",
3199
+ "description": "Tenant name to pull from",
3200
+ "name": "tenant",
2965
3201
  "required": true,
2966
3202
  "hasDynamicHelp": false,
2967
3203
  "multiple": false,
@@ -2969,7 +3205,7 @@
2969
3205
  },
2970
3206
  "workspace": {
2971
3207
  "char": "w",
2972
- "description": "Workspace ID (uses profile workspace if not provided)",
3208
+ "description": "Workspace ID (optional if set in profile)",
2973
3209
  "name": "workspace",
2974
3210
  "required": false,
2975
3211
  "hasDynamicHelp": false,
@@ -2979,7 +3215,7 @@
2979
3215
  },
2980
3216
  "hasDynamicHelp": false,
2981
3217
  "hiddenAliases": [],
2982
- "id": "tenant:deploy_release",
3218
+ "id": "tenant:pull",
2983
3219
  "pluginAlias": "@xano/cli",
2984
3220
  "pluginName": "@xano/cli",
2985
3221
  "pluginType": "core",
@@ -2990,23 +3226,17 @@
2990
3226
  "dist",
2991
3227
  "commands",
2992
3228
  "tenant",
2993
- "deploy_release",
3229
+ "pull",
2994
3230
  "index.js"
2995
3231
  ]
2996
3232
  },
2997
- "tenant:get": {
3233
+ "tenant:list": {
2998
3234
  "aliases": [],
2999
- "args": {
3000
- "tenant_name": {
3001
- "description": "Tenant name to retrieve",
3002
- "name": "tenant_name",
3003
- "required": true
3004
- }
3005
- },
3006
- "description": "Get details of a specific tenant",
3235
+ "args": {},
3236
+ "description": "List all tenants in a workspace",
3007
3237
  "examples": [
3008
- "$ 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",
3009
- "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
3238
+ "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n Cluster: us-central\n Release: r1\n Platform: default\n - Staging (staging) [ok] - tier1\n Cluster: us-central\n Release: r1\n",
3239
+ "$ xano tenant list -w 5 --output json"
3010
3240
  ],
3011
3241
  "flags": {
3012
3242
  "profile": {
@@ -3054,7 +3284,7 @@
3054
3284
  },
3055
3285
  "hasDynamicHelp": false,
3056
3286
  "hiddenAliases": [],
3057
- "id": "tenant:get",
3287
+ "id": "tenant:list",
3058
3288
  "pluginAlias": "@xano/cli",
3059
3289
  "pluginName": "@xano/cli",
3060
3290
  "pluginType": "core",
@@ -3065,23 +3295,23 @@
3065
3295
  "dist",
3066
3296
  "commands",
3067
3297
  "tenant",
3068
- "get",
3298
+ "list",
3069
3299
  "index.js"
3070
3300
  ]
3071
3301
  },
3072
- "tenant:impersonate": {
3302
+ "tenant:get": {
3073
3303
  "aliases": [],
3074
3304
  "args": {
3075
3305
  "tenant_name": {
3076
- "description": "Tenant name to impersonate",
3306
+ "description": "Tenant name to retrieve",
3077
3307
  "name": "tenant_name",
3078
3308
  "required": true
3079
3309
  }
3080
3310
  },
3081
- "description": "Impersonate a tenant and open it in the browser",
3311
+ "description": "Get details of a specific tenant",
3082
3312
  "examples": [
3083
- "$ xano tenant impersonate my-tenant\nOpening browser...\nImpersonation successful!\n",
3084
- "$ xano tenant impersonate my-tenant -o json"
3313
+ "$ 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",
3314
+ "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
3085
3315
  ],
3086
3316
  "flags": {
3087
3317
  "profile": {
@@ -3117,14 +3347,6 @@
3117
3347
  ],
3118
3348
  "type": "option"
3119
3349
  },
3120
- "url-only": {
3121
- "char": "u",
3122
- "description": "Print the URL without opening the browser",
3123
- "name": "url-only",
3124
- "required": false,
3125
- "allowNo": false,
3126
- "type": "boolean"
3127
- },
3128
3350
  "workspace": {
3129
3351
  "char": "w",
3130
3352
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3137,7 +3359,7 @@
3137
3359
  },
3138
3360
  "hasDynamicHelp": false,
3139
3361
  "hiddenAliases": [],
3140
- "id": "tenant:impersonate",
3362
+ "id": "tenant:get",
3141
3363
  "pluginAlias": "@xano/cli",
3142
3364
  "pluginName": "@xano/cli",
3143
3365
  "pluginType": "core",
@@ -3148,23 +3370,18 @@
3148
3370
  "dist",
3149
3371
  "commands",
3150
3372
  "tenant",
3151
- "impersonate",
3373
+ "get",
3152
3374
  "index.js"
3153
3375
  ]
3154
3376
  },
3155
- "tenant:edit": {
3377
+ "unit_test:list": {
3156
3378
  "aliases": [],
3157
- "args": {
3158
- "tenant_name": {
3159
- "description": "Tenant name to edit",
3160
- "name": "tenant_name",
3161
- "required": true
3162
- }
3163
- },
3164
- "description": "Edit an existing tenant",
3379
+ "args": {},
3380
+ "description": "List all unit tests in a workspace",
3165
3381
  "examples": [
3166
- "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
3167
- "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
3382
+ "$ xano unit-test list\nUnit tests in workspace 5:\n - my-test (ID: abc-123) [function: math]\n - auth-check (ID: def-456) [query: /user/login]\n",
3383
+ "$ xano unit-test list -w 5 --output json",
3384
+ "$ xano unit-test list --obj-type function"
3168
3385
  ],
3169
3386
  "flags": {
3170
3387
  "profile": {
@@ -3186,38 +3403,28 @@
3186
3403
  "allowNo": false,
3187
3404
  "type": "boolean"
3188
3405
  },
3189
- "description": {
3190
- "char": "d",
3191
- "description": "New description",
3192
- "name": "description",
3193
- "required": false,
3194
- "hasDynamicHelp": false,
3195
- "multiple": false,
3196
- "type": "option"
3197
- },
3198
- "display": {
3199
- "description": "New display name",
3200
- "name": "display",
3406
+ "branch": {
3407
+ "char": "b",
3408
+ "description": "Filter by branch name",
3409
+ "name": "branch",
3201
3410
  "required": false,
3202
3411
  "hasDynamicHelp": false,
3203
3412
  "multiple": false,
3204
3413
  "type": "option"
3205
3414
  },
3206
- "domain": {
3207
- "description": "Custom domain",
3208
- "name": "domain",
3415
+ "obj-type": {
3416
+ "description": "Filter by object type",
3417
+ "name": "obj-type",
3209
3418
  "required": false,
3210
3419
  "hasDynamicHelp": false,
3211
3420
  "multiple": false,
3421
+ "options": [
3422
+ "function",
3423
+ "query",
3424
+ "middleware"
3425
+ ],
3212
3426
  "type": "option"
3213
3427
  },
3214
- "ingress": {
3215
- "description": "Enable/disable ingress",
3216
- "name": "ingress",
3217
- "required": false,
3218
- "allowNo": true,
3219
- "type": "boolean"
3220
- },
3221
3428
  "output": {
3222
3429
  "char": "o",
3223
3430
  "description": "Output format",
@@ -3232,28 +3439,6 @@
3232
3439
  ],
3233
3440
  "type": "option"
3234
3441
  },
3235
- "proxy": {
3236
- "description": "Proxy URL",
3237
- "name": "proxy",
3238
- "required": false,
3239
- "hasDynamicHelp": false,
3240
- "multiple": false,
3241
- "type": "option"
3242
- },
3243
- "rbac": {
3244
- "description": "Enable/disable RBAC",
3245
- "name": "rbac",
3246
- "required": false,
3247
- "allowNo": true,
3248
- "type": "boolean"
3249
- },
3250
- "tasks": {
3251
- "description": "Enable/disable background tasks",
3252
- "name": "tasks",
3253
- "required": false,
3254
- "allowNo": true,
3255
- "type": "boolean"
3256
- },
3257
3442
  "workspace": {
3258
3443
  "char": "w",
3259
3444
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3266,7 +3451,7 @@
3266
3451
  },
3267
3452
  "hasDynamicHelp": false,
3268
3453
  "hiddenAliases": [],
3269
- "id": "tenant:edit",
3454
+ "id": "unit_test:list",
3270
3455
  "pluginAlias": "@xano/cli",
3271
3456
  "pluginName": "@xano/cli",
3272
3457
  "pluginType": "core",
@@ -3276,26 +3461,24 @@
3276
3461
  "relativePath": [
3277
3462
  "dist",
3278
3463
  "commands",
3279
- "tenant",
3280
- "edit",
3464
+ "unit_test",
3465
+ "list",
3281
3466
  "index.js"
3282
3467
  ]
3283
3468
  },
3284
- "tenant:pull": {
3469
+ "unit_test:run": {
3285
3470
  "aliases": [],
3286
3471
  "args": {
3287
- "directory": {
3288
- "description": "Output directory for pulled documents",
3289
- "name": "directory",
3472
+ "unit_test_id": {
3473
+ "description": "ID of the unit test to run",
3474
+ "name": "unit_test_id",
3290
3475
  "required": true
3291
3476
  }
3292
3477
  },
3293
- "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
3478
+ "description": "Run a unit test",
3294
3479
  "examples": [
3295
- "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3296
- "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3297
- "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3298
- "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
3480
+ "$ xano unit-test run abc-123\nRunning unit test abc-123...\nResult: PASS\n",
3481
+ "$ xano unit-test run abc-123 -o json"
3299
3482
  ],
3300
3483
  "flags": {
3301
3484
  "profile": {
@@ -3317,39 +3500,23 @@
3317
3500
  "allowNo": false,
3318
3501
  "type": "boolean"
3319
3502
  },
3320
- "draft": {
3321
- "description": "Include draft versions",
3322
- "name": "draft",
3323
- "required": false,
3324
- "allowNo": false,
3325
- "type": "boolean"
3326
- },
3327
- "env": {
3328
- "description": "Include environment variables",
3329
- "name": "env",
3330
- "required": false,
3331
- "allowNo": false,
3332
- "type": "boolean"
3333
- },
3334
- "records": {
3335
- "description": "Include records",
3336
- "name": "records",
3503
+ "output": {
3504
+ "char": "o",
3505
+ "description": "Output format",
3506
+ "name": "output",
3337
3507
  "required": false,
3338
- "allowNo": false,
3339
- "type": "boolean"
3340
- },
3341
- "tenant": {
3342
- "char": "t",
3343
- "description": "Tenant name to pull from",
3344
- "name": "tenant",
3345
- "required": true,
3508
+ "default": "summary",
3346
3509
  "hasDynamicHelp": false,
3347
3510
  "multiple": false,
3511
+ "options": [
3512
+ "summary",
3513
+ "json"
3514
+ ],
3348
3515
  "type": "option"
3349
3516
  },
3350
3517
  "workspace": {
3351
3518
  "char": "w",
3352
- "description": "Workspace ID (optional if set in profile)",
3519
+ "description": "Workspace ID (uses profile workspace if not provided)",
3353
3520
  "name": "workspace",
3354
3521
  "required": false,
3355
3522
  "hasDynamicHelp": false,
@@ -3359,7 +3526,7 @@
3359
3526
  },
3360
3527
  "hasDynamicHelp": false,
3361
3528
  "hiddenAliases": [],
3362
- "id": "tenant:pull",
3529
+ "id": "unit_test:run",
3363
3530
  "pluginAlias": "@xano/cli",
3364
3531
  "pluginName": "@xano/cli",
3365
3532
  "pluginType": "core",
@@ -3369,8 +3536,8 @@
3369
3536
  "relativePath": [
3370
3537
  "dist",
3371
3538
  "commands",
3372
- "tenant",
3373
- "pull",
3539
+ "unit_test",
3540
+ "run",
3374
3541
  "index.js"
3375
3542
  ]
3376
3543
  },
@@ -3476,89 +3643,13 @@
3476
3643
  "index.js"
3477
3644
  ]
3478
3645
  },
3479
- "unit_test:run": {
3480
- "aliases": [],
3481
- "args": {
3482
- "unit_test_id": {
3483
- "description": "ID of the unit test to run",
3484
- "name": "unit_test_id",
3485
- "required": true
3486
- }
3487
- },
3488
- "description": "Run a unit test",
3489
- "examples": [
3490
- "$ xano unit-test run abc-123\nRunning unit test abc-123...\nResult: PASS\n",
3491
- "$ xano unit-test run abc-123 -o json"
3492
- ],
3493
- "flags": {
3494
- "profile": {
3495
- "char": "p",
3496
- "description": "Profile to use (uses default profile if not specified)",
3497
- "env": "XANO_PROFILE",
3498
- "name": "profile",
3499
- "required": false,
3500
- "hasDynamicHelp": false,
3501
- "multiple": false,
3502
- "type": "option"
3503
- },
3504
- "verbose": {
3505
- "char": "v",
3506
- "description": "Show detailed request/response information",
3507
- "env": "XANO_VERBOSE",
3508
- "name": "verbose",
3509
- "required": false,
3510
- "allowNo": false,
3511
- "type": "boolean"
3512
- },
3513
- "output": {
3514
- "char": "o",
3515
- "description": "Output format",
3516
- "name": "output",
3517
- "required": false,
3518
- "default": "summary",
3519
- "hasDynamicHelp": false,
3520
- "multiple": false,
3521
- "options": [
3522
- "summary",
3523
- "json"
3524
- ],
3525
- "type": "option"
3526
- },
3527
- "workspace": {
3528
- "char": "w",
3529
- "description": "Workspace ID (uses profile workspace if not provided)",
3530
- "name": "workspace",
3531
- "required": false,
3532
- "hasDynamicHelp": false,
3533
- "multiple": false,
3534
- "type": "option"
3535
- }
3536
- },
3537
- "hasDynamicHelp": false,
3538
- "hiddenAliases": [],
3539
- "id": "unit_test:run",
3540
- "pluginAlias": "@xano/cli",
3541
- "pluginName": "@xano/cli",
3542
- "pluginType": "core",
3543
- "strict": true,
3544
- "enableJsonFlag": false,
3545
- "isESM": true,
3546
- "relativePath": [
3547
- "dist",
3548
- "commands",
3549
- "unit_test",
3550
- "run",
3551
- "index.js"
3552
- ]
3553
- },
3554
- "unit_test:list": {
3646
+ "unit_test:run_all": {
3555
3647
  "aliases": [],
3556
3648
  "args": {},
3557
- "description": "List all unit tests in a workspace",
3649
+ "description": "Run all unit tests in a workspace",
3558
3650
  "examples": [
3559
- "$ xano unit-test list\nUnit tests in workspace 5:\n - my-test (ID: abc-123) [function: math]\n - auth-check (ID: def-456) [query: /user/login]\n",
3560
- "$ xano unit-test list -w 5 --output json",
3561
- "$ xano unit-test list --obj-type function"
3651
+ "$ xano unit-test run-all\nRunning 5 unit tests...\n\nPASS my-test [function: math]\nPASS auth-check [query: /user/login]\nFAIL data-validation [function: validate]\n Error: assertion failed\n\nResults: 2 passed, 1 failed\n",
3652
+ "$ xano unit-test run-all --obj-type function -o json"
3562
3653
  ],
3563
3654
  "flags": {
3564
3655
  "profile": {
@@ -3628,7 +3719,7 @@
3628
3719
  },
3629
3720
  "hasDynamicHelp": false,
3630
3721
  "hiddenAliases": [],
3631
- "id": "unit_test:list",
3722
+ "id": "unit_test:run_all",
3632
3723
  "pluginAlias": "@xano/cli",
3633
3724
  "pluginName": "@xano/cli",
3634
3725
  "pluginType": "core",
@@ -3639,23 +3730,19 @@
3639
3730
  "dist",
3640
3731
  "commands",
3641
3732
  "unit_test",
3642
- "list",
3733
+ "run_all",
3643
3734
  "index.js"
3644
3735
  ]
3645
3736
  },
3646
- "workflow_test:delete": {
3737
+ "static_host:list": {
3647
3738
  "aliases": [],
3648
- "args": {
3649
- "workflow_test_id": {
3650
- "description": "ID of the workflow test to delete",
3651
- "name": "workflow_test_id",
3652
- "required": true
3653
- }
3654
- },
3655
- "description": "Delete a workflow test",
3739
+ "args": {},
3740
+ "description": "List all static hosts in a workspace from the Xano Metadata API",
3656
3741
  "examples": [
3657
- "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3658
- "$ xano workflow-test delete 1 --force"
3742
+ "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
3743
+ "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
3744
+ "$ 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",
3745
+ "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
3659
3746
  ],
3660
3747
  "flags": {
3661
3748
  "profile": {
@@ -3677,14 +3764,6 @@
3677
3764
  "allowNo": false,
3678
3765
  "type": "boolean"
3679
3766
  },
3680
- "force": {
3681
- "char": "f",
3682
- "description": "Skip confirmation prompt",
3683
- "name": "force",
3684
- "required": false,
3685
- "allowNo": false,
3686
- "type": "boolean"
3687
- },
3688
3767
  "output": {
3689
3768
  "char": "o",
3690
3769
  "description": "Output format",
@@ -3699,100 +3778,27 @@
3699
3778
  ],
3700
3779
  "type": "option"
3701
3780
  },
3702
- "workspace": {
3703
- "char": "w",
3704
- "description": "Workspace ID (uses profile workspace if not provided)",
3705
- "name": "workspace",
3706
- "required": false,
3707
- "hasDynamicHelp": false,
3708
- "multiple": false,
3709
- "type": "option"
3710
- }
3711
- },
3712
- "hasDynamicHelp": false,
3713
- "hiddenAliases": [],
3714
- "id": "workflow_test:delete",
3715
- "pluginAlias": "@xano/cli",
3716
- "pluginName": "@xano/cli",
3717
- "pluginType": "core",
3718
- "strict": true,
3719
- "enableJsonFlag": false,
3720
- "isESM": true,
3721
- "relativePath": [
3722
- "dist",
3723
- "commands",
3724
- "workflow_test",
3725
- "delete",
3726
- "index.js"
3727
- ]
3728
- },
3729
- "unit_test:run_all": {
3730
- "aliases": [],
3731
- "args": {},
3732
- "description": "Run all unit tests in a workspace",
3733
- "examples": [
3734
- "$ xano unit-test run-all\nRunning 5 unit tests...\n\nPASS my-test [function: math]\nPASS auth-check [query: /user/login]\nFAIL data-validation [function: validate]\n Error: assertion failed\n\nResults: 2 passed, 1 failed\n",
3735
- "$ xano unit-test run-all --obj-type function -o json"
3736
- ],
3737
- "flags": {
3738
- "profile": {
3739
- "char": "p",
3740
- "description": "Profile to use (uses default profile if not specified)",
3741
- "env": "XANO_PROFILE",
3742
- "name": "profile",
3743
- "required": false,
3744
- "hasDynamicHelp": false,
3745
- "multiple": false,
3746
- "type": "option"
3747
- },
3748
- "verbose": {
3749
- "char": "v",
3750
- "description": "Show detailed request/response information",
3751
- "env": "XANO_VERBOSE",
3752
- "name": "verbose",
3753
- "required": false,
3754
- "allowNo": false,
3755
- "type": "boolean"
3756
- },
3757
- "branch": {
3758
- "char": "b",
3759
- "description": "Filter by branch name",
3760
- "name": "branch",
3761
- "required": false,
3762
- "hasDynamicHelp": false,
3763
- "multiple": false,
3764
- "type": "option"
3765
- },
3766
- "obj-type": {
3767
- "description": "Filter by object type",
3768
- "name": "obj-type",
3781
+ "page": {
3782
+ "description": "Page number for pagination",
3783
+ "name": "page",
3769
3784
  "required": false,
3785
+ "default": 1,
3770
3786
  "hasDynamicHelp": false,
3771
3787
  "multiple": false,
3772
- "options": [
3773
- "function",
3774
- "query",
3775
- "middleware"
3776
- ],
3777
3788
  "type": "option"
3778
3789
  },
3779
- "output": {
3780
- "char": "o",
3781
- "description": "Output format",
3782
- "name": "output",
3790
+ "per_page": {
3791
+ "description": "Number of results per page",
3792
+ "name": "per_page",
3783
3793
  "required": false,
3784
- "default": "summary",
3794
+ "default": 50,
3785
3795
  "hasDynamicHelp": false,
3786
3796
  "multiple": false,
3787
- "options": [
3788
- "summary",
3789
- "json"
3790
- ],
3791
3797
  "type": "option"
3792
3798
  },
3793
3799
  "workspace": {
3794
3800
  "char": "w",
3795
- "description": "Workspace ID (uses profile workspace if not provided)",
3801
+ "description": "Workspace ID (optional if set in profile)",
3796
3802
  "name": "workspace",
3797
3803
  "required": false,
3798
3804
  "hasDynamicHelp": false,
@@ -3802,7 +3808,7 @@
3802
3808
  },
3803
3809
  "hasDynamicHelp": false,
3804
3810
  "hiddenAliases": [],
3805
- "id": "unit_test:run_all",
3811
+ "id": "static_host:list",
3806
3812
  "pluginAlias": "@xano/cli",
3807
3813
  "pluginName": "@xano/cli",
3808
3814
  "pluginType": "core",
@@ -3812,25 +3818,24 @@
3812
3818
  "relativePath": [
3813
3819
  "dist",
3814
3820
  "commands",
3815
- "unit_test",
3816
- "run_all",
3821
+ "static_host",
3822
+ "list",
3817
3823
  "index.js"
3818
3824
  ]
3819
3825
  },
3820
- "workflow_test:get": {
3826
+ "workflow_test:delete": {
3821
3827
  "aliases": [],
3822
3828
  "args": {
3823
3829
  "workflow_test_id": {
3824
- "description": "ID of the workflow test",
3830
+ "description": "ID of the workflow test to delete",
3825
3831
  "name": "workflow_test_id",
3826
3832
  "required": true
3827
3833
  }
3828
3834
  },
3829
- "description": "Get a specific workflow test",
3835
+ "description": "Delete a workflow test",
3830
3836
  "examples": [
3831
- "$ xano workflow-test get 1\nWorkflow Test: my-test (ID: 1)\n Description: Validates auth endpoints\n Branch: main\n",
3832
- "$ xano workflow-test get 1 -o xs",
3833
- "$ xano workflow-test get 1 -o json"
3837
+ "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3838
+ "$ xano workflow-test delete 1 --force"
3834
3839
  ],
3835
3840
  "flags": {
3836
3841
  "profile": {
@@ -3852,9 +3857,10 @@
3852
3857
  "allowNo": false,
3853
3858
  "type": "boolean"
3854
3859
  },
3855
- "include-draft": {
3856
- "description": "Include draft version",
3857
- "name": "include-draft",
3860
+ "force": {
3861
+ "char": "f",
3862
+ "description": "Skip confirmation prompt",
3863
+ "name": "force",
3858
3864
  "required": false,
3859
3865
  "allowNo": false,
3860
3866
  "type": "boolean"
@@ -3869,8 +3875,7 @@
3869
3875
  "multiple": false,
3870
3876
  "options": [
3871
3877
  "summary",
3872
- "json",
3873
- "xs"
3878
+ "json"
3874
3879
  ],
3875
3880
  "type": "option"
3876
3881
  },
@@ -3886,7 +3891,7 @@
3886
3891
  },
3887
3892
  "hasDynamicHelp": false,
3888
3893
  "hiddenAliases": [],
3889
- "id": "workflow_test:get",
3894
+ "id": "workflow_test:delete",
3890
3895
  "pluginAlias": "@xano/cli",
3891
3896
  "pluginName": "@xano/cli",
3892
3897
  "pluginType": "core",
@@ -3897,17 +3902,18 @@
3897
3902
  "dist",
3898
3903
  "commands",
3899
3904
  "workflow_test",
3900
- "get",
3905
+ "delete",
3901
3906
  "index.js"
3902
3907
  ]
3903
3908
  },
3904
- "tenant:list": {
3909
+ "workflow_test:list": {
3905
3910
  "aliases": [],
3906
3911
  "args": {},
3907
- "description": "List all tenants in a workspace",
3912
+ "description": "List all workflow tests in a workspace",
3908
3913
  "examples": [
3909
- "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n Cluster: us-central\n Release: r1\n Platform: default\n - Staging (staging) [ok] - tier1\n Cluster: us-central\n Release: r1\n",
3910
- "$ xano tenant list -w 5 --output json"
3914
+ "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
3915
+ "$ xano workflow-test list -w 5 --output json",
3916
+ "$ xano workflow-test list --branch main"
3911
3917
  ],
3912
3918
  "flags": {
3913
3919
  "profile": {
@@ -3929,6 +3935,15 @@
3929
3935
  "allowNo": false,
3930
3936
  "type": "boolean"
3931
3937
  },
3938
+ "branch": {
3939
+ "char": "b",
3940
+ "description": "Filter by branch name",
3941
+ "name": "branch",
3942
+ "required": false,
3943
+ "hasDynamicHelp": false,
3944
+ "multiple": false,
3945
+ "type": "option"
3946
+ },
3932
3947
  "output": {
3933
3948
  "char": "o",
3934
3949
  "description": "Output format",
@@ -3955,7 +3970,7 @@
3955
3970
  },
3956
3971
  "hasDynamicHelp": false,
3957
3972
  "hiddenAliases": [],
3958
- "id": "tenant:list",
3973
+ "id": "workflow_test:list",
3959
3974
  "pluginAlias": "@xano/cli",
3960
3975
  "pluginName": "@xano/cli",
3961
3976
  "pluginType": "core",
@@ -3965,18 +3980,24 @@
3965
3980
  "relativePath": [
3966
3981
  "dist",
3967
3982
  "commands",
3968
- "tenant",
3983
+ "workflow_test",
3969
3984
  "list",
3970
3985
  "index.js"
3971
3986
  ]
3972
3987
  },
3973
- "workflow_test:run_all": {
3988
+ "workflow_test:run": {
3974
3989
  "aliases": [],
3975
- "args": {},
3976
- "description": "Run all workflow tests in a workspace",
3990
+ "args": {
3991
+ "workflow_test_id": {
3992
+ "description": "ID of the workflow test to run",
3993
+ "name": "workflow_test_id",
3994
+ "required": true
3995
+ }
3996
+ },
3997
+ "description": "Run a workflow test",
3977
3998
  "examples": [
3978
- "$ 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",
3979
- "$ xano workflow-test run-all --branch main -o json"
3999
+ "$ xano workflow-test run 1\nRunning workflow test 1...\nResult: PASS (1.234s)\n",
4000
+ "$ xano workflow-test run 1 -o json"
3980
4001
  ],
3981
4002
  "flags": {
3982
4003
  "profile": {
@@ -3998,15 +4019,6 @@
3998
4019
  "allowNo": false,
3999
4020
  "type": "boolean"
4000
4021
  },
4001
- "branch": {
4002
- "char": "b",
4003
- "description": "Filter by branch name",
4004
- "name": "branch",
4005
- "required": false,
4006
- "hasDynamicHelp": false,
4007
- "multiple": false,
4008
- "type": "option"
4009
- },
4010
4022
  "output": {
4011
4023
  "char": "o",
4012
4024
  "description": "Output format",
@@ -4033,7 +4045,7 @@
4033
4045
  },
4034
4046
  "hasDynamicHelp": false,
4035
4047
  "hiddenAliases": [],
4036
- "id": "workflow_test:run_all",
4048
+ "id": "workflow_test:run",
4037
4049
  "pluginAlias": "@xano/cli",
4038
4050
  "pluginName": "@xano/cli",
4039
4051
  "pluginType": "core",
@@ -4044,18 +4056,17 @@
4044
4056
  "dist",
4045
4057
  "commands",
4046
4058
  "workflow_test",
4047
- "run_all",
4059
+ "run",
4048
4060
  "index.js"
4049
4061
  ]
4050
4062
  },
4051
- "workflow_test:list": {
4063
+ "workflow_test:run_all": {
4052
4064
  "aliases": [],
4053
4065
  "args": {},
4054
- "description": "List all workflow tests in a workspace",
4066
+ "description": "Run all workflow tests in a workspace",
4055
4067
  "examples": [
4056
- "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
4057
- "$ xano workflow-test list -w 5 --output json",
4058
- "$ xano workflow-test list --branch main"
4068
+ "$ 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",
4069
+ "$ xano workflow-test run-all --branch main -o json"
4059
4070
  ],
4060
4071
  "flags": {
4061
4072
  "profile": {
@@ -4112,7 +4123,7 @@
4112
4123
  },
4113
4124
  "hasDynamicHelp": false,
4114
4125
  "hiddenAliases": [],
4115
- "id": "workflow_test:list",
4126
+ "id": "workflow_test:run_all",
4116
4127
  "pluginAlias": "@xano/cli",
4117
4128
  "pluginName": "@xano/cli",
4118
4129
  "pluginType": "core",
@@ -4123,23 +4134,24 @@
4123
4134
  "dist",
4124
4135
  "commands",
4125
4136
  "workflow_test",
4126
- "list",
4137
+ "run_all",
4127
4138
  "index.js"
4128
4139
  ]
4129
4140
  },
4130
- "workflow_test:run": {
4141
+ "workspace:delete": {
4131
4142
  "aliases": [],
4132
4143
  "args": {
4133
- "workflow_test_id": {
4134
- "description": "ID of the workflow test to run",
4135
- "name": "workflow_test_id",
4144
+ "workspace_id": {
4145
+ "description": "Workspace ID to delete",
4146
+ "name": "workspace_id",
4136
4147
  "required": true
4137
4148
  }
4138
4149
  },
4139
- "description": "Run a workflow test",
4150
+ "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4140
4151
  "examples": [
4141
- "$ xano workflow-test run 1\nRunning workflow test 1...\nResult: PASS (1.234s)\n",
4142
- "$ xano workflow-test run 1 -o json"
4152
+ "$ xano workspace delete 123\nAre you sure you want to delete workspace 123? This action cannot be undone. (y/N) y\nDeleted workspace 123\n",
4153
+ "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4154
+ "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4143
4155
  ],
4144
4156
  "flags": {
4145
4157
  "profile": {
@@ -4161,6 +4173,14 @@
4161
4173
  "allowNo": false,
4162
4174
  "type": "boolean"
4163
4175
  },
4176
+ "force": {
4177
+ "char": "f",
4178
+ "description": "Skip confirmation prompt",
4179
+ "name": "force",
4180
+ "required": false,
4181
+ "allowNo": false,
4182
+ "type": "boolean"
4183
+ },
4164
4184
  "output": {
4165
4185
  "char": "o",
4166
4186
  "description": "Output format",
@@ -4172,22 +4192,13 @@
4172
4192
  "options": [
4173
4193
  "summary",
4174
4194
  "json"
4175
- ],
4176
- "type": "option"
4177
- },
4178
- "workspace": {
4179
- "char": "w",
4180
- "description": "Workspace ID (uses profile workspace if not provided)",
4181
- "name": "workspace",
4182
- "required": false,
4183
- "hasDynamicHelp": false,
4184
- "multiple": false,
4195
+ ],
4185
4196
  "type": "option"
4186
4197
  }
4187
4198
  },
4188
4199
  "hasDynamicHelp": false,
4189
4200
  "hiddenAliases": [],
4190
- "id": "workflow_test:run",
4201
+ "id": "workspace:delete",
4191
4202
  "pluginAlias": "@xano/cli",
4192
4203
  "pluginName": "@xano/cli",
4193
4204
  "pluginType": "core",
@@ -4197,25 +4208,25 @@
4197
4208
  "relativePath": [
4198
4209
  "dist",
4199
4210
  "commands",
4200
- "workflow_test",
4201
- "run",
4211
+ "workspace",
4212
+ "delete",
4202
4213
  "index.js"
4203
4214
  ]
4204
4215
  },
4205
- "workspace:delete": {
4216
+ "workspace:create": {
4206
4217
  "aliases": [],
4207
4218
  "args": {
4208
- "workspace_id": {
4209
- "description": "Workspace ID to delete",
4210
- "name": "workspace_id",
4219
+ "name": {
4220
+ "description": "Name of the workspace",
4221
+ "name": "name",
4211
4222
  "required": true
4212
4223
  }
4213
4224
  },
4214
- "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4225
+ "description": "Create a new workspace via the Xano Metadata API",
4215
4226
  "examples": [
4216
- "$ xano workspace delete 123\nAre you sure you want to delete workspace 123? This action cannot be undone. (y/N) y\nDeleted workspace 123\n",
4217
- "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4218
- "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4227
+ "$ xano workspace create my-workspace\nCreated workspace: my-workspace (ID: 123)\n",
4228
+ "$ xano workspace create my-app --description \"My application workspace\"\nCreated workspace: my-app (ID: 456)\n Description: My application workspace\n",
4229
+ "$ xano workspace create new-project -d \"New project workspace\" -o json\n{\n \"id\": 789,\n \"name\": \"new-project\",\n \"description\": \"New project workspace\"\n}\n"
4219
4230
  ],
4220
4231
  "flags": {
4221
4232
  "profile": {
@@ -4237,13 +4248,14 @@
4237
4248
  "allowNo": false,
4238
4249
  "type": "boolean"
4239
4250
  },
4240
- "force": {
4241
- "char": "f",
4242
- "description": "Skip confirmation prompt",
4243
- "name": "force",
4251
+ "description": {
4252
+ "char": "d",
4253
+ "description": "Description for the workspace",
4254
+ "name": "description",
4244
4255
  "required": false,
4245
- "allowNo": false,
4246
- "type": "boolean"
4256
+ "hasDynamicHelp": false,
4257
+ "multiple": false,
4258
+ "type": "option"
4247
4259
  },
4248
4260
  "output": {
4249
4261
  "char": "o",
@@ -4262,7 +4274,7 @@
4262
4274
  },
4263
4275
  "hasDynamicHelp": false,
4264
4276
  "hiddenAliases": [],
4265
- "id": "workspace:delete",
4277
+ "id": "workspace:create",
4266
4278
  "pluginAlias": "@xano/cli",
4267
4279
  "pluginName": "@xano/cli",
4268
4280
  "pluginType": "core",
@@ -4273,7 +4285,7 @@
4273
4285
  "dist",
4274
4286
  "commands",
4275
4287
  "workspace",
4276
- "delete",
4288
+ "create",
4277
4289
  "index.js"
4278
4290
  ]
4279
4291
  },
@@ -4828,53 +4840,6 @@
4828
4840
  "index.js"
4829
4841
  ]
4830
4842
  },
4831
- "profile:workspace:set": {
4832
- "aliases": [],
4833
- "args": {},
4834
- "description": "Interactively select a workspace for a profile",
4835
- "examples": [
4836
- "$ xano profile workspace set\nFetching workspaces...\n? Select a workspace: My Workspace\nWorkspace updated to 'My Workspace' (abc123) on profile 'default'\n",
4837
- "$ xano profile workspace set -p production\nFetching workspaces...\n? Select a workspace: Production API\nWorkspace updated to 'Production API' (xyz789) on profile 'production'\n"
4838
- ],
4839
- "flags": {
4840
- "profile": {
4841
- "char": "p",
4842
- "description": "Profile to use (uses default profile if not specified)",
4843
- "env": "XANO_PROFILE",
4844
- "name": "profile",
4845
- "required": false,
4846
- "hasDynamicHelp": false,
4847
- "multiple": false,
4848
- "type": "option"
4849
- },
4850
- "verbose": {
4851
- "char": "v",
4852
- "description": "Show detailed request/response information",
4853
- "env": "XANO_VERBOSE",
4854
- "name": "verbose",
4855
- "required": false,
4856
- "allowNo": false,
4857
- "type": "boolean"
4858
- }
4859
- },
4860
- "hasDynamicHelp": false,
4861
- "hiddenAliases": [],
4862
- "id": "profile:workspace:set",
4863
- "pluginAlias": "@xano/cli",
4864
- "pluginName": "@xano/cli",
4865
- "pluginType": "core",
4866
- "strict": true,
4867
- "enableJsonFlag": false,
4868
- "isESM": true,
4869
- "relativePath": [
4870
- "dist",
4871
- "commands",
4872
- "profile",
4873
- "workspace",
4874
- "set",
4875
- "index.js"
4876
- ]
4877
- },
4878
4843
  "tenant:backup:delete": {
4879
4844
  "aliases": [],
4880
4845
  "args": {
@@ -5333,6 +5298,175 @@
5333
5298
  "index.js"
5334
5299
  ]
5335
5300
  },
5301
+ "profile:workspace:set": {
5302
+ "aliases": [],
5303
+ "args": {},
5304
+ "description": "Interactively select a workspace for a profile",
5305
+ "examples": [
5306
+ "$ xano profile workspace set\nFetching workspaces...\n? Select a workspace: My Workspace\nWorkspace updated to 'My Workspace' (abc123) on profile 'default'\n",
5307
+ "$ xano profile workspace set -p production\nFetching workspaces...\n? Select a workspace: Production API\nWorkspace updated to 'Production API' (xyz789) on profile 'production'\n"
5308
+ ],
5309
+ "flags": {
5310
+ "profile": {
5311
+ "char": "p",
5312
+ "description": "Profile to use (uses default profile if not specified)",
5313
+ "env": "XANO_PROFILE",
5314
+ "name": "profile",
5315
+ "required": false,
5316
+ "hasDynamicHelp": false,
5317
+ "multiple": false,
5318
+ "type": "option"
5319
+ },
5320
+ "verbose": {
5321
+ "char": "v",
5322
+ "description": "Show detailed request/response information",
5323
+ "env": "XANO_VERBOSE",
5324
+ "name": "verbose",
5325
+ "required": false,
5326
+ "allowNo": false,
5327
+ "type": "boolean"
5328
+ }
5329
+ },
5330
+ "hasDynamicHelp": false,
5331
+ "hiddenAliases": [],
5332
+ "id": "profile:workspace:set",
5333
+ "pluginAlias": "@xano/cli",
5334
+ "pluginName": "@xano/cli",
5335
+ "pluginType": "core",
5336
+ "strict": true,
5337
+ "enableJsonFlag": false,
5338
+ "isESM": true,
5339
+ "relativePath": [
5340
+ "dist",
5341
+ "commands",
5342
+ "profile",
5343
+ "workspace",
5344
+ "set",
5345
+ "index.js"
5346
+ ]
5347
+ },
5348
+ "tenant:cluster:create": {
5349
+ "aliases": [],
5350
+ "args": {},
5351
+ "description": "Create a new tenant cluster",
5352
+ "examples": [
5353
+ "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5354
+ "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5355
+ ],
5356
+ "flags": {
5357
+ "profile": {
5358
+ "char": "p",
5359
+ "description": "Profile to use (uses default profile if not specified)",
5360
+ "env": "XANO_PROFILE",
5361
+ "name": "profile",
5362
+ "required": false,
5363
+ "hasDynamicHelp": false,
5364
+ "multiple": false,
5365
+ "type": "option"
5366
+ },
5367
+ "verbose": {
5368
+ "char": "v",
5369
+ "description": "Show detailed request/response information",
5370
+ "env": "XANO_VERBOSE",
5371
+ "name": "verbose",
5372
+ "required": false,
5373
+ "allowNo": false,
5374
+ "type": "boolean"
5375
+ },
5376
+ "credentials": {
5377
+ "description": "Kubeconfig credentials (raw text)",
5378
+ "exclusive": [
5379
+ "credentials_file"
5380
+ ],
5381
+ "name": "credentials",
5382
+ "required": false,
5383
+ "hasDynamicHelp": false,
5384
+ "multiple": false,
5385
+ "type": "option"
5386
+ },
5387
+ "credentials_file": {
5388
+ "description": "Path to kubeconfig credentials file",
5389
+ "exclusive": [
5390
+ "credentials"
5391
+ ],
5392
+ "name": "credentials_file",
5393
+ "required": false,
5394
+ "hasDynamicHelp": false,
5395
+ "multiple": false,
5396
+ "type": "option"
5397
+ },
5398
+ "description": {
5399
+ "char": "d",
5400
+ "description": "Cluster description",
5401
+ "name": "description",
5402
+ "required": false,
5403
+ "hasDynamicHelp": false,
5404
+ "multiple": false,
5405
+ "type": "option"
5406
+ },
5407
+ "domain": {
5408
+ "description": "Custom domain for the cluster",
5409
+ "name": "domain",
5410
+ "required": false,
5411
+ "hasDynamicHelp": false,
5412
+ "multiple": false,
5413
+ "type": "option"
5414
+ },
5415
+ "name": {
5416
+ "char": "n",
5417
+ "description": "Cluster name",
5418
+ "name": "name",
5419
+ "required": true,
5420
+ "hasDynamicHelp": false,
5421
+ "multiple": false,
5422
+ "type": "option"
5423
+ },
5424
+ "output": {
5425
+ "char": "o",
5426
+ "description": "Output format",
5427
+ "name": "output",
5428
+ "required": false,
5429
+ "default": "summary",
5430
+ "hasDynamicHelp": false,
5431
+ "multiple": false,
5432
+ "options": [
5433
+ "summary",
5434
+ "json"
5435
+ ],
5436
+ "type": "option"
5437
+ },
5438
+ "type": {
5439
+ "description": "Cluster type",
5440
+ "name": "type",
5441
+ "required": false,
5442
+ "default": "standard",
5443
+ "hasDynamicHelp": false,
5444
+ "multiple": false,
5445
+ "options": [
5446
+ "standard",
5447
+ "run"
5448
+ ],
5449
+ "type": "option"
5450
+ }
5451
+ },
5452
+ "hasDynamicHelp": false,
5453
+ "hiddenAliases": [],
5454
+ "id": "tenant:cluster:create",
5455
+ "pluginAlias": "@xano/cli",
5456
+ "pluginName": "@xano/cli",
5457
+ "pluginType": "core",
5458
+ "strict": true,
5459
+ "enableJsonFlag": false,
5460
+ "isESM": true,
5461
+ "relativePath": [
5462
+ "dist",
5463
+ "commands",
5464
+ "tenant",
5465
+ "cluster",
5466
+ "create",
5467
+ "index.js"
5468
+ ]
5469
+ },
5336
5470
  "tenant:cluster:delete": {
5337
5471
  "aliases": [],
5338
5472
  "args": {
@@ -5514,82 +5648,6 @@
5514
5648
  "index.js"
5515
5649
  ]
5516
5650
  },
5517
- "workspace:create": {
5518
- "aliases": [],
5519
- "args": {
5520
- "name": {
5521
- "description": "Name of the workspace",
5522
- "name": "name",
5523
- "required": true
5524
- }
5525
- },
5526
- "description": "Create a new workspace via the Xano Metadata API",
5527
- "examples": [
5528
- "$ xano workspace create my-workspace\nCreated workspace: my-workspace (ID: 123)\n",
5529
- "$ xano workspace create my-app --description \"My application workspace\"\nCreated workspace: my-app (ID: 456)\n Description: My application workspace\n",
5530
- "$ xano workspace create new-project -d \"New project workspace\" -o json\n{\n \"id\": 789,\n \"name\": \"new-project\",\n \"description\": \"New project workspace\"\n}\n"
5531
- ],
5532
- "flags": {
5533
- "profile": {
5534
- "char": "p",
5535
- "description": "Profile to use (uses default profile if not specified)",
5536
- "env": "XANO_PROFILE",
5537
- "name": "profile",
5538
- "required": false,
5539
- "hasDynamicHelp": false,
5540
- "multiple": false,
5541
- "type": "option"
5542
- },
5543
- "verbose": {
5544
- "char": "v",
5545
- "description": "Show detailed request/response information",
5546
- "env": "XANO_VERBOSE",
5547
- "name": "verbose",
5548
- "required": false,
5549
- "allowNo": false,
5550
- "type": "boolean"
5551
- },
5552
- "description": {
5553
- "char": "d",
5554
- "description": "Description for the workspace",
5555
- "name": "description",
5556
- "required": false,
5557
- "hasDynamicHelp": false,
5558
- "multiple": false,
5559
- "type": "option"
5560
- },
5561
- "output": {
5562
- "char": "o",
5563
- "description": "Output format",
5564
- "name": "output",
5565
- "required": false,
5566
- "default": "summary",
5567
- "hasDynamicHelp": false,
5568
- "multiple": false,
5569
- "options": [
5570
- "summary",
5571
- "json"
5572
- ],
5573
- "type": "option"
5574
- }
5575
- },
5576
- "hasDynamicHelp": false,
5577
- "hiddenAliases": [],
5578
- "id": "workspace:create",
5579
- "pluginAlias": "@xano/cli",
5580
- "pluginName": "@xano/cli",
5581
- "pluginType": "core",
5582
- "strict": true,
5583
- "enableJsonFlag": false,
5584
- "isESM": true,
5585
- "relativePath": [
5586
- "dist",
5587
- "commands",
5588
- "workspace",
5589
- "create",
5590
- "index.js"
5591
- ]
5592
- },
5593
5651
  "tenant:cluster:get": {
5594
5652
  "aliases": [],
5595
5653
  "args": {
@@ -5657,13 +5715,13 @@
5657
5715
  "index.js"
5658
5716
  ]
5659
5717
  },
5660
- "tenant:cluster:create": {
5718
+ "tenant:cluster:list": {
5661
5719
  "aliases": [],
5662
5720
  "args": {},
5663
- "description": "Create a new tenant cluster",
5721
+ "description": "List all tenant clusters",
5664
5722
  "examples": [
5665
- "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5666
- "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5723
+ "$ xano tenant cluster list\nTenant clusters:\n - us-east-1 (standard) [ID: 1]\n - eu-west-1 (run) [ID: 2]\n",
5724
+ "$ xano tenant cluster list --output json"
5667
5725
  ],
5668
5726
  "flags": {
5669
5727
  "profile": {
@@ -5685,54 +5743,6 @@
5685
5743
  "allowNo": false,
5686
5744
  "type": "boolean"
5687
5745
  },
5688
- "credentials": {
5689
- "description": "Kubeconfig credentials (raw text)",
5690
- "exclusive": [
5691
- "credentials_file"
5692
- ],
5693
- "name": "credentials",
5694
- "required": false,
5695
- "hasDynamicHelp": false,
5696
- "multiple": false,
5697
- "type": "option"
5698
- },
5699
- "credentials_file": {
5700
- "description": "Path to kubeconfig credentials file",
5701
- "exclusive": [
5702
- "credentials"
5703
- ],
5704
- "name": "credentials_file",
5705
- "required": false,
5706
- "hasDynamicHelp": false,
5707
- "multiple": false,
5708
- "type": "option"
5709
- },
5710
- "description": {
5711
- "char": "d",
5712
- "description": "Cluster description",
5713
- "name": "description",
5714
- "required": false,
5715
- "hasDynamicHelp": false,
5716
- "multiple": false,
5717
- "type": "option"
5718
- },
5719
- "domain": {
5720
- "description": "Custom domain for the cluster",
5721
- "name": "domain",
5722
- "required": false,
5723
- "hasDynamicHelp": false,
5724
- "multiple": false,
5725
- "type": "option"
5726
- },
5727
- "name": {
5728
- "char": "n",
5729
- "description": "Cluster name",
5730
- "name": "name",
5731
- "required": true,
5732
- "hasDynamicHelp": false,
5733
- "multiple": false,
5734
- "type": "option"
5735
- },
5736
5746
  "output": {
5737
5747
  "char": "o",
5738
5748
  "description": "Output format",
@@ -5746,24 +5756,11 @@
5746
5756
  "json"
5747
5757
  ],
5748
5758
  "type": "option"
5749
- },
5750
- "type": {
5751
- "description": "Cluster type",
5752
- "name": "type",
5753
- "required": false,
5754
- "default": "standard",
5755
- "hasDynamicHelp": false,
5756
- "multiple": false,
5757
- "options": [
5758
- "standard",
5759
- "run"
5760
- ],
5761
- "type": "option"
5762
5759
  }
5763
5760
  },
5764
5761
  "hasDynamicHelp": false,
5765
5762
  "hiddenAliases": [],
5766
- "id": "tenant:cluster:create",
5763
+ "id": "tenant:cluster:list",
5767
5764
  "pluginAlias": "@xano/cli",
5768
5765
  "pluginName": "@xano/cli",
5769
5766
  "pluginType": "core",
@@ -5775,17 +5772,24 @@
5775
5772
  "commands",
5776
5773
  "tenant",
5777
5774
  "cluster",
5778
- "create",
5775
+ "list",
5779
5776
  "index.js"
5780
5777
  ]
5781
5778
  },
5782
- "tenant:cluster:list": {
5779
+ "workflow_test:get": {
5783
5780
  "aliases": [],
5784
- "args": {},
5785
- "description": "List all tenant clusters",
5781
+ "args": {
5782
+ "workflow_test_id": {
5783
+ "description": "ID of the workflow test",
5784
+ "name": "workflow_test_id",
5785
+ "required": true
5786
+ }
5787
+ },
5788
+ "description": "Get a specific workflow test",
5786
5789
  "examples": [
5787
- "$ xano tenant cluster list\nTenant clusters:\n - us-east-1 (standard) [ID: 1]\n - eu-west-1 (run) [ID: 2]\n",
5788
- "$ xano tenant cluster list --output json"
5790
+ "$ xano workflow-test get 1\nWorkflow Test: my-test (ID: 1)\n Description: Validates auth endpoints\n Branch: main\n",
5791
+ "$ xano workflow-test get 1 -o xs",
5792
+ "$ xano workflow-test get 1 -o json"
5789
5793
  ],
5790
5794
  "flags": {
5791
5795
  "profile": {
@@ -5807,6 +5811,13 @@
5807
5811
  "allowNo": false,
5808
5812
  "type": "boolean"
5809
5813
  },
5814
+ "include-draft": {
5815
+ "description": "Include draft version",
5816
+ "name": "include-draft",
5817
+ "required": false,
5818
+ "allowNo": false,
5819
+ "type": "boolean"
5820
+ },
5810
5821
  "output": {
5811
5822
  "char": "o",
5812
5823
  "description": "Output format",
@@ -5817,14 +5828,24 @@
5817
5828
  "multiple": false,
5818
5829
  "options": [
5819
5830
  "summary",
5820
- "json"
5831
+ "json",
5832
+ "xs"
5821
5833
  ],
5822
5834
  "type": "option"
5835
+ },
5836
+ "workspace": {
5837
+ "char": "w",
5838
+ "description": "Workspace ID (uses profile workspace if not provided)",
5839
+ "name": "workspace",
5840
+ "required": false,
5841
+ "hasDynamicHelp": false,
5842
+ "multiple": false,
5843
+ "type": "option"
5823
5844
  }
5824
5845
  },
5825
5846
  "hasDynamicHelp": false,
5826
5847
  "hiddenAliases": [],
5827
- "id": "tenant:cluster:list",
5848
+ "id": "workflow_test:get",
5828
5849
  "pluginAlias": "@xano/cli",
5829
5850
  "pluginName": "@xano/cli",
5830
5851
  "pluginType": "core",
@@ -5834,26 +5855,25 @@
5834
5855
  "relativePath": [
5835
5856
  "dist",
5836
5857
  "commands",
5837
- "tenant",
5838
- "cluster",
5839
- "list",
5858
+ "workflow_test",
5859
+ "get",
5840
5860
  "index.js"
5841
5861
  ]
5842
5862
  },
5843
- "static_host:build:create": {
5863
+ "tenant:env:delete": {
5844
5864
  "aliases": [],
5845
5865
  "args": {
5846
- "static_host": {
5847
- "description": "Static Host name",
5848
- "name": "static_host",
5866
+ "tenant_name": {
5867
+ "description": "Tenant name",
5868
+ "name": "tenant_name",
5849
5869
  "required": true
5850
5870
  }
5851
5871
  },
5852
- "description": "Create a new build for a static host",
5872
+ "description": "Delete an environment variable from a tenant",
5853
5873
  "examples": [
5854
- "$ xano static_host:build:create default -f ./build.zip -n \"v1.0.0\"\nBuild created successfully!\nID: 123\nName: v1.0.0\nStatus: pending\n",
5855
- "$ xano static_host:build:create default -w 40 -f ./dist.zip -n \"production\" -d \"Production build\"\nBuild created successfully!\nID: 124\nName: production\nDescription: Production build\n",
5856
- "$ xano static_host:build:create myhost -f ./app.zip -n \"release-1.2\" -o json\n{\n \"id\": 125,\n \"name\": \"release-1.2\",\n \"status\": \"pending\"\n}\n"
5874
+ "$ xano tenant env delete my-tenant --name DATABASE_URL\nAre you sure you want to delete environment variable 'DATABASE_URL' from tenant my-tenant? (y/N) y\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
5875
+ "$ xano tenant env delete my-tenant --name DATABASE_URL --force\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
5876
+ "$ xano tenant env delete my-tenant --name DATABASE_URL -f -w 5 -o json"
5857
5877
  ],
5858
5878
  "flags": {
5859
5879
  "profile": {
@@ -5875,27 +5895,17 @@
5875
5895
  "allowNo": false,
5876
5896
  "type": "boolean"
5877
5897
  },
5878
- "description": {
5879
- "char": "d",
5880
- "description": "Build description",
5881
- "name": "description",
5882
- "required": false,
5883
- "hasDynamicHelp": false,
5884
- "multiple": false,
5885
- "type": "option"
5886
- },
5887
- "file": {
5898
+ "force": {
5888
5899
  "char": "f",
5889
- "description": "Path to zip file to upload",
5890
- "name": "file",
5891
- "required": true,
5892
- "hasDynamicHelp": false,
5893
- "multiple": false,
5894
- "type": "option"
5900
+ "description": "Skip confirmation prompt",
5901
+ "name": "force",
5902
+ "required": false,
5903
+ "allowNo": false,
5904
+ "type": "boolean"
5895
5905
  },
5896
5906
  "name": {
5897
5907
  "char": "n",
5898
- "description": "Build name",
5908
+ "description": "Environment variable name",
5899
5909
  "name": "name",
5900
5910
  "required": true,
5901
5911
  "hasDynamicHelp": false,
@@ -5918,7 +5928,7 @@
5918
5928
  },
5919
5929
  "workspace": {
5920
5930
  "char": "w",
5921
- "description": "Workspace ID (optional if set in profile)",
5931
+ "description": "Workspace ID (uses profile workspace if not provided)",
5922
5932
  "name": "workspace",
5923
5933
  "required": false,
5924
5934
  "hasDynamicHelp": false,
@@ -5928,7 +5938,7 @@
5928
5938
  },
5929
5939
  "hasDynamicHelp": false,
5930
5940
  "hiddenAliases": [],
5931
- "id": "static_host:build:create",
5941
+ "id": "tenant:env:delete",
5932
5942
  "pluginAlias": "@xano/cli",
5933
5943
  "pluginName": "@xano/cli",
5934
5944
  "pluginType": "core",
@@ -5938,27 +5948,25 @@
5938
5948
  "relativePath": [
5939
5949
  "dist",
5940
5950
  "commands",
5941
- "static_host",
5942
- "build",
5943
- "create",
5951
+ "tenant",
5952
+ "env",
5953
+ "delete",
5944
5954
  "index.js"
5945
5955
  ]
5946
5956
  },
5947
- "static_host:build:list": {
5957
+ "tenant:env:get": {
5948
5958
  "aliases": [],
5949
5959
  "args": {
5950
- "static_host": {
5951
- "description": "Static Host name",
5952
- "name": "static_host",
5960
+ "tenant_name": {
5961
+ "description": "Tenant name",
5962
+ "name": "tenant_name",
5953
5963
  "required": true
5954
5964
  }
5955
5965
  },
5956
- "description": "List all builds for a static host",
5966
+ "description": "Get a single environment variable for a tenant",
5957
5967
  "examples": [
5958
- "$ 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",
5959
- "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
5960
- "$ 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",
5961
- "$ 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"
5968
+ "$ xano tenant env get my-tenant --name DATABASE_URL\npostgres://localhost:5432/mydb\n",
5969
+ "$ xano tenant env get my-tenant --name DATABASE_URL -w 5 -o json"
5962
5970
  ],
5963
5971
  "flags": {
5964
5972
  "profile": {
@@ -5980,6 +5988,15 @@
5980
5988
  "allowNo": false,
5981
5989
  "type": "boolean"
5982
5990
  },
5991
+ "name": {
5992
+ "char": "n",
5993
+ "description": "Environment variable name",
5994
+ "name": "name",
5995
+ "required": true,
5996
+ "hasDynamicHelp": false,
5997
+ "multiple": false,
5998
+ "type": "option"
5999
+ },
5983
6000
  "output": {
5984
6001
  "char": "o",
5985
6002
  "description": "Output format",
@@ -5994,27 +6011,9 @@
5994
6011
  ],
5995
6012
  "type": "option"
5996
6013
  },
5997
- "page": {
5998
- "description": "Page number for pagination",
5999
- "name": "page",
6000
- "required": false,
6001
- "default": 1,
6002
- "hasDynamicHelp": false,
6003
- "multiple": false,
6004
- "type": "option"
6005
- },
6006
- "per_page": {
6007
- "description": "Number of results per page",
6008
- "name": "per_page",
6009
- "required": false,
6010
- "default": 50,
6011
- "hasDynamicHelp": false,
6012
- "multiple": false,
6013
- "type": "option"
6014
- },
6015
6014
  "workspace": {
6016
6015
  "char": "w",
6017
- "description": "Workspace ID (optional if set in profile)",
6016
+ "description": "Workspace ID (uses profile workspace if not provided)",
6018
6017
  "name": "workspace",
6019
6018
  "required": false,
6020
6019
  "hasDynamicHelp": false,
@@ -6024,7 +6023,7 @@
6024
6023
  },
6025
6024
  "hasDynamicHelp": false,
6026
6025
  "hiddenAliases": [],
6027
- "id": "static_host:build:list",
6026
+ "id": "tenant:env:get",
6028
6027
  "pluginAlias": "@xano/cli",
6029
6028
  "pluginName": "@xano/cli",
6030
6029
  "pluginType": "core",
@@ -6034,13 +6033,13 @@
6034
6033
  "relativePath": [
6035
6034
  "dist",
6036
6035
  "commands",
6037
- "static_host",
6038
- "build",
6039
- "list",
6036
+ "tenant",
6037
+ "env",
6038
+ "get",
6040
6039
  "index.js"
6041
6040
  ]
6042
6041
  },
6043
- "tenant:env:delete": {
6042
+ "tenant:env:set": {
6044
6043
  "aliases": [],
6045
6044
  "args": {
6046
6045
  "tenant_name": {
@@ -6049,11 +6048,10 @@
6049
6048
  "required": true
6050
6049
  }
6051
6050
  },
6052
- "description": "Delete an environment variable from a tenant",
6051
+ "description": "Set (create or update) an environment variable for a tenant",
6053
6052
  "examples": [
6054
- "$ xano tenant env delete my-tenant --name DATABASE_URL\nAre you sure you want to delete environment variable 'DATABASE_URL' from tenant my-tenant? (y/N) y\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
6055
- "$ xano tenant env delete my-tenant --name DATABASE_URL --force\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
6056
- "$ xano tenant env delete my-tenant --name DATABASE_URL -f -w 5 -o json"
6053
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
6054
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
6057
6055
  ],
6058
6056
  "flags": {
6059
6057
  "profile": {
@@ -6075,14 +6073,6 @@
6075
6073
  "allowNo": false,
6076
6074
  "type": "boolean"
6077
6075
  },
6078
- "force": {
6079
- "char": "f",
6080
- "description": "Skip confirmation prompt",
6081
- "name": "force",
6082
- "required": false,
6083
- "allowNo": false,
6084
- "type": "boolean"
6085
- },
6086
6076
  "name": {
6087
6077
  "char": "n",
6088
6078
  "description": "Environment variable name",
@@ -6106,6 +6096,14 @@
6106
6096
  ],
6107
6097
  "type": "option"
6108
6098
  },
6099
+ "value": {
6100
+ "description": "Environment variable value",
6101
+ "name": "value",
6102
+ "required": true,
6103
+ "hasDynamicHelp": false,
6104
+ "multiple": false,
6105
+ "type": "option"
6106
+ },
6109
6107
  "workspace": {
6110
6108
  "char": "w",
6111
6109
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -6118,7 +6116,7 @@
6118
6116
  },
6119
6117
  "hasDynamicHelp": false,
6120
6118
  "hiddenAliases": [],
6121
- "id": "tenant:env:delete",
6119
+ "id": "tenant:env:set",
6122
6120
  "pluginAlias": "@xano/cli",
6123
6121
  "pluginName": "@xano/cli",
6124
6122
  "pluginType": "core",
@@ -6130,11 +6128,11 @@
6130
6128
  "commands",
6131
6129
  "tenant",
6132
6130
  "env",
6133
- "delete",
6131
+ "set",
6134
6132
  "index.js"
6135
6133
  ]
6136
6134
  },
6137
- "tenant:env:get": {
6135
+ "tenant:env:set_all": {
6138
6136
  "aliases": [],
6139
6137
  "args": {
6140
6138
  "tenant_name": {
@@ -6143,10 +6141,11 @@
6143
6141
  "required": true
6144
6142
  }
6145
6143
  },
6146
- "description": "Get a single environment variable for a tenant",
6144
+ "description": "Set all environment variables for a tenant from a YAML file (replaces all existing)",
6147
6145
  "examples": [
6148
- "$ xano tenant env get my-tenant --name DATABASE_URL\npostgres://localhost:5432/mydb\n",
6149
- "$ xano tenant env get my-tenant --name DATABASE_URL -w 5 -o json"
6146
+ "$ xano tenant env set_all my-tenant\nReads from env_my-tenant.yaml\n",
6147
+ "$ xano tenant env set_all my-tenant --file ./my-env.yaml",
6148
+ "$ xano tenant env set_all my-tenant -o json"
6150
6149
  ],
6151
6150
  "flags": {
6152
6151
  "profile": {
@@ -6168,11 +6167,18 @@
6168
6167
  "allowNo": false,
6169
6168
  "type": "boolean"
6170
6169
  },
6171
- "name": {
6172
- "char": "n",
6173
- "description": "Environment variable name",
6174
- "name": "name",
6175
- "required": true,
6170
+ "clean": {
6171
+ "description": "Remove the source file after successful upload",
6172
+ "name": "clean",
6173
+ "required": false,
6174
+ "allowNo": false,
6175
+ "type": "boolean"
6176
+ },
6177
+ "file": {
6178
+ "char": "f",
6179
+ "description": "Path to env file (default: env_<tenant_name>.yaml)",
6180
+ "name": "file",
6181
+ "required": false,
6176
6182
  "hasDynamicHelp": false,
6177
6183
  "multiple": false,
6178
6184
  "type": "option"
@@ -6203,7 +6209,7 @@
6203
6209
  },
6204
6210
  "hasDynamicHelp": false,
6205
6211
  "hiddenAliases": [],
6206
- "id": "tenant:env:get",
6212
+ "id": "tenant:env:set_all",
6207
6213
  "pluginAlias": "@xano/cli",
6208
6214
  "pluginName": "@xano/cli",
6209
6215
  "pluginType": "core",
@@ -6215,11 +6221,11 @@
6215
6221
  "commands",
6216
6222
  "tenant",
6217
6223
  "env",
6218
- "get",
6224
+ "set_all",
6219
6225
  "index.js"
6220
6226
  ]
6221
6227
  },
6222
- "tenant:env:get_all": {
6228
+ "tenant:license:get": {
6223
6229
  "aliases": [],
6224
6230
  "args": {
6225
6231
  "tenant_name": {
@@ -6228,12 +6234,12 @@
6228
6234
  "required": true
6229
6235
  }
6230
6236
  },
6231
- "description": "Get all environment variables for a tenant and save to a YAML file",
6237
+ "description": "Get the license for a tenant",
6232
6238
  "examples": [
6233
- "$ xano tenant env get_all my-tenant\nEnvironment variables saved to env_my-tenant.yaml\n",
6234
- "$ xano tenant env get_all my-tenant --file ./my-env.yaml",
6235
- "$ xano tenant env get_all my-tenant --view",
6236
- "$ xano tenant env get_all my-tenant -o json"
6239
+ "$ xano tenant license get my-tenant\nLicense saved to license_my-tenant.yaml\n",
6240
+ "$ xano tenant license get my-tenant --file ./my-license.yaml\nLicense saved to my-license.yaml\n",
6241
+ "$ xano tenant license get my-tenant --view",
6242
+ "$ xano tenant license get my-tenant -o json"
6237
6243
  ],
6238
6244
  "flags": {
6239
6245
  "profile": {
@@ -6257,7 +6263,7 @@
6257
6263
  },
6258
6264
  "file": {
6259
6265
  "char": "f",
6260
- "description": "Output file path (default: env_<tenant_name>.yaml)",
6266
+ "description": "Output file path (default: license_<tenant_name>.yaml)",
6261
6267
  "name": "file",
6262
6268
  "required": false,
6263
6269
  "hasDynamicHelp": false,
@@ -6279,7 +6285,7 @@
6279
6285
  "type": "option"
6280
6286
  },
6281
6287
  "view": {
6282
- "description": "Print environment variables to stdout instead of saving to file",
6288
+ "description": "Print license to stdout instead of saving to file",
6283
6289
  "name": "view",
6284
6290
  "required": false,
6285
6291
  "allowNo": false,
@@ -6297,7 +6303,7 @@
6297
6303
  },
6298
6304
  "hasDynamicHelp": false,
6299
6305
  "hiddenAliases": [],
6300
- "id": "tenant:env:get_all",
6306
+ "id": "tenant:license:get",
6301
6307
  "pluginAlias": "@xano/cli",
6302
6308
  "pluginName": "@xano/cli",
6303
6309
  "pluginType": "core",
@@ -6308,12 +6314,12 @@
6308
6314
  "dist",
6309
6315
  "commands",
6310
6316
  "tenant",
6311
- "env",
6312
- "get_all",
6317
+ "license",
6318
+ "get",
6313
6319
  "index.js"
6314
6320
  ]
6315
6321
  },
6316
- "tenant:env:list": {
6322
+ "tenant:license:set": {
6317
6323
  "aliases": [],
6318
6324
  "args": {
6319
6325
  "tenant_name": {
@@ -6322,10 +6328,12 @@
6322
6328
  "required": true
6323
6329
  }
6324
6330
  },
6325
- "description": "List environment variable keys for a tenant",
6331
+ "description": "Set/update the license for a tenant",
6326
6332
  "examples": [
6327
- "$ xano tenant env list my-tenant\nEnvironment variables for tenant my-tenant:\n - DATABASE_URL\n - API_KEY\n - SECRET_TOKEN\n",
6328
- "$ xano tenant env list my-tenant -w 5 -o json"
6333
+ "$ xano tenant license set my-tenant\nReads from license_my-tenant.yaml\n",
6334
+ "$ xano tenant license set my-tenant --file ./license.yaml",
6335
+ "$ xano tenant license set my-tenant --value 'key: value'",
6336
+ "$ xano tenant license set my-tenant -o json"
6329
6337
  ],
6330
6338
  "flags": {
6331
6339
  "profile": {
@@ -6347,6 +6355,28 @@
6347
6355
  "allowNo": false,
6348
6356
  "type": "boolean"
6349
6357
  },
6358
+ "clean": {
6359
+ "description": "Remove the source file after successful upload",
6360
+ "exclusive": [
6361
+ "value"
6362
+ ],
6363
+ "name": "clean",
6364
+ "required": false,
6365
+ "allowNo": false,
6366
+ "type": "boolean"
6367
+ },
6368
+ "file": {
6369
+ "char": "f",
6370
+ "description": "Path to license file (default: license_<tenant_name>.yaml)",
6371
+ "exclusive": [
6372
+ "value"
6373
+ ],
6374
+ "name": "file",
6375
+ "required": false,
6376
+ "hasDynamicHelp": false,
6377
+ "multiple": false,
6378
+ "type": "option"
6379
+ },
6350
6380
  "output": {
6351
6381
  "char": "o",
6352
6382
  "description": "Output format",
@@ -6361,6 +6391,18 @@
6361
6391
  ],
6362
6392
  "type": "option"
6363
6393
  },
6394
+ "value": {
6395
+ "description": "Inline license value",
6396
+ "exclusive": [
6397
+ "file",
6398
+ "clean"
6399
+ ],
6400
+ "name": "value",
6401
+ "required": false,
6402
+ "hasDynamicHelp": false,
6403
+ "multiple": false,
6404
+ "type": "option"
6405
+ },
6364
6406
  "workspace": {
6365
6407
  "char": "w",
6366
6408
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -6373,7 +6415,7 @@
6373
6415
  },
6374
6416
  "hasDynamicHelp": false,
6375
6417
  "hiddenAliases": [],
6376
- "id": "tenant:env:list",
6418
+ "id": "tenant:license:set",
6377
6419
  "pluginAlias": "@xano/cli",
6378
6420
  "pluginName": "@xano/cli",
6379
6421
  "pluginType": "core",
@@ -6384,24 +6426,31 @@
6384
6426
  "dist",
6385
6427
  "commands",
6386
6428
  "tenant",
6387
- "env",
6388
- "list",
6429
+ "license",
6430
+ "set",
6389
6431
  "index.js"
6390
6432
  ]
6391
6433
  },
6392
- "tenant:env:set": {
6434
+ "static_host:build:get": {
6393
6435
  "aliases": [],
6394
6436
  "args": {
6395
- "tenant_name": {
6396
- "description": "Tenant name",
6397
- "name": "tenant_name",
6437
+ "build_id": {
6438
+ "description": "Build ID",
6439
+ "name": "build_id",
6440
+ "required": true
6441
+ },
6442
+ "static_host": {
6443
+ "description": "Static Host name",
6444
+ "name": "static_host",
6398
6445
  "required": true
6399
6446
  }
6400
6447
  },
6401
- "description": "Set (create or update) an environment variable for a tenant",
6448
+ "description": "Get details of a specific build for a static host",
6402
6449
  "examples": [
6403
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
6404
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
6450
+ "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
6451
+ "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
6452
+ "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
6453
+ "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
6405
6454
  ],
6406
6455
  "flags": {
6407
6456
  "profile": {
@@ -6423,15 +6472,6 @@
6423
6472
  "allowNo": false,
6424
6473
  "type": "boolean"
6425
6474
  },
6426
- "name": {
6427
- "char": "n",
6428
- "description": "Environment variable name",
6429
- "name": "name",
6430
- "required": true,
6431
- "hasDynamicHelp": false,
6432
- "multiple": false,
6433
- "type": "option"
6434
- },
6435
6475
  "output": {
6436
6476
  "char": "o",
6437
6477
  "description": "Output format",
@@ -6446,17 +6486,9 @@
6446
6486
  ],
6447
6487
  "type": "option"
6448
6488
  },
6449
- "value": {
6450
- "description": "Environment variable value",
6451
- "name": "value",
6452
- "required": true,
6453
- "hasDynamicHelp": false,
6454
- "multiple": false,
6455
- "type": "option"
6456
- },
6457
6489
  "workspace": {
6458
6490
  "char": "w",
6459
- "description": "Workspace ID (uses profile workspace if not provided)",
6491
+ "description": "Workspace ID (optional if set in profile)",
6460
6492
  "name": "workspace",
6461
6493
  "required": false,
6462
6494
  "hasDynamicHelp": false,
@@ -6466,7 +6498,7 @@
6466
6498
  },
6467
6499
  "hasDynamicHelp": false,
6468
6500
  "hiddenAliases": [],
6469
- "id": "tenant:env:set",
6501
+ "id": "static_host:build:get",
6470
6502
  "pluginAlias": "@xano/cli",
6471
6503
  "pluginName": "@xano/cli",
6472
6504
  "pluginType": "core",
@@ -6476,32 +6508,26 @@
6476
6508
  "relativePath": [
6477
6509
  "dist",
6478
6510
  "commands",
6479
- "tenant",
6480
- "env",
6481
- "set",
6511
+ "static_host",
6512
+ "build",
6513
+ "get",
6482
6514
  "index.js"
6483
6515
  ]
6484
6516
  },
6485
- "static_host:build:get": {
6517
+ "static_host:build:create": {
6486
6518
  "aliases": [],
6487
6519
  "args": {
6488
- "build_id": {
6489
- "description": "Build ID",
6490
- "name": "build_id",
6491
- "required": true
6492
- },
6493
6520
  "static_host": {
6494
6521
  "description": "Static Host name",
6495
6522
  "name": "static_host",
6496
6523
  "required": true
6497
6524
  }
6498
6525
  },
6499
- "description": "Get details of a specific build for a static host",
6526
+ "description": "Create a new build for a static host",
6500
6527
  "examples": [
6501
- "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
6502
- "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
6503
- "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
6504
- "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
6528
+ "$ xano static_host:build:create default -f ./build.zip -n \"v1.0.0\"\nBuild created successfully!\nID: 123\nName: v1.0.0\nStatus: pending\n",
6529
+ "$ xano static_host:build:create default -w 40 -f ./dist.zip -n \"production\" -d \"Production build\"\nBuild created successfully!\nID: 124\nName: production\nDescription: Production build\n",
6530
+ "$ xano static_host:build:create myhost -f ./app.zip -n \"release-1.2\" -o json\n{\n \"id\": 125,\n \"name\": \"release-1.2\",\n \"status\": \"pending\"\n}\n"
6505
6531
  ],
6506
6532
  "flags": {
6507
6533
  "profile": {
@@ -6523,6 +6549,33 @@
6523
6549
  "allowNo": false,
6524
6550
  "type": "boolean"
6525
6551
  },
6552
+ "description": {
6553
+ "char": "d",
6554
+ "description": "Build description",
6555
+ "name": "description",
6556
+ "required": false,
6557
+ "hasDynamicHelp": false,
6558
+ "multiple": false,
6559
+ "type": "option"
6560
+ },
6561
+ "file": {
6562
+ "char": "f",
6563
+ "description": "Path to zip file to upload",
6564
+ "name": "file",
6565
+ "required": true,
6566
+ "hasDynamicHelp": false,
6567
+ "multiple": false,
6568
+ "type": "option"
6569
+ },
6570
+ "name": {
6571
+ "char": "n",
6572
+ "description": "Build name",
6573
+ "name": "name",
6574
+ "required": true,
6575
+ "hasDynamicHelp": false,
6576
+ "multiple": false,
6577
+ "type": "option"
6578
+ },
6526
6579
  "output": {
6527
6580
  "char": "o",
6528
6581
  "description": "Output format",
@@ -6549,7 +6602,7 @@
6549
6602
  },
6550
6603
  "hasDynamicHelp": false,
6551
6604
  "hiddenAliases": [],
6552
- "id": "static_host:build:get",
6605
+ "id": "static_host:build:create",
6553
6606
  "pluginAlias": "@xano/cli",
6554
6607
  "pluginName": "@xano/cli",
6555
6608
  "pluginType": "core",
@@ -6561,24 +6614,25 @@
6561
6614
  "commands",
6562
6615
  "static_host",
6563
6616
  "build",
6564
- "get",
6617
+ "create",
6565
6618
  "index.js"
6566
6619
  ]
6567
6620
  },
6568
- "tenant:env:set_all": {
6621
+ "static_host:build:list": {
6569
6622
  "aliases": [],
6570
6623
  "args": {
6571
- "tenant_name": {
6572
- "description": "Tenant name",
6573
- "name": "tenant_name",
6624
+ "static_host": {
6625
+ "description": "Static Host name",
6626
+ "name": "static_host",
6574
6627
  "required": true
6575
6628
  }
6576
6629
  },
6577
- "description": "Set all environment variables for a tenant from a YAML file (replaces all existing)",
6630
+ "description": "List all builds for a static host",
6578
6631
  "examples": [
6579
- "$ xano tenant env set_all my-tenant\nReads from env_my-tenant.yaml\n",
6580
- "$ xano tenant env set_all my-tenant --file ./my-env.yaml",
6581
- "$ xano tenant env set_all my-tenant -o json"
6632
+ "$ 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",
6633
+ "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
6634
+ "$ 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",
6635
+ "$ 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"
6582
6636
  ],
6583
6637
  "flags": {
6584
6638
  "profile": {
@@ -6600,22 +6654,6 @@
6600
6654
  "allowNo": false,
6601
6655
  "type": "boolean"
6602
6656
  },
6603
- "clean": {
6604
- "description": "Remove the source file after successful upload",
6605
- "name": "clean",
6606
- "required": false,
6607
- "allowNo": false,
6608
- "type": "boolean"
6609
- },
6610
- "file": {
6611
- "char": "f",
6612
- "description": "Path to env file (default: env_<tenant_name>.yaml)",
6613
- "name": "file",
6614
- "required": false,
6615
- "hasDynamicHelp": false,
6616
- "multiple": false,
6617
- "type": "option"
6618
- },
6619
6657
  "output": {
6620
6658
  "char": "o",
6621
6659
  "description": "Output format",
@@ -6630,9 +6668,27 @@
6630
6668
  ],
6631
6669
  "type": "option"
6632
6670
  },
6671
+ "page": {
6672
+ "description": "Page number for pagination",
6673
+ "name": "page",
6674
+ "required": false,
6675
+ "default": 1,
6676
+ "hasDynamicHelp": false,
6677
+ "multiple": false,
6678
+ "type": "option"
6679
+ },
6680
+ "per_page": {
6681
+ "description": "Number of results per page",
6682
+ "name": "per_page",
6683
+ "required": false,
6684
+ "default": 50,
6685
+ "hasDynamicHelp": false,
6686
+ "multiple": false,
6687
+ "type": "option"
6688
+ },
6633
6689
  "workspace": {
6634
6690
  "char": "w",
6635
- "description": "Workspace ID (uses profile workspace if not provided)",
6691
+ "description": "Workspace ID (optional if set in profile)",
6636
6692
  "name": "workspace",
6637
6693
  "required": false,
6638
6694
  "hasDynamicHelp": false,
@@ -6642,7 +6698,7 @@
6642
6698
  },
6643
6699
  "hasDynamicHelp": false,
6644
6700
  "hiddenAliases": [],
6645
- "id": "tenant:env:set_all",
6701
+ "id": "static_host:build:list",
6646
6702
  "pluginAlias": "@xano/cli",
6647
6703
  "pluginName": "@xano/cli",
6648
6704
  "pluginType": "core",
@@ -6652,27 +6708,30 @@
6652
6708
  "relativePath": [
6653
6709
  "dist",
6654
6710
  "commands",
6655
- "tenant",
6656
- "env",
6657
- "set_all",
6711
+ "static_host",
6712
+ "build",
6713
+ "list",
6658
6714
  "index.js"
6659
6715
  ]
6660
6716
  },
6661
- "tenant:license:get": {
6717
+ "workspace:git:pull": {
6662
6718
  "aliases": [],
6663
6719
  "args": {
6664
- "tenant_name": {
6665
- "description": "Tenant name",
6666
- "name": "tenant_name",
6720
+ "directory": {
6721
+ "description": "Output directory for imported files",
6722
+ "name": "directory",
6667
6723
  "required": true
6668
6724
  }
6669
6725
  },
6670
- "description": "Get the license for a tenant",
6726
+ "description": "Pull XanoScript files from a git repository into a local directory",
6671
6727
  "examples": [
6672
- "$ xano tenant license get my-tenant\nLicense saved to license_my-tenant.yaml\n",
6673
- "$ xano tenant license get my-tenant --file ./my-license.yaml\nLicense saved to my-license.yaml\n",
6674
- "$ xano tenant license get my-tenant --view",
6675
- "$ xano tenant license get my-tenant -o json"
6728
+ "$ xano workspace git pull ./output -r https://github.com/owner/repo",
6729
+ "$ xano workspace git pull ./output -r https://github.com/owner/repo/tree/main/path/to/dir",
6730
+ "$ xano workspace git pull ./output -r https://github.com/owner/repo/blob/main/path/to/file.xs",
6731
+ "$ xano workspace git pull ./output -r git@github.com:owner/repo.git",
6732
+ "$ xano workspace git pull ./output -r https://github.com/owner/private-repo -t ghp_xxx",
6733
+ "$ xano workspace git pull ./output -r https://gitlab.com/owner/repo/-/tree/master/path",
6734
+ "$ xano workspace git pull ./output -r https://gitlab.com/owner/repo -b main"
6676
6735
  ],
6677
6736
  "flags": {
6678
6737
  "profile": {
@@ -6694,40 +6753,37 @@
6694
6753
  "allowNo": false,
6695
6754
  "type": "boolean"
6696
6755
  },
6697
- "file": {
6698
- "char": "f",
6699
- "description": "Output file path (default: license_<tenant_name>.yaml)",
6700
- "name": "file",
6756
+ "branch": {
6757
+ "char": "b",
6758
+ "description": "Branch, tag, or ref to fetch (defaults to repository default branch)",
6759
+ "name": "branch",
6701
6760
  "required": false,
6702
6761
  "hasDynamicHelp": false,
6703
6762
  "multiple": false,
6704
6763
  "type": "option"
6705
6764
  },
6706
- "output": {
6707
- "char": "o",
6708
- "description": "Output format",
6709
- "name": "output",
6765
+ "path": {
6766
+ "description": "Subdirectory within the repo to import from",
6767
+ "name": "path",
6710
6768
  "required": false,
6711
- "default": "summary",
6712
6769
  "hasDynamicHelp": false,
6713
6770
  "multiple": false,
6714
- "options": [
6715
- "summary",
6716
- "json"
6717
- ],
6718
6771
  "type": "option"
6719
6772
  },
6720
- "view": {
6721
- "description": "Print license to stdout instead of saving to file",
6722
- "name": "view",
6723
- "required": false,
6724
- "allowNo": false,
6725
- "type": "boolean"
6773
+ "repo": {
6774
+ "char": "r",
6775
+ "description": "Git repository URL (GitHub HTTPS, SSH, or any git URL)",
6776
+ "name": "repo",
6777
+ "required": true,
6778
+ "hasDynamicHelp": false,
6779
+ "multiple": false,
6780
+ "type": "option"
6726
6781
  },
6727
- "workspace": {
6728
- "char": "w",
6729
- "description": "Workspace ID (uses profile workspace if not provided)",
6730
- "name": "workspace",
6782
+ "token": {
6783
+ "char": "t",
6784
+ "description": "Personal access token for private repos (falls back to GITHUB_TOKEN env var)",
6785
+ "env": "GITHUB_TOKEN",
6786
+ "name": "token",
6731
6787
  "required": false,
6732
6788
  "hasDynamicHelp": false,
6733
6789
  "multiple": false,
@@ -6736,7 +6792,7 @@
6736
6792
  },
6737
6793
  "hasDynamicHelp": false,
6738
6794
  "hiddenAliases": [],
6739
- "id": "tenant:license:get",
6795
+ "id": "workspace:git:pull",
6740
6796
  "pluginAlias": "@xano/cli",
6741
6797
  "pluginName": "@xano/cli",
6742
6798
  "pluginType": "core",
@@ -6746,13 +6802,13 @@
6746
6802
  "relativePath": [
6747
6803
  "dist",
6748
6804
  "commands",
6749
- "tenant",
6750
- "license",
6751
- "get",
6805
+ "workspace",
6806
+ "git",
6807
+ "pull",
6752
6808
  "index.js"
6753
6809
  ]
6754
6810
  },
6755
- "tenant:license:set": {
6811
+ "tenant:env:get_all": {
6756
6812
  "aliases": [],
6757
6813
  "args": {
6758
6814
  "tenant_name": {
@@ -6761,12 +6817,12 @@
6761
6817
  "required": true
6762
6818
  }
6763
6819
  },
6764
- "description": "Set/update the license for a tenant",
6820
+ "description": "Get all environment variables for a tenant and save to a YAML file",
6765
6821
  "examples": [
6766
- "$ xano tenant license set my-tenant\nReads from license_my-tenant.yaml\n",
6767
- "$ xano tenant license set my-tenant --file ./license.yaml",
6768
- "$ xano tenant license set my-tenant --value 'key: value'",
6769
- "$ xano tenant license set my-tenant -o json"
6822
+ "$ xano tenant env get_all my-tenant\nEnvironment variables saved to env_my-tenant.yaml\n",
6823
+ "$ xano tenant env get_all my-tenant --file ./my-env.yaml",
6824
+ "$ xano tenant env get_all my-tenant --view",
6825
+ "$ xano tenant env get_all my-tenant -o json"
6770
6826
  ],
6771
6827
  "flags": {
6772
6828
  "profile": {
@@ -6788,22 +6844,9 @@
6788
6844
  "allowNo": false,
6789
6845
  "type": "boolean"
6790
6846
  },
6791
- "clean": {
6792
- "description": "Remove the source file after successful upload",
6793
- "exclusive": [
6794
- "value"
6795
- ],
6796
- "name": "clean",
6797
- "required": false,
6798
- "allowNo": false,
6799
- "type": "boolean"
6800
- },
6801
6847
  "file": {
6802
6848
  "char": "f",
6803
- "description": "Path to license file (default: license_<tenant_name>.yaml)",
6804
- "exclusive": [
6805
- "value"
6806
- ],
6849
+ "description": "Output file path (default: env_<tenant_name>.yaml)",
6807
6850
  "name": "file",
6808
6851
  "required": false,
6809
6852
  "hasDynamicHelp": false,
@@ -6824,17 +6867,12 @@
6824
6867
  ],
6825
6868
  "type": "option"
6826
6869
  },
6827
- "value": {
6828
- "description": "Inline license value",
6829
- "exclusive": [
6830
- "file",
6831
- "clean"
6832
- ],
6833
- "name": "value",
6870
+ "view": {
6871
+ "description": "Print environment variables to stdout instead of saving to file",
6872
+ "name": "view",
6834
6873
  "required": false,
6835
- "hasDynamicHelp": false,
6836
- "multiple": false,
6837
- "type": "option"
6874
+ "allowNo": false,
6875
+ "type": "boolean"
6838
6876
  },
6839
6877
  "workspace": {
6840
6878
  "char": "w",
@@ -6848,7 +6886,7 @@
6848
6886
  },
6849
6887
  "hasDynamicHelp": false,
6850
6888
  "hiddenAliases": [],
6851
- "id": "tenant:license:set",
6889
+ "id": "tenant:env:get_all",
6852
6890
  "pluginAlias": "@xano/cli",
6853
6891
  "pluginName": "@xano/cli",
6854
6892
  "pluginType": "core",
@@ -6859,29 +6897,24 @@
6859
6897
  "dist",
6860
6898
  "commands",
6861
6899
  "tenant",
6862
- "license",
6863
- "set",
6900
+ "env",
6901
+ "get_all",
6864
6902
  "index.js"
6865
6903
  ]
6866
6904
  },
6867
- "workspace:git:pull": {
6905
+ "tenant:env:list": {
6868
6906
  "aliases": [],
6869
6907
  "args": {
6870
- "directory": {
6871
- "description": "Output directory for imported files",
6872
- "name": "directory",
6908
+ "tenant_name": {
6909
+ "description": "Tenant name",
6910
+ "name": "tenant_name",
6873
6911
  "required": true
6874
6912
  }
6875
6913
  },
6876
- "description": "Pull XanoScript files from a git repository into a local directory",
6914
+ "description": "List environment variable keys for a tenant",
6877
6915
  "examples": [
6878
- "$ xano workspace git pull ./output -r https://github.com/owner/repo",
6879
- "$ xano workspace git pull ./output -r https://github.com/owner/repo/tree/main/path/to/dir",
6880
- "$ xano workspace git pull ./output -r https://github.com/owner/repo/blob/main/path/to/file.xs",
6881
- "$ xano workspace git pull ./output -r git@github.com:owner/repo.git",
6882
- "$ xano workspace git pull ./output -r https://github.com/owner/private-repo -t ghp_xxx",
6883
- "$ xano workspace git pull ./output -r https://gitlab.com/owner/repo/-/tree/master/path",
6884
- "$ xano workspace git pull ./output -r https://gitlab.com/owner/repo -b main"
6916
+ "$ xano tenant env list my-tenant\nEnvironment variables for tenant my-tenant:\n - DATABASE_URL\n - API_KEY\n - SECRET_TOKEN\n",
6917
+ "$ xano tenant env list my-tenant -w 5 -o json"
6885
6918
  ],
6886
6919
  "flags": {
6887
6920
  "profile": {
@@ -6903,37 +6936,24 @@
6903
6936
  "allowNo": false,
6904
6937
  "type": "boolean"
6905
6938
  },
6906
- "branch": {
6907
- "char": "b",
6908
- "description": "Branch, tag, or ref to fetch (defaults to repository default branch)",
6909
- "name": "branch",
6910
- "required": false,
6911
- "hasDynamicHelp": false,
6912
- "multiple": false,
6913
- "type": "option"
6914
- },
6915
- "path": {
6916
- "description": "Subdirectory within the repo to import from",
6917
- "name": "path",
6939
+ "output": {
6940
+ "char": "o",
6941
+ "description": "Output format",
6942
+ "name": "output",
6918
6943
  "required": false,
6944
+ "default": "summary",
6919
6945
  "hasDynamicHelp": false,
6920
6946
  "multiple": false,
6947
+ "options": [
6948
+ "summary",
6949
+ "json"
6950
+ ],
6921
6951
  "type": "option"
6922
6952
  },
6923
- "repo": {
6924
- "char": "r",
6925
- "description": "Git repository URL (GitHub HTTPS, SSH, or any git URL)",
6926
- "name": "repo",
6927
- "required": true,
6928
- "hasDynamicHelp": false,
6929
- "multiple": false,
6930
- "type": "option"
6931
- },
6932
- "token": {
6933
- "char": "t",
6934
- "description": "Personal access token for private repos (falls back to GITHUB_TOKEN env var)",
6935
- "env": "GITHUB_TOKEN",
6936
- "name": "token",
6953
+ "workspace": {
6954
+ "char": "w",
6955
+ "description": "Workspace ID (uses profile workspace if not provided)",
6956
+ "name": "workspace",
6937
6957
  "required": false,
6938
6958
  "hasDynamicHelp": false,
6939
6959
  "multiple": false,
@@ -6942,7 +6962,7 @@
6942
6962
  },
6943
6963
  "hasDynamicHelp": false,
6944
6964
  "hiddenAliases": [],
6945
- "id": "workspace:git:pull",
6965
+ "id": "tenant:env:list",
6946
6966
  "pluginAlias": "@xano/cli",
6947
6967
  "pluginName": "@xano/cli",
6948
6968
  "pluginType": "core",
@@ -6952,9 +6972,9 @@
6952
6972
  "relativePath": [
6953
6973
  "dist",
6954
6974
  "commands",
6955
- "workspace",
6956
- "git",
6957
- "pull",
6975
+ "tenant",
6976
+ "env",
6977
+ "list",
6958
6978
  "index.js"
6959
6979
  ]
6960
6980
  },
@@ -7149,5 +7169,5 @@
7149
7169
  ]
7150
7170
  }
7151
7171
  },
7152
- "version": "0.0.82-beta.0"
7172
+ "version": "0.0.82-beta.3"
7153
7173
  }