Octop 如何运作:架构概览
Octop 采用单进程架构。一个 Python 进程同时承载页面、REST/WebSocket API、IM 渠道监听器和定时任务调度器——所有功能共享同一个 SQLite 数据库和同一套配置。
核心组件
专家
每个用户可以创建多个专家,每个专家拥有自己的工作区、LLM 提供商和技能组合
IM 渠道
将飞书、企业微信、钉钉、QQ、微信、Telegram 等消息平台连接到您的专家
连接器
通过 OAuth 应用和 MCP 网关扩展专家的能力
知识库
把文档放进知识库,对话时专家会引用相关段落
专家与人格
使用 MBTI 人格模板和内置专家库塑造专家的思考与沟通方式
请求如何流转
- 请求通过页面、IM 渠道或 REST/WebSocket API 到达服务器。
- 服务器根据用户和专家身份将请求路由到对应的专家运行时。
- 专家运行时加载其配置的 LLM 提供商、技能和已启用的连接器。
- 专家处理请求,可能调用技能或连接器,并将结果通过原始渠道流式返回。
- 对话历史和状态持久化写入同一个 SQLite 数据库。
说明
因为所有功能都运行在同一个进程和数据库中,Octop 无需额外的消息队列或微服务即可运行——这使得它非常适合自托管和小规模多用户部署。
多用户模型
Octop 支持在同一个服务器实例上运行多个用户账户。每个用户可以创建自己的专家,专家之间彼此隔离——工作区、凭据和对话历史互不可见。管理员账户可以管理所有用户和系统设置。

