Convert Chat Exports with AI
If ChatLab cannot recognize your export yet, a local agent can use the official conversion skill to inspect its structure, write a converter, and produce the ChatLab standard format.
The conversion runs locally. The skill limits inspection to required structural information, does not print complete message bodies, and never modifies the source export.
Prepare the tools
Install the ChatLab CLI:
npm install -g chatlab-cliInstall the conversion skill in a skill-compatible agent environment:
npx skills add ChatLab/ChatLab --skill chatlab-convert -gConvert an export
Give the agent the exact export path:
Use $chatlab-convert to convert and import "/absolute/path/to/chat-export" into ChatLab.To create the converted files without importing them:
Use $chatlab-convert to convert "/absolute/path/to/chat-export" to ChatLab format. Do not import it.The skill uses the installed Node.js, Python, or shell tools to:
- check whether ChatLab already supports the source;
- inspect only required fields, types, and counts without dumping messages;
- resolve member, timestamp, conversation, and message-type mappings;
- write and run a reusable local converter;
- produce streaming JSONL by default;
- strictly validate the format and record counts, then preview the import;
- write to ChatLab only when import was explicitly requested.
If one source contains multiple conversations, the skill creates one output per conversation instead of merging them.
Completion checks
Before reporting success, the agent must run both commands:
clb validate "/absolute/path/to/converted.jsonl" --json
clb import "/absolute/path/to/converted.jsonl" --dry-run --jsonSuccess requires strict validation, a successful import preview, and matching source/output message counts. The converter and outputs remain available so a newer export can be converted again.
Privacy
Use an agent that can work with local files and a local terminal. Do not upload a complete chat export to an online chat box. When an unusual text format requires sampling, inspect the smallest possible range and mask message bodies.