A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
Import Grok, Claude, ChatGPT chats into Open-WebUI
Import Grok, Claude, AI Studio (Gemini) and ChatGPT chats into open-webui.
This importer tool has two Python scripts: one for converting the model JSON files to openweb-ui format JSON, the second for creating a SQL script to import the JSON into the openweb-ui SQLite database.
The imported chats are given the tags imported-aistudio, imported-chatgpt, imported-claude and imported-grok.
Any private-use Unicode characters occasionally found in model exports are stripped from the message text during conversion.
python .\convert_chatgpt.py --userid="get-this-from-your-webui.db" .\chatgpt.json
python .\create_sql.py ./output/chatgpt --tags="imported-chatgpt" --output=chatgpt.sql
--
python .\convert_aistudio.py --userid="get-this-from-your-webui.db" .\aistudio_example.json
python .\create_sql.py ./output/aistudio --tags="imported-aistudio" --output=aistudio.sql
docker run --rm -v $(pwd)/data:/data \
ghcr.io/yetanotherchris/openwebui-importer:latest \
python convert_chatgpt.py --userid="your-user-id" --output-dir=/data/output /data/chatgpt.json
docker run --rm -v $(pwd)/data:/data \
ghcr.io/yetanotherchris/openwebui-importer:latest \
python create_sql.py /data/output/chatgpt --tags="imported-chatgpt" --output=/data/chatgpt.sql
docker run --rm -v ${PWD}/data:/data `
ghcr.io/yetanotherchris/openwebui-importer:latest `
python convert_chatgpt.py --userid="your-user-id" --output-dir=/data/output /data/chatgpt.json
docker run --rm -v ${PWD}/data:/data `
ghcr.io/yetanotherchris/openwebui-importer:latest `
python create_sql.py /data/output/chatgpt --tags="imported-chatgpt" --output=/data/chatgpt.sql
Full example for GPT and Grok:
python .\convert_chatgpt.py --userid="example-9cef-4387-8ee4-b82eb2e1c637" .\chatgpt.json
python .\convert_aistudio.py --userid="example-9cef-4387-8ee4-b82eb2e1c637" .\aistudio_example.json
python .\convert_grok.py --userid="example-9cef-4387-8ee4-b82eb2e1c637" .\grok.json
python .\create_sql.py ./output/chatgpt --tags="imported-chatgpt" --output=chatgpt.sql
python .\create_sql.py ./output/aistudio --tags="imported-aistudio" --output=aistudio.sql
python .\create_sql.py ./output/grok --tags="imported-grok" --output=grok.sql
# Now run the scripts inside DB Browser and hit save
Install the required Python dependencies first:
pip install -r requirements.txt
usage: convert_chatgpt.py [-h] --userid USERID [--output-dir OUTPUT_DIR] files [files ...]
Convert ChatGPT exports to open-webui JSON
usage: convert_grok.py [-h] --userid USERID [--output-dir OUTPUT_DIR] files [files ...]
Convert Grok exports to open-webui JSON
usage: convert_claude.py [-h] --userid USERID [--output-dir OUTPUT_DIR] files [files ...]
Convert Claude exports to open-webui JSON
usage: convert_aistudio.py [-h] --userid USERID [--output-dir OUTPUT_DIR] files [files ...]
Convert AI Studio exports to open-webui JSON
All converter scripts name the output files using the original conversation ID
so running them again will produce the same filename for the same conversation.
Converted files are saved in a subdirectory named after the model (for example
output/grok or output/claude).
usage: create_sql.py [-h] [--tags TAGS] [--output OUTPUT] files [files ...]
Create SQL inserts for open-webui chats. Existing chat records are deleted
before inserting so they are replaced if already present. Tags are inserted
with UPSERT statements, ensuring the default import tags (and any tags passed
via `--tags`) exist for each user.
positional arguments:
files Chat JSON files or directories
options:
-h, --help show this help message and exit
--tags TAGS Comma-separated tags for the meta field
--output OUTPUT Write SQL statements to this file
usage: run_batch.py [-h] --input-dir INPUT_DIR --type {aistudio,chatgpt,claude,grok} --user-id USER_ID [--output-dir OUTPUT_DIR] [--sql-output SQL_OUTPUT]
Batch process chat exports and generate SQL for Open WebUI.
options:
-h, --help show this help message and exit
--input-dir INPUT_DIR
Directory containing the source chat files
--type {aistudio,chatgpt,claude,grok}
Source chat format
--user-id USER_ID Open WebUI User ID to assign to these chats
--output-dir OUTPUT_DIR
Directory for intermediate JSON files (default: output)
--sql-output SQL_OUTPUT
Path to the final SQL file. If not specified, SQL generation is skipped.
Example:
python scripts/run_batch.py --input-dir ./my_chats --type aistudio --user-id "your-user-id" --sql-output aistudio_import.sql
This will convert all .json (and extensionless files for AI Studio) in ./my_chats and generate aistudio_import.sql.
prod-grok-backend.json).python ./convert_grok.py --userid="d95194d2-9cef-4387-8ee4-b82eb2e1c637" ./grok.json
output/grok.python ./create_sql.py ./output --tags="imported-grok" --output=grok.sql
--tags are also created
for each user.webui.db database.An AI-powered custom node for ComfyUI designed to enhance workflow automation and provide intelligent assistance
Deterministic multi-agent pipeline for end-to-end software development, orchestrating CLI-based AI tools (e.g. Gemini, C
💻 A curated list of papers and resources for multi-modal Graphical User Interface (GUI) agents.
A Comprehensive Benchmark to Evaluate LLMs as Agents (ICLR'24)