ChatLab — Chat History Analyzer
Local-first AI chat history analysis tool that puts your conversations back in your hands.
Evidence: README claims local-first and no mandatory cloud upload, but no implementation details; tests show render_chart tool is read-only, but no user confirmation mechanism; data flow transparency is only declarative; sensitive data handling (chat records) lacks encryption or anonymization; dependency security: versions are recent but no vulnerability scan or lockfile details; external effects: CLI starts local service but no permission boundaries; rollback absent; source attribution: author info present but publisher unverified. Deductions: lack of user confirmation, rollback, data flow transparency only declarative, sensitive data handling not concrete.
Evidence: README and package.json consistent; tests show integration tests but no full suite results; dependency availability: Node version specified but not all dependencies' availability; failure messages: assertions in tests but no user-friendly error messages. Deductions: dependency availability not fully verified, failure messages only at test level.
Evidence: README defines target users and scenarios, supports multiple platforms; capability boundaries: lists supported platforms but not AI tool limitations; trigger precision: CLI commands have clear parameters but no detailed trigger conditions; environment fit: desktop and CLI supported but not all OS details. Deductions: capability boundaries and trigger precision not detailed.
Evidence: README structure clear with installation, usage, architecture; install notes detailed; naming: project and package names consistent but version not mentioned in README; examples and FAQ: quick start and troubleshooting links but no full examples in repo; known limitations: upcoming platforms mentioned but not other limitations; license AGPL-3.0; versioning changelog: changelogs directory exists but not explicit in README; maintenance responsibility: contribution guide but no maintainer clarity. Deductions: naming stability, known limitations, maintenance responsibility not clear.
Evidence: output usability: visual views and CLI output but no specific output format; marginal value: AI analysis adds value but no comparison; cost benefit: open source free but no performance data. Deductions: cost benefit lacks data.
Evidence: README claims (e.g., local-first) partially supported by tests (e.g., read-only test), but no full traceability; cross-source verification absent; fact vs inference: claims are mostly inference, not clearly separated. Deductions: claim traceability insufficient, cross-source verification missing.
- Publisher identity unverified; proceed with caution.
- Data flow transparency and sensitive data handling are only declarative; inspect actual code.
- No user confirmation or rollback mechanisms; may affect data safety.
- Dependency security lacks vulnerability scanning info; check dependency versions.
What does this agent do, and when should you use it?
ChatLab is an open-source desktop app for understanding your social conversations. It combines a flexible SQL engine with AI agents to explore patterns, ask better questions, and extract insights from chat data, all on your own machine. It supports WhatsApp, LINE, QQ, Discord, Instagram, Telegram, iMessage, and Google Chat, with Messenger and KakaoTalk on the roadmap. Data stays local by default, and no raw conversations are uploaded to the cloud. Its AI features use an Agent + Function Calling workflow with 24+ tools for search, summarization, and analysis. The app provides insight-rich visual views for trends, time patterns, interaction frequency, rankings, and more. It normalizes different export formats into a unified model for consistent analysis. Both a desktop app and a CLI are available.
ChatLab provides both a desktop app (Electron-based) and a CLI. The CLI command chatlab start launches the API and Web UI, with options like --no-open and --headless for scripting. It reads chat export files from supported platforms, performs format detection, stream parsing, local persistence, then SQL and AI query stages, and finally visualizes results using the Web UI. The core operation involves a flexible SQL engine for custom queries and an AI agent system with 24+ tools that can search, summarize, and analyze chat records with context. It supports cross-platform normalization by mapping different export formats into a unified model. The CLI can run as a persistent background service using chatlab start --daemon, with chatlab status and chatlab stop for management. The data flow is: format detection → stream parsing → local persistence → SQL + AI query → visualization.
- A social media researcher analyzing millions of WhatsApp or Telegram messages to identify interaction patterns and trends.
- An individual seeking to understand their own chat history, such as frequency of interactions and active hours with friends.
- A customer support team extracting common issues and feedback from Discord or Instagram chat logs.
- A data analyst who wants to run custom SQL queries on their chat data and combine them with AI-powered summaries.
- A privacy-conscious user analyzing chat records locally without uploading data to the cloud.
What are this agent's strengths and limitations?
- Local-first design keeps chat data on-device by default, enhancing privacy.
- Supports a wide range of chat platforms with unified data normalization.
- Combines a flexible SQL engine with AI tools for powerful, flexible analysis.
- Stream parsing and multi-worker processing handle million-message scales smoothly.
- AGPL-3.0 license may not suit certain commercial use cases.
- CLI requires Node.js 20+, and development requires Node.js 24 and pnpm 9, which can be a high setup bar.
- AI features depend on external model providers, potentially incurring API costs.
- Messenger and KakaoTalk are not yet supported, limiting coverage.
How do you install or deploy this agent?
Desktop app: download the installer for your OS from the official website (https://chatlab.fun/) or GitHub Releases, then double-click to install. CLI: ensure Node.js >= 20, then run npm i chatlab-cli -g. For development, use Node.js >= 24 < 25 and pnpm >= 9 < 10, then pnpm install and pnpm dev.
How do you use this agent?
CLI usage: run chatlab start to start the API + Web UI and auto-open in the browser; use chatlab start --no-open to skip auto-open; use chatlab start --headless for API only. Common options: --port <port> (default 3110), --host <address>, --token <token>. To run as a persistent background service (auto-start on login + auto-restart on crash), use chatlab start --daemon (macOS/Linux), then chatlab status and chatlab stop. The desktop app allows importing chat export files directly and following the guided setup.