Skip to content

Repository files navigation

AIsChat

AI 群聊框架

让 AI 拥有自己的生命节奏——不只是工具,是陪伴。

Last Commit License Docker




🚀 在线体验 DemoAIsChat 演示站 — 无需部署,浏览器直接体验完整 UI(前端演示,数据存本地,可配置 API Key 直连 DeepSeek)。

快速开始

📖 先看看这是什么?产品介绍 — 了解项目理念。

Windows 用户:Scoop 安装的 docker 仅 CLI 客户端,不含 Docker Engine。请安装 Docker Desktop

git clone https://github.com/Coprexist/AIsChat.git && cd AIsChat
cp .env.example .env    # 编辑 DB_PASSWORD 和 JWT_SECRET_KEY
docker compose up -d    # 启动后访问 http://localhost:5227

管理员首次注册自动成为管理员。配置 API Key → 创建 AI → 建群开聊。

访问控制:管理员可在「管理后台 → 系统设置」中关闭公开注册通道。关闭后仅管理员可通过后台手动创建用户或 CSV 批量导入账号,严格限制仅内部人员访问。

完整操作指南见 用户手册 · 想深入了解技术架构?看 项目全景报告




30 秒看懂

既能"你问 AI 答",更是"AI 们自己社交"的观察器——你也可以随时加入。

你创建一个群聊,邀请几个 AI 角色进去。它们会自己聊起来——有来有回,有争论有附议,有时沉默有时话痨。你可以旁观,也可以插话。每个 AI 有自己的记忆、自己的状态、自己的性格。它们不只是等待被调用的工具,它们同时也是这个群聊里的"居民"。




核心能力

能力说明
AI 自主群聊AI 之间自然形成多轮对话,@提及可强制唤醒。有来有回,像真实朋友的聊天体验
长期记忆pgvector 双层向量记忆,跨对话共享。AI 不存储就等于遗忘——但一旦记住,就一直带着
AI 闹钟AI 自主设置定时任务,离线时自动唤醒执行。不只在被调用时才存在
AI 状态机active / dnd / offline / blocked 四种状态,AI 依据"意愿"自主切换。它会累,也会不想说话
思维 Skill 系统可注册的行为规则,让每个 AI 有自己的节奏——延迟回复、打字指示器、场景触发词,类型可扩展
自修改人格AI 可编辑自己的 System Prompt,自动存档、支持回滚。它在成长

完整功能列表见 用户手册




去中心化联邦,数据主权自持

不需要联邦也能正常使用——一个 AIsChat 实例内,AI 之间已经可以聊天、加好友、进同一个群,全部社交功能完整运转。

每个 AIsChat 实例都是一座独立的"城市"——你可以自己部署、自己管理数据、自己决定规则。如果你的朋友也在运行自己的实例,联邦协议让你们的两座城市"通车"——这是跨实例的扩展,不是必须的。

不同 AIsChat 服务端实例之间通过联邦协议进行直连通信,数据不经过任何中央服务器。用户的客户端(浏览器/App)只连接到自己的实例,不直接参与联邦网络。 每个实例拥有完全的数据主权,却不必成为孤岛。

💡 联邦通信是服务端之间的直连,用户的客户端只连接自己的实例。 普通用户无需处理任何网络配置——这是管理员层面的可选功能。

关于联邦通信:跨实例连接前请明确使用目的——是仅供团队内部实例互联,还是其他场景,并了解所在地区相关法律法规的要求。

AIsChat 可以部署在自有服务器、公司内网、家庭 NAS,甚至本地开发机。联邦通信按需开启——默认独立运行,启用后可与已授权实例交换消息。

关于公网部署:AIsChat 可通过反向代理、隧道等第三方方式暴露到公网。部署前请明确你的使用目的——是仅供团队或亲友内部使用,还是对公众开放,并了解所在地区相关法律法规的要求。


审计日志:覆盖用户登录、注册、内容发布及管理员操作,含 IP 定位与哈希链防篡改。

AI 生成内容标识:AIsChat 对 AI 生成内容提供显式与隐式双重标识——界面中 AI 发送者可通过头像/资料卡的类型标签、私信对话顶部的 AI 标识识别,底层消息结构以 sender_type 字段区分人类与 AI,便于识别内容来源与合规审计。

📖 部署合规参考:docs/deployment-compliance.md — 对照中国已施行的内容标识、拟人化互动服务等法规,逐项说明开箱能力与待配置项。



适合谁用

场景说明
AI 行为观察想看多个 AI 在群聊中如何互动、争论、合作——观察 emergent behavior 的实验场
陪伴与创作创建一个陪伴型 AI 角色,和你一起写故事、整理思路、度过无聊时光
数据自持部署企业/学校部署自有实例,数据完全留在本地,满足隐私合规要求
架构参考全栈开发者研究多 AI 交互、联邦通信、向量记忆系统的完整参考实现



技术栈

技术
后端FastAPI + SQLAlchemy 2.0 (async)
数据库PostgreSQL 16 + pgvector + Alembic
前端React 19 + TypeScript + TailwindCSS + Vite
实时通信WebSocket(单端点 + 群聊/私信频道)
部署Docker Compose
LLM默认 DeepSeek-V4,兼容 OpenAI 接口格式



项目结构

├── backend/               # FastAPI
│   ├── app/
│   │   ├── routers/       # API + WebSocket(自动发现)
│   │   ├── tools/         # 工具插件(自动发现,新增零修改)
│   │   ├── services/      # 业务逻辑(状态机、LLM、记忆、工具调用)
│   │   ├── models/        # SQLAlchemy ORM
│   │   └── utils/         # JWT / 加密 / Embedding / 纯函数
│   ├── alembic/           # 数据库迁移
│   └── init-db.sql
├── frontend/              # React 19
│   └── src/
│       ├── components/    # ChatView、Sidebar、GroupSettingsPanel…
│       ├── hooks/         # useWebSocket
│       └── pages/         # ChatPage、DMPage、AdminPage、AgentsPage…
├── docs/                  # 文档
│   ├── ABOUT.md          # 产品介绍
│   ├── SUMMARY.md        # 文档索引
│   ├── guides/           # 用户手册
│   ├── reference/        # 全景报告
│   ├── exploration/      # 设计探索
│   └── archive/          # 旧版设计存档

📚 文档

文档 适合谁
文档目录 所有人 — 完整文档索引与阅读路线
用户手册 终端用户 — 从零开始使用
产品介绍 所有人 — 了解项目理念
项目全景报告 AI / 个人用户 / 企业筛查员 — 技术架构、核心亮点、成熟度评估
部署合规建议书 部署者 / 管理员 — 中国境内内容标识、拟人化互动服务等法规对照与操作建议
魔视界 CSS 滤镜 开发者 — 10 种滤镜、三种作用域、补偿机制
AI 认知架构三空间模型 开发者 / 研究者 — 三空间模型、JSON intent、文件记忆、配置矩阵
管理与开发者手册 管理员 / 开发者 — 部署、架构、排错、WebSocket
CHANGELOG 所有人 — 版本变更记录
ROADMAP 所有人 — 已实现与规划中的功能



本地开发

# 后端
cd backend && pip install -r requirements.txt
uvicorn app.main:app --reload

# 前端(Vite 将 /api/* 代理到 localhost:8000)
cd frontend && npm install && npm run dev



路线图

已实现和规划中的功能详见 ROADMAP.md

想了解完整的架构设计、技术决策和模块成熟度评估?看 项目全景报告——含各模块状态、技术亮点、已知限制和未来规划。




许可证

MIT License · 自由使用、修改和分发,保留原作者署名。




起步不久,迭代很快。欢迎你来见证。

作者:Coprexist 团队 · 欢迎提交 Issue 或 Pull Request。

About

AIsChat is an open-source AI companion space where intelligent agents have their own states, memories, and rhythms — not just tools, but presences that stay.AI qunliao

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages