From 4df938a152444ce14cb87d43b51dcfeef83bc7f7 Mon Sep 17 00:00:00 2001 From: digua Date: Thu, 12 Mar 2026 21:14:39 +0800 Subject: [PATCH] docs: update --- README.ja-JP.md | 99 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 20 +--------- README.zh-CN.md | 8 ++-- README.zh-TW.md | 99 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 204 insertions(+), 22 deletions(-) create mode 100644 README.ja-JP.md create mode 100644 README.zh-TW.md diff --git a/README.ja-JP.md b/README.ja-JP.md new file mode 100644 index 0000000..6cd3e1b --- /dev/null +++ b/README.ja-JP.md @@ -0,0 +1,99 @@ +
+ +ChatLab + +AI Agent でチャット履歴をローカル分析し、あなたのソーシャルな記憶を掘り起こす + +[English](./README.md) | [简体中文](./README.zh-CN.md) | [繁體中文](./README.zh-TW.md) | 日本語 + +[公式サイト](https://chatlab.fun/ja/) · [ダウンロードガイド](https://chatlab.fun/ja/?type=download) · [ドキュメント](https://chatlab.fun/ja/usage/) · [Roadmap](https://chatlabfun.featurebase.app/roadmap) · [Issue](https://github.com/hellodigua/ChatLab/issues) + +
+ +ChatLab は、チャット履歴を深く理解するためのローカル完結型アプリです。AI Agent と柔軟な SQL エンジンを組み合わせることで、会話データを自由に調べ、分解し、新しい視点で読み解けます。 + +現在対応:WhatsApp、LINE、QQ、Discord、Instagram、Telegram。今後対応予定:iMessage、Messenger、KakaoTalk。 + +## 主な機能 + +- 🚀 **大規模データでも快適**:ストリーミング処理とマルチワーカー構成により、数百万件規模の履歴でも安定して取り込みと分析を行えます。 +- 🔒 **プライバシーを優先**:チャット履歴と設定はローカルに保持され、分析も基本的に端末上で完結します(AI 機能を除く)。 +- 🤖 **実データを扱える AI Agent**:10 以上の Function Calling ツールを備え、文脈に応じて動的に呼び分けながら履歴を掘り下げます。 +- 📊 **多面的な可視化**:アクティブ度の推移、時間帯の傾向、メンバーランキングなどを分かりやすく確認できます。 +- 🧩 **形式差分を吸収する標準化**:異なるチャットアプリのエクスポート形式を統一モデルに変換し、同じ視点で比較・分析できます。 + +## ガイド + +- [ChatLab ダウンロードガイド](https://chatlab.fun/ja/?type=download) +- [チャット履歴の書き出しガイド](https://chatlab.fun/ja/usage/how-to-export.html) +- [標準フォーマット仕様](https://chatlab.fun/ja/standard/chatlab-format.html) +- [トラブルシューティング](https://chatlab.fun/ja/usage/troubleshooting.html) + +## プレビュー + +その他の画面は公式サイト [chatlab.fun](https://chatlab.fun/ja/) を参照してください。 + +![Preview Interface](/public/images/intro_en.png) + +## システムアーキテクチャ + +### 設計原則(Architecture Principles) + +- **Local-first by default**:生のチャット履歴、インデックス、設定は原則として端末内に保持し、プライバシー境界を優先します。 +- **Streaming over buffering**:ストリーミング解析と増分処理を中心に据え、大きなエクスポートでも安定した処理性能を保ちます。 +- **Composable intelligence**:AI 機能は Agent + Tool Calling の組み合わせで構成し、単一モデルの固定ロジックに閉じません。 +- **Schema-first evolution**:統一データモデルを軸に取り込み、検索、分析、可視化を設計し、将来の拡張を進めやすくします。 + +### 実行時アーキテクチャ(Runtime Architecture) + +- **Main Process(制御層)**:`electron/main/index.ts` がライフサイクルとウィンドウを管理し、`electron/main/ipc/` がドメイン別 IPC を提供します。`electron/main/ai/` と `electron/main/i18n/` は AI と多言語化の基盤です。 +- **Worker Layer(計算層)**:`electron/main/worker/` が `workerManager` を通じて取り込み、索引作成、検索処理を分離し、UI スレッドの負荷を抑えます。 +- **Renderer Layer(表示・操作層)**:Vue 3 + Nuxt UI + Tailwind CSS を基盤に、管理画面、個別チャット、グループチャット、分析画面を構成します。`electron/preload/index.ts` から限定的な API を公開し、安全な境界を保ちます。 + +### データパイプライン(Data Pipeline) + +1. **取り込み**:`parser/` が形式を判定し、対応するパーサーに処理を振り分けます。 +2. **保存**:ストリーミング書き込みで、セッション、メンバー、メッセージなどの主要データをローカルに保存します。 +3. **索引作成**:セッション軸と時間軸の索引を生成し、タイムライン表示や検索を支えます。 +4. **検索と分析**:`worker/query/*` がアクティブ度分析、関係性分析、SQL Lab、AI 補助分析を支えます。 +5. **表示**:レンダラー側で結果をグラフ、ランキング、タイムライン、対話型分析に変換します。 + +## ローカル開発 + +### 必要環境 + +- Node.js >= 20 +- pnpm + +### セットアップ + +```bash +# 依存関係をインストール +pnpm install + +# 開発モードで起動 +pnpm dev +``` + +Electron の起動時に例外が発生する場合は、`electron-fix` を試してください。 + +```bash +npm install electron-fix -g +electron-fix start +``` + +## コントリビューション + +Pull Request を送る前に、次の方針を確認してください。 + +- 明らかなバグ修正はそのまま提出して構いません +- 新機能は先に Issue で相談してください。**事前の議論がない PR はクローズされます** +- 1 つの PR は 1 つの目的に絞り、変更が大きい場合は分割を検討してください + +## プライバシーポリシーと利用規約 + +利用前に [プライバシーポリシーと利用規約](./src/assets/docs/agreement_ja.md) を確認してください。 + +## License + +AGPL-3.0 License diff --git a/README.md b/README.md index a5c6001..acb127d 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,9 @@ ChatLab -Turn messy chat exports into clear, local-first insights. +Rediscover your social memories with private, AI-powered analysis. -English | [简体中文](./README.zh-CN.md) +English | [简体中文](./README.zh-CN.md) | [繁體中文](./README.zh-TW.md) | [日本語](./README.ja-JP.md) [Official Website](https://chatlab.fun/) · [Download](https://chatlab.fun/?type=download) · [Documentation](https://chatlab.fun/usage/) · [Roadmap](https://chatlabfun.featurebase.app/roadmap) · [Issue Submission](https://github.com/hellodigua/ChatLab/issues) @@ -84,22 +84,6 @@ pnpm install pnpm dev ``` -### Common Scripts - -```bash -# type checks (web + node) -pnpm type-check:all - -# lint and auto-fix -pnpm lint - -# format files -pnpm format - -# build app -pnpm build -``` - If Electron encounters exceptions during startup, you can try using `electron-fix`: ```bash diff --git a/README.zh-CN.md b/README.zh-CN.md index aa8b04e..3c3fad8 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -2,17 +2,17 @@ ChatLab -本地化的聊天记录分析工具,通过 SQL 和 AI Agent 回顾你的社交记忆 +本地化的聊天记录分析工具,通过 AI Agent 回顾你的社交记忆 -[English](README.md) | 简体中文 +[English](./README.md) | 简体中文 | [繁體中文](./README.zh-TW.md) | [日本語](./README.ja-JP.md) [官网](https://chatlab.fun/cn/) · [下载指南](https://chatlab.fun/cn/?type=download) · [项目文档](https://chatlab.fun/cn/usage/) · [路线图](https://chatlabfun.featurebase.app/roadmap) · [问题提交](https://github.com/hellodigua/ChatLab/issues) -ChatLab 是一个专注于社交记录分析的本地化应用。通过 AI 智能体和灵活的 SQL 引擎,你可以自由地拆解、查询甚至重构你的聊天记录数据。 +ChatLab 是一个专注于社交记录分析的本地化应用。通过 AI Agent和灵活的 SQL 引擎,你可以自由地拆解、查询甚至重构你的聊天记录数据。 -目前已支持: WhatsApp、LINE、微信、QQ、Discord、Instagram、Telegram的聊天记录分析,即将支持: iMessage、Messenger、Kakao Talk。 +目前已支持: WhatsApp、LINE、QQ、Discord、Instagram、Telegram的聊天记录分析,即将支持: iMessage、Messenger、Kakao Talk。 ## 核心特性 diff --git a/README.zh-TW.md b/README.zh-TW.md new file mode 100644 index 0000000..148b320 --- /dev/null +++ b/README.zh-TW.md @@ -0,0 +1,99 @@ +
+ +ChatLab + +在本機分析聊天記錄,透過 AI Agent 重新看見你的社交記憶 + +[English](./README.md) | [简体中文](./README.zh-CN.md) | 繁體中文 | [日本語](./README.ja-JP.md) + +[官網](https://chatlab.fun/tw/) · [下載指南](https://chatlab.fun/tw/?type=download) · [使用文件](https://chatlab.fun/tw/usage/) · [Roadmap](https://chatlabfun.featurebase.app/roadmap) · [問題回報](https://github.com/hellodigua/ChatLab/issues) + +
+ +ChatLab 是一款專注於社交記錄分析的本機應用。結合 AI Agent 與靈活的 SQL 引擎,你可以更自由地拆解、查詢,甚至重新理解自己的聊天資料。 + +目前已支援:WhatsApp、LINE、QQ、Discord、Instagram、Telegram 的聊天記錄分析;即將支援:iMessage、Messenger、KakaoTalk。 + +## 核心特色 + +- 🚀 **高效處理大型資料**:採用串流計算與多執行緒架構,就算是百萬筆聊天記錄,依然能保持流暢的匯入與分析體驗。 +- 🔒 **預設重視隱私**:聊天記錄與設定都保留在本機,分析流程也以本地執行為主(AI 功能除外)。 +- 🤖 **可實際操作資料的 AI Agent**:內建 10+ 個 Function Calling 工具,可依任務動態調度,深入挖掘聊天脈絡與重點。 +- 📊 **多維度視覺化分析**:提供活躍度趨勢、時段分布、成員排行等多種圖表與分析視角。 +- 🧩 **統一資料格式**:透過穩定的資料抽象層,抹平不同聊天平台的匯出差異,分析流程更一致。 + +## 使用指南 + +- [下載 ChatLab 指南](https://chatlab.fun/tw/?type=download) +- [匯出聊天記錄指南](https://chatlab.fun/tw/usage/how-to-export.html) +- [標準化格式規範](https://chatlab.fun/tw/standard/chatlab-format.html) +- [疑難排解指南](https://chatlab.fun/tw/usage/troubleshooting.html) + +## 預覽畫面 + +更多畫面請前往官網 [chatlab.fun](https://chatlab.fun/tw/) + +![預覽畫面](/public/images/intro_zh.png) + +## 系統架構 + +### 架構原則(Architecture Principles) + +- **Local-first by default**:原始聊天記錄、索引與設定預設留在本機,優先守住隱私邊界。 +- **Streaming over buffering**:以串流解析與增量處理為核心,在大型匯出檔案下依然維持穩定吞吐。 +- **Composable intelligence**:AI 能力透過 Agent + Tool Calling 組合,不把業務邏輯硬寫死在單一路徑。 +- **Schema-first evolution**:圍繞統一資料模型設計匯入、查詢、分析與視覺化,降低後續演進成本。 + +### 執行期架構(Runtime Architecture) + +- **Main Process(控制層)**:`electron/main/index.ts` 負責生命週期與視窗;`electron/main/ipc/` 提供分域 IPC;`electron/main/ai/` 與 `electron/main/i18n/` 提供 AI 與國際化基礎能力。 +- **Worker Layer(計算層)**:`electron/main/worker/` 透過 `workerManager` 調度任務,隔離匯入、索引與查詢等高負載工作,降低 UI 阻塞風險。 +- **Renderer Layer(互動層)**:基於 Vue 3 + Nuxt UI + Tailwind CSS,承載管理、私聊、群聊與分析視圖;透過 `electron/preload/index.ts` 暴露受控 API,確保渲染層與主進程隔離。 + +### 資料流程(Data Pipeline) + +1. **匯入接入**:`parser/` 先偵測格式,再交由對應解析器執行標準化轉換。 +2. **資料落盤**:以串流方式寫入本機資料庫,建立會話、成員、訊息等核心實體。 +3. **索引建立**:依據會話與時間維度建立分析索引,支撐時間線與檢索能力。 +4. **查詢與分析**:`worker/query/*` 提供活躍度、互動關係、SQL Lab 與 AI 檢索等查詢能力。 +5. **結果呈現**:渲染層把查詢結果轉成圖表、排行、時間線與對話式分析體驗。 + +## 本機開發 + +### 環境需求 + +- Node.js >= 20 +- pnpm + +### 啟動方式 + +```bash +# 安裝依賴 +pnpm install + +# 啟動開發模式 +pnpm dev +``` + +若 Electron 啟動時發生異常,可嘗試使用 `electron-fix`: + +```bash +npm install electron-fix -g +electron-fix start +``` + +## 貢獻指南 + +提交 Pull Request 前請遵循以下原則: + +- 明顯的 Bug 修復可直接提交 +- 新功能請先提交 Issue 討論,**未經討論直接提交的 PR 會被關閉** +- 一個 PR 盡量只處理一件事;若改動較大,建議拆分成多個獨立 PR + +## 隱私權政策與使用者協議 + +使用本軟體前,請先閱讀 [隱私權政策與使用者協議](./src/assets/docs/agreement_zh_tw.md) + +## License + +AGPL-3.0 License