NylorunDocsBeta
Get startedBuildRunDeployReferenceMore

0.19 → Runtime V1

Move from the launcher and SQLite Tenants to the local Docker stack.

Runtime V1 replaces the global launcher, Project-managed development command, Hosted Studio, and SQLite Session Store.

1. Install prerequisites

Use Node 24+ and Docker with Compose v2. On Windows, use both inside WSL2.

npm uninstall --global @nylorun/runtime
node --version
docker compose version
npx nylorun doctor

2. Use the two CLIs

BeforeAfter
nylorun runtime upnylorun up
nylorun runtime downnylorun down
nylorun runtime statusnylorun status
nylorun runtime logsnylorun logs [service]
nylorun devnylo tenant create once, then npm run dev
nylorun tenant …nylo tenant …
nylorun configurenylo configure
nylorun status --envnylo env
nylorun doctor sandboxnylo doctor sandbox

nylorun manages only the Docker stack. nylo, supplied by @nylorun/cli, manages Tenants, Project links, and model configuration.

3. Recreate Tenants

SQLite Tenants are not migrated. On first start, Runtime moves directories containing tenant.sqlite to ~/.nylorun/trash/<id>-sqlite-<time>/ and logs sqlite_tenant_moved_to_trash.

Remove the old Project link, preserve anything you need from trash/, then:

npx nylorun up
npx @nylorun/cli tenant create

The new Tenant uses a tenant_<id> Postgres schema and S2 session streams.

4. Update the generated project

Remove @nylorun/cli and @nylorun/studio from the project. Keep @nylorun/agents, zod, tsx, TypeScript, and Node types. Change the script:

- "dev": "nylorun dev",
- "studio": "nylorun-studio",
+ "dev": "tsx watch --env-file-if-exists=.env src/main.ts",

Creator no longer starts development. Studio runs at http://localhost:4161; use nylorun studio for a single-use login valid for two minutes.

5. Remove microsandbox

Only the virtual emulated-shell backend remains. Change forced microsandbox settings to auto or virtual. Remove leftover microVMs with msb rm --force <name> for names beginning nylorun-, then uninstall msb.

6. Check wire changes

  • Protocol 2 now requires studio-principal; older Hosts fail as incompatible_host.
  • Hosts may advertise optional tenant-fixture-model; seed it per Tenant with fixtureModel: true.
  • Tenant status reports checks.store instead of checks.sqlite and may include execution and streams.
  • Quarantine code locked and all launcher error codes are removed.
  • /ready covers Postgres, Restate, and S2.

Finally run npm install, npm run check, npm run build, and open a new Studio session.

On this page