---
title: Porting an OpenClaw setup into Omniscio
---

# Port your OpenClaw setup into Omniscio

## What it is

Bring an existing **OpenClaw** gateway into Omniscio with as
little typing as possible — first connect, then optionally have a Claude session
recreate your setup (scheduled jobs and command/agent personas) inside Omniscio.

OpenClaw is a separate "gateway" server you run elsewhere (a home box, a cloud
droplet). Omniscio talks to it over a WebSocket. To connect, Omniscio needs only two
things: the gateway's **address** (`ws://your-server:18789`) and an **auth
token** (a long hex string). The hard part has always been finding and re-typing
those — this feature removes that friction and adds a one-click migration.

## Where to find it

### Where it lives

**Settings → OpenClaw.**

## How it behaves

### 1. Connect with no typing

In the **Bring in your setup** box (shown when you're not connected), paste
whatever you already have and Omniscio fills in the address + token for you:

- a `ws://` or `wss://` URL, **or** your Web UI address `http://your-server:18789`
  (Omniscio converts `http`→`ws` and adds the default port `:18789` automatically),
- a bare token (e.g. the contents of `~/.openclaw/gateway-token.txt`),
- a chunk of your `openclaw.json` (Omniscio reads `gateway.auth.token`),
- your service env lines (`CLAWDBOT_GATEWAY_TOKEN=…`),
- or a mix of the above.

Prefer a file? **Import from config file…** opens a picker; point it at your
`openclaw.json` / token file / `.env` and Omniscio extracts the same two values.
Then press **Connect**.

(The parsing happens on your machine; the connection field only ever accepts
`ws://`/`wss://`, so a stray `http://` can't reach the network layer — Omniscio
normalizes it for you first.)

### 2. Port your whole setup (optional, once connected)

Press **Port my setup into Omniscio**. Omniscio reads a snapshot of your gateway's setup
and spins up a **Claude session** whose job is to recreate the equivalents in Omniscio:

| In OpenClaw                       | Becomes in Omniscio                                                                   |
| --------------------------------- | ------------------------------------------------------------------------------------- |
| Scheduled jobs (cron)             | Omniscio scheduled jobs — **created switched off** so you review them before they run |
| Commands & agent personas         | Omniscio **recipes** (reusable prompts)                                               |
| Custom model providers / API keys | **Not copied** — you get a checklist of keys to add yourself                          |
| Channels (Telegram, etc.)         | No Omniscio equivalent — flagged as "not portable"                                    |

The session works through your setup and reports what it created, what it
skipped (already existed), and what you need to set up by hand.

### Why a Claude session does it

Translating OpenClaw concepts into Omniscio concepts takes judgment (what maps, what
doesn't), so Omniscio hands the fuzzy part to a reasoning agent rather than a brittle
rules table. The agent only ever _proposes_ a structured plan — a dedicated Omniscio
step is the one that actually creates the recipes and jobs, and it re-checks
every item against Omniscio's own rules first (for example, a schedule that would run
more often than every 5 minutes is rejected). So the agent can't make Omniscio do
anything outside the allowed list, your jobs start switched off, and your secrets
are stripped out before the session ever sees them.

### Safety notes

- **Nothing runs on its own.** Ported scheduled jobs are created switched off —
  flip on the ones you want.
- **Secrets stay put.** API keys, the gateway token, and bot tokens are never
  included in what the session reads, never copied into a recipe, and never logged.
- Everything the porting creates is normal Omniscio data you can edit or delete.

## For agents

### For developers

The connection parser, the redacted snapshot builder, and the "applier" (the
trust boundary that creates the artifacts) are covered by
[openclaw-port-contract.md](../../.claude/memory/contracts/openclaw-port-contract.md).
The spawned session hands its plan back through the control-server route
`POST /openclaw-port/apply`.

## Related

- [openclaw-provider.md](openclaw-provider.md) — the provider these ported settings run on.
- [automation-credentials.md](automation-credentials.md) — where the keys a ported job needs are kept.
- [cron-session-jobs.md](cron-session-jobs.md) — the scheduled jobs a port recreates.

