@miosa/cli 1.3.4 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -835
- package/bin/miosa.js +75 -0
- package/lib/archive.js +88 -0
- package/lib/checksums.js +29 -0
- package/lib/platforms.js +31 -0
- package/lib/resolve.js +47 -0
- package/package.json +26 -41
- package/scripts/postinstall.js +68 -0
- package/CHANGELOG.md +0 -110
- package/dist/action-authority.d.ts +0 -106
- package/dist/action-authority.d.ts.map +0 -1
- package/dist/action-authority.js +0 -116
- package/dist/action-authority.js.map +0 -1
- package/dist/app-advisor.d.ts +0 -80
- package/dist/app-advisor.d.ts.map +0 -1
- package/dist/app-advisor.js +0 -486
- package/dist/app-advisor.js.map +0 -1
- package/dist/app-contract.d.ts +0 -92
- package/dist/app-contract.d.ts.map +0 -1
- package/dist/app-contract.js +0 -218
- package/dist/app-contract.js.map +0 -1
- package/dist/app-document.d.ts +0 -23
- package/dist/app-document.d.ts.map +0 -1
- package/dist/app-document.js +0 -180
- package/dist/app-document.js.map +0 -1
- package/dist/app-manifest.d.ts +0 -140
- package/dist/app-manifest.d.ts.map +0 -1
- package/dist/app-manifest.js +0 -377
- package/dist/app-manifest.js.map +0 -1
- package/dist/app-operation.d.ts +0 -23
- package/dist/app-operation.d.ts.map +0 -1
- package/dist/app-operation.js +0 -49
- package/dist/app-operation.js.map +0 -1
- package/dist/app-release.d.ts +0 -132
- package/dist/app-release.d.ts.map +0 -1
- package/dist/app-release.js +0 -294
- package/dist/app-release.js.map +0 -1
- package/dist/bin/miosa.d.ts +0 -3
- package/dist/bin/miosa.d.ts.map +0 -1
- package/dist/bin/miosa.js +0 -288
- package/dist/bin/miosa.js.map +0 -1
- package/dist/cli-env.d.ts +0 -12
- package/dist/cli-env.d.ts.map +0 -1
- package/dist/cli-env.js +0 -34
- package/dist/cli-env.js.map +0 -1
- package/dist/client.d.ts +0 -155
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -865
- package/dist/client.js.map +0 -1
- package/dist/commands/actions.d.ts +0 -3
- package/dist/commands/actions.d.ts.map +0 -1
- package/dist/commands/actions.js +0 -222
- package/dist/commands/actions.js.map +0 -1
- package/dist/commands/agent-runtime-profiles.d.ts +0 -3
- package/dist/commands/agent-runtime-profiles.d.ts.map +0 -1
- package/dist/commands/agent-runtime-profiles.js +0 -198
- package/dist/commands/agent-runtime-profiles.js.map +0 -1
- package/dist/commands/agent.d.ts +0 -18
- package/dist/commands/agent.d.ts.map +0 -1
- package/dist/commands/agent.js +0 -737
- package/dist/commands/agent.js.map +0 -1
- package/dist/commands/alerts.d.ts +0 -3
- package/dist/commands/alerts.d.ts.map +0 -1
- package/dist/commands/alerts.js +0 -41
- package/dist/commands/alerts.js.map +0 -1
- package/dist/commands/api-keys.d.ts +0 -3
- package/dist/commands/api-keys.d.ts.map +0 -1
- package/dist/commands/api-keys.js +0 -160
- package/dist/commands/api-keys.js.map +0 -1
- package/dist/commands/api-resource.d.ts +0 -20
- package/dist/commands/api-resource.d.ts.map +0 -1
- package/dist/commands/api-resource.js +0 -120
- package/dist/commands/api-resource.js.map +0 -1
- package/dist/commands/app.d.ts +0 -38
- package/dist/commands/app.d.ts.map +0 -1
- package/dist/commands/app.js +0 -1182
- package/dist/commands/app.js.map +0 -1
- package/dist/commands/apps.d.ts +0 -3
- package/dist/commands/apps.d.ts.map +0 -1
- package/dist/commands/apps.js +0 -218
- package/dist/commands/apps.js.map +0 -1
- package/dist/commands/audit.d.ts +0 -3
- package/dist/commands/audit.d.ts.map +0 -1
- package/dist/commands/audit.js +0 -25
- package/dist/commands/audit.js.map +0 -1
- package/dist/commands/auth.d.ts +0 -3
- package/dist/commands/auth.d.ts.map +0 -1
- package/dist/commands/auth.js +0 -282
- package/dist/commands/auth.js.map +0 -1
- package/dist/commands/backups.d.ts +0 -3
- package/dist/commands/backups.d.ts.map +0 -1
- package/dist/commands/backups.js +0 -23
- package/dist/commands/backups.js.map +0 -1
- package/dist/commands/billing.d.ts +0 -3
- package/dist/commands/billing.d.ts.map +0 -1
- package/dist/commands/billing.js +0 -208
- package/dist/commands/billing.js.map +0 -1
- package/dist/commands/builds.d.ts +0 -3
- package/dist/commands/builds.d.ts.map +0 -1
- package/dist/commands/builds.js +0 -198
- package/dist/commands/builds.js.map +0 -1
- package/dist/commands/capabilities.d.ts +0 -3
- package/dist/commands/capabilities.d.ts.map +0 -1
- package/dist/commands/capabilities.js +0 -1002
- package/dist/commands/capabilities.js.map +0 -1
- package/dist/commands/checkpoints.d.ts +0 -3
- package/dist/commands/checkpoints.d.ts.map +0 -1
- package/dist/commands/checkpoints.js +0 -193
- package/dist/commands/checkpoints.js.map +0 -1
- package/dist/commands/cleanup.d.ts +0 -3
- package/dist/commands/cleanup.d.ts.map +0 -1
- package/dist/commands/cleanup.js +0 -65
- package/dist/commands/cleanup.js.map +0 -1
- package/dist/commands/cloud.d.ts +0 -3
- package/dist/commands/cloud.d.ts.map +0 -1
- package/dist/commands/cloud.js +0 -192
- package/dist/commands/cloud.js.map +0 -1
- package/dist/commands/command-overview.d.ts +0 -13
- package/dist/commands/command-overview.d.ts.map +0 -1
- package/dist/commands/command-overview.js +0 -50
- package/dist/commands/command-overview.js.map +0 -1
- package/dist/commands/completion.d.ts +0 -3
- package/dist/commands/completion.d.ts.map +0 -1
- package/dist/commands/completion.js +0 -183
- package/dist/commands/completion.js.map +0 -1
- package/dist/commands/computers.d.ts +0 -3
- package/dist/commands/computers.d.ts.map +0 -1
- package/dist/commands/computers.js +0 -706
- package/dist/commands/computers.js.map +0 -1
- package/dist/commands/config.d.ts +0 -3
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/config.js +0 -114
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/connect.d.ts +0 -6
- package/dist/commands/connect.d.ts.map +0 -1
- package/dist/commands/connect.js +0 -127
- package/dist/commands/connect.js.map +0 -1
- package/dist/commands/connectors.d.ts +0 -3
- package/dist/commands/connectors.d.ts.map +0 -1
- package/dist/commands/connectors.js +0 -172
- package/dist/commands/connectors.js.map +0 -1
- package/dist/commands/containers.d.ts +0 -3
- package/dist/commands/containers.d.ts.map +0 -1
- package/dist/commands/containers.js +0 -20
- package/dist/commands/containers.js.map +0 -1
- package/dist/commands/context.d.ts +0 -3
- package/dist/commands/context.d.ts.map +0 -1
- package/dist/commands/context.js +0 -233
- package/dist/commands/context.js.map +0 -1
- package/dist/commands/cp.d.ts +0 -3
- package/dist/commands/cp.d.ts.map +0 -1
- package/dist/commands/cp.js +0 -319
- package/dist/commands/cp.js.map +0 -1
- package/dist/commands/cron.d.ts +0 -3
- package/dist/commands/cron.d.ts.map +0 -1
- package/dist/commands/cron.js +0 -65
- package/dist/commands/cron.js.map +0 -1
- package/dist/commands/dashboard.d.ts +0 -13
- package/dist/commands/dashboard.d.ts.map +0 -1
- package/dist/commands/dashboard.js +0 -54
- package/dist/commands/dashboard.js.map +0 -1
- package/dist/commands/databases.d.ts +0 -3
- package/dist/commands/databases.d.ts.map +0 -1
- package/dist/commands/databases.js +0 -714
- package/dist/commands/databases.js.map +0 -1
- package/dist/commands/db.d.ts +0 -3
- package/dist/commands/db.d.ts.map +0 -1
- package/dist/commands/db.js +0 -385
- package/dist/commands/db.js.map +0 -1
- package/dist/commands/deploy.d.ts +0 -3
- package/dist/commands/deploy.d.ts.map +0 -1
- package/dist/commands/deploy.js +0 -1234
- package/dist/commands/deploy.js.map +0 -1
- package/dist/commands/desktop.d.ts +0 -3
- package/dist/commands/desktop.d.ts.map +0 -1
- package/dist/commands/desktop.js +0 -277
- package/dist/commands/desktop.js.map +0 -1
- package/dist/commands/dev.d.ts +0 -3
- package/dist/commands/dev.d.ts.map +0 -1
- package/dist/commands/dev.js +0 -245
- package/dist/commands/dev.js.map +0 -1
- package/dist/commands/devices.d.ts +0 -3
- package/dist/commands/devices.d.ts.map +0 -1
- package/dist/commands/devices.js +0 -279
- package/dist/commands/devices.js.map +0 -1
- package/dist/commands/docker-deploy.d.ts +0 -3
- package/dist/commands/docker-deploy.d.ts.map +0 -1
- package/dist/commands/docker-deploy.js +0 -659
- package/dist/commands/docker-deploy.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -69
- package/dist/commands/doctor.d.ts.map +0 -1
- package/dist/commands/doctor.js +0 -596
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/domains.d.ts +0 -3
- package/dist/commands/domains.d.ts.map +0 -1
- package/dist/commands/domains.js +0 -307
- package/dist/commands/domains.js.map +0 -1
- package/dist/commands/enterprise-util.d.ts +0 -39
- package/dist/commands/enterprise-util.d.ts.map +0 -1
- package/dist/commands/enterprise-util.js +0 -217
- package/dist/commands/enterprise-util.js.map +0 -1
- package/dist/commands/env-input.d.ts +0 -26
- package/dist/commands/env-input.d.ts.map +0 -1
- package/dist/commands/env-input.js +0 -68
- package/dist/commands/env-input.js.map +0 -1
- package/dist/commands/env.d.ts +0 -3
- package/dist/commands/env.d.ts.map +0 -1
- package/dist/commands/env.js +0 -189
- package/dist/commands/env.js.map +0 -1
- package/dist/commands/exec.d.ts +0 -3
- package/dist/commands/exec.d.ts.map +0 -1
- package/dist/commands/exec.js +0 -110
- package/dist/commands/exec.js.map +0 -1
- package/dist/commands/forge.d.ts +0 -3
- package/dist/commands/forge.d.ts.map +0 -1
- package/dist/commands/forge.js +0 -254
- package/dist/commands/forge.js.map +0 -1
- package/dist/commands/functions.d.ts +0 -3
- package/dist/commands/functions.d.ts.map +0 -1
- package/dist/commands/functions.js +0 -47
- package/dist/commands/functions.js.map +0 -1
- package/dist/commands/gha-runners.d.ts +0 -3
- package/dist/commands/gha-runners.d.ts.map +0 -1
- package/dist/commands/gha-runners.js +0 -33
- package/dist/commands/gha-runners.js.map +0 -1
- package/dist/commands/groups.d.ts +0 -3
- package/dist/commands/groups.d.ts.map +0 -1
- package/dist/commands/groups.js +0 -38
- package/dist/commands/groups.js.map +0 -1
- package/dist/commands/host.d.ts +0 -3
- package/dist/commands/host.d.ts.map +0 -1
- package/dist/commands/host.js +0 -74
- package/dist/commands/host.js.map +0 -1
- package/dist/commands/hosts.d.ts +0 -7
- package/dist/commands/hosts.d.ts.map +0 -1
- package/dist/commands/hosts.js +0 -91
- package/dist/commands/hosts.js.map +0 -1
- package/dist/commands/link.d.ts +0 -8
- package/dist/commands/link.d.ts.map +0 -1
- package/dist/commands/link.js +0 -124
- package/dist/commands/link.js.map +0 -1
- package/dist/commands/login.d.ts +0 -10
- package/dist/commands/login.d.ts.map +0 -1
- package/dist/commands/login.js +0 -263
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/logout.d.ts +0 -3
- package/dist/commands/logout.d.ts.map +0 -1
- package/dist/commands/logout.js +0 -43
- package/dist/commands/logout.js.map +0 -1
- package/dist/commands/logs.d.ts +0 -3
- package/dist/commands/logs.d.ts.map +0 -1
- package/dist/commands/logs.js +0 -401
- package/dist/commands/logs.js.map +0 -1
- package/dist/commands/ls.d.ts +0 -3
- package/dist/commands/ls.d.ts.map +0 -1
- package/dist/commands/ls.js +0 -121
- package/dist/commands/ls.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -46
- package/dist/commands/mcp.d.ts.map +0 -1
- package/dist/commands/mcp.js +0 -3413
- package/dist/commands/mcp.js.map +0 -1
- package/dist/commands/menu.d.ts +0 -29
- package/dist/commands/menu.d.ts.map +0 -1
- package/dist/commands/menu.js +0 -147
- package/dist/commands/menu.js.map +0 -1
- package/dist/commands/meshes.d.ts +0 -3
- package/dist/commands/meshes.d.ts.map +0 -1
- package/dist/commands/meshes.js +0 -27
- package/dist/commands/meshes.js.map +0 -1
- package/dist/commands/network-policy.d.ts +0 -3
- package/dist/commands/network-policy.d.ts.map +0 -1
- package/dist/commands/network-policy.js +0 -155
- package/dist/commands/network-policy.js.map +0 -1
- package/dist/commands/new.d.ts +0 -3
- package/dist/commands/new.d.ts.map +0 -1
- package/dist/commands/new.js +0 -296
- package/dist/commands/new.js.map +0 -1
- package/dist/commands/opencomputers.d.ts +0 -10
- package/dist/commands/opencomputers.d.ts.map +0 -1
- package/dist/commands/opencomputers.js +0 -25
- package/dist/commands/opencomputers.js.map +0 -1
- package/dist/commands/operating-contract.d.ts +0 -3
- package/dist/commands/operating-contract.d.ts.map +0 -1
- package/dist/commands/operating-contract.js +0 -651
- package/dist/commands/operating-contract.js.map +0 -1
- package/dist/commands/project.d.ts +0 -4
- package/dist/commands/project.d.ts.map +0 -1
- package/dist/commands/project.js +0 -25
- package/dist/commands/project.js.map +0 -1
- package/dist/commands/pull.d.ts +0 -14
- package/dist/commands/pull.d.ts.map +0 -1
- package/dist/commands/pull.js +0 -156
- package/dist/commands/pull.js.map +0 -1
- package/dist/commands/regions.d.ts +0 -3
- package/dist/commands/regions.d.ts.map +0 -1
- package/dist/commands/regions.js +0 -103
- package/dist/commands/regions.js.map +0 -1
- package/dist/commands/releases.d.ts +0 -3
- package/dist/commands/releases.d.ts.map +0 -1
- package/dist/commands/releases.js +0 -365
- package/dist/commands/releases.js.map +0 -1
- package/dist/commands/rm.d.ts +0 -3
- package/dist/commands/rm.d.ts.map +0 -1
- package/dist/commands/rm.js +0 -42
- package/dist/commands/rm.js.map +0 -1
- package/dist/commands/rollback.d.ts +0 -3
- package/dist/commands/rollback.d.ts.map +0 -1
- package/dist/commands/rollback.js +0 -62
- package/dist/commands/rollback.js.map +0 -1
- package/dist/commands/run-groups.d.ts +0 -3
- package/dist/commands/run-groups.d.ts.map +0 -1
- package/dist/commands/run-groups.js +0 -364
- package/dist/commands/run-groups.js.map +0 -1
- package/dist/commands/run.d.ts +0 -3
- package/dist/commands/run.d.ts.map +0 -1
- package/dist/commands/run.js +0 -130
- package/dist/commands/run.js.map +0 -1
- package/dist/commands/runs.d.ts +0 -3
- package/dist/commands/runs.d.ts.map +0 -1
- package/dist/commands/runs.js +0 -365
- package/dist/commands/runs.js.map +0 -1
- package/dist/commands/runtime-env.d.ts +0 -3
- package/dist/commands/runtime-env.d.ts.map +0 -1
- package/dist/commands/runtime-env.js +0 -114
- package/dist/commands/runtime-env.js.map +0 -1
- package/dist/commands/sandbox-delete-guard.d.ts +0 -4
- package/dist/commands/sandbox-delete-guard.d.ts.map +0 -1
- package/dist/commands/sandbox-delete-guard.js +0 -32
- package/dist/commands/sandbox-delete-guard.js.map +0 -1
- package/dist/commands/sandbox-dev.d.ts +0 -20
- package/dist/commands/sandbox-dev.d.ts.map +0 -1
- package/dist/commands/sandbox-dev.js +0 -583
- package/dist/commands/sandbox-dev.js.map +0 -1
- package/dist/commands/sandbox.d.ts +0 -36
- package/dist/commands/sandbox.d.ts.map +0 -1
- package/dist/commands/sandbox.js +0 -3796
- package/dist/commands/sandbox.js.map +0 -1
- package/dist/commands/scale.d.ts +0 -3
- package/dist/commands/scale.d.ts.map +0 -1
- package/dist/commands/scale.js +0 -61
- package/dist/commands/scale.js.map +0 -1
- package/dist/commands/schedules.d.ts +0 -3
- package/dist/commands/schedules.d.ts.map +0 -1
- package/dist/commands/schedules.js +0 -37
- package/dist/commands/schedules.js.map +0 -1
- package/dist/commands/secrets.d.ts +0 -3
- package/dist/commands/secrets.d.ts.map +0 -1
- package/dist/commands/secrets.js +0 -200
- package/dist/commands/secrets.js.map +0 -1
- package/dist/commands/services.d.ts +0 -3
- package/dist/commands/services.d.ts.map +0 -1
- package/dist/commands/services.js +0 -70
- package/dist/commands/services.js.map +0 -1
- package/dist/commands/shell.d.ts +0 -16
- package/dist/commands/shell.d.ts.map +0 -1
- package/dist/commands/shell.js +0 -555
- package/dist/commands/shell.js.map +0 -1
- package/dist/commands/snapshot.d.ts +0 -10
- package/dist/commands/snapshot.d.ts.map +0 -1
- package/dist/commands/snapshot.js +0 -181
- package/dist/commands/snapshot.js.map +0 -1
- package/dist/commands/ssh.d.ts +0 -3
- package/dist/commands/ssh.d.ts.map +0 -1
- package/dist/commands/ssh.js +0 -93
- package/dist/commands/ssh.js.map +0 -1
- package/dist/commands/status.d.ts +0 -3
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -302
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/storage.d.ts +0 -3
- package/dist/commands/storage.d.ts.map +0 -1
- package/dist/commands/storage.js +0 -456
- package/dist/commands/storage.js.map +0 -1
- package/dist/commands/teams.d.ts +0 -3
- package/dist/commands/teams.d.ts.map +0 -1
- package/dist/commands/teams.js +0 -169
- package/dist/commands/teams.js.map +0 -1
- package/dist/commands/templates.d.ts +0 -3
- package/dist/commands/templates.d.ts.map +0 -1
- package/dist/commands/templates.js +0 -690
- package/dist/commands/templates.js.map +0 -1
- package/dist/commands/tenant.d.ts +0 -3
- package/dist/commands/tenant.d.ts.map +0 -1
- package/dist/commands/tenant.js +0 -95
- package/dist/commands/tenant.js.map +0 -1
- package/dist/commands/tunnel.d.ts +0 -3
- package/dist/commands/tunnel.d.ts.map +0 -1
- package/dist/commands/tunnel.js +0 -418
- package/dist/commands/tunnel.js.map +0 -1
- package/dist/commands/up.d.ts +0 -14
- package/dist/commands/up.d.ts.map +0 -1
- package/dist/commands/up.js +0 -720
- package/dist/commands/up.js.map +0 -1
- package/dist/commands/update.d.ts +0 -3
- package/dist/commands/update.d.ts.map +0 -1
- package/dist/commands/update.js +0 -166
- package/dist/commands/update.js.map +0 -1
- package/dist/commands/util.d.ts +0 -25
- package/dist/commands/util.d.ts.map +0 -1
- package/dist/commands/util.js +0 -199
- package/dist/commands/util.js.map +0 -1
- package/dist/commands/volumes.d.ts +0 -3
- package/dist/commands/volumes.d.ts.map +0 -1
- package/dist/commands/volumes.js +0 -196
- package/dist/commands/volumes.js.map +0 -1
- package/dist/commands/watch.d.ts +0 -6
- package/dist/commands/watch.d.ts.map +0 -1
- package/dist/commands/watch.js +0 -414
- package/dist/commands/watch.js.map +0 -1
- package/dist/commands/webhooks.d.ts +0 -3
- package/dist/commands/webhooks.d.ts.map +0 -1
- package/dist/commands/webhooks.js +0 -23
- package/dist/commands/webhooks.js.map +0 -1
- package/dist/commands/whoami.d.ts +0 -3
- package/dist/commands/whoami.d.ts.map +0 -1
- package/dist/commands/whoami.js +0 -156
- package/dist/commands/whoami.js.map +0 -1
- package/dist/commands/workspaces.d.ts +0 -3
- package/dist/commands/workspaces.d.ts.map +0 -1
- package/dist/commands/workspaces.js +0 -147
- package/dist/commands/workspaces.js.map +0 -1
- package/dist/config.d.ts +0 -54
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -275
- package/dist/config.js.map +0 -1
- package/dist/errors.d.ts +0 -30
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -92
- package/dist/errors.js.map +0 -1
- package/dist/framework-detector.d.ts +0 -22
- package/dist/framework-detector.d.ts.map +0 -1
- package/dist/framework-detector.js +0 -373
- package/dist/framework-detector.js.map +0 -1
- package/dist/generated/action-capabilities.d.ts +0 -826
- package/dist/generated/action-capabilities.d.ts.map +0 -1
- package/dist/generated/action-capabilities.js +0 -1035
- package/dist/generated/action-capabilities.js.map +0 -1
- package/dist/net-diagnosis.d.ts +0 -87
- package/dist/net-diagnosis.d.ts.map +0 -1
- package/dist/net-diagnosis.js +0 -408
- package/dist/net-diagnosis.js.map +0 -1
- package/dist/pty/raw-mode.d.ts +0 -7
- package/dist/pty/raw-mode.d.ts.map +0 -1
- package/dist/pty/raw-mode.js +0 -22
- package/dist/pty/raw-mode.js.map +0 -1
- package/dist/pty/ws-pty-client.d.ts +0 -13
- package/dist/pty/ws-pty-client.d.ts.map +0 -1
- package/dist/pty/ws-pty-client.js +0 -73
- package/dist/pty/ws-pty-client.js.map +0 -1
- package/dist/tui/dashboard.d.ts +0 -35
- package/dist/tui/dashboard.d.ts.map +0 -1
- package/dist/tui/dashboard.js +0 -191
- package/dist/tui/dashboard.js.map +0 -1
- package/dist/tui/logs.d.ts +0 -26
- package/dist/tui/logs.d.ts.map +0 -1
- package/dist/tui/logs.js +0 -276
- package/dist/tui/logs.js.map +0 -1
- package/dist/types.d.ts +0 -362
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -16
- package/dist/types.js.map +0 -1
- package/dist/ui/picker.d.ts +0 -41
- package/dist/ui/picker.d.ts.map +0 -1
- package/dist/ui/picker.js +0 -77
- package/dist/ui/picker.js.map +0 -1
- package/dist/ui/progress.d.ts +0 -10
- package/dist/ui/progress.d.ts.map +0 -1
- package/dist/ui/progress.js +0 -36
- package/dist/ui/progress.js.map +0 -1
- package/dist/ui/render.d.ts +0 -91
- package/dist/ui/render.d.ts.map +0 -1
- package/dist/ui/render.js +0 -138
- package/dist/ui/render.js.map +0 -1
- package/dist/ui/spinner.d.ts +0 -4
- package/dist/ui/spinner.d.ts.map +0 -1
- package/dist/ui/spinner.js +0 -7
- package/dist/ui/spinner.js.map +0 -1
- package/dist/ui/table.d.ts +0 -8
- package/dist/ui/table.d.ts.map +0 -1
- package/dist/ui/table.js +0 -46
- package/dist/ui/table.js.map +0 -1
- package/dist/update-check.d.ts +0 -13
- package/dist/update-check.d.ts.map +0 -1
- package/dist/update-check.js +0 -94
- package/dist/update-check.js.map +0 -1
- package/dist/version.d.ts +0 -3
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -5
- package/dist/version.js.map +0 -1
|
@@ -1,1002 +0,0 @@
|
|
|
1
|
-
import chalk from "chalk";
|
|
2
|
-
import { MiosaClient } from "../client.js";
|
|
3
|
-
import { loadConfig } from "../config.js";
|
|
4
|
-
import { printJson } from "./util.js";
|
|
5
|
-
const manifest = {
|
|
6
|
-
schema_version: "2026-07-23",
|
|
7
|
-
cli: {
|
|
8
|
-
name: "miosa",
|
|
9
|
-
agent_entrypoint: "miosa capabilities --json",
|
|
10
|
-
default_machine_mode: "Set MIOSA_JSON=1 MIOSA_NO_COLOR=1 and pass --json to every command that supports it.",
|
|
11
|
-
global_flags: [
|
|
12
|
-
"--json",
|
|
13
|
-
"--debug",
|
|
14
|
-
"--quiet",
|
|
15
|
-
"--no-color",
|
|
16
|
-
"--tenant <tenant>",
|
|
17
|
-
"--organization <organization>",
|
|
18
|
-
"--workspace <workspace>",
|
|
19
|
-
],
|
|
20
|
-
global_env: [
|
|
21
|
-
"MIOSA_JSON=1",
|
|
22
|
-
"MIOSA_DEBUG=1",
|
|
23
|
-
"MIOSA_QUIET=1",
|
|
24
|
-
"MIOSA_NO_COLOR=1",
|
|
25
|
-
"MIOSA_TENANT=<tenant>",
|
|
26
|
-
"MIOSA_ORGANIZATION=<organization>",
|
|
27
|
-
"MIOSA_WORKSPACE=<workspace-id>",
|
|
28
|
-
"MIOSA_API_KEY=<msk_...>",
|
|
29
|
-
"MIOSA_ENDPOINT=<url>",
|
|
30
|
-
],
|
|
31
|
-
},
|
|
32
|
-
contract: {
|
|
33
|
-
json_output: "Prefer --json or MIOSA_JSON=1. Human spinners and tables are suppressed in agent-facing paths that support JSON.",
|
|
34
|
-
resource_inputs: "Resource create/update commands that use the generic request-body path accept --data '<json>', --input '<json-or-yaml>', or --file ./resource.yml.",
|
|
35
|
-
errors: {
|
|
36
|
-
shape: {
|
|
37
|
-
ok: false,
|
|
38
|
-
error: {
|
|
39
|
-
code: "STRING_CODE",
|
|
40
|
-
message: "Actionable human-readable message.",
|
|
41
|
-
retryable: false,
|
|
42
|
-
request_id: "req_optional",
|
|
43
|
-
hint: "optional recovery hint",
|
|
44
|
-
details: {},
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
guidance: [
|
|
48
|
-
"If code is AUTH or message mentions revoked/expired/invalid, run miosa login or install a fresh API key.",
|
|
49
|
-
"If retryable is true, back off and retry after the hinted interval if present.",
|
|
50
|
-
"If --debug is set, preserve request_id and details in issue reports.",
|
|
51
|
-
],
|
|
52
|
-
},
|
|
53
|
-
destructive_actions: [
|
|
54
|
-
"Use --dry-run before bulk cleanup.",
|
|
55
|
-
"Use --force or --yes only after the dry-run resource IDs match intent.",
|
|
56
|
-
"Deletes should be treated as idempotent, but agents should still record IDs before deleting.",
|
|
57
|
-
],
|
|
58
|
-
auth: [
|
|
59
|
-
"miosa whoami verifies live by default.",
|
|
60
|
-
"miosa whoami --cached is explicitly stale and should not be used as proof that API calls will work.",
|
|
61
|
-
"miosa doctor --json is the preferred auth/API reachability diagnostic.",
|
|
62
|
-
],
|
|
63
|
-
},
|
|
64
|
-
resources: [
|
|
65
|
-
{
|
|
66
|
-
id: "cli_context",
|
|
67
|
-
label: "CLI Context",
|
|
68
|
-
purpose: "Named account/tenant/workspace defaults for switching between personal, team, and customer scopes.",
|
|
69
|
-
status: "stable",
|
|
70
|
-
list: "miosa context ls --json",
|
|
71
|
-
create: "miosa context save <name> --json",
|
|
72
|
-
show: "miosa context show <name> --json",
|
|
73
|
-
delete: "miosa context rm <name> --json",
|
|
74
|
-
notes: [
|
|
75
|
-
"Use miosa context use <name> --json to switch active API key, endpoint, tenant, workspace, region, and default host.",
|
|
76
|
-
"Organization is the canonical name for the existing tenant identity. MIOSA rejects conflicting organization and tenant scopes.",
|
|
77
|
-
"Use miosa context set workspace <workspace-id> --json to pin the default workspace for later commands.",
|
|
78
|
-
"Global --tenant and --workspace flags still override the saved context for one command.",
|
|
79
|
-
],
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
id: "sandbox",
|
|
83
|
-
label: "Sandbox Preview",
|
|
84
|
-
purpose: "Temporary agent/user workspace for build, test, preview, and publish.",
|
|
85
|
-
status: "stable",
|
|
86
|
-
list: "miosa sandbox list --json",
|
|
87
|
-
create: "miosa sandbox create --wait --json",
|
|
88
|
-
show: "miosa sandbox show <sandbox-id> --json",
|
|
89
|
-
delete: "miosa sandbox delete <sandbox-id> --force --json",
|
|
90
|
-
notes: [
|
|
91
|
-
"For app templates, prefer --template <id> --auto-start --publish-port <port> --wait --json.",
|
|
92
|
-
"Next.js starter template: miosa sandbox create --template nextjs --auto-start --publish-port 3000 --wait --json.",
|
|
93
|
-
"For AI agents, run the coding agent inside the sandbox with miosa sandbox run-agent or sandbox exec; do not build locally then upload unless exact-repo upload is explicitly required.",
|
|
94
|
-
"Use miosa sandbox write-file, sandbox exec, sandbox connectors, and sandbox run-agent as the agent's in-sandbox tool surface for creating and editing files.",
|
|
95
|
-
"Use miosa sandbox connectors attach <sandbox-id> <connector> --env <PROVIDER_API_KEY> --json to expose brokered provider credentials without putting raw keys in the VM.",
|
|
96
|
-
"Built-in MIOSA-managed design research connector: miosa sandbox connectors attach <sandbox-id> refero/design-research --env REFERO_MCP_TOKEN --json.",
|
|
97
|
-
"Use miosa sandbox run-agent <sandbox-id> --runner claude-code --connector <connector> --preflight --json -- <task> before agent work that depends on a provider key.",
|
|
98
|
-
"Use sandbox deploy for preview readiness.",
|
|
99
|
-
"Use sandbox publish --docker-deploy to promote a sandbox-built app through the recommended workspace App Engine runtime.",
|
|
100
|
-
"Use sandbox publish without --docker-deploy only when you explicitly need the standard MIOSA Deploy runtime.",
|
|
101
|
-
"Use sandbox env and sandbox db attach for durable encrypted runtime env; do not hand-write .env files.",
|
|
102
|
-
"Use miosa sandbox ports <sandbox-id> --json before previewing to detect port conflicts.",
|
|
103
|
-
"Use miosa sandbox metrics <sandbox-id> --json for readiness, timeout, and resource diagnostics.",
|
|
104
|
-
],
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
id: "device",
|
|
108
|
-
label: "Agent Device",
|
|
109
|
-
purpose: "Product-level routing model for choosing between sandbox workers, Computers, local devices, and App Engine hosts.",
|
|
110
|
-
status: "stable",
|
|
111
|
-
list: "miosa devices list --json",
|
|
112
|
-
show: "miosa devices catalog --json",
|
|
113
|
-
notes: [
|
|
114
|
-
"Use miosa devices catalog --json before launching a new agent workflow.",
|
|
115
|
-
"Sandbox workers are the default for code/build/test/preview work because the agent writes and runs code inside the remote filesystem.",
|
|
116
|
-
"Computers are for browser, GUI, dashboard login, desktop control, and shared desktop state.",
|
|
117
|
-
"Local devices are for local discovery only; move execution into a sandbox or Computer when customer code needs isolation.",
|
|
118
|
-
"App Engine hosts are deployment appliances for versioned app containers, not interactive coding workspaces.",
|
|
119
|
-
],
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
id: "connect_provider",
|
|
123
|
-
label: "MIOSA Connect Provider",
|
|
124
|
-
purpose: "Encrypted provider credential and runtime-token surface for agents, sandboxes, computers, and app code.",
|
|
125
|
-
status: "beta",
|
|
126
|
-
list: "miosa connectors list --json",
|
|
127
|
-
create: "miosa connectors create anthropic --name workspace-claude --stdin --json",
|
|
128
|
-
show: "miosa connectors show anthropic/workspace-claude --json",
|
|
129
|
-
notes: [
|
|
130
|
-
"MIOSA-managed connectors can appear in miosa connectors list without the tenant bringing a vendor token. Built-in: refero/design-research.",
|
|
131
|
-
"Managed connectors are binding-only when marked by MIOSA; clients should attach them to sandboxes/computers instead of requesting the raw platform token.",
|
|
132
|
-
"API-key connectors are stored encrypted and the raw value is never printed by create/list/show.",
|
|
133
|
-
"Use miosa connectors token <connector> --subject app --json when app code needs a runtime provider token.",
|
|
134
|
-
"Use sandbox connector bindings for agent CLIs and provider SDKs that expect normal env vars like ANTHROPIC_API_KEY or OPENAI_API_KEY.",
|
|
135
|
-
"Sandbox connector bindings inject miosa-tok-* placeholders; the egress proxy swaps the real secret at the network boundary.",
|
|
136
|
-
],
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
id: "computer",
|
|
140
|
-
label: "Computer",
|
|
141
|
-
purpose: "Durable desktop/VM surface for SSH, exec, files, services, tunnels, and agent sessions.",
|
|
142
|
-
status: "stable",
|
|
143
|
-
list: "miosa computers list --json",
|
|
144
|
-
create: "miosa up --computer --json",
|
|
145
|
-
show: "miosa computers show <computer-id> --json",
|
|
146
|
-
delete: "miosa computers delete <computer-id> --force --json",
|
|
147
|
-
notes: [
|
|
148
|
-
"Use miosa ssh/exec/cp/tunnel for operator-style control.",
|
|
149
|
-
"Use miosa agent for persistent Computer agent session lifecycle.",
|
|
150
|
-
],
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
id: "deployment_app",
|
|
154
|
-
label: "Deployment App",
|
|
155
|
-
purpose: "Durable hosted app with default URL, releases, env vars, logs, rollback, and domains.",
|
|
156
|
-
status: "beta",
|
|
157
|
-
list: "miosa apps list --json",
|
|
158
|
-
create: "miosa deploy --docker-deploy --json",
|
|
159
|
-
show: "miosa apps show <app-id-or-slug> --json",
|
|
160
|
-
delete: "miosa apps destroy <app-id-or-slug> --force --json",
|
|
161
|
-
notes: [
|
|
162
|
-
"Prefer App Engine for production apps: miosa deploy --docker-deploy --json.",
|
|
163
|
-
"Default URL should work independently of custom-domain DNS state.",
|
|
164
|
-
"Use miosa deploy metrics <app-id> --json to inspect runtime instances, health timestamps, restarts, and usage.",
|
|
165
|
-
],
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
id: "docker_deploy",
|
|
169
|
-
label: "App Engine",
|
|
170
|
-
purpose: "Recommended production runtime for sandbox-built apps; runs app containers on a workspace appliance host.",
|
|
171
|
-
status: "beta",
|
|
172
|
-
list: "miosa docker-deploy hosts --json",
|
|
173
|
-
create: "miosa docker-deploy ensure --wait --timeout 600 --json",
|
|
174
|
-
show: "miosa docker-deploy show <host-id> --json",
|
|
175
|
-
notes: [
|
|
176
|
-
"Use miosa docker-deploy templates --json before choosing a starter/template path.",
|
|
177
|
-
"Upgrade an existing host in place with miosa docker-deploy upgrade <host-id> --release <git-sha> --json; this preserves its bound computers, apps, routes, databases, and volumes.",
|
|
178
|
-
"Upgrade the complete fleet sequentially with miosa docker-deploy upgrade-fleet --release <git-sha> --json. Every host reports the exact deployments verified before it returns active.",
|
|
179
|
-
"App Engine upgrades require exact immutable portal and agent image SHAs. Mutable tags such as latest are rejected.",
|
|
180
|
-
"After publish, run miosa docker-deploy doctor <deployment-id> --json to verify deployment_product, host readiness, route metadata, and public HTTP.",
|
|
181
|
-
"A deployment is not proven healthy until the public probe passes; control-plane state alone is not enough.",
|
|
182
|
-
],
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
id: "database",
|
|
186
|
-
label: "Managed Database",
|
|
187
|
-
purpose: "Managed Postgres lifecycle, connection strings, logs, backup/restore, and attachment.",
|
|
188
|
-
status: "beta",
|
|
189
|
-
list: "miosa databases list --json",
|
|
190
|
-
create: "miosa databases create --name <name> --engine postgres --workspace <workspace-id> --wait --json",
|
|
191
|
-
show: "miosa databases get <db-id> --json",
|
|
192
|
-
delete: "miosa databases delete <db-id> --force --json",
|
|
193
|
-
notes: [
|
|
194
|
-
"Use miosa databases wait <db-id> --ready --timeout 120 --json before attaching.",
|
|
195
|
-
"Use start/stop/restart for explicit lifecycle recovery.",
|
|
196
|
-
"Agents should smoke-test recommended/proxy connect URLs before marking app/database flows ready.",
|
|
197
|
-
"Use miosa databases metrics <db-id> --json for resource and uptime diagnostics.",
|
|
198
|
-
],
|
|
199
|
-
},
|
|
200
|
-
{
|
|
201
|
-
id: "workspace",
|
|
202
|
-
label: "Workspace",
|
|
203
|
-
purpose: "Tenant-scoped resource boundary for ClinicIQ/admin cleanup and inventory.",
|
|
204
|
-
status: "stable",
|
|
205
|
-
list: "miosa workspaces list --json",
|
|
206
|
-
create: "miosa workspaces create --name <name> --json",
|
|
207
|
-
show: "miosa workspaces show <workspace-id> --json",
|
|
208
|
-
delete: "miosa workspaces delete <workspace-id> --force --json",
|
|
209
|
-
notes: [
|
|
210
|
-
"Use --workspace globally to scope supported list/create/delete calls.",
|
|
211
|
-
],
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
id: "custom_domain",
|
|
215
|
-
label: "Custom Domain",
|
|
216
|
-
purpose: "CNAME/custom hostname verification and assignment for apps or Computers.",
|
|
217
|
-
status: "beta",
|
|
218
|
-
list: "miosa domains list <computer-id> --json",
|
|
219
|
-
create: "miosa domains add app.example.com --app <app-id> --json",
|
|
220
|
-
show: "miosa domains status app.example.com --json",
|
|
221
|
-
delete: "miosa domains delete app.example.com --json",
|
|
222
|
-
notes: ["Real DNS is required for end-to-end verify tests."],
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
id: "template",
|
|
226
|
-
label: "Dockerfile Sandbox Template",
|
|
227
|
-
purpose: "E2B-style custom sandbox environment built from a Dockerfile.",
|
|
228
|
-
status: "beta",
|
|
229
|
-
list: "miosa templates list --json",
|
|
230
|
-
create: "miosa templates create --name <name> --dockerfile ./Dockerfile --json",
|
|
231
|
-
show: "miosa templates get <template-id> --json",
|
|
232
|
-
delete: "miosa templates delete <template-id> --force --json",
|
|
233
|
-
notes: [
|
|
234
|
-
"This is the official custom environment path. Docker-in-sandbox is not assumed.",
|
|
235
|
-
],
|
|
236
|
-
},
|
|
237
|
-
],
|
|
238
|
-
advisor: {
|
|
239
|
-
inspect: {
|
|
240
|
-
command: "miosa app inspect ./app --json",
|
|
241
|
-
purpose: "Detect framework, package manager, commands, port, env requirements, database needs, Dockerfile, risks, and recommended deploy mode.",
|
|
242
|
-
json: true,
|
|
243
|
-
},
|
|
244
|
-
plan: {
|
|
245
|
-
command: "miosa app plan ./app --goal deploy --json",
|
|
246
|
-
purpose: "Return the exact agent-safe command sequence for previewing and publishing the app.",
|
|
247
|
-
json: true,
|
|
248
|
-
wait: false,
|
|
249
|
-
},
|
|
250
|
-
application_release: {
|
|
251
|
-
link: "miosa app link . --app <deployment-id> --environment production --json",
|
|
252
|
-
pull: "miosa app pull . --json",
|
|
253
|
-
preview: "miosa app preview . --json",
|
|
254
|
-
verify: "miosa app verify <release-id> . --json",
|
|
255
|
-
promote: "miosa app promote <release-id> . --yes --json",
|
|
256
|
-
rollback: "miosa app rollback <release-id> . --yes --json",
|
|
257
|
-
recover: "miosa app recover <operation-id> . --resume --json",
|
|
258
|
-
blueprint: "miosa blueprint validate . --json",
|
|
259
|
-
plan_change: "miosa changes plan <release-id> . --json",
|
|
260
|
-
approve_change: "miosa changes approve <plan-id> . --actor <identity> --json",
|
|
261
|
-
apply_change: "miosa changes apply <plan-id> . --json",
|
|
262
|
-
drift: "miosa drift detect <plan-id> . --json",
|
|
263
|
-
evidence: "miosa evidence show <receipt-id> . --json",
|
|
264
|
-
rules: [
|
|
265
|
-
"Preview is the default safe mutation and never promotes production.",
|
|
266
|
-
"Production promotion and rollback require one exact immutable release ID.",
|
|
267
|
-
"A command is successful only when the durable release receipt verifies the active version, artifact digest, route contract, host placement, database, and required configuration.",
|
|
268
|
-
"Retry interrupted mutations with the original operation ID and idempotency key.",
|
|
269
|
-
"Capability-gated mutation resolves one exact organization, workspace, application, environment, and deployment.",
|
|
270
|
-
"Exact apply requires an immutable saved plan, durable control-plane record, sufficient approvals, and passing pre-promotion gates.",
|
|
271
|
-
"Drift is reported separately for release, route, archive, host, database, connector, job, and policy state.",
|
|
272
|
-
],
|
|
273
|
-
},
|
|
274
|
-
token_budget: [
|
|
275
|
-
"Use app inspect/plan before loading docs or asking the user what framework the app uses.",
|
|
276
|
-
"Default to compact JSON; only request logs with --lines/--tail and only request full output when diagnosing.",
|
|
277
|
-
"Treat edge_cases in app plan as the recovery playbook instead of pasting long runbooks into the prompt.",
|
|
278
|
-
"Use the app workflow for normal releases. Do not reconstruct sandbox publish, release promotion, and proof manually.",
|
|
279
|
-
],
|
|
280
|
-
playbooks: [
|
|
281
|
-
{
|
|
282
|
-
id: "nextjs-docker-deploy",
|
|
283
|
-
use_when: "Next.js, server-rendered app, API routes, or DATABASE_URL/env needs.",
|
|
284
|
-
command: "miosa app plan ./app --goal docker-deploy --json",
|
|
285
|
-
},
|
|
286
|
-
{
|
|
287
|
-
id: "static-preview-publish",
|
|
288
|
-
use_when: "Static HTML or frontend build output such as dist/.",
|
|
289
|
-
command: "miosa app plan ./app --goal deploy --json",
|
|
290
|
-
},
|
|
291
|
-
{
|
|
292
|
-
id: "debug-preview-not-ready",
|
|
293
|
-
use_when: "Preview URL is missing, TLS pending, or public URL returns gateway JSON/wrong body.",
|
|
294
|
-
command: "miosa sandbox doctor <sandbox-id> --port <port> --json",
|
|
295
|
-
},
|
|
296
|
-
{
|
|
297
|
-
id: "debug-deploy-runtime",
|
|
298
|
-
use_when: "Production URL returns 502, stale placeholder, or control-plane state disagrees with public HTTP.",
|
|
299
|
-
command: "miosa docker-deploy doctor <deployment-id> --json",
|
|
300
|
-
},
|
|
301
|
-
{
|
|
302
|
-
id: "database-backed-app",
|
|
303
|
-
use_when: "App needs DATABASE_URL, Prisma, Drizzle, pg, Postgres, or persistence.",
|
|
304
|
-
command: "miosa app plan ./app --goal docker-deploy --json",
|
|
305
|
-
},
|
|
306
|
-
],
|
|
307
|
-
},
|
|
308
|
-
workflows: [
|
|
309
|
-
{
|
|
310
|
-
id: "capability_gated_release",
|
|
311
|
-
title: "Plan, Approve, Apply, Verify, And Reconcile One Exact Release",
|
|
312
|
-
goal: "Promote a candidate only after its declared capabilities and exact mutation scope are proven.",
|
|
313
|
-
status: "beta",
|
|
314
|
-
steps: [
|
|
315
|
-
{
|
|
316
|
-
command: "miosa blueprint validate . --json",
|
|
317
|
-
purpose: "Validate miosa.app.yml capabilities, services, bindings, and policy.",
|
|
318
|
-
json: true,
|
|
319
|
-
},
|
|
320
|
-
{
|
|
321
|
-
command: "miosa changes plan <release-id> . --json",
|
|
322
|
-
purpose: "Persist an immutable candidate plan locally and in the control-plane operation ledger.",
|
|
323
|
-
json: true,
|
|
324
|
-
},
|
|
325
|
-
{
|
|
326
|
-
command: "miosa changes approve <plan-id> . --actor <identity> --json",
|
|
327
|
-
purpose: "Record an approval bound to the exact plan fingerprint.",
|
|
328
|
-
json: true,
|
|
329
|
-
},
|
|
330
|
-
{
|
|
331
|
-
command: "miosa changes apply <plan-id> . --json",
|
|
332
|
-
purpose: "Run pre-promotion gates, exact idempotent promotion, acceptance, and automatic rollback on failure.",
|
|
333
|
-
json: true,
|
|
334
|
-
wait: true,
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
command: "miosa drift detect <plan-id> . --json",
|
|
338
|
-
purpose: "Compare release, route, archive, host, database, connector, job, and policy state.",
|
|
339
|
-
json: true,
|
|
340
|
-
},
|
|
341
|
-
],
|
|
342
|
-
success_signals: [
|
|
343
|
-
"candidate state verified",
|
|
344
|
-
"durable receipt includes exact release, bindings, health, evidence, rollback, and next action",
|
|
345
|
-
"drifted false",
|
|
346
|
-
],
|
|
347
|
-
failure_signals: [
|
|
348
|
-
"ambiguous organization/workspace/application/environment scope",
|
|
349
|
-
"plan fingerprint mismatch or insufficient approval",
|
|
350
|
-
"migration, secret, route, connector, job, policy, or business capability gate blocked",
|
|
351
|
-
],
|
|
352
|
-
},
|
|
353
|
-
{
|
|
354
|
-
id: "choose_agent_device",
|
|
355
|
-
title: "Choose The Correct MIOSA Device For An Agent Job",
|
|
356
|
-
goal: "Route agent work to the right execution surface before creating resources or uploading code.",
|
|
357
|
-
status: "stable",
|
|
358
|
-
steps: [
|
|
359
|
-
{
|
|
360
|
-
command: "miosa devices catalog --json",
|
|
361
|
-
purpose: "Read the device taxonomy and routing guidance for sandbox workers, Computers, local devices, and App Engine hosts.",
|
|
362
|
-
json: true,
|
|
363
|
-
},
|
|
364
|
-
{
|
|
365
|
-
command: "miosa devices list --json",
|
|
366
|
-
purpose: "Inspect existing hosted devices before creating a new sandbox or Computer.",
|
|
367
|
-
json: true,
|
|
368
|
-
},
|
|
369
|
-
{
|
|
370
|
-
command: "miosa sandbox create --template nextjs --timeout 1h --wait --json",
|
|
371
|
-
purpose: "Create the default code/build/test/preview device when no existing sandbox worker should be reused.",
|
|
372
|
-
json: true,
|
|
373
|
-
wait: true,
|
|
374
|
-
},
|
|
375
|
-
{
|
|
376
|
-
command: 'miosa sandbox run-agent <sandbox-id> --runner codex --cwd /workspace --json -- "Build and test the requested change"',
|
|
377
|
-
purpose: "Run the coding agent inside the sandbox filesystem instead of building locally and downloading files manually.",
|
|
378
|
-
json: true,
|
|
379
|
-
},
|
|
380
|
-
],
|
|
381
|
-
success_signals: [
|
|
382
|
-
"devices catalog includes sandbox_worker and computer",
|
|
383
|
-
"sandbox run-agent creates a durable /runs record",
|
|
384
|
-
"run output references files under /workspace",
|
|
385
|
-
],
|
|
386
|
-
failure_signals: [
|
|
387
|
-
"Unsupported runner without --runner custom --runtime-command",
|
|
388
|
-
"sandbox not running",
|
|
389
|
-
"connector preflight fails before agent launch",
|
|
390
|
-
],
|
|
391
|
-
},
|
|
392
|
-
{
|
|
393
|
-
id: "connect_provider_for_sandbox_agent",
|
|
394
|
-
title: "Bind Provider Tools To A Sandbox Agent",
|
|
395
|
-
goal: "Let Claude Code, Codex, OpenAI SDKs, Anthropic SDKs, AI SDK harnesses, or managed tools run inside a sandbox without raw provider keys in prompts, files, or local machines.",
|
|
396
|
-
status: "beta",
|
|
397
|
-
steps: [
|
|
398
|
-
{
|
|
399
|
-
command: "miosa connectors list --json",
|
|
400
|
-
purpose: "Discover tenant BYOK connectors and MIOSA-managed built-ins such as refero/design-research.",
|
|
401
|
-
json: true,
|
|
402
|
-
},
|
|
403
|
-
{
|
|
404
|
-
command: "miosa sandbox create --template nextjs --auto-start --publish-port 3000 --wait --timeout 1h --json",
|
|
405
|
-
purpose: "Create a persistent sandbox for agent-side development and preview.",
|
|
406
|
-
json: true,
|
|
407
|
-
wait: true,
|
|
408
|
-
},
|
|
409
|
-
{
|
|
410
|
-
command: "miosa sandbox connectors attach <sandbox-id> refero/design-research --env REFERO_MCP_TOKEN --json",
|
|
411
|
-
purpose: "Bind MIOSA-managed Refero design research to the sandbox as a brokered env placeholder. The tenant does not provide or see the vendor token.",
|
|
412
|
-
json: true,
|
|
413
|
-
},
|
|
414
|
-
{
|
|
415
|
-
command: "printf '%s' \"$ANTHROPIC_API_KEY\" | miosa connectors create anthropic --name workspace-claude --stdin --json",
|
|
416
|
-
purpose: "Optional BYOK path: store a provider API key encrypted as a MIOSA Connect connector when MIOSA does not provide that provider.",
|
|
417
|
-
json: true,
|
|
418
|
-
},
|
|
419
|
-
{
|
|
420
|
-
command: "miosa sandbox connectors attach <sandbox-id> anthropic/workspace-claude --env ANTHROPIC_API_KEY --json",
|
|
421
|
-
purpose: "Optional BYOK path: bind the tenant connector to the sandbox as a brokered env placeholder.",
|
|
422
|
-
json: true,
|
|
423
|
-
},
|
|
424
|
-
{
|
|
425
|
-
command: "miosa sandbox connectors sync <sandbox-id> --json",
|
|
426
|
-
purpose: "Push connector placeholder env vars into a currently running sandbox after attach/resume.",
|
|
427
|
-
json: true,
|
|
428
|
-
},
|
|
429
|
-
{
|
|
430
|
-
command: 'miosa sandbox run-agent <sandbox-id> --runner claude-code --connector refero/design-research --preflight --cwd /workspace --json -- "Research the UX references, then build the requested page and run the tests"',
|
|
431
|
-
purpose: "Preflight the managed connector, then run the agent CLI inside the sandbox workspace.",
|
|
432
|
-
json: true,
|
|
433
|
-
},
|
|
434
|
-
],
|
|
435
|
-
success_signals: [
|
|
436
|
-
"connectors list includes refero/design-research with managed true when platform configured",
|
|
437
|
-
"sandbox connector binding returns miosa-tok-* placeholder_token",
|
|
438
|
-
"connector preflight returns bound true",
|
|
439
|
-
"sandbox run-agent returns a run with command output or structured messages",
|
|
440
|
-
],
|
|
441
|
-
failure_signals: [
|
|
442
|
-
"CONNECTOR_NOT_FOUND",
|
|
443
|
-
"CONNECTOR_NOT_BOUND",
|
|
444
|
-
"MANAGED_PROVIDER_NOT_CONFIGURED",
|
|
445
|
-
"MANAGED_PROVIDER_BINDING_ONLY",
|
|
446
|
-
"MISSING_ENV_NAME",
|
|
447
|
-
"sandbox not running or connector sync skipped",
|
|
448
|
-
],
|
|
449
|
-
},
|
|
450
|
-
{
|
|
451
|
-
id: "runtime_token_api",
|
|
452
|
-
title: "Request Runtime Provider Token From App Code Or Automation",
|
|
453
|
-
goal: "Use MIOSA Connect as a Vercel-Connect-style runtime token broker for app/server code.",
|
|
454
|
-
status: "beta",
|
|
455
|
-
steps: [
|
|
456
|
-
{
|
|
457
|
-
command: "miosa connectors list --json",
|
|
458
|
-
purpose: "Find the connector UID or ID available to the current tenant/workspace.",
|
|
459
|
-
json: true,
|
|
460
|
-
},
|
|
461
|
-
{
|
|
462
|
-
command: "miosa connectors token anthropic/workspace-claude --subject app --json",
|
|
463
|
-
purpose: "Request a runtime token for service-level app/provider calls.",
|
|
464
|
-
json: true,
|
|
465
|
-
},
|
|
466
|
-
{
|
|
467
|
-
command: "miosa connectors token github/acme --subject user:<user-id> --installation-id <installation-id> --scope repo:read --json",
|
|
468
|
-
purpose: "Request a user-subject provider token when delegated user access is required.",
|
|
469
|
-
json: true,
|
|
470
|
-
},
|
|
471
|
-
],
|
|
472
|
-
success_signals: [
|
|
473
|
-
"token endpoint returns token plus connector metadata",
|
|
474
|
-
"subject matches app or user:<id>",
|
|
475
|
-
],
|
|
476
|
-
failure_signals: [
|
|
477
|
-
"CONNECTOR_NOT_FOUND",
|
|
478
|
-
"MANAGED_PROVIDER_BINDING_ONLY for MIOSA-managed connectors; attach to a sandbox/computer instead",
|
|
479
|
-
"CONNECTOR_DECRYPT_FAILED",
|
|
480
|
-
"AUTH or FORBIDDEN",
|
|
481
|
-
],
|
|
482
|
-
},
|
|
483
|
-
{
|
|
484
|
-
id: "agent_app_decision",
|
|
485
|
-
title: "Inspect And Plan An App Before Acting",
|
|
486
|
-
goal: "Give agents the minimal correct app context and exact command sequence before creating resources.",
|
|
487
|
-
status: "stable",
|
|
488
|
-
steps: [
|
|
489
|
-
{
|
|
490
|
-
command: "miosa app inspect ./app --json",
|
|
491
|
-
purpose: "Detect framework, package manager, commands, port, env/database needs, Dockerfile, risks, and recommendation.",
|
|
492
|
-
json: true,
|
|
493
|
-
},
|
|
494
|
-
{
|
|
495
|
-
command: "miosa app plan ./app --goal deploy --json",
|
|
496
|
-
purpose: "Generate the preview/publish sequence and known recovery actions for the detected app.",
|
|
497
|
-
json: true,
|
|
498
|
-
},
|
|
499
|
-
],
|
|
500
|
-
success_signals: [
|
|
501
|
-
"inspect returns ok true",
|
|
502
|
-
"plan returns steps with JSON-safe MIOSA commands",
|
|
503
|
-
"edge_cases include recovery commands",
|
|
504
|
-
],
|
|
505
|
-
failure_signals: [
|
|
506
|
-
"unknown framework without manifest overrides",
|
|
507
|
-
"missing port/start command",
|
|
508
|
-
"DATABASE_URL required but no database flow selected",
|
|
509
|
-
],
|
|
510
|
-
},
|
|
511
|
-
{
|
|
512
|
-
id: "context_scoped_workflow",
|
|
513
|
-
title: "Switch Account Or Workspace Context",
|
|
514
|
-
goal: "Make repeated CLI and agent runs target the correct tenant/workspace without passing scope flags every time.",
|
|
515
|
-
status: "stable",
|
|
516
|
-
steps: [
|
|
517
|
-
{
|
|
518
|
-
command: "miosa context ls --json",
|
|
519
|
-
purpose: "Inspect saved contexts and the active context.",
|
|
520
|
-
json: true,
|
|
521
|
-
},
|
|
522
|
-
{
|
|
523
|
-
command: "miosa context use <name> --json",
|
|
524
|
-
purpose: "Switch active endpoint, API key, tenant, workspace, region, and default host.",
|
|
525
|
-
json: true,
|
|
526
|
-
},
|
|
527
|
-
{
|
|
528
|
-
command: "miosa context set workspace <workspace-id> --json",
|
|
529
|
-
purpose: "Pin a default workspace on the active context.",
|
|
530
|
-
json: true,
|
|
531
|
-
},
|
|
532
|
-
{
|
|
533
|
-
command: "miosa command-overview --json",
|
|
534
|
-
purpose: "Discover available command groups and nested subcommands.",
|
|
535
|
-
json: true,
|
|
536
|
-
},
|
|
537
|
-
],
|
|
538
|
-
success_signals: [
|
|
539
|
-
"context ls returns active context",
|
|
540
|
-
"context use returns ok true",
|
|
541
|
-
"whoami --json still verifies live",
|
|
542
|
-
],
|
|
543
|
-
failure_signals: [
|
|
544
|
-
"Context not found",
|
|
545
|
-
"AUTH error after switching",
|
|
546
|
-
"workspace-scoped commands return unauthorized or not found",
|
|
547
|
-
],
|
|
548
|
-
},
|
|
549
|
-
{
|
|
550
|
-
id: "auth_health",
|
|
551
|
-
title: "Verify Auth And API Health",
|
|
552
|
-
goal: "Prove the CLI can make live API calls before running expensive workflows.",
|
|
553
|
-
status: "stable",
|
|
554
|
-
steps: [
|
|
555
|
-
{
|
|
556
|
-
command: "miosa whoami --json",
|
|
557
|
-
purpose: "Live identity check; does not trust stale cache.",
|
|
558
|
-
json: true,
|
|
559
|
-
},
|
|
560
|
-
{
|
|
561
|
-
command: "miosa doctor --json",
|
|
562
|
-
purpose: "Diagnose config, API reachability, auth, and local toolchain.",
|
|
563
|
-
json: true,
|
|
564
|
-
},
|
|
565
|
-
],
|
|
566
|
-
success_signals: ["authenticated true", "doctor Authentication check ok"],
|
|
567
|
-
failure_signals: [
|
|
568
|
-
"AUTH error",
|
|
569
|
-
"API key has been revoked",
|
|
570
|
-
"API unreachable",
|
|
571
|
-
],
|
|
572
|
-
},
|
|
573
|
-
{
|
|
574
|
-
id: "dockerfile_template_sandbox",
|
|
575
|
-
title: "Create Sandbox From Dockerfile Template",
|
|
576
|
-
goal: "Build a custom environment and boot a sandbox from it.",
|
|
577
|
-
status: "beta",
|
|
578
|
-
steps: [
|
|
579
|
-
{
|
|
580
|
-
command: "miosa templates create --name <name> --dockerfile ./Dockerfile --json",
|
|
581
|
-
purpose: "Create template and trigger build.",
|
|
582
|
-
json: true,
|
|
583
|
-
},
|
|
584
|
-
{
|
|
585
|
-
command: "miosa templates builds <template-id> --json",
|
|
586
|
-
purpose: "Inspect template build status/log metadata.",
|
|
587
|
-
json: true,
|
|
588
|
-
},
|
|
589
|
-
{
|
|
590
|
-
command: "miosa sandbox create --template <template-id> --wait --json",
|
|
591
|
-
purpose: "Boot a sandbox using the custom template.",
|
|
592
|
-
json: true,
|
|
593
|
-
wait: true,
|
|
594
|
-
},
|
|
595
|
-
{
|
|
596
|
-
command: 'miosa sandbox exec <sandbox-id> --json -- "which node || which python || env"',
|
|
597
|
-
purpose: "Verify expected tools exist inside the template.",
|
|
598
|
-
json: true,
|
|
599
|
-
},
|
|
600
|
-
],
|
|
601
|
-
success_signals: [
|
|
602
|
-
"template state ready/active",
|
|
603
|
-
"sandbox state running",
|
|
604
|
-
"exec exit_code 0",
|
|
605
|
-
],
|
|
606
|
-
failure_signals: [
|
|
607
|
-
"template build failed",
|
|
608
|
-
"sandbox create timeout",
|
|
609
|
-
"missing expected tools",
|
|
610
|
-
],
|
|
611
|
-
},
|
|
612
|
-
{
|
|
613
|
-
id: "nextjs_template_preview",
|
|
614
|
-
title: "Create Working Next.js Preview From Template",
|
|
615
|
-
goal: "Give an agent a ready-to-edit Next.js app with a public preview URL, without manually scaffolding package.json or app files.",
|
|
616
|
-
status: "stable",
|
|
617
|
-
steps: [
|
|
618
|
-
{
|
|
619
|
-
command: "miosa sandbox create --template nextjs --auto-start --publish-port 3000 --wait --timeout 900 --json",
|
|
620
|
-
purpose: "Create a Next.js sandbox, seed starter files into /workspace, install dependencies, start dev server, expose port 3000, and wait for public HTTP 200.",
|
|
621
|
-
json: true,
|
|
622
|
-
wait: true,
|
|
623
|
-
notes: [
|
|
624
|
-
"Expected JSON includes id, state=running, ready=true, template_id=nextjs, preview.url, preview.status=200.",
|
|
625
|
-
"The backend seeds /workspace/package.json and /workspace/app/page.jsx only when /workspace is empty.",
|
|
626
|
-
],
|
|
627
|
-
},
|
|
628
|
-
{
|
|
629
|
-
command: 'miosa sandbox exec <sandbox-id> --cwd /workspace --json -- bash -lc "ls package.json app/page.jsx && npm run build"',
|
|
630
|
-
purpose: "Verify the scaffold exists and the app builds before publishing.",
|
|
631
|
-
json: true,
|
|
632
|
-
},
|
|
633
|
-
{
|
|
634
|
-
command: 'miosa sandbox publish <sandbox-id> --path /workspace --slug <slug> --build-command "npm run build" --run-command "npm run start" --port 3000 --docker-deploy --wait --timeout 900 --json',
|
|
635
|
-
purpose: "Recommended: promote the working Next.js sandbox into the workspace App Engine runtime.",
|
|
636
|
-
json: true,
|
|
637
|
-
wait: true,
|
|
638
|
-
},
|
|
639
|
-
{
|
|
640
|
-
command: "miosa docker-deploy doctor <deployment-id> --probe-path / --json",
|
|
641
|
-
purpose: "Verify App Engine product metadata, appliance host health, appliance route, and the public production URL.",
|
|
642
|
-
json: true,
|
|
643
|
-
},
|
|
644
|
-
{
|
|
645
|
-
command: 'miosa sandbox publish <sandbox-id> --path /workspace --slug <slug> --build-command "npm run build" --run-command "npm run start" --port 3000 --wait --timeout 900 --json',
|
|
646
|
-
purpose: "Use standard MIOSA Deploy only when App Engine is not desired for this app.",
|
|
647
|
-
json: true,
|
|
648
|
-
wait: true,
|
|
649
|
-
},
|
|
650
|
-
],
|
|
651
|
-
success_signals: [
|
|
652
|
-
"sandbox state running",
|
|
653
|
-
"ready true",
|
|
654
|
-
"preview.status 200",
|
|
655
|
-
"preview.url returns Next.js HTML",
|
|
656
|
-
"scaffold status ready in sandbox metadata",
|
|
657
|
-
"docker deploy response includes deployment_product docker_deploy when --docker-deploy is used",
|
|
658
|
-
"docker deploy doctor ok true",
|
|
659
|
-
],
|
|
660
|
-
failure_signals: [
|
|
661
|
-
"workspace missing package.json",
|
|
662
|
-
"template_lifecycle.status error",
|
|
663
|
-
"npm install timeout",
|
|
664
|
-
"preview.status not 200",
|
|
665
|
-
],
|
|
666
|
-
},
|
|
667
|
-
{
|
|
668
|
-
id: "sandbox_preview",
|
|
669
|
-
title: "Build And Preview In Sandbox",
|
|
670
|
-
goal: "Upload local app, start service, wait for external preview readiness.",
|
|
671
|
-
status: "stable",
|
|
672
|
-
steps: [
|
|
673
|
-
{
|
|
674
|
-
command: 'miosa sandbox deploy ./app --port 5173 --start "npm run dev -- -H 0.0.0.0 -p 5173" --wait --json',
|
|
675
|
-
purpose: "Atomic upload/start/expose/wait preview flow.",
|
|
676
|
-
json: true,
|
|
677
|
-
wait: true,
|
|
678
|
-
},
|
|
679
|
-
{
|
|
680
|
-
command: "miosa sandbox doctor <sandbox-id> --port 5173 --json",
|
|
681
|
-
purpose: "Diagnose process, route, TLS, proxy, and public probe.",
|
|
682
|
-
json: true,
|
|
683
|
-
},
|
|
684
|
-
],
|
|
685
|
-
success_signals: ["preview_ready true", "preview_url returns public 200"],
|
|
686
|
-
failure_signals: [
|
|
687
|
-
"preview_ready false",
|
|
688
|
-
"TLS pending",
|
|
689
|
-
"edge probe failed",
|
|
690
|
-
],
|
|
691
|
-
},
|
|
692
|
-
{
|
|
693
|
-
id: "managed_postgres_ready",
|
|
694
|
-
title: "Create Managed Postgres And Wait For Proxy Readiness",
|
|
695
|
-
goal: "Provision a workspace-scoped database and only continue after the reachable endpoint accepts TCP.",
|
|
696
|
-
status: "beta",
|
|
697
|
-
steps: [
|
|
698
|
-
{
|
|
699
|
-
command: "miosa databases create --name <name> --engine postgres --workspace <workspace-id> --wait --timeout 120 --json",
|
|
700
|
-
purpose: "Create Postgres in the intended workspace and wait for running plus connection_test ok.",
|
|
701
|
-
json: true,
|
|
702
|
-
wait: true,
|
|
703
|
-
},
|
|
704
|
-
{
|
|
705
|
-
command: "miosa databases wait <db-id> --ready --timeout 120 --json",
|
|
706
|
-
purpose: "Re-check readiness before attaching to a sandbox or deployment.",
|
|
707
|
-
json: true,
|
|
708
|
-
wait: true,
|
|
709
|
-
},
|
|
710
|
-
{
|
|
711
|
-
command: "miosa databases connect <db-id> --print-url",
|
|
712
|
-
purpose: "Fetch the recommended connection URL for smoke tests.",
|
|
713
|
-
json: false,
|
|
714
|
-
},
|
|
715
|
-
{
|
|
716
|
-
command: "miosa databases logs <db-id> --lines 100 --json",
|
|
717
|
-
purpose: "Read recent DB logs without relying on SSE.",
|
|
718
|
-
json: true,
|
|
719
|
-
},
|
|
720
|
-
{
|
|
721
|
-
command: "miosa sandbox db attach <sandbox-id> <db-id> --json",
|
|
722
|
-
purpose: "Persist DATABASE_URL and PG* vars in encrypted sandbox env and sync them into the live VM.",
|
|
723
|
-
json: true,
|
|
724
|
-
},
|
|
725
|
-
{
|
|
726
|
-
command: "miosa sandbox env sync <sandbox-id> --json",
|
|
727
|
-
purpose: "Re-sync encrypted sandbox env vars after a restart/rebuild when needed.",
|
|
728
|
-
json: true,
|
|
729
|
-
},
|
|
730
|
-
],
|
|
731
|
-
success_signals: [
|
|
732
|
-
"state running",
|
|
733
|
-
"connection_test.status ok",
|
|
734
|
-
"sandbox db attach attached true",
|
|
735
|
-
"proxy_status ready or not_configured for single-host dev",
|
|
736
|
-
],
|
|
737
|
-
failure_signals: [
|
|
738
|
-
"DATABASE_PROVISION_FAILED",
|
|
739
|
-
"DATABASE_CONNECTIVITY_FAILED",
|
|
740
|
-
"state error",
|
|
741
|
-
],
|
|
742
|
-
},
|
|
743
|
-
{
|
|
744
|
-
id: "publish_durable_app",
|
|
745
|
-
title: "Publish Sandbox To Durable App",
|
|
746
|
-
goal: "Promote sandbox workspace into a durable deployment app with releases.",
|
|
747
|
-
status: "beta",
|
|
748
|
-
steps: [
|
|
749
|
-
{
|
|
750
|
-
command: "miosa sandbox publish <sandbox-id> --path /workspace --slug <slug> --docker-deploy --wait --json",
|
|
751
|
-
purpose: "Recommended: create or update a durable app release from sandbox files on App Engine.",
|
|
752
|
-
json: true,
|
|
753
|
-
wait: true,
|
|
754
|
-
},
|
|
755
|
-
{
|
|
756
|
-
command: "miosa docker-deploy doctor <deployment-id> --json",
|
|
757
|
-
purpose: "Verify the deployment stayed on the App Engine appliance path and the public URL returns the app.",
|
|
758
|
-
json: true,
|
|
759
|
-
},
|
|
760
|
-
{
|
|
761
|
-
command: "miosa releases list <app-id-or-slug> --json",
|
|
762
|
-
purpose: "Verify release appears in release history.",
|
|
763
|
-
json: true,
|
|
764
|
-
},
|
|
765
|
-
{
|
|
766
|
-
command: "miosa apps open <app-id-or-slug>",
|
|
767
|
-
purpose: "Open default durable app URL for manual check.",
|
|
768
|
-
json: false,
|
|
769
|
-
},
|
|
770
|
-
],
|
|
771
|
-
success_signals: ["ready true", "default URL 200", "release listed"],
|
|
772
|
-
failure_signals: [
|
|
773
|
-
"BUILD_FAILED",
|
|
774
|
-
"HEALTH_CHECK_FAILED",
|
|
775
|
-
"release missing",
|
|
776
|
-
],
|
|
777
|
-
},
|
|
778
|
-
{
|
|
779
|
-
id: "computer_agent_control",
|
|
780
|
-
title: "Computer Agent Control",
|
|
781
|
-
goal: "Run persistent AI-agent sessions against a Computer without scraping UI state.",
|
|
782
|
-
status: "partial",
|
|
783
|
-
steps: [
|
|
784
|
-
{
|
|
785
|
-
command: 'miosa agent <computer> "run the tests" --json',
|
|
786
|
-
purpose: "Create persistent agent session.",
|
|
787
|
-
json: true,
|
|
788
|
-
},
|
|
789
|
-
{
|
|
790
|
-
command: "miosa agent get <session-id> --computer <computer> --json",
|
|
791
|
-
purpose: "Fetch session status.",
|
|
792
|
-
json: true,
|
|
793
|
-
},
|
|
794
|
-
{
|
|
795
|
-
command: 'miosa agent task <session-id> "fix the failure" --computer <computer> --json',
|
|
796
|
-
purpose: "Append task to session history.",
|
|
797
|
-
json: true,
|
|
798
|
-
},
|
|
799
|
-
{
|
|
800
|
-
command: "miosa agent history <session-id> --computer <computer> --json",
|
|
801
|
-
purpose: "Read persisted session event/history stream.",
|
|
802
|
-
json: true,
|
|
803
|
-
},
|
|
804
|
-
],
|
|
805
|
-
success_signals: ["session id returned", "history contains tasks"],
|
|
806
|
-
failure_signals: [
|
|
807
|
-
"agent runtime not executing",
|
|
808
|
-
"session not found",
|
|
809
|
-
"AUTH error",
|
|
810
|
-
],
|
|
811
|
-
},
|
|
812
|
-
{
|
|
813
|
-
id: "operational_debugging",
|
|
814
|
-
title: "Inspect Logs And Exec Safely",
|
|
815
|
-
goal: "Give agents parser-safe command execution and filtered logs for app/debug loops.",
|
|
816
|
-
status: "stable",
|
|
817
|
-
steps: [
|
|
818
|
-
{
|
|
819
|
-
command: 'miosa sandbox exec <sandbox-id> --cwd /workspace --cmd "npm run build" --json',
|
|
820
|
-
purpose: "Run a command string without requiring -- separator or argv reconstruction.",
|
|
821
|
-
json: true,
|
|
822
|
-
},
|
|
823
|
-
{
|
|
824
|
-
command: 'miosa sandbox exec <sandbox-id> --cwd /workspace --cmd "npm install && npm run build" --shell-cmd "bash -lc" --json',
|
|
825
|
-
purpose: "Run shell expressions, pipes, redirects, and chained commands explicitly.",
|
|
826
|
-
json: true,
|
|
827
|
-
},
|
|
828
|
-
{
|
|
829
|
-
command: "miosa logs --deployment <app-id> --lines 200 --contains error --json",
|
|
830
|
-
purpose: "Fetch recent deployment logs filtered for a specific text signal.",
|
|
831
|
-
json: true,
|
|
832
|
-
},
|
|
833
|
-
{
|
|
834
|
-
command: 'miosa logs --sandbox <sandbox-id> --regex "500|panic|failed" --json',
|
|
835
|
-
purpose: "Filter sandbox logs by regex for automated diagnostics.",
|
|
836
|
-
json: true,
|
|
837
|
-
},
|
|
838
|
-
{
|
|
839
|
-
command: "miosa sandbox ports <sandbox-id> --json",
|
|
840
|
-
purpose: "List backend-detected listening ports before exposing or diagnosing preview conflicts.",
|
|
841
|
-
json: true,
|
|
842
|
-
},
|
|
843
|
-
{
|
|
844
|
-
command: "miosa sandbox metrics <sandbox-id> --json",
|
|
845
|
-
purpose: "Read sandbox state, readiness, timeout, boot, IP, and resource metrics.",
|
|
846
|
-
json: true,
|
|
847
|
-
},
|
|
848
|
-
{
|
|
849
|
-
command: "miosa deploy metrics <app-id> --json",
|
|
850
|
-
purpose: "Read deployment runtime instance health, restarts, usage, and heartbeat data.",
|
|
851
|
-
json: true,
|
|
852
|
-
},
|
|
853
|
-
{
|
|
854
|
-
command: "miosa databases metrics <db-id> --json",
|
|
855
|
-
purpose: "Read managed database state, engine, resource size, endpoint, and uptime data.",
|
|
856
|
-
json: true,
|
|
857
|
-
},
|
|
858
|
-
],
|
|
859
|
-
success_signals: [
|
|
860
|
-
"exec exit_code 0",
|
|
861
|
-
"logs JSON parses",
|
|
862
|
-
"logs.count reflects filtered line count",
|
|
863
|
-
"ports JSON parses and expected app port appears",
|
|
864
|
-
"metrics JSON parses and current.state matches resource state",
|
|
865
|
-
],
|
|
866
|
-
failure_signals: [
|
|
867
|
-
"unknown option from command flags",
|
|
868
|
-
"empty logs during known failure",
|
|
869
|
-
"regex syntax error",
|
|
870
|
-
"port occupied by platform/service instead of app process",
|
|
871
|
-
"metrics current state disagrees with show/status output",
|
|
872
|
-
],
|
|
873
|
-
},
|
|
874
|
-
{
|
|
875
|
-
id: "safe_workspace_cleanup",
|
|
876
|
-
title: "Safe Workspace Cleanup",
|
|
877
|
-
goal: "Inventory and remove test resources without deleting unrelated customer resources.",
|
|
878
|
-
status: "stable",
|
|
879
|
-
steps: [
|
|
880
|
-
{
|
|
881
|
-
command: "miosa workspaces inventory <workspace-id> --json",
|
|
882
|
-
purpose: "List resources and dependencies before deleting.",
|
|
883
|
-
json: true,
|
|
884
|
-
},
|
|
885
|
-
{
|
|
886
|
-
command: "miosa cleanup sandboxes --workspace <workspace-id> --name-prefix ciq-smoke --older-than 2h --dry-run --json",
|
|
887
|
-
purpose: "Preview exact resource IDs that match cleanup filters.",
|
|
888
|
-
json: true,
|
|
889
|
-
},
|
|
890
|
-
{
|
|
891
|
-
command: "miosa cleanup sandboxes --workspace <workspace-id> --name-prefix ciq-smoke --older-than 2h --force --json",
|
|
892
|
-
purpose: "Delete only the dry-run-matched resources.",
|
|
893
|
-
json: true,
|
|
894
|
-
},
|
|
895
|
-
],
|
|
896
|
-
success_signals: [
|
|
897
|
-
"dry_run true with expected IDs",
|
|
898
|
-
"deleted IDs match dry run",
|
|
899
|
-
],
|
|
900
|
-
failure_signals: [
|
|
901
|
-
"unscoped cleanup",
|
|
902
|
-
"missing dry_run",
|
|
903
|
-
"dependency conflict",
|
|
904
|
-
],
|
|
905
|
-
},
|
|
906
|
-
],
|
|
907
|
-
probing: {
|
|
908
|
-
docker_in_sandbox: [
|
|
909
|
-
{
|
|
910
|
-
command: "miosa sandbox create --wait --json",
|
|
911
|
-
purpose: "Create a disposable sandbox.",
|
|
912
|
-
json: true,
|
|
913
|
-
wait: true,
|
|
914
|
-
},
|
|
915
|
-
{
|
|
916
|
-
command: 'miosa sandbox exec <sandbox-id> --json -- "docker version || which docker || ps aux | grep dockerd"',
|
|
917
|
-
purpose: "Probe whether nested Docker is available. Do not assume support from CLI surface alone.",
|
|
918
|
-
json: true,
|
|
919
|
-
},
|
|
920
|
-
{
|
|
921
|
-
command: "miosa sandbox delete <sandbox-id> --force --json",
|
|
922
|
-
purpose: "Clean up the probe sandbox.",
|
|
923
|
-
json: true,
|
|
924
|
-
},
|
|
925
|
-
],
|
|
926
|
-
live_smoke: [
|
|
927
|
-
{
|
|
928
|
-
command: "miosa whoami --json",
|
|
929
|
-
purpose: "Fail fast on revoked or stale credentials.",
|
|
930
|
-
json: true,
|
|
931
|
-
},
|
|
932
|
-
{
|
|
933
|
-
command: "miosa sandbox create --wait --json",
|
|
934
|
-
purpose: "Verify sandbox creation and wait semantics.",
|
|
935
|
-
json: true,
|
|
936
|
-
wait: true,
|
|
937
|
-
},
|
|
938
|
-
{
|
|
939
|
-
command: "miosa sandbox create --template nextjs --auto-start --publish-port 3000 --wait --timeout 900 --json",
|
|
940
|
-
purpose: "Verify app-template scaffold, lifecycle start, preview route, TLS, and public probe.",
|
|
941
|
-
json: true,
|
|
942
|
-
wait: true,
|
|
943
|
-
},
|
|
944
|
-
{
|
|
945
|
-
command: 'miosa sandbox exec <sandbox-id> --json -- "pwd && whoami"',
|
|
946
|
-
purpose: "Verify exec path.",
|
|
947
|
-
json: true,
|
|
948
|
-
},
|
|
949
|
-
{
|
|
950
|
-
command: "miosa sandbox delete <sandbox-id> --force --json",
|
|
951
|
-
purpose: "Verify cleanup path.",
|
|
952
|
-
json: true,
|
|
953
|
-
},
|
|
954
|
-
],
|
|
955
|
-
},
|
|
956
|
-
};
|
|
957
|
-
function renderText() {
|
|
958
|
-
console.log();
|
|
959
|
-
console.log(chalk.bold("MIOSA Agent Capabilities"));
|
|
960
|
-
console.log(chalk.dim("Machine-readable form: miosa capabilities --json"));
|
|
961
|
-
console.log();
|
|
962
|
-
console.log(chalk.bold("Recommended agent setup"));
|
|
963
|
-
console.log(` ${manifest.cli.default_machine_mode}`);
|
|
964
|
-
console.log();
|
|
965
|
-
console.log(chalk.bold("Core workflows"));
|
|
966
|
-
for (const workflow of manifest.workflows) {
|
|
967
|
-
console.log(` ${chalk.cyan(workflow.id)} ${workflow.title} (${workflow.status})`);
|
|
968
|
-
}
|
|
969
|
-
console.log();
|
|
970
|
-
console.log(chalk.bold("Probe before assuming"));
|
|
971
|
-
console.log(" docker_in_sandbox");
|
|
972
|
-
console.log(" live_smoke");
|
|
973
|
-
console.log();
|
|
974
|
-
}
|
|
975
|
-
export function register(program) {
|
|
976
|
-
program
|
|
977
|
-
.command("capabilities")
|
|
978
|
-
.alias("capability")
|
|
979
|
-
.description("Print agent-readable CLI capabilities, resources, and workflow recipes")
|
|
980
|
-
.option("--live", "Fetch live backend runtime capabilities from /api/v1/runtime-capabilities")
|
|
981
|
-
.option("--json", "Output machine-readable JSON")
|
|
982
|
-
.action(async (opts) => {
|
|
983
|
-
if (opts.live) {
|
|
984
|
-
const client = new MiosaClient(loadConfig());
|
|
985
|
-
const capabilities = await client.apiGet("/api/v1/runtime-capabilities");
|
|
986
|
-
if (opts.json || process.env["MIOSA_JSON"] === "1") {
|
|
987
|
-
printJson(capabilities);
|
|
988
|
-
return;
|
|
989
|
-
}
|
|
990
|
-
console.log(chalk.bold("MIOSA Runtime Capabilities"));
|
|
991
|
-
console.log(chalk.dim("Machine-readable form: miosa capabilities --live --json"));
|
|
992
|
-
printJson(capabilities);
|
|
993
|
-
return;
|
|
994
|
-
}
|
|
995
|
-
if (opts.json || process.env["MIOSA_JSON"] === "1") {
|
|
996
|
-
printJson(manifest);
|
|
997
|
-
return;
|
|
998
|
-
}
|
|
999
|
-
renderText();
|
|
1000
|
-
});
|
|
1001
|
-
}
|
|
1002
|
-
//# sourceMappingURL=capabilities.js.map
|