@amaster.ai/runtime-cli 1.1.10 → 1.1.12

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.
@@ -1,46 +1,43 @@
1
1
  ---
2
2
  name: amaster-runtime-cli
3
- description: Use this skill when you need to operate or integrate the `@amaster.ai/runtime-cli` (`amaster`) CLI in this repository, especially for non-interactive app initialization, authentication, entity CRUD, BPM, workflow execution, S3 listing/upload, and OpenClaw bootstrap. Prefer the current source code over the README when they differ.
3
+ description: Use this skill when you need to operate or integrate the `@amaster.ai/runtime-cli` (`amaster`) CLI for non-interactive app initialization, authentication, entity CRUD, BPM, workflow execution, S3 upload/download/metadata, and OpenClaw bootstrap. Prefer actual CLI behavior over stale external docs.
4
4
  ---
5
5
 
6
6
  # Amaster Runtime CLI
7
7
 
8
- This skill is for AI agents that need to run or explain the `amaster` CLI from `packages/runtime-cli`.
8
+ This skill is for AI agents that need to run or explain the `amaster` CLI.
9
9
 
10
10
  ## Source Of Truth
11
11
 
12
- - Primary source: `packages/runtime-cli/src/cli.ts`
13
- - Supporting behavior: `packages/runtime-cli/src/commands/*.ts` and `packages/runtime-cli/src/config.ts`
14
- - The README documents the product intent, but it is currently ahead of the registered CLI surface in several places. When the README and source disagree, follow the source.
12
+ - Primary source: the installed `amaster` command surface and observed runtime behavior.
13
+ - Prefer `amaster --help` output and real command results over stale external docs.
15
14
 
16
15
  ## Preferred Invocation
17
16
 
18
- Inside this monorepo, prefer a built local binary instead of assuming a global install:
17
+ Use the installed CLI entrypoint:
19
18
 
20
19
  ```bash
21
- pnpm --filter @amaster.ai/runtime-cli run build
22
- node packages/runtime-cli/dist/cli.js <command> [options]
20
+ amaster <command> [options]
23
21
  ```
24
22
 
25
- If the package is already installed globally, `amaster ...` is fine. For one-off usage outside the repo, `npx @amaster.ai/runtime-cli ...` is acceptable.
26
-
27
23
  ## Non-Interactive Rules
28
24
 
29
25
  - Always prefer explicit flags over prompts.
30
26
  - Pass `--app <app-code>` on commands that support it, unless you have already set a default app with `amaster use <app-code>`.
31
- - For `login`, always pass `--email` and `--password` in automation.
32
- - For `entity create`, `entity update`, `bpm start`, `bpm complete`, and `workflow execute`, always pass valid JSON strings with shell-safe quoting.
27
+ - For `login`, always pass `--email` or `--username`, plus `--password`, in automation.
28
+ - For `entity create`, `entity update`, `bpm start`, `bpm complete`, and `workflow run`, always pass valid JSON strings with shell-safe quoting.
29
+ - If an app exposes anonymous endpoints, commands can run without a local auth session. Do not assume `login` is required unless the server returns an auth error.
33
30
  - For machine-oriented usage, disable color if needed:
34
31
 
35
32
  ```bash
36
- FORCE_COLOR=0 node packages/runtime-cli/dist/cli.js ...
33
+ FORCE_COLOR=0 amaster ...
37
34
  ```
38
35
 
39
36
  - Expect non-zero exit codes on validation or API failures; several commands call `process.exit(1)` directly.
40
37
 
41
38
  ## Actual Registered Commands
42
39
 
43
- These commands are registered in `src/cli.ts` today.
40
+ These commands are currently supported by the CLI.
44
41
 
45
42
  ### App Selection And Bootstrap
46
43
 
@@ -67,15 +64,15 @@ Important details:
67
64
  Minimal examples:
68
65
 
69
66
  ```bash
70
- node packages/runtime-cli/dist/cli.js apps
71
- node packages/runtime-cli/dist/cli.js init --app-code myapp --url https://myapp.example.com
72
- node packages/runtime-cli/dist/cli.js use myapp
67
+ amaster apps
68
+ amaster init --app-code myapp --url https://myapp.example.com
69
+ amaster use myapp
73
70
  ```
74
71
 
75
72
  ### Authentication
76
73
 
77
74
  ```bash
78
- amaster login [--app <app-code>] [--email <email>] [--password <password>]
75
+ amaster login [--app <app-code>] [--username <username> | --email <email>] [--password <password>]
79
76
  amaster logout [--app <app-code>]
80
77
  amaster whoami [--app <app-code>]
81
78
  ```
@@ -89,15 +86,15 @@ Command semantics:
89
86
  Important details:
90
87
 
91
88
  - If `--app` is omitted, the CLI resolves the current app from local config.
92
- - `login` will prompt interactively if `--email` or `--password` is missing. Avoid that in automation.
89
+ - `login` will prompt interactively if neither `--email` nor `--username` is provided, or if `--password` is missing. Avoid that in automation.
93
90
  - `whoami` requires both a configured app and a valid access token.
94
91
 
95
92
  Minimal examples:
96
93
 
97
94
  ```bash
98
- node packages/runtime-cli/dist/cli.js login --app myapp --email user@example.com --password 'secret'
99
- node packages/runtime-cli/dist/cli.js whoami --app myapp
100
- node packages/runtime-cli/dist/cli.js logout --app myapp
95
+ amaster login --app myapp --email user@example.com --password 'secret'
96
+ amaster whoami --app myapp
97
+ amaster logout --app myapp
101
98
  ```
102
99
 
103
100
  ### Entity
@@ -108,6 +105,9 @@ amaster entity get <namespace> <entity> <id> [--app <app-code>]
108
105
  amaster entity create <namespace> <entity> [--app <app-code>] --data '<json>'
109
106
  amaster entity update <namespace> <entity> <id> [--app <app-code>] --data '<json>'
110
107
  amaster entity delete <namespace> <entity> <id> [--app <app-code>]
108
+ amaster entity options <namespace> <entity> [--app <app-code>] [--fields <fields>]
109
+ amaster entity bulk-update <namespace> <entity> [--app <app-code>] --items '<json-array-or-@file>'
110
+ amaster entity bulk-delete <namespace> <entity> [--app <app-code>] --ids '<csv-or-json-array-or-@file>'
111
111
  ```
112
112
 
113
113
  Note:
@@ -121,130 +121,205 @@ Command semantics:
121
121
  - `create`: create one entity record from a JSON object.
122
122
  - `update`: update one entity record by ID with a JSON object.
123
123
  - `delete`: delete one entity record by ID.
124
+ - `options`: fetch select-option style values, optionally with an explicit field subset.
125
+ - `bulk-update`: update multiple records in one call from a JSON array.
126
+ - `bulk-delete`: delete multiple records from CSV IDs, a JSON array, or `@file`.
124
127
 
125
128
  Important details:
126
129
 
127
130
  - `namespace` is a logical data namespace such as `default`; it is not the same as app selection.
128
131
  - `entity` is the entity code or collection name.
129
132
  - `--data` must be valid JSON. Invalid JSON throws before the API call completes.
130
- - `list` output is human-oriented and truncated to a subset of fields. Use `get` or the SDK if you need full structured output.
133
+ - `--items` for `bulk-update` must be a JSON array.
134
+ - `--ids` for `bulk-delete` accepts comma-separated IDs, a JSON array, or `@file`.
135
+ - `list` supports SDK-aligned query passthrough through `--query`. Explicit flags such as `--page`, `--page-size`, `--fields`, `--relations`, `--order-by`, `--order-dir`, `--orders`, `--filter`, `--limit`, and `--offset` override the same keys inside `--query`.
136
+ - If `--page` and `--page-size` are omitted, the CLI does not inject pagination defaults; `limit`, `offset`, or raw query pagination are forwarded as-is.
137
+ - Use `--format json` when you need the full structured list response; only `pretty` output truncates columns for readability.
131
138
 
132
139
  Minimal examples:
133
140
 
134
141
  ```bash
135
- node packages/runtime-cli/dist/cli.js entity list default users --app myapp --page 1 --page-size 20
136
- node packages/runtime-cli/dist/cli.js entity get default users 123 --app myapp
137
- node packages/runtime-cli/dist/cli.js entity create default users --app myapp --data '{"name":"Ada","email":"ada@example.com"}'
138
- node packages/runtime-cli/dist/cli.js entity update default users 123 --app myapp --data '{"name":"Ada Lovelace"}'
139
- node packages/runtime-cli/dist/cli.js entity delete default users 123 --app myapp
142
+ amaster entity list default users --app myapp --page 1 --page-size 20
143
+ amaster entity get default users 123 --app myapp
144
+ amaster entity create default users --app myapp --data '{"name":"Ada","email":"ada@example.com"}'
145
+ amaster entity update default users 123 --app myapp --data '{"name":"Ada Lovelace"}'
146
+ amaster entity delete default users 123 --app myapp
147
+ amaster entity options default users --app myapp --fields id,name
148
+ amaster entity bulk-update default users --app myapp --items '[{"id":"123","status":"active"}]'
149
+ amaster entity bulk-delete default users --app myapp --ids '123,456'
140
150
  ```
141
151
 
142
152
  ### BPM
143
153
 
144
154
  ```bash
145
- amaster bpm processes [--app <app-code>]
146
- amaster bpm start <key> [--app <app-code>] [--variables '<json>']
147
- amaster bpm tasks [--app <app-code>] [--assignee <uid>]
148
- amaster bpm complete <id> [--app <app-code>] [--variables '<json>']
155
+ amaster bpm processes [--app <app-code>] [--key <key>] [--name <name>] [--latest-version] [--active] [--suspended] [--sort-by <field>] [--sort-order <order>] [--query '<json>']
156
+ amaster bpm xml <key> [--app <app-code>]
157
+ amaster bpm start <key> [--app <app-code>] [--variables '<json-or-@file>']
158
+ amaster bpm instances [--app <app-code>] [--process-definition-key <key>] [--active] [--first-result <n>] [--max-results <n>] [--query '<json>']
159
+ amaster bpm instance <id> [--app <app-code>]
160
+ amaster bpm instance-tree <id> [--app <app-code>]
161
+ amaster bpm active-activities <id> [--app <app-code>]
162
+ amaster bpm runtime-variables <id> [--app <app-code>]
163
+ amaster bpm variables <id> [--app <app-code>] [--name <name>]
164
+ amaster bpm delete-instance <id> [--app <app-code>] [--skip-custom-listeners]
165
+ amaster bpm suspend-instance <id> [--app <app-code>]
166
+ amaster bpm activate-instance <id> [--app <app-code>]
167
+ amaster bpm modify-instance <id> [--app <app-code>] --modification '<json-or-@file>'
168
+ amaster bpm tasks [--app <app-code>] [--assignee <uid>] [--process-instance-id <id>] [--candidate-user <user>] [--candidate-group <group>] [--name <name>] [--name-like <pattern>] [--task-definition-key <key>] [--first-result <n>] [--max-results <n>] [--sort-by <field>] [--sort-order <order>] [--query '<json>']
169
+ amaster bpm task <id> [--app <app-code>]
170
+ amaster bpm task-count [--app <app-code>] [task filter options...]
171
+ amaster bpm complete <id> [--app <app-code>] [--variables '<json-or-@file>']
172
+ amaster bpm delegate <id> [--app <app-code>] --user-id <userId>
173
+ amaster bpm task-form <id> [--app <app-code>]
174
+ amaster bpm task-form-schema <id> [--app <app-code>] [--redirect <url>]
175
+ amaster bpm task-form-variables <id> [--app <app-code>]
176
+ amaster bpm task-rendered-form <id> [--app <app-code>]
177
+ amaster bpm task-deployed-form <id> [--app <app-code>]
178
+ amaster bpm start-form <key> [--app <app-code>]
179
+ amaster bpm start-form-variables <key> [--app <app-code>]
180
+ amaster bpm start-form-deployed <key> [--app <app-code>]
181
+ amaster bpm history-tasks [--app <app-code>] [--task-assignee <uid>] [--process-instance-id <id>] [--finished] [--unfinished] [--scope handled] [--first-result <n>] [--max-results <n>] [--sort-by <field>] [--sort-order <order>] [--query '<json>']
182
+ amaster bpm history-task-count [--app <app-code>] [history task filter options...]
183
+ amaster bpm history-instances [--app <app-code>] [--started-by <uid>] [--process-definition-key <key>] [--finished] [--unfinished] [--scope initiated] [--sort-by <field>] [--sort-order <order>] [--first-result <n>] [--max-results <n>] [--query '<json>']
184
+ amaster bpm history-instance-count [--app <app-code>] [history process filter options...]
185
+ amaster bpm history-instance <id> [--app <app-code>]
186
+ amaster bpm history-activities [--app <app-code>] [--process-instance-id <id>] [--activity-id <activityId>] [--activity-type <activityType>] [--finished] [--sort-by <field>] [--sort-order <order>] [--query '<json>']
187
+ amaster bpm history-variables [--app <app-code>] [--process-instance-id <id>] [--variable-name <name>] [--deserialize-values] [--query '<json>']
188
+ amaster bpm user-operations [--app <app-code>] [--process-instance-id <id>] [--task-id <id>] [--user-id <uid>] [--operation-type <type>] [--sort-by <field>] [--sort-order <order>] [--first-result <n>] [--max-results <n>] [--query '<json>']
189
+ amaster bpm delete-history-instance <id> [--app <app-code>]
190
+ amaster bpm roles [--app <app-code>]
191
+ amaster bpm user-roles <userId> [--app <app-code>]
149
192
  ```
150
193
 
151
194
  Command semantics:
152
195
 
153
- - `processes`: list process definitions available in the selected app.
196
+ - `processes`: list process definitions, optionally with explicit query filters or a raw query object.
197
+ - `xml <key>`: fetch raw BPMN XML for a process definition key.
154
198
  - `start <key>`: start one process instance by process definition key.
155
- - `tasks`: list current tasks, optionally filtered by assignee.
199
+ - `instances`: list process instances.
200
+ - `instance <id>`: fetch one process instance by ID.
201
+ - `instance-tree <id>`: fetch the runtime activity tree for one process instance.
202
+ - `active-activities <id>`: call the SDK's `getActiveActivities`. On some backends this may mirror `instance-tree`; trust the raw output.
203
+ - `runtime-variables <id>`: fetch runtime variables for one process instance.
204
+ - `variables <id>`: fetch historic variables for one process instance, optionally by variable name.
205
+ - `delete-instance`, `suspend-instance`, `activate-instance`, `modify-instance`: apply direct process-instance operations.
206
+ - `tasks`: list tasks with explicit filters or a raw query object.
207
+ - `task <id>`: fetch one task by ID.
208
+ - `task-count`: return only the task count for the selected filters.
156
209
  - `complete <id>`: complete one task with optional process variables.
210
+ - `delegate <id>`: delegate a task to a target user ID.
211
+ - `task-form*`: inspect task form metadata, schema, variables, rendered HTML, and deployed form definition.
212
+ - `start-form*`: inspect process start-form metadata, variables, and deployed definition.
213
+ - `history-tasks`, `history-task-count`: query historic tasks and counts.
214
+ - `history-instances`, `history-instance-count`, `history-instance <id>`: query historic process instances and counts, or fetch one record.
215
+ - `history-activities`: query execution trace activity records.
216
+ - `history-variables`: query historic variable instances beyond the simpler `bpm variables <id>` shortcut.
217
+ - `user-operations`: query user operation logs.
218
+ - `delete-history-instance <id>`: delete one historic process instance record.
219
+ - `roles`, `user-roles <userId>`: inspect runtime RBAC roles through the BPM SDK surface.
157
220
 
158
221
  Important details:
159
222
 
160
223
  - `start` expects `key` to be the BPM process definition key, not an instance ID.
161
224
  - `complete` expects a task ID, not a process instance ID.
162
- - `--variables` must be a JSON object.
225
+ - `--variables` and `--modification` accept inline JSON or `@file`.
226
+ - `tasks` maps directly to `bpm-client.getTasks`.
227
+ - `task-count` accepts the same filters as `tasks`.
228
+ - `xml` pretty output prints the XML body directly; JSON output returns the structured response.
229
+ - Use `runtime-variables` for live process state and `variables` for historic variable records.
230
+ - `history-variables` is more general than `variables`; it exposes the raw `getHistoryVariableInstances` query surface.
231
+ - `history-task-count` and `history-instance-count` accept the same filters as their corresponding list commands.
232
+ - `roles` and `user-roles` are not pure BPMN operations, but they are part of the current `bpm-client` surface and are intentionally exposed here for parity.
163
233
 
164
234
  Minimal examples:
165
235
 
166
236
  ```bash
167
- node packages/runtime-cli/dist/cli.js bpm processes --app myapp
168
- node packages/runtime-cli/dist/cli.js bpm start order-approval --app myapp --variables '{"orderId":"123"}'
169
- node packages/runtime-cli/dist/cli.js bpm tasks --app myapp --assignee u_001
170
- node packages/runtime-cli/dist/cli.js bpm complete task_123 --app myapp --variables '{"approved":true}'
237
+ amaster bpm processes --app myapp --key order-approval --latest-version
238
+ amaster bpm xml order-approval --app myapp --format pretty
239
+ amaster bpm start order-approval --app myapp --variables '{"orderId":"123"}'
240
+ amaster bpm instances --app myapp --process-definition-key order-approval --active
241
+ amaster bpm active-activities proc_123 --app myapp
242
+ amaster bpm runtime-variables proc_123 --app myapp
243
+ amaster bpm tasks --app myapp --assignee u_001 --sort-by created --sort-order desc
244
+ amaster bpm task-count --app myapp --candidate-group finance
245
+ amaster bpm complete task_123 --app myapp --variables '{"approved":true}'
246
+ amaster bpm delegate task_123 --app myapp --user-id user_2
247
+ amaster bpm task-form-schema task_123 --app myapp
248
+ amaster bpm modify-instance proc_123 --app myapp --modification @./process-modification.json
249
+ amaster bpm history-tasks --app myapp --task-assignee u_001 --finished
250
+ amaster bpm history-instances --app myapp --process-definition-key order-approval --finished
251
+ amaster bpm history-activities --app myapp --process-instance-id proc_123
252
+ amaster bpm history-variables --app myapp --process-instance-id proc_123 --variable-name amount
253
+ amaster bpm user-operations --app myapp --process-instance-id proc_123 --sort-by timestamp --sort-order desc
254
+ amaster bpm roles --app myapp
255
+ amaster bpm user-roles user_2 --app myapp
171
256
  ```
172
257
 
173
258
  ### Workflow
174
259
 
175
260
  ```bash
176
- amaster workflow list [--app <app-code>]
177
- amaster workflow execute <id> [--app <app-code>] [--input '<json>']
261
+ amaster workflow run <name> [--app <app-code>] [--input '<json-or-@file>'] [--request '<json-or-@file>'] [--response-mode <mode>] [--user <user>] [--files '<json-or-@file>'] [--trace-id <traceId>]
178
262
  ```
179
263
 
180
264
  Command semantics:
181
265
 
182
- - `list`: list workflow definitions visible to the selected app.
183
- - `execute <id>`: run one workflow by workflow ID and print the execution result.
266
+ - `run <name>`: call `workflow-client.run` and print the workflow run result.
184
267
 
185
268
  Important details:
186
269
 
187
- - `execute` expects a workflow ID as wired by the backend client.
188
- - `--input` must be valid JSON and defaults to `{}` when omitted.
270
+ - `name` must be the workflow YAML filename without extension and without subpaths.
271
+ - Workflow names are app-specific. The current SDK and CLI do not provide a `workflow list` command, so agents must obtain the workflow name from app docs, UI, or the operator.
272
+ - `--input` must be a JSON object and maps to `WorkflowRunRequest.inputs`.
273
+ - `--request` accepts the full `WorkflowRunRequest` object.
274
+ - Explicit flags such as `--input`, `--response-mode`, `--user`, `--files`, and `--trace-id` override the same keys inside `--request`.
275
+ - `--files` must be a JSON array when provided.
276
+ - `--response-mode` supports `blocking` and `streaming`.
277
+ - `workflow run` may succeed without `amaster login` when the target app publishes the workflow anonymously.
278
+ - Input field names are workflow-specific. Do not assume common keys like `text`; use backend validation errors to refine the payload when the app does not publish a schema.
279
+ - Real validated example: on `https://rcz7v42lr.helige.cn`, the public workflow name is `text-sentiment-analysis` and it requires `--input '{"input_text":"..."}'`.
189
280
 
190
281
  Minimal examples:
191
282
 
192
283
  ```bash
193
- node packages/runtime-cli/dist/cli.js workflow list --app myapp
194
- node packages/runtime-cli/dist/cli.js workflow execute wf_123 --app myapp --input '{"documentId":"abc"}'
284
+ amaster workflow run data-processor --app myapp --input '{"documentId":"abc"}'
285
+ amaster workflow run data-processor --app myapp --request '{"inputs":{"documentId":"abc"},"user":"user-1"}'
286
+ amaster workflow run text-sentiment-analysis --app rcz7v42lr --input '{"input_text":"I love this product. It is fast and easy to use."}'
195
287
  ```
196
288
 
197
289
  ### S3
198
290
 
199
291
  ```bash
200
- amaster s3 list [--app <app-code>] [--bucket <bucket>]
201
- amaster s3 upload <file> [--app <app-code>] [--bucket <bucket>] [--key <object-key>]
292
+ amaster s3 upload <file> [--app <app-code>]
293
+ amaster s3 download <key> <output> [--app <app-code>]
294
+ amaster s3 metadata <key> [--app <app-code>]
202
295
  ```
203
296
 
204
297
  Command semantics:
205
298
 
206
- - `list`: list files in S3-like storage, optionally constrained to one bucket.
207
- - `upload <file>`: upload one local file and optionally override bucket and object key.
299
+ - `upload <file>`: upload one local file.
300
+ - `download <key> <output>`: download one object key and write it to a local path.
301
+ - `metadata <key>`: fetch metadata for one object key.
208
302
 
209
303
  Important details:
210
304
 
211
305
  - `upload` resolves `<file>` against the current working directory and fails fast if the file does not exist.
212
- - `list` prints human-readable rows with key, size, and modification time.
213
- - `upload` prints uploaded key, URL, and bucket.
306
+ - `upload` uses the SDK `s3.upload(file)` surface. The current SDK does not accept bucket, key override, delete, list, or signed URL options.
307
+ - `download` writes the returned blob to `<output>` on disk.
308
+ - `metadata` returns the backend metadata object directly.
214
309
 
215
310
  Minimal examples:
216
311
 
217
312
  ```bash
218
- node packages/runtime-cli/dist/cli.js s3 list --app myapp --bucket docs
219
- node packages/runtime-cli/dist/cli.js s3 upload ./report.pdf --app myapp --bucket docs --key reports/2026-03/report.pdf
313
+ amaster s3 upload ./report.pdf --app myapp
314
+ amaster s3 download uploads/report.pdf ./report.pdf --app myapp
315
+ amaster s3 metadata uploads/report.pdf --app myapp
220
316
  ```
221
317
 
222
- ## Important README Mismatches
223
-
224
- Do not assume the following README-documented commands are available unless `src/cli.ts` is updated to register them:
225
-
226
- - `amaster config ...`
227
- - `amaster register ...`
228
- - `amaster users ...`
229
- - `amaster doctor`
230
- - `amaster list`
231
- - `amaster switch ...`
232
- - `amaster uninstall ...`
233
- - `amaster init --force`
234
- - `amaster entity types ...`
235
- - `amaster bpm claim ...`
236
- - `amaster bpm instances`
237
- - `amaster bpm instance <id>`
238
- - `amaster workflow get <id>`
239
- - `amaster workflow executions ...`
240
- - `amaster workflow execution <id>`
241
- - `amaster s3 download ...`
242
- - `amaster s3 delete ...`
243
- - `amaster s3 url ...`
244
-
245
- Some of these behaviors exist as helper functions in command modules, but they are not currently wired into the public CLI.
246
-
247
- The README also uses some outdated file names and examples. The source currently writes `~/.amaster/config.json`, not `~/.amaster/cli-config.json`.
318
+ ## Scope Limits
319
+
320
+ - Only use commands documented in this skill. Do not invent additional subcommands from intuition, stale README text, or helper functions that are not wired into the public CLI.
321
+ - Workflow discovery is not available in the current CLI or SDK surface. There is no `amaster workflow list`, so workflow names must come from app docs, UI, or the operator.
322
+ - Local app config is stored in `~/.amaster/config.json`.
248
323
 
249
324
  ## Runtime State And File Locations
250
325
 
@@ -263,12 +338,11 @@ During `init`, the CLI fetches app resources from OSS:
263
338
 
264
339
  ## Recommended Agent Workflow
265
340
 
266
- 1. Build the package if you are operating from source.
267
- 2. Run `amaster init --app-code <code> --url <url>` for first-time app setup.
268
- 3. Run `amaster login --app <code> --email ... --password ...`.
269
- 4. Set a default app with `amaster use <code>` if you will make multiple calls.
270
- 5. Use explicit JSON flags for create, update, start, complete, and execute operations.
271
- 6. Prefer list or get operations before destructive changes.
341
+ 1. Run `amaster init --app-code <code> --url <url>` for first-time app setup.
342
+ 2. Run `amaster login --app <code> --email ... --password ...` or `--username ... --password ...`.
343
+ 3. Set a default app with `amaster use <code>` if you will make multiple calls.
344
+ 4. Use explicit JSON flags for create, update, start, complete, and execute operations.
345
+ 5. Prefer list or get operations before destructive changes.
272
346
 
273
347
  ## When To Use The SDK Instead
274
348
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amaster.ai/runtime-cli",
3
- "version": "1.1.10",
3
+ "version": "1.1.12",
4
4
  "description": "CLI for Amaster SDK - Multi-app support for OpenClaw",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -39,7 +39,7 @@
39
39
  "ora": "^8.0.1",
40
40
  "yaml": "^2.3.4",
41
41
  "inquirer": "^9.2.12",
42
- "@amaster.ai/client": "1.1.10"
42
+ "@amaster.ai/client": "1.1.12"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@types/inquirer": "^9.0.7",