ChatLift AI Conversation Exporter & Archive
Import, search, and archive AI conversations from ChatGPT, Claude, and Gemini. Clean indexed formats, full-text search, static HTML archive. No server required.
Import, search, and archive your AI conversations.
Extract ChatGPT, Claude, and Gemini conversation exports into clean, indexed formats. Full-text search. Static HTML archive with search bar. No server required.
What It Does
ChatLift converts AI conversation exports into portable, searchable formats:
- 1. Import - Parse ChatGPT/Claude/Gemini exports
- Convert - Generate Markdown, HTML, and JSON
- Search - Full-text search across all conversations
- Archive - Static HTML archive with navigation
Why This Exists
AI chat platforms:
- - Lock your conversations in proprietary formats
- Make search difficult or impossible
- Can delete your data at any time
ChatLift gives you control:
- - Own your conversation history
- Search across all platforms
- Portable formats (Markdown, HTML, JSON)
- Works offline forever
Quick Start
Install
No dependencies! Python 3.7+ stdlib only.
CODEBLOCK0
Import Conversations
Export your conversations from ChatGPT, Claude, or Gemini, then:
CODEBLOCK1
Generates:
- -
chat-archive/markdown/*.md - Human-readable markdown - INLINECODE1 - Styled HTML pages
- INLINECODE2 - Structured JSON
Search Conversations
CODEBLOCK2
Generate HTML Archive
CODEBLOCK3
The HTML archive includes:
- - Search bar - Filter by keyword or source
- Navigation - Browse all conversations
- No server needed - Pure static files
Usage Examples
Import Multiple Exports
CODEBLOCK4
Search Across All Platforms
CODEBLOCK5
Custom Output Formats
CODEBLOCK6
Filter Search Results
CODEBLOCK7
Export Instructions
ChatGPT
- 1. Go to chat.openai.com
- Settings → Data controls → Export data
- Wait for email with download link
- Download INLINECODE3
Claude
- 1. Go to claude.ai
- Settings → Privacy → Export your data
- Download export file
- Extract JSON from archive
Gemini
- 1. Go to gemini.google.com
- Account settings → Download your data
- Select Gemini conversations
- Download export file
File Formats
Markdown
CODEBLOCK8
JSON
CODEBLOCK9
HTML
Clean, styled HTML with:
- - Responsive design
- Color-coded messages
- Timestamps
- Source badges
Archive Structure
CODEBLOCK10
Search Features
Full-Text Search
CODEBLOCK11
Filters
CODEBLOCK12
Date Range
CODEBLOCK13
Statistics
CODEBLOCK14
Shows:
- - Total conversations
- Total messages
- Word count
- Breakdown by source
- Breakdown by role
HTML Archive
Features
- - Search bar - Real-time filter as you type
- Source filter - Filter by ChatGPT, Claude, Gemini
- Clean design - Responsive, mobile-friendly
- No server - Pure static HTML/CSS/JS
- Works offline - Archive travels with you
Customization
Edit chat-archive/web/style.css to customize:
- - Colors
- Fonts
- Layout
- Message styling
The archive is pure HTML/CSS/JS - modify freely.
Integration
Python API
CODEBLOCK15
Batch Processing
CODEBLOCK16
Limitations
See LIMITATIONS.md for details.
Key constraints:
- - Export formats vary by platform version
- No real-time sync (manual export/import)
- Search is text-based (not semantic)
- Large archives (10,000+ conversations) may be slow
License
MIT License - See LICENSE
Author: Shadow Rose
Why This Exists
Your AI conversations are valuable:
- - Learning history
- Project documentation
- Personal knowledge base
But they're locked in proprietary platforms that:
- - Can change or delete your data
- Make search difficult
- Don't export cleanly
ChatLift gives you:
- - Ownership - Your data, your formats
- Portability - Markdown, HTML, JSON
- Search - Find anything instantly
- Permanence - Works offline forever
Take back your conversation history.
⚠️ Disclaimer
This software is provided "AS IS", without warranty of any kind, express or implied.
USE AT YOUR OWN RISK.
- - The author(s) are NOT liable for any damages, losses, or consequences arising from
the use or misuse of this software — including but not limited to financial loss,
data loss, security breaches, business interruption, or any indirect/consequential damages.
- - This software does NOT constitute financial, legal, trading, or professional advice.
- Users are solely responsible for evaluating whether this software is suitable for
their use case, environment, and risk tolerance.
- - No guarantee is made regarding accuracy, reliability, completeness, or fitness
for any particular purpose.
- - The author(s) are not responsible for how third parties use, modify, or distribute
this software after purchase.
By downloading, installing, or using this software, you acknowledge that you have read
this disclaimer and agree to use the software entirely at your own risk.
DATA DISCLAIMER: This software processes and stores data locally on your system.
The author(s) are not responsible for data loss, corruption, or unauthorized access
resulting from software bugs, system failures, or user error. Always maintain
independent backups of important data. This software does not transmit data externally
unless explicitly configured by the user.
Support & Links
| |
|---|
| 🐛 Bug Reports | TheShadowyRose@proton.me |
| ☕ Ko-fi |
ko-fi.com/theshadowrose |
| 🛒
Gumroad |
shadowyrose.gumroad.com |
| 🐦
Twitter |
@TheShadowyRose |
| 🐙
GitHub |
github.com/TheShadowRose |
| 🧠
PromptBase |
promptbase.com/profile/shadowrose |
Built with OpenClaw — thank you for making this possible.
🛠️
Need something custom? Custom OpenClaw agents & skills starting at $500. If you can describe it, I can build it. →
Hire me on Fiverr
ChatLift AI 对话导出与存档工具
导入、搜索并归档来自ChatGPT、Claude和Gemini的AI对话。整洁的索引格式、全文搜索、静态HTML存档。无需服务器。
导入、搜索并归档你的AI对话。
将ChatGPT、Claude和Gemini的对话导出文件提取为整洁的索引格式。全文搜索。带搜索栏的静态HTML存档。无需服务器。
功能说明
ChatLift将AI对话导出文件转换为可移植、可搜索的格式:
- 1. 导入 - 解析ChatGPT/Claude/Gemini导出文件
- 转换 - 生成Markdown、HTML和JSON格式
- 搜索 - 跨所有对话进行全文搜索
- 归档 - 带导航功能的静态HTML存档
为什么需要这个工具
AI聊天平台:
- - 将你的对话锁定在专有格式中
- 使搜索变得困难或不可能
- 可随时删除你的数据
ChatLift让你掌控一切:
- - 拥有你的对话历史
- 跨所有平台搜索
- 可移植格式(Markdown、HTML、JSON)
- 永久离线可用
快速开始
安装
无需依赖!仅需Python 3.7+标准库。
bash
复制配置文件(可选)
cp config_example.py config.py
导入对话
从ChatGPT、Claude或Gemini导出你的对话,然后:
bash
导入ChatGPT导出文件
python3 chat_lift.py chatgpt conversations.json
导入Claude导出文件
python3 chat_lift.py claude claude-export.json
导入Gemini导出文件
python3 chat_lift.py gemini gemini-conversations.json
生成文件:
- - chat-archive/markdown/.md - 人类可读的Markdown文件
- chat-archive/html/.html - 带样式的HTML页面
- chat-archive/json/*.json - 结构化JSON文件
搜索对话
bash
搜索所有对话
python3 chat_search.py search --query 机器学习
使用正则表达式搜索
python3 chat_search.py search --query python.*async --regex
按日期范围搜索
python3 chat_search.py date --start-date 2026-01-01 --end-date 2026-02-01
获取归档统计信息
python3 chat_search.py stats
生成HTML归档
bash
生成静态归档网站
python3 chat_archive.py
在浏览器中打开 chat-archive/web/index.html
HTML归档包含:
- - 搜索栏 - 按关键词或来源筛选
- 导航 - 浏览所有对话
- 无需服务器 - 纯静态文件
使用示例
导入多个导出文件
bash
导入所有平台的导出文件
python3 chat_lift.py chatgpt chatgpt-export.json
python3 chat_lift.py claude claude-export.json
python3 chat_lift.py gemini gemini-export.json
生成统一归档
python3 chat_archive.py
跨所有平台搜索
python
from chat_search import ConversationSearcher
searcher = ConversationSearcher(chat-archive)
查找所有提及agent的对话
results = searcher.search(agent)
for result in results:
print(f{result[conversation][title]})
print(f 来源: {result[conversation][source]})
print(f 匹配数: {result[total_matches]}\n)
自定义输出格式
bash
仅生成markdown格式
python3 chat_lift.py chatgpt export.json --formats markdown
生成所有格式
python3 chat_lift.py chatgpt export.json --formats markdown html json
自定义输出目录
python3 chat_lift.py chatgpt export.json --output-dir ~/my-chats
筛选搜索结果
bash
仅搜索ChatGPT对话
python3 chat_search.py search --query python --source chatgpt
仅搜索用户消息
python3 chat_search.py search --query 解释 --role user
区分大小写搜索
python3 chat_search.py search --query API --case-sensitive
导出说明
ChatGPT
- 1. 前往 chat.openai.com
- 设置 → 数据控制 → 导出数据
- 等待包含下载链接的邮件
- 下载 conversations.json
Claude
- 1. 前往 claude.ai
- 设置 → 隐私 → 导出你的数据
- 下载导出文件
- 从压缩包中提取JSON
Gemini
- 1. 前往 gemini.google.com
- 账户设置 → 下载你的数据
- 选择Gemini对话
- 下载导出文件
文件格式
Markdown
markdown
对话标题
来源: chatgpt
ID: abc123def456
创建时间: 2026-02-21 10:30:00
用户
如何部署Flask应用?
2026-02-21 10:30:15
助手
以下是部署Flask应用的方法...
2026-02-21 10:30:45
JSON
json
{
id: abc123def456,
title: 对话标题,
source: chatgpt,
create_time: 1708512600,
messages: [
{
role: user,
content: 如何部署Flask应用?,
timestamp: 1708512615
},
{
role: assistant,
content: 以下是部署Flask应用的方法...,
timestamp: 1708512645
}
]
}
HTML
简洁、带样式的HTML,包含:
归档结构
chat-archive/
├── markdown/ # 人类可读的Markdown文件
│ ├── abc123.md
│ └── def456.md
├── html/ # 带样式的HTML页面
│ ├── abc123.html
│ └── def456.html
├── json/ # 结构化JSON文件
│ ├── abc123.json
│ └── def456.json
└── web/ # 静态HTML归档
├── index.html # 浏览/搜索界面
├── abc123.html # 对话页面
├── def456.html
├── style.css # 样式文件
└── search.js # 搜索功能
搜索功能
全文搜索
bash
简单文本搜索
python3 chat_search.py search --query 机器学习
区分大小写
python3 chat_search.py search --query API --case-sensitive
正则表达式模式
python3 chat_search.py search --query python.*async --regex
筛选条件
bash
按来源平台筛选
python3 chat_search.py search --query 代码 --source chatgpt
按消息角色筛选
python3 chat_search.py search --query 解释 --role assistant
组合筛选
python3 chat_search.py search --query 部署 --source claude --role user
日期范围
bash
特定日期范围内的对话
python3 chat_search.py date --start-date 2026-01-01 --end-date 2026-02-01
指定日期之后的所有对话
python3 chat_search.py date --start-date 2026-02-01
指定日期之前的所有对话
python3 chat_search.py date --end-date 2026-02-01
统计信息
bash
python3 chat_search.py stats
显示:
HTML归档
功能特点
- - 搜索栏 - 实时输入筛选
- 来源筛选 - 按ChatGPT、Claude、Gemini筛选
- 简洁设计 - 响应式、移动端友好
- 无需服务器 - 纯静态HTML/CSS/JS
- 离线可用 - 归档随身携带
自定义设置
编辑 chat-archive/web/style.css 自定义:
归档为纯HTML/CSS/JS - 可自由修改。
集成
Python API
python
from chat_lift import ConversationImporter
from chat_search import