by ChatLab
Local-first chat history analyzer with AI. | 本地优先的 AI 聊天记录分析工具
# Add to your Claude Code skills
git clone https://github.com/ChatLab/ChatLabGuides for using ai agents skills like ChatLab.
Last scanned: 5/12/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-12T06:37:04.841Z",
"semgrepRan": false,
"npmAuditRan": false,
"pipAuditRan": true
}Your chat history, finally yours.
English | 简体中文
Official Website · Documentation · Roadmap
ChatLab is an open-source desktop app for understanding your social conversations. It combines a flexible SQL engine with AI agents so you can explore patterns, ask better questions, and extract insights from chat data, all on your own machine.
Currently supported: WhatsApp, LINE, WeChat, QQ, Discord, Instagram, and Telegram. Coming next: iMessage, Messenger, and KakaoTalk.
For more previews, please visit the official website: chatlab.fun

electron/main/index.ts handles lifecycle and windows. electron/main/ipc/ defines domain-scoped IPC, while electron/main/ai/ and electron/main/i18n/ provide shared AI and localization services.electron/main/worker/ runs import, indexing, and query tasks via workerManager, keeping CPU-heavy work off the UI thread.electron/preload/index.ts exposes tightly scoped APIs for secure process boundaries.parser/ detects file format and dispatches to the matching parser module.worker/query/* powers activity metrics, interaction analysis, SQL Lab, and AI-assisted exploration.parser/formats/*, without reworking downstream query logic.streamImport.ts and incrementalImport.ts support both first-time onboarding and ongoing updates.# install dependencies
pnpm install
# run electron app in dev mode
pnpm dev
If Electron encounters exceptions during startup, you can try using electron-fix:
npm install electron-fix -g
electron-fix start
Before using this software, please read the Privacy Policy & User Agreement.
Please follow these principles before submitting a Pull Request:
Thanks to all contributors:
AGPL-3.0 License
No comments yet. Be the first to share your thoughts!