How-to

Migrate a script

The migration tool produces native Sirius integrations — idiomatic sirius.*, not a compatibility shell that still thinks in the old vocabulary.

In the console

  1. Open Migrate.
  2. Paste or import a script from the engine you run today. The {engine} segment on the API is just the source dialect.
  3. Analyze first if you want the report without writing files.
  4. Translate in native mode.
  5. Read the report. Every recognized call site is classified.
  6. Open the output in Studio. Bind connectors. Run it on your samples. Then cut over.

What the report means

ClassWhat you do
NativeMapped to a sirius.* helper. Already done.
ConnectorI/O rewritten to HTTP, database, file, or network calls. Bind a connector and an allowlist.
Needs a lookNo safe equivalent. The line stays unchanged and is highlighted. Nothing is silently invented.

A clean script gets a clean translation. A messy one gets a precise list.

From the API or CI

curl -s -X POST "$SIRIUS/migration/<engine>/analyze" \
  -H 'content-type: application/json' \
  -d '{"source":"…script text…"}'

curl -s -X POST "$SIRIUS/migration/<engine>/translate" \
  -H 'content-type: application/json' \
  -d '{"source":"…script text…","mode":"native"}'

Inventory and scaffold routes exist on the same prefix when you are moving many interfaces at once. The output is always Sirius.

The in-product agent can drive the same flow. There is no privileged back-channel — it calls these routes under your RBAC.

After translate

  1. Create the missing connectors. Probe them.
  2. Replace leftover host interop with sirius.http / sirius.db / sirius.file.
  3. Add samples and golden tests in Studio.
  4. Promote a milestone, then wire the transform into a graph.

See the longer Migrate page and the product story.