ghostdock 0.0.18 → 0.0.20
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/dist/cli-reference.md +751 -657
- package/dist/cli.md +279 -268
- package/dist/index.js +5899 -3841
- package/package.json +1 -1
package/dist/cli-reference.md
CHANGED
|
@@ -4,46 +4,46 @@
|
|
|
4
4
|
|
|
5
5
|
Every command the `ghostdock` CLI ships, with its full description and flags.
|
|
6
6
|
For how to install, log in and choose an organization, read [cli.md](cli.md). Concepts and
|
|
7
|
-
workflows are in the built-in skills (`ghostdock
|
|
7
|
+
workflows are in the built-in skills (`ghostdock skill list`).
|
|
8
8
|
|
|
9
9
|
Binaries: `ghostdock`, `gdock`.
|
|
10
10
|
Global flag `--base-url`: API origin (overrides GHOSTDOCK_BASE_URL and the built-in default).
|
|
11
11
|
Global flag `--json`: Print the result as one JSON document on stdout, for scripts and agents. Without it, output is for people.
|
|
12
12
|
|
|
13
|
-
## `ghostdock
|
|
13
|
+
## `ghostdock app`
|
|
14
14
|
|
|
15
15
|
Published apps of an organization.
|
|
16
16
|
|
|
17
|
-
### `ghostdock
|
|
17
|
+
### `ghostdock app list`
|
|
18
18
|
|
|
19
|
-
List the live published apps (sites) of an organization, with their URLs. Each app has a siteId to pass to
|
|
19
|
+
List the live published apps (sites) of an organization, with their URLs. Each app has a siteId to pass to site unpublish.
|
|
20
20
|
|
|
21
21
|
```
|
|
22
|
-
ghostdock
|
|
22
|
+
ghostdock app list [flags]
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
| Argument | Description |
|
|
26
26
|
| --- | --- |
|
|
27
|
-
| `--org <string>` | Organization id or slug, from
|
|
27
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
28
28
|
|
|
29
|
-
MCP tool: `
|
|
29
|
+
MCP tool: `app_list`.
|
|
30
30
|
|
|
31
31
|
## `ghostdock docker`
|
|
32
32
|
|
|
33
|
-
Docker over the private network: a
|
|
33
|
+
Docker over the private network: a VM's Docker engine from this machine.
|
|
34
34
|
|
|
35
35
|
### `ghostdock docker context`
|
|
36
36
|
|
|
37
|
-
Point Docker at a
|
|
37
|
+
Point Docker at a VM's Docker engine over the private network: plain `docker` and `docker compose` then run there. Creates (or updates) the Docker context ghostdock-<org>-<vm> for tcp://<vm>.<org>.ghostdock.internal:2376 with a client certificate of this machine's device, and makes it the current context. Needs `ghostdock network connect` first, and Docker's CLI. The certificate lives 30 days; `network connect` and this command renew it with 10 days left. An expired certificate fails Docker's TLS handshake with Docker's own error: run this command again. Docker's `no such host` on a ghostdock.internal address means this machine is not connected: run `ghostdock network connect`. After an organization rename the old name stops resolving: run it again to update the host.
|
|
38
38
|
|
|
39
39
|
```
|
|
40
|
-
ghostdock docker context <
|
|
40
|
+
ghostdock docker context <vm> [flags]
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
| Argument | Description |
|
|
44
44
|
| --- | --- |
|
|
45
|
-
| `<
|
|
46
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
45
|
+
| `<vm>` | VM name, from `network ls`. Required. |
|
|
46
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
47
47
|
| `--use` | Make it the current Docker context (`docker context use`). `--no-use` only creates or updates it. Default: `true`. |
|
|
48
48
|
|
|
49
49
|
## `ghostdock env`
|
|
@@ -61,7 +61,7 @@ ghostdock env delete <name> [flags]
|
|
|
61
61
|
| Argument | Description |
|
|
62
62
|
| --- | --- |
|
|
63
63
|
| `<name>` | Environment variable name. Required. |
|
|
64
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
64
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
65
65
|
|
|
66
66
|
MCP tool: `env_delete`.
|
|
67
67
|
|
|
@@ -76,7 +76,7 @@ ghostdock env get <name> [flags]
|
|
|
76
76
|
| Argument | Description |
|
|
77
77
|
| --- | --- |
|
|
78
78
|
| `<name>` | Environment variable name. Required. |
|
|
79
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
79
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
80
80
|
|
|
81
81
|
MCP tool: `env_get`.
|
|
82
82
|
|
|
@@ -90,7 +90,7 @@ ghostdock env list [flags]
|
|
|
90
90
|
|
|
91
91
|
| Argument | Description |
|
|
92
92
|
| --- | --- |
|
|
93
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
93
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
94
94
|
|
|
95
95
|
MCP tool: `env_list`.
|
|
96
96
|
|
|
@@ -105,7 +105,7 @@ ghostdock env set <name> [flags]
|
|
|
105
105
|
| Argument | Description |
|
|
106
106
|
| --- | --- |
|
|
107
107
|
| `<name>` | Environment variable name. Required. |
|
|
108
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
108
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
109
109
|
| `--value <value>` | Value to store. |
|
|
110
110
|
| `--value-stdin` | Read the value from stdin — keeps secrets out of shell history. |
|
|
111
111
|
| `--secret` | Shorthand for --kind secret. Required when creating a secret. |
|
|
@@ -114,139 +114,139 @@ ghostdock env set <name> [flags]
|
|
|
114
114
|
|
|
115
115
|
MCP tool: `env_set`.
|
|
116
116
|
|
|
117
|
-
## `ghostdock
|
|
117
|
+
## `ghostdock image`
|
|
118
118
|
|
|
119
119
|
Organization image catalog: OCI bookmarks, Dockerfiles and Compose files.
|
|
120
120
|
|
|
121
|
-
### `ghostdock
|
|
121
|
+
### `ghostdock image add`
|
|
122
122
|
|
|
123
123
|
Bookmark an OCI image ref in the organization’s image catalog. Fails if it is already bookmarked.
|
|
124
124
|
|
|
125
125
|
```
|
|
126
|
-
ghostdock
|
|
126
|
+
ghostdock image add --ref <string> [flags]
|
|
127
127
|
```
|
|
128
128
|
|
|
129
129
|
| Argument | Description |
|
|
130
130
|
| --- | --- |
|
|
131
|
-
| `--org <string>` | Organization id or slug, from
|
|
131
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
132
132
|
| `--ref <string>` | OCI image reference, e.g. ghcr.io/acme/app:latest. Required. |
|
|
133
133
|
| `--label <string>` | Display label for the bookmark. Optional. |
|
|
134
134
|
|
|
135
|
-
MCP tool: `
|
|
135
|
+
MCP tool: `image_add`.
|
|
136
136
|
|
|
137
|
-
### `ghostdock
|
|
137
|
+
### `ghostdock image add-compose`
|
|
138
138
|
|
|
139
139
|
Add a Compose project to the organization’s image catalog. Give its files, or a reference: a Compose project published as an OCI artifact (oci://…), used through include: with an optional override. ghostdock.* service labels (of the files, or of the override) become its manifest. Fails if the name is taken.
|
|
140
140
|
|
|
141
141
|
```
|
|
142
|
-
ghostdock
|
|
142
|
+
ghostdock image add-compose --name <string> [flags]
|
|
143
143
|
```
|
|
144
144
|
|
|
145
145
|
| Argument | Description |
|
|
146
146
|
| --- | --- |
|
|
147
|
-
| `--org <string>` | Organization id or slug, from
|
|
147
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
148
148
|
| `--name <string>` | Image name, unique in the organization. Required. |
|
|
149
149
|
| `--files <object>` | Compose files by file name. Must include docker-compose.yml/yaml or compose.yml/yaml. (JSON object) |
|
|
150
|
-
| `--reference <string>` | A published Compose project instead of files, e.g. oci://docker.io/ghostdockhq/
|
|
150
|
+
| `--reference <string>` | A published Compose project instead of files, e.g. oci://docker.io/ghostdockhq/headless-compose:ubuntu-26.04. |
|
|
151
151
|
| `--override <string>` | With reference: a Compose file merged into it (services, environment, labels). |
|
|
152
152
|
|
|
153
|
-
MCP tool: `
|
|
153
|
+
MCP tool: `image_add_compose`.
|
|
154
154
|
|
|
155
|
-
### `ghostdock
|
|
155
|
+
### `ghostdock image add-dockerfile`
|
|
156
156
|
|
|
157
157
|
Add a Dockerfile to the organization’s image catalog. ghostdock.* LABEL lines become its manifest. Fails if the name is taken.
|
|
158
158
|
|
|
159
159
|
```
|
|
160
|
-
ghostdock
|
|
160
|
+
ghostdock image add-dockerfile --name <string> --dockerfile <string> [flags]
|
|
161
161
|
```
|
|
162
162
|
|
|
163
163
|
| Argument | Description |
|
|
164
164
|
| --- | --- |
|
|
165
|
-
| `--org <string>` | Organization id or slug, from
|
|
165
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
166
166
|
| `--name <string>` | Image name, unique in the organization. Required. |
|
|
167
167
|
| `--dockerfile <string>` | Dockerfile text. ghostdock.* LABEL lines become the image manifest. Required. |
|
|
168
168
|
|
|
169
|
-
MCP tool: `
|
|
169
|
+
MCP tool: `image_add_dockerfile`.
|
|
170
170
|
|
|
171
|
-
### `ghostdock
|
|
171
|
+
### `ghostdock image get`
|
|
172
172
|
|
|
173
173
|
Get one catalog image with its spec, manifest and requirements. Returns kind, spec and a redacted manifest with requiredEnvironment / requiredUrls / requiredMcps. An OCI bookmark’s manifest is null: its labels are read at create time.
|
|
174
174
|
|
|
175
175
|
```
|
|
176
|
-
ghostdock
|
|
176
|
+
ghostdock image get <image-id> [flags]
|
|
177
177
|
```
|
|
178
178
|
|
|
179
179
|
| Argument | Description |
|
|
180
180
|
| --- | --- |
|
|
181
|
-
| `<image-id>` | Catalog image id, from
|
|
182
|
-
| `--org <string>` | Organization id or slug, from
|
|
181
|
+
| `<image-id>` | Catalog image id, from image list or image get. Required. |
|
|
182
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
183
183
|
|
|
184
|
-
MCP tool: `
|
|
184
|
+
MCP tool: `image_get`.
|
|
185
185
|
|
|
186
|
-
### `ghostdock
|
|
186
|
+
### `ghostdock image list`
|
|
187
187
|
|
|
188
|
-
List the images an organization can boot
|
|
188
|
+
List the images an organization can boot VMs from. OCI bookmarks, image add-dockerfile and image add-compose rows, and refs its VMs use. A discovery catalog, not an allowlist: vm create accepts any OCI ref. Items carry vmCount and a redacted manifest with requiredEnvironment / requiredUrls / requiredMcps. An OCI bookmark stores no labels (manifest null): vm create reads them from the digest the ref names then.
|
|
189
189
|
|
|
190
190
|
```
|
|
191
|
-
ghostdock
|
|
191
|
+
ghostdock image list [flags]
|
|
192
192
|
```
|
|
193
193
|
|
|
194
194
|
| Argument | Description |
|
|
195
195
|
| --- | --- |
|
|
196
|
-
| `--org <string>` | Organization id or slug, from
|
|
196
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
197
197
|
|
|
198
|
-
MCP tool: `
|
|
198
|
+
MCP tool: `image_list`.
|
|
199
199
|
|
|
200
|
-
### `ghostdock
|
|
200
|
+
### `ghostdock image remove`
|
|
201
201
|
|
|
202
|
-
Remove an image from the organization’s catalog.
|
|
202
|
+
Remove an image from the organization’s catalog. VMs already using it are not affected.
|
|
203
203
|
|
|
204
204
|
```
|
|
205
|
-
ghostdock
|
|
205
|
+
ghostdock image remove <image-id> [flags]
|
|
206
206
|
```
|
|
207
207
|
|
|
208
208
|
| Argument | Description |
|
|
209
209
|
| --- | --- |
|
|
210
|
-
| `<image-id>` | Catalog image id, from
|
|
211
|
-
| `--org <string>` | Organization id or slug, from
|
|
210
|
+
| `<image-id>` | Catalog image id, from image list or image get. Required. |
|
|
211
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
212
212
|
|
|
213
|
-
MCP tool: `
|
|
213
|
+
MCP tool: `image_remove`.
|
|
214
214
|
|
|
215
|
-
### `ghostdock
|
|
215
|
+
### `ghostdock image update-compose`
|
|
216
216
|
|
|
217
217
|
Replace a catalog Compose image’s files, reference, override and/or name. Re-parses its labels.
|
|
218
218
|
|
|
219
219
|
```
|
|
220
|
-
ghostdock
|
|
220
|
+
ghostdock image update-compose <image-id> [flags]
|
|
221
221
|
```
|
|
222
222
|
|
|
223
223
|
| Argument | Description |
|
|
224
224
|
| --- | --- |
|
|
225
|
-
| `<image-id>` | Catalog image id, from
|
|
226
|
-
| `--org <string>` | Organization id or slug, from
|
|
225
|
+
| `<image-id>` | Catalog image id, from image list or image get. Required. |
|
|
226
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
227
227
|
| `--files <object>` | New Compose files by file name. Omit to keep the current files. (JSON object) |
|
|
228
228
|
| `--reference <string>` | A new reference (oci://…): the image becomes a Compose reference. |
|
|
229
229
|
| `--override <string>` | A reference’s new override; null removes it. |
|
|
230
230
|
| `--name <string>` | New image name. Omit to keep it. |
|
|
231
231
|
|
|
232
|
-
MCP tool: `
|
|
232
|
+
MCP tool: `image_update_compose`.
|
|
233
233
|
|
|
234
|
-
### `ghostdock
|
|
234
|
+
### `ghostdock image update-dockerfile`
|
|
235
235
|
|
|
236
236
|
Replace a catalog Dockerfile, optionally renaming it. Re-parses its ghostdock.* labels.
|
|
237
237
|
|
|
238
238
|
```
|
|
239
|
-
ghostdock
|
|
239
|
+
ghostdock image update-dockerfile <image-id> --dockerfile <string> [flags]
|
|
240
240
|
```
|
|
241
241
|
|
|
242
242
|
| Argument | Description |
|
|
243
243
|
| --- | --- |
|
|
244
|
-
| `<image-id>` | Catalog image id, from
|
|
245
|
-
| `--org <string>` | Organization id or slug, from
|
|
244
|
+
| `<image-id>` | Catalog image id, from image list or image get. Required. |
|
|
245
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
246
246
|
| `--dockerfile <string>` | Dockerfile text. ghostdock.* LABEL lines become the image manifest. Required. |
|
|
247
247
|
| `--name <string>` | New image name. Omit to keep it. |
|
|
248
248
|
|
|
249
|
-
MCP tool: `
|
|
249
|
+
MCP tool: `image_update_dockerfile`.
|
|
250
250
|
|
|
251
251
|
## `ghostdock login`
|
|
252
252
|
|
|
@@ -273,7 +273,7 @@ ghostdock logout
|
|
|
273
273
|
|
|
274
274
|
## `ghostdock network`
|
|
275
275
|
|
|
276
|
-
The private network: reach your
|
|
276
|
+
The private network: reach your VMs by address and name from this machine.
|
|
277
277
|
|
|
278
278
|
### `ghostdock network connect`
|
|
279
279
|
|
|
@@ -285,8 +285,8 @@ ghostdock network connect [provider] [flags]
|
|
|
285
285
|
|
|
286
286
|
| Argument | Description |
|
|
287
287
|
| --- | --- |
|
|
288
|
-
| `<provider>` |
|
|
289
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
288
|
+
| `<provider>` | Provider name or id. Omit for the organization's default provider (else the platform default). Only its VMs are reachable; connecting through another replaces the connection. |
|
|
289
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
290
290
|
|
|
291
291
|
### `ghostdock network devices`
|
|
292
292
|
|
|
@@ -318,7 +318,7 @@ ghostdock network disconnect
|
|
|
318
318
|
|
|
319
319
|
### `ghostdock network ls`
|
|
320
320
|
|
|
321
|
-
|
|
321
|
+
VMs of an organization with their private addresses and names, and which are reachable through the current connection.
|
|
322
322
|
|
|
323
323
|
```
|
|
324
324
|
ghostdock network ls [flags]
|
|
@@ -326,7 +326,7 @@ ghostdock network ls [flags]
|
|
|
326
326
|
|
|
327
327
|
| Argument | Description |
|
|
328
328
|
| --- | --- |
|
|
329
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
329
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
330
330
|
|
|
331
331
|
### `ghostdock network status`
|
|
332
332
|
|
|
@@ -336,38 +336,38 @@ Whether this machine is connected, through which provider, and as which device.
|
|
|
336
336
|
ghostdock network status
|
|
337
337
|
```
|
|
338
338
|
|
|
339
|
-
## `ghostdock
|
|
339
|
+
## `ghostdock organization`
|
|
340
340
|
|
|
341
341
|
Organizations you belong to.
|
|
342
342
|
|
|
343
|
-
### `ghostdock
|
|
343
|
+
### `ghostdock organization current`
|
|
344
344
|
|
|
345
345
|
Show which organization commands use, and where it comes from.
|
|
346
346
|
|
|
347
347
|
```
|
|
348
|
-
ghostdock
|
|
348
|
+
ghostdock organization current [flags]
|
|
349
349
|
```
|
|
350
350
|
|
|
351
351
|
| Argument | Description |
|
|
352
352
|
| --- | --- |
|
|
353
353
|
| `--org <value>` | Check what this --org would resolve to. |
|
|
354
354
|
|
|
355
|
-
### `ghostdock
|
|
355
|
+
### `ghostdock organization list`
|
|
356
356
|
|
|
357
357
|
List the organizations you belong to, with their ids and slugs.
|
|
358
358
|
|
|
359
359
|
```
|
|
360
|
-
ghostdock
|
|
360
|
+
ghostdock organization list
|
|
361
361
|
```
|
|
362
362
|
|
|
363
|
-
MCP tool: `
|
|
363
|
+
MCP tool: `organization_list`.
|
|
364
364
|
|
|
365
|
-
### `ghostdock
|
|
365
|
+
### `ghostdock organization use`
|
|
366
366
|
|
|
367
367
|
Set the default organization for commands run without --org (in every directory).
|
|
368
368
|
|
|
369
369
|
```
|
|
370
|
-
ghostdock
|
|
370
|
+
ghostdock organization use [org] [flags]
|
|
371
371
|
```
|
|
372
372
|
|
|
373
373
|
| Argument | Description |
|
|
@@ -375,331 +375,331 @@ ghostdock organizations use [org] [flags]
|
|
|
375
375
|
| `<org>` | Organization id or slug. |
|
|
376
376
|
| `--clear` | Remove the default organization. |
|
|
377
377
|
|
|
378
|
-
## `ghostdock
|
|
378
|
+
## `ghostdock project`
|
|
379
379
|
|
|
380
380
|
Deployable projects, their deployments and environment.
|
|
381
381
|
|
|
382
|
-
### `ghostdock
|
|
382
|
+
### `ghostdock project create`
|
|
383
383
|
|
|
384
|
-
Create an empty project. Nothing is deployed until
|
|
384
|
+
Create an empty project. Nothing is deployed until project publish.
|
|
385
385
|
|
|
386
386
|
```
|
|
387
|
-
ghostdock
|
|
387
|
+
ghostdock project create --display-name <string> [flags]
|
|
388
388
|
```
|
|
389
389
|
|
|
390
390
|
| Argument | Description |
|
|
391
391
|
| --- | --- |
|
|
392
|
-
| `--org <string>` | Organization id or slug, from
|
|
392
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
393
393
|
| `--display-name <string>` | Project name. Required. |
|
|
394
394
|
|
|
395
|
-
MCP tool: `
|
|
395
|
+
MCP tool: `project_create`.
|
|
396
396
|
|
|
397
|
-
### `ghostdock
|
|
397
|
+
### `ghostdock project deployment`
|
|
398
398
|
|
|
399
399
|
Deployments of a project.
|
|
400
400
|
|
|
401
|
-
### `ghostdock
|
|
401
|
+
### `ghostdock project deployment get`
|
|
402
402
|
|
|
403
403
|
Get one deploy attempt, with links to its stored files. fileUrls are authenticated GET paths for source.zip and generated Compose files.
|
|
404
404
|
|
|
405
405
|
```
|
|
406
|
-
ghostdock
|
|
406
|
+
ghostdock project deployment get <deployment-id> --project-id <string> [flags]
|
|
407
407
|
```
|
|
408
408
|
|
|
409
409
|
| Argument | Description |
|
|
410
410
|
| --- | --- |
|
|
411
|
-
| `<deployment-id>` | Deployment id, from
|
|
412
|
-
| `--org <string>` | Organization id or slug, from
|
|
413
|
-
| `--project-id <string>` | Project id, from
|
|
411
|
+
| `<deployment-id>` | Deployment id, from project deployment list. Required. |
|
|
412
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
413
|
+
| `--project-id <string>` | Project id, from project list (project publish returns it too). Required. |
|
|
414
414
|
|
|
415
|
-
MCP tool: `
|
|
415
|
+
MCP tool: `project_deployment_get`.
|
|
416
416
|
|
|
417
|
-
### `ghostdock
|
|
417
|
+
### `ghostdock project deployment list`
|
|
418
418
|
|
|
419
419
|
List a project’s deploy attempts, newest first.
|
|
420
420
|
|
|
421
421
|
```
|
|
422
|
-
ghostdock
|
|
422
|
+
ghostdock project deployment list <project-id> [flags]
|
|
423
423
|
```
|
|
424
424
|
|
|
425
425
|
| Argument | Description |
|
|
426
426
|
| --- | --- |
|
|
427
|
-
| `<project-id>` | Project id, from
|
|
428
|
-
| `--org <string>` | Organization id or slug, from
|
|
427
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
428
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
429
429
|
|
|
430
|
-
MCP tool: `
|
|
430
|
+
MCP tool: `project_deployment_list`.
|
|
431
431
|
|
|
432
|
-
### `ghostdock
|
|
432
|
+
### `ghostdock project env`
|
|
433
433
|
|
|
434
434
|
Environment a project exports.
|
|
435
435
|
|
|
436
|
-
### `ghostdock
|
|
436
|
+
### `ghostdock project env delete`
|
|
437
437
|
|
|
438
438
|
Delete one of a project’s own variables or secrets.
|
|
439
439
|
|
|
440
440
|
```
|
|
441
|
-
ghostdock
|
|
441
|
+
ghostdock project env delete <name> --project-id <string> [flags]
|
|
442
442
|
```
|
|
443
443
|
|
|
444
444
|
| Argument | Description |
|
|
445
445
|
| --- | --- |
|
|
446
446
|
| `<name>` | Environment variable name, e.g. DATABASE_URL. Letters, digits and underscores only. Case-sensitive; stored exactly as provided. Required. |
|
|
447
|
-
| `--org <string>` | Organization id or slug, from
|
|
448
|
-
| `--project-id <string>` | Project id, from
|
|
447
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
448
|
+
| `--project-id <string>` | Project id, from project list (project publish returns it too). Required. |
|
|
449
449
|
|
|
450
|
-
MCP tool: `
|
|
450
|
+
MCP tool: `project_env_delete`.
|
|
451
451
|
|
|
452
|
-
### `ghostdock
|
|
452
|
+
### `ghostdock project env get`
|
|
453
453
|
|
|
454
454
|
Get a project’s stored environment. Local entries (secret values withheld), organization opt-ins and bindings, applied on every deploy.
|
|
455
455
|
|
|
456
456
|
```
|
|
457
|
-
ghostdock
|
|
457
|
+
ghostdock project env get <project-id> [flags]
|
|
458
458
|
```
|
|
459
459
|
|
|
460
460
|
| Argument | Description |
|
|
461
461
|
| --- | --- |
|
|
462
|
-
| `<project-id>` | Project id, from
|
|
463
|
-
| `--org <string>` | Organization id or slug, from
|
|
462
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
463
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
464
464
|
|
|
465
|
-
MCP tool: `
|
|
465
|
+
MCP tool: `project_env_get`.
|
|
466
466
|
|
|
467
|
-
### `ghostdock
|
|
467
|
+
### `ghostdock project env select`
|
|
468
468
|
|
|
469
|
-
Replace the organization entries a project exports. Full replace: environment is the whole list ([] clears it), and omitting bindings clears the remaps. Read the environment skill (`ghostdock
|
|
469
|
+
Replace the organization entries a project exports. Full replace: environment is the whole list ([] clears it), and omitting bindings clears the remaps. Read the environment skill (`ghostdock skill get environment`).
|
|
470
470
|
|
|
471
471
|
```
|
|
472
|
-
ghostdock
|
|
472
|
+
ghostdock project env select <project-id> --environment <array> [flags]
|
|
473
473
|
```
|
|
474
474
|
|
|
475
475
|
| Argument | Description |
|
|
476
476
|
| --- | --- |
|
|
477
|
-
| `<project-id>` | Project id, from
|
|
478
|
-
| `--org <string>` | Organization id or slug, from
|
|
477
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
478
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
479
479
|
| `--environment <array>` | Organization catalogue entry names to export under their own names. (JSON array) Required. |
|
|
480
480
|
| `--bindings <array>` | Slot-centric org bindings. Omit to clear existing remaps. (JSON array) |
|
|
481
481
|
|
|
482
|
-
MCP tool: `
|
|
482
|
+
MCP tool: `project_env_select`.
|
|
483
483
|
|
|
484
|
-
### `ghostdock
|
|
484
|
+
### `ghostdock project env set`
|
|
485
485
|
|
|
486
486
|
Create or replace one of a project’s own variables or secrets. Prefer the CLI for secret values so they stay out of the conversation.
|
|
487
487
|
|
|
488
488
|
```
|
|
489
|
-
ghostdock
|
|
489
|
+
ghostdock project env set <name> --project-id <string> --value <string> --kind <string> [flags]
|
|
490
490
|
```
|
|
491
491
|
|
|
492
492
|
| Argument | Description |
|
|
493
493
|
| --- | --- |
|
|
494
494
|
| `<name>` | Environment variable name, e.g. DATABASE_URL. Letters, digits and underscores only. Case-sensitive; stored exactly as provided. Required. |
|
|
495
|
-
| `--org <string>` | Organization id or slug, from
|
|
496
|
-
| `--project-id <string>` | Project id, from
|
|
495
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
496
|
+
| `--project-id <string>` | Project id, from project list (project publish returns it too). Required. |
|
|
497
497
|
| `--value <string>` | The value to store. A secret value can be replaced later but never read back. Required. |
|
|
498
498
|
| `--kind <string>` | "variable" or "secret". A secret value can be replaced but never read back. Required. |
|
|
499
499
|
| `--comment <string>` | Optional note shown with the entry, e.g. what it is for. |
|
|
500
500
|
|
|
501
|
-
MCP tool: `
|
|
501
|
+
MCP tool: `project_env_set`.
|
|
502
502
|
|
|
503
|
-
### `ghostdock
|
|
503
|
+
### `ghostdock project get`
|
|
504
504
|
|
|
505
505
|
Get a project with its latest attempt and live deployment. latestDeploymentId includes failures; liveDeploymentId / liveUrl is the success that serves the public URL.
|
|
506
506
|
|
|
507
507
|
```
|
|
508
|
-
ghostdock
|
|
508
|
+
ghostdock project get <project-id> [flags]
|
|
509
509
|
```
|
|
510
510
|
|
|
511
511
|
| Argument | Description |
|
|
512
512
|
| --- | --- |
|
|
513
|
-
| `<project-id>` | Project id, from
|
|
514
|
-
| `--org <string>` | Organization id or slug, from
|
|
513
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
514
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
515
515
|
|
|
516
|
-
MCP tool: `
|
|
516
|
+
MCP tool: `project_get`.
|
|
517
517
|
|
|
518
|
-
### `ghostdock
|
|
518
|
+
### `ghostdock project list`
|
|
519
519
|
|
|
520
|
-
List an organization’s projects. A project owns its environment, deployment history and live URL.
|
|
520
|
+
List an organization’s projects. A project owns its environment, deployment history and live URL. app list lists live URLs instead.
|
|
521
521
|
|
|
522
522
|
```
|
|
523
|
-
ghostdock
|
|
523
|
+
ghostdock project list [flags]
|
|
524
524
|
```
|
|
525
525
|
|
|
526
526
|
| Argument | Description |
|
|
527
527
|
| --- | --- |
|
|
528
|
-
| `--org <string>` | Organization id or slug, from
|
|
528
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
529
529
|
|
|
530
|
-
MCP tool: `
|
|
530
|
+
MCP tool: `project_list`.
|
|
531
531
|
|
|
532
|
-
### `ghostdock
|
|
532
|
+
### `ghostdock project publish`
|
|
533
533
|
|
|
534
|
-
Inspect local source with the deploy agent and publish to the CDN or a
|
|
534
|
+
Inspect local source with the deploy agent and publish to the CDN or a VM.
|
|
535
535
|
|
|
536
536
|
```
|
|
537
|
-
ghostdock
|
|
537
|
+
ghostdock project publish [path] [flags]
|
|
538
538
|
```
|
|
539
539
|
|
|
540
540
|
| Argument | Description |
|
|
541
541
|
| --- | --- |
|
|
542
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
542
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
543
543
|
| `--project-id <value>` | Existing project id. Omit to create a project. |
|
|
544
544
|
| `--replan` | Force a new planner run even when the stored spec still matches. |
|
|
545
545
|
| `--require-verify` | Fail the deploy (verify_failed) when detected tests fail. Default false: tests still run and are reported. |
|
|
546
|
-
| `--spec <value>` | JSON DeploymentSpec to execute on a fresh
|
|
546
|
+
| `--spec <value>` | JSON DeploymentSpec to execute on a fresh VM instead of planning. Mutually exclusive with --replan. |
|
|
547
547
|
| `--display-name <value>` | Optional display name. |
|
|
548
548
|
| `--tag <value>` | Optional caller tag (git SHA or free-form label) stored on the deployment. |
|
|
549
|
-
| `--auto-stop-interval-minutes <value>` | Same as `
|
|
550
|
-
| `--auto-delete-
|
|
551
|
-
| `--resources <value>` | Same as `
|
|
552
|
-
| `--environment <value>` | Same as `
|
|
553
|
-
| `--auto-wake <value>` | Same as `
|
|
554
|
-
| `--public <value>` | Same as `
|
|
555
|
-
| `--
|
|
549
|
+
| `--auto-stop-interval-minutes <value>` | Same as `vm create`. Omit for the 20-minute default. Pass -1 to keep it running. 0 is rejected. |
|
|
550
|
+
| `--auto-delete-after-days <value>` | Same as `vm create`: days stopped before the record is deleted (0–365). Omit for the 14-day default. Pass 0 to delete the record when it stops. |
|
|
551
|
+
| `--resources <value>` | Same as `vm create`: JSON { cpu, memoryGiB, diskGiB }. |
|
|
552
|
+
| `--environment <value>` | Same as `vm create --environment`: JSON { organization, bindings, local }. Required after awaiting_configuration. |
|
|
553
|
+
| `--auto-wake <value>` | Same as `vm url create --auto-wake`. Default true for the minted URL. |
|
|
554
|
+
| `--public <value>` | Same as `vm url create --public`. Default true for the minted URL. |
|
|
555
|
+
| `--provider <value>` | Same as `vm create`: configured provider instance id (omit for the organization default). |
|
|
556
556
|
| `--zip <value>` | Local ZIP of the source tree. |
|
|
557
557
|
| `<path>` | File or directory to publish (additional paths are allowed). |
|
|
558
558
|
|
|
559
|
-
MCP tool: `
|
|
559
|
+
MCP tool: `project_publish`.
|
|
560
560
|
|
|
561
|
-
### `ghostdock
|
|
561
|
+
### `ghostdock project redeploy`
|
|
562
562
|
|
|
563
|
-
Deploy a project’s stored source again, with its current environment. No new upload. Omit deploymentId to retry the last attempt that stored source. Same outcomes and settings as
|
|
563
|
+
Deploy a project’s stored source again, with its current environment. No new upload. Omit deploymentId to retry the last attempt that stored source. Same outcomes and settings as project publish; read the publishing skill (`ghostdock skill get publishing`).
|
|
564
564
|
|
|
565
565
|
```
|
|
566
|
-
ghostdock
|
|
566
|
+
ghostdock project redeploy <project-id> [flags]
|
|
567
567
|
```
|
|
568
568
|
|
|
569
569
|
| Argument | Description |
|
|
570
570
|
| --- | --- |
|
|
571
|
-
| `<project-id>` | Project id, from
|
|
572
|
-
| `--org <string>` | Organization id or slug, from
|
|
571
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
572
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
573
573
|
| `--deployment-id <string>` | Ship this version’s stored upload and spec. Omit to retry the last attempt that stored source. |
|
|
574
|
-
| `--require-verify` | When true, a failing verify step stops the deploy (verify_failed) and tears the
|
|
574
|
+
| `--require-verify` | When true, a failing verify step stops the deploy (verify_failed) and tears the VM down. Default false. |
|
|
575
575
|
| `--tag <string>` | Optional caller tag stored on the new deployment. Metadata only. |
|
|
576
576
|
| `--resources <object>` | Compute sizing. For image/dockerfile/compose: layered on platform defaults when omitted. For snapshot: optional override applied via resize after create. (JSON object) |
|
|
577
|
-
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the
|
|
578
|
-
| `--
|
|
579
|
-
| `--
|
|
580
|
-
| `--
|
|
581
|
-
| `--
|
|
582
|
-
| `--auto-wake` | Same as urls[].autoWake on
|
|
583
|
-
| `--public` | Same as urls[].public on
|
|
577
|
+
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the VM. -1 means always on. 0 is rejected. Omit for the platform default. Provider-native timers are optional backup. |
|
|
578
|
+
| `--lifecycle <string>` | What may make the VM disappear on its own. ephemeral: every stop wipes the VM and its disk, and the next start runs its Compose project again (edits in the project folder kept, everything else gone; locks too). auto_delete (default): a stop keeps the disk, and the record goes autoDeleteAfterDays after the stop. keep: never removed automatically. Omit for the image label ghostdock.ephemeral, else auto_delete. ephemeral is chosen here only. |
|
|
579
|
+
| `--auto-delete-after-days <integer>` | Days the VM stays stopped before the platform worker deletes the record (0–365; 0 deletes it when it stops). Omit for the platform default (14). Not with keep. A container a person locked holds it. |
|
|
580
|
+
| `--provider <string>` | Provider id from provider list (not the provider kind). Omit to use the organization default (the org choice, else the platform default); if that provider lacks a capability this create needs, the first listed provider that accepts new VMs and has it is used. When no provider fits, the call fails with a not-configured error. |
|
|
581
|
+
| `--environment <object>` | Environment to give this VM. organization: names of organization entries (from env list) to export under their own names. bindings: remap org entries onto slot names ({ name: slot, organization: orgEntryName }). local: VM-only variables/secrets to create with the VM (kind required for each). Both land as ordinary process environment variables ($NAME / process.env.NAME); a local entry overrides an organization entry of the same name. When booting from an organization snapshot, omit organization/bindings/local to keep manifest env defaults, but still supply every name in requiredEnvironment (via organization, bindings, or local). Otherwise a VM gets nothing unless listed here. (JSON object) |
|
|
582
|
+
| `--auto-wake` | Same as urls[].autoWake on vm create. Default true for the minted URL. |
|
|
583
|
+
| `--public` | Same as urls[].public on vm create. Default true for the minted URL. |
|
|
584
584
|
|
|
585
|
-
MCP tool: `
|
|
585
|
+
MCP tool: `project_redeploy`.
|
|
586
586
|
|
|
587
|
-
### `ghostdock
|
|
587
|
+
### `ghostdock project update`
|
|
588
588
|
|
|
589
589
|
Rename a project.
|
|
590
590
|
|
|
591
591
|
```
|
|
592
|
-
ghostdock
|
|
592
|
+
ghostdock project update <project-id> --display-name <string> [flags]
|
|
593
593
|
```
|
|
594
594
|
|
|
595
595
|
| Argument | Description |
|
|
596
596
|
| --- | --- |
|
|
597
|
-
| `<project-id>` | Project id, from
|
|
598
|
-
| `--org <string>` | Organization id or slug, from
|
|
597
|
+
| `<project-id>` | Project id, from project list (project publish returns it too). Required. |
|
|
598
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
599
599
|
| `--display-name <string>` | New name. Null or empty clears it. Required. |
|
|
600
600
|
|
|
601
|
-
MCP tool: `
|
|
601
|
+
MCP tool: `project_update`.
|
|
602
602
|
|
|
603
|
-
## `ghostdock
|
|
603
|
+
## `ghostdock provider`
|
|
604
604
|
|
|
605
|
-
|
|
605
|
+
Providers of an organization.
|
|
606
606
|
|
|
607
|
-
### `ghostdock
|
|
607
|
+
### `ghostdock provider disconnect`
|
|
608
608
|
|
|
609
|
-
Disconnect one of the organization’s own
|
|
609
|
+
Disconnect one of the organization’s own providers. Owner or admin. Fails while VMs still use it. If organization snapshots live on it, the first call fails: pass confirmLinkedDeletion to delete them permanently. Also frees its custom domain and removes incomplete Incus setups; a default provider falls back to the platform default.
|
|
610
610
|
|
|
611
611
|
```
|
|
612
|
-
ghostdock
|
|
612
|
+
ghostdock provider disconnect <provider> [flags]
|
|
613
613
|
```
|
|
614
614
|
|
|
615
615
|
| Argument | Description |
|
|
616
616
|
| --- | --- |
|
|
617
|
-
| `<
|
|
618
|
-
| `--org <string>` | Organization id or slug, from
|
|
617
|
+
| `<provider>` | Provider id, from provider list. Required. |
|
|
618
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
619
619
|
| `--confirm-linked-deletion` | Required when this provider still has organization snapshots. Permanently deletes those snapshots, then disconnects. |
|
|
620
620
|
|
|
621
|
-
MCP tool: `
|
|
621
|
+
MCP tool: `provider_disconnect`.
|
|
622
622
|
|
|
623
|
-
### `ghostdock
|
|
623
|
+
### `ghostdock provider list`
|
|
624
624
|
|
|
625
|
-
List the
|
|
625
|
+
List the providers an organization can create VMs on. Includes its own connected providers and the platform providers it may use, in fallback order. Use an item id as provider. Only items with acceptsNewVms true take new VMs; an own provider stays incomplete until customDomain.status is active. defaultProviderId is the effective default. Read the vm skill (`ghostdock skill get vm`) for the details.
|
|
626
626
|
|
|
627
627
|
```
|
|
628
|
-
ghostdock
|
|
628
|
+
ghostdock provider list [flags]
|
|
629
629
|
```
|
|
630
630
|
|
|
631
631
|
| Argument | Description |
|
|
632
632
|
| --- | --- |
|
|
633
|
-
| `--org <string>` | Organization id or slug, from
|
|
633
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
634
634
|
|
|
635
|
-
MCP tool: `
|
|
635
|
+
MCP tool: `provider_list`.
|
|
636
636
|
|
|
637
|
-
### `ghostdock
|
|
637
|
+
### `ghostdock provider rename`
|
|
638
638
|
|
|
639
|
-
Rename one of the organization’s own
|
|
639
|
+
Rename one of the organization’s own providers. Owner or admin. Platform providers cannot be renamed; names must be unique in the organization.
|
|
640
640
|
|
|
641
641
|
```
|
|
642
|
-
ghostdock
|
|
642
|
+
ghostdock provider rename <provider> --name <string> [flags]
|
|
643
643
|
```
|
|
644
644
|
|
|
645
645
|
| Argument | Description |
|
|
646
646
|
| --- | --- |
|
|
647
|
-
| `<
|
|
647
|
+
| `<provider>` | Provider id, from provider list. Required. |
|
|
648
648
|
| `--name <string>` | New name, unique in the organization. Required. |
|
|
649
|
-
| `--org <string>` | Organization id or slug, from
|
|
649
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
650
650
|
|
|
651
|
-
MCP tool: `
|
|
651
|
+
MCP tool: `provider_rename`.
|
|
652
652
|
|
|
653
|
-
### `ghostdock
|
|
653
|
+
### `ghostdock provider set-default`
|
|
654
654
|
|
|
655
|
-
Set the provider used when a create omits
|
|
655
|
+
Set the provider used when a create omits provider. Applies to vm create, project publish and project redeploy. Pass an own connected provider or a platform provider that accepts new VMs; pass null (or platformDefaultProviderId) to follow the platform default. Owner or admin.
|
|
656
656
|
|
|
657
657
|
```
|
|
658
|
-
ghostdock
|
|
658
|
+
ghostdock provider set-default <provider> [flags]
|
|
659
659
|
```
|
|
660
660
|
|
|
661
661
|
| Argument | Description |
|
|
662
662
|
| --- | --- |
|
|
663
|
-
| `<
|
|
664
|
-
| `--org <string>` | Organization id or slug, from
|
|
663
|
+
| `<provider>` | Instance id from provider list (own or platform), or null to follow the platform default. Passing platformDefaultProviderId also follows the platform default; it is never pinned. Required. |
|
|
664
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
665
665
|
|
|
666
|
-
MCP tool: `
|
|
666
|
+
MCP tool: `provider_set_default`.
|
|
667
667
|
|
|
668
|
-
### `ghostdock
|
|
668
|
+
### `ghostdock provider start-incus`
|
|
669
669
|
|
|
670
|
-
Start connecting an Incus host as a
|
|
670
|
+
Start connecting an Incus host as a provider. Owner or admin. Returns sshPublicKey and aiSetupPrompt; then call provider verify-incus. To finish an incomplete setup, reuse it from provider list instead of starting again. Read the incus-setup skill (`ghostdock skill get incus-setup`) first.
|
|
671
671
|
|
|
672
672
|
```
|
|
673
|
-
ghostdock
|
|
673
|
+
ghostdock provider start-incus [flags]
|
|
674
674
|
```
|
|
675
675
|
|
|
676
676
|
| Argument | Description |
|
|
677
677
|
| --- | --- |
|
|
678
678
|
| `--name <string>` | Name for the new provider. Optional. |
|
|
679
|
-
| `--org <string>` | Organization id or slug, from
|
|
679
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
680
680
|
|
|
681
|
-
MCP tool: `
|
|
681
|
+
MCP tool: `provider_start_incus`.
|
|
682
682
|
|
|
683
|
-
### `ghostdock
|
|
683
|
+
### `ghostdock provider verify-incus`
|
|
684
684
|
|
|
685
|
-
Check or finish connecting an Incus host. Owner or admin. Connects over SSH with the stored key and checks Incus 6.3+, skopeo and umoci. Omit sshHost to re-check the stored address; pass it (with the other host fields) only to move the provider. A failed check marks the provider error. Read the incus-setup skill (`ghostdock
|
|
685
|
+
Check or finish connecting an Incus host. Owner or admin. Connects over SSH with the stored key and checks Incus 6.3+, skopeo and umoci. Omit sshHost to re-check the stored address; pass it (with the other host fields) only to move the provider. A failed check marks the provider error. Read the incus-setup skill (`ghostdock skill get incus-setup`).
|
|
686
686
|
|
|
687
687
|
```
|
|
688
|
-
ghostdock
|
|
688
|
+
ghostdock provider verify-incus <provider> [flags]
|
|
689
689
|
```
|
|
690
690
|
|
|
691
691
|
| Argument | Description |
|
|
692
692
|
| --- | --- |
|
|
693
|
-
| `<
|
|
693
|
+
| `<provider>` | Provider id, from provider list. Required. |
|
|
694
694
|
| `--ssh-host <string>` | Host to SSH to. Omit to re-check the stored address; pass it only to set up or move the provider. |
|
|
695
695
|
| `--ssh-port <integer>` | SSH port. Default 22. |
|
|
696
696
|
| `--ssh-user <string>` | SSH login. Default incus-user. |
|
|
697
697
|
| `--ingress-host <string>` | Public hostname for HTTP(S) when it is not the SSH host (also the DNS A/AAAA target). |
|
|
698
|
-
| `--ssh-proxy-port <integer>` | Port for
|
|
698
|
+
| `--ssh-proxy-port <integer>` | Port for VM SSH on the host. Default 2222. |
|
|
699
699
|
| `--name <string>` | New name. Optional. |
|
|
700
|
-
| `--org <string>` | Organization id or slug, from
|
|
700
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
701
701
|
|
|
702
|
-
MCP tool: `
|
|
702
|
+
MCP tool: `provider_verify_incus`.
|
|
703
703
|
|
|
704
704
|
## `ghostdock registry`
|
|
705
705
|
|
|
@@ -715,8 +715,8 @@ ghostdock registry credentials [flags]
|
|
|
715
715
|
|
|
716
716
|
| Argument | Description |
|
|
717
717
|
| --- | --- |
|
|
718
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
719
|
-
| `--provider <value>` |
|
|
718
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
719
|
+
| `--provider <value>` | Provider id. Omit for the provider `vm create` would pick (org default, else platform default, else the first that fits). |
|
|
720
720
|
|
|
721
721
|
MCP tool: `registry_credentials`.
|
|
722
722
|
|
|
@@ -730,981 +730,1075 @@ ghostdock registry login [flags]
|
|
|
730
730
|
|
|
731
731
|
| Argument | Description |
|
|
732
732
|
| --- | --- |
|
|
733
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
734
|
-
| `--provider <value>` |
|
|
733
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
734
|
+
| `--provider <value>` | Provider id. Omit for the provider `vm create` would pick (org default, else platform default, else the first that fits). |
|
|
735
735
|
|
|
736
|
-
## `ghostdock
|
|
736
|
+
## `ghostdock site`
|
|
737
737
|
|
|
738
|
-
|
|
738
|
+
Static sites on the CDN.
|
|
739
739
|
|
|
740
|
-
### `ghostdock
|
|
740
|
+
### `ghostdock site publish`
|
|
741
741
|
|
|
742
|
-
|
|
742
|
+
Publish a local directory or ZIP to the CDN.
|
|
743
743
|
|
|
744
744
|
```
|
|
745
|
-
ghostdock
|
|
745
|
+
ghostdock site publish [path] [flags]
|
|
746
746
|
```
|
|
747
747
|
|
|
748
748
|
| Argument | Description |
|
|
749
749
|
| --- | --- |
|
|
750
|
-
| `--org <value>` | Organization id or slug, from `ghostdock
|
|
751
|
-
| `--
|
|
752
|
-
| `--
|
|
753
|
-
|
|
|
754
|
-
| `--zip <value>` | Local ZIP of the build directory (Dockerfile or compose file at the zip root). |
|
|
755
|
-
| `<path>` | Build directory to zip and create from. |
|
|
756
|
-
|
|
757
|
-
### `ghostdock sandboxes commands`
|
|
750
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
751
|
+
| `--display-name <value>` | Optional site display name. |
|
|
752
|
+
| `--zip <value>` | Local ZIP file to publish. |
|
|
753
|
+
| `<path>` | File or directory to publish (additional paths are allowed). |
|
|
758
754
|
|
|
759
|
-
|
|
755
|
+
MCP tool: `site_publish`.
|
|
760
756
|
|
|
761
|
-
### `ghostdock
|
|
757
|
+
### `ghostdock site unpublish`
|
|
762
758
|
|
|
763
|
-
|
|
759
|
+
Take a published static site offline.
|
|
764
760
|
|
|
765
761
|
```
|
|
766
|
-
ghostdock
|
|
762
|
+
ghostdock site unpublish <site-id> [flags]
|
|
767
763
|
```
|
|
768
764
|
|
|
769
765
|
| Argument | Description |
|
|
770
766
|
| --- | --- |
|
|
771
|
-
| `<
|
|
772
|
-
| `--org <string>` | Organization id or slug, from
|
|
773
|
-
| `--sandbox-id <string>` | Sandbox name (e.g. quiet-harbor) or id, from sandboxes list or sandboxes create. Names are unique within the organization. Required. |
|
|
774
|
-
| `--container <string>` | Container to work in, by name, from sandboxes containers list. Default: the sandbox’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
775
|
-
| `--session-id <string>` | Session id returned by sandboxes commands run together with the commandId. Required. |
|
|
776
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
767
|
+
| `<site-id>` | Site id: the slug in the public URL, as returned by site publish or app list. Required. |
|
|
768
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
777
769
|
|
|
778
|
-
MCP tool: `
|
|
770
|
+
MCP tool: `site_unpublish`.
|
|
779
771
|
|
|
780
|
-
|
|
772
|
+
## `ghostdock skill`
|
|
781
773
|
|
|
782
|
-
|
|
774
|
+
List and read Agent Skills (same catalog as MCP skill://index.json).
|
|
775
|
+
|
|
776
|
+
### `ghostdock skill get`
|
|
777
|
+
|
|
778
|
+
Print one SKILL.md (URI from the discovery index, or a skill name).
|
|
783
779
|
|
|
784
780
|
```
|
|
785
|
-
ghostdock
|
|
781
|
+
ghostdock skill get <uri>
|
|
786
782
|
```
|
|
787
783
|
|
|
788
784
|
| Argument | Description |
|
|
789
785
|
| --- | --- |
|
|
790
|
-
| `<
|
|
791
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
792
|
-
| `--sandbox-id <string>` | Sandbox name (e.g. quiet-harbor) or id, from sandboxes list or sandboxes create. Names are unique within the organization. Required. |
|
|
793
|
-
| `--container <string>` | Container to work in, by name, from sandboxes containers list. Default: the sandbox’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
794
|
-
| `--session-id <string>` | Session id returned by sandboxes commands run together with the commandId. Required. |
|
|
795
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
786
|
+
| `<uri>` | skill:// URI, org/name, or skill name. Required. |
|
|
796
787
|
|
|
797
|
-
MCP tool: `
|
|
788
|
+
MCP tool: `skill_get`.
|
|
798
789
|
|
|
799
|
-
### `ghostdock
|
|
790
|
+
### `ghostdock skill list`
|
|
800
791
|
|
|
801
|
-
|
|
792
|
+
List the Agent Skills discovery index.
|
|
802
793
|
|
|
803
794
|
```
|
|
804
|
-
ghostdock
|
|
795
|
+
ghostdock skill list
|
|
805
796
|
```
|
|
806
797
|
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
811
|
-
| `--sandbox-id <string>` | Sandbox name (e.g. quiet-harbor) or id, from sandboxes list or sandboxes create. Names are unique within the organization. Required. |
|
|
812
|
-
| `--container <string>` | Container to work in, by name, from sandboxes containers list. Default: the sandbox’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
813
|
-
| `--session-id <string>` | Session id returned by sandboxes commands run together with the commandId. Required. |
|
|
814
|
-
| `--offset <integer>` | Character offset to continue reading from. Default 0. |
|
|
815
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
798
|
+
MCP tool: `skill_list`.
|
|
799
|
+
|
|
800
|
+
## `ghostdock snapshot`
|
|
816
801
|
|
|
817
|
-
|
|
802
|
+
VM snapshots.
|
|
818
803
|
|
|
819
|
-
### `ghostdock
|
|
804
|
+
### `ghostdock snapshot create`
|
|
820
805
|
|
|
821
|
-
|
|
806
|
+
Save a VM’s filesystem as a reusable organization snapshot. The VM must be stopped, unless stopAndResume. Captures its URLs and environment into a manifest (secrets as required, without values). Waits up to ~120 seconds; if still pending it returns timedOut, then poll snapshot get. Setting secret values here is allowed; prefer the Ghostdock CLI so they stay out of the conversation.
|
|
822
807
|
|
|
823
808
|
```
|
|
824
|
-
ghostdock
|
|
809
|
+
ghostdock snapshot create <vm> --name <string> [flags]
|
|
825
810
|
```
|
|
826
811
|
|
|
827
812
|
| Argument | Description |
|
|
828
813
|
| --- | --- |
|
|
829
|
-
| `<
|
|
830
|
-
| `--org <string>` | Organization id or slug, from
|
|
831
|
-
| `--
|
|
832
|
-
| `--
|
|
833
|
-
| `--
|
|
834
|
-
| `--
|
|
835
|
-
| `--wait-seconds <number>` | Seconds to wait before returning handles to poll: 1 to 120, default 120. |
|
|
836
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
837
|
-
|
|
838
|
-
MCP tool: `sandboxes_commands_run`.
|
|
839
|
-
|
|
840
|
-
### `ghostdock sandboxes containers`
|
|
814
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
815
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
816
|
+
| `--name <string>` | Snapshot name, unique in the organization. Required. |
|
|
817
|
+
| `--stop-and-resume` | When the VM is running: stop it, snapshot, then start it again. Without this it must already be stopped. |
|
|
818
|
+
| `--include-secret-values <array>` | Names of VM-local secrets whose values to embed in the snapshot. Organization secrets cannot be copied. (JSON array) |
|
|
819
|
+
| `--manifest <object>` | Replaces the captured URLs and environment entirely (no merge). An omitted ephemeral is copied from the VM. Secret values are stored encrypted. (JSON object) |
|
|
841
820
|
|
|
842
|
-
|
|
821
|
+
MCP tool: `snapshot_create`.
|
|
843
822
|
|
|
844
|
-
### `ghostdock
|
|
823
|
+
### `ghostdock snapshot delete`
|
|
845
824
|
|
|
846
|
-
|
|
825
|
+
Permanently delete an organization snapshot (provider artifact and record).
|
|
847
826
|
|
|
848
827
|
```
|
|
849
|
-
ghostdock
|
|
828
|
+
ghostdock snapshot delete <snapshot-id> [flags]
|
|
850
829
|
```
|
|
851
830
|
|
|
852
831
|
| Argument | Description |
|
|
853
832
|
| --- | --- |
|
|
854
|
-
| `<
|
|
855
|
-
| `--org <string>` | Organization id or slug, from
|
|
833
|
+
| `<snapshot-id>` | Snapshot id from snapshot list (the provider snapshot name) or its database id. Required. |
|
|
834
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
856
835
|
|
|
857
|
-
MCP tool: `
|
|
836
|
+
MCP tool: `snapshot_delete`.
|
|
858
837
|
|
|
859
|
-
### `ghostdock
|
|
838
|
+
### `ghostdock snapshot get`
|
|
860
839
|
|
|
861
|
-
|
|
840
|
+
Get one snapshot with its manifest and required environment, URLs and MCPs. Returns a redacted manifest with requiredEnvironment / requiredUrls / requiredMcps. Poll it after snapshot create while status is pending.
|
|
862
841
|
|
|
863
842
|
```
|
|
864
|
-
ghostdock
|
|
843
|
+
ghostdock snapshot get <snapshot-id> [flags]
|
|
865
844
|
```
|
|
866
845
|
|
|
867
846
|
| Argument | Description |
|
|
868
847
|
| --- | --- |
|
|
869
|
-
| `<
|
|
870
|
-
|
|
|
871
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
872
|
-
| `--tail <integer>` | The last N lines (at most 5000). |
|
|
873
|
-
| `--after <string>` | Only lines after this time: the time of the last line already read. |
|
|
874
|
-
| `--follow` | Keep printing new lines until Ctrl-C. |
|
|
875
|
-
| `--timestamps` | Put each line's time in front of it. |
|
|
848
|
+
| `<snapshot-id>` | Snapshot id from snapshot list (the provider snapshot name) or its database id. Required. |
|
|
849
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
876
850
|
|
|
877
|
-
MCP tool: `
|
|
851
|
+
MCP tool: `snapshot_get`.
|
|
878
852
|
|
|
879
|
-
### `ghostdock
|
|
853
|
+
### `ghostdock snapshot list`
|
|
880
854
|
|
|
881
|
-
|
|
855
|
+
List the snapshots an organization can boot VMs from. Each item has status (pending, active, error), the provider that holds it (providerId; boot it there), vmCount, and a redacted manifest with requiredEnvironment / requiredUrls / requiredMcps.
|
|
882
856
|
|
|
883
857
|
```
|
|
884
|
-
ghostdock
|
|
858
|
+
ghostdock snapshot list [flags]
|
|
885
859
|
```
|
|
886
860
|
|
|
887
861
|
| Argument | Description |
|
|
888
862
|
| --- | --- |
|
|
889
|
-
|
|
|
890
|
-
| `<container>` | Container, by name. Required. |
|
|
891
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
892
|
-
| `--protected` | true: protect it; false: allow removing it. Required. |
|
|
863
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
893
864
|
|
|
894
|
-
MCP tool: `
|
|
865
|
+
MCP tool: `snapshot_list`.
|
|
895
866
|
|
|
896
|
-
### `ghostdock
|
|
867
|
+
### `ghostdock snapshot update-manifest`
|
|
897
868
|
|
|
898
|
-
|
|
869
|
+
Replace a snapshot’s manifest (URLs, environment, MCPs). Does not change the snapshot itself. Secret values in the body are stored encrypted; the response is redacted. Setting secret values here is allowed; prefer the Ghostdock CLI so they stay out of the conversation.
|
|
899
870
|
|
|
900
871
|
```
|
|
901
|
-
ghostdock
|
|
872
|
+
ghostdock snapshot update-manifest <snapshot-id> --manifest <object> [flags]
|
|
902
873
|
```
|
|
903
874
|
|
|
904
875
|
| Argument | Description |
|
|
905
876
|
| --- | --- |
|
|
906
|
-
| `<
|
|
907
|
-
|
|
|
908
|
-
| `--
|
|
877
|
+
| `<snapshot-id>` | Snapshot id from snapshot list (the provider snapshot name) or its database id. Required. |
|
|
878
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
879
|
+
| `--manifest <object>` | The new manifest; replaces the stored one. An omitted ephemeral keeps the stored value. Secret values are stored encrypted. (JSON object) Required. |
|
|
909
880
|
|
|
910
|
-
MCP tool: `
|
|
881
|
+
MCP tool: `snapshot_update_manifest`.
|
|
911
882
|
|
|
912
|
-
|
|
883
|
+
## `ghostdock template`
|
|
913
884
|
|
|
914
|
-
|
|
885
|
+
### `ghostdock template create`
|
|
886
|
+
|
|
887
|
+
Save a VM create request as a template of the organization. Its members and agents make it with `ghostdock vm up <name>`. spec is what vm create takes without the organization’s own things: source (an image ref, Dockerfile, Compose files or a Compose reference; no snapshot or catalog id) and defaults (resources, lifecycle, restart, urls, mcps). Environment values stay out: a template that needs some declares them as ghostdock.env labels. A name the platform has too is allowed: the answer says shadows true, and the organization’s template wins for its members.
|
|
915
888
|
|
|
916
889
|
```
|
|
917
|
-
ghostdock
|
|
890
|
+
ghostdock template create --name <string> --title <string> --spec <object> [flags]
|
|
918
891
|
```
|
|
919
892
|
|
|
920
893
|
| Argument | Description |
|
|
921
894
|
| --- | --- |
|
|
922
|
-
|
|
|
923
|
-
|
|
|
924
|
-
| `--
|
|
895
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
896
|
+
| `--name <string>` | Short name, unique in the organization: lower-case words joined by hyphens, e.g. postgres-pgadmin. Required. |
|
|
897
|
+
| `--title <string>` | Title on the tile. Required. |
|
|
898
|
+
| `--description <string>` | What it is for, in a sentence or two. |
|
|
899
|
+
| `--icon <string>` | An Iconify class the app bundles (i-simple-icons-postgresql, i-lucide-database) or an https image URL. Omit for the default icon. |
|
|
900
|
+
| `--spec <object>` | The create request: { source, resources?, autoStopIntervalMinutes?, lifecycle?, autoDeleteAfterDays?, restart?, urls?, mcps? }, the same fields vm create takes. (JSON object) Required. |
|
|
925
901
|
|
|
926
|
-
MCP tool: `
|
|
902
|
+
MCP tool: `template_create`.
|
|
927
903
|
|
|
928
|
-
### `ghostdock
|
|
904
|
+
### `ghostdock template delete`
|
|
929
905
|
|
|
930
|
-
|
|
906
|
+
Delete a template of the organization by its name. VMs made from it keep running; a platform template it shadowed answers to the name again.
|
|
931
907
|
|
|
932
908
|
```
|
|
933
|
-
ghostdock
|
|
909
|
+
ghostdock template delete <template> [flags]
|
|
934
910
|
```
|
|
935
911
|
|
|
936
912
|
| Argument | Description |
|
|
937
913
|
| --- | --- |
|
|
938
|
-
| `<
|
|
939
|
-
|
|
|
940
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
914
|
+
| `<template>` | The organization’s template, by name. Required. |
|
|
915
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
941
916
|
|
|
942
|
-
MCP tool: `
|
|
917
|
+
MCP tool: `template_delete`.
|
|
943
918
|
|
|
944
|
-
### `ghostdock
|
|
919
|
+
### `ghostdock template list`
|
|
945
920
|
|
|
946
|
-
|
|
921
|
+
List the templates to create a VM from (headless, desktop, nginx, …). The platform’s ready-made VMs and the organization’s own, each with scope (platform or organization), title, description and the create request it stands for (spec: source plus defaults such as URLs and resources). A name means the organization’s template first: one with shadows true hides the platform template of the same name (shadowed true), which vm up --platform still reaches. Create one with vm up.
|
|
947
922
|
|
|
948
923
|
```
|
|
949
|
-
ghostdock
|
|
924
|
+
ghostdock template list [flags]
|
|
950
925
|
```
|
|
951
926
|
|
|
952
927
|
| Argument | Description |
|
|
953
928
|
| --- | --- |
|
|
954
|
-
| `--org <string>` | Organization id or slug, from
|
|
955
|
-
| `--display-name <string>` | Display name for the sandbox. Optional. |
|
|
956
|
-
| `--source <object>` | What the sandbox boots from. Required. "image" boots an org catalog row by id ({ id } from images list / images get — images add OCI bookmarks, images add-dockerfile, and images add-compose rows) or any OCI ref ({ ref }); "dockerfile" builds inline Dockerfile text only (ghostdock.* LABEL lines parsed for manifest; this tool has no build directory, so COPY/ADD of local files fails — use the CLI `ghostdock sandboxes build --kind dockerfile` with a directory or ZIP); "compose" boots Docker-in-Docker from the given inline files (must include docker-compose.yml/yaml or compose.yml/yaml; ghostdock.* service labels parsed for manifest). A Compose project that needs extra files is not accepted here — use `ghostdock sandboxes build --kind compose`. "compose" also takes a published Compose project instead of files ({ reference: "oci://…", override? }): it runs through include:, the override merged into it. Image, dockerfile, and compose sources never appear in snapshots list. Published static sites use sites publish (CDN), not a snapshot. (JSON object) Required. |
|
|
957
|
-
| `--resources <object>` | Compute sizing. For image/dockerfile/compose: layered on platform defaults when omitted. For snapshot: optional override applied via resize after create. (JSON object) |
|
|
958
|
-
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the sandbox. -1 means always on. 0 is rejected. Omit for the platform default. Provider-native timers are optional backup. |
|
|
959
|
-
| `--auto-delete-interval-minutes <number>` | Minutes the sandbox stays stopped before the platform worker deletes the record. 0 deletes it when it stops. -1 keeps it until a person deletes it. Omit for the platform default. Provider-native timers are optional backup. |
|
|
960
|
-
| `--sandbox-provider-id <string>` | Configured sandbox-provider instance id from providers list (not the provider kind). Omit to use the organization default (the org choice, else the platform default); if that provider lacks a capability this create needs, the first listed provider that accepts new sandboxes and has it is used. When no provider fits, the call fails with a not-configured error. |
|
|
961
|
-
| `--environment <object>` | Environment to give this sandbox. organization: names of organization entries (from env list) to export under their own names. bindings: remap org entries onto slot names ({ name: slot, organization: orgEntryName }). local: sandbox-only variables/secrets to create with the sandbox (kind required for each). Both land as ordinary process environment variables ($NAME / process.env.NAME); a local entry overrides an organization entry of the same name. When booting from an organization snapshot, omit organization/bindings/local to keep manifest env defaults, but still supply every name in requiredEnvironment (via organization, bindings, or local). Otherwise a sandbox gets nothing unless listed here. (JSON object) |
|
|
962
|
-
| `--ephemeral` | Mark the sandbox ephemeral: every stop destroys the machine and the next start boots fresh, while the record, URLs, and settings stay. Omit to use the image label ghostdock.ephemeral, or false when that label is absent. Does not change idle-stop or auto-delete. |
|
|
963
|
-
| `--image-base <string>` | How the disk is made for one of Ghostdock's VM images: auto (default) clones the host's image base, a disk with the image already on it, when there is one; off always starts from an empty disk that pulls the image. For tests and comparisons; other images always start empty. |
|
|
964
|
-
| `--urls <array>` | Changes to the image’s or snapshot’s URLs, keyed by port. Omit for the image URLs as they are; otherwise you get the image URLs plus yours: an entry on the same port replaces that URL completely (omitted fields take their defaults), and { port, remove: true } drops it; removing a port the image does not declare does nothing. A required port cannot be removed. TCP URLs are always public. (JSON array) |
|
|
965
|
-
| `--mcps <array>` | Changes to the image’s or snapshot’s MCP exposures, keyed by name. Omit for the image MCPs as they are; otherwise you get the image MCPs plus yours: an entry with the same name replaces that MCP completely, and { name, remove: true } drops it; removing a name the image does not declare does nothing. A required MCP (requiredMcps) cannot be removed. (JSON array) |
|
|
929
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
966
930
|
|
|
967
|
-
MCP tool: `
|
|
931
|
+
MCP tool: `template_list`.
|
|
968
932
|
|
|
969
|
-
### `ghostdock
|
|
933
|
+
### `ghostdock template update`
|
|
970
934
|
|
|
971
|
-
|
|
935
|
+
Change a template of the organization by its name. The fields given replace the stored ones (a spec replaces the whole spec). Platform templates are changed by platform admins only.
|
|
972
936
|
|
|
973
937
|
```
|
|
974
|
-
ghostdock
|
|
938
|
+
ghostdock template update <template> [flags]
|
|
975
939
|
```
|
|
976
940
|
|
|
977
941
|
| Argument | Description |
|
|
978
942
|
| --- | --- |
|
|
979
|
-
| `<
|
|
980
|
-
| `--org <string>` | Organization id or slug, from
|
|
981
|
-
| `--
|
|
982
|
-
| `--
|
|
983
|
-
| `--
|
|
943
|
+
| `<template>` | The organization’s template, by name. Required. |
|
|
944
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
945
|
+
| `--name <string>` | A new name; vm up answers to it only. |
|
|
946
|
+
| `--title <string>` | Title on the tile. |
|
|
947
|
+
| `--description <string>` | What it is for. |
|
|
948
|
+
| `--icon <string>` | Iconify class or https image URL; null for the default icon. |
|
|
949
|
+
| `--spec <object>` | The whole create request, as template create takes it. (JSON object) |
|
|
950
|
+
|
|
951
|
+
MCP tool: `template_update`.
|
|
952
|
+
|
|
953
|
+
## `ghostdock tools`
|
|
984
954
|
|
|
985
|
-
|
|
955
|
+
List available agent tools.
|
|
956
|
+
|
|
957
|
+
```
|
|
958
|
+
ghostdock tools
|
|
959
|
+
```
|
|
960
|
+
|
|
961
|
+
## `ghostdock vm`
|
|
962
|
+
|
|
963
|
+
Create, run and manage VMs.
|
|
986
964
|
|
|
987
|
-
### `ghostdock
|
|
965
|
+
### `ghostdock vm build`
|
|
988
966
|
|
|
989
|
-
|
|
967
|
+
Create a VM from a local Dockerfile or Compose directory. Zips the directory (or takes --zip) and builds it on the provider; use it when the Dockerfile copies local files or the Compose project has build contexts.
|
|
990
968
|
|
|
991
969
|
```
|
|
992
|
-
ghostdock
|
|
970
|
+
ghostdock vm build [path] --kind <value> [flags]
|
|
993
971
|
```
|
|
994
972
|
|
|
995
973
|
| Argument | Description |
|
|
996
974
|
| --- | --- |
|
|
997
|
-
|
|
|
998
|
-
| `--
|
|
999
|
-
|
|
1000
|
-
|
|
975
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
976
|
+
| `--kind <value>` | dockerfile or compose. Required. |
|
|
977
|
+
| `--provider <value>` | Configured provider instance id (omit for the organization default). |
|
|
978
|
+
| `--display-name <value>` | Optional VM display name. |
|
|
979
|
+
| `--zip <value>` | Local ZIP of the build directory (Dockerfile or compose file at the zip root). |
|
|
980
|
+
| `<path>` | Build directory to zip and create from. |
|
|
1001
981
|
|
|
1002
|
-
### `ghostdock
|
|
982
|
+
### `ghostdock vm command`
|
|
1003
983
|
|
|
1004
|
-
|
|
984
|
+
Run commands in a VM and read their output.
|
|
1005
985
|
|
|
1006
|
-
### `ghostdock
|
|
986
|
+
### `ghostdock vm command get`
|
|
1007
987
|
|
|
1008
|
-
|
|
988
|
+
Get a shell command’s status and exit code.
|
|
1009
989
|
|
|
1010
990
|
```
|
|
1011
|
-
ghostdock
|
|
991
|
+
ghostdock vm command get <command-id> --vm <string> --session-id <string> [flags]
|
|
1012
992
|
```
|
|
1013
993
|
|
|
1014
994
|
| Argument | Description |
|
|
1015
995
|
| --- | --- |
|
|
1016
|
-
| `<
|
|
1017
|
-
| `--org <string>` | Organization id or slug, from
|
|
1018
|
-
| `--
|
|
1019
|
-
| `--
|
|
996
|
+
| `<command-id>` | Command id returned by vm command run. Required. |
|
|
997
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
998
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
999
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1000
|
+
| `--session-id <string>` | Session id returned by vm command run together with the commandId. Required. |
|
|
1001
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1020
1002
|
|
|
1021
|
-
MCP tool: `
|
|
1003
|
+
MCP tool: `vm_command_get`.
|
|
1022
1004
|
|
|
1023
|
-
### `ghostdock
|
|
1005
|
+
### `ghostdock vm command kill`
|
|
1024
1006
|
|
|
1025
|
-
|
|
1007
|
+
Interrupt a running shell command.
|
|
1026
1008
|
|
|
1027
1009
|
```
|
|
1028
|
-
ghostdock
|
|
1010
|
+
ghostdock vm command kill <command-id> --vm <string> --session-id <string> [flags]
|
|
1029
1011
|
```
|
|
1030
1012
|
|
|
1031
1013
|
| Argument | Description |
|
|
1032
1014
|
| --- | --- |
|
|
1033
|
-
| `<
|
|
1034
|
-
| `--org <string>` | Organization id or slug, from
|
|
1015
|
+
| `<command-id>` | Command id returned by vm command run. Required. |
|
|
1016
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1017
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1018
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1019
|
+
| `--session-id <string>` | Session id returned by vm command run together with the commandId. Required. |
|
|
1020
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1035
1021
|
|
|
1036
|
-
MCP tool: `
|
|
1022
|
+
MCP tool: `vm_command_kill`.
|
|
1037
1023
|
|
|
1038
|
-
### `ghostdock
|
|
1024
|
+
### `ghostdock vm command logs`
|
|
1039
1025
|
|
|
1040
|
-
|
|
1026
|
+
Get a page of a shell command’s stdout and stderr.
|
|
1041
1027
|
|
|
1042
1028
|
```
|
|
1043
|
-
ghostdock
|
|
1029
|
+
ghostdock vm command logs <command-id> --vm <string> --session-id <string> [flags]
|
|
1044
1030
|
```
|
|
1045
1031
|
|
|
1046
1032
|
| Argument | Description |
|
|
1047
1033
|
| --- | --- |
|
|
1048
|
-
| `<
|
|
1049
|
-
| `--org <string>` | Organization id or slug, from
|
|
1050
|
-
| `--
|
|
1051
|
-
| `--
|
|
1052
|
-
| `--
|
|
1034
|
+
| `<command-id>` | Command id returned by vm command run. Required. |
|
|
1035
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1036
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1037
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1038
|
+
| `--session-id <string>` | Session id returned by vm command run together with the commandId. Required. |
|
|
1039
|
+
| `--offset <integer>` | Character offset to continue reading from. Default 0. |
|
|
1040
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1053
1041
|
|
|
1054
|
-
MCP tool: `
|
|
1042
|
+
MCP tool: `vm_command_logs`.
|
|
1055
1043
|
|
|
1056
|
-
### `ghostdock
|
|
1044
|
+
### `ghostdock vm command run`
|
|
1057
1045
|
|
|
1058
|
-
|
|
1046
|
+
Run a shell command in a VM. Waits up to 120 seconds, then returns sessionId and commandId to poll. Starts the VM when allowed. Sessions do not survive idle-stop: for a process that must keep running, read the vm-boot skill (`ghostdock skill get vm-boot`). Never put secret values in the command; it is logged.
|
|
1059
1047
|
|
|
1060
1048
|
```
|
|
1061
|
-
ghostdock
|
|
1049
|
+
ghostdock vm command run <vm> --command <string> [flags]
|
|
1062
1050
|
```
|
|
1063
1051
|
|
|
1064
1052
|
| Argument | Description |
|
|
1065
1053
|
| --- | --- |
|
|
1066
|
-
| `<
|
|
1067
|
-
| `--org <string>` | Organization id or slug, from
|
|
1068
|
-
| `--
|
|
1069
|
-
| `--
|
|
1070
|
-
| `--
|
|
1071
|
-
| `--
|
|
1072
|
-
| `--
|
|
1054
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1055
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1056
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1057
|
+
| `--command <string>` | Shell command to run. Never include secret values: commands are logged. Required. |
|
|
1058
|
+
| `--session-id <string>` | Session from vm shell create, to keep cwd and environment from earlier commands. Omit for a one-off session. |
|
|
1059
|
+
| `--cwd <string>` | Directory to run the command in. |
|
|
1060
|
+
| `--wait-seconds <number>` | Seconds to wait before returning handles to poll: 1 to 120, default 120. |
|
|
1061
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1073
1062
|
|
|
1074
|
-
MCP tool: `
|
|
1063
|
+
MCP tool: `vm_command_run`.
|
|
1075
1064
|
|
|
1076
|
-
### `ghostdock
|
|
1065
|
+
### `ghostdock vm container`
|
|
1077
1066
|
|
|
1078
|
-
|
|
1067
|
+
Containers of a VM’s Docker engine.
|
|
1079
1068
|
|
|
1080
|
-
### `ghostdock
|
|
1069
|
+
### `ghostdock vm container list`
|
|
1081
1070
|
|
|
1082
|
-
List the
|
|
1071
|
+
List the containers of a VM, running or not. Each with state, health, restart policy, ports, Compose project and service, its lock (locked, and whether a person or its ghostdock.lock label decided), ghostdock.* labels, and which one is the default. A stopped VM lists none (it is not started for this).
|
|
1083
1072
|
|
|
1084
1073
|
```
|
|
1085
|
-
ghostdock
|
|
1074
|
+
ghostdock vm container list <vm> [flags]
|
|
1086
1075
|
```
|
|
1087
1076
|
|
|
1088
1077
|
| Argument | Description |
|
|
1089
1078
|
| --- | --- |
|
|
1090
|
-
| `<
|
|
1091
|
-
| `--org <string>` | Organization id or slug, from
|
|
1092
|
-
| `--container <string>` | Container to work in, by name, from sandboxes containers list. Default: the sandbox’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1093
|
-
| `--path <string>` | Directory to list. Absolute or relative to /. Defaults to /workspace. |
|
|
1094
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
1079
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1080
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1095
1081
|
|
|
1096
|
-
MCP tool: `
|
|
1082
|
+
MCP tool: `vm_container_list`.
|
|
1097
1083
|
|
|
1098
|
-
### `ghostdock
|
|
1084
|
+
### `ghostdock vm container lock`
|
|
1099
1085
|
|
|
1100
|
-
|
|
1086
|
+
Lock a container against removal. A locked container cannot be removed, renamed or recreated through Docker (docker rm, compose down, a compose up that would recreate it) until it is unlocked here; start, stop and restart still work. It also pauses the VM’s auto-delete. An ephemeral VM’s stop still wipes it. Never starts the VM: a stopped one gets the lock at its next start.
|
|
1101
1087
|
|
|
1102
1088
|
```
|
|
1103
|
-
ghostdock
|
|
1089
|
+
ghostdock vm container lock <vm> <container> [flags]
|
|
1104
1090
|
```
|
|
1105
1091
|
|
|
1106
1092
|
| Argument | Description |
|
|
1107
1093
|
| --- | --- |
|
|
1108
|
-
| `<
|
|
1109
|
-
|
|
|
1110
|
-
| `--
|
|
1111
|
-
| `--container <string>` | Container to work in, by name, from sandboxes containers list. Default: the sandbox’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1112
|
-
| `--start` | Start the container first when it is not running, without asking. |
|
|
1094
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1095
|
+
| `<container>` | Container, by name. Required. |
|
|
1096
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1113
1097
|
|
|
1114
|
-
MCP tool: `
|
|
1098
|
+
MCP tool: `vm_container_lock`.
|
|
1115
1099
|
|
|
1116
|
-
### `ghostdock
|
|
1100
|
+
### `ghostdock vm container logs`
|
|
1117
1101
|
|
|
1118
|
-
|
|
1102
|
+
Read a container’s output, as docker logs does. Oldest first, each line with its stream (stdout, stderr) and time. The last tail lines (default 200), or with after only the lines after that time: pass the last line’s time to follow. truncated says lines were left out. A stopped VM has none (it is not started for this).
|
|
1119
1103
|
|
|
1120
1104
|
```
|
|
1121
|
-
ghostdock
|
|
1105
|
+
ghostdock vm container logs <vm> <container> [flags]
|
|
1122
1106
|
```
|
|
1123
1107
|
|
|
1124
1108
|
| Argument | Description |
|
|
1125
1109
|
| --- | --- |
|
|
1126
|
-
| `<
|
|
1127
|
-
|
|
|
1128
|
-
| `--
|
|
1129
|
-
| `--
|
|
1130
|
-
| `--
|
|
1131
|
-
|
|
|
1110
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1111
|
+
| `<container>` | Container, by name. Required. |
|
|
1112
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1113
|
+
| `--tail <integer>` | The last N lines (at most 5000). |
|
|
1114
|
+
| `--after <string>` | Only lines after this time: the time of the last line already read. |
|
|
1115
|
+
| `--follow` | Keep printing new lines until Ctrl-C. |
|
|
1116
|
+
| `--timestamps` | Put each line's time in front of it. |
|
|
1132
1117
|
|
|
1133
|
-
MCP tool: `
|
|
1118
|
+
MCP tool: `vm_container_logs`.
|
|
1134
1119
|
|
|
1135
|
-
### `ghostdock
|
|
1120
|
+
### `ghostdock vm container restart`
|
|
1136
1121
|
|
|
1137
|
-
|
|
1122
|
+
Restart a container, as docker restart does (stopping as docker stop does). Starts the VM when needed.
|
|
1138
1123
|
|
|
1139
1124
|
```
|
|
1140
|
-
ghostdock
|
|
1125
|
+
ghostdock vm container restart <vm> <container> [flags]
|
|
1141
1126
|
```
|
|
1142
1127
|
|
|
1143
1128
|
| Argument | Description |
|
|
1144
1129
|
| --- | --- |
|
|
1145
|
-
|
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
### `ghostdock sandboxes mcps`
|
|
1130
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1131
|
+
| `<container>` | Container, by name. Required. |
|
|
1132
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1150
1133
|
|
|
1151
|
-
MCP
|
|
1134
|
+
MCP tool: `vm_container_restart`.
|
|
1152
1135
|
|
|
1153
|
-
### `ghostdock
|
|
1136
|
+
### `ghostdock vm container start`
|
|
1154
1137
|
|
|
1155
|
-
|
|
1138
|
+
Start a stopped container, as docker start does. A running container stays as it is. Starts the VM when needed.
|
|
1156
1139
|
|
|
1157
1140
|
```
|
|
1158
|
-
ghostdock
|
|
1141
|
+
ghostdock vm container start <vm> <container> [flags]
|
|
1159
1142
|
```
|
|
1160
1143
|
|
|
1161
1144
|
| Argument | Description |
|
|
1162
1145
|
| --- | --- |
|
|
1163
|
-
| `<
|
|
1164
|
-
|
|
|
1165
|
-
| `--
|
|
1166
|
-
| `--port <integer>` | Port the MCP server listens on inside the sandbox. Required. |
|
|
1167
|
-
| `--path <string>` | HTTP path of the MCP endpoint. Default /mcp. |
|
|
1168
|
-
| `--auto-wake` | Start the sandbox when the endpoint is called while it is stopped. Default false. |
|
|
1146
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1147
|
+
| `<container>` | Container, by name. Required. |
|
|
1148
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1169
1149
|
|
|
1170
|
-
MCP tool: `
|
|
1150
|
+
MCP tool: `vm_container_start`.
|
|
1171
1151
|
|
|
1172
|
-
### `ghostdock
|
|
1152
|
+
### `ghostdock vm container stop`
|
|
1173
1153
|
|
|
1174
|
-
|
|
1154
|
+
Stop a container, as docker stop does. It gets its own stop signal, then a kill after its own stop timeout. It stays stopped while the VM sleeps and wakes, as Docker keeps a stopped container stopped, unless its restart policy is always. On a stopped VM it does nothing (note vm_stopped). A lock does not block it. note says when it was the default container or the last one running: then SSH, commands and files have nowhere to land until one runs.
|
|
1175
1155
|
|
|
1176
1156
|
```
|
|
1177
|
-
ghostdock
|
|
1157
|
+
ghostdock vm container stop <vm> <container> [flags]
|
|
1178
1158
|
```
|
|
1179
1159
|
|
|
1180
1160
|
| Argument | Description |
|
|
1181
1161
|
| --- | --- |
|
|
1182
|
-
| `<
|
|
1162
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1163
|
+
| `<container>` | Container, by name. Required. |
|
|
1164
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1183
1165
|
|
|
1184
|
-
MCP tool: `
|
|
1166
|
+
MCP tool: `vm_container_stop`.
|
|
1185
1167
|
|
|
1186
|
-
### `ghostdock
|
|
1168
|
+
### `ghostdock vm container unlock`
|
|
1187
1169
|
|
|
1188
|
-
|
|
1170
|
+
Unlock a container so Docker can remove or recreate it. Also one its image locked with the ghostdock.lock label. Never starts the VM: a stopped one gets it at its next start, and an overdue auto-delete it held goes ahead.
|
|
1189
1171
|
|
|
1190
1172
|
```
|
|
1191
|
-
ghostdock
|
|
1173
|
+
ghostdock vm container unlock <vm> <container> [flags]
|
|
1192
1174
|
```
|
|
1193
1175
|
|
|
1194
1176
|
| Argument | Description |
|
|
1195
1177
|
| --- | --- |
|
|
1196
|
-
| `<
|
|
1197
|
-
|
|
|
1178
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1179
|
+
| `<container>` | Container, by name. Required. |
|
|
1180
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1198
1181
|
|
|
1199
|
-
MCP tool: `
|
|
1182
|
+
MCP tool: `vm_container_unlock`.
|
|
1200
1183
|
|
|
1201
|
-
### `ghostdock
|
|
1184
|
+
### `ghostdock vm create`
|
|
1202
1185
|
|
|
1203
|
-
|
|
1186
|
+
Create a VM from a snapshot, OCI image, Dockerfile or Compose files. Inline content only: for a directory or ZIP (Dockerfile COPY/ADD, Compose build files) use `ghostdock vm build`. Snapshots and catalog images can require environment entries, URL ports and MCP names (requiredEnvironment / requiredUrls / requiredMcps); a missing environment entry fails with its names (missingEnvironment), and removing a required URL or MCP fails with them (missingUrls / missingMcps). Every source but a snapshot becomes a Compose project in the VM, run once with docker compose up -d; after that Docker is the truth. Returns once the project is up, with `boot`: how long the VM and the project's compose up took, each in ms, and the images it pulled. Idle-stop and auto-delete apply (defaults 20 minutes / 14 days). Read the vm skill (`ghostdock skill get vm`) for sources, manifests, lifecycle and providers.
|
|
1204
1187
|
|
|
1205
1188
|
```
|
|
1206
|
-
ghostdock
|
|
1189
|
+
ghostdock vm create --source <object> [flags]
|
|
1207
1190
|
```
|
|
1208
1191
|
|
|
1209
1192
|
| Argument | Description |
|
|
1210
1193
|
| --- | --- |
|
|
1211
|
-
|
|
|
1212
|
-
| `--name <string>` |
|
|
1213
|
-
| `--
|
|
1214
|
-
| `--
|
|
1215
|
-
| `--
|
|
1194
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1195
|
+
| `--display-name <string>` | Display name for the VM. Optional. |
|
|
1196
|
+
| `--source <object>` | What the VM boots from. Required. "template" boots a template by its name ({ name, scope? } from template list, e.g. headless, desktop, nginx): the organization’s of that name, else the platform’s (scope picks one), its source and defaults, under every other field of this call (a URL on the same port or an MCP of the same name replaces the template's; vm up is the short form). "image" boots an org catalog row by id ({ id } from image list / image get — image add OCI bookmarks, image add-dockerfile, and image add-compose rows) or any OCI ref ({ ref }); "dockerfile" builds inline Dockerfile text only (ghostdock.* LABEL lines parsed for manifest; this tool has no build directory, so COPY/ADD of local files fails — use the CLI `ghostdock vm build --kind dockerfile` with a directory or ZIP); "compose" runs the given inline files with docker compose up -d (must include docker-compose.yml/yaml or compose.yml/yaml; ghostdock.* service labels parsed for manifest). Every source but a snapshot becomes a Compose project in /srv/ghostdock/<vm name>, run once; an image is one service named after it, a Dockerfile the service app. A Compose project that needs extra files is not accepted here — use `ghostdock vm build --kind compose`. "compose" also takes a published Compose project instead of files ({ reference: "oci://…", override? }): it runs through include:, the override merged into it. Image, dockerfile, and compose sources never appear in snapshot list. Published static sites use site publish (CDN), not a snapshot. (JSON object) Required. |
|
|
1197
|
+
| `--restart <string>` | Restart policy of the service an image or a Dockerfile becomes, Docker's names: unless-stopped (default), always, on-failure, or no (it does not come back after the VM sleeps). Not for Compose: its files set restart:. |
|
|
1198
|
+
| `--resources <object>` | Compute sizing. For image/dockerfile/compose: layered on platform defaults when omitted. For snapshot: optional override applied via resize after create. (JSON object) |
|
|
1199
|
+
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the VM. -1 means always on. 0 is rejected. Omit for the platform default. Provider-native timers are optional backup. |
|
|
1200
|
+
| `--lifecycle <string>` | What may make the VM disappear on its own. ephemeral: every stop wipes the VM and its disk, and the next start runs its Compose project again (edits in the project folder kept, everything else gone; locks too). auto_delete (default): a stop keeps the disk, and the record goes autoDeleteAfterDays after the stop. keep: never removed automatically. Omit for the image label ghostdock.ephemeral, else auto_delete. ephemeral is chosen here only. |
|
|
1201
|
+
| `--auto-delete-after-days <integer>` | Days the VM stays stopped before the platform worker deletes the record (0–365; 0 deletes it when it stops). Omit for the platform default (14). Not with keep. A container a person locked holds it. |
|
|
1202
|
+
| `--provider <string>` | Provider id from provider list (not the provider kind). Omit to use the organization default (the org choice, else the platform default); if that provider lacks a capability this create needs, the first listed provider that accepts new VMs and has it is used. When no provider fits, the call fails with a not-configured error. |
|
|
1203
|
+
| `--environment <object>` | Environment to give this VM. organization: names of organization entries (from env list) to export under their own names. bindings: remap org entries onto slot names ({ name: slot, organization: orgEntryName }). local: VM-only variables/secrets to create with the VM (kind required for each). Both land as ordinary process environment variables ($NAME / process.env.NAME); a local entry overrides an organization entry of the same name. When booting from an organization snapshot, omit organization/bindings/local to keep manifest env defaults, but still supply every name in requiredEnvironment (via organization, bindings, or local). Otherwise a VM gets nothing unless listed here. (JSON object) |
|
|
1204
|
+
| `--image-base <string>` | How the disk is made for one of Ghostdock's platform images: auto (default) clones the host's image base, a disk with the image already on it, when there is one; off always starts from an empty disk that pulls the image. For tests and comparisons; other images always start empty. |
|
|
1205
|
+
| `--urls <array>` | Changes to the image’s or snapshot’s URLs, keyed by port. Omit for the image URLs as they are; otherwise you get the image URLs plus yours: an entry on the same port replaces that URL completely (omitted fields take their defaults), and { port, remove: true } drops it; removing a port the image does not declare does nothing. A required port cannot be removed. TCP URLs are always public. (JSON array) |
|
|
1206
|
+
| `--mcps <array>` | Changes to the image’s or snapshot’s MCP exposures, keyed by name. Omit for the image MCPs as they are; otherwise you get the image MCPs plus yours: an entry with the same name replaces that MCP completely, and { name, remove: true } drops it; removing a name the image does not declare does nothing. A required MCP (requiredMcps) cannot be removed. (JSON array) |
|
|
1216
1207
|
|
|
1217
|
-
MCP tool: `
|
|
1208
|
+
MCP tool: `vm_create`.
|
|
1218
1209
|
|
|
1219
|
-
### `ghostdock
|
|
1210
|
+
### `ghostdock vm default-container`
|
|
1220
1211
|
|
|
1221
|
-
|
|
1212
|
+
Show, set or clear the VM’s default container. SSH, the terminal, files, commands and MCP land there when no container is named. Without container or clear it only shows the setting.
|
|
1222
1213
|
|
|
1223
1214
|
```
|
|
1224
|
-
ghostdock
|
|
1215
|
+
ghostdock vm default-container <vm> [flags]
|
|
1225
1216
|
```
|
|
1226
1217
|
|
|
1227
1218
|
| Argument | Description |
|
|
1228
1219
|
| --- | --- |
|
|
1229
|
-
| `<
|
|
1230
|
-
| `--org <string>` | Organization id or slug, from
|
|
1231
|
-
| `--
|
|
1232
|
-
| `--
|
|
1220
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1221
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1222
|
+
| `--container <string>` | Container to make the default, by name. The running VM must have it. |
|
|
1223
|
+
| `--clear` | Clear the default. |
|
|
1224
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1233
1225
|
|
|
1234
|
-
MCP tool: `
|
|
1226
|
+
MCP tool: `vm_default_container`.
|
|
1235
1227
|
|
|
1236
|
-
### `ghostdock
|
|
1228
|
+
### `ghostdock vm delete`
|
|
1237
1229
|
|
|
1238
|
-
|
|
1230
|
+
Permanently delete a VM and its files. Refused while it has locked containers (vm_has_locked_containers, naming them) unless deleteLocked is true.
|
|
1239
1231
|
|
|
1240
1232
|
```
|
|
1241
|
-
ghostdock
|
|
1233
|
+
ghostdock vm delete <vm> [flags]
|
|
1242
1234
|
```
|
|
1243
1235
|
|
|
1244
1236
|
| Argument | Description |
|
|
1245
1237
|
| --- | --- |
|
|
1246
|
-
| `<
|
|
1247
|
-
| `--org <string>` | Organization id or slug, from
|
|
1248
|
-
| `--
|
|
1238
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1239
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1240
|
+
| `--delete-locked` | Delete it with its locked containers. Without it, a locked container refuses the delete. |
|
|
1241
|
+
|
|
1242
|
+
MCP tool: `vm_delete`.
|
|
1249
1243
|
|
|
1250
|
-
|
|
1244
|
+
### `ghostdock vm env`
|
|
1251
1245
|
|
|
1252
|
-
|
|
1246
|
+
Environment of one VM.
|
|
1253
1247
|
|
|
1254
|
-
|
|
1248
|
+
### `ghostdock vm env delete`
|
|
1249
|
+
|
|
1250
|
+
Delete one of a VM’s own variables or secrets.
|
|
1255
1251
|
|
|
1256
1252
|
```
|
|
1257
|
-
ghostdock
|
|
1253
|
+
ghostdock vm env delete <name> --vm <string> [flags]
|
|
1258
1254
|
```
|
|
1259
1255
|
|
|
1260
1256
|
| Argument | Description |
|
|
1261
1257
|
| --- | --- |
|
|
1262
|
-
| `<
|
|
1263
|
-
| `--org <string>` | Organization id or slug, from
|
|
1264
|
-
| `--
|
|
1265
|
-
| `--
|
|
1266
|
-
| `--start` | Also start it now, not only after restarts. Default true. |
|
|
1258
|
+
| `<name>` | Environment variable name, e.g. DATABASE_URL. Letters, digits and underscores only. Case-sensitive; stored exactly as provided. Required. |
|
|
1259
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1260
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1261
|
+
| `--restart` | When true and the VM is running, stop then start after saving so processes pick up the change. Default: sync only. |
|
|
1267
1262
|
|
|
1268
|
-
MCP tool: `
|
|
1263
|
+
MCP tool: `vm_env_delete`.
|
|
1269
1264
|
|
|
1270
|
-
### `ghostdock
|
|
1265
|
+
### `ghostdock vm env get`
|
|
1271
1266
|
|
|
1272
|
-
|
|
1267
|
+
Get a VM’s environment: selections, bindings and local entries. Shows each organization entry with whether it is selected, exportAs, and overriddenByLocal; secret values are withheld. Nothing is inherited.
|
|
1273
1268
|
|
|
1274
|
-
|
|
1269
|
+
```
|
|
1270
|
+
ghostdock vm env get <vm> [flags]
|
|
1271
|
+
```
|
|
1275
1272
|
|
|
1276
|
-
|
|
1273
|
+
| Argument | Description |
|
|
1274
|
+
| --- | --- |
|
|
1275
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1276
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1277
|
+
|
|
1278
|
+
MCP tool: `vm_env_get`.
|
|
1279
|
+
|
|
1280
|
+
### `ghostdock vm env select`
|
|
1281
|
+
|
|
1282
|
+
Replace the organization entries a VM exports. Full replace: environment is the whole list ([] clears it), and omitting bindings clears the remaps. Running processes keep their old values until restarted (pass restart). Read the environment skill (`ghostdock skill get environment`).
|
|
1277
1283
|
|
|
1278
1284
|
```
|
|
1279
|
-
ghostdock
|
|
1285
|
+
ghostdock vm env select <vm> --environment <array> [flags]
|
|
1280
1286
|
```
|
|
1281
1287
|
|
|
1282
1288
|
| Argument | Description |
|
|
1283
1289
|
| --- | --- |
|
|
1284
|
-
| `<
|
|
1285
|
-
| `--org <string>` | Organization id or slug, from
|
|
1286
|
-
| `--
|
|
1287
|
-
| `--
|
|
1288
|
-
| `--
|
|
1290
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1291
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1292
|
+
| `--environment <array>` | Organization catalogue entry names to export under their own names. Pass [] to clear plain selections. (JSON array) Required. |
|
|
1293
|
+
| `--bindings <array>` | Slot-centric org bindings: export an organization entry under a (possibly different) VM env name. Omit to clear existing remaps (full replace). (JSON array) |
|
|
1294
|
+
| `--restart` | When true and the VM is running, stop then start after saving so processes pick up the change. Default: sync only; already-running processes keep the old values until restarted. |
|
|
1289
1295
|
|
|
1290
|
-
MCP tool: `
|
|
1296
|
+
MCP tool: `vm_env_select`.
|
|
1291
1297
|
|
|
1292
|
-
### `ghostdock
|
|
1298
|
+
### `ghostdock vm env set`
|
|
1293
1299
|
|
|
1294
|
-
|
|
1300
|
+
Create or replace one of a VM’s own variables or secrets. It overrides an organization entry of the same name. kind is required when creating. Setting secrets via this tool is allowed; prefer the Ghostdock CLI so values stay out of the conversation, and never put them in commands.
|
|
1295
1301
|
|
|
1296
1302
|
```
|
|
1297
|
-
ghostdock
|
|
1303
|
+
ghostdock vm env set <name> --vm <string> --value <string> [flags]
|
|
1298
1304
|
```
|
|
1299
1305
|
|
|
1300
1306
|
| Argument | Description |
|
|
1301
1307
|
| --- | --- |
|
|
1302
|
-
| `<
|
|
1303
|
-
| `--org <string>` | Organization id or slug, from
|
|
1304
|
-
| `--
|
|
1305
|
-
| `--
|
|
1306
|
-
| `--
|
|
1308
|
+
| `<name>` | Environment variable name, e.g. DATABASE_URL. Letters, digits and underscores only. Case-sensitive; stored exactly as provided. Required. |
|
|
1309
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1310
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1311
|
+
| `--value <string>` | The value to store. A secret value can be replaced later but never read back. Required. |
|
|
1312
|
+
| `--kind <string>` | Required when creating. Use "secret" for credentials; secret values can be replaced but never read back. Omit when updating to keep the existing kind. |
|
|
1313
|
+
| `--comment <string>` | Optional note shown with the entry, e.g. what it is for. |
|
|
1314
|
+
| `--restart` | When true and the VM is running, stop then start after saving so processes pick up the change. Default: sync only. |
|
|
1307
1315
|
|
|
1308
|
-
MCP tool: `
|
|
1316
|
+
MCP tool: `vm_env_set`.
|
|
1309
1317
|
|
|
1310
|
-
### `ghostdock
|
|
1318
|
+
### `ghostdock vm file`
|
|
1311
1319
|
|
|
1312
|
-
|
|
1320
|
+
Files inside a VM.
|
|
1313
1321
|
|
|
1314
|
-
### `ghostdock
|
|
1322
|
+
### `ghostdock vm file list`
|
|
1315
1323
|
|
|
1316
|
-
|
|
1324
|
+
List the files in a VM directory. Default: the container's start folder (its dir).
|
|
1317
1325
|
|
|
1318
1326
|
```
|
|
1319
|
-
ghostdock
|
|
1327
|
+
ghostdock vm file list <vm> [flags]
|
|
1320
1328
|
```
|
|
1321
1329
|
|
|
1322
1330
|
| Argument | Description |
|
|
1323
1331
|
| --- | --- |
|
|
1324
|
-
| `<
|
|
1325
|
-
| `--org <string>` | Organization id or slug, from
|
|
1326
|
-
| `--container <string>` | Container to work in, by name, from
|
|
1332
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1333
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1334
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1335
|
+
| `--path <string>` | Directory to list: absolute, or relative to the container's start folder (its dir: the login user's home, else WORKDIR, else /). Defaults to that folder. |
|
|
1327
1336
|
| `--start` | Start the container first when it is not running, without asking. |
|
|
1328
1337
|
|
|
1329
|
-
MCP tool: `
|
|
1338
|
+
MCP tool: `vm_file_list`.
|
|
1330
1339
|
|
|
1331
|
-
### `ghostdock
|
|
1340
|
+
### `ghostdock vm file read`
|
|
1332
1341
|
|
|
1333
|
-
|
|
1342
|
+
Read a file from a VM: utf8 text, or base64 for small binaries.
|
|
1334
1343
|
|
|
1335
1344
|
```
|
|
1336
|
-
ghostdock
|
|
1345
|
+
ghostdock vm file read <path> --vm <string> [flags]
|
|
1337
1346
|
```
|
|
1338
1347
|
|
|
1339
1348
|
| Argument | Description |
|
|
1340
1349
|
| --- | --- |
|
|
1341
|
-
| `<
|
|
1342
|
-
| `--org <string>` | Organization id or slug, from
|
|
1350
|
+
| `<path>` | File path: absolute, or relative to the container's start folder (for example src/App.vue). Required. |
|
|
1351
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1352
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1353
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1354
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1343
1355
|
|
|
1344
|
-
MCP tool: `
|
|
1356
|
+
MCP tool: `vm_file_read`.
|
|
1345
1357
|
|
|
1346
|
-
### `ghostdock
|
|
1358
|
+
### `ghostdock vm file upload`
|
|
1347
1359
|
|
|
1348
|
-
|
|
1360
|
+
Upload local files or directories to a VM's container, into its start folder (the login user's home, else WORKDIR, else /).
|
|
1349
1361
|
|
|
1350
1362
|
```
|
|
1351
|
-
ghostdock
|
|
1363
|
+
ghostdock vm file upload <vm> [path] [flags]
|
|
1352
1364
|
```
|
|
1353
1365
|
|
|
1354
1366
|
| Argument | Description |
|
|
1355
1367
|
| --- | --- |
|
|
1356
|
-
| `<
|
|
1357
|
-
| `--org <
|
|
1368
|
+
| `<vm>` | VM name or id. Required. |
|
|
1369
|
+
| `--org <value>` | Organization id or slug, from `ghostdock organization list` (default: GHOSTDOCK_ORG, then `ghostdock organization use`). |
|
|
1370
|
+
| `--container <value>` | Container the files land in, by name, from `ghostdock vm container list`. Default: the VM's default container, else the one running container. |
|
|
1371
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1372
|
+
| `--zip <value>` | Local ZIP file to upload. |
|
|
1373
|
+
| `<path>` | File or directory to upload (additional paths are allowed). |
|
|
1358
1374
|
|
|
1359
|
-
MCP tool: `
|
|
1375
|
+
MCP tool: `vm_file_upload`.
|
|
1360
1376
|
|
|
1361
|
-
### `ghostdock
|
|
1377
|
+
### `ghostdock vm list`
|
|
1362
1378
|
|
|
1363
|
-
|
|
1379
|
+
List the VMs of an organization, with their lifecycle and deadlines. Each has a name (e.g. quiet-harbor), unique in the organization, that every VM tool accepts as `vm`.
|
|
1364
1380
|
|
|
1365
1381
|
```
|
|
1366
|
-
ghostdock
|
|
1382
|
+
ghostdock vm list [flags]
|
|
1367
1383
|
```
|
|
1368
1384
|
|
|
1369
1385
|
| Argument | Description |
|
|
1370
1386
|
| --- | --- |
|
|
1371
|
-
|
|
|
1372
|
-
|
|
1387
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1388
|
+
|
|
1389
|
+
MCP tool: `vm_list`.
|
|
1373
1390
|
|
|
1374
|
-
|
|
1391
|
+
### `ghostdock vm mcp`
|
|
1375
1392
|
|
|
1376
|
-
|
|
1393
|
+
MCP endpoints a VM exposes.
|
|
1377
1394
|
|
|
1378
|
-
### `ghostdock
|
|
1395
|
+
### `ghostdock vm mcp create`
|
|
1379
1396
|
|
|
1380
|
-
|
|
1397
|
+
Expose an MCP server running in a VM. Idempotent by name.
|
|
1381
1398
|
|
|
1382
1399
|
```
|
|
1383
|
-
ghostdock
|
|
1400
|
+
ghostdock vm mcp create <vm> --name <string> --port <integer> [flags]
|
|
1384
1401
|
```
|
|
1385
1402
|
|
|
1386
1403
|
| Argument | Description |
|
|
1387
1404
|
| --- | --- |
|
|
1388
|
-
| `<
|
|
1389
|
-
| `--org <string>` | Organization id or slug, from
|
|
1390
|
-
| `--
|
|
1391
|
-
| `--
|
|
1405
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1406
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1407
|
+
| `--name <string>` | Endpoint name, unique in the VM. Letters, digits, _ and -, starting with a letter. Required. |
|
|
1408
|
+
| `--port <integer>` | Port the MCP server listens on inside the VM. Required. |
|
|
1409
|
+
| `--path <string>` | HTTP path of the MCP endpoint. Default /mcp. |
|
|
1410
|
+
| `--auto-wake` | Start the VM when the endpoint is called while it is stopped. Default false. |
|
|
1392
1411
|
|
|
1393
|
-
MCP tool: `
|
|
1412
|
+
MCP tool: `vm_mcp_create`.
|
|
1394
1413
|
|
|
1395
|
-
### `ghostdock
|
|
1414
|
+
### `ghostdock vm mcp delete`
|
|
1396
1415
|
|
|
1397
|
-
|
|
1416
|
+
Delete an MCP endpoint of a VM.
|
|
1398
1417
|
|
|
1399
1418
|
```
|
|
1400
|
-
ghostdock
|
|
1419
|
+
ghostdock vm mcp delete <mcp-id>
|
|
1401
1420
|
```
|
|
1402
1421
|
|
|
1403
1422
|
| Argument | Description |
|
|
1404
1423
|
| --- | --- |
|
|
1405
|
-
| `<
|
|
1406
|
-
|
|
1424
|
+
| `<mcp-id>` | MCP endpoint id, from vm mcp list or vm mcp create. Required. |
|
|
1425
|
+
|
|
1426
|
+
MCP tool: `vm_mcp_delete`.
|
|
1427
|
+
|
|
1428
|
+
### `ghostdock vm mcp list`
|
|
1407
1429
|
|
|
1408
|
-
MCP
|
|
1430
|
+
List the MCP endpoints a VM exposes (name, port, path, autoWake).
|
|
1431
|
+
|
|
1432
|
+
```
|
|
1433
|
+
ghostdock vm mcp list <vm> [flags]
|
|
1434
|
+
```
|
|
1409
1435
|
|
|
1410
|
-
|
|
1436
|
+
| Argument | Description |
|
|
1437
|
+
| --- | --- |
|
|
1438
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1439
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1411
1440
|
|
|
1412
|
-
|
|
1441
|
+
MCP tool: `vm_mcp_list`.
|
|
1413
1442
|
|
|
1414
|
-
### `ghostdock
|
|
1443
|
+
### `ghostdock vm mcp update`
|
|
1415
1444
|
|
|
1416
|
-
|
|
1445
|
+
Change an MCP endpoint’s name, port, path or autoWake setting.
|
|
1417
1446
|
|
|
1418
1447
|
```
|
|
1419
|
-
ghostdock
|
|
1448
|
+
ghostdock vm mcp update <mcp-id> [flags]
|
|
1420
1449
|
```
|
|
1421
1450
|
|
|
1422
1451
|
| Argument | Description |
|
|
1423
1452
|
| --- | --- |
|
|
1424
|
-
| `<
|
|
1425
|
-
| `--
|
|
1426
|
-
| `--
|
|
1427
|
-
| `--
|
|
1428
|
-
| `--
|
|
1453
|
+
| `<mcp-id>` | MCP endpoint id, from vm mcp list or vm mcp create. Required. |
|
|
1454
|
+
| `--name <string>` | New endpoint name. Omit to keep it. |
|
|
1455
|
+
| `--port <integer>` | New port inside the VM. Omit to keep it. |
|
|
1456
|
+
| `--path <string>` | New HTTP path. Omit to keep it. |
|
|
1457
|
+
| `--auto-wake` | Start the VM when the endpoint is called while it is stopped. Omit to keep it. |
|
|
1429
1458
|
|
|
1430
|
-
MCP tool: `
|
|
1459
|
+
MCP tool: `vm_mcp_update`.
|
|
1431
1460
|
|
|
1432
|
-
### `ghostdock
|
|
1461
|
+
### `ghostdock vm resize`
|
|
1433
1462
|
|
|
1434
|
-
|
|
1463
|
+
Change a VM’s CPU and/or memory. While running only increases are allowed; stop it first to decrease (this tool does not stop it). Disk: vm resize-disk.
|
|
1435
1464
|
|
|
1436
1465
|
```
|
|
1437
|
-
ghostdock
|
|
1466
|
+
ghostdock vm resize <vm> [flags]
|
|
1438
1467
|
```
|
|
1439
1468
|
|
|
1440
1469
|
| Argument | Description |
|
|
1441
1470
|
| --- | --- |
|
|
1442
|
-
| `<
|
|
1443
|
-
| `--org <string>` | Organization id or slug, from
|
|
1444
|
-
| `--
|
|
1471
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1472
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1473
|
+
| `--cpu <number>` | Number of CPUs. |
|
|
1474
|
+
| `--memory-gib <number>` | Memory in GiB. |
|
|
1445
1475
|
|
|
1446
|
-
MCP tool: `
|
|
1476
|
+
MCP tool: `vm_resize`.
|
|
1447
1477
|
|
|
1448
|
-
### `ghostdock
|
|
1478
|
+
### `ghostdock vm resize-disk`
|
|
1449
1479
|
|
|
1450
|
-
|
|
1480
|
+
Grow a VM’s disk. The VM must be stopped first (this tool does not stop it). Disk only grows, never shrinks.
|
|
1451
1481
|
|
|
1452
1482
|
```
|
|
1453
|
-
ghostdock
|
|
1483
|
+
ghostdock vm resize-disk <vm> --disk-gib <number> [flags]
|
|
1454
1484
|
```
|
|
1455
1485
|
|
|
1456
1486
|
| Argument | Description |
|
|
1457
1487
|
| --- | --- |
|
|
1458
|
-
| `<
|
|
1459
|
-
| `--org <string>` | Organization id or slug, from
|
|
1460
|
-
| `--
|
|
1461
|
-
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the sandbox. -1 always on. 0 is rejected. Null resets to the platform default. Provider-native timers are optional backup. |
|
|
1462
|
-
| `--auto-delete-interval-minutes <number>` | Minutes the sandbox stays stopped before the record is deleted. 0 deletes it when it stops. -1 keeps it. Null resets to the platform default. Provider-native timers are optional backup. |
|
|
1488
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1489
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1490
|
+
| `--disk-gib <number>` | New total disk size in GiB; must be larger than the current size. Required. |
|
|
1463
1491
|
|
|
1464
|
-
MCP tool: `
|
|
1492
|
+
MCP tool: `vm_resize_disk`.
|
|
1465
1493
|
|
|
1466
|
-
### `ghostdock
|
|
1494
|
+
### `ghostdock vm shell`
|
|
1467
1495
|
|
|
1468
|
-
|
|
1496
|
+
Shell sessions that keep cwd and environment between commands.
|
|
1469
1497
|
|
|
1470
|
-
### `ghostdock
|
|
1498
|
+
### `ghostdock vm shell close`
|
|
1471
1499
|
|
|
1472
|
-
|
|
1500
|
+
Close a shell session.
|
|
1473
1501
|
|
|
1474
1502
|
```
|
|
1475
|
-
ghostdock
|
|
1503
|
+
ghostdock vm shell close <session-id> --vm <string> [flags]
|
|
1476
1504
|
```
|
|
1477
1505
|
|
|
1478
1506
|
| Argument | Description |
|
|
1479
1507
|
| --- | --- |
|
|
1480
|
-
| `<
|
|
1481
|
-
| `--org <string>` | Organization id or slug, from
|
|
1482
|
-
| `--
|
|
1483
|
-
| `--
|
|
1484
|
-
| `--
|
|
1485
|
-
| `--public` | Reachable without signing in. Default false; TCP URLs are always public. |
|
|
1486
|
-
| `--title <string>` | Name shown for the URL, up to 40 characters. A titled HTTP URL gets its own button on the sandbox card; TCP titles are shown in URL lists. Untitled HTTP URLs are listed under "Open URL". |
|
|
1508
|
+
| `<session-id>` | Session id from vm shell create. Required. |
|
|
1509
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1510
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1511
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1512
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1487
1513
|
|
|
1488
|
-
MCP tool: `
|
|
1514
|
+
MCP tool: `vm_shell_close`.
|
|
1489
1515
|
|
|
1490
|
-
### `ghostdock
|
|
1516
|
+
### `ghostdock vm shell create`
|
|
1491
1517
|
|
|
1492
|
-
|
|
1518
|
+
Open a shell session that keeps cwd and environment between commands. Starts the VM when allowed; the session ends at idle-stop.
|
|
1493
1519
|
|
|
1494
1520
|
```
|
|
1495
|
-
ghostdock
|
|
1521
|
+
ghostdock vm shell create <vm> [flags]
|
|
1496
1522
|
```
|
|
1497
1523
|
|
|
1498
1524
|
| Argument | Description |
|
|
1499
1525
|
| --- | --- |
|
|
1500
|
-
| `<
|
|
1526
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1527
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1528
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1529
|
+
| `--session-id <string>` | Id for the new session: a slug. Omit to generate one. |
|
|
1530
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1531
|
+
|
|
1532
|
+
MCP tool: `vm_shell_create`.
|
|
1533
|
+
|
|
1534
|
+
### `ghostdock vm ssh`
|
|
1501
1535
|
|
|
1502
|
-
|
|
1536
|
+
SSH access to a VM.
|
|
1503
1537
|
|
|
1504
|
-
### `ghostdock
|
|
1538
|
+
### `ghostdock vm ssh get`
|
|
1505
1539
|
|
|
1506
|
-
|
|
1540
|
+
Get temporary SSH access to a VM (command and token, 60 minutes). Starts the VM when needed. Idle-stop still applies, independent of the token.
|
|
1507
1541
|
|
|
1508
1542
|
```
|
|
1509
|
-
ghostdock
|
|
1543
|
+
ghostdock vm ssh get <vm> [flags]
|
|
1510
1544
|
```
|
|
1511
1545
|
|
|
1512
1546
|
| Argument | Description |
|
|
1513
1547
|
| --- | --- |
|
|
1514
|
-
| `<
|
|
1515
|
-
| `--org <string>` | Organization id or slug, from
|
|
1548
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1549
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1550
|
+
| `--container <string>` | Container to work in, by name, from vm container list. Default: the VM’s default container, else the one running container. With several running and no default the call fails and lists them. |
|
|
1551
|
+
| `--start` | Start the container first when it is not running, without asking. |
|
|
1516
1552
|
|
|
1517
|
-
MCP tool: `
|
|
1553
|
+
MCP tool: `vm_ssh_get`.
|
|
1518
1554
|
|
|
1519
|
-
### `ghostdock
|
|
1555
|
+
### `ghostdock vm ssh revoke`
|
|
1520
1556
|
|
|
1521
|
-
|
|
1557
|
+
Revoke a VM’s active SSH access.
|
|
1522
1558
|
|
|
1523
1559
|
```
|
|
1524
|
-
ghostdock
|
|
1560
|
+
ghostdock vm ssh revoke <vm> [flags]
|
|
1525
1561
|
```
|
|
1526
1562
|
|
|
1527
1563
|
| Argument | Description |
|
|
1528
1564
|
| --- | --- |
|
|
1529
|
-
| `<
|
|
1530
|
-
| `--
|
|
1531
|
-
| `--protocol <string>` | "http" or "tcp". Omit to keep the current protocol. |
|
|
1532
|
-
| `--auto-wake` | Start the sandbox when the URL is visited while it is stopped. Omit to keep it. |
|
|
1533
|
-
| `--public` | Reachable without signing in. Omit to keep it; TCP cannot be made private. |
|
|
1534
|
-
| `--title <string>` | Name shown for the URL, up to 40 characters. A titled HTTP URL gets its own button on the sandbox card; TCP titles are shown in URL lists. Untitled HTTP URLs are listed under "Open URL". Omit to keep it; null removes it. |
|
|
1565
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1566
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1535
1567
|
|
|
1536
|
-
MCP tool: `
|
|
1568
|
+
MCP tool: `vm_ssh_revoke`.
|
|
1537
1569
|
|
|
1538
|
-
### `ghostdock
|
|
1570
|
+
### `ghostdock vm status`
|
|
1539
1571
|
|
|
1540
|
-
|
|
1572
|
+
Get a VM’s status and lifecycle deadlines without waking it. Returns idleStopsAt, deletesAt and `boot` (the last start: VM and container times in ms) and does not reset idle activity.
|
|
1541
1573
|
|
|
1542
1574
|
```
|
|
1543
|
-
ghostdock
|
|
1575
|
+
ghostdock vm status <vm> [flags]
|
|
1544
1576
|
```
|
|
1545
1577
|
|
|
1546
1578
|
| Argument | Description |
|
|
1547
1579
|
| --- | --- |
|
|
1548
|
-
| `<
|
|
1549
|
-
| `--org <string>` | Organization id or slug, from
|
|
1580
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1581
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1550
1582
|
|
|
1551
|
-
MCP tool: `
|
|
1583
|
+
MCP tool: `vm_status`.
|
|
1552
1584
|
|
|
1553
|
-
|
|
1585
|
+
### `ghostdock vm stop`
|
|
1554
1586
|
|
|
1555
|
-
|
|
1587
|
+
Stop a running VM without deleting its files.
|
|
1556
1588
|
|
|
1557
|
-
|
|
1589
|
+
```
|
|
1590
|
+
ghostdock vm stop <vm> [flags]
|
|
1591
|
+
```
|
|
1558
1592
|
|
|
1559
|
-
|
|
1593
|
+
| Argument | Description |
|
|
1594
|
+
| --- | --- |
|
|
1595
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1596
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1597
|
+
|
|
1598
|
+
MCP tool: `vm_stop`.
|
|
1599
|
+
|
|
1600
|
+
### `ghostdock vm storage`
|
|
1601
|
+
|
|
1602
|
+
### `ghostdock vm storage delete`
|
|
1603
|
+
|
|
1604
|
+
Delete a named volume or a top-level VM folder, with everything in it. Refused while a container mounts it (in any state: a stopped one counts, so stopping does not help), mounts a folder above it (a bind of /), or a volume keeps its data in the folder: remove those first.
|
|
1560
1605
|
|
|
1561
1606
|
```
|
|
1562
|
-
ghostdock
|
|
1607
|
+
ghostdock vm storage delete <vm> --kind <string> --name <string> [flags]
|
|
1563
1608
|
```
|
|
1564
1609
|
|
|
1565
1610
|
| Argument | Description |
|
|
1566
1611
|
| --- | --- |
|
|
1567
|
-
|
|
|
1568
|
-
| `--
|
|
1569
|
-
| `--
|
|
1570
|
-
|
|
|
1612
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1613
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1614
|
+
| `--kind <string>` | volume or folder. Required. |
|
|
1615
|
+
| `--name <string>` | The volume’s name, or the folder’s path in the VM (/srv, not /srv/app). Required. |
|
|
1571
1616
|
|
|
1572
|
-
MCP tool: `
|
|
1617
|
+
MCP tool: `vm_storage_delete`.
|
|
1573
1618
|
|
|
1574
|
-
### `ghostdock
|
|
1619
|
+
### `ghostdock vm storage list`
|
|
1575
1620
|
|
|
1576
|
-
|
|
1621
|
+
List a VM’s volumes and VM folders. The VM folders are where bind mounts land. Each with its size and sizeState (measured; measuring: ask again in a few seconds; tooBig: too big to measure cheaply; outside: a volume bound outside the VM folders, not measured nor browsable) and the containers using it, plus every container’s mounts. truncated says entries were left out. A stopped VM lists none (it is not started for this).
|
|
1577
1622
|
|
|
1578
1623
|
```
|
|
1579
|
-
ghostdock
|
|
1624
|
+
ghostdock vm storage list <vm> [flags]
|
|
1580
1625
|
```
|
|
1581
1626
|
|
|
1582
1627
|
| Argument | Description |
|
|
1583
1628
|
| --- | --- |
|
|
1584
|
-
| `<
|
|
1585
|
-
| `--org <string>` | Organization id or slug, from
|
|
1629
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1630
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1586
1631
|
|
|
1587
|
-
MCP tool: `
|
|
1632
|
+
MCP tool: `vm_storage_list`.
|
|
1588
1633
|
|
|
1589
|
-
|
|
1634
|
+
### `ghostdock vm tool`
|
|
1590
1635
|
|
|
1591
|
-
|
|
1636
|
+
Tools of the MCP servers inside a VM.
|
|
1592
1637
|
|
|
1593
|
-
### `ghostdock
|
|
1638
|
+
### `ghostdock vm tool call`
|
|
1594
1639
|
|
|
1595
|
-
|
|
1640
|
+
Call a tool on an MCP server inside a VM. Wakes a stopped VM when the endpoint has autoWake.
|
|
1596
1641
|
|
|
1597
1642
|
```
|
|
1598
|
-
ghostdock
|
|
1643
|
+
ghostdock vm tool call <name> --vm <string> --arguments <object> [flags]
|
|
1599
1644
|
```
|
|
1600
1645
|
|
|
1601
1646
|
| Argument | Description |
|
|
1602
1647
|
| --- | --- |
|
|
1603
|
-
| `<
|
|
1648
|
+
| `<name>` | Tool name, from vm tool list. Required. |
|
|
1649
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1650
|
+
| `--vm <string>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1651
|
+
| `--arguments <object>` | Tool arguments as a JSON object. (JSON object) Required. |
|
|
1652
|
+
| `--mcp-name <string>` | MCP endpoint to call. Needed when several endpoints expose the same tool name. |
|
|
1604
1653
|
|
|
1605
|
-
MCP tool: `
|
|
1654
|
+
MCP tool: `vm_tool_call`.
|
|
1606
1655
|
|
|
1607
|
-
### `ghostdock
|
|
1656
|
+
### `ghostdock vm tool list`
|
|
1608
1657
|
|
|
1609
|
-
List the
|
|
1658
|
+
List the tools of the MCP servers a VM exposes. A server that cannot be reached is reported in errors; the others are still listed.
|
|
1610
1659
|
|
|
1611
1660
|
```
|
|
1612
|
-
ghostdock
|
|
1661
|
+
ghostdock vm tool list <vm> [flags]
|
|
1613
1662
|
```
|
|
1614
1663
|
|
|
1615
|
-
|
|
1664
|
+
| Argument | Description |
|
|
1665
|
+
| --- | --- |
|
|
1666
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1667
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1668
|
+
| `--mcp-name <string>` | Only list the tools of this MCP endpoint. |
|
|
1669
|
+
|
|
1670
|
+
MCP tool: `vm_tool_list`.
|
|
1671
|
+
|
|
1672
|
+
### `ghostdock vm up`
|
|
1616
1673
|
|
|
1617
|
-
|
|
1674
|
+
Create a VM from a template by its name: `ghostdock vm up nginx`. The organization’s template of that name, else the platform’s (template list); platform true takes the platform’s. The same as vm create with source { type: "template", name }: the template's source and defaults, under the fields given here. Returns like vm create, with the template it used.
|
|
1675
|
+
|
|
1676
|
+
```
|
|
1677
|
+
ghostdock vm up <template> [flags]
|
|
1678
|
+
```
|
|
1679
|
+
|
|
1680
|
+
| Argument | Description |
|
|
1681
|
+
| --- | --- |
|
|
1682
|
+
| `<template>` | Template name from template list, e.g. headless. Required. |
|
|
1683
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1684
|
+
| `--platform` | Take the platform’s template of this name even when the organization has its own (shadows). |
|
|
1685
|
+
| `--display-name <string>` | Display name for the VM. Optional. |
|
|
1686
|
+
| `--resources <object>` | Compute sizing. For image/dockerfile/compose: layered on platform defaults when omitted. For snapshot: optional override applied via resize after create. (JSON object) |
|
|
1687
|
+
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the VM. -1 means always on. 0 is rejected. Omit for the platform default. Provider-native timers are optional backup. |
|
|
1688
|
+
| `--lifecycle <string>` | What may make the VM disappear on its own. ephemeral: every stop wipes the VM and its disk, and the next start runs its Compose project again (edits in the project folder kept, everything else gone; locks too). auto_delete (default): a stop keeps the disk, and the record goes autoDeleteAfterDays after the stop. keep: never removed automatically. Omit for the image label ghostdock.ephemeral, else auto_delete. ephemeral is chosen here only. |
|
|
1689
|
+
| `--auto-delete-after-days <integer>` | Days the VM stays stopped before the platform worker deletes the record (0–365; 0 deletes it when it stops). Omit for the platform default (14). Not with keep. A container a person locked holds it. |
|
|
1690
|
+
| `--provider <string>` | Provider id from provider list (not the provider kind). Omit to use the organization default (the org choice, else the platform default); if that provider lacks a capability this create needs, the first listed provider that accepts new VMs and has it is used. When no provider fits, the call fails with a not-configured error. |
|
|
1691
|
+
| `--environment <object>` | Environment to give this VM. organization: names of organization entries (from env list) to export under their own names. bindings: remap org entries onto slot names ({ name: slot, organization: orgEntryName }). local: VM-only variables/secrets to create with the VM (kind required for each). Both land as ordinary process environment variables ($NAME / process.env.NAME); a local entry overrides an organization entry of the same name. When booting from an organization snapshot, omit organization/bindings/local to keep manifest env defaults, but still supply every name in requiredEnvironment (via organization, bindings, or local). Otherwise a VM gets nothing unless listed here. (JSON object) |
|
|
1692
|
+
| `--urls <array>` | Changes to the template’s and its image’s URLs, keyed by port, as in vm create: the same port replaces, { port, remove: true } drops. (JSON array) |
|
|
1618
1693
|
|
|
1619
|
-
|
|
1694
|
+
MCP tool: `vm_up`.
|
|
1620
1695
|
|
|
1621
|
-
### `ghostdock
|
|
1696
|
+
### `ghostdock vm update`
|
|
1622
1697
|
|
|
1623
|
-
|
|
1698
|
+
Change a VM’s display name, idle-stop interval or lifecycle. Omit a field to keep it; null resets it to the platform default. Ephemeral is chosen at create only.
|
|
1624
1699
|
|
|
1625
1700
|
```
|
|
1626
|
-
ghostdock
|
|
1701
|
+
ghostdock vm update <vm> [flags]
|
|
1627
1702
|
```
|
|
1628
1703
|
|
|
1629
1704
|
| Argument | Description |
|
|
1630
1705
|
| --- | --- |
|
|
1631
|
-
| `<
|
|
1632
|
-
| `--org <string>` | Organization id or slug, from
|
|
1633
|
-
| `--name <string>` |
|
|
1634
|
-
| `--stop-
|
|
1635
|
-
| `--
|
|
1636
|
-
| `--
|
|
1706
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1707
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1708
|
+
| `--display-name <string>` | New display name. Null clears it; omit to keep it. |
|
|
1709
|
+
| `--auto-stop-interval-minutes <number>` | Minutes of inactivity before the platform worker idle-stops the VM. -1 always on. 0 is rejected. Null resets to the platform default. Provider-native timers are optional backup. |
|
|
1710
|
+
| `--lifecycle <string>` | auto_delete: the record goes autoDeleteAfterDays after the VM stops. keep: never removed automatically. |
|
|
1711
|
+
| `--auto-delete-after-days <integer>` | Days stopped before the record is deleted (0–365; 0 deletes it when it stops). Null writes the platform default. Not with keep. |
|
|
1637
1712
|
|
|
1638
|
-
MCP tool: `
|
|
1713
|
+
MCP tool: `vm_update`.
|
|
1639
1714
|
|
|
1640
|
-
### `ghostdock
|
|
1715
|
+
### `ghostdock vm url`
|
|
1641
1716
|
|
|
1642
|
-
|
|
1717
|
+
URLs that expose VM ports.
|
|
1718
|
+
|
|
1719
|
+
### `ghostdock vm url create`
|
|
1720
|
+
|
|
1721
|
+
Expose a VM port as a URL. Idempotent by port: when the VM already has a URL on that port, it is returned unchanged (autoWake, public and title are not applied); use vm url update to change it. HTTP defaults to private with no wake-on-visit; TCP URLs use TLS (not HTTP) and are always public — for a private port use vm ssh get and an SSH forward. Read the vm skill (`ghostdock skill get vm`) for TCP clients.
|
|
1643
1722
|
|
|
1644
1723
|
```
|
|
1645
|
-
ghostdock
|
|
1724
|
+
ghostdock vm url create <vm> --port <integer> [flags]
|
|
1646
1725
|
```
|
|
1647
1726
|
|
|
1648
1727
|
| Argument | Description |
|
|
1649
1728
|
| --- | --- |
|
|
1650
|
-
| `<
|
|
1651
|
-
| `--org <string>` | Organization id or slug, from
|
|
1729
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1730
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1731
|
+
| `--port <integer>` | Port inside the VM to expose. Required. |
|
|
1732
|
+
| `--protocol <string>` | "http" (default) or "tcp". TCP URLs use TLS and are always public. |
|
|
1733
|
+
| `--auto-wake` | Start the VM when the URL is visited while it is stopped. Default false. |
|
|
1734
|
+
| `--public` | Reachable without signing in. Default false; TCP URLs are always public. |
|
|
1735
|
+
| `--title <string>` | Name shown for the URL, up to 40 characters. A titled HTTP URL gets its own button on the VM card; TCP titles are shown in URL lists. Untitled HTTP URLs are listed under "Open URL". |
|
|
1652
1736
|
|
|
1653
|
-
MCP tool: `
|
|
1737
|
+
MCP tool: `vm_url_create`.
|
|
1654
1738
|
|
|
1655
|
-
### `ghostdock
|
|
1739
|
+
### `ghostdock vm url delete`
|
|
1656
1740
|
|
|
1657
|
-
|
|
1741
|
+
Delete a VM URL.
|
|
1658
1742
|
|
|
1659
1743
|
```
|
|
1660
|
-
ghostdock
|
|
1744
|
+
ghostdock vm url delete <url-id>
|
|
1661
1745
|
```
|
|
1662
1746
|
|
|
1663
1747
|
| Argument | Description |
|
|
1664
1748
|
| --- | --- |
|
|
1665
|
-
| `<
|
|
1666
|
-
| `--org <string>` | Organization id or slug, from organizations list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organizations use`. |
|
|
1749
|
+
| `<url-id>` | VM URL id, from vm url list or vm url create. Required. |
|
|
1667
1750
|
|
|
1668
|
-
MCP tool: `
|
|
1751
|
+
MCP tool: `vm_url_delete`.
|
|
1669
1752
|
|
|
1670
|
-
### `ghostdock
|
|
1753
|
+
### `ghostdock vm url list`
|
|
1671
1754
|
|
|
1672
|
-
List the
|
|
1755
|
+
List the URLs that expose a VM’s ports, with protocol, access and title. A titled URL (for example `Desktop`, the desktop image’s desktop in a browser) gets its own button in the app.
|
|
1673
1756
|
|
|
1674
1757
|
```
|
|
1675
|
-
ghostdock
|
|
1758
|
+
ghostdock vm url list <vm> [flags]
|
|
1676
1759
|
```
|
|
1677
1760
|
|
|
1678
1761
|
| Argument | Description |
|
|
1679
1762
|
| --- | --- |
|
|
1680
|
-
|
|
|
1763
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1764
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1681
1765
|
|
|
1682
|
-
MCP tool: `
|
|
1766
|
+
MCP tool: `vm_url_list`.
|
|
1683
1767
|
|
|
1684
|
-
### `ghostdock
|
|
1768
|
+
### `ghostdock vm url update`
|
|
1685
1769
|
|
|
1686
|
-
|
|
1770
|
+
Change a VM URL’s port, protocol, autoWake, public setting or title. TCP cannot be private.
|
|
1687
1771
|
|
|
1688
1772
|
```
|
|
1689
|
-
ghostdock
|
|
1773
|
+
ghostdock vm url update <url-id> [flags]
|
|
1690
1774
|
```
|
|
1691
1775
|
|
|
1692
1776
|
| Argument | Description |
|
|
1693
1777
|
| --- | --- |
|
|
1694
|
-
| `<
|
|
1695
|
-
| `--
|
|
1696
|
-
| `--
|
|
1778
|
+
| `<url-id>` | VM URL id, from vm url list or vm url create. Required. |
|
|
1779
|
+
| `--port <integer>` | New port inside the VM. Omit to keep it. |
|
|
1780
|
+
| `--protocol <string>` | "http" or "tcp". Omit to keep the current protocol. |
|
|
1781
|
+
| `--auto-wake` | Start the VM when the URL is visited while it is stopped. Omit to keep it. |
|
|
1782
|
+
| `--public` | Reachable without signing in. Omit to keep it; TCP cannot be made private. |
|
|
1783
|
+
| `--title <string>` | Name shown for the URL, up to 40 characters. A titled HTTP URL gets its own button on the VM card; TCP titles are shown in URL lists. Untitled HTTP URLs are listed under "Open URL". Omit to keep it; null removes it. |
|
|
1697
1784
|
|
|
1698
|
-
MCP tool: `
|
|
1785
|
+
MCP tool: `vm_url_update`.
|
|
1699
1786
|
|
|
1700
|
-
|
|
1787
|
+
### `ghostdock vm wake`
|
|
1701
1788
|
|
|
1702
|
-
|
|
1789
|
+
Start a stopped VM, or reset the idle-stop countdown of a running one. Returns status, idleStopsAt / deletesAt, and `boot` (VM and container start times in ms; null when it was already running).
|
|
1703
1790
|
|
|
1704
1791
|
```
|
|
1705
|
-
ghostdock
|
|
1792
|
+
ghostdock vm wake <vm> [flags]
|
|
1706
1793
|
```
|
|
1707
1794
|
|
|
1795
|
+
| Argument | Description |
|
|
1796
|
+
| --- | --- |
|
|
1797
|
+
| `<vm>` | VM name (e.g. quiet-harbor) or id, from vm list or vm create. Names are unique within the organization. Required. |
|
|
1798
|
+
| `--org <string>` | Organization id or slug, from organization list. Ids survive renames; slugs change when the organization is renamed. Defaults to GHOSTDOCK_ORG, then `organization use`. |
|
|
1799
|
+
|
|
1800
|
+
MCP tool: `vm_wake`.
|
|
1801
|
+
|
|
1708
1802
|
## `ghostdock whoami`
|
|
1709
1803
|
|
|
1710
1804
|
Show the account this CLI is currently authenticated as.
|