@xano/developer-mcp 1.0.60 → 1.0.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/dist/cli_docs/index.js +16 -1
- package/dist/cli_docs/topics/auth.d.ts +2 -0
- package/dist/cli_docs/topics/auth.js +62 -0
- package/dist/cli_docs/topics/branch.js +1 -1
- package/dist/cli_docs/topics/function.js +9 -3
- package/dist/cli_docs/topics/integration.js +6 -1
- package/dist/cli_docs/topics/platform.d.ts +2 -0
- package/dist/cli_docs/topics/platform.js +41 -0
- package/dist/cli_docs/topics/profile.js +66 -31
- package/dist/cli_docs/topics/release.d.ts +2 -0
- package/dist/cli_docs/topics/release.js +215 -0
- package/dist/cli_docs/topics/run.js +1 -1
- package/dist/cli_docs/topics/start.js +20 -13
- package/dist/cli_docs/topics/static_host.js +1 -1
- package/dist/cli_docs/topics/tenant.d.ts +2 -0
- package/dist/cli_docs/topics/tenant.js +472 -0
- package/dist/cli_docs/topics/unit_test.d.ts +2 -0
- package/dist/cli_docs/topics/unit_test.js +88 -0
- package/dist/cli_docs/topics/update.d.ts +2 -0
- package/dist/cli_docs/topics/update.js +29 -0
- package/dist/cli_docs/topics/workflow_test.d.ts +2 -0
- package/dist/cli_docs/topics/workflow_test.js +119 -0
- package/dist/cli_docs/topics/workspace.js +56 -9
- package/package.json +1 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export const updateDoc = {
|
|
2
|
+
topic: "update",
|
|
3
|
+
title: "Xano CLI - Update",
|
|
4
|
+
description: `The update command lets you check for and install CLI updates.`,
|
|
5
|
+
ai_hints: `**When to suggest updating:**
|
|
6
|
+
- User encounters unexpected behavior that might be fixed in a newer version
|
|
7
|
+
- User asks about new features
|
|
8
|
+
- Before troubleshooting CLI issues
|
|
9
|
+
|
|
10
|
+
**Update uses npm** - runs \`npm install -g @xano/cli\` under the hood.
|
|
11
|
+
**Beta channel** - use \`--beta\` to get pre-release versions for testing new features.`,
|
|
12
|
+
related_topics: ["start"],
|
|
13
|
+
commands: [
|
|
14
|
+
{
|
|
15
|
+
name: "update",
|
|
16
|
+
description: "Update the Xano CLI to the latest version",
|
|
17
|
+
usage: "xano update [options]",
|
|
18
|
+
flags: [
|
|
19
|
+
{ name: "check", type: "boolean", required: false, description: "Check for updates without installing" },
|
|
20
|
+
{ name: "beta", type: "boolean", required: false, description: "Update to the latest beta version" }
|
|
21
|
+
],
|
|
22
|
+
examples: [
|
|
23
|
+
"xano update",
|
|
24
|
+
"xano update --check",
|
|
25
|
+
"xano update --beta"
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
};
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
export const workflowTestDoc = {
|
|
2
|
+
topic: "workflow_test",
|
|
3
|
+
title: "Xano CLI - Workflow Test Management",
|
|
4
|
+
description: `Workflow test commands let you run end-to-end tests that exercise multi-step workflows. Unlike unit tests which test individual functions, workflow tests validate complete request flows.
|
|
5
|
+
|
|
6
|
+
## Key Concepts
|
|
7
|
+
|
|
8
|
+
- **Workflow tests** are more comprehensive than unit tests, testing full request flows.
|
|
9
|
+
- Tests are created and configured in the Xano dashboard; the CLI is for listing, viewing, and running them.
|
|
10
|
+
- The \`get\` command supports \`xs\` output format for viewing test XanoScript.
|
|
11
|
+
- Use \`run_all\` in CI/CD pipelines for automated end-to-end validation.`,
|
|
12
|
+
ai_hints: `**Key concepts:**
|
|
13
|
+
- Workflow tests are more comprehensive than unit tests, testing full request flows
|
|
14
|
+
- Tests are created in the Xano dashboard; the CLI is for running them
|
|
15
|
+
- \`workflow_test:get\` supports \`xs\` output format for viewing test XanoScript
|
|
16
|
+
- Use \`workflow_test:run_all\` in CI/CD pipelines for automated testing
|
|
17
|
+
|
|
18
|
+
**CI/CD integration:**
|
|
19
|
+
- Use \`workflow_test:run_all -o json\` for machine-readable output
|
|
20
|
+
- Combine with \`unit_test:run_all\` for full test coverage
|
|
21
|
+
- Filter by branch with \`--branch\` to test specific branches
|
|
22
|
+
|
|
23
|
+
**Viewing test details:**
|
|
24
|
+
- Use \`workflow_test:get <id> -o xs\` to view the test XanoScript
|
|
25
|
+
- Use \`--include-draft\` to view draft versions of tests`,
|
|
26
|
+
related_topics: ["unit_test", "workspace", "branch"],
|
|
27
|
+
commands: [
|
|
28
|
+
{
|
|
29
|
+
name: "workflow_test:list",
|
|
30
|
+
description: "List workflow tests in the workspace",
|
|
31
|
+
usage: "xano workflow_test:list [options]",
|
|
32
|
+
flags: [
|
|
33
|
+
{ name: "branch", short: "b", type: "string", required: false, description: "Branch to list tests from" },
|
|
34
|
+
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID" },
|
|
35
|
+
{ name: "output", short: "o", type: "string", required: false, default: "summary", description: "Output format: summary or json" }
|
|
36
|
+
],
|
|
37
|
+
examples: [
|
|
38
|
+
"xano workflow_test:list",
|
|
39
|
+
"xano workflow_test:list --branch dev",
|
|
40
|
+
"xano workflow_test:list -o json"
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: "workflow_test:get",
|
|
45
|
+
description: "Get details for a specific workflow test",
|
|
46
|
+
usage: "xano workflow_test:get <workflow_test_id> [options]",
|
|
47
|
+
args: [
|
|
48
|
+
{ name: "workflow_test_id", required: true, description: "ID of the workflow test to retrieve" }
|
|
49
|
+
],
|
|
50
|
+
flags: [
|
|
51
|
+
{ name: "include-draft", type: "boolean", required: false, description: "Include draft version if available" },
|
|
52
|
+
{ name: "output", short: "o", type: "string", required: false, default: "summary", description: "Output format: xs or json" },
|
|
53
|
+
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID" }
|
|
54
|
+
],
|
|
55
|
+
examples: [
|
|
56
|
+
"xano workflow_test:get 456",
|
|
57
|
+
"xano workflow_test:get 456 -o xs",
|
|
58
|
+
"xano workflow_test:get 456 --include-draft -o json"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: "workflow_test:run",
|
|
63
|
+
description: "Run a single workflow test by ID",
|
|
64
|
+
usage: "xano workflow_test:run <workflow_test_id> [options]",
|
|
65
|
+
args: [
|
|
66
|
+
{ name: "workflow_test_id", required: true, description: "ID of the workflow test to run" }
|
|
67
|
+
],
|
|
68
|
+
flags: [
|
|
69
|
+
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID" },
|
|
70
|
+
{ name: "output", short: "o", type: "string", required: false, default: "summary", description: "Output format: summary or json" }
|
|
71
|
+
],
|
|
72
|
+
examples: [
|
|
73
|
+
"xano workflow_test:run 456",
|
|
74
|
+
"xano workflow_test:run 456 -o json"
|
|
75
|
+
]
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "workflow_test:run_all",
|
|
79
|
+
description: "Run all workflow tests in the workspace",
|
|
80
|
+
usage: "xano workflow_test:run_all [options]",
|
|
81
|
+
flags: [
|
|
82
|
+
{ name: "branch", short: "b", type: "string", required: false, description: "Branch to run tests against" },
|
|
83
|
+
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID" },
|
|
84
|
+
{ name: "output", short: "o", type: "string", required: false, default: "summary", description: "Output format: summary or json" }
|
|
85
|
+
],
|
|
86
|
+
examples: [
|
|
87
|
+
"xano workflow_test:run_all",
|
|
88
|
+
"xano workflow_test:run_all --branch dev -o json"
|
|
89
|
+
]
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: "workflow_test:delete",
|
|
93
|
+
description: "Delete a workflow test by ID",
|
|
94
|
+
usage: "xano workflow_test:delete <workflow_test_id> [options]",
|
|
95
|
+
args: [
|
|
96
|
+
{ name: "workflow_test_id", required: true, description: "ID of the workflow test to delete" }
|
|
97
|
+
],
|
|
98
|
+
flags: [
|
|
99
|
+
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID" }
|
|
100
|
+
],
|
|
101
|
+
examples: [
|
|
102
|
+
"xano workflow_test:delete 456"
|
|
103
|
+
]
|
|
104
|
+
}
|
|
105
|
+
],
|
|
106
|
+
workflows: [
|
|
107
|
+
{
|
|
108
|
+
name: "Validate Workflows Before Deploy",
|
|
109
|
+
description: "Run all workflow tests to validate before deployment",
|
|
110
|
+
steps: [
|
|
111
|
+
"List available tests: `xano workflow_test:list`",
|
|
112
|
+
"Run all tests: `xano workflow_test:run_all`",
|
|
113
|
+
"Check results for PASS/FAIL status"
|
|
114
|
+
],
|
|
115
|
+
example: `xano workflow_test:list
|
|
116
|
+
xano workflow_test:run_all -o json`
|
|
117
|
+
}
|
|
118
|
+
]
|
|
119
|
+
};
|
|
@@ -78,8 +78,20 @@ After \`workspace:pull\`, files are organized using snake_case naming:
|
|
|
78
78
|
|
|
79
79
|
**Branch handling:**
|
|
80
80
|
- Use \`-b\` flag or set branch in profile
|
|
81
|
-
- Pull from one branch, push to another is supported
|
|
82
|
-
|
|
81
|
+
- Pull from one branch, push to another is supported
|
|
82
|
+
|
|
83
|
+
**Push modes:**
|
|
84
|
+
- Default (partial): Only pushes changed files
|
|
85
|
+
- \`--sync\`: Full push of all files
|
|
86
|
+
- \`--sync --delete\`: Full push AND removes remote objects not in local
|
|
87
|
+
- \`--dry-run\`: Preview what would change without applying
|
|
88
|
+
- \`--include/-i\` and \`--exclude/-e\`: Glob patterns for selective push
|
|
89
|
+
|
|
90
|
+
**Git integration:**
|
|
91
|
+
- \`workspace:git:pull\` pulls XanoScript directly from GitHub/GitLab repos
|
|
92
|
+
- Supports private repos with \`--token\` flag
|
|
93
|
+
- Can pull from a specific subdirectory with \`--path\``,
|
|
94
|
+
related_topics: ["start", "branch", "function", "release", "integration"],
|
|
83
95
|
commands: [
|
|
84
96
|
{
|
|
85
97
|
name: "workspace:list",
|
|
@@ -162,37 +174,72 @@ After \`workspace:pull\`, files are organized using snake_case naming:
|
|
|
162
174
|
},
|
|
163
175
|
{
|
|
164
176
|
name: "workspace:pull",
|
|
165
|
-
description: "Download workspace code to local directory",
|
|
177
|
+
description: "Download workspace code to local directory. Splits multidoc into individual .xs files organized by type.",
|
|
166
178
|
usage: "xano workspace:pull <directory> [options]",
|
|
167
179
|
args: [
|
|
168
180
|
{ name: "directory", required: true, description: "Local directory to save files" }
|
|
169
181
|
],
|
|
170
182
|
flags: [
|
|
171
183
|
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID (uses profile default if not set)" },
|
|
172
|
-
{ name: "branch", short: "b", type: "string", required: false, description: "Branch
|
|
184
|
+
{ name: "branch", short: "b", type: "string", required: false, description: "Branch label to pull from" },
|
|
173
185
|
{ name: "env", type: "boolean", required: false, description: "Include environment variables" },
|
|
186
|
+
{ name: "draft", type: "boolean", required: false, description: "Include draft versions of functions" },
|
|
174
187
|
{ name: "records", type: "boolean", required: false, description: "Include table records" }
|
|
175
188
|
],
|
|
176
189
|
examples: [
|
|
177
190
|
"xano workspace:pull ./my-app",
|
|
178
|
-
"xano workspace:pull ./staging-code -b
|
|
179
|
-
"xano workspace:pull ./backup --env --records"
|
|
191
|
+
"xano workspace:pull ./staging-code -b dev",
|
|
192
|
+
"xano workspace:pull ./backup --env --records --draft"
|
|
180
193
|
]
|
|
181
194
|
},
|
|
182
195
|
{
|
|
183
196
|
name: "workspace:push",
|
|
184
|
-
description: "Upload local XanoScript files to workspace",
|
|
197
|
+
description: "Upload local XanoScript files to workspace. By default only pushes changed files (partial push). Use --sync for a full push.",
|
|
185
198
|
usage: "xano workspace:push <directory> [options]",
|
|
186
199
|
args: [
|
|
187
200
|
{ name: "directory", required: true, description: "Local directory containing .xs files" }
|
|
188
201
|
],
|
|
189
202
|
flags: [
|
|
190
203
|
{ name: "workspace", short: "w", type: "string", required: false, description: "Workspace ID (uses profile default if not set)" },
|
|
191
|
-
{ name: "branch", short: "b", type: "string", required: false, description: "Branch
|
|
204
|
+
{ name: "branch", short: "b", type: "string", required: false, description: "Branch label to push to" },
|
|
205
|
+
{ name: "sync", type: "boolean", required: false, description: "Full push (default is partial/changed-only)" },
|
|
206
|
+
{ name: "delete", type: "boolean", required: false, description: "Delete remote objects not in local files (requires --sync)" },
|
|
207
|
+
{ name: "dry-run", type: "boolean", required: false, description: "Preview changes without applying" },
|
|
208
|
+
{ name: "force", type: "boolean", required: false, description: "Skip confirmation prompt" },
|
|
209
|
+
{ name: "env", type: "boolean", required: false, description: "Include environment variables" },
|
|
210
|
+
{ name: "records", type: "boolean", required: false, description: "Include table records" },
|
|
211
|
+
{ name: "truncate", type: "boolean", required: false, description: "Truncate tables before importing records" },
|
|
212
|
+
{ name: "transaction", type: "boolean", required: false, default: "true", description: "Wrap push in database transaction (--no-transaction to disable)" },
|
|
213
|
+
{ name: "guids", type: "boolean", required: false, default: "true", description: "Write GUIDs back to local files after push (--no-guids to disable)" },
|
|
214
|
+
{ name: "include", short: "i", type: "string", required: false, description: "Glob pattern to include specific files (repeatable)" },
|
|
215
|
+
{ name: "exclude", short: "e", type: "string", required: false, description: "Glob pattern to exclude specific files (repeatable)" }
|
|
192
216
|
],
|
|
193
217
|
examples: [
|
|
194
218
|
"xano workspace:push ./my-app",
|
|
195
|
-
"xano workspace:push ./my-app -b
|
|
219
|
+
"xano workspace:push ./my-app -b dev",
|
|
220
|
+
"xano workspace:push ./my-app --dry-run",
|
|
221
|
+
"xano workspace:push ./my-app --sync --delete --force",
|
|
222
|
+
"xano workspace:push ./my-app -i 'api/**' -i 'function/**'",
|
|
223
|
+
"xano workspace:push ./my-app -e 'table/**' --records --truncate"
|
|
224
|
+
]
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
name: "workspace:git:pull",
|
|
228
|
+
description: "Pull XanoScript files directly from a git repository (GitHub, GitLab, etc.)",
|
|
229
|
+
usage: "xano workspace:git:pull <directory> --repo <url> [options]",
|
|
230
|
+
args: [
|
|
231
|
+
{ name: "directory", required: true, description: "Local directory to save files" }
|
|
232
|
+
],
|
|
233
|
+
flags: [
|
|
234
|
+
{ name: "repo", short: "r", type: "string", required: true, description: "Git repository URL (HTTPS or SSH)" },
|
|
235
|
+
{ name: "branch", short: "b", type: "string", required: false, description: "Git branch, tag, or ref to pull from" },
|
|
236
|
+
{ name: "path", type: "string", required: false, description: "Subdirectory within the repo to pull from" },
|
|
237
|
+
{ name: "token", short: "t", type: "string", required: false, description: "Personal access token for private repos" }
|
|
238
|
+
],
|
|
239
|
+
examples: [
|
|
240
|
+
"xano workspace:git:pull ./code -r https://github.com/org/repo.git",
|
|
241
|
+
"xano workspace:git:pull ./code -r https://github.com/org/repo.git -b main --path src/xano",
|
|
242
|
+
"xano workspace:git:pull ./code -r https://github.com/org/private-repo.git -t ghp_token123"
|
|
196
243
|
]
|
|
197
244
|
}
|
|
198
245
|
],
|
package/package.json
CHANGED