ChatLab 变更履历全解析:从 AI 工具链、CLI/MCP 到 Docker 部署的演进路线 【免费下载链接】ChatLabLocal-first chat history analyzer with AI. | 本地优先的 AI 聊天记录分析工具项目地址https://gitcode.com/gh_mirrors/cha/ChatLab点击查看免费下载ChatLab 是一款本地优先的 AI 聊天记录分析工具其多语言变更履历changelogs/ja.md与 中文版、英文版、繁体版 内容对齐忠实记录了项目从 v0.1.0 到 v0.37.4 的完整演进AI 对话与工具系统、聊天记录导入解析、CLI/Web/MCP 多端架构、语义索引与证据检索、Docker 部署等能力逐步落地并持续加固。阅读本文你可以把这份履历当作一张能力地图快速定位某个功能如 AI 上下文压缩、Unix Domain Socket 启动、数据目录兼容门禁是在哪个版本引入、为何引入、底层由哪些代码支撑从而更高效地使用或二次开发 ChatLab。一、变更履历的生成机制与阅读方法仓库中的多语言履历并非手工维护的孤立文件而是由 scripts/changelog-to-markdown.mjs 从changelogs/{cn,en,tw,ja}.json全量渲染生成的脚本对每种语言分别读取同名 JSON、按## vX.Y.Z (日期)→ 摘要→### 分类标题→- 条目的结构输出 Markdown并保证md 始终与 json 保持一致。分类标题由变更类型查表映射例如feat在日语中渲染为✨ 新機能、fix渲染为 バグ修正其余依次对应♻️ リファクタリング、⚡ パフォーマンス、 ドキュメント、 CI、 雑務等每个条目可附带贡献者署名。v0.24.0 起还加入了从多语言版本日志生成 Markdown的自动化能力。因此阅读changelogs/ja.md时应抓住三条主线AI 能力线工具调用、上下文、记忆、图表、架构线CLI/Web/MCP/Docker 多端统一、数据安全线导入去重、数据目录迁移、兼容门禁。下文按这三大主题展开并在关键节点给出仓库内的源码佐证。二、AI 工具链与对话体验的持续演进2.1 工具调用从单轮到并行从丢结果到完整重放早期版本v0.4.0为节省 Token 精简了系统提示词并加入会话相关的 function callingv0.13.0 引入 Assistant 模式与技能市场v0.15.0 让搜索工具支持上下文自动交接。此后工具系统的重心转向稳定性v0.36.1互不依赖的只读工具支持并行执行复杂分析耗时显著缩短聊天证据检索会实时展示能力检查、语义检索、关键词检索、证据整理的进度。v0.37.1修复工具调用达到轮次上限后最终回答重复生成、工具错误被记为成功、上下文重复写入三类问题。v0.37.2AI 回复中途截断或手动停止后已生成内容与 Token 用量不再丢失可保存后继续对话停止请求后上下文压缩不再继续执行避免多余的模型调用与摘要写入。v0.37.3【CLI】续聊时保留已完成工具调用的结果与错误状态后续问题拥有完整工具历史。v0.37.4多轮或并行工具调用的结果不再无限累积——按请求裁剪工具结果并保留完整对话记录防止超出模型上下文上限。实现层面工具注册与多端统一在openchatlab/tools包中MCP 服务器通过 packages/mcp-server/src/server.ts 的MCP_TOOL_REGISTRY批量注册并统一加chatlab_前缀CLI 的对话命令 apps/cli/src/cli.ts 通过--include-events可输出完整 Agent 流式事件。工具说明还经历了多语言化v0.37.3 统一 Desktop、CLI Web、MCP 的语言处理并在 v0.37.4 补齐了词频与回复速度分析工具的英文时间参数说明。2.2 上下文管理自动压缩、缓存与 Token 统计v0.19.0引入 AI 上下文自动压缩支持模型上下文窗口的预设与自定义配置并改进压缩流程与状态显示。v0.22.1会话摘要新增简洁 / 标准两种详细程度策略可在 AI 设置中切换。v0.26.1聊天状态栏展示 Token 缓存命中/未命中用量工具调用记录支持持久化与重放多轮 AI 上下文保持完整历史压缩时正确计入重放工具结果的 Token 数。v0.26.3分析结果以数据库文件版本为键落盘缓存二次加载大幅提速切换会话或过滤条件时自动取消过期请求。v0.35.0按模型上下文容量自动压缩 AI 对话历史长对话可在桌面端、CLI Web、Web WASM 持续进行并强化容量判定与失败回退避免切换小上下文模型后因历史过长而请求失败。值得注意的是 v0.24.0 提到压缩主进程构建产物并延迟加载 tiktoken rank table降低启动与打包体积压力——这与 Token 计算的底层实现直接相关。2.3 语义索引与证据检索v0.27.0引入向量索引与证据检索新增retrieve_chat_evidence工具AI 通过语义搜索获取带时间定位的聊天证据规划器自动识别证据类问题并路由到语义检索工具支持时间范围过滤、证据块展开折叠与点击跳转原文。v0.27.1API Provider 批量嵌入大幅提升索引构建速度本地嵌入模型改为惰性 Worker 加载减少启动资源占用修复断点续跑的唯一约束错误与 Worker 提前关闭等问题。v0.28.0模型配置保存时自动预载并移除搜索结果数量配置项改用内部默认值。v0.34.2 / v0.30.2本地模型增加多个下载源提升获取成功率对超长内容和发送者名做预算内截断避免 embedding 输入过长失败。2.4 规划器、图表与记忆v0.26.0新增 AI 分析规划器支持流式结构化计划生成与区块渲染图表规划可自动衔接图表渲染优先使用高层工具而非原始 SQL 以降低权限要求。v0.25.0 / v0.23.0AI 对话支持通过技能生成并渲染 ECharts 图表消息派生Fork功能允许从任意 AI 回复处创建独立分支。v0.36.0 / v0.37.0聊天记忆新增 AI 话题总结按自然日批量或单日生成并联动高亮新增跨对话全局 AI 分析与长期记忆——跨联系人与群聊检索、比较活动与互动记忆可按问题自动调用并关联来源消息便于回到原对话核验。履历同时明确提示跨对话分析仍属实验性功能后续版本会继续完善。2.5 分析统计的准确性与多语言适配履历中大量条目在打磨统计准确性v0.37.2 让词频与语言偏好分析识别抖音表情代码避免表情名混入高频词v0.37.1 将系统通知与分享占位符排除出词频/语言偏好/口头禅统计同时保留用户表情内容并把语音转写内容纳入分析对象v0.37.3 修复词频与回复速度分析忽略所选时间范围的问题明确提问指定时间 页面筛选 默认范围的优先级并补齐语言偏好卡片缺失的日语标签。三、多端架构Desktop、CLI Web、MCP 与 Docker3.1 从单体到工作区v0.20.0 的多端重构v0.20.0 是一次里程碑式重构项目迁移为 pnpm workspace 多端结构apps/desktop、apps/cli与多个共享packages将解析器、配置、数据库适配、查询、迁移、NLP、导入、合并、导出、同步以及 AI Agent/工具系统/上下文压缩/RAG/LLM 配置全部抽取为共享模块并统一 Electron、CLI Web、MCP 的 AI 工具命名、注册与数据访问方式。该版本同时提示使用 CLI 前必须先升级至此版本以完成数据预迁移。此后 v0.24.0 抽取openchatlab/http-routes共享包统一 HTTP 路由v0.31.3 进一步统一 Desktop 与 CLI Web 的 HTTP 服务、错误模型和 JSON Push 协议。3.2 CLI 命令体系clb 与 clb web从 v0.23.0 起 CLI 提供统一启动命令clb web支持--headless、--no-openv0.23.1 增加短别名clb。结合 apps/cli/src/cli.ts 的源码当前命令体系包括命令用途clb web别名start启动 HTTP API Web UI默认端口 3110默认仅监听 127.0.0.1支持--port、--host、--socket、--token、--headless、--require-auth、--no-open、--daemonclb chat终端内与 AI 多轮对话支持--session-id、--ai-chat-id、-q/--question、--json、--include-events、--no-stream、--locale默认 zh-CNclb mcp以 stdio 传输启动 MCP Server供 ClaudeCode、Cursor 等 AI Agent 调用clb config path/show/set配置管理例如clb config set cli.allow_raw trueclb formats列出所有支持的聊天记录格式clb update/clb stop/clb status自更新、驻留服务卸载与状态查看启动前会预检端口占用v0.23.1避免延迟报错clb web --daemon可安装为 macOS/Linux 常驻服务stop/status用于卸载与查看。面向外部 Agent 的查询命令sessions/members/messages/stats/topics/sql注册于apps/cli/src/query/并在 v0.30.0 提供chatlab-analyze技能入口。3.3 MCP Server为 AI Agent 打开数据访问通道v0.21.0 正式引入 MCP新增独立命令入口、设置页接入 MCP 配置Server 工具扩展到 19 个并支持紧凑文本与 JSON 双格式输出同时瘦身对外工具注册表、把核心能力抽取为独立共享包。从 packages/mcp-server/src/server.ts 可见其实现要点工具统一以chatlab_前缀注册list_sessions之外的每个工具都要求session_id参数execute_sql、get_schema默认返回 JSON其余默认返回紧凑文本可通过format: text | json切换。除工具外还暴露三类资源chatlab://sessions会话列表、chatlab://sessions/{sessionId}/meta元信息与概览、chatlab://sessions/{sessionId}/schema数据库表结构均以 JSON 呈现。v0.25.1 起 MCP 在启动时校验数据目录兼容版本不满足则提前退出避免写入不兼容数据。3.4 Docker 部署镜像、数据挂载与安全默认值v0.33.0 起提供linux/amd64与linux/arm64双架构的ghcr.io/chatlab/chatlab-cli镜像CI 详情见 v0.33.0 与 v0.37.4完整部署指南见 docs/cn/usage/docker.md。镜像默认命令为clb web --no-open --host 0.0.0.0并预装本地向量模型运行组件与默认简体中文分词词典位于/opt/chatlab/nlp由CHATLAB_NLP_DICT_DIR指向首次启动无需下载约 370 MB 的 Node 依赖或词典。推荐的本地共享数据启动方式macOS/Linuxmkdir -p $HOME/.chatlab $HOME/Downloads docker run --name chatlab \ -p 127.0.0.1:3110:3110 \ --user $(id -u):$(id -g) \ --mount typebind,source$HOME/.chatlab,target/home/node/.chatlab \ --mount typebind,source$HOME/Downloads,target/home/node/Downloads \ -e HOME/home/node \ -e CHATLAB_DATA_DIR/home/node/.chatlab/data \ ghcr.io/chatlab/chatlab-cli:latest镜像以非特权node用户UID/GID 1000运行--user让容器进程使用宿主机当前用户身份CHATLAB_DATA_DIR把用户数据固定到容器可访问的路径避免宿主机config.toml中的绝对路径在容器内失效。这样 Desktop、CLI、Docker 可以共享~/.chatlab双向切换都无需复制数据。若在服务器部署或需隔离数据可改用 named volume配置优先级为CHATLAB_*环境变量 ~/.chatlab/config.toml或 config.json 内置默认值。安全方面默认仅将端口暴露到127.0.0.1--require-auth可让 Web UI 路由同样要求 Bearer 认证v0.24.0 引入该参数Compose 部署示例中 Token 通过未跟踪的.env注入。四、数据安全导入去重、迁移保护与兼容门禁4.1 导入解析的广度与稳定性格式覆盖WhatsAppv0.1.1/v0.17.0、旧版 QQ txtv0.1.1、Discordv0.3.1、LINEv0.9.1、Telegramv0.11.0、Instagramv0.5.0、QQ Shuakami / QQ Chat Exporterv0.34.2、Google Chatv0.28.0、WeFlow、Echotrace 等v0.30.2 为 ChatLab JSON 引入Rust 原生解析内核导入速度提升 10 倍以上。增量与去重v0.31.0 起支持自动会话匹配与自动增量导入CLI、桌面端同步支持v0.34.3 修复 QQ 导入在 UID/UIN 变化、缺失 owner、合并会话下的匹配与成员映射问题v0.37.0 修复 WeFlow 与缺少稳定消息 ID 的记录在增量导入/合并时过度去重的问题v0.34.2 为多文件导入加入安全并发调度避免同一会话并发写入。兼容细节v0.34.2 忽略 macOS 生成的._*.dbAppleDouble 伴随文件v0.34.1 支持 QQ Chat Exporter 新版 chunked JSONL 与官方示例的跨时区校正、失败回滚。4.2 数据目录迁移与删除保护v0.32.0 起迁移后保留旧数据并提示人工确认清理防止误删源文件v0.33.0 拒绝新旧目录相互嵌套或指向同一路径v0.34.2 强化配置迁移与旧目录清理保护避免并发迁移覆盖认证配置或误删仍在使用中的目录。桌面端在 v0.36.1 修复导出/删除会话后数据库句柄未释放、导致 Windows 必须重启才能删除文件的问题。4.3 数据目录兼容门禁v0.25.1当数据目录写入 v6 schema 后会自动记录最低可读写运行时版本数据库访问前、Desktop 启动时、CLI 启动时、MCP 启动时均校验该版本不满足则拒绝访问或提前退出。桌面端 HTTP API 将门禁错误映射为 409 响应便于前端展示升级提示。与之配套的还有CHATLAB_ALLOW_INCOMPATIBLE_DATA_DIR1这一仅用于紧急恢复的旁路环境变量见 Docker 文档中的运行时变量表。这套机制与 packages/core/src/version.ts 等版本管理模块共同保证了多版本共享数据目录时不会发生数据覆盖。五、隐私、安全与可观测性要点日志安全v0.34.1 起 AI 对话不再把用户消息正文写入日志v0.28.0 引入统一应用日志模块支持按文件大小自动轮转与全局未捕获错误记录日志统一位于~/.chatlab/logs/app.log见 apps/cli/src/cli.ts 的initAppLogger(getSystemLogsDir())。下载安全v0.37.2 修复下载接口文件名校验防止文件被写入下载目录之外。匿名统计v0.34.2 新增隐私友好的匿名产品统计仅上报白名单内的运行环境与功能使用事件。应用锁v0.32.0 桌面端支持密码、即时锁定、启动时解锁、闲置自动锁定并加入失败次数限制与冷却时间。密钥保护v0.9.4 起 API Key 支持本地加密保存。网络代理v0.28.1 修复本地语义索引模型下载未正确使用代理的问题系统代理解析覆盖 HTTP、HTTPS 与 SOCKS。诊断体验v0.37.4 会话列表加载失败时完整展示错误详情并在应用日志保留完整堆栈便于排查升级后的权限问题。六、版本演进速查值得关注的里程碑版本关键能力v0.9.4API Key 本地加密保存v0.13.0Assistant 模式、技能市场、繁体中文与日语本地化v0.17.0WhatsApp V2 灵活时间戳解析、指定格式导入v0.19.0AI 上下文自动压缩v0.20.0多端工作区重构Desktop/CLI/共享 packages、Web 一键启动v0.21.0MCP 支持19 个工具v0.23.0消息 Fork、推理等级按模型配置、clb webv0.24.0CLI Web Token 认证、数据目录迁移、共享 HTTP 路由v0.25.1数据目录兼容门禁、clb chatv0.26.0AI 分析规划器、图表规划集成v0.27.0语义索引与证据检索v0.30.2ChatLab JSON Rust 原生解析导入提速 10 倍以上v0.33.0Docker 部署、纯浏览器本地分析版v0.35.0群聊 3D 星空图、按模型容量自动压缩历史v0.36.0足迹-时间投入、聊天记忆 AI 话题总结v0.37.0全局 AI 分析、长期记忆、Unix Domain Socket 启动七、结语通过changelogs/ja.md以及与其同源的 cn/en/tw 版本可以清晰看到 ChatLab 的演进逻辑先夯实导入解析与数据安全底座再以统一的多端架构承接 AI 能力最后围绕上下文、工具与记忆打磨对话质量。如果你正在评估或使用 ChatLab建议按数据目录兼容门禁 → 多端共享数据 → AI 配置与语义索引 → Agent/MCP 接入的顺序落地若需进一步深入源码可从 apps/cli/src/cli.tsCLI 命令体系、packages/mcp-server/src/server.tsMCP 工具与资源、scripts/changelog-to-markdown.mjs履历生成机制三个入口开始。赞分享【免费下载链接】ChatLabLocal-first chat history analyzer with AI. | 本地优先的 AI 聊天记录分析工具项目地址https://gitcode.com/gh_mirrors/cha/ChatLab点击查看免费下载相关推荐Mastra CLI 完全解读从项目初始化到云端部署的 TypeScript AI 工具链演进Mastra CLI 完全解读从项目初始化到云端部署的 TypeScript AI 工具链演进 本篇以 Mastra 仓库中 packages/cli/CHA人工智能Agent 框架AI AgentRAG后端SFML 3.x 版本演进全解析从 3.1.0 新特性到历代变更路线图SFML 3.x 版本演进全解析从 3.1.0 新特性到历代变更路线图 导读 本文以仓库根目录的 changelog.md https://link.gitc图形学音视频游戏开发x402.mcp 变更日志全解Python MCP 集成从首次发布到全量功能的演进路线x402.mcp 变更日志全解Python MCP 集成从首次发布到全量功能的演进路线 本文以 x402 的 MCP 集成变更日志 https://link.后端金融科技区块链API设计上一篇SO-ARM100花 $122 打印一台能抓东西的 SO-101 开源机械臂下一篇Open-Sora 2.0 图生视频单卡实战指南60 秒跑出你的第一条 256px 视频创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考