Neo Chat 是什么:本地优先的开源 AI 聊天工作台
Neo Chat 是一个本地优先(local-first)的开源 AI 聊天工作台:多模型聊天、Agent 多步工具工作流、Deep Research 深度研究装进同一个可自托管的 Web 界面,MIT 协议,GitHub 约 1800 star(2026-09 查询为 1816)。对话和文件默认存在你自己的浏览器里,模型接的是你自己的 API Key,支持 Google、OpenAI、Anthropic 和 OpenAI 兼容端点(来源:官方 README)。适合在意数据归属、想自带 Key、需要知识库和 Agent 能力的开发者与小团队。官方定位浓缩在 README 首页 slogan:“Your models. Your knowledge. Your workspace.”
和普通 chat UI 的差别:数据、模型、部署三件事
普通聊天应用把”界面”给你,Neo Chat 把”工作台”给你——数据默认留在浏览器、模型自带 Key、整套东西可部署到你自己的服务器上。对话和工作区文件默认留在浏览器存储,备份是 ZIP 导出导入,同步可选,走 WebDAV 或 S3/MinIO 且端到端加密。
| 对比维度 | 托管型聊天应用的通常做法 | Neo Chat(官方 README 事实) |
|---|---|---|
| 数据存放 | 服务端数据库 | 浏览器本地存储为默认 |
| 模型接入 | 平台内置或订阅制 | Google / OpenAI / Anthropic / OpenAI 兼容端点,自带 API Key |
| 部署方式 | 平台托管 | Docker、Vercel、Cloudflare Workers 均可自托管 |
| 备份与迁移 | 平台账号体系内 | ZIP 备份恢复 + 端到端加密同步 |
| 扩展能力 | 平台决定 | Text Skills、OpenAPI 插件、MCP、Docker bridge |
一条边界官方文档没有回避:本地优先不等于离线推理。README 原话 “Local-first storage does not mean inference runs offline”——数据存本地,推理请求仍会把内容发给模型供应商,锁定的是存储在谁手里。
三种工作模式:聊天、Agent、Deep Research
三种模式对应三档投入:日常问答用聊天,让模型动手干活用 Agent,要可核查的研究报告用 Deep Research。README 原述:日常对话;Agent 模式跑多步工具工作流;Deep Research 带可审查计划、引用报告和手动恢复(manual resume)。
| 模式 | 干什么 | 关键边界(来源:README、docs/agent-runtime.md) |
|---|---|---|
| 聊天 | 日常对话、附件、知识库检索、记忆、富输出 | 前台会话,数据在浏览器 |
| Agent | 多步工具工作流:规划、调用工具、按预算推进 | 前台执行,浏览器标签页持有会话租约;预算回落值为 20 轮工具、100 次调用 |
| Deep Research | 先出计划,批准后分波次检索,产出带引用报告 | 不用记忆与技能;报告是不可变 Artifact;只能手动恢复 |
Agent 预算分三档(docs/agent-runtime.md):Light 8 轮 / 30 次调用 / 10 分钟,Standard 16 轮 / 75 次 / 25 分钟,Extended 24 轮 / 150 次 / 45 分钟。Deep Research 的机制——计划审查、引用验证——放在专文里展开。
知识工作台:附件、检索、记忆、助手预设
知识在这里是一等公民:文件附件、知识库检索、本地搜索、记忆、可复用助手预设,围绕”让模型记住并查到你的资料”组织(官方 README)。几处能落到配置上的细节:
- 附件:部署级默认单文件上限 10 MiB(MAX_ATTACHMENT_FILE_BYTES 默认 10485760 字节,docs/environment-variables.md)
- 知识库检索:DEFAULT_RAG_BASE_URL、DEFAULT_RAG_TOP_K、DEFAULT_RAG_CHUNK_SIZE 等向量检索配置,文档解析支持 MinerU 与 LlamaParse
- 记忆:DEFAULT_MODEL_MEMORY 专门指定记忆抽取用哪个模型(官方文档 memory extraction)
- 助手预设:模型、推理与搜索设置、审批模式、预算、工具白名单、记忆范围都存进 Agent Profile,按”全局默认 → 工作区 → Profile → 会话覆盖”的顺序生效(docs/agent-runtime.md)
换项目不用重新喂数据调参数,预设自带工具白名单与知识范围。
扩展体系:Skills、OpenAPI 插件、MCP、Docker bridge
四条扩展路线分工清楚,边界都有明文(官方 README、docs/mcp-stdio-bridge.md)。
| 扩展方式 | 形态 | 能做什么 | 硬边界 |
|---|---|---|---|
| Text Skills | 声明式文本 | 收窄已有工具集、注入流程约束 | 不能授权新工具、不能执行代码、不能联网(docs/agent-runtime.md) |
| OpenAPI 插件 | 注册的函数 schema | search_tools / load_tools 发现并加载 | 单次请求最多 64 个工具 schema |
| 远程 MCP | 标准 MCP 服务器 | 接外部工具、资源与提示词 | MCP 注解只是显示提示,安全边界在宿主侧 |
| Docker bridge | 独立容器跑白名单 stdio 服务器 | 本地 MCP 工具经 Streamable HTTP 接入 | 托管模式与 Cloudflare Worker 下不可用 |
MCP 接入逻辑与本站Cherry Studio 配置 MCP一文相通,差别在边界设计。
数据安全设计:备份与端到端加密同步
默认数据在浏览器;备份是 ZIP 导出导入;同步走你自己的 WebDAV 或 S3/MinIO,且是端到端加密。docs/encrypted-sync.md 的设计:浏览器上传前逐文档加密,AES-256-GCM 密钥从恢复码派生,远端对象名经 HMAC 派生、连本地路径都不暴露;恢复码内含 256 位 vault 密钥,是唯一解密凭据,官方无法找回。
三条边界全部出自官方文档:备份排除凭据和外部服务数据;Research 扩展数据(自定义模板、steering、报告问答)只在浏览器本地,不进备份也不进同步;部署密码是访问闸门,而非多用户账号系统(README 原文)。
和 Cherry Studio 这类客户端怎么比
两者都服务”自带 Key 用多家模型”的人群,但形态不同,这里只谈定位、不逐项比功能。Cherry Studio 是开源多模型桌面客户端的代表,装完即用(它与 Chatbox 的选型见这篇对比)。Neo Chat 的侧重在另一侧:工作台化——知识库、记忆、预设、扩展在一个入口串成工作流;Web 形态——可自托管,桌面与移动响应式布局,界面支持英文、简体中文、日文;Deep Research 是一等公民,多数聊天客户端里没有对应物。
以桌面聊天为主,Cherry Studio 一类够用;要沉淀可复用工作流或给团队共用入口,Neo Chat 更对口。
谁适合用,谁不适合
门槛不在安装,在于你得有自己的模型 Key,并接受前台浏览器会话的使用方式。
适合:有多家模型 API Key 想统一管理的人;在意数据归属、愿意自托管的用户;要把本地文档喂给模型检索问答的知识工作者;需要 Agent 干活或带引用研究报告的团队。
不适合:想开箱即用零配置的用户——Key 要自备;需要后台定时任务、Webhook、多租户隔离的场景——docs/agent-runtime.md 明确列为非目标;想当团队权限系统用的——部署密码只是访问闸门。
部署路径在Neo Chat 部署教程里完整展开。
常见问题
ai chat 推荐哪类开源工具?
开源 AI 聊天工具优先看三点:数据存哪、模型接谁、能否自托管,本地优先、可自带 API Key 的项目是当前最稳的一类。Neo Chat 偏工作台形态,Cherry Studio 偏桌面客户端。涉及工作内容的对话,数据存放位置应是第一决策因素;Neo Chat 浏览器本地存储默认开启,同步端到端加密。
Neo Chat 和普通 ai chat ui 有什么区别?
区别有三:数据默认存浏览器而非服务端,模型用自带 Key,聊天之外还有 Agent 与 Deep Research。普通 chat ui 到”多模型对话”为止,Neo Chat 多出知识工作台(附件、检索、记忆、预设)和任务执行(Agent 工作流、带引用研究报告)两层,且整套可自托管。停留在问答,前一层就有价值;要沉淀流程,后一层是差异点。
本地 AI 聊天工具,数据真的不出我的设备吗?
对话和文件默认存在浏览器本地,不出设备;但推理请求会把内容发给模型供应商,本地优先指的是存储,不代表推理离线。备份和同步都是可选:ZIP 备份在你手里,同步走你自己的 WebDAV 或 S3/MinIO,浏览器在上传前完成 AES-256-GCM 加密,服务端只见密文。链路里能接触明文的第三方只剩模型供应商,这环用任何云端模型都绕不开。