@xano/cli 0.0.26 → 0.0.28

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.
Files changed (110) hide show
  1. package/dist/base-command.d.ts +3 -1
  2. package/dist/base-command.js +12 -5
  3. package/dist/commands/auth/index.d.ts +21 -0
  4. package/dist/commands/auth/index.js +533 -0
  5. package/dist/commands/branch/create/index.d.ts +17 -0
  6. package/dist/commands/branch/create/index.js +164 -0
  7. package/dist/commands/branch/delete/index.d.ts +18 -0
  8. package/dist/commands/branch/delete/index.js +156 -0
  9. package/dist/commands/branch/edit/index.d.ts +19 -0
  10. package/dist/commands/branch/edit/index.js +166 -0
  11. package/dist/commands/branch/get/index.d.ts +16 -0
  12. package/dist/commands/branch/get/index.js +135 -0
  13. package/dist/commands/branch/list/index.d.ts +18 -0
  14. package/dist/commands/branch/list/index.js +138 -0
  15. package/dist/commands/branch/set-live/index.d.ts +18 -0
  16. package/dist/commands/branch/set-live/index.js +155 -0
  17. package/dist/commands/function/create/index.d.ts +7 -6
  18. package/dist/commands/function/create/index.js +55 -55
  19. package/dist/commands/function/edit/index.d.ts +11 -10
  20. package/dist/commands/function/edit/index.js +155 -162
  21. package/dist/commands/function/get/index.d.ts +6 -5
  22. package/dist/commands/function/get/index.js +55 -60
  23. package/dist/commands/function/list/index.d.ts +6 -5
  24. package/dist/commands/function/list/index.js +52 -52
  25. package/dist/commands/profile/create/index.d.ts +6 -6
  26. package/dist/commands/profile/create/index.js +37 -37
  27. package/dist/commands/profile/delete/index.d.ts +2 -2
  28. package/dist/commands/profile/delete/index.js +9 -9
  29. package/dist/commands/profile/edit/index.d.ts +8 -7
  30. package/dist/commands/profile/edit/index.js +48 -48
  31. package/dist/commands/profile/get-default/index.js +1 -1
  32. package/dist/commands/profile/list/index.d.ts +2 -2
  33. package/dist/commands/profile/list/index.js +9 -9
  34. package/dist/commands/profile/me/index.d.ts +4 -3
  35. package/dist/commands/profile/me/index.js +21 -21
  36. package/dist/commands/profile/project/index.js +1 -1
  37. package/dist/commands/profile/set-default/index.js +1 -1
  38. package/dist/commands/profile/token/index.js +1 -1
  39. package/dist/commands/profile/wizard/index.d.ts +5 -4
  40. package/dist/commands/profile/wizard/index.js +142 -108
  41. package/dist/commands/run/env/delete/index.d.ts +3 -2
  42. package/dist/commands/run/env/delete/index.js +10 -10
  43. package/dist/commands/run/env/get/index.d.ts +3 -2
  44. package/dist/commands/run/env/get/index.js +11 -11
  45. package/dist/commands/run/env/list/index.d.ts +3 -2
  46. package/dist/commands/run/env/list/index.js +17 -19
  47. package/dist/commands/run/env/set/index.d.ts +3 -2
  48. package/dist/commands/run/env/set/index.js +5 -5
  49. package/dist/commands/run/exec/index.d.ts +19 -8
  50. package/dist/commands/run/exec/index.js +186 -108
  51. package/dist/commands/run/info/index.d.ts +5 -4
  52. package/dist/commands/run/info/index.js +27 -27
  53. package/dist/commands/run/projects/create/index.d.ts +4 -3
  54. package/dist/commands/run/projects/create/index.js +23 -23
  55. package/dist/commands/run/projects/delete/index.d.ts +3 -2
  56. package/dist/commands/run/projects/delete/index.js +10 -10
  57. package/dist/commands/run/projects/list/index.d.ts +3 -2
  58. package/dist/commands/run/projects/list/index.js +12 -12
  59. package/dist/commands/run/projects/update/index.d.ts +4 -3
  60. package/dist/commands/run/projects/update/index.js +21 -21
  61. package/dist/commands/run/secrets/delete/index.d.ts +3 -2
  62. package/dist/commands/run/secrets/delete/index.js +10 -10
  63. package/dist/commands/run/secrets/get/index.d.ts +3 -2
  64. package/dist/commands/run/secrets/get/index.js +11 -11
  65. package/dist/commands/run/secrets/list/index.d.ts +3 -2
  66. package/dist/commands/run/secrets/list/index.js +22 -24
  67. package/dist/commands/run/secrets/set/index.d.ts +4 -3
  68. package/dist/commands/run/secrets/set/index.js +16 -16
  69. package/dist/commands/run/sessions/delete/index.d.ts +3 -2
  70. package/dist/commands/run/sessions/delete/index.js +10 -10
  71. package/dist/commands/run/sessions/get/index.d.ts +3 -2
  72. package/dist/commands/run/sessions/get/index.js +11 -11
  73. package/dist/commands/run/sessions/list/index.d.ts +3 -2
  74. package/dist/commands/run/sessions/list/index.js +11 -11
  75. package/dist/commands/run/sessions/start/index.d.ts +3 -2
  76. package/dist/commands/run/sessions/start/index.js +11 -11
  77. package/dist/commands/run/sessions/stop/index.d.ts +3 -2
  78. package/dist/commands/run/sessions/stop/index.js +11 -11
  79. package/dist/commands/run/sink/get/index.d.ts +3 -2
  80. package/dist/commands/run/sink/get/index.js +11 -11
  81. package/dist/commands/static_host/build/create/index.d.ts +5 -4
  82. package/dist/commands/static_host/build/create/index.js +33 -33
  83. package/dist/commands/static_host/build/get/index.d.ts +5 -4
  84. package/dist/commands/static_host/build/get/index.js +20 -20
  85. package/dist/commands/static_host/build/list/index.d.ts +4 -3
  86. package/dist/commands/static_host/build/list/index.js +31 -31
  87. package/dist/commands/static_host/list/index.d.ts +4 -3
  88. package/dist/commands/static_host/list/index.js +31 -31
  89. package/dist/commands/workspace/create/index.d.ts +14 -0
  90. package/dist/commands/workspace/create/index.js +131 -0
  91. package/dist/commands/workspace/delete/index.d.ts +20 -0
  92. package/dist/commands/workspace/delete/index.js +141 -0
  93. package/dist/commands/workspace/edit/index.d.ts +22 -0
  94. package/dist/commands/workspace/edit/index.js +176 -0
  95. package/dist/commands/workspace/get/index.d.ts +18 -0
  96. package/dist/commands/workspace/get/index.js +136 -0
  97. package/dist/commands/workspace/list/index.d.ts +3 -2
  98. package/dist/commands/workspace/list/index.js +15 -15
  99. package/dist/commands/workspace/pull/index.d.ts +6 -4
  100. package/dist/commands/workspace/pull/index.js +123 -63
  101. package/dist/commands/workspace/push/index.d.ts +2 -0
  102. package/dist/commands/workspace/push/index.js +16 -5
  103. package/dist/help.d.ts +1 -1
  104. package/dist/lib/base-run-command.d.ts +6 -6
  105. package/dist/lib/base-run-command.js +8 -6
  106. package/dist/lib/run-http-client.d.ts +24 -18
  107. package/dist/lib/run-http-client.js +96 -61
  108. package/dist/lib/run-types.d.ts +80 -80
  109. package/oclif.manifest.json +2041 -843
  110. package/package.json +1 -1
@@ -1,15 +1,48 @@
1
1
  {
2
2
  "commands": {
3
- "function:create": {
3
+ "auth": {
4
4
  "aliases": [],
5
5
  "args": {},
6
- "description": "Create a new function in a workspace",
6
+ "description": "Authenticate with Xano via browser login",
7
7
  "examples": [
8
- "$ xano function:create -w 40 -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
9
- "$ xano function:create -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
10
- "$ 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",
11
- "$ cat function.xs | xano function:create -w 40 --stdin\nFunction created successfully!\nID: 123\nName: my_function\n",
12
- "$ xano function:create -w 40 -f function.xs -o json\n{\n \"id\": 123,\n \"name\": \"my_function\",\n ...\n}\n"
8
+ "$ xano auth\nOpening browser for Xano login...\nWaiting for authentication...\nAuthenticated as John Doe (john@example.com)\n? Select an instance: US-1 (Production)\n? Profile name: default\nProfile 'default' created successfully!",
9
+ "$ xano auth --origin https://custom.xano.com\nOpening browser for Xano login at https://custom.xano.com..."
10
+ ],
11
+ "flags": {
12
+ "origin": {
13
+ "char": "o",
14
+ "description": "Xano account origin URL",
15
+ "name": "origin",
16
+ "default": "https://app.xano.com",
17
+ "hasDynamicHelp": false,
18
+ "multiple": false,
19
+ "type": "option"
20
+ }
21
+ },
22
+ "hasDynamicHelp": false,
23
+ "hiddenAliases": [],
24
+ "id": "auth",
25
+ "pluginAlias": "@xano/cli",
26
+ "pluginName": "@xano/cli",
27
+ "pluginType": "core",
28
+ "strict": true,
29
+ "enableJsonFlag": false,
30
+ "isESM": true,
31
+ "relativePath": [
32
+ "dist",
33
+ "commands",
34
+ "auth",
35
+ "index.js"
36
+ ]
37
+ },
38
+ "branch:create": {
39
+ "aliases": [],
40
+ "args": {},
41
+ "description": "Create a new branch by cloning from an existing branch",
42
+ "examples": [
43
+ "$ xano branch create --label dev\nCreated branch: dev\n Cloned from: v1\n",
44
+ "$ xano branch create -l feature-auth -s dev -d \"Authentication feature\"\nCreated branch: feature-auth\n Cloned from: dev\n Description: Authentication feature\n",
45
+ "$ xano branch create --label staging --color \"#ebc346\" --output json\n{\n \"created_at\": \"2024-02-11T10:00:00Z\",\n \"label\": \"staging\",\n \"backup\": false,\n \"live\": false\n}\n"
13
46
  ],
14
47
  "flags": {
15
48
  "profile": {
@@ -22,48 +55,41 @@
22
55
  "multiple": false,
23
56
  "type": "option"
24
57
  },
25
- "workspace": {
26
- "char": "w",
27
- "description": "Workspace ID (optional if set in profile)",
28
- "name": "workspace",
58
+ "verbose": {
59
+ "char": "v",
60
+ "description": "Show detailed request/response information",
61
+ "env": "XANO_VERBOSE",
62
+ "name": "verbose",
63
+ "required": false,
64
+ "allowNo": false,
65
+ "type": "boolean"
66
+ },
67
+ "color": {
68
+ "char": "c",
69
+ "description": "Color hex code for the branch (e.g., \"#ebc346\")",
70
+ "name": "color",
29
71
  "required": false,
30
72
  "hasDynamicHelp": false,
31
73
  "multiple": false,
32
74
  "type": "option"
33
75
  },
34
- "file": {
35
- "char": "f",
36
- "description": "Path to file containing XanoScript code",
37
- "exclusive": [
38
- "stdin"
39
- ],
40
- "name": "file",
76
+ "description": {
77
+ "char": "d",
78
+ "description": "Description for the new branch",
79
+ "name": "description",
41
80
  "required": false,
42
81
  "hasDynamicHelp": false,
43
82
  "multiple": false,
44
83
  "type": "option"
45
84
  },
46
- "stdin": {
47
- "char": "s",
48
- "description": "Read XanoScript code from stdin",
49
- "exclusive": [
50
- "file"
51
- ],
52
- "name": "stdin",
53
- "required": false,
54
- "allowNo": false,
55
- "type": "boolean"
56
- },
57
- "edit": {
58
- "char": "e",
59
- "dependsOn": [
60
- "file"
61
- ],
62
- "description": "Open file in editor before creating function (requires --file)",
63
- "name": "edit",
64
- "required": false,
65
- "allowNo": false,
66
- "type": "boolean"
85
+ "label": {
86
+ "char": "l",
87
+ "description": "Label for the new branch",
88
+ "name": "label",
89
+ "required": true,
90
+ "hasDynamicHelp": false,
91
+ "multiple": false,
92
+ "type": "option"
67
93
  },
68
94
  "output": {
69
95
  "char": "o",
@@ -78,11 +104,30 @@
78
104
  "json"
79
105
  ],
80
106
  "type": "option"
107
+ },
108
+ "source": {
109
+ "char": "s",
110
+ "description": "Source branch to clone from (defaults to \"v1\")",
111
+ "name": "source",
112
+ "required": false,
113
+ "default": "v1",
114
+ "hasDynamicHelp": false,
115
+ "multiple": false,
116
+ "type": "option"
117
+ },
118
+ "workspace": {
119
+ "char": "w",
120
+ "description": "Workspace ID (uses profile workspace if not provided)",
121
+ "name": "workspace",
122
+ "required": false,
123
+ "hasDynamicHelp": false,
124
+ "multiple": false,
125
+ "type": "option"
81
126
  }
82
127
  },
83
128
  "hasDynamicHelp": false,
84
129
  "hiddenAliases": [],
85
- "id": "function:create",
130
+ "id": "branch:create",
86
131
  "pluginAlias": "@xano/cli",
87
132
  "pluginName": "@xano/cli",
88
133
  "pluginType": "core",
@@ -92,30 +137,25 @@
92
137
  "relativePath": [
93
138
  "dist",
94
139
  "commands",
95
- "function",
140
+ "branch",
96
141
  "create",
97
142
  "index.js"
98
143
  ]
99
144
  },
100
- "function:edit": {
145
+ "branch:delete": {
101
146
  "aliases": [],
102
147
  "args": {
103
- "function_id": {
104
- "description": "Function ID to edit",
105
- "name": "function_id",
106
- "required": false
148
+ "branch_label": {
149
+ "description": "Branch label to delete (cannot delete \"v1\" or the live branch)",
150
+ "name": "branch_label",
151
+ "required": true
107
152
  }
108
153
  },
109
- "description": "Edit a function in a workspace",
154
+ "description": "Delete a branch (cannot delete \"v1\" or the live branch)",
110
155
  "examples": [
111
- "$ 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",
112
- "$ 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",
113
- "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
114
- "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
115
- "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
116
- "$ 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",
117
- "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
118
- "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
156
+ "$ xano branch delete feature-old\nAre you sure you want to delete branch 'feature-old'? This action cannot be undone. (y/N) y\nDeleted branch: feature-old\n",
157
+ "$ xano branch delete dev --force\nDeleted branch: dev\n",
158
+ "$ xano branch delete staging -f -o json\n{\n \"deleted\": true,\n \"branch_label\": \"staging\"\n}\n"
119
159
  ],
120
160
  "flags": {
121
161
  "profile": {
@@ -128,49 +168,19 @@
128
168
  "multiple": false,
129
169
  "type": "option"
130
170
  },
131
- "workspace": {
132
- "char": "w",
133
- "description": "Workspace ID (optional if set in profile)",
134
- "name": "workspace",
135
- "required": false,
136
- "hasDynamicHelp": false,
137
- "multiple": false,
138
- "type": "option"
139
- },
140
- "file": {
141
- "char": "f",
142
- "description": "Path to file containing XanoScript code",
143
- "exclusive": [
144
- "stdin"
145
- ],
146
- "name": "file",
147
- "required": false,
148
- "hasDynamicHelp": false,
149
- "multiple": false,
150
- "type": "option"
151
- },
152
- "stdin": {
153
- "char": "s",
154
- "description": "Read XanoScript code from stdin",
155
- "exclusive": [
156
- "file"
157
- ],
158
- "name": "stdin",
159
- "required": false,
160
- "allowNo": false,
161
- "type": "boolean"
162
- },
163
- "edit": {
164
- "char": "e",
165
- "description": "Open file in editor before updating function (requires --file)",
166
- "name": "edit",
171
+ "verbose": {
172
+ "char": "v",
173
+ "description": "Show detailed request/response information",
174
+ "env": "XANO_VERBOSE",
175
+ "name": "verbose",
167
176
  "required": false,
168
177
  "allowNo": false,
169
178
  "type": "boolean"
170
179
  },
171
- "publish": {
172
- "description": "Publish the function after editing",
173
- "name": "publish",
180
+ "force": {
181
+ "char": "f",
182
+ "description": "Skip confirmation prompt",
183
+ "name": "force",
174
184
  "required": false,
175
185
  "allowNo": false,
176
186
  "type": "boolean"
@@ -188,11 +198,20 @@
188
198
  "json"
189
199
  ],
190
200
  "type": "option"
201
+ },
202
+ "workspace": {
203
+ "char": "w",
204
+ "description": "Workspace ID (uses profile workspace if not provided)",
205
+ "name": "workspace",
206
+ "required": false,
207
+ "hasDynamicHelp": false,
208
+ "multiple": false,
209
+ "type": "option"
191
210
  }
192
211
  },
193
212
  "hasDynamicHelp": false,
194
213
  "hiddenAliases": [],
195
- "id": "function:edit",
214
+ "id": "branch:delete",
196
215
  "pluginAlias": "@xano/cli",
197
216
  "pluginName": "@xano/cli",
198
217
  "pluginType": "core",
@@ -202,28 +221,25 @@
202
221
  "relativePath": [
203
222
  "dist",
204
223
  "commands",
205
- "function",
206
- "edit",
224
+ "branch",
225
+ "delete",
207
226
  "index.js"
208
227
  ]
209
228
  },
210
- "function:get": {
229
+ "branch:edit": {
211
230
  "aliases": [],
212
231
  "args": {
213
- "function_id": {
214
- "description": "Function ID",
215
- "name": "function_id",
216
- "required": false
232
+ "branch_label": {
233
+ "description": "Branch label to edit (cannot edit \"v1\" label)",
234
+ "name": "branch_label",
235
+ "required": true
217
236
  }
218
237
  },
219
- "description": "Get a specific function from a workspace",
238
+ "description": "Update an existing branch (cannot update \"v1\" label)",
220
239
  "examples": [
221
- "$ xano function:get 145 -w 40\nFunction: yo (ID: 145)\nCreated: 2025-10-10 10:30:00\nDescription: Sample function\n",
222
- "$ xano function:get 145 --profile production\nFunction: yo (ID: 145)\nCreated: 2025-10-10 10:30:00\n",
223
- "$ xano function:get\nSelect a function:\n ❯ yo (ID: 145) - Sample function\n another-func (ID: 146)\n",
224
- "$ xano function:get 145 -w 40 --output json\n{\n \"id\": 145,\n \"name\": \"yo\",\n \"description\": \"Sample function\"\n}\n",
225
- "$ xano function:get 145 -p staging -o json --include_draft\n{\n \"id\": 145,\n \"name\": \"yo\"\n}\n",
226
- "$ xano function:get 145 -p staging -o xs\nfunction yo {\n input {\n }\n stack {\n }\n response = null\n}\n"
240
+ "$ xano branch edit dev --label development\nUpdated branch: development\n",
241
+ "$ xano branch edit feature-auth -l feature-authentication --color \"#ff5733\"\nUpdated branch: feature-authentication\n Color: #ff5733\n",
242
+ "$ 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"
227
243
  ],
228
244
  "flags": {
229
245
  "profile": {
@@ -236,10 +252,37 @@
236
252
  "multiple": false,
237
253
  "type": "option"
238
254
  },
239
- "workspace": {
240
- "char": "w",
241
- "description": "Workspace ID (optional if set in profile)",
242
- "name": "workspace",
255
+ "verbose": {
256
+ "char": "v",
257
+ "description": "Show detailed request/response information",
258
+ "env": "XANO_VERBOSE",
259
+ "name": "verbose",
260
+ "required": false,
261
+ "allowNo": false,
262
+ "type": "boolean"
263
+ },
264
+ "color": {
265
+ "char": "c",
266
+ "description": "New color hex code for the branch (e.g., \"#ff5733\")",
267
+ "name": "color",
268
+ "required": false,
269
+ "hasDynamicHelp": false,
270
+ "multiple": false,
271
+ "type": "option"
272
+ },
273
+ "description": {
274
+ "char": "d",
275
+ "description": "New description for the branch",
276
+ "name": "description",
277
+ "required": false,
278
+ "hasDynamicHelp": false,
279
+ "multiple": false,
280
+ "type": "option"
281
+ },
282
+ "label": {
283
+ "char": "l",
284
+ "description": "New label for the branch",
285
+ "name": "label",
243
286
  "required": false,
244
287
  "hasDynamicHelp": false,
245
288
  "multiple": false,
@@ -255,29 +298,23 @@
255
298
  "multiple": false,
256
299
  "options": [
257
300
  "summary",
258
- "json",
259
- "xs"
301
+ "json"
260
302
  ],
261
303
  "type": "option"
262
304
  },
263
- "include_draft": {
264
- "description": "Include draft version",
265
- "name": "include_draft",
266
- "required": false,
267
- "allowNo": false,
268
- "type": "boolean"
269
- },
270
- "include_xanoscript": {
271
- "description": "Include XanoScript in response",
272
- "name": "include_xanoscript",
305
+ "workspace": {
306
+ "char": "w",
307
+ "description": "Workspace ID (uses profile workspace if not provided)",
308
+ "name": "workspace",
273
309
  "required": false,
274
- "allowNo": false,
275
- "type": "boolean"
310
+ "hasDynamicHelp": false,
311
+ "multiple": false,
312
+ "type": "option"
276
313
  }
277
314
  },
278
315
  "hasDynamicHelp": false,
279
316
  "hiddenAliases": [],
280
- "id": "function:get",
317
+ "id": "branch:edit",
281
318
  "pluginAlias": "@xano/cli",
282
319
  "pluginName": "@xano/cli",
283
320
  "pluginType": "core",
@@ -287,20 +324,25 @@
287
324
  "relativePath": [
288
325
  "dist",
289
326
  "commands",
290
- "function",
291
- "get",
327
+ "branch",
328
+ "edit",
292
329
  "index.js"
293
330
  ]
294
331
  },
295
- "function:list": {
332
+ "branch:get": {
296
333
  "aliases": [],
297
- "args": {},
298
- "description": "List all functions in a workspace from the Xano Metadata API",
334
+ "args": {
335
+ "branch_label": {
336
+ "description": "Branch label (e.g., \"v1\", \"dev\")",
337
+ "name": "branch_label",
338
+ "required": true
339
+ }
340
+ },
341
+ "description": "Get details for a specific branch",
299
342
  "examples": [
300
- "$ xano function:list -w 40\nAvailable functions:\n - function-1 (ID: 1)\n - function-2 (ID: 2)\n - function-3 (ID: 3)\n",
301
- "$ xano function:list --profile production\nAvailable functions:\n - my-function (ID: 1)\n - another-function (ID: 2)\n",
302
- "$ xano function:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"function-1\"\n }\n]\n",
303
- "$ xano function:list -p staging -o json --include_draft\n[\n {\n \"id\": 1,\n \"name\": \"function-1\"\n }\n]\n"
343
+ "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
344
+ "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
345
+ "$ 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"
304
346
  ],
305
347
  "flags": {
306
348
  "profile": {
@@ -313,14 +355,14 @@
313
355
  "multiple": false,
314
356
  "type": "option"
315
357
  },
316
- "workspace": {
317
- "char": "w",
318
- "description": "Workspace ID (optional if set in profile)",
319
- "name": "workspace",
358
+ "verbose": {
359
+ "char": "v",
360
+ "description": "Show detailed request/response information",
361
+ "env": "XANO_VERBOSE",
362
+ "name": "verbose",
320
363
  "required": false,
321
- "hasDynamicHelp": false,
322
- "multiple": false,
323
- "type": "option"
364
+ "allowNo": false,
365
+ "type": "boolean"
324
366
  },
325
367
  "output": {
326
368
  "char": "o",
@@ -336,64 +378,86 @@
336
378
  ],
337
379
  "type": "option"
338
380
  },
339
- "include_draft": {
340
- "description": "Include draft functions",
341
- "name": "include_draft",
381
+ "workspace": {
382
+ "char": "w",
383
+ "description": "Workspace ID (uses profile workspace if not provided)",
384
+ "name": "workspace",
342
385
  "required": false,
343
- "allowNo": false,
344
- "type": "boolean"
345
- },
346
- "include_xanoscript": {
347
- "description": "Include XanoScript in response",
348
- "name": "include_xanoscript",
349
- "required": false,
350
- "allowNo": false,
351
- "type": "boolean"
352
- },
353
- "page": {
354
- "description": "Page number for pagination",
355
- "name": "page",
356
- "required": false,
357
- "default": 1,
358
386
  "hasDynamicHelp": false,
359
387
  "multiple": false,
360
388
  "type": "option"
361
- },
362
- "per_page": {
363
- "description": "Number of results per page",
364
- "name": "per_page",
389
+ }
390
+ },
391
+ "hasDynamicHelp": false,
392
+ "hiddenAliases": [],
393
+ "id": "branch:get",
394
+ "pluginAlias": "@xano/cli",
395
+ "pluginName": "@xano/cli",
396
+ "pluginType": "core",
397
+ "strict": true,
398
+ "enableJsonFlag": false,
399
+ "isESM": true,
400
+ "relativePath": [
401
+ "dist",
402
+ "commands",
403
+ "branch",
404
+ "get",
405
+ "index.js"
406
+ ]
407
+ },
408
+ "branch:list": {
409
+ "aliases": [],
410
+ "args": {
411
+ "workspace_id": {
412
+ "description": "Workspace ID (uses profile workspace if not provided)",
413
+ "name": "workspace_id",
414
+ "required": false
415
+ }
416
+ },
417
+ "description": "List all branches in a workspace",
418
+ "examples": [
419
+ "$ xano branch list\nAvailable branches:\n - v1 (live)\n - dev\n - staging\n",
420
+ "$ xano branch list 123\nAvailable branches:\n - v1 (live)\n - feature-auth\n",
421
+ "$ xano branch list --output json\n[\n {\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"label\": \"v1\",\n \"backup\": false,\n \"live\": true\n }\n]\n"
422
+ ],
423
+ "flags": {
424
+ "profile": {
425
+ "char": "p",
426
+ "description": "Profile to use for this command",
427
+ "env": "XANO_PROFILE",
428
+ "name": "profile",
365
429
  "required": false,
366
- "default": 50,
367
430
  "hasDynamicHelp": false,
368
431
  "multiple": false,
369
432
  "type": "option"
370
433
  },
371
- "sort": {
372
- "description": "Sort field",
373
- "name": "sort",
434
+ "verbose": {
435
+ "char": "v",
436
+ "description": "Show detailed request/response information",
437
+ "env": "XANO_VERBOSE",
438
+ "name": "verbose",
374
439
  "required": false,
375
- "default": "created_at",
376
- "hasDynamicHelp": false,
377
- "multiple": false,
378
- "type": "option"
440
+ "allowNo": false,
441
+ "type": "boolean"
379
442
  },
380
- "order": {
381
- "description": "Sort order",
382
- "name": "order",
443
+ "output": {
444
+ "char": "o",
445
+ "description": "Output format",
446
+ "name": "output",
383
447
  "required": false,
384
- "default": "desc",
448
+ "default": "summary",
385
449
  "hasDynamicHelp": false,
386
450
  "multiple": false,
387
451
  "options": [
388
- "asc",
389
- "desc"
452
+ "summary",
453
+ "json"
390
454
  ],
391
455
  "type": "option"
392
456
  }
393
457
  },
394
458
  "hasDynamicHelp": false,
395
459
  "hiddenAliases": [],
396
- "id": "function:list",
460
+ "id": "branch:list",
397
461
  "pluginAlias": "@xano/cli",
398
462
  "pluginName": "@xano/cli",
399
463
  "pluginType": "core",
@@ -403,60 +467,63 @@
403
467
  "relativePath": [
404
468
  "dist",
405
469
  "commands",
406
- "function",
470
+ "branch",
407
471
  "list",
408
472
  "index.js"
409
473
  ]
410
474
  },
411
- "profile:create": {
475
+ "profile:edit": {
412
476
  "aliases": [],
413
477
  "args": {
414
478
  "name": {
415
- "description": "Profile name",
479
+ "description": "Profile name to edit (uses default profile if not specified)",
416
480
  "name": "name",
417
- "required": true
481
+ "required": false
418
482
  }
419
483
  },
420
- "description": "Create a new profile configuration",
484
+ "description": "Edit an existing profile configuration",
421
485
  "examples": [
422
- "$ 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",
423
- "$ 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",
424
- "$ 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",
425
- "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch -j my-project\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
426
- "$ 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"
486
+ "$ xano profile:edit --access_token new_token123\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
487
+ "$ xano profile:edit production --access_token new_token123\nProfile 'production' updated successfully at ~/.xano/credentials.yaml\n",
488
+ "$ xano profile:edit staging -i https://new-staging-instance.xano.com -t new_token456\nProfile 'staging' updated successfully at ~/.xano/credentials.yaml\n",
489
+ "$ xano profile:edit -b new-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
490
+ "$ xano profile:edit --remove-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
491
+ "$ xano profile:edit -j my-project\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
492
+ "$ xano profile:edit --remove-project\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n"
427
493
  ],
428
494
  "flags": {
429
- "account_origin": {
430
- "char": "a",
431
- "description": "Account origin URL. Optional for self hosted installs.",
432
- "name": "account_origin",
495
+ "profile": {
496
+ "char": "p",
497
+ "description": "Profile to use for this command",
498
+ "env": "XANO_PROFILE",
499
+ "name": "profile",
433
500
  "required": false,
434
501
  "hasDynamicHelp": false,
435
502
  "multiple": false,
436
503
  "type": "option"
437
504
  },
438
- "instance_origin": {
439
- "char": "i",
440
- "description": "Instance origin URL",
441
- "name": "instance_origin",
442
- "required": true,
443
- "hasDynamicHelp": false,
444
- "multiple": false,
445
- "type": "option"
505
+ "verbose": {
506
+ "char": "v",
507
+ "description": "Show detailed request/response information",
508
+ "env": "XANO_VERBOSE",
509
+ "name": "verbose",
510
+ "required": false,
511
+ "allowNo": false,
512
+ "type": "boolean"
446
513
  },
447
514
  "access_token": {
448
515
  "char": "t",
449
- "description": "Access token for the Xano Metadata API",
516
+ "description": "Update access token for the Xano Metadata API",
450
517
  "name": "access_token",
451
- "required": true,
518
+ "required": false,
452
519
  "hasDynamicHelp": false,
453
520
  "multiple": false,
454
521
  "type": "option"
455
522
  },
456
- "workspace": {
457
- "char": "w",
458
- "description": "Workspace name",
459
- "name": "workspace",
523
+ "account_origin": {
524
+ "char": "a",
525
+ "description": "Update account origin URL",
526
+ "name": "account_origin",
460
527
  "required": false,
461
528
  "hasDynamicHelp": false,
462
529
  "multiple": false,
@@ -464,42 +531,81 @@
464
531
  },
465
532
  "branch": {
466
533
  "char": "b",
467
- "description": "Branch name",
534
+ "description": "Update branch name",
468
535
  "name": "branch",
469
536
  "required": false,
470
537
  "hasDynamicHelp": false,
471
538
  "multiple": false,
472
539
  "type": "option"
473
540
  },
541
+ "instance_origin": {
542
+ "char": "i",
543
+ "description": "Update instance origin URL",
544
+ "name": "instance_origin",
545
+ "required": false,
546
+ "hasDynamicHelp": false,
547
+ "multiple": false,
548
+ "type": "option"
549
+ },
474
550
  "project": {
475
551
  "char": "j",
476
- "description": "Project name",
552
+ "description": "Update project ID",
477
553
  "name": "project",
478
554
  "required": false,
479
555
  "hasDynamicHelp": false,
480
556
  "multiple": false,
481
557
  "type": "option"
482
558
  },
559
+ "remove-branch": {
560
+ "description": "Remove branch from profile",
561
+ "name": "remove-branch",
562
+ "required": false,
563
+ "allowNo": false,
564
+ "type": "boolean"
565
+ },
566
+ "remove-project": {
567
+ "description": "Remove project from profile",
568
+ "name": "remove-project",
569
+ "required": false,
570
+ "allowNo": false,
571
+ "type": "boolean"
572
+ },
573
+ "remove-run-base-url": {
574
+ "description": "Remove run_base_url from profile (use default)",
575
+ "name": "remove-run-base-url",
576
+ "required": false,
577
+ "allowNo": false,
578
+ "type": "boolean"
579
+ },
580
+ "remove-workspace": {
581
+ "description": "Remove workspace from profile",
582
+ "name": "remove-workspace",
583
+ "required": false,
584
+ "allowNo": false,
585
+ "type": "boolean"
586
+ },
483
587
  "run_base_url": {
484
588
  "char": "r",
485
- "description": "Xano Run API base URL (default: https://app.xano.com/)",
589
+ "description": "Update Xano Run API base URL",
486
590
  "name": "run_base_url",
487
591
  "required": false,
488
592
  "hasDynamicHelp": false,
489
593
  "multiple": false,
490
594
  "type": "option"
491
595
  },
492
- "default": {
493
- "description": "Set this profile as the default",
494
- "name": "default",
596
+ "workspace": {
597
+ "char": "w",
598
+ "description": "Update workspace name",
599
+ "name": "workspace",
495
600
  "required": false,
496
- "allowNo": false,
497
- "type": "boolean"
601
+ "hasDynamicHelp": false,
602
+ "multiple": false,
603
+ "type": "option"
498
604
  }
499
605
  },
500
606
  "hasDynamicHelp": false,
501
607
  "hiddenAliases": [],
502
- "id": "profile:create",
608
+ "id": "profile:edit",
503
609
  "pluginAlias": "@xano/cli",
504
610
  "pluginName": "@xano/cli",
505
611
  "pluginType": "core",
@@ -510,7 +616,7 @@
510
616
  "dist",
511
617
  "commands",
512
618
  "profile",
513
- "create",
619
+ "edit",
514
620
  "index.js"
515
621
  ]
516
622
  },
@@ -556,157 +662,98 @@
556
662
  "index.js"
557
663
  ]
558
664
  },
559
- "profile:get-default": {
560
- "aliases": [],
561
- "args": {},
562
- "description": "Get the current default profile name",
563
- "examples": [
564
- "$ xano profile:get-default\nproduction\n",
565
- "$ xano profile:get-default\nNo default profile set\n"
566
- ],
567
- "flags": {},
568
- "hasDynamicHelp": false,
569
- "hiddenAliases": [],
570
- "id": "profile:get-default",
571
- "pluginAlias": "@xano/cli",
572
- "pluginName": "@xano/cli",
573
- "pluginType": "core",
574
- "strict": true,
575
- "enableJsonFlag": false,
576
- "isESM": true,
577
- "relativePath": [
578
- "dist",
579
- "commands",
580
- "profile",
581
- "get-default",
582
- "index.js"
583
- ]
584
- },
585
- "profile:edit": {
665
+ "profile:create": {
586
666
  "aliases": [],
587
667
  "args": {
588
668
  "name": {
589
- "description": "Profile name to edit (uses default profile if not specified)",
669
+ "description": "Profile name",
590
670
  "name": "name",
591
- "required": false
671
+ "required": true
592
672
  }
593
673
  },
594
- "description": "Edit an existing profile configuration",
674
+ "description": "Create a new profile configuration",
595
675
  "examples": [
596
- "$ xano profile:edit --access_token new_token123\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
597
- "$ xano profile:edit production --access_token new_token123\nProfile 'production' updated successfully at ~/.xano/credentials.yaml\n",
598
- "$ xano profile:edit staging -i https://new-staging-instance.xano.com -t new_token456\nProfile 'staging' updated successfully at ~/.xano/credentials.yaml\n",
599
- "$ xano profile:edit -b new-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
600
- "$ xano profile:edit --remove-branch\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
601
- "$ xano profile:edit -j my-project\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n",
602
- "$ xano profile:edit --remove-project\nProfile 'default' updated successfully at ~/.xano/credentials.yaml\n"
676
+ "$ 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",
677
+ "$ 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",
678
+ "$ 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",
679
+ "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch -j my-project\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
680
+ "$ 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"
603
681
  ],
604
682
  "flags": {
605
- "profile": {
606
- "char": "p",
607
- "description": "Profile to use for this command",
608
- "env": "XANO_PROFILE",
609
- "name": "profile",
610
- "required": false,
683
+ "access_token": {
684
+ "char": "t",
685
+ "description": "Access token for the Xano Metadata API",
686
+ "name": "access_token",
687
+ "required": true,
611
688
  "hasDynamicHelp": false,
612
689
  "multiple": false,
613
690
  "type": "option"
614
691
  },
615
692
  "account_origin": {
616
693
  "char": "a",
617
- "description": "Update account origin URL",
694
+ "description": "Account origin URL. Optional for self hosted installs.",
618
695
  "name": "account_origin",
619
696
  "required": false,
620
697
  "hasDynamicHelp": false,
621
698
  "multiple": false,
622
699
  "type": "option"
623
700
  },
624
- "instance_origin": {
625
- "char": "i",
626
- "description": "Update instance origin URL",
627
- "name": "instance_origin",
701
+ "branch": {
702
+ "char": "b",
703
+ "description": "Branch name",
704
+ "name": "branch",
628
705
  "required": false,
629
706
  "hasDynamicHelp": false,
630
707
  "multiple": false,
631
708
  "type": "option"
632
709
  },
633
- "access_token": {
634
- "char": "t",
635
- "description": "Update access token for the Xano Metadata API",
636
- "name": "access_token",
637
- "required": false,
638
- "hasDynamicHelp": false,
639
- "multiple": false,
640
- "type": "option"
641
- },
642
- "workspace": {
643
- "char": "w",
644
- "description": "Update workspace name",
645
- "name": "workspace",
710
+ "default": {
711
+ "description": "Set this profile as the default",
712
+ "name": "default",
646
713
  "required": false,
647
- "hasDynamicHelp": false,
648
- "multiple": false,
649
- "type": "option"
714
+ "allowNo": false,
715
+ "type": "boolean"
650
716
  },
651
- "branch": {
652
- "char": "b",
653
- "description": "Update branch name",
654
- "name": "branch",
655
- "required": false,
717
+ "instance_origin": {
718
+ "char": "i",
719
+ "description": "Instance origin URL",
720
+ "name": "instance_origin",
721
+ "required": true,
656
722
  "hasDynamicHelp": false,
657
723
  "multiple": false,
658
724
  "type": "option"
659
725
  },
660
726
  "project": {
661
727
  "char": "j",
662
- "description": "Update project name",
728
+ "description": "Project name",
663
729
  "name": "project",
664
730
  "required": false,
665
731
  "hasDynamicHelp": false,
666
732
  "multiple": false,
667
733
  "type": "option"
668
734
  },
669
- "remove-workspace": {
670
- "description": "Remove workspace from profile",
671
- "name": "remove-workspace",
672
- "required": false,
673
- "allowNo": false,
674
- "type": "boolean"
675
- },
676
- "remove-branch": {
677
- "description": "Remove branch from profile",
678
- "name": "remove-branch",
679
- "required": false,
680
- "allowNo": false,
681
- "type": "boolean"
682
- },
683
- "remove-project": {
684
- "description": "Remove project from profile",
685
- "name": "remove-project",
686
- "required": false,
687
- "allowNo": false,
688
- "type": "boolean"
689
- },
690
735
  "run_base_url": {
691
736
  "char": "r",
692
- "description": "Update Xano Run API base URL",
737
+ "description": "Xano Run API base URL (default: https://app.xano.com/)",
693
738
  "name": "run_base_url",
694
739
  "required": false,
695
740
  "hasDynamicHelp": false,
696
741
  "multiple": false,
697
742
  "type": "option"
698
743
  },
699
- "remove-run-base-url": {
700
- "description": "Remove run_base_url from profile (use default)",
701
- "name": "remove-run-base-url",
744
+ "workspace": {
745
+ "char": "w",
746
+ "description": "Workspace name",
747
+ "name": "workspace",
702
748
  "required": false,
703
- "allowNo": false,
704
- "type": "boolean"
749
+ "hasDynamicHelp": false,
750
+ "multiple": false,
751
+ "type": "option"
705
752
  }
706
753
  },
707
754
  "hasDynamicHelp": false,
708
755
  "hiddenAliases": [],
709
- "id": "profile:edit",
756
+ "id": "profile:create",
710
757
  "pluginAlias": "@xano/cli",
711
758
  "pluginName": "@xano/cli",
712
759
  "pluginType": "core",
@@ -717,7 +764,7 @@
717
764
  "dist",
718
765
  "commands",
719
766
  "profile",
720
- "edit",
767
+ "create",
721
768
  "index.js"
722
769
  ]
723
770
  },
@@ -741,6 +788,15 @@
741
788
  "multiple": false,
742
789
  "type": "option"
743
790
  },
791
+ "verbose": {
792
+ "char": "v",
793
+ "description": "Show detailed request/response information",
794
+ "env": "XANO_VERBOSE",
795
+ "name": "verbose",
796
+ "required": false,
797
+ "allowNo": false,
798
+ "type": "boolean"
799
+ },
744
800
  "output": {
745
801
  "char": "o",
746
802
  "description": "Output format",
@@ -773,24 +829,18 @@
773
829
  "index.js"
774
830
  ]
775
831
  },
776
- "profile:set-default": {
832
+ "profile:get-default": {
777
833
  "aliases": [],
778
- "args": {
779
- "name": {
780
- "description": "Profile name to set as default",
781
- "name": "name",
782
- "required": true
783
- }
784
- },
785
- "description": "Set the default profile",
834
+ "args": {},
835
+ "description": "Get the current default profile name",
786
836
  "examples": [
787
- "$ xano profile:set-default production\nDefault profile set to 'production'\n",
788
- "$ xano profile:set-default staging\nDefault profile set to 'staging'\n"
837
+ "$ xano profile:get-default\nproduction\n",
838
+ "$ xano profile:get-default\nNo default profile set\n"
789
839
  ],
790
840
  "flags": {},
791
841
  "hasDynamicHelp": false,
792
842
  "hiddenAliases": [],
793
- "id": "profile:set-default",
843
+ "id": "profile:get-default",
794
844
  "pluginAlias": "@xano/cli",
795
845
  "pluginName": "@xano/cli",
796
846
  "pluginType": "core",
@@ -801,7 +851,43 @@
801
851
  "dist",
802
852
  "commands",
803
853
  "profile",
804
- "set-default",
854
+ "get-default",
855
+ "index.js"
856
+ ]
857
+ },
858
+ "profile:list": {
859
+ "aliases": [],
860
+ "args": {},
861
+ "description": "List all available profile configurations",
862
+ "examples": [
863
+ "$ xano profile:list\nAvailable profiles:\n - default\n - production\n - staging\n - development\n",
864
+ "$ xano profile:list --details\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n\nProfile: production\n Account Origin: https://account.xano.com\n Instance Origin: https://prod-instance.xano.com\n Access Token: ***...***\n",
865
+ "$ xano profile:list -d\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n"
866
+ ],
867
+ "flags": {
868
+ "details": {
869
+ "char": "d",
870
+ "description": "Show detailed information for each profile",
871
+ "name": "details",
872
+ "required": false,
873
+ "allowNo": false,
874
+ "type": "boolean"
875
+ }
876
+ },
877
+ "hasDynamicHelp": false,
878
+ "hiddenAliases": [],
879
+ "id": "profile:list",
880
+ "pluginAlias": "@xano/cli",
881
+ "pluginName": "@xano/cli",
882
+ "pluginType": "core",
883
+ "strict": true,
884
+ "enableJsonFlag": false,
885
+ "isESM": true,
886
+ "relativePath": [
887
+ "dist",
888
+ "commands",
889
+ "profile",
890
+ "list",
805
891
  "index.js"
806
892
  ]
807
893
  },
@@ -831,18 +917,24 @@
831
917
  "index.js"
832
918
  ]
833
919
  },
834
- "profile:token": {
920
+ "profile:set-default": {
835
921
  "aliases": [],
836
- "args": {},
837
- "description": "Print the access token for the default profile",
922
+ "args": {
923
+ "name": {
924
+ "description": "Profile name to set as default",
925
+ "name": "name",
926
+ "required": true
927
+ }
928
+ },
929
+ "description": "Set the default profile",
838
930
  "examples": [
839
- "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
840
- "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
931
+ "$ xano profile:set-default production\nDefault profile set to 'production'\n",
932
+ "$ xano profile:set-default staging\nDefault profile set to 'staging'\n"
841
933
  ],
842
934
  "flags": {},
843
935
  "hasDynamicHelp": false,
844
936
  "hiddenAliases": [],
845
- "id": "profile:token",
937
+ "id": "profile:set-default",
846
938
  "pluginAlias": "@xano/cli",
847
939
  "pluginName": "@xano/cli",
848
940
  "pluginType": "core",
@@ -853,41 +945,22 @@
853
945
  "dist",
854
946
  "commands",
855
947
  "profile",
856
- "token",
948
+ "set-default",
857
949
  "index.js"
858
950
  ]
859
951
  },
860
- "profile:wizard": {
952
+ "profile:token": {
861
953
  "aliases": [],
862
954
  "args": {},
863
- "description": "Create a new profile configuration using an interactive wizard",
955
+ "description": "Print the access token for the default profile",
864
956
  "examples": [
865
- "$ 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"
957
+ "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
958
+ "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
866
959
  ],
867
- "flags": {
868
- "name": {
869
- "char": "n",
870
- "description": "Profile name (skip prompt if provided)",
871
- "name": "name",
872
- "required": false,
873
- "hasDynamicHelp": false,
874
- "multiple": false,
875
- "type": "option"
876
- },
877
- "origin": {
878
- "char": "o",
879
- "description": "Xano instance origin URL",
880
- "name": "origin",
881
- "required": false,
882
- "default": "https://app.xano.com",
883
- "hasDynamicHelp": false,
884
- "multiple": false,
885
- "type": "option"
886
- }
887
- },
960
+ "flags": {},
888
961
  "hasDynamicHelp": false,
889
962
  "hiddenAliases": [],
890
- "id": "profile:wizard",
963
+ "id": "profile:token",
891
964
  "pluginAlias": "@xano/cli",
892
965
  "pluginName": "@xano/cli",
893
966
  "pluginType": "core",
@@ -898,21 +971,24 @@
898
971
  "dist",
899
972
  "commands",
900
973
  "profile",
901
- "wizard",
974
+ "token",
902
975
  "index.js"
903
976
  ]
904
977
  },
905
- "run:exec": {
978
+ "branch:set-live": {
906
979
  "aliases": [],
907
- "args": {},
908
- "description": "Execute XanoScript code (job or service)",
980
+ "args": {
981
+ "branch_label": {
982
+ "description": "Branch label to set as live (use \"v1\" for default branch)",
983
+ "name": "branch_label",
984
+ "required": true
985
+ }
986
+ },
987
+ "description": "Set a branch as the live (active) branch for API requests",
909
988
  "examples": [
910
- "$ xano run exec -f script.xs\nExecuted successfully!\n...\n",
911
- "$ xano run exec -f script.xs --edit\n# Opens script.xs in $EDITOR, then executes\nExecuted successfully!\n...\n",
912
- "$ cat script.xs | xano run exec --stdin\nExecuted successfully!\n...\n",
913
- "$ xano run exec -f script.xs -o json\n{\n \"run\": { ... }\n}\n",
914
- "$ xano run exec -f script.xs -a args.json\n# Executes with input arguments from args.json\nExecuted successfully!\n...\n",
915
- "$ xano run exec -f script.xs --env API_KEY=secret --env DEBUG=true\n# Executes with environment variable overrides\nExecuted successfully!\n...\n"
989
+ "$ xano branch set-live staging\nAre you sure you want to set 'staging' as the live branch? (y/N) y\nBranch 'staging' is now live\n",
990
+ "$ xano branch set-live v1 --force\nBranch 'v1' is now live\n",
991
+ "$ xano branch set-live production -f -o json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"production\",\n \"backup\": false,\n \"live\": true\n}\n"
916
992
  ],
917
993
  "flags": {
918
994
  "profile": {
@@ -925,36 +1001,19 @@
925
1001
  "multiple": false,
926
1002
  "type": "option"
927
1003
  },
928
- "file": {
929
- "char": "f",
930
- "description": "Path or URL to file containing XanoScript code",
931
- "exclusive": [
932
- "stdin"
933
- ],
934
- "name": "file",
935
- "required": false,
936
- "hasDynamicHelp": false,
937
- "multiple": false,
938
- "type": "option"
939
- },
940
- "stdin": {
941
- "char": "s",
942
- "description": "Read XanoScript code from stdin",
943
- "exclusive": [
944
- "file"
945
- ],
946
- "name": "stdin",
1004
+ "verbose": {
1005
+ "char": "v",
1006
+ "description": "Show detailed request/response information",
1007
+ "env": "XANO_VERBOSE",
1008
+ "name": "verbose",
947
1009
  "required": false,
948
1010
  "allowNo": false,
949
1011
  "type": "boolean"
950
1012
  },
951
- "edit": {
952
- "char": "e",
953
- "dependsOn": [
954
- "file"
955
- ],
956
- "description": "Open file in editor before running (requires --file)",
957
- "name": "edit",
1013
+ "force": {
1014
+ "char": "f",
1015
+ "description": "Skip confirmation prompt",
1016
+ "name": "force",
958
1017
  "required": false,
959
1018
  "allowNo": false,
960
1019
  "type": "boolean"
@@ -973,62 +1032,877 @@
973
1032
  ],
974
1033
  "type": "option"
975
1034
  },
976
- "args": {
977
- "char": "a",
978
- "description": "Path or URL to JSON file containing input arguments",
979
- "name": "args",
1035
+ "workspace": {
1036
+ "char": "w",
1037
+ "description": "Workspace ID (uses profile workspace if not provided)",
1038
+ "name": "workspace",
980
1039
  "required": false,
981
1040
  "hasDynamicHelp": false,
982
1041
  "multiple": false,
983
1042
  "type": "option"
984
- },
985
- "env": {
986
- "description": "Environment variable override (key=value)",
987
- "name": "env",
988
- "required": false,
989
- "hasDynamicHelp": false,
990
- "multiple": true,
991
- "type": "option"
992
1043
  }
993
1044
  },
994
1045
  "hasDynamicHelp": false,
995
1046
  "hiddenAliases": [],
996
- "id": "run:exec",
1047
+ "id": "branch:set-live",
997
1048
  "pluginAlias": "@xano/cli",
998
1049
  "pluginName": "@xano/cli",
999
1050
  "pluginType": "core",
1000
1051
  "strict": true,
1052
+ "enableJsonFlag": false,
1001
1053
  "isESM": true,
1002
1054
  "relativePath": [
1003
1055
  "dist",
1004
1056
  "commands",
1005
- "run",
1006
- "exec",
1057
+ "branch",
1058
+ "set-live",
1007
1059
  "index.js"
1008
1060
  ]
1009
1061
  },
1010
- "profile:list": {
1062
+ "profile:wizard": {
1011
1063
  "aliases": [],
1012
1064
  "args": {},
1013
- "description": "List all available profile configurations",
1065
+ "description": "Create a new profile configuration using an interactive wizard",
1014
1066
  "examples": [
1015
- "$ xano profile:list\nAvailable profiles:\n - default\n - production\n - staging\n - development\n",
1016
- "$ xano profile:list --details\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n\nProfile: production\n Account Origin: https://account.xano.com\n Instance Origin: https://prod-instance.xano.com\n Access Token: ***...***\n",
1017
- "$ xano profile:list -d\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n"
1067
+ "$ 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"
1018
1068
  ],
1019
1069
  "flags": {
1020
- "details": {
1021
- "char": "d",
1022
- "description": "Show detailed information for each profile",
1023
- "name": "details",
1070
+ "name": {
1071
+ "char": "n",
1072
+ "description": "Profile name (skip prompt if provided)",
1073
+ "name": "name",
1074
+ "required": false,
1075
+ "hasDynamicHelp": false,
1076
+ "multiple": false,
1077
+ "type": "option"
1078
+ },
1079
+ "origin": {
1080
+ "char": "o",
1081
+ "description": "Xano instance origin URL",
1082
+ "name": "origin",
1083
+ "required": false,
1084
+ "default": "https://app.xano.com",
1085
+ "hasDynamicHelp": false,
1086
+ "multiple": false,
1087
+ "type": "option"
1088
+ }
1089
+ },
1090
+ "hasDynamicHelp": false,
1091
+ "hiddenAliases": [],
1092
+ "id": "profile:wizard",
1093
+ "pluginAlias": "@xano/cli",
1094
+ "pluginName": "@xano/cli",
1095
+ "pluginType": "core",
1096
+ "strict": true,
1097
+ "enableJsonFlag": false,
1098
+ "isESM": true,
1099
+ "relativePath": [
1100
+ "dist",
1101
+ "commands",
1102
+ "profile",
1103
+ "wizard",
1104
+ "index.js"
1105
+ ]
1106
+ },
1107
+ "function:edit": {
1108
+ "aliases": [],
1109
+ "args": {
1110
+ "function_id": {
1111
+ "description": "Function ID to edit",
1112
+ "name": "function_id",
1113
+ "required": false
1114
+ }
1115
+ },
1116
+ "description": "Edit a function in a workspace",
1117
+ "examples": [
1118
+ "$ 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",
1119
+ "$ 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",
1120
+ "$ xano function:edit 163 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
1121
+ "$ xano function:edit 163 -w 40 -f function.xs\nFunction updated successfully!\nID: 163\nName: my_function\n",
1122
+ "$ xano function:edit -f function.xs\nSelect a function to edit:\n ❯ my_function (ID: 163) - Sample function\n another-func (ID: 164)\n",
1123
+ "$ 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",
1124
+ "$ cat function.xs | xano function:edit 163 --stdin\nFunction updated successfully!\nID: 163\nName: my_function\n",
1125
+ "$ xano function:edit 163 -f function.xs -o json\n{\n \"id\": 163,\n \"name\": \"my_function\",\n ...\n}\n"
1126
+ ],
1127
+ "flags": {
1128
+ "profile": {
1129
+ "char": "p",
1130
+ "description": "Profile to use for this command",
1131
+ "env": "XANO_PROFILE",
1132
+ "name": "profile",
1133
+ "required": false,
1134
+ "hasDynamicHelp": false,
1135
+ "multiple": false,
1136
+ "type": "option"
1137
+ },
1138
+ "verbose": {
1139
+ "char": "v",
1140
+ "description": "Show detailed request/response information",
1141
+ "env": "XANO_VERBOSE",
1142
+ "name": "verbose",
1143
+ "required": false,
1144
+ "allowNo": false,
1145
+ "type": "boolean"
1146
+ },
1147
+ "edit": {
1148
+ "char": "e",
1149
+ "description": "Open file in editor before updating function (requires --file)",
1150
+ "name": "edit",
1151
+ "required": false,
1152
+ "allowNo": false,
1153
+ "type": "boolean"
1154
+ },
1155
+ "file": {
1156
+ "char": "f",
1157
+ "description": "Path to file containing XanoScript code",
1158
+ "exclusive": [
1159
+ "stdin"
1160
+ ],
1161
+ "name": "file",
1162
+ "required": false,
1163
+ "hasDynamicHelp": false,
1164
+ "multiple": false,
1165
+ "type": "option"
1166
+ },
1167
+ "output": {
1168
+ "char": "o",
1169
+ "description": "Output format",
1170
+ "name": "output",
1171
+ "required": false,
1172
+ "default": "summary",
1173
+ "hasDynamicHelp": false,
1174
+ "multiple": false,
1175
+ "options": [
1176
+ "summary",
1177
+ "json"
1178
+ ],
1179
+ "type": "option"
1180
+ },
1181
+ "publish": {
1182
+ "description": "Publish the function after editing",
1183
+ "name": "publish",
1184
+ "required": false,
1185
+ "allowNo": false,
1186
+ "type": "boolean"
1187
+ },
1188
+ "stdin": {
1189
+ "char": "s",
1190
+ "description": "Read XanoScript code from stdin",
1191
+ "exclusive": [
1192
+ "file"
1193
+ ],
1194
+ "name": "stdin",
1195
+ "required": false,
1196
+ "allowNo": false,
1197
+ "type": "boolean"
1198
+ },
1199
+ "workspace": {
1200
+ "char": "w",
1201
+ "description": "Workspace ID (optional if set in profile)",
1202
+ "name": "workspace",
1203
+ "required": false,
1204
+ "hasDynamicHelp": false,
1205
+ "multiple": false,
1206
+ "type": "option"
1207
+ }
1208
+ },
1209
+ "hasDynamicHelp": false,
1210
+ "hiddenAliases": [],
1211
+ "id": "function:edit",
1212
+ "pluginAlias": "@xano/cli",
1213
+ "pluginName": "@xano/cli",
1214
+ "pluginType": "core",
1215
+ "strict": true,
1216
+ "enableJsonFlag": false,
1217
+ "isESM": true,
1218
+ "relativePath": [
1219
+ "dist",
1220
+ "commands",
1221
+ "function",
1222
+ "edit",
1223
+ "index.js"
1224
+ ]
1225
+ },
1226
+ "function:create": {
1227
+ "aliases": [],
1228
+ "args": {},
1229
+ "description": "Create a new function in a workspace",
1230
+ "examples": [
1231
+ "$ xano function:create -w 40 -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
1232
+ "$ xano function:create -f function.xs\nFunction created successfully!\nID: 123\nName: my_function\n",
1233
+ "$ 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",
1234
+ "$ cat function.xs | xano function:create -w 40 --stdin\nFunction created successfully!\nID: 123\nName: my_function\n",
1235
+ "$ xano function:create -w 40 -f function.xs -o json\n{\n \"id\": 123,\n \"name\": \"my_function\",\n ...\n}\n"
1236
+ ],
1237
+ "flags": {
1238
+ "profile": {
1239
+ "char": "p",
1240
+ "description": "Profile to use for this command",
1241
+ "env": "XANO_PROFILE",
1242
+ "name": "profile",
1243
+ "required": false,
1244
+ "hasDynamicHelp": false,
1245
+ "multiple": false,
1246
+ "type": "option"
1247
+ },
1248
+ "verbose": {
1249
+ "char": "v",
1250
+ "description": "Show detailed request/response information",
1251
+ "env": "XANO_VERBOSE",
1252
+ "name": "verbose",
1253
+ "required": false,
1254
+ "allowNo": false,
1255
+ "type": "boolean"
1256
+ },
1257
+ "edit": {
1258
+ "char": "e",
1259
+ "dependsOn": [
1260
+ "file"
1261
+ ],
1262
+ "description": "Open file in editor before creating function (requires --file)",
1263
+ "name": "edit",
1264
+ "required": false,
1265
+ "allowNo": false,
1266
+ "type": "boolean"
1267
+ },
1268
+ "file": {
1269
+ "char": "f",
1270
+ "description": "Path to file containing XanoScript code",
1271
+ "exclusive": [
1272
+ "stdin"
1273
+ ],
1274
+ "name": "file",
1275
+ "required": false,
1276
+ "hasDynamicHelp": false,
1277
+ "multiple": false,
1278
+ "type": "option"
1279
+ },
1280
+ "output": {
1281
+ "char": "o",
1282
+ "description": "Output format",
1283
+ "name": "output",
1284
+ "required": false,
1285
+ "default": "summary",
1286
+ "hasDynamicHelp": false,
1287
+ "multiple": false,
1288
+ "options": [
1289
+ "summary",
1290
+ "json"
1291
+ ],
1292
+ "type": "option"
1293
+ },
1294
+ "stdin": {
1295
+ "char": "s",
1296
+ "description": "Read XanoScript code from stdin",
1297
+ "exclusive": [
1298
+ "file"
1299
+ ],
1300
+ "name": "stdin",
1301
+ "required": false,
1302
+ "allowNo": false,
1303
+ "type": "boolean"
1304
+ },
1305
+ "workspace": {
1306
+ "char": "w",
1307
+ "description": "Workspace ID (optional if set in profile)",
1308
+ "name": "workspace",
1309
+ "required": false,
1310
+ "hasDynamicHelp": false,
1311
+ "multiple": false,
1312
+ "type": "option"
1313
+ }
1314
+ },
1315
+ "hasDynamicHelp": false,
1316
+ "hiddenAliases": [],
1317
+ "id": "function:create",
1318
+ "pluginAlias": "@xano/cli",
1319
+ "pluginName": "@xano/cli",
1320
+ "pluginType": "core",
1321
+ "strict": true,
1322
+ "enableJsonFlag": false,
1323
+ "isESM": true,
1324
+ "relativePath": [
1325
+ "dist",
1326
+ "commands",
1327
+ "function",
1328
+ "create",
1329
+ "index.js"
1330
+ ]
1331
+ },
1332
+ "function:list": {
1333
+ "aliases": [],
1334
+ "args": {},
1335
+ "description": "List all functions in a workspace from the Xano Metadata API",
1336
+ "examples": [
1337
+ "$ xano function:list -w 40\nAvailable functions:\n - function-1 (ID: 1)\n - function-2 (ID: 2)\n - function-3 (ID: 3)\n",
1338
+ "$ xano function:list --profile production\nAvailable functions:\n - my-function (ID: 1)\n - another-function (ID: 2)\n",
1339
+ "$ xano function:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"function-1\"\n }\n]\n",
1340
+ "$ xano function:list -p staging -o json --include_draft\n[\n {\n \"id\": 1,\n \"name\": \"function-1\"\n }\n]\n"
1341
+ ],
1342
+ "flags": {
1343
+ "profile": {
1344
+ "char": "p",
1345
+ "description": "Profile to use for this command",
1346
+ "env": "XANO_PROFILE",
1347
+ "name": "profile",
1348
+ "required": false,
1349
+ "hasDynamicHelp": false,
1350
+ "multiple": false,
1351
+ "type": "option"
1352
+ },
1353
+ "verbose": {
1354
+ "char": "v",
1355
+ "description": "Show detailed request/response information",
1356
+ "env": "XANO_VERBOSE",
1357
+ "name": "verbose",
1358
+ "required": false,
1359
+ "allowNo": false,
1360
+ "type": "boolean"
1361
+ },
1362
+ "include_draft": {
1363
+ "description": "Include draft functions",
1364
+ "name": "include_draft",
1365
+ "required": false,
1366
+ "allowNo": false,
1367
+ "type": "boolean"
1368
+ },
1369
+ "include_xanoscript": {
1370
+ "description": "Include XanoScript in response",
1371
+ "name": "include_xanoscript",
1372
+ "required": false,
1373
+ "allowNo": false,
1374
+ "type": "boolean"
1375
+ },
1376
+ "order": {
1377
+ "description": "Sort order",
1378
+ "name": "order",
1379
+ "required": false,
1380
+ "default": "desc",
1381
+ "hasDynamicHelp": false,
1382
+ "multiple": false,
1383
+ "options": [
1384
+ "asc",
1385
+ "desc"
1386
+ ],
1387
+ "type": "option"
1388
+ },
1389
+ "output": {
1390
+ "char": "o",
1391
+ "description": "Output format",
1392
+ "name": "output",
1393
+ "required": false,
1394
+ "default": "summary",
1395
+ "hasDynamicHelp": false,
1396
+ "multiple": false,
1397
+ "options": [
1398
+ "summary",
1399
+ "json"
1400
+ ],
1401
+ "type": "option"
1402
+ },
1403
+ "page": {
1404
+ "description": "Page number for pagination",
1405
+ "name": "page",
1406
+ "required": false,
1407
+ "default": 1,
1408
+ "hasDynamicHelp": false,
1409
+ "multiple": false,
1410
+ "type": "option"
1411
+ },
1412
+ "per_page": {
1413
+ "description": "Number of results per page",
1414
+ "name": "per_page",
1415
+ "required": false,
1416
+ "default": 50,
1417
+ "hasDynamicHelp": false,
1418
+ "multiple": false,
1419
+ "type": "option"
1420
+ },
1421
+ "sort": {
1422
+ "description": "Sort field",
1423
+ "name": "sort",
1424
+ "required": false,
1425
+ "default": "created_at",
1426
+ "hasDynamicHelp": false,
1427
+ "multiple": false,
1428
+ "type": "option"
1429
+ },
1430
+ "workspace": {
1431
+ "char": "w",
1432
+ "description": "Workspace ID (optional if set in profile)",
1433
+ "name": "workspace",
1434
+ "required": false,
1435
+ "hasDynamicHelp": false,
1436
+ "multiple": false,
1437
+ "type": "option"
1438
+ }
1439
+ },
1440
+ "hasDynamicHelp": false,
1441
+ "hiddenAliases": [],
1442
+ "id": "function:list",
1443
+ "pluginAlias": "@xano/cli",
1444
+ "pluginName": "@xano/cli",
1445
+ "pluginType": "core",
1446
+ "strict": true,
1447
+ "enableJsonFlag": false,
1448
+ "isESM": true,
1449
+ "relativePath": [
1450
+ "dist",
1451
+ "commands",
1452
+ "function",
1453
+ "list",
1454
+ "index.js"
1455
+ ]
1456
+ },
1457
+ "run:exec": {
1458
+ "aliases": [],
1459
+ "args": {
1460
+ "path": {
1461
+ "description": "Path to file or directory containing XanoScript code (directory creates multidoc from .xs files)",
1462
+ "name": "path",
1463
+ "required": false
1464
+ }
1465
+ },
1466
+ "description": "Execute XanoScript code (job or service)",
1467
+ "examples": [
1468
+ "$ xano run exec script.xs\nExecuted successfully!\n...\n",
1469
+ "$ xano run exec ./my-workspace\n# Executes all .xs files in directory as multidoc\nExecuted successfully!\n...\n",
1470
+ "$ xano run exec script.xs --edit\n# Opens script.xs in $EDITOR, then executes\nExecuted successfully!\n...\n",
1471
+ "$ cat script.xs | xano run exec --stdin\nExecuted successfully!\n...\n",
1472
+ "$ xano run exec script.xs -o json\n{\n \"run\": { ... }\n}\n",
1473
+ "$ xano run exec script.xs -a args.json\n# Executes with input arguments from args.json\nExecuted successfully!\n...\n",
1474
+ "$ xano run exec script.xs --env API_KEY=secret --env DEBUG=true\n# Executes with environment variable overrides\nExecuted successfully!\n...\n"
1475
+ ],
1476
+ "flags": {
1477
+ "profile": {
1478
+ "char": "p",
1479
+ "description": "Profile to use for this command",
1480
+ "env": "XANO_PROFILE",
1481
+ "name": "profile",
1482
+ "required": false,
1483
+ "hasDynamicHelp": false,
1484
+ "multiple": false,
1485
+ "type": "option"
1486
+ },
1487
+ "verbose": {
1488
+ "char": "v",
1489
+ "description": "Show detailed request/response information",
1490
+ "env": "XANO_VERBOSE",
1491
+ "name": "verbose",
1492
+ "required": false,
1493
+ "allowNo": false,
1494
+ "type": "boolean"
1495
+ },
1496
+ "args": {
1497
+ "char": "a",
1498
+ "description": "Path or URL to JSON file containing input arguments",
1499
+ "name": "args",
1500
+ "required": false,
1501
+ "hasDynamicHelp": false,
1502
+ "multiple": false,
1503
+ "type": "option"
1504
+ },
1505
+ "edit": {
1506
+ "char": "e",
1507
+ "description": "Open file in editor before running (requires path argument or --file)",
1508
+ "name": "edit",
1509
+ "required": false,
1510
+ "allowNo": false,
1511
+ "type": "boolean"
1512
+ },
1513
+ "env": {
1514
+ "description": "Environment variable override (key=value)",
1515
+ "name": "env",
1516
+ "required": false,
1517
+ "hasDynamicHelp": false,
1518
+ "multiple": true,
1519
+ "type": "option"
1520
+ },
1521
+ "file": {
1522
+ "char": "f",
1523
+ "description": "Path or URL to file containing XanoScript code (deprecated: use path argument instead)",
1524
+ "exclusive": [
1525
+ "stdin"
1526
+ ],
1527
+ "name": "file",
1528
+ "required": false,
1529
+ "hasDynamicHelp": false,
1530
+ "multiple": false,
1531
+ "type": "option"
1532
+ },
1533
+ "output": {
1534
+ "char": "o",
1535
+ "description": "Output format",
1536
+ "name": "output",
1537
+ "required": false,
1538
+ "default": "summary",
1539
+ "hasDynamicHelp": false,
1540
+ "multiple": false,
1541
+ "options": [
1542
+ "summary",
1543
+ "json"
1544
+ ],
1545
+ "type": "option"
1546
+ },
1547
+ "stdin": {
1548
+ "char": "s",
1549
+ "description": "Read XanoScript code from stdin",
1550
+ "exclusive": [
1551
+ "file"
1552
+ ],
1553
+ "name": "stdin",
1554
+ "required": false,
1555
+ "allowNo": false,
1556
+ "type": "boolean"
1557
+ }
1558
+ },
1559
+ "hasDynamicHelp": false,
1560
+ "hiddenAliases": [],
1561
+ "id": "run:exec",
1562
+ "pluginAlias": "@xano/cli",
1563
+ "pluginName": "@xano/cli",
1564
+ "pluginType": "core",
1565
+ "strict": true,
1566
+ "isESM": true,
1567
+ "relativePath": [
1568
+ "dist",
1569
+ "commands",
1570
+ "run",
1571
+ "exec",
1572
+ "index.js"
1573
+ ]
1574
+ },
1575
+ "run:info": {
1576
+ "aliases": [],
1577
+ "args": {},
1578
+ "description": "Get information about a XanoScript document (type, inputs, env vars)",
1579
+ "examples": [
1580
+ "$ xano run info -f script.xs\nDocument Info:\n Type: job\n Inputs:\n - name (string, required)\n - count (number, optional)\n Environment Variables:\n - API_KEY\n - DEBUG\n",
1581
+ "$ cat script.xs | xano run info --stdin\nDocument Info:\n Type: service\n Inputs: none\n Environment Variables: none\n",
1582
+ "$ xano run info -f script.xs -o json\n{ \"type\": \"job\", \"input\": { \"name\": {...} }, \"env\": [\"API_KEY\"] }\n"
1583
+ ],
1584
+ "flags": {
1585
+ "profile": {
1586
+ "char": "p",
1587
+ "description": "Profile to use for this command",
1588
+ "env": "XANO_PROFILE",
1589
+ "name": "profile",
1590
+ "required": false,
1591
+ "hasDynamicHelp": false,
1592
+ "multiple": false,
1593
+ "type": "option"
1594
+ },
1595
+ "verbose": {
1596
+ "char": "v",
1597
+ "description": "Show detailed request/response information",
1598
+ "env": "XANO_VERBOSE",
1599
+ "name": "verbose",
1600
+ "required": false,
1601
+ "allowNo": false,
1602
+ "type": "boolean"
1603
+ },
1604
+ "file": {
1605
+ "char": "f",
1606
+ "description": "Path or URL to file containing XanoScript code",
1607
+ "exclusive": [
1608
+ "stdin"
1609
+ ],
1610
+ "name": "file",
1611
+ "required": false,
1612
+ "hasDynamicHelp": false,
1613
+ "multiple": false,
1614
+ "type": "option"
1615
+ },
1616
+ "output": {
1617
+ "char": "o",
1618
+ "description": "Output format",
1619
+ "name": "output",
1620
+ "required": false,
1621
+ "default": "summary",
1622
+ "hasDynamicHelp": false,
1623
+ "multiple": false,
1624
+ "options": [
1625
+ "summary",
1626
+ "json"
1627
+ ],
1628
+ "type": "option"
1629
+ },
1630
+ "stdin": {
1631
+ "char": "s",
1632
+ "description": "Read XanoScript code from stdin",
1633
+ "exclusive": [
1634
+ "file"
1635
+ ],
1636
+ "name": "stdin",
1637
+ "required": false,
1638
+ "allowNo": false,
1639
+ "type": "boolean"
1640
+ }
1641
+ },
1642
+ "hasDynamicHelp": false,
1643
+ "hiddenAliases": [],
1644
+ "id": "run:info",
1645
+ "pluginAlias": "@xano/cli",
1646
+ "pluginName": "@xano/cli",
1647
+ "pluginType": "core",
1648
+ "strict": true,
1649
+ "isESM": true,
1650
+ "relativePath": [
1651
+ "dist",
1652
+ "commands",
1653
+ "run",
1654
+ "info",
1655
+ "index.js"
1656
+ ]
1657
+ },
1658
+ "function:get": {
1659
+ "aliases": [],
1660
+ "args": {
1661
+ "function_id": {
1662
+ "description": "Function ID",
1663
+ "name": "function_id",
1664
+ "required": false
1665
+ }
1666
+ },
1667
+ "description": "Get a specific function from a workspace",
1668
+ "examples": [
1669
+ "$ xano function:get 145 -w 40\nFunction: yo (ID: 145)\nCreated: 2025-10-10 10:30:00\nDescription: Sample function\n",
1670
+ "$ xano function:get 145 --profile production\nFunction: yo (ID: 145)\nCreated: 2025-10-10 10:30:00\n",
1671
+ "$ xano function:get\nSelect a function:\n ❯ yo (ID: 145) - Sample function\n another-func (ID: 146)\n",
1672
+ "$ xano function:get 145 -w 40 --output json\n{\n \"id\": 145,\n \"name\": \"yo\",\n \"description\": \"Sample function\"\n}\n",
1673
+ "$ xano function:get 145 -p staging -o json --include_draft\n{\n \"id\": 145,\n \"name\": \"yo\"\n}\n",
1674
+ "$ xano function:get 145 -p staging -o xs\nfunction yo {\n input {\n }\n stack {\n }\n response = null\n}\n"
1675
+ ],
1676
+ "flags": {
1677
+ "profile": {
1678
+ "char": "p",
1679
+ "description": "Profile to use for this command",
1680
+ "env": "XANO_PROFILE",
1681
+ "name": "profile",
1682
+ "required": false,
1683
+ "hasDynamicHelp": false,
1684
+ "multiple": false,
1685
+ "type": "option"
1686
+ },
1687
+ "verbose": {
1688
+ "char": "v",
1689
+ "description": "Show detailed request/response information",
1690
+ "env": "XANO_VERBOSE",
1691
+ "name": "verbose",
1692
+ "required": false,
1693
+ "allowNo": false,
1694
+ "type": "boolean"
1695
+ },
1696
+ "include_draft": {
1697
+ "description": "Include draft version",
1698
+ "name": "include_draft",
1699
+ "required": false,
1700
+ "allowNo": false,
1701
+ "type": "boolean"
1702
+ },
1703
+ "include_xanoscript": {
1704
+ "description": "Include XanoScript in response",
1705
+ "name": "include_xanoscript",
1706
+ "required": false,
1707
+ "allowNo": false,
1708
+ "type": "boolean"
1709
+ },
1710
+ "output": {
1711
+ "char": "o",
1712
+ "description": "Output format",
1713
+ "name": "output",
1714
+ "required": false,
1715
+ "default": "summary",
1716
+ "hasDynamicHelp": false,
1717
+ "multiple": false,
1718
+ "options": [
1719
+ "summary",
1720
+ "json",
1721
+ "xs"
1722
+ ],
1723
+ "type": "option"
1724
+ },
1725
+ "workspace": {
1726
+ "char": "w",
1727
+ "description": "Workspace ID (optional if set in profile)",
1728
+ "name": "workspace",
1729
+ "required": false,
1730
+ "hasDynamicHelp": false,
1731
+ "multiple": false,
1732
+ "type": "option"
1733
+ }
1734
+ },
1735
+ "hasDynamicHelp": false,
1736
+ "hiddenAliases": [],
1737
+ "id": "function:get",
1738
+ "pluginAlias": "@xano/cli",
1739
+ "pluginName": "@xano/cli",
1740
+ "pluginType": "core",
1741
+ "strict": true,
1742
+ "enableJsonFlag": false,
1743
+ "isESM": true,
1744
+ "relativePath": [
1745
+ "dist",
1746
+ "commands",
1747
+ "function",
1748
+ "get",
1749
+ "index.js"
1750
+ ]
1751
+ },
1752
+ "workspace:create": {
1753
+ "aliases": [],
1754
+ "args": {},
1755
+ "description": "Create a new workspace via the Xano Metadata API",
1756
+ "examples": [
1757
+ "$ xano workspace create --name \"my-workspace\"\nCreated workspace: my-workspace (ID: 123)\n",
1758
+ "$ xano workspace create --name \"my-app\" --description \"My application workspace\"\nCreated workspace: my-app (ID: 456)\n Description: My application workspace\n",
1759
+ "$ xano workspace create -n \"new-project\" -d \"New project workspace\" -o json\n{\n \"id\": 789,\n \"name\": \"new-project\",\n \"description\": \"New project workspace\"\n}\n"
1760
+ ],
1761
+ "flags": {
1762
+ "profile": {
1763
+ "char": "p",
1764
+ "description": "Profile to use for this command",
1765
+ "env": "XANO_PROFILE",
1766
+ "name": "profile",
1767
+ "required": false,
1768
+ "hasDynamicHelp": false,
1769
+ "multiple": false,
1770
+ "type": "option"
1771
+ },
1772
+ "verbose": {
1773
+ "char": "v",
1774
+ "description": "Show detailed request/response information",
1775
+ "env": "XANO_VERBOSE",
1776
+ "name": "verbose",
1777
+ "required": false,
1778
+ "allowNo": false,
1779
+ "type": "boolean"
1780
+ },
1781
+ "description": {
1782
+ "char": "d",
1783
+ "description": "Description for the workspace",
1784
+ "name": "description",
1785
+ "required": false,
1786
+ "hasDynamicHelp": false,
1787
+ "multiple": false,
1788
+ "type": "option"
1789
+ },
1790
+ "name": {
1791
+ "char": "n",
1792
+ "description": "Name of the workspace",
1793
+ "name": "name",
1794
+ "required": true,
1795
+ "hasDynamicHelp": false,
1796
+ "multiple": false,
1797
+ "type": "option"
1798
+ },
1799
+ "output": {
1800
+ "char": "o",
1801
+ "description": "Output format",
1802
+ "name": "output",
1803
+ "required": false,
1804
+ "default": "summary",
1805
+ "hasDynamicHelp": false,
1806
+ "multiple": false,
1807
+ "options": [
1808
+ "summary",
1809
+ "json"
1810
+ ],
1811
+ "type": "option"
1812
+ }
1813
+ },
1814
+ "hasDynamicHelp": false,
1815
+ "hiddenAliases": [],
1816
+ "id": "workspace:create",
1817
+ "pluginAlias": "@xano/cli",
1818
+ "pluginName": "@xano/cli",
1819
+ "pluginType": "core",
1820
+ "strict": true,
1821
+ "enableJsonFlag": false,
1822
+ "isESM": true,
1823
+ "relativePath": [
1824
+ "dist",
1825
+ "commands",
1826
+ "workspace",
1827
+ "create",
1828
+ "index.js"
1829
+ ]
1830
+ },
1831
+ "static_host:list": {
1832
+ "aliases": [],
1833
+ "args": {},
1834
+ "description": "List all static hosts in a workspace from the Xano Metadata API",
1835
+ "examples": [
1836
+ "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1837
+ "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1838
+ "$ 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",
1839
+ "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
1840
+ ],
1841
+ "flags": {
1842
+ "profile": {
1843
+ "char": "p",
1844
+ "description": "Profile to use for this command",
1845
+ "env": "XANO_PROFILE",
1846
+ "name": "profile",
1847
+ "required": false,
1848
+ "hasDynamicHelp": false,
1849
+ "multiple": false,
1850
+ "type": "option"
1851
+ },
1852
+ "verbose": {
1853
+ "char": "v",
1854
+ "description": "Show detailed request/response information",
1855
+ "env": "XANO_VERBOSE",
1856
+ "name": "verbose",
1857
+ "required": false,
1858
+ "allowNo": false,
1859
+ "type": "boolean"
1860
+ },
1861
+ "output": {
1862
+ "char": "o",
1863
+ "description": "Output format",
1864
+ "name": "output",
1865
+ "required": false,
1866
+ "default": "summary",
1867
+ "hasDynamicHelp": false,
1868
+ "multiple": false,
1869
+ "options": [
1870
+ "summary",
1871
+ "json"
1872
+ ],
1873
+ "type": "option"
1874
+ },
1875
+ "page": {
1876
+ "description": "Page number for pagination",
1877
+ "name": "page",
1878
+ "required": false,
1879
+ "default": 1,
1880
+ "hasDynamicHelp": false,
1881
+ "multiple": false,
1882
+ "type": "option"
1883
+ },
1884
+ "per_page": {
1885
+ "description": "Number of results per page",
1886
+ "name": "per_page",
1024
1887
  "required": false,
1025
- "allowNo": false,
1026
- "type": "boolean"
1888
+ "default": 50,
1889
+ "hasDynamicHelp": false,
1890
+ "multiple": false,
1891
+ "type": "option"
1892
+ },
1893
+ "workspace": {
1894
+ "char": "w",
1895
+ "description": "Workspace ID (optional if set in profile)",
1896
+ "name": "workspace",
1897
+ "required": false,
1898
+ "hasDynamicHelp": false,
1899
+ "multiple": false,
1900
+ "type": "option"
1027
1901
  }
1028
1902
  },
1029
1903
  "hasDynamicHelp": false,
1030
1904
  "hiddenAliases": [],
1031
- "id": "profile:list",
1905
+ "id": "static_host:list",
1032
1906
  "pluginAlias": "@xano/cli",
1033
1907
  "pluginName": "@xano/cli",
1034
1908
  "pluginType": "core",
@@ -1038,19 +1912,26 @@
1038
1912
  "relativePath": [
1039
1913
  "dist",
1040
1914
  "commands",
1041
- "profile",
1915
+ "static_host",
1042
1916
  "list",
1043
1917
  "index.js"
1044
1918
  ]
1045
1919
  },
1046
- "run:info": {
1920
+ "workspace:edit": {
1047
1921
  "aliases": [],
1048
- "args": {},
1049
- "description": "Get information about a XanoScript document (type, inputs, env vars)",
1922
+ "args": {
1923
+ "workspace_id": {
1924
+ "description": "Workspace ID to edit (uses profile workspace if not provided)",
1925
+ "name": "workspace_id",
1926
+ "required": false
1927
+ }
1928
+ },
1929
+ "description": "Edit an existing workspace via the Xano Metadata API",
1050
1930
  "examples": [
1051
- "$ xano run info -f script.xs\nDocument Info:\n Type: job\n Inputs:\n - name (string, required)\n - count (number, optional)\n Environment Variables:\n - API_KEY\n - DEBUG\n",
1052
- "$ cat script.xs | xano run info --stdin\nDocument Info:\n Type: service\n Inputs: none\n Environment Variables: none\n",
1053
- "$ xano run info -f script.xs -o json\n{ \"type\": \"job\", \"input\": { \"name\": {...} }, \"env\": [\"API_KEY\"] }\n"
1931
+ "$ xano workspace edit 123 --name \"new-name\"\nUpdated workspace: new-name (ID: 123)\n",
1932
+ "$ xano workspace edit --name \"updated-workspace\" --description \"Updated description\"\nUpdated workspace: updated-workspace (ID: 123)\n Description: Updated description\n",
1933
+ "$ xano workspace edit 123 --swagger --require-token\nUpdated workspace: my-workspace (ID: 123)\n Swagger: enabled\n Require Token: true\n",
1934
+ "$ xano workspace edit 123 --no-swagger -o json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"swagger\": false\n}\n"
1054
1935
  ],
1055
1936
  "flags": {
1056
1937
  "profile": {
@@ -1063,28 +1944,32 @@
1063
1944
  "multiple": false,
1064
1945
  "type": "option"
1065
1946
  },
1066
- "file": {
1067
- "char": "f",
1068
- "description": "Path or URL to file containing XanoScript code",
1069
- "exclusive": [
1070
- "stdin"
1071
- ],
1072
- "name": "file",
1947
+ "verbose": {
1948
+ "char": "v",
1949
+ "description": "Show detailed request/response information",
1950
+ "env": "XANO_VERBOSE",
1951
+ "name": "verbose",
1952
+ "required": false,
1953
+ "allowNo": false,
1954
+ "type": "boolean"
1955
+ },
1956
+ "description": {
1957
+ "char": "d",
1958
+ "description": "New description for the workspace",
1959
+ "name": "description",
1073
1960
  "required": false,
1074
1961
  "hasDynamicHelp": false,
1075
1962
  "multiple": false,
1076
1963
  "type": "option"
1077
1964
  },
1078
- "stdin": {
1079
- "char": "s",
1080
- "description": "Read XanoScript code from stdin",
1081
- "exclusive": [
1082
- "file"
1083
- ],
1084
- "name": "stdin",
1965
+ "name": {
1966
+ "char": "n",
1967
+ "description": "New name for the workspace",
1968
+ "name": "name",
1085
1969
  "required": false,
1086
- "allowNo": false,
1087
- "type": "boolean"
1970
+ "hasDynamicHelp": false,
1971
+ "multiple": false,
1972
+ "type": "option"
1088
1973
  },
1089
1974
  "output": {
1090
1975
  "char": "o",
@@ -1099,33 +1984,48 @@
1099
1984
  "json"
1100
1985
  ],
1101
1986
  "type": "option"
1987
+ },
1988
+ "require-token": {
1989
+ "description": "Whether to require a token for documentation access",
1990
+ "name": "require-token",
1991
+ "required": false,
1992
+ "allowNo": true,
1993
+ "type": "boolean"
1994
+ },
1995
+ "swagger": {
1996
+ "description": "Enable or disable swagger documentation",
1997
+ "name": "swagger",
1998
+ "required": false,
1999
+ "allowNo": true,
2000
+ "type": "boolean"
1102
2001
  }
1103
2002
  },
1104
2003
  "hasDynamicHelp": false,
1105
2004
  "hiddenAliases": [],
1106
- "id": "run:info",
2005
+ "id": "workspace:edit",
1107
2006
  "pluginAlias": "@xano/cli",
1108
2007
  "pluginName": "@xano/cli",
1109
2008
  "pluginType": "core",
1110
2009
  "strict": true,
2010
+ "enableJsonFlag": false,
1111
2011
  "isESM": true,
1112
2012
  "relativePath": [
1113
2013
  "dist",
1114
2014
  "commands",
1115
- "run",
1116
- "info",
2015
+ "workspace",
2016
+ "edit",
1117
2017
  "index.js"
1118
2018
  ]
1119
2019
  },
1120
- "static_host:list": {
2020
+ "workspace:list": {
1121
2021
  "aliases": [],
1122
2022
  "args": {},
1123
- "description": "List all static hosts in a workspace from the Xano Metadata API",
2023
+ "description": "List all workspaces from the Xano Metadata API",
1124
2024
  "examples": [
1125
- "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1126
- "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1127
- "$ 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",
1128
- "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2025
+ "$ xano workspace:list\nAvailable workspaces:\n - workspace-1 (ID: 1)\n - workspace-2 (ID: 2)\n - workspace-3 (ID: 3)\n",
2026
+ "$ xano workspace:list --profile production\nAvailable workspaces:\n - my-app (ID: 1)\n - staging-env (ID: 2)\n",
2027
+ "$ xano workspace:list --output json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"workspace-1\"\n },\n {\n \"id\": 2,\n \"name\": \"workspace-2\"\n }\n ]\n}\n",
2028
+ "$ xano workspace:list -p staging -o json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"my-app\"\n }\n ]\n}\n"
1129
2029
  ],
1130
2030
  "flags": {
1131
2031
  "profile": {
@@ -1138,14 +2038,14 @@
1138
2038
  "multiple": false,
1139
2039
  "type": "option"
1140
2040
  },
1141
- "workspace": {
1142
- "char": "w",
1143
- "description": "Workspace ID (optional if set in profile)",
1144
- "name": "workspace",
2041
+ "verbose": {
2042
+ "char": "v",
2043
+ "description": "Show detailed request/response information",
2044
+ "env": "XANO_VERBOSE",
2045
+ "name": "verbose",
1145
2046
  "required": false,
1146
- "hasDynamicHelp": false,
1147
- "multiple": false,
1148
- "type": "option"
2047
+ "allowNo": false,
2048
+ "type": "boolean"
1149
2049
  },
1150
2050
  "output": {
1151
2051
  "char": "o",
@@ -1160,29 +2060,11 @@
1160
2060
  "json"
1161
2061
  ],
1162
2062
  "type": "option"
1163
- },
1164
- "page": {
1165
- "description": "Page number for pagination",
1166
- "name": "page",
1167
- "required": false,
1168
- "default": 1,
1169
- "hasDynamicHelp": false,
1170
- "multiple": false,
1171
- "type": "option"
1172
- },
1173
- "per_page": {
1174
- "description": "Number of results per page",
1175
- "name": "per_page",
1176
- "required": false,
1177
- "default": 50,
1178
- "hasDynamicHelp": false,
1179
- "multiple": false,
1180
- "type": "option"
1181
2063
  }
1182
2064
  },
1183
2065
  "hasDynamicHelp": false,
1184
2066
  "hiddenAliases": [],
1185
- "id": "static_host:list",
2067
+ "id": "workspace:list",
1186
2068
  "pluginAlias": "@xano/cli",
1187
2069
  "pluginName": "@xano/cli",
1188
2070
  "pluginType": "core",
@@ -1192,20 +2074,25 @@
1192
2074
  "relativePath": [
1193
2075
  "dist",
1194
2076
  "commands",
1195
- "static_host",
2077
+ "workspace",
1196
2078
  "list",
1197
2079
  "index.js"
1198
2080
  ]
1199
2081
  },
1200
- "workspace:list": {
2082
+ "workspace:get": {
1201
2083
  "aliases": [],
1202
- "args": {},
1203
- "description": "List all workspaces from the Xano Metadata API",
2084
+ "args": {
2085
+ "workspace_id": {
2086
+ "description": "Workspace ID to get details for (uses profile workspace if not provided)",
2087
+ "name": "workspace_id",
2088
+ "required": false
2089
+ }
2090
+ },
2091
+ "description": "Get details of a specific workspace from the Xano Metadata API",
1204
2092
  "examples": [
1205
- "$ xano workspace:list\nAvailable workspaces:\n - workspace-1 (ID: 1)\n - workspace-2 (ID: 2)\n - workspace-3 (ID: 3)\n",
1206
- "$ xano workspace:list --profile production\nAvailable workspaces:\n - my-app (ID: 1)\n - staging-env (ID: 2)\n",
1207
- "$ xano workspace:list --output json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"workspace-1\"\n },\n {\n \"id\": 2,\n \"name\": \"workspace-2\"\n }\n ]\n}\n",
1208
- "$ xano workspace:list -p staging -o json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"my-app\"\n }\n ]\n}\n"
2093
+ "$ xano workspace get 123\nWorkspace: my-workspace (ID: 123)\n Description: My workspace description\n Created: 2024-01-15\n",
2094
+ "$ xano workspace get --output json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"description\": \"My workspace description\"\n}\n",
2095
+ "$ xano workspace get 456 -p production -o json\n{\n \"id\": 456,\n \"name\": \"production-workspace\"\n}\n"
1209
2096
  ],
1210
2097
  "flags": {
1211
2098
  "profile": {
@@ -1218,6 +2105,15 @@
1218
2105
  "multiple": false,
1219
2106
  "type": "option"
1220
2107
  },
2108
+ "verbose": {
2109
+ "char": "v",
2110
+ "description": "Show detailed request/response information",
2111
+ "env": "XANO_VERBOSE",
2112
+ "name": "verbose",
2113
+ "required": false,
2114
+ "allowNo": false,
2115
+ "type": "boolean"
2116
+ },
1221
2117
  "output": {
1222
2118
  "char": "o",
1223
2119
  "description": "Output format",
@@ -1235,7 +2131,7 @@
1235
2131
  },
1236
2132
  "hasDynamicHelp": false,
1237
2133
  "hiddenAliases": [],
1238
- "id": "workspace:list",
2134
+ "id": "workspace:get",
1239
2135
  "pluginAlias": "@xano/cli",
1240
2136
  "pluginName": "@xano/cli",
1241
2137
  "pluginType": "core",
@@ -1246,7 +2142,7 @@
1246
2142
  "dist",
1247
2143
  "commands",
1248
2144
  "workspace",
1249
- "list",
2145
+ "get",
1250
2146
  "index.js"
1251
2147
  ]
1252
2148
  },
@@ -1263,7 +2159,8 @@
1263
2159
  "examples": [
1264
2160
  "$ xano workspace pull ./my-workspace\nPulled 42 documents to ./my-workspace\n",
1265
2161
  "$ xano workspace pull ./output -w 40\nPulled 15 documents to ./output\n",
1266
- "$ xano workspace pull ./backup --profile production --env --records\nPulled 58 documents to ./backup\n"
2162
+ "$ xano workspace pull ./backup --profile production --env --records\nPulled 58 documents to ./backup\n",
2163
+ "$ xano workspace pull ./my-workspace -b dev\nPulled 42 documents to ./my-workspace\n"
1267
2164
  ],
1268
2165
  "flags": {
1269
2166
  "profile": {
@@ -1276,10 +2173,19 @@
1276
2173
  "multiple": false,
1277
2174
  "type": "option"
1278
2175
  },
1279
- "workspace": {
1280
- "char": "w",
1281
- "description": "Workspace ID (optional if set in profile)",
1282
- "name": "workspace",
2176
+ "verbose": {
2177
+ "char": "v",
2178
+ "description": "Show detailed request/response information",
2179
+ "env": "XANO_VERBOSE",
2180
+ "name": "verbose",
2181
+ "required": false,
2182
+ "allowNo": false,
2183
+ "type": "boolean"
2184
+ },
2185
+ "branch": {
2186
+ "char": "b",
2187
+ "description": "Branch name (optional if set in profile, defaults to live)",
2188
+ "name": "branch",
1283
2189
  "required": false,
1284
2190
  "hasDynamicHelp": false,
1285
2191
  "multiple": false,
@@ -1298,6 +2204,15 @@
1298
2204
  "required": false,
1299
2205
  "allowNo": false,
1300
2206
  "type": "boolean"
2207
+ },
2208
+ "workspace": {
2209
+ "char": "w",
2210
+ "description": "Workspace ID (optional if set in profile)",
2211
+ "name": "workspace",
2212
+ "required": false,
2213
+ "hasDynamicHelp": false,
2214
+ "multiple": false,
2215
+ "type": "option"
1301
2216
  }
1302
2217
  },
1303
2218
  "hasDynamicHelp": false,
@@ -1330,7 +2245,8 @@
1330
2245
  "examples": [
1331
2246
  "$ xano workspace push ./my-workspace\nPushed 42 documents from ./my-workspace\n",
1332
2247
  "$ xano workspace push ./output -w 40\nPushed 15 documents from ./output\n",
1333
- "$ xano workspace push ./backup --profile production\nPushed 58 documents from ./backup\n"
2248
+ "$ xano workspace push ./backup --profile production\nPushed 58 documents from ./backup\n",
2249
+ "$ xano workspace push ./my-workspace -b dev\nPushed 42 documents from ./my-workspace\n"
1334
2250
  ],
1335
2251
  "flags": {
1336
2252
  "profile": {
@@ -1343,6 +2259,24 @@
1343
2259
  "multiple": false,
1344
2260
  "type": "option"
1345
2261
  },
2262
+ "verbose": {
2263
+ "char": "v",
2264
+ "description": "Show detailed request/response information",
2265
+ "env": "XANO_VERBOSE",
2266
+ "name": "verbose",
2267
+ "required": false,
2268
+ "allowNo": false,
2269
+ "type": "boolean"
2270
+ },
2271
+ "branch": {
2272
+ "char": "b",
2273
+ "description": "Branch name (optional if set in profile, defaults to live)",
2274
+ "name": "branch",
2275
+ "required": false,
2276
+ "hasDynamicHelp": false,
2277
+ "multiple": false,
2278
+ "type": "option"
2279
+ },
1346
2280
  "workspace": {
1347
2281
  "char": "w",
1348
2282
  "description": "Workspace ID (optional if set in profile)",
@@ -1395,6 +2329,15 @@
1395
2329
  "multiple": false,
1396
2330
  "type": "option"
1397
2331
  },
2332
+ "verbose": {
2333
+ "char": "v",
2334
+ "description": "Show detailed request/response information",
2335
+ "env": "XANO_VERBOSE",
2336
+ "name": "verbose",
2337
+ "required": false,
2338
+ "allowNo": false,
2339
+ "type": "boolean"
2340
+ },
1398
2341
  "force": {
1399
2342
  "char": "f",
1400
2343
  "description": "Skip confirmation prompt",
@@ -1421,6 +2364,81 @@
1421
2364
  "index.js"
1422
2365
  ]
1423
2366
  },
2367
+ "workspace:delete": {
2368
+ "aliases": [],
2369
+ "args": {
2370
+ "workspace_id": {
2371
+ "description": "Workspace ID to delete",
2372
+ "name": "workspace_id",
2373
+ "required": true
2374
+ }
2375
+ },
2376
+ "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
2377
+ "examples": [
2378
+ "$ 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",
2379
+ "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
2380
+ "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
2381
+ ],
2382
+ "flags": {
2383
+ "profile": {
2384
+ "char": "p",
2385
+ "description": "Profile to use for this command",
2386
+ "env": "XANO_PROFILE",
2387
+ "name": "profile",
2388
+ "required": false,
2389
+ "hasDynamicHelp": false,
2390
+ "multiple": false,
2391
+ "type": "option"
2392
+ },
2393
+ "verbose": {
2394
+ "char": "v",
2395
+ "description": "Show detailed request/response information",
2396
+ "env": "XANO_VERBOSE",
2397
+ "name": "verbose",
2398
+ "required": false,
2399
+ "allowNo": false,
2400
+ "type": "boolean"
2401
+ },
2402
+ "force": {
2403
+ "char": "f",
2404
+ "description": "Skip confirmation prompt",
2405
+ "name": "force",
2406
+ "required": false,
2407
+ "allowNo": false,
2408
+ "type": "boolean"
2409
+ },
2410
+ "output": {
2411
+ "char": "o",
2412
+ "description": "Output format",
2413
+ "name": "output",
2414
+ "required": false,
2415
+ "default": "summary",
2416
+ "hasDynamicHelp": false,
2417
+ "multiple": false,
2418
+ "options": [
2419
+ "summary",
2420
+ "json"
2421
+ ],
2422
+ "type": "option"
2423
+ }
2424
+ },
2425
+ "hasDynamicHelp": false,
2426
+ "hiddenAliases": [],
2427
+ "id": "workspace:delete",
2428
+ "pluginAlias": "@xano/cli",
2429
+ "pluginName": "@xano/cli",
2430
+ "pluginType": "core",
2431
+ "strict": true,
2432
+ "enableJsonFlag": false,
2433
+ "isESM": true,
2434
+ "relativePath": [
2435
+ "dist",
2436
+ "commands",
2437
+ "workspace",
2438
+ "delete",
2439
+ "index.js"
2440
+ ]
2441
+ },
1424
2442
  "run:env:get": {
1425
2443
  "aliases": [],
1426
2444
  "args": {
@@ -1446,6 +2464,15 @@
1446
2464
  "multiple": false,
1447
2465
  "type": "option"
1448
2466
  },
2467
+ "verbose": {
2468
+ "char": "v",
2469
+ "description": "Show detailed request/response information",
2470
+ "env": "XANO_VERBOSE",
2471
+ "name": "verbose",
2472
+ "required": false,
2473
+ "allowNo": false,
2474
+ "type": "boolean"
2475
+ },
1449
2476
  "output": {
1450
2477
  "char": "o",
1451
2478
  "description": "Output format",
@@ -1497,6 +2524,15 @@
1497
2524
  "multiple": false,
1498
2525
  "type": "option"
1499
2526
  },
2527
+ "verbose": {
2528
+ "char": "v",
2529
+ "description": "Show detailed request/response information",
2530
+ "env": "XANO_VERBOSE",
2531
+ "name": "verbose",
2532
+ "required": false,
2533
+ "allowNo": false,
2534
+ "type": "boolean"
2535
+ },
1500
2536
  "output": {
1501
2537
  "char": "o",
1502
2538
  "description": "Output format",
@@ -1529,19 +2565,24 @@
1529
2565
  "index.js"
1530
2566
  ]
1531
2567
  },
1532
- "run:projects:delete": {
2568
+ "run:env:set": {
1533
2569
  "aliases": [],
1534
2570
  "args": {
1535
- "projectId": {
1536
- "description": "Project ID to delete",
1537
- "name": "projectId",
2571
+ "name": {
2572
+ "description": "Environment variable name",
2573
+ "name": "name",
2574
+ "required": true
2575
+ },
2576
+ "value": {
2577
+ "description": "Environment variable value",
2578
+ "name": "value",
1538
2579
  "required": true
1539
2580
  }
1540
2581
  },
1541
- "description": "Delete a project",
2582
+ "description": "Set an environment variable",
1542
2583
  "examples": [
1543
- "$ xano run projects delete abc123-def456\nAre you sure you want to delete project 'abc123-def456'? (y/N)\nProject deleted successfully!\n",
1544
- "$ xano run projects delete abc123-def456 --force\nProject deleted successfully!\n"
2584
+ "$ xano run env set API_KEY my-secret-key\nEnvironment variable 'API_KEY' set successfully!\n",
2585
+ "$ xano run env set DATABASE_URL \"postgres://user:pass@host/db\"\nEnvironment variable 'DATABASE_URL' set successfully!\n"
1545
2586
  ],
1546
2587
  "flags": {
1547
2588
  "profile": {
@@ -1554,10 +2595,11 @@
1554
2595
  "multiple": false,
1555
2596
  "type": "option"
1556
2597
  },
1557
- "force": {
1558
- "char": "f",
1559
- "description": "Skip confirmation prompt",
1560
- "name": "force",
2598
+ "verbose": {
2599
+ "char": "v",
2600
+ "description": "Show detailed request/response information",
2601
+ "env": "XANO_VERBOSE",
2602
+ "name": "verbose",
1561
2603
  "required": false,
1562
2604
  "allowNo": false,
1563
2605
  "type": "boolean"
@@ -1565,7 +2607,7 @@
1565
2607
  },
1566
2608
  "hasDynamicHelp": false,
1567
2609
  "hiddenAliases": [],
1568
- "id": "run:projects:delete",
2610
+ "id": "run:env:set",
1569
2611
  "pluginAlias": "@xano/cli",
1570
2612
  "pluginName": "@xano/cli",
1571
2613
  "pluginType": "core",
@@ -1575,18 +2617,18 @@
1575
2617
  "dist",
1576
2618
  "commands",
1577
2619
  "run",
1578
- "projects",
1579
- "delete",
2620
+ "env",
2621
+ "set",
1580
2622
  "index.js"
1581
2623
  ]
1582
2624
  },
1583
- "run:projects:list": {
2625
+ "run:secrets:list": {
1584
2626
  "aliases": [],
1585
2627
  "args": {},
1586
- "description": "List all projects",
2628
+ "description": "List all secret keys",
1587
2629
  "examples": [
1588
- "$ xano run projects list\nID NAME ACCESS\nabc123-def456-ghi789 My Project private\nxyz789-uvw456-rst123 Test Project public\n",
1589
- "$ xano run projects list -o json\n[\n { \"id\": \"abc123-def456-ghi789\", \"name\": \"My Project\", ... }\n]\n"
2630
+ "$ xano run secrets list\nNAME TYPE REPO\ndocker-registry kubernetes.io/dockerconfigjson ghcr.io\nservice-account kubernetes.io/service-account-token -\n",
2631
+ "$ xano run secrets list -o json\n{ \"secrets\": [{ \"name\": \"docker-registry\", \"type\": \"kubernetes.io/dockerconfigjson\", \"repo\": \"ghcr.io\" }] }\n"
1590
2632
  ],
1591
2633
  "flags": {
1592
2634
  "profile": {
@@ -1599,6 +2641,15 @@
1599
2641
  "multiple": false,
1600
2642
  "type": "option"
1601
2643
  },
2644
+ "verbose": {
2645
+ "char": "v",
2646
+ "description": "Show detailed request/response information",
2647
+ "env": "XANO_VERBOSE",
2648
+ "name": "verbose",
2649
+ "required": false,
2650
+ "allowNo": false,
2651
+ "type": "boolean"
2652
+ },
1602
2653
  "output": {
1603
2654
  "char": "o",
1604
2655
  "description": "Output format",
@@ -1616,7 +2667,7 @@
1616
2667
  },
1617
2668
  "hasDynamicHelp": false,
1618
2669
  "hiddenAliases": [],
1619
- "id": "run:projects:list",
2670
+ "id": "run:secrets:list",
1620
2671
  "pluginAlias": "@xano/cli",
1621
2672
  "pluginName": "@xano/cli",
1622
2673
  "pluginType": "core",
@@ -1626,19 +2677,24 @@
1626
2677
  "dist",
1627
2678
  "commands",
1628
2679
  "run",
1629
- "projects",
2680
+ "secrets",
1630
2681
  "list",
1631
2682
  "index.js"
1632
2683
  ]
1633
2684
  },
1634
- "run:projects:create": {
2685
+ "run:secrets:get": {
1635
2686
  "aliases": [],
1636
- "args": {},
1637
- "description": "Create a new project",
2687
+ "args": {
2688
+ "name": {
2689
+ "description": "Secret name",
2690
+ "name": "name",
2691
+ "required": true
2692
+ }
2693
+ },
2694
+ "description": "Get a secret value",
1638
2695
  "examples": [
1639
- "$ xano run projects create -n \"My Project\"\nProject created successfully!\n ID: abc123-def456-ghi789\n Name: My Project\n",
1640
- "$ xano run projects create -n \"My Project\" -d \"Description here\"\nProject created successfully!\n ID: abc123-def456-ghi789\n Name: My Project\n",
1641
- "$ xano run projects create -n \"My Project\" -o json\n{ \"id\": \"abc123-def456-ghi789\", \"name\": \"My Project\", ... }\n"
2696
+ "$ xano run secrets get docker-registry\n{\"auths\":{\"ghcr.io\":{\"auth\":\"...\"}}}\n",
2697
+ "$ xano run secrets get docker-registry -o json\n{ \"name\": \"docker-registry\", \"type\": \"kubernetes.io/dockerconfigjson\", \"value\": \"...\" }\n"
1642
2698
  ],
1643
2699
  "flags": {
1644
2700
  "profile": {
@@ -1651,35 +2707,25 @@
1651
2707
  "multiple": false,
1652
2708
  "type": "option"
1653
2709
  },
1654
- "name": {
1655
- "char": "n",
1656
- "description": "Project name",
1657
- "name": "name",
1658
- "required": true,
1659
- "hasDynamicHelp": false,
1660
- "multiple": false,
1661
- "type": "option"
1662
- },
1663
- "description": {
1664
- "char": "d",
1665
- "description": "Project description",
1666
- "name": "description",
2710
+ "verbose": {
2711
+ "char": "v",
2712
+ "description": "Show detailed request/response information",
2713
+ "env": "XANO_VERBOSE",
2714
+ "name": "verbose",
1667
2715
  "required": false,
1668
- "default": "",
1669
- "hasDynamicHelp": false,
1670
- "multiple": false,
1671
- "type": "option"
2716
+ "allowNo": false,
2717
+ "type": "boolean"
1672
2718
  },
1673
2719
  "output": {
1674
2720
  "char": "o",
1675
2721
  "description": "Output format",
1676
2722
  "name": "output",
1677
2723
  "required": false,
1678
- "default": "summary",
2724
+ "default": "value",
1679
2725
  "hasDynamicHelp": false,
1680
2726
  "multiple": false,
1681
2727
  "options": [
1682
- "summary",
2728
+ "value",
1683
2729
  "json"
1684
2730
  ],
1685
2731
  "type": "option"
@@ -1687,7 +2733,7 @@
1687
2733
  },
1688
2734
  "hasDynamicHelp": false,
1689
2735
  "hiddenAliases": [],
1690
- "id": "run:projects:create",
2736
+ "id": "run:secrets:get",
1691
2737
  "pluginAlias": "@xano/cli",
1692
2738
  "pluginName": "@xano/cli",
1693
2739
  "pluginType": "core",
@@ -1697,29 +2743,24 @@
1697
2743
  "dist",
1698
2744
  "commands",
1699
2745
  "run",
1700
- "projects",
1701
- "create",
2746
+ "secrets",
2747
+ "get",
1702
2748
  "index.js"
1703
2749
  ]
1704
2750
  },
1705
- "run:env:set": {
2751
+ "run:secrets:set": {
1706
2752
  "aliases": [],
1707
2753
  "args": {
1708
2754
  "name": {
1709
- "description": "Environment variable name",
2755
+ "description": "Secret name",
1710
2756
  "name": "name",
1711
2757
  "required": true
1712
- },
1713
- "value": {
1714
- "description": "Environment variable value",
1715
- "name": "value",
1716
- "required": true
1717
2758
  }
1718
2759
  },
1719
- "description": "Set an environment variable",
2760
+ "description": "Set a secret",
1720
2761
  "examples": [
1721
- "$ xano run env set API_KEY my-secret-key\nEnvironment variable 'API_KEY' set successfully!\n",
1722
- "$ xano run env set DATABASE_URL \"postgres://user:pass@host/db\"\nEnvironment variable 'DATABASE_URL' set successfully!\n"
2762
+ "$ xano run secrets set docker-registry -t dockerconfigjson -v '{\"auths\":{\"ghcr.io\":{\"auth\":\"...\"}}}' -r ghcr.io\nSecret 'docker-registry' set successfully!\n",
2763
+ "$ xano run secrets set service-key -t service-account-token -v 'token-value-here'\nSecret 'service-key' set successfully!\n"
1723
2764
  ],
1724
2765
  "flags": {
1725
2766
  "profile": {
@@ -1731,11 +2772,51 @@
1731
2772
  "hasDynamicHelp": false,
1732
2773
  "multiple": false,
1733
2774
  "type": "option"
2775
+ },
2776
+ "verbose": {
2777
+ "char": "v",
2778
+ "description": "Show detailed request/response information",
2779
+ "env": "XANO_VERBOSE",
2780
+ "name": "verbose",
2781
+ "required": false,
2782
+ "allowNo": false,
2783
+ "type": "boolean"
2784
+ },
2785
+ "repo": {
2786
+ "char": "r",
2787
+ "description": "Repository (for dockerconfigjson type)",
2788
+ "name": "repo",
2789
+ "required": false,
2790
+ "hasDynamicHelp": false,
2791
+ "multiple": false,
2792
+ "type": "option"
2793
+ },
2794
+ "type": {
2795
+ "char": "t",
2796
+ "description": "Secret type",
2797
+ "name": "type",
2798
+ "required": true,
2799
+ "hasDynamicHelp": false,
2800
+ "multiple": false,
2801
+ "options": [
2802
+ "dockerconfigjson",
2803
+ "service-account-token"
2804
+ ],
2805
+ "type": "option"
2806
+ },
2807
+ "value": {
2808
+ "char": "v",
2809
+ "description": "Secret value",
2810
+ "name": "value",
2811
+ "required": true,
2812
+ "hasDynamicHelp": false,
2813
+ "multiple": false,
2814
+ "type": "option"
1734
2815
  }
1735
2816
  },
1736
2817
  "hasDynamicHelp": false,
1737
2818
  "hiddenAliases": [],
1738
- "id": "run:env:set",
2819
+ "id": "run:secrets:set",
1739
2820
  "pluginAlias": "@xano/cli",
1740
2821
  "pluginName": "@xano/cli",
1741
2822
  "pluginType": "core",
@@ -1745,12 +2826,12 @@
1745
2826
  "dist",
1746
2827
  "commands",
1747
2828
  "run",
1748
- "env",
2829
+ "secrets",
1749
2830
  "set",
1750
2831
  "index.js"
1751
2832
  ]
1752
2833
  },
1753
- "run:secrets:get": {
2834
+ "run:secrets:delete": {
1754
2835
  "aliases": [],
1755
2836
  "args": {
1756
2837
  "name": {
@@ -1759,10 +2840,10 @@
1759
2840
  "required": true
1760
2841
  }
1761
2842
  },
1762
- "description": "Get a secret value",
2843
+ "description": "Delete a secret",
1763
2844
  "examples": [
1764
- "$ xano run secrets get docker-registry\n{\"auths\":{\"ghcr.io\":{\"auth\":\"...\"}}}\n",
1765
- "$ xano run secrets get docker-registry -o json\n{ \"name\": \"docker-registry\", \"type\": \"kubernetes.io/dockerconfigjson\", \"value\": \"...\" }\n"
2845
+ "$ xano run secrets delete docker-registry\nAre you sure you want to delete secret 'docker-registry'? (y/N)\nSecret 'docker-registry' deleted successfully!\n",
2846
+ "$ xano run secrets delete docker-registry --force\nSecret 'docker-registry' deleted successfully!\n"
1766
2847
  ],
1767
2848
  "flags": {
1768
2849
  "profile": {
@@ -1775,24 +2856,27 @@
1775
2856
  "multiple": false,
1776
2857
  "type": "option"
1777
2858
  },
1778
- "output": {
1779
- "char": "o",
1780
- "description": "Output format",
1781
- "name": "output",
2859
+ "verbose": {
2860
+ "char": "v",
2861
+ "description": "Show detailed request/response information",
2862
+ "env": "XANO_VERBOSE",
2863
+ "name": "verbose",
1782
2864
  "required": false,
1783
- "default": "value",
1784
- "hasDynamicHelp": false,
1785
- "multiple": false,
1786
- "options": [
1787
- "value",
1788
- "json"
1789
- ],
1790
- "type": "option"
2865
+ "allowNo": false,
2866
+ "type": "boolean"
2867
+ },
2868
+ "force": {
2869
+ "char": "f",
2870
+ "description": "Skip confirmation prompt",
2871
+ "name": "force",
2872
+ "required": false,
2873
+ "allowNo": false,
2874
+ "type": "boolean"
1791
2875
  }
1792
2876
  },
1793
2877
  "hasDynamicHelp": false,
1794
2878
  "hiddenAliases": [],
1795
- "id": "run:secrets:get",
2879
+ "id": "run:secrets:delete",
1796
2880
  "pluginAlias": "@xano/cli",
1797
2881
  "pluginName": "@xano/cli",
1798
2882
  "pluginType": "core",
@@ -1803,24 +2887,18 @@
1803
2887
  "commands",
1804
2888
  "run",
1805
2889
  "secrets",
1806
- "get",
2890
+ "delete",
1807
2891
  "index.js"
1808
2892
  ]
1809
2893
  },
1810
- "run:projects:update": {
2894
+ "run:projects:create": {
1811
2895
  "aliases": [],
1812
- "args": {
1813
- "projectId": {
1814
- "description": "Project ID to update",
1815
- "name": "projectId",
1816
- "required": true
1817
- }
1818
- },
1819
- "description": "Update a project",
2896
+ "args": {},
2897
+ "description": "Create a new project",
1820
2898
  "examples": [
1821
- "$ xano run projects update abc123-def456 -n \"New Name\"\nProject updated successfully!\n ID: abc123-def456\n Name: New Name\n",
1822
- "$ xano run projects update abc123-def456 -d \"New description\"\nProject updated successfully!\n ID: abc123-def456\n Description: New description\n",
1823
- "$ xano run projects update abc123-def456 -n \"New Name\" -o json\n{ \"id\": \"abc123-def456\", \"name\": \"New Name\", ... }\n"
2899
+ "$ xano run projects create -n \"My Project\"\nProject created successfully!\n ID: abc123-def456-ghi789\n Name: My Project\n",
2900
+ "$ xano run projects create -n \"My Project\" -d \"Description here\"\nProject created successfully!\n ID: abc123-def456-ghi789\n Name: My Project\n",
2901
+ "$ xano run projects create -n \"My Project\" -o json\n{ \"id\": \"abc123-def456-ghi789\", \"name\": \"My Project\", ... }\n"
1824
2902
  ],
1825
2903
  "flags": {
1826
2904
  "profile": {
@@ -1833,20 +2911,30 @@
1833
2911
  "multiple": false,
1834
2912
  "type": "option"
1835
2913
  },
1836
- "name": {
1837
- "char": "n",
1838
- "description": "New project name",
1839
- "name": "name",
2914
+ "verbose": {
2915
+ "char": "v",
2916
+ "description": "Show detailed request/response information",
2917
+ "env": "XANO_VERBOSE",
2918
+ "name": "verbose",
1840
2919
  "required": false,
1841
- "hasDynamicHelp": false,
1842
- "multiple": false,
1843
- "type": "option"
2920
+ "allowNo": false,
2921
+ "type": "boolean"
1844
2922
  },
1845
2923
  "description": {
1846
2924
  "char": "d",
1847
- "description": "New project description",
2925
+ "description": "Project description",
1848
2926
  "name": "description",
1849
2927
  "required": false,
2928
+ "default": "",
2929
+ "hasDynamicHelp": false,
2930
+ "multiple": false,
2931
+ "type": "option"
2932
+ },
2933
+ "name": {
2934
+ "char": "n",
2935
+ "description": "Project name",
2936
+ "name": "name",
2937
+ "required": true,
1850
2938
  "hasDynamicHelp": false,
1851
2939
  "multiple": false,
1852
2940
  "type": "option"
@@ -1868,7 +2956,7 @@
1868
2956
  },
1869
2957
  "hasDynamicHelp": false,
1870
2958
  "hiddenAliases": [],
1871
- "id": "run:projects:update",
2959
+ "id": "run:projects:create",
1872
2960
  "pluginAlias": "@xano/cli",
1873
2961
  "pluginName": "@xano/cli",
1874
2962
  "pluginType": "core",
@@ -1879,23 +2967,17 @@
1879
2967
  "commands",
1880
2968
  "run",
1881
2969
  "projects",
1882
- "update",
2970
+ "create",
1883
2971
  "index.js"
1884
2972
  ]
1885
2973
  },
1886
- "run:secrets:delete": {
2974
+ "run:projects:list": {
1887
2975
  "aliases": [],
1888
- "args": {
1889
- "name": {
1890
- "description": "Secret name",
1891
- "name": "name",
1892
- "required": true
1893
- }
1894
- },
1895
- "description": "Delete a secret",
2976
+ "args": {},
2977
+ "description": "List all projects",
1896
2978
  "examples": [
1897
- "$ xano run secrets delete docker-registry\nAre you sure you want to delete secret 'docker-registry'? (y/N)\nSecret 'docker-registry' deleted successfully!\n",
1898
- "$ xano run secrets delete docker-registry --force\nSecret 'docker-registry' deleted successfully!\n"
2979
+ "$ xano run projects list\nID NAME ACCESS\nabc123-def456-ghi789 My Project private\nxyz789-uvw456-rst123 Test Project public\n",
2980
+ "$ xano run projects list -o json\n[\n { \"id\": \"abc123-def456-ghi789\", \"name\": \"My Project\", ... }\n]\n"
1899
2981
  ],
1900
2982
  "flags": {
1901
2983
  "profile": {
@@ -1908,18 +2990,33 @@
1908
2990
  "multiple": false,
1909
2991
  "type": "option"
1910
2992
  },
1911
- "force": {
1912
- "char": "f",
1913
- "description": "Skip confirmation prompt",
1914
- "name": "force",
2993
+ "verbose": {
2994
+ "char": "v",
2995
+ "description": "Show detailed request/response information",
2996
+ "env": "XANO_VERBOSE",
2997
+ "name": "verbose",
1915
2998
  "required": false,
1916
2999
  "allowNo": false,
1917
3000
  "type": "boolean"
3001
+ },
3002
+ "output": {
3003
+ "char": "o",
3004
+ "description": "Output format",
3005
+ "name": "output",
3006
+ "required": false,
3007
+ "default": "table",
3008
+ "hasDynamicHelp": false,
3009
+ "multiple": false,
3010
+ "options": [
3011
+ "table",
3012
+ "json"
3013
+ ],
3014
+ "type": "option"
1918
3015
  }
1919
3016
  },
1920
3017
  "hasDynamicHelp": false,
1921
3018
  "hiddenAliases": [],
1922
- "id": "run:secrets:delete",
3019
+ "id": "run:projects:list",
1923
3020
  "pluginAlias": "@xano/cli",
1924
3021
  "pluginName": "@xano/cli",
1925
3022
  "pluginType": "core",
@@ -1929,24 +3026,24 @@
1929
3026
  "dist",
1930
3027
  "commands",
1931
3028
  "run",
1932
- "secrets",
1933
- "delete",
3029
+ "projects",
3030
+ "list",
1934
3031
  "index.js"
1935
3032
  ]
1936
3033
  },
1937
- "run:secrets:set": {
3034
+ "run:projects:delete": {
1938
3035
  "aliases": [],
1939
3036
  "args": {
1940
- "name": {
1941
- "description": "Secret name",
1942
- "name": "name",
3037
+ "projectId": {
3038
+ "description": "Project ID to delete",
3039
+ "name": "projectId",
1943
3040
  "required": true
1944
3041
  }
1945
3042
  },
1946
- "description": "Set a secret",
3043
+ "description": "Delete a project",
1947
3044
  "examples": [
1948
- "$ xano run secrets set docker-registry -t dockerconfigjson -v '{\"auths\":{\"ghcr.io\":{\"auth\":\"...\"}}}' -r ghcr.io\nSecret 'docker-registry' set successfully!\n",
1949
- "$ xano run secrets set service-key -t service-account-token -v 'token-value-here'\nSecret 'service-key' set successfully!\n"
3045
+ "$ xano run projects delete abc123-def456\nAre you sure you want to delete project 'abc123-def456'? (y/N)\nProject deleted successfully!\n",
3046
+ "$ xano run projects delete abc123-def456 --force\nProject deleted successfully!\n"
1950
3047
  ],
1951
3048
  "flags": {
1952
3049
  "profile": {
@@ -1959,41 +3056,27 @@
1959
3056
  "multiple": false,
1960
3057
  "type": "option"
1961
3058
  },
1962
- "type": {
1963
- "char": "t",
1964
- "description": "Secret type",
1965
- "name": "type",
1966
- "required": true,
1967
- "hasDynamicHelp": false,
1968
- "multiple": false,
1969
- "options": [
1970
- "dockerconfigjson",
1971
- "service-account-token"
1972
- ],
1973
- "type": "option"
1974
- },
1975
- "value": {
3059
+ "verbose": {
1976
3060
  "char": "v",
1977
- "description": "Secret value",
1978
- "name": "value",
1979
- "required": true,
1980
- "hasDynamicHelp": false,
1981
- "multiple": false,
1982
- "type": "option"
3061
+ "description": "Show detailed request/response information",
3062
+ "env": "XANO_VERBOSE",
3063
+ "name": "verbose",
3064
+ "required": false,
3065
+ "allowNo": false,
3066
+ "type": "boolean"
1983
3067
  },
1984
- "repo": {
1985
- "char": "r",
1986
- "description": "Repository (for dockerconfigjson type)",
1987
- "name": "repo",
3068
+ "force": {
3069
+ "char": "f",
3070
+ "description": "Skip confirmation prompt",
3071
+ "name": "force",
1988
3072
  "required": false,
1989
- "hasDynamicHelp": false,
1990
- "multiple": false,
1991
- "type": "option"
3073
+ "allowNo": false,
3074
+ "type": "boolean"
1992
3075
  }
1993
3076
  },
1994
3077
  "hasDynamicHelp": false,
1995
3078
  "hiddenAliases": [],
1996
- "id": "run:secrets:set",
3079
+ "id": "run:projects:delete",
1997
3080
  "pluginAlias": "@xano/cli",
1998
3081
  "pluginName": "@xano/cli",
1999
3082
  "pluginType": "core",
@@ -2003,24 +3086,25 @@
2003
3086
  "dist",
2004
3087
  "commands",
2005
3088
  "run",
2006
- "secrets",
2007
- "set",
3089
+ "projects",
3090
+ "delete",
2008
3091
  "index.js"
2009
3092
  ]
2010
3093
  },
2011
- "run:sink:get": {
3094
+ "run:projects:update": {
2012
3095
  "aliases": [],
2013
3096
  "args": {
2014
- "sessionId": {
2015
- "description": "Session ID",
2016
- "name": "sessionId",
3097
+ "projectId": {
3098
+ "description": "Project ID to update",
3099
+ "name": "projectId",
2017
3100
  "required": true
2018
3101
  }
2019
3102
  },
2020
- "description": "Get sink data for a completed session",
3103
+ "description": "Update a project",
2021
3104
  "examples": [
2022
- "$ xano run sink get abc123-def456\nSink Data:\n Tables: 3\n - users (5 rows)\n - orders (12 rows)\n - products (8 rows)\n Logs: 15 entries\n",
2023
- "$ xano run sink get abc123-def456 -o json\n{ \"tables\": [...], \"logs\": [...] }\n"
3105
+ "$ xano run projects update abc123-def456 -n \"New Name\"\nProject updated successfully!\n ID: abc123-def456\n Name: New Name\n",
3106
+ "$ xano run projects update abc123-def456 -d \"New description\"\nProject updated successfully!\n ID: abc123-def456\n Description: New description\n",
3107
+ "$ xano run projects update abc123-def456 -n \"New Name\" -o json\n{ \"id\": \"abc123-def456\", \"name\": \"New Name\", ... }\n"
2024
3108
  ],
2025
3109
  "flags": {
2026
3110
  "profile": {
@@ -2033,6 +3117,33 @@
2033
3117
  "multiple": false,
2034
3118
  "type": "option"
2035
3119
  },
3120
+ "verbose": {
3121
+ "char": "v",
3122
+ "description": "Show detailed request/response information",
3123
+ "env": "XANO_VERBOSE",
3124
+ "name": "verbose",
3125
+ "required": false,
3126
+ "allowNo": false,
3127
+ "type": "boolean"
3128
+ },
3129
+ "description": {
3130
+ "char": "d",
3131
+ "description": "New project description",
3132
+ "name": "description",
3133
+ "required": false,
3134
+ "hasDynamicHelp": false,
3135
+ "multiple": false,
3136
+ "type": "option"
3137
+ },
3138
+ "name": {
3139
+ "char": "n",
3140
+ "description": "New project name",
3141
+ "name": "name",
3142
+ "required": false,
3143
+ "hasDynamicHelp": false,
3144
+ "multiple": false,
3145
+ "type": "option"
3146
+ },
2036
3147
  "output": {
2037
3148
  "char": "o",
2038
3149
  "description": "Output format",
@@ -2050,7 +3161,7 @@
2050
3161
  },
2051
3162
  "hasDynamicHelp": false,
2052
3163
  "hiddenAliases": [],
2053
- "id": "run:sink:get",
3164
+ "id": "run:projects:update",
2054
3165
  "pluginAlias": "@xano/cli",
2055
3166
  "pluginName": "@xano/cli",
2056
3167
  "pluginType": "core",
@@ -2060,18 +3171,24 @@
2060
3171
  "dist",
2061
3172
  "commands",
2062
3173
  "run",
2063
- "sink",
2064
- "get",
3174
+ "projects",
3175
+ "update",
2065
3176
  "index.js"
2066
3177
  ]
2067
3178
  },
2068
- "run:secrets:list": {
3179
+ "run:sessions:delete": {
2069
3180
  "aliases": [],
2070
- "args": {},
2071
- "description": "List all secret keys",
3181
+ "args": {
3182
+ "sessionId": {
3183
+ "description": "Session ID",
3184
+ "name": "sessionId",
3185
+ "required": true
3186
+ }
3187
+ },
3188
+ "description": "Delete a session",
2072
3189
  "examples": [
2073
- "$ xano run secrets list\nNAME TYPE REPO\ndocker-registry kubernetes.io/dockerconfigjson ghcr.io\nservice-account kubernetes.io/service-account-token -\n",
2074
- "$ xano run secrets list -o json\n{ \"secrets\": [{ \"name\": \"docker-registry\", \"type\": \"kubernetes.io/dockerconfigjson\", \"repo\": \"ghcr.io\" }] }\n"
3190
+ "$ xano run sessions delete abc123-def456\nAre you sure you want to delete session 'abc123-def456'? (y/N)\nSession deleted successfully!\n",
3191
+ "$ xano run sessions delete abc123-def456 --force\nSession deleted successfully!\n"
2075
3192
  ],
2076
3193
  "flags": {
2077
3194
  "profile": {
@@ -2084,24 +3201,27 @@
2084
3201
  "multiple": false,
2085
3202
  "type": "option"
2086
3203
  },
2087
- "output": {
2088
- "char": "o",
2089
- "description": "Output format",
2090
- "name": "output",
3204
+ "verbose": {
3205
+ "char": "v",
3206
+ "description": "Show detailed request/response information",
3207
+ "env": "XANO_VERBOSE",
3208
+ "name": "verbose",
2091
3209
  "required": false,
2092
- "default": "table",
2093
- "hasDynamicHelp": false,
2094
- "multiple": false,
2095
- "options": [
2096
- "table",
2097
- "json"
2098
- ],
2099
- "type": "option"
3210
+ "allowNo": false,
3211
+ "type": "boolean"
3212
+ },
3213
+ "force": {
3214
+ "char": "f",
3215
+ "description": "Skip confirmation prompt",
3216
+ "name": "force",
3217
+ "required": false,
3218
+ "allowNo": false,
3219
+ "type": "boolean"
2100
3220
  }
2101
3221
  },
2102
3222
  "hasDynamicHelp": false,
2103
3223
  "hiddenAliases": [],
2104
- "id": "run:secrets:list",
3224
+ "id": "run:sessions:delete",
2105
3225
  "pluginAlias": "@xano/cli",
2106
3226
  "pluginName": "@xano/cli",
2107
3227
  "pluginType": "core",
@@ -2111,31 +3231,24 @@
2111
3231
  "dist",
2112
3232
  "commands",
2113
3233
  "run",
2114
- "secrets",
2115
- "list",
3234
+ "sessions",
3235
+ "delete",
2116
3236
  "index.js"
2117
3237
  ]
2118
3238
  },
2119
- "static_host:build:get": {
3239
+ "run:sessions:get": {
2120
3240
  "aliases": [],
2121
3241
  "args": {
2122
- "static_host": {
2123
- "description": "Static Host name",
2124
- "name": "static_host",
2125
- "required": true
2126
- },
2127
- "build_id": {
2128
- "description": "Build ID",
2129
- "name": "build_id",
3242
+ "sessionId": {
3243
+ "description": "Session ID",
3244
+ "name": "sessionId",
2130
3245
  "required": true
2131
3246
  }
2132
3247
  },
2133
- "description": "Get details of a specific build for a static host",
3248
+ "description": "Get session details",
2134
3249
  "examples": [
2135
- "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
2136
- "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
2137
- "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
2138
- "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
3250
+ "$ xano run sessions get abc123-def456\nSession Details:\n ID: abc123-def456\n Name: My Session\n Status: running\n Access: private\n URL: https://session.xano.io/abc123\n Uptime: 3600s\n",
3251
+ "$ xano run sessions get abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"name\": \"My Session\", \"status\": \"running\", ... }\n"
2139
3252
  ],
2140
3253
  "flags": {
2141
3254
  "profile": {
@@ -2148,14 +3261,14 @@
2148
3261
  "multiple": false,
2149
3262
  "type": "option"
2150
3263
  },
2151
- "workspace": {
2152
- "char": "w",
2153
- "description": "Workspace ID (optional if set in profile)",
2154
- "name": "workspace",
3264
+ "verbose": {
3265
+ "char": "v",
3266
+ "description": "Show detailed request/response information",
3267
+ "env": "XANO_VERBOSE",
3268
+ "name": "verbose",
2155
3269
  "required": false,
2156
- "hasDynamicHelp": false,
2157
- "multiple": false,
2158
- "type": "option"
3270
+ "allowNo": false,
3271
+ "type": "boolean"
2159
3272
  },
2160
3273
  "output": {
2161
3274
  "char": "o",
@@ -2174,37 +3287,34 @@
2174
3287
  },
2175
3288
  "hasDynamicHelp": false,
2176
3289
  "hiddenAliases": [],
2177
- "id": "static_host:build:get",
3290
+ "id": "run:sessions:get",
2178
3291
  "pluginAlias": "@xano/cli",
2179
3292
  "pluginName": "@xano/cli",
2180
3293
  "pluginType": "core",
2181
3294
  "strict": true,
2182
- "enableJsonFlag": false,
2183
3295
  "isESM": true,
2184
3296
  "relativePath": [
2185
3297
  "dist",
2186
3298
  "commands",
2187
- "static_host",
2188
- "build",
3299
+ "run",
3300
+ "sessions",
2189
3301
  "get",
2190
3302
  "index.js"
2191
3303
  ]
2192
3304
  },
2193
- "static_host:build:list": {
3305
+ "run:sessions:start": {
2194
3306
  "aliases": [],
2195
3307
  "args": {
2196
- "static_host": {
2197
- "description": "Static Host name",
2198
- "name": "static_host",
3308
+ "sessionId": {
3309
+ "description": "Session ID",
3310
+ "name": "sessionId",
2199
3311
  "required": true
2200
3312
  }
2201
3313
  },
2202
- "description": "List all builds for a static host",
3314
+ "description": "Start a session",
2203
3315
  "examples": [
2204
- "$ 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",
2205
- "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
2206
- "$ 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",
2207
- "$ 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"
3316
+ "$ xano run sessions start abc123-def456\nSession started successfully!\n ID: abc123-def456\n State: running\n",
3317
+ "$ xano run sessions start abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"state\": \"running\", ... }\n"
2208
3318
  ],
2209
3319
  "flags": {
2210
3320
  "profile": {
@@ -2217,14 +3327,14 @@
2217
3327
  "multiple": false,
2218
3328
  "type": "option"
2219
3329
  },
2220
- "workspace": {
2221
- "char": "w",
2222
- "description": "Workspace ID (optional if set in profile)",
2223
- "name": "workspace",
3330
+ "verbose": {
3331
+ "char": "v",
3332
+ "description": "Show detailed request/response information",
3333
+ "env": "XANO_VERBOSE",
3334
+ "name": "verbose",
2224
3335
  "required": false,
2225
- "hasDynamicHelp": false,
2226
- "multiple": false,
2227
- "type": "option"
3336
+ "allowNo": false,
3337
+ "type": "boolean"
2228
3338
  },
2229
3339
  "output": {
2230
3340
  "char": "o",
@@ -2239,57 +3349,32 @@
2239
3349
  "json"
2240
3350
  ],
2241
3351
  "type": "option"
2242
- },
2243
- "page": {
2244
- "description": "Page number for pagination",
2245
- "name": "page",
2246
- "required": false,
2247
- "default": 1,
2248
- "hasDynamicHelp": false,
2249
- "multiple": false,
2250
- "type": "option"
2251
- },
2252
- "per_page": {
2253
- "description": "Number of results per page",
2254
- "name": "per_page",
2255
- "required": false,
2256
- "default": 50,
2257
- "hasDynamicHelp": false,
2258
- "multiple": false,
2259
- "type": "option"
2260
3352
  }
2261
3353
  },
2262
3354
  "hasDynamicHelp": false,
2263
3355
  "hiddenAliases": [],
2264
- "id": "static_host:build:list",
3356
+ "id": "run:sessions:start",
2265
3357
  "pluginAlias": "@xano/cli",
2266
3358
  "pluginName": "@xano/cli",
2267
3359
  "pluginType": "core",
2268
3360
  "strict": true,
2269
- "enableJsonFlag": false,
2270
3361
  "isESM": true,
2271
3362
  "relativePath": [
2272
3363
  "dist",
2273
3364
  "commands",
2274
- "static_host",
2275
- "build",
2276
- "list",
2277
- "index.js"
2278
- ]
2279
- },
2280
- "run:sessions:delete": {
2281
- "aliases": [],
2282
- "args": {
2283
- "sessionId": {
2284
- "description": "Session ID",
2285
- "name": "sessionId",
2286
- "required": true
2287
- }
2288
- },
2289
- "description": "Delete a session",
3365
+ "run",
3366
+ "sessions",
3367
+ "start",
3368
+ "index.js"
3369
+ ]
3370
+ },
3371
+ "run:sessions:list": {
3372
+ "aliases": [],
3373
+ "args": {},
3374
+ "description": "List all sessions for the project",
2290
3375
  "examples": [
2291
- "$ xano run sessions delete abc123-def456\nAre you sure you want to delete session 'abc123-def456'? (y/N)\nSession deleted successfully!\n",
2292
- "$ xano run sessions delete abc123-def456 --force\nSession deleted successfully!\n"
3376
+ "$ xano run sessions list\nID STATE CREATED\nabc123-def456-ghi789 running 2024-01-15T10:30:00Z\nxyz789-uvw456-rst123 stopped 2024-01-14T09:00:00Z\n",
3377
+ "$ xano run sessions list -o json\n{ \"items\": [{ \"id\": \"abc123-def456-ghi789\", \"state\": \"running\", ... }] }\n"
2293
3378
  ],
2294
3379
  "flags": {
2295
3380
  "profile": {
@@ -2302,18 +3387,33 @@
2302
3387
  "multiple": false,
2303
3388
  "type": "option"
2304
3389
  },
2305
- "force": {
2306
- "char": "f",
2307
- "description": "Skip confirmation prompt",
2308
- "name": "force",
3390
+ "verbose": {
3391
+ "char": "v",
3392
+ "description": "Show detailed request/response information",
3393
+ "env": "XANO_VERBOSE",
3394
+ "name": "verbose",
2309
3395
  "required": false,
2310
3396
  "allowNo": false,
2311
3397
  "type": "boolean"
3398
+ },
3399
+ "output": {
3400
+ "char": "o",
3401
+ "description": "Output format",
3402
+ "name": "output",
3403
+ "required": false,
3404
+ "default": "table",
3405
+ "hasDynamicHelp": false,
3406
+ "multiple": false,
3407
+ "options": [
3408
+ "table",
3409
+ "json"
3410
+ ],
3411
+ "type": "option"
2312
3412
  }
2313
3413
  },
2314
3414
  "hasDynamicHelp": false,
2315
3415
  "hiddenAliases": [],
2316
- "id": "run:sessions:delete",
3416
+ "id": "run:sessions:list",
2317
3417
  "pluginAlias": "@xano/cli",
2318
3418
  "pluginName": "@xano/cli",
2319
3419
  "pluginType": "core",
@@ -2324,11 +3424,11 @@
2324
3424
  "commands",
2325
3425
  "run",
2326
3426
  "sessions",
2327
- "delete",
3427
+ "list",
2328
3428
  "index.js"
2329
3429
  ]
2330
3430
  },
2331
- "run:sessions:get": {
3431
+ "run:sessions:stop": {
2332
3432
  "aliases": [],
2333
3433
  "args": {
2334
3434
  "sessionId": {
@@ -2337,10 +3437,10 @@
2337
3437
  "required": true
2338
3438
  }
2339
3439
  },
2340
- "description": "Get session details",
3440
+ "description": "Stop a session",
2341
3441
  "examples": [
2342
- "$ xano run sessions get abc123-def456\nSession Details:\n ID: abc123-def456\n Name: My Session\n Status: running\n Access: private\n URL: https://session.xano.io/abc123\n Uptime: 3600s\n",
2343
- "$ xano run sessions get abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"name\": \"My Session\", \"status\": \"running\", ... }\n"
3442
+ "$ xano run sessions stop abc123-def456\nSession stopped successfully!\n ID: abc123-def456\n State: stopped\n",
3443
+ "$ xano run sessions stop abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"state\": \"stopped\", ... }\n"
2344
3444
  ],
2345
3445
  "flags": {
2346
3446
  "profile": {
@@ -2353,6 +3453,15 @@
2353
3453
  "multiple": false,
2354
3454
  "type": "option"
2355
3455
  },
3456
+ "verbose": {
3457
+ "char": "v",
3458
+ "description": "Show detailed request/response information",
3459
+ "env": "XANO_VERBOSE",
3460
+ "name": "verbose",
3461
+ "required": false,
3462
+ "allowNo": false,
3463
+ "type": "boolean"
3464
+ },
2356
3465
  "output": {
2357
3466
  "char": "o",
2358
3467
  "description": "Output format",
@@ -2370,7 +3479,7 @@
2370
3479
  },
2371
3480
  "hasDynamicHelp": false,
2372
3481
  "hiddenAliases": [],
2373
- "id": "run:sessions:get",
3482
+ "id": "run:sessions:stop",
2374
3483
  "pluginAlias": "@xano/cli",
2375
3484
  "pluginName": "@xano/cli",
2376
3485
  "pluginType": "core",
@@ -2381,17 +3490,24 @@
2381
3490
  "commands",
2382
3491
  "run",
2383
3492
  "sessions",
2384
- "get",
3493
+ "stop",
2385
3494
  "index.js"
2386
3495
  ]
2387
3496
  },
2388
- "run:sessions:list": {
3497
+ "static_host:build:create": {
2389
3498
  "aliases": [],
2390
- "args": {},
2391
- "description": "List all sessions for the project",
3499
+ "args": {
3500
+ "static_host": {
3501
+ "description": "Static Host name",
3502
+ "name": "static_host",
3503
+ "required": true
3504
+ }
3505
+ },
3506
+ "description": "Create a new build for a static host",
2392
3507
  "examples": [
2393
- "$ xano run sessions list\nID STATE CREATED\nabc123-def456-ghi789 running 2024-01-15T10:30:00Z\nxyz789-uvw456-rst123 stopped 2024-01-14T09:00:00Z\n",
2394
- "$ xano run sessions list -o json\n{ \"items\": [{ \"id\": \"abc123-def456-ghi789\", \"state\": \"running\", ... }] }\n"
3508
+ "$ 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",
3509
+ "$ 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",
3510
+ "$ 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"
2395
3511
  ],
2396
3512
  "flags": {
2397
3513
  "profile": {
@@ -2404,39 +3520,85 @@
2404
3520
  "multiple": false,
2405
3521
  "type": "option"
2406
3522
  },
3523
+ "verbose": {
3524
+ "char": "v",
3525
+ "description": "Show detailed request/response information",
3526
+ "env": "XANO_VERBOSE",
3527
+ "name": "verbose",
3528
+ "required": false,
3529
+ "allowNo": false,
3530
+ "type": "boolean"
3531
+ },
3532
+ "description": {
3533
+ "char": "d",
3534
+ "description": "Build description",
3535
+ "name": "description",
3536
+ "required": false,
3537
+ "hasDynamicHelp": false,
3538
+ "multiple": false,
3539
+ "type": "option"
3540
+ },
3541
+ "file": {
3542
+ "char": "f",
3543
+ "description": "Path to zip file to upload",
3544
+ "name": "file",
3545
+ "required": true,
3546
+ "hasDynamicHelp": false,
3547
+ "multiple": false,
3548
+ "type": "option"
3549
+ },
3550
+ "name": {
3551
+ "char": "n",
3552
+ "description": "Build name",
3553
+ "name": "name",
3554
+ "required": true,
3555
+ "hasDynamicHelp": false,
3556
+ "multiple": false,
3557
+ "type": "option"
3558
+ },
2407
3559
  "output": {
2408
3560
  "char": "o",
2409
3561
  "description": "Output format",
2410
3562
  "name": "output",
2411
3563
  "required": false,
2412
- "default": "table",
3564
+ "default": "summary",
2413
3565
  "hasDynamicHelp": false,
2414
3566
  "multiple": false,
2415
3567
  "options": [
2416
- "table",
3568
+ "summary",
2417
3569
  "json"
2418
3570
  ],
2419
3571
  "type": "option"
3572
+ },
3573
+ "workspace": {
3574
+ "char": "w",
3575
+ "description": "Workspace ID (optional if set in profile)",
3576
+ "name": "workspace",
3577
+ "required": false,
3578
+ "hasDynamicHelp": false,
3579
+ "multiple": false,
3580
+ "type": "option"
2420
3581
  }
2421
3582
  },
2422
3583
  "hasDynamicHelp": false,
2423
3584
  "hiddenAliases": [],
2424
- "id": "run:sessions:list",
3585
+ "id": "static_host:build:create",
2425
3586
  "pluginAlias": "@xano/cli",
2426
3587
  "pluginName": "@xano/cli",
2427
3588
  "pluginType": "core",
2428
3589
  "strict": true,
3590
+ "enableJsonFlag": false,
2429
3591
  "isESM": true,
2430
3592
  "relativePath": [
2431
3593
  "dist",
2432
3594
  "commands",
2433
- "run",
2434
- "sessions",
2435
- "list",
3595
+ "static_host",
3596
+ "build",
3597
+ "create",
2436
3598
  "index.js"
2437
3599
  ]
2438
3600
  },
2439
- "run:sessions:start": {
3601
+ "run:sink:get": {
2440
3602
  "aliases": [],
2441
3603
  "args": {
2442
3604
  "sessionId": {
@@ -2445,10 +3607,10 @@
2445
3607
  "required": true
2446
3608
  }
2447
3609
  },
2448
- "description": "Start a session",
3610
+ "description": "Get sink data for a completed session",
2449
3611
  "examples": [
2450
- "$ xano run sessions start abc123-def456\nSession started successfully!\n ID: abc123-def456\n State: running\n",
2451
- "$ xano run sessions start abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"state\": \"running\", ... }\n"
3612
+ "$ xano run sink get abc123-def456\nSink Data:\n Tables: 3\n - users (5 rows)\n - orders (12 rows)\n - products (8 rows)\n Logs: 15 entries\n",
3613
+ "$ xano run sink get abc123-def456 -o json\n{ \"tables\": [...], \"logs\": [...] }\n"
2452
3614
  ],
2453
3615
  "flags": {
2454
3616
  "profile": {
@@ -2461,6 +3623,15 @@
2461
3623
  "multiple": false,
2462
3624
  "type": "option"
2463
3625
  },
3626
+ "verbose": {
3627
+ "char": "v",
3628
+ "description": "Show detailed request/response information",
3629
+ "env": "XANO_VERBOSE",
3630
+ "name": "verbose",
3631
+ "required": false,
3632
+ "allowNo": false,
3633
+ "type": "boolean"
3634
+ },
2464
3635
  "output": {
2465
3636
  "char": "o",
2466
3637
  "description": "Output format",
@@ -2478,7 +3649,7 @@
2478
3649
  },
2479
3650
  "hasDynamicHelp": false,
2480
3651
  "hiddenAliases": [],
2481
- "id": "run:sessions:start",
3652
+ "id": "run:sink:get",
2482
3653
  "pluginAlias": "@xano/cli",
2483
3654
  "pluginName": "@xano/cli",
2484
3655
  "pluginType": "core",
@@ -2488,24 +3659,31 @@
2488
3659
  "dist",
2489
3660
  "commands",
2490
3661
  "run",
2491
- "sessions",
2492
- "start",
3662
+ "sink",
3663
+ "get",
2493
3664
  "index.js"
2494
3665
  ]
2495
3666
  },
2496
- "run:sessions:stop": {
3667
+ "static_host:build:get": {
2497
3668
  "aliases": [],
2498
3669
  "args": {
2499
- "sessionId": {
2500
- "description": "Session ID",
2501
- "name": "sessionId",
3670
+ "build_id": {
3671
+ "description": "Build ID",
3672
+ "name": "build_id",
3673
+ "required": true
3674
+ },
3675
+ "static_host": {
3676
+ "description": "Static Host name",
3677
+ "name": "static_host",
2502
3678
  "required": true
2503
3679
  }
2504
3680
  },
2505
- "description": "Stop a session",
3681
+ "description": "Get details of a specific build for a static host",
2506
3682
  "examples": [
2507
- "$ xano run sessions stop abc123-def456\nSession stopped successfully!\n ID: abc123-def456\n State: stopped\n",
2508
- "$ xano run sessions stop abc123-def456 -o json\n{ \"id\": \"abc123-def456\", \"state\": \"stopped\", ... }\n"
3683
+ "$ xano static_host:build:get default 52\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
3684
+ "$ xano static_host:build:get default 52 -w 40\nBuild Details:\nID: 52\nName: v1.0.0\nStatus: completed\n",
3685
+ "$ xano static_host:build:get myhost 123 --profile production\nBuild Details:\nID: 123\nName: production-build\n",
3686
+ "$ xano static_host:build:get default 52 -o json\n{\n \"id\": 52,\n \"name\": \"v1.0.0\",\n \"status\": \"completed\"\n}\n"
2509
3687
  ],
2510
3688
  "flags": {
2511
3689
  "profile": {
@@ -2518,6 +3696,15 @@
2518
3696
  "multiple": false,
2519
3697
  "type": "option"
2520
3698
  },
3699
+ "verbose": {
3700
+ "char": "v",
3701
+ "description": "Show detailed request/response information",
3702
+ "env": "XANO_VERBOSE",
3703
+ "name": "verbose",
3704
+ "required": false,
3705
+ "allowNo": false,
3706
+ "type": "boolean"
3707
+ },
2521
3708
  "output": {
2522
3709
  "char": "o",
2523
3710
  "description": "Output format",
@@ -2531,26 +3718,36 @@
2531
3718
  "json"
2532
3719
  ],
2533
3720
  "type": "option"
3721
+ },
3722
+ "workspace": {
3723
+ "char": "w",
3724
+ "description": "Workspace ID (optional if set in profile)",
3725
+ "name": "workspace",
3726
+ "required": false,
3727
+ "hasDynamicHelp": false,
3728
+ "multiple": false,
3729
+ "type": "option"
2534
3730
  }
2535
3731
  },
2536
3732
  "hasDynamicHelp": false,
2537
3733
  "hiddenAliases": [],
2538
- "id": "run:sessions:stop",
3734
+ "id": "static_host:build:get",
2539
3735
  "pluginAlias": "@xano/cli",
2540
3736
  "pluginName": "@xano/cli",
2541
3737
  "pluginType": "core",
2542
3738
  "strict": true,
3739
+ "enableJsonFlag": false,
2543
3740
  "isESM": true,
2544
3741
  "relativePath": [
2545
3742
  "dist",
2546
3743
  "commands",
2547
- "run",
2548
- "sessions",
2549
- "stop",
3744
+ "static_host",
3745
+ "build",
3746
+ "get",
2550
3747
  "index.js"
2551
3748
  ]
2552
3749
  },
2553
- "static_host:build:create": {
3750
+ "static_host:build:list": {
2554
3751
  "aliases": [],
2555
3752
  "args": {
2556
3753
  "static_host": {
@@ -2559,11 +3756,12 @@
2559
3756
  "required": true
2560
3757
  }
2561
3758
  },
2562
- "description": "Create a new build for a static host",
3759
+ "description": "List all builds for a static host",
2563
3760
  "examples": [
2564
- "$ 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",
2565
- "$ 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",
2566
- "$ 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"
3761
+ "$ 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",
3762
+ "$ xano static_host:build:list myhost --profile production\nAvailable builds:\n - production (ID: 1) - Status: completed\n - staging (ID: 2) - Status: completed\n",
3763
+ "$ 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",
3764
+ "$ 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"
2567
3765
  ],
2568
3766
  "flags": {
2569
3767
  "profile": {
@@ -2576,60 +3774,60 @@
2576
3774
  "multiple": false,
2577
3775
  "type": "option"
2578
3776
  },
2579
- "workspace": {
2580
- "char": "w",
2581
- "description": "Workspace ID (optional if set in profile)",
2582
- "name": "workspace",
3777
+ "verbose": {
3778
+ "char": "v",
3779
+ "description": "Show detailed request/response information",
3780
+ "env": "XANO_VERBOSE",
3781
+ "name": "verbose",
2583
3782
  "required": false,
2584
- "hasDynamicHelp": false,
2585
- "multiple": false,
2586
- "type": "option"
3783
+ "allowNo": false,
3784
+ "type": "boolean"
2587
3785
  },
2588
- "file": {
2589
- "char": "f",
2590
- "description": "Path to zip file to upload",
2591
- "name": "file",
2592
- "required": true,
3786
+ "output": {
3787
+ "char": "o",
3788
+ "description": "Output format",
3789
+ "name": "output",
3790
+ "required": false,
3791
+ "default": "summary",
2593
3792
  "hasDynamicHelp": false,
2594
3793
  "multiple": false,
3794
+ "options": [
3795
+ "summary",
3796
+ "json"
3797
+ ],
2595
3798
  "type": "option"
2596
3799
  },
2597
- "name": {
2598
- "char": "n",
2599
- "description": "Build name",
2600
- "name": "name",
2601
- "required": true,
3800
+ "page": {
3801
+ "description": "Page number for pagination",
3802
+ "name": "page",
3803
+ "required": false,
3804
+ "default": 1,
2602
3805
  "hasDynamicHelp": false,
2603
3806
  "multiple": false,
2604
3807
  "type": "option"
2605
3808
  },
2606
- "description": {
2607
- "char": "d",
2608
- "description": "Build description",
2609
- "name": "description",
3809
+ "per_page": {
3810
+ "description": "Number of results per page",
3811
+ "name": "per_page",
2610
3812
  "required": false,
3813
+ "default": 50,
2611
3814
  "hasDynamicHelp": false,
2612
3815
  "multiple": false,
2613
3816
  "type": "option"
2614
3817
  },
2615
- "output": {
2616
- "char": "o",
2617
- "description": "Output format",
2618
- "name": "output",
3818
+ "workspace": {
3819
+ "char": "w",
3820
+ "description": "Workspace ID (optional if set in profile)",
3821
+ "name": "workspace",
2619
3822
  "required": false,
2620
- "default": "summary",
2621
3823
  "hasDynamicHelp": false,
2622
3824
  "multiple": false,
2623
- "options": [
2624
- "summary",
2625
- "json"
2626
- ],
2627
3825
  "type": "option"
2628
3826
  }
2629
3827
  },
2630
3828
  "hasDynamicHelp": false,
2631
3829
  "hiddenAliases": [],
2632
- "id": "static_host:build:create",
3830
+ "id": "static_host:build:list",
2633
3831
  "pluginAlias": "@xano/cli",
2634
3832
  "pluginName": "@xano/cli",
2635
3833
  "pluginType": "core",
@@ -2641,10 +3839,10 @@
2641
3839
  "commands",
2642
3840
  "static_host",
2643
3841
  "build",
2644
- "create",
3842
+ "list",
2645
3843
  "index.js"
2646
3844
  ]
2647
3845
  }
2648
3846
  },
2649
- "version": "0.0.26"
3847
+ "version": "0.0.28"
2650
3848
  }