@apso/cli 0.8.6 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +221 -1653
  2. package/dist/commands/config.d.ts +13 -0
  3. package/dist/commands/config.js +114 -0
  4. package/dist/commands/deploy.d.ts +11 -0
  5. package/dist/commands/deploy.js +141 -0
  6. package/dist/commands/dev.d.ts +15 -0
  7. package/dist/commands/dev.js +95 -0
  8. package/dist/commands/generate.d.ts +12 -0
  9. package/dist/commands/generate.js +179 -0
  10. package/dist/commands/init.d.ts +16 -0
  11. package/dist/commands/init.js +313 -0
  12. package/dist/commands/link.d.ts +11 -0
  13. package/dist/commands/link.js +139 -0
  14. package/dist/commands/login.d.ts +22 -0
  15. package/dist/commands/login.js +345 -0
  16. package/dist/commands/logout.d.ts +9 -0
  17. package/dist/commands/logout.js +38 -0
  18. package/dist/commands/logs.d.ts +10 -0
  19. package/dist/commands/logs.js +64 -0
  20. package/dist/commands/mcp/serve.d.ts +11 -0
  21. package/dist/commands/mcp/serve.js +818 -0
  22. package/dist/commands/migrate.d.ts +11 -0
  23. package/dist/commands/migrate.js +137 -0
  24. package/dist/commands/open.d.ts +10 -0
  25. package/dist/commands/open.js +79 -0
  26. package/dist/commands/projects.d.ts +10 -0
  27. package/dist/commands/projects.js +106 -0
  28. package/dist/commands/schema/diff.d.ts +7 -0
  29. package/dist/commands/schema/diff.js +63 -0
  30. package/dist/commands/schema/pull.d.ts +9 -0
  31. package/dist/commands/schema/pull.js +81 -0
  32. package/dist/commands/schema/push.d.ts +9 -0
  33. package/dist/commands/schema/push.js +97 -0
  34. package/dist/commands/schema/validate.d.ts +9 -0
  35. package/dist/commands/schema/validate.js +90 -0
  36. package/dist/commands/server/new.d.ts +2 -19
  37. package/dist/commands/server/new.js +6 -192
  38. package/dist/commands/server/scaffold.d.ts +2 -25
  39. package/dist/commands/server/scaffold.js +6 -312
  40. package/dist/commands/status.d.ts +7 -0
  41. package/dist/commands/status.js +53 -0
  42. package/dist/commands/unlink.d.ts +9 -0
  43. package/dist/commands/unlink.js +47 -0
  44. package/dist/commands/whoami.d.ts +10 -0
  45. package/dist/commands/whoami.js +97 -0
  46. package/dist/lib/api/client.js +1 -1
  47. package/dist/lib/api/services.js +3 -3
  48. package/dist/lib/api/types.d.ts +9 -2
  49. package/dist/lib/apsorc-parser.d.ts +0 -19
  50. package/dist/lib/apsorc-parser.js +2 -73
  51. package/dist/lib/guards.d.ts +3 -20
  52. package/dist/lib/guards.js +1 -113
  53. package/dist/lib/index.d.ts +1 -9
  54. package/dist/lib/index.js +1 -18
  55. package/dist/lib/migrate/entity-generator.d.ts +14 -0
  56. package/dist/lib/migrate/entity-generator.js +7 -0
  57. package/dist/lib/migrate/sandbox.d.ts +42 -0
  58. package/dist/lib/migrate/sandbox.js +337 -0
  59. package/dist/lib/migrate/snapshot.d.ts +80 -0
  60. package/dist/lib/migrate/snapshot.js +100 -0
  61. package/dist/lib/templates/python/models/model-col-datetime.eta +1 -1
  62. package/dist/lib/templates/python/models/model-col-string.eta +1 -1
  63. package/dist/lib/templates/python/models/model-col-text.eta +1 -1
  64. package/dist/lib/templates/python/models/model-col-varchar.eta +1 -1
  65. package/dist/lib/utils/field.d.ts +12 -0
  66. package/dist/lib/utils/field.js +80 -1
  67. package/dist/lib/utils/schema-convert.d.ts +71 -0
  68. package/dist/lib/utils/schema-convert.js +169 -0
  69. package/dist/lib/utils/spinner.d.ts +19 -0
  70. package/dist/lib/utils/spinner.js +87 -0
  71. package/dist/lib/utils/template.d.ts +12 -0
  72. package/dist/lib/utils/template.js +49 -0
  73. package/npm-shrinkwrap.json +18118 -0
  74. package/oclif.manifest.json +547 -41
  75. package/package.json +26 -5
  76. package/dist/lib/controller.d.ts +0 -10
  77. package/dist/lib/controller.js +0 -99
  78. package/dist/lib/dto.d.ts +0 -16
  79. package/dist/lib/dto.js +0 -92
  80. package/dist/lib/entity.d.ts +0 -19
  81. package/dist/lib/entity.js +0 -56
  82. package/dist/lib/enums.d.ts +0 -6
  83. package/dist/lib/enums.js +0 -28
  84. package/dist/lib/gql-dto.d.ts +0 -3
  85. package/dist/lib/gql-dto.js +0 -39
  86. package/dist/lib/index-module.d.ts +0 -13
  87. package/dist/lib/index-module.js +0 -26
  88. package/dist/lib/module.d.ts +0 -13
  89. package/dist/lib/module.js +0 -42
  90. package/dist/lib/service.d.ts +0 -2
  91. package/dist/lib/service.js +0 -61
@@ -1,67 +1,242 @@
1
1
  {
2
- "version": "0.8.6",
2
+ "version": "0.10.1",
3
3
  "commands": {
4
- "server:new": {
5
- "id": "server:new",
6
- "description": "Initialize your server project",
4
+ "config": {
5
+ "id": "config",
6
+ "description": "View or modify CLI configuration",
7
+ "strict": false,
8
+ "pluginName": "@apso/cli",
9
+ "pluginAlias": "@apso/cli",
10
+ "pluginType": "core",
11
+ "aliases": [],
12
+ "examples": [
13
+ "$ apso config",
14
+ "$ apso config get apiUrl",
15
+ "$ apso config set verbose true",
16
+ "$ apso config reset"
17
+ ],
18
+ "flags": {},
19
+ "args": {
20
+ "action": {
21
+ "name": "action",
22
+ "description": "Action: get, set, or reset",
23
+ "required": false
24
+ },
25
+ "key": {
26
+ "name": "key",
27
+ "description": "Configuration key",
28
+ "required": false
29
+ },
30
+ "value": {
31
+ "name": "value",
32
+ "description": "Value to set",
33
+ "required": false
34
+ }
35
+ }
36
+ },
37
+ "deploy": {
38
+ "id": "deploy",
39
+ "description": "Deploy the linked service",
40
+ "strict": true,
41
+ "pluginName": "@apso/cli",
42
+ "pluginAlias": "@apso/cli",
43
+ "pluginType": "core",
44
+ "aliases": [],
45
+ "examples": [
46
+ "$ apso deploy",
47
+ "$ apso deploy --yes",
48
+ "$ apso deploy --skip-migrate",
49
+ "$ apso deploy --no-wait"
50
+ ],
51
+ "flags": {
52
+ "no-wait": {
53
+ "name": "no-wait",
54
+ "type": "boolean",
55
+ "description": "Trigger deploy without waiting for completion",
56
+ "allowNo": false
57
+ },
58
+ "yes": {
59
+ "name": "yes",
60
+ "type": "boolean",
61
+ "char": "y",
62
+ "description": "Skip confirmation prompt",
63
+ "allowNo": false
64
+ },
65
+ "skip-migrate": {
66
+ "name": "skip-migrate",
67
+ "type": "boolean",
68
+ "description": "Skip local migration validation",
69
+ "allowNo": false
70
+ }
71
+ },
72
+ "args": {}
73
+ },
74
+ "dev": {
75
+ "id": "dev",
76
+ "description": "Start the local development server using Docker Compose",
77
+ "strict": true,
78
+ "pluginName": "@apso/cli",
79
+ "pluginAlias": "@apso/cli",
80
+ "pluginType": "core",
81
+ "aliases": [],
82
+ "examples": [
83
+ "$ apso dev",
84
+ "$ apso dev --build",
85
+ "$ apso dev --detach",
86
+ "$ apso dev --build --detach"
87
+ ],
88
+ "flags": {
89
+ "detach": {
90
+ "name": "detach",
91
+ "type": "boolean",
92
+ "char": "d",
93
+ "description": "Run containers in the background",
94
+ "allowNo": false
95
+ },
96
+ "build": {
97
+ "name": "build",
98
+ "type": "boolean",
99
+ "description": "Rebuild images before starting",
100
+ "allowNo": false
101
+ }
102
+ },
103
+ "args": {}
104
+ },
105
+ "generate": {
106
+ "id": "generate",
107
+ "description": "Generate code from .apsorc schema",
108
+ "strict": true,
109
+ "pluginName": "@apso/cli",
110
+ "pluginAlias": "@apso/cli",
111
+ "pluginType": "core",
112
+ "aliases": [],
113
+ "examples": [
114
+ "$ apso generate",
115
+ "$ apso generate --skip-format",
116
+ "$ apso generate --language typescript",
117
+ "$ apso generate --language python",
118
+ "$ apso generate --language go"
119
+ ],
120
+ "flags": {
121
+ "help": {
122
+ "name": "help",
123
+ "type": "boolean",
124
+ "char": "h",
125
+ "description": "Show CLI help.",
126
+ "allowNo": false
127
+ },
128
+ "skip-format": {
129
+ "name": "skip-format",
130
+ "type": "boolean",
131
+ "description": "Skip the formatting step (useful when prettier is not available)",
132
+ "allowNo": false
133
+ },
134
+ "language": {
135
+ "name": "language",
136
+ "type": "option",
137
+ "char": "l",
138
+ "description": "Target language for code generation (typescript, python, go). If not specified, uses .apsorc config or prompts.",
139
+ "multiple": false,
140
+ "options": [
141
+ "typescript",
142
+ "python",
143
+ "go"
144
+ ]
145
+ }
146
+ },
147
+ "args": {}
148
+ },
149
+ "init": {
150
+ "id": "init",
151
+ "description": "Create a new Apso project or clone an existing one",
7
152
  "strict": true,
8
153
  "pluginName": "@apso/cli",
9
154
  "pluginAlias": "@apso/cli",
10
155
  "pluginType": "core",
11
156
  "aliases": [],
12
157
  "examples": [
13
- "$ apso server new --name TestProject",
14
- "$ apso server new --name TestProject --language python",
15
- "$ apso server new --name TestProject --language go"
158
+ "$ apso init",
159
+ "$ apso init --name my-app --language typescript",
160
+ "$ apso init --name my-app --language python --skip-platform"
16
161
  ],
17
162
  "flags": {
18
163
  "name": {
19
164
  "name": "name",
20
165
  "type": "option",
21
166
  "char": "n",
22
- "description": "name of application",
23
- "multiple": false
24
- },
25
- "type": {
26
- "name": "type",
27
- "type": "option",
28
- "char": "t",
29
- "description": "api type (rest or graphql)",
167
+ "description": "Project name",
30
168
  "multiple": false
31
169
  },
32
170
  "language": {
33
171
  "name": "language",
34
172
  "type": "option",
35
173
  "char": "l",
36
- "description": "target language (typescript, python, go)",
174
+ "description": "Target language (typescript, python, go)",
37
175
  "multiple": false,
38
176
  "options": [
39
177
  "typescript",
40
178
  "python",
41
179
  "go"
42
180
  ]
181
+ },
182
+ "skip-platform": {
183
+ "name": "skip-platform",
184
+ "type": "boolean",
185
+ "description": "Skip platform linking (offline mode)",
186
+ "allowNo": false
43
187
  }
44
188
  },
45
- "args": {
46
- "name": {
47
- "name": "name"
189
+ "args": {}
190
+ },
191
+ "link": {
192
+ "id": "link",
193
+ "description": "Link this project to a platform service",
194
+ "strict": true,
195
+ "pluginName": "@apso/cli",
196
+ "pluginAlias": "@apso/cli",
197
+ "pluginType": "core",
198
+ "aliases": [],
199
+ "examples": [
200
+ "$ apso link",
201
+ "$ apso link --workspace my-team --service my-api",
202
+ "$ apso link --force"
203
+ ],
204
+ "flags": {
205
+ "workspace": {
206
+ "name": "workspace",
207
+ "type": "option",
208
+ "char": "w",
209
+ "description": "Workspace slug",
210
+ "multiple": false
211
+ },
212
+ "service": {
213
+ "name": "service",
214
+ "type": "option",
215
+ "char": "s",
216
+ "description": "Service slug",
217
+ "multiple": false
218
+ },
219
+ "force": {
220
+ "name": "force",
221
+ "type": "boolean",
222
+ "char": "f",
223
+ "description": "Overwrite existing link without confirmation",
224
+ "allowNo": false
48
225
  }
49
- }
226
+ },
227
+ "args": {}
50
228
  },
51
- "server:scaffold": {
52
- "id": "server:scaffold",
53
- "description": "Setup new entities and interfaces for an Apso Server",
229
+ "login": {
230
+ "id": "login",
231
+ "description": "Authenticate with the Apso platform",
54
232
  "strict": true,
55
233
  "pluginName": "@apso/cli",
56
234
  "pluginAlias": "@apso/cli",
57
235
  "pluginType": "core",
58
236
  "aliases": [],
59
237
  "examples": [
60
- "$ apso server scaffold",
61
- "$ apso server scaffold --skip-format",
62
- "$ apso server scaffold --language typescript",
63
- "$ apso server scaffold --language python",
64
- "$ apso server scaffold --language go"
238
+ "$ apso login",
239
+ "$ apso login --token <api-token>"
65
240
  ],
66
241
  "flags": {
67
242
  "help": {
@@ -71,26 +246,357 @@
71
246
  "description": "Show CLI help.",
72
247
  "allowNo": false
73
248
  },
74
- "skip-format": {
75
- "name": "skip-format",
249
+ "token": {
250
+ "name": "token",
251
+ "type": "option",
252
+ "char": "t",
253
+ "description": "Use an API token directly (for CI/CD)",
254
+ "multiple": false
255
+ }
256
+ },
257
+ "args": {}
258
+ },
259
+ "logout": {
260
+ "id": "logout",
261
+ "description": "Log out from the Apso platform",
262
+ "strict": true,
263
+ "pluginName": "@apso/cli",
264
+ "pluginAlias": "@apso/cli",
265
+ "pluginType": "core",
266
+ "aliases": [],
267
+ "examples": [
268
+ "$ apso logout"
269
+ ],
270
+ "flags": {
271
+ "help": {
272
+ "name": "help",
76
273
  "type": "boolean",
77
- "description": "Skip the formatting step (useful when prettier is not available)",
274
+ "char": "h",
275
+ "description": "Show CLI help.",
276
+ "allowNo": false
277
+ }
278
+ },
279
+ "args": {}
280
+ },
281
+ "logs": {
282
+ "id": "logs",
283
+ "description": "View build logs for the linked service",
284
+ "strict": true,
285
+ "pluginName": "@apso/cli",
286
+ "pluginAlias": "@apso/cli",
287
+ "pluginType": "core",
288
+ "aliases": [],
289
+ "examples": [
290
+ "$ apso logs",
291
+ "$ apso logs <build-id>"
292
+ ],
293
+ "flags": {},
294
+ "args": {
295
+ "buildId": {
296
+ "name": "buildId",
297
+ "description": "Specific build ID (defaults to latest)",
298
+ "required": false
299
+ }
300
+ }
301
+ },
302
+ "migrate": {
303
+ "id": "migrate",
304
+ "description": "Detect schema changes, generate migration SQL, and test against a local PGlite sandbox",
305
+ "strict": true,
306
+ "pluginName": "@apso/cli",
307
+ "pluginAlias": "@apso/cli",
308
+ "pluginType": "core",
309
+ "aliases": [],
310
+ "examples": [
311
+ "$ apso migrate",
312
+ "$ apso migrate --apply",
313
+ "$ apso migrate --reset",
314
+ "$ apso migrate --sql"
315
+ ],
316
+ "flags": {
317
+ "apply": {
318
+ "name": "apply",
319
+ "type": "boolean",
320
+ "description": "Apply the migration: update the local snapshot after a successful test",
78
321
  "allowNo": false
79
322
  },
80
- "language": {
81
- "name": "language",
323
+ "reset": {
324
+ "name": "reset",
325
+ "type": "boolean",
326
+ "description": "Reset the sandbox (clear snapshot and PGlite data)",
327
+ "allowNo": false
328
+ },
329
+ "sql": {
330
+ "name": "sql",
331
+ "type": "boolean",
332
+ "description": "Output raw SQL only (for piping to files)",
333
+ "allowNo": false
334
+ }
335
+ },
336
+ "args": {}
337
+ },
338
+ "open": {
339
+ "id": "open",
340
+ "description": "Open the service dashboard or endpoint in browser",
341
+ "strict": true,
342
+ "pluginName": "@apso/cli",
343
+ "pluginAlias": "@apso/cli",
344
+ "pluginType": "core",
345
+ "aliases": [],
346
+ "examples": [
347
+ "$ apso open",
348
+ "$ apso open --endpoint",
349
+ "$ apso open --dashboard"
350
+ ],
351
+ "flags": {
352
+ "endpoint": {
353
+ "name": "endpoint",
354
+ "type": "boolean",
355
+ "char": "e",
356
+ "description": "Open the service API endpoint",
357
+ "allowNo": false
358
+ },
359
+ "dashboard": {
360
+ "name": "dashboard",
361
+ "type": "boolean",
362
+ "char": "d",
363
+ "description": "Open the service dashboard (default)",
364
+ "allowNo": false
365
+ }
366
+ },
367
+ "args": {}
368
+ },
369
+ "projects": {
370
+ "id": "projects",
371
+ "description": "List projects (services) in a workspace",
372
+ "strict": true,
373
+ "pluginName": "@apso/cli",
374
+ "pluginAlias": "@apso/cli",
375
+ "pluginType": "core",
376
+ "aliases": [],
377
+ "examples": [
378
+ "$ apso projects",
379
+ "$ apso projects --workspace my-team",
380
+ "$ apso projects --json"
381
+ ],
382
+ "flags": {
383
+ "workspace": {
384
+ "name": "workspace",
82
385
  "type": "option",
83
- "char": "l",
84
- "description": "Target language for code generation (typescript, python, go). If not specified, uses .apsorc config or prompts.",
85
- "multiple": false,
86
- "options": [
87
- "typescript",
88
- "python",
89
- "go"
90
- ]
386
+ "char": "w",
387
+ "description": "Workspace slug",
388
+ "multiple": false
389
+ },
390
+ "json": {
391
+ "name": "json",
392
+ "type": "boolean",
393
+ "description": "Output as JSON",
394
+ "allowNo": false
91
395
  }
92
396
  },
93
397
  "args": {}
398
+ },
399
+ "status": {
400
+ "id": "status",
401
+ "description": "Show the current service and latest build status",
402
+ "strict": true,
403
+ "pluginName": "@apso/cli",
404
+ "pluginAlias": "@apso/cli",
405
+ "pluginType": "core",
406
+ "aliases": [],
407
+ "examples": [
408
+ "$ apso status"
409
+ ],
410
+ "flags": {},
411
+ "args": {}
412
+ },
413
+ "unlink": {
414
+ "id": "unlink",
415
+ "description": "Remove the link between this project and the platform",
416
+ "strict": true,
417
+ "pluginName": "@apso/cli",
418
+ "pluginAlias": "@apso/cli",
419
+ "pluginType": "core",
420
+ "aliases": [],
421
+ "examples": [
422
+ "$ apso unlink",
423
+ "$ apso unlink --yes"
424
+ ],
425
+ "flags": {
426
+ "yes": {
427
+ "name": "yes",
428
+ "type": "boolean",
429
+ "char": "y",
430
+ "description": "Skip confirmation prompt",
431
+ "allowNo": false
432
+ }
433
+ },
434
+ "args": {}
435
+ },
436
+ "whoami": {
437
+ "id": "whoami",
438
+ "description": "Display information about the current user and context",
439
+ "strict": true,
440
+ "pluginName": "@apso/cli",
441
+ "pluginAlias": "@apso/cli",
442
+ "pluginType": "core",
443
+ "aliases": [],
444
+ "examples": [
445
+ "$ apso whoami",
446
+ "$ apso whoami --json"
447
+ ],
448
+ "flags": {
449
+ "help": {
450
+ "name": "help",
451
+ "type": "boolean",
452
+ "char": "h",
453
+ "description": "Show CLI help.",
454
+ "allowNo": false
455
+ },
456
+ "json": {
457
+ "name": "json",
458
+ "type": "boolean",
459
+ "description": "Output as JSON",
460
+ "allowNo": false
461
+ }
462
+ },
463
+ "args": {}
464
+ },
465
+ "mcp:serve": {
466
+ "id": "mcp:serve",
467
+ "description": "Start an MCP server exposing Apso tools over stdio. Used by AI coding agents (Claude Code, Cursor, etc.) to design schemas, generate APIs, and deploy backends.",
468
+ "strict": true,
469
+ "pluginName": "@apso/cli",
470
+ "pluginAlias": "@apso/cli",
471
+ "pluginType": "core",
472
+ "aliases": [],
473
+ "examples": [
474
+ "$ apso mcp serve",
475
+ "# In Claude Code settings:",
476
+ "# { \"mcpServers\": { \"api-tools\": { \"command\": \"apso\", \"args\": [\"mcp\", \"serve\"] } } }"
477
+ ],
478
+ "flags": {
479
+ "help": {
480
+ "name": "help",
481
+ "type": "boolean",
482
+ "char": "h",
483
+ "description": "Show CLI help.",
484
+ "allowNo": false
485
+ }
486
+ },
487
+ "args": {}
488
+ },
489
+ "schema:diff": {
490
+ "id": "schema:diff",
491
+ "description": "Show diff between local and remote schema",
492
+ "strict": true,
493
+ "pluginName": "@apso/cli",
494
+ "pluginAlias": "@apso/cli",
495
+ "pluginType": "core",
496
+ "aliases": [],
497
+ "examples": [
498
+ "$ apso schema diff"
499
+ ],
500
+ "flags": {},
501
+ "args": {}
502
+ },
503
+ "schema:pull": {
504
+ "id": "schema:pull",
505
+ "description": "Pull remote schema to local .apsorc",
506
+ "strict": true,
507
+ "pluginName": "@apso/cli",
508
+ "pluginAlias": "@apso/cli",
509
+ "pluginType": "core",
510
+ "aliases": [],
511
+ "examples": [
512
+ "$ apso schema pull",
513
+ "$ apso schema pull --yes"
514
+ ],
515
+ "flags": {
516
+ "yes": {
517
+ "name": "yes",
518
+ "type": "boolean",
519
+ "char": "y",
520
+ "description": "Skip confirmation prompt",
521
+ "allowNo": false
522
+ }
523
+ },
524
+ "args": {}
525
+ },
526
+ "schema:push": {
527
+ "id": "schema:push",
528
+ "description": "Push local schema to the platform",
529
+ "strict": true,
530
+ "pluginName": "@apso/cli",
531
+ "pluginAlias": "@apso/cli",
532
+ "pluginType": "core",
533
+ "aliases": [],
534
+ "examples": [
535
+ "$ apso schema push",
536
+ "$ apso schema push --yes"
537
+ ],
538
+ "flags": {
539
+ "yes": {
540
+ "name": "yes",
541
+ "type": "boolean",
542
+ "char": "y",
543
+ "description": "Skip confirmation prompt",
544
+ "allowNo": false
545
+ }
546
+ },
547
+ "args": {}
548
+ },
549
+ "schema:validate": {
550
+ "id": "schema:validate",
551
+ "description": "Validate the local .apsorc schema",
552
+ "strict": true,
553
+ "pluginName": "@apso/cli",
554
+ "pluginAlias": "@apso/cli",
555
+ "pluginType": "core",
556
+ "aliases": [],
557
+ "examples": [
558
+ "$ apso schema validate",
559
+ "$ apso schema validate --local"
560
+ ],
561
+ "flags": {
562
+ "local": {
563
+ "name": "local",
564
+ "type": "boolean",
565
+ "description": "Skip server validation even if linked",
566
+ "allowNo": false
567
+ }
568
+ },
569
+ "args": {}
570
+ },
571
+ "server:new": {
572
+ "id": "server:new",
573
+ "description": "[Deprecated] Use 'apso init' instead",
574
+ "strict": false,
575
+ "pluginName": "@apso/cli",
576
+ "pluginAlias": "@apso/cli",
577
+ "pluginType": "core",
578
+ "hidden": true,
579
+ "aliases": [],
580
+ "examples": [
581
+ "$ apso init"
582
+ ],
583
+ "flags": {},
584
+ "args": {}
585
+ },
586
+ "server:scaffold": {
587
+ "id": "server:scaffold",
588
+ "description": "[Deprecated] Use 'apso generate' instead",
589
+ "strict": false,
590
+ "pluginName": "@apso/cli",
591
+ "pluginAlias": "@apso/cli",
592
+ "pluginType": "core",
593
+ "hidden": true,
594
+ "aliases": [],
595
+ "examples": [
596
+ "$ apso generate"
597
+ ],
598
+ "flags": {},
599
+ "args": {}
94
600
  }
95
601
  }
96
602
  }