ChatLab 安装指南:桌面端、CLI 与 Docker 三种部署方式的完整实操
数据分析人工智能AI 应用AI Agent桌面应用CLIMCP 服务AI 技能【免费下载链接】ChatLabLocal-first chat history analyzer with AI. | 本地优先的 AI 聊天记录分析工具项目地址https://gitcode.com/ChatLab/ChatLab点击查看免费下载ChatLab 是一款本地优先Local-first的开源聊天记录分析工具提供桌面应用、CLI 与 Docker 镜像三种安装形态。本文以 docs/en/usage/installation.md 为骨架结合仓库中 apps/cli/package.json、apps/cli/src/cli.ts、apps/cli/src/daemon/service.ts 等源码实现完整讲解三种安装方式、clb web全部启动参数、Unix Socket 与反向代理接入、后台守护进程等实战细节读完即可在自己的机器上完成 ChatLab 的安装与运行。安装方式总览ChatLab 提供了三条安装路径适用场景各不相同安装方式适用场景主要入口桌面应用Desktop普通用户图形界面操作导入文件后直接在界面中分析官网 / GitHub Releases 安装包CLI命令行开发者、脚本调用、AI Agent 集成可通过 HTTP API 提供服务npm install --global chatlab-cliDocker 镜像服务器部署、容器化运行多架构镜像开箱即用ghcr.io/chatlab/chatlab-cli三者共享同一套用户数据目录默认为宿主机的~/.chatlab因此可以按需混用甚至随时切换形态数据无需迁移。安装完成后统一进入 Quick Start 快速上手 完成聊天记录导入与 AI 配置。桌面应用Desktop安装桌面应用是最直接的形态从 ChatLab 官网 或 GitHub Releases 下载对应操作系统的安装包运行安装程序即可。需要特别注意的硬件前提macOS 桌面应用目前仅支持 Apple SiliconM 系列芯片Mac。Intel Mac 用户无法使用桌面应用文档明确建议改用 CLI Web 方式即安装 CLI 后通过clb web启动 Web UI功能不受影响。桌面应用与 CLI / Docker 共享宿主机~/.chatlab数据目录这意味着你可以先用桌面应用导入数据之后再安装 CLI 或 Docker 访问同一份数据。CLI 安装与运行环境要求与安装命令CLI 是 ChatLab 面向开发者和脚本调用的核心形态。从 apps/cli/package.json 的engines字段可以确认CLI 要求 Node.js 22.19 或更高版本node: 22.19.0。npm install --global chatlab-cli安装完成后命令行同时提供两个命令别名。根据 apps/cli/package.json 的bin字段定义chatlab与clb都指向同一个入口bin/chatlab.mjsbin: { chatlab: bin/chatlab.mjs, clb: bin/chatlab.mjs }其中clb是推荐使用的命令chatlab作为兼容旧脚本的别名保留。启动服务clb web 三种模式安装完成后用clb web一条命令即可同时启动 HTTP API 和 Web UIclb web # 启动 API Web UI并自动在浏览器中打开 clb web --no-open # 启动 API Web UI但不自动打开浏览器 clb web --headless # 仅启动 API不提供 Web UI适合脚本 / AI Agent 调用从 apps/cli/src/cli.ts 的web命令定义可以看到clb web还有一个start别名方便记忆。三种模式对应的源码逻辑为默认模式下CLI 会检查dist-cli-web目录是否存在该目录打包了 Web UI 前端资源存在则以webRoot方式同时服务 Web UI并通过openBrowser()调用系统命令打开浏览器macOS 用openWindows 用startLinux 用xdg-open--headless时跳过 Web UI 目录解析仅启动 API 服务启动前会调用isPortAvailable()预检端口占用若端口被占用会直接打印formatPortInUseError提示并退出避免初始化后才发现EADDRINUSE。常用启动参数clb web支持的常用参数如下均来自 apps/cli/src/cli.ts 的web命令选项定义参数说明默认值--port port服务监听端口3110常量DEFAULT_API_PORT定义于 packages/config/src/schema.ts--host address监听地址127.0.0.1--token token自定义 Bearer Token省略时从配置读取或自动生成自动生成--headless仅启动 API不提供 Web UI关闭--require-auth所有路由包括 Web UI 的/_web/*都要求 Bearer Token 认证关闭--no-open不自动打开浏览器自动打开--daemon安装为常驻系统服务macOS / Linux登录自启、崩溃自恢复关闭启动成功后终端会打印访问地址、Token 和调用示例例如Web UI: http://127.0.0.1:3110/ API: http://127.0.0.1:3110 Token: 自动生成的token Example: curl -H Authorization: Bearer token http://127.0.0.1:3110/api/v1/status--token与认证相关的设计在 packages/config/src/schema.ts 的apiConfigSchema中有完整定义port限定为 1~65535 的整数、默认 3110host默认127.0.0.1require_auth默认false。通过 Unix Socket 监听macOS / Linux在 macOS 和 Linux 上可以用--socket path让 ChatLab 监听 Unix Domain Socket 而非 TCP 端口。这种方式特别适合与同一台机器上的反向代理或本地工具通信不暴露 TCP 端口clb web --socket /tmp/chatlab.sock --no-open启动后通过 curl 的--unix-socket参数访问YOUR_TOKEN替换为启动时打印的 Tokencurl --unix-socket /tmp/chatlab.sock -H Authorization: Bearer YOUR_TOKEN http://localhost/api/v1/status也可以把反向代理放在 socket 前面。有两个重要的实践要点跨用户访问权限如果反向代理以不同的 Unix 用户运行需要在 ChatLab 启动后授予代理所属组对 socket 的访问权限sudo chgrp proxy-group /tmp/chatlab.sock sudo chmod 660 /tmp/chatlab.sock注意每次重启后 socket 权限会被重置需要重新执行建议挂在服务管理器的 post-start 钩子中自动执行。当 ChatLab 与代理以同一用户运行时通常无需修改权限。暴露范围控制如果代理可被本地可信机器之外的网络访问请务必用--require-auth启动或在代理层强制认证避免 Web UI 路由和 Token 配置公开暴露。需要留意的是源码中--daemon模式目前不支持与--socket同时使用见 apps/cli/src/cli.ts 中--daemon分支对options.socket的显式报错。以系统服务常驻后台macOS / Linux如果希望 ChatLab 作为后台服务持续运行、开机自启、崩溃自动拉起使用守护进程模式clb web --daemon # 安装为系统服务macOS / Linux登录自启 clb status # 查看服务状态 clb stop # 停止并移除服务从 apps/cli/src/daemon/service.ts 的源码实现可以看到底层机制macOS生成~/Library/LaunchAgents/fun.chatlab.daemon.plist通过launchctl bootstrap/load注册 launchd 服务plist 中设置RunAtLoadtrue登录自启与KeepAlivetrue崩溃恢复标准输出与错误日志统一写入~/.chatlab/logs/daemon.logLinux生成~/.config/systemd/user/chatlab.service通过systemctl --user enable --now启用 systemd 用户服务Unit 中设置Restartalways、RestartSec5实现崩溃自动重启Windows守护进程模式暂不支持需要在前台用clb web运行源码中对 Windows 平台直接打印提示并退出服务的端口、主机信息记录在~/.chatlab/daemon.json供clb status查询。clb status会同时输出日志目录getSystemLogsDir()、服务是否已安装、是否在运行、监听地址以及自启状态clb stop则是--daemon的逆操作负责卸载服务并移除自启配置。Docker 部署对于容器化或服务器部署场景ChatLab 提供官方多架构镜像ghcr.io/chatlab/chatlab-cli支持linux/amd64与linux/arm64Docker 会自动按宿主机架构拉取匹配镜像。完整部署方案数据共享、Compose、环境变量、多架构拉取等见 Docker 部署文档。推荐做法是宿主机目录挂载将宿主机~/.chatlab绑定挂载进容器这样后续再安装桌面应用或本地 CLI 时双方读写的是同一份数据无需任何拷贝。文档特别提示桌面端、CLI、Docker 在同版本下可以共享数据库在切换数据目录、执行迁移或跨版本切换前应先行停止其他 ChatLab 实例兼容性门禁会在旧版本无法安全读取升级后数据时阻止启动。安装后的下一步安装完成后进入 Quick Start 快速上手 完成三件事导入聊天记录拖拽文件导入、接入自动同步或 API 推送、配置 AI 模型、开始用自然语言向聊天记录提问。若使用 Docker建议先阅读 Docker 部署文档 了解数据目录挂载、环境变量优先级与 Compose 示例再继续 Quick Start。赞分享数据分析人工智能AI 应用AI Agent桌面应用CLIMCP 服务AI 技能【免费下载链接】ChatLabLocal-first chat history analyzer with AI. | 本地优先的 AI 聊天记录分析工具项目地址https://gitcode.com/ChatLab/ChatLab点击查看免费下载相关推荐ChatLab 安装指南Desktop、CLI 与 Docker 三种部署方式详解ChatLab 安装指南Desktop、CLI 与 Docker 三种部署方式详解 ChatLab 是一款本地优先的 AI 聊天记录分析工具支持以桌面应用、安装 ChatLabDesktop、CLI 与 Docker 三种部署方式的完整指南安装 ChatLabDesktop、CLI 与 Docker 三种部署方式的完整指南 本篇指南围绕 ChatLab 官方中文安装文档展开系统讲解 Deskt数据分析人工智能AI 应用AI Agent桌面应用CLIMCP 服务AI 技能本地部署如何永久保存微信聊天记录WeChatMsg完整免费指南如何永久保存微信聊天记录WeChatMsg完整免费指南 你是否曾因为手机存储空间不足而不得不删除珍贵的微信聊天记录那些与家人的温馨对话、与朋友的快乐分享、工数据分析人工智能AI 应用AI Agent桌面应用CLIMCP 服务AI 技能本地部署上一篇还在为 eSIM 激活码发愁MiniLPA 桌面管理工具让配置快过扫码下一篇BoostnoteElectron 应用调试实战指南Chrome DevTools 与 VS Code 双路断点调试创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考