Migrate from ChatGPT, Claude, OpenClaw, Hermes, Manus, and other AI assistants into Vellum by inspecting their data exports, conversation archives, files, prompts, custom instructions, memory, saved memories, tools, GPTs, workflows, integrations, and relationships, then mapping as much as safely possible into Vellum primitives.
assistant skills install assistant-migrationHelp the creator migrate from another AI assistant into Vellum. Preserve as much of the source assistant as can be understood safely, but do not rely on deterministic adapters for OpenClaw, Hermes, Manus, or any other non-Vellum internals. These systems evolve quickly; inspect the actual source artifacts in front of you and map them into Vellum primitives.
The creator may not know where their other assistant stores its internals. Help them find the safest available source of truth before asking them to upload or paste data.
Start with low-risk discovery:
When internals are hard to access, fall back to an interview-style migration: ask the creator and source assistant for high-signal summaries, then rebuild in Vellum with review.
Before copying large folders or attachments, estimate source size and check available space in the current Vellum workspace. Use available storage diagnostics or shell filesystem probes when available, migrate large assets in batches, and pause for the creator if the import could crowd the workspace or trigger disk-pressure cleanup.
Once the source assistant is identified, consult the matching reference for the exact data-directory layout, a bundling recipe with explicit --exclude flags for secret-bearing paths, and the after-import rebind checklist:
For ChatGPT conversation history specifically, do not parse export ZIPs here — invoke the chatgpt-import skill, which owns the export-and-parse flow. The ChatGPT reference covers only the non-conversation material (custom instructions, saved memories, GPT configs).
These are reconnaissance notes, not adapters. They tell you where to look and what to leave behind. The preferred flow is a single tar archive that the creator uploads to the conversation as a chat attachment. Never run curl, wget, or any other fetcher against a URL the creator pastes in chat — a chat-supplied URL substituted into a shell command is a confused-deputy surface (shell substitution inside double quotes, SSRF against private networks, and a bypass of the platform's structured URL-safety checks). See references/README.md for the shared tar-and-transport model and the rules each per-assistant reference must follow.
Ask only for missing essentials:
If the user already provided enough context, start inspecting.
Build an inventory grouped by Vellum primitive. For each candidate item, capture:
Do not mutate Vellum state until the creator has reviewed the inventory unless they explicitly asked for an immediate best-effort migration.
When the creator names more than one source ("I used ChatGPT and Claude", "ChatGPT plus my old OpenClaw box"), build one unified inventory, not one per source. Each inventory row gains a Source attribution column alongside the existing fields (source path/origin, what-it-is, Vellum destination, confidence, action, reason).
Dedupe and reconcile across sources:
The unified inventory drives per-source rebind/import routing — each row's action resolves against the source it came from:
chatgpt-import skill (see below; do not parse ZIPs here).references/claude.md.references/chatgpt.md.Keep the existing Review Surface and Port / Review / Re-setup / Disregard flow. Multi-source just means one combined checklist with source labels, not a separate pass per source.
Prefer a rich checklist when an interactive surface is available. The checklist should let the creator mark each item as:
If a rich UI is not available on the current channel, present the same information as a concise markdown table and ask for the creator's choices.
Suggested checklist groups:
Use the most native Vellum primitive available. Prefer existing Vellum setup/import flows over custom conversion. Keep source provenance in notes when useful so the creator can audit where migrated material came from.
For each migrated group, report what changed and what remains pending. If an item is skipped, say why.
Some internals should be rebuilt instead of copied:
When rebuilding, explain the Vellum equivalent and ask whether the creator wants to re-set it up now.
| Source assistant concept | Vellum primitive | Migration guidance |
|---|---|---|
| Name, persona, tone, identity docs, system prompts | Identity, Personality, Avatar, SOUL.md, user persona files | Preserve explicit creator-approved identity/personality material. Convert brittle prompt hacks into plain behavioral guidance. |
| Current focus, scratchpads, working notes | NOW.md, Workspace notes, Memory | Preserve active projects and open loops. Avoid importing stale scratch state as permanent truth. |
| Memory databases, summaries, profiles, user facts | Memory | Prefer source-produced summaries or human-readable exports. Preserve attribution where possible. Use review for inferred or sensitive facts. |
| Conversation history | Conversations and Memory | Import supported structured exports when available. Otherwise summarize useful history into memory candidates rather than dumping logs blindly. |
| Tools, skills, commands, plugins, playbooks | Skills | Recreate as Vellum skills when the capability is still useful. Keep instructions portable; avoid foreign runtime assumptions. |
| MCP servers | MCP | Recreate server registrations and required environment through Vellum's MCP setup flow. Reconnect secrets through the credential vault. |
| Browser automation state, browsing tasks | Browser capability | Recreate workflows and permissions. Do not import cookies or browser profile secrets directly. |
| Computer-use automations | Computer Use capability | Recreate task intent and permission expectations. Verify host-computer access through Vellum's own consent model. |
| Custom dashboards, tools, visual workflows | Apps or Widgets | Persistent interactive tools should become Apps. Transient conversation UI should become Widgets or normal chat flows. |
| Slack, Telegram, email, phone, webhooks | Channels and Integrations | Reconnect channels through Vellum setup skills. Expect some providers, especially Slack, to need fresh setup. |
| Friends, coworkers, allowed users | Contacts and Trusted Contacts | Map relationships into Contacts. Grant channel access through trusted-contact and guardian flows, not direct database edits. |
| Owner/admin identity, approval authority | Guardian Verification | Verify the creator/guardian on each channel needed for secure access and approvals. |
| Secrets, API keys, tokens, OAuth refresh tokens | Credential Vault and OAuth Integrations | Never paste or import raw secrets. Rebind through secure prompts, OAuth connect flows, or provider setup skills. |
| Autonomy settings, allowlists, deny rules | Trust Rules and Permissions | Translate intent, not syntax. Start conservative when semantics are unclear. |
| Timed jobs and reminders | Schedules | Recreate one-shot and recurring tasks using Vellum schedules. Preserve the user-visible intent and delivery channel. |
| Autonomous monitors and polling jobs | Watchers | Rebuild as watchers when the source monitors external events. Reconnect provider credentials first. |
| Periodic self-checks | Heartbeats | Use Vellum heartbeats for agenda-free self-checking, not for specific timed jobs. |
| Pending replies or nudges | Followups | Preserve expected-response workflows as followups when the source tracks sent messages awaiting replies. |
| Reusable action templates and queues | Task Queue | Recreate repeatable work as tasks or queued work items when the creator expects review before completion. |
| Model routing, fast/quality/cost modes, provider keys | Inference Profiles and Provider Connections | Map source behavior to named profiles such as balanced, quality, or cost/speed variants. Reconnect provider credentials safely. |
| Files, projects, notes, attachments | Workspace | Copy useful, non-secret artifacts into the Vellum workspace with clear organization. Leave local worktree artifacts and foreign caches behind. |
When the source assistant can answer questions, invite it to produce a portable self-summary instead of scraping every internal file. Ask for comprehensive but reviewable output:
Then present the summary as memory candidates for creator review. Do not silently save sensitive, speculative, or emotionally loaded claims.
When source files are available, inspect them directly and classify them:
For medium- and low-confidence items, ask before importing and prefer converting into reviewed notes or setup tasks.
End with a concise report:
If the migration created follow-up work, offer the next concrete step rather than claiming the migration is complete.