Octop 是一个开源、自托管的 AI 助手。它不仅是工具,更是可并行运作的数字生命体。通过多 Agent 架构,它为团队、家庭和个人构建了既独立又协作的智能环境。并且这一切都运行在你的机器上——完全自托管的设计让隐私不再是妥协,而单进程启动的便捷性,则让强大的 Web 控制台、CLI 与 IM 集成触手可及。

借助飞书、钉钉、QQ、Discord、企业微信或 HTTP/SSE/WebSocket API 与任意 Agent 对话;通过专家库一键创建专业角色,通过 Connector(OAuth + MCP)接入外部服务,通过 ACP 与 IDE / 终端 AI 工具双向协作。
Octop 的设计目标:让每一次对话、工作区与凭据都留在你自己的机器上,同时为每个用户配备一组可按场景切换的专业 Agent。
| 特性 | 说明 | |
|---|---|---|
| 👥 | 多用户多 Agent 专家团 | 一人管理,全家共用;内置专家库,按场景切换专业角色 |
| 🎭 | MBTI 人格 | 16 种人格模板与互动测试,为每个 Agent 赋予鲜明性格 |
| 🔒 | 更安全 | JWT 多用户隔离、工具审批、Shell 命令防护与敏感信息脱敏,数据留在本地 |
| 🔌 | Connector 拓展体系 | 一键接入腾讯全家桶(文档 / 微博 / 新闻等),OAuth 与 MCP 网关轻松扩展 |
| 💾 | 可插拔后端存储 | 本地目录、Docker 容器、PostgreSQL 或 COS/S3,AI 在隔离边界内操作 |
| 🧠 | 可迁移记忆系统 | 基于 harness-memory,记忆随工作区迁移 |
| 📚 | 知识库 | 基于文档的 RAG 检索,让 Agent 的回答锚定你的私有知识库 |
| 🧩 | 插件 | 支持第三方插件扩展;内置插件随安装注入,按需一键启用 |
| ↔️ | ACP 双向集成 | octop acp 增强 IDE 与终端 AI;对话中委派 OpenCode / Claude Code 等 |
| 💻 | 终端 AI+ | 浏览器内交互式 Shell,AI 辅助命令执行与排障 |
| 🌐 | 浏览器 AI+ | 基于 Chromium 的无头浏览器会话,支持网页自动化、截图与远程操控 |
| 🖥️ | 远程桌面 | 控制台内实时看屏与键鼠操控,跨 Linux / Windows / macOS;适合远程办公、GUI 软件操作,无图形 Linux 可一键搭建隔离桌面 |
| 🏠 | 可自托管 | 一条 octop run 即可运行控制台、CLI、IM 通道与定时任务,数据存于 ~/.octop/ |
🐾 你能用 Octop 做什么
- 个人助理 — 让专属 Agent 帮你写周报、整理资料、定日程,记忆随工作区长期保留。
- 家庭共享 — 一个管理员账号,全家共用;按成员分配不同 Agent 与专家角色。
- 团队助手 — 多 Agent 并行协作,对接飞书 / 钉钉 / 企业微信,把任务自动分发到群里。
- 开发者增效 — 通过 ACP 把编码任务委派给 OpenCode / Claude Code,或在终端用 AI 辅助排障。
- 网页自动化 — 用浏览器 AI+ 自动填表、截图、采集公开信息。
- 定时任务 — 用自然语言配置 Cron,让 Agent 每天按时推送或执行任务。
| 层级 | 技术 |
|---|---|
| 语言 | Python 3.12+ |
| Web 框架 | FastAPI + uvicorn |
| Agent 运行时 | harness-agent |
| IM 桥接 | harness-gateway |
| 控制平面数据库 | SQLite (WAL,默认) 或 PostgreSQL(可选) |
| 前端 | React 18 + TypeScript + Vite + Ant Design |
| 调度 | APScheduler |
| ACP | agent-client-protocol |
| 构建 / 质量 | hatchling · ruff · mypy · pytest |
Octop 基于一系列 Harness 工程实践构建——它将这些专注的运行时组合进同一个进程:
- harness-agent — Agent 运行时:模型路由、工具、技能与对话检查点。
- harness-gateway — 多平台 IM 通道桥接,将各类入站消息归一为统一的处理管线。
- harness-memory — 分层记忆与全文检索,让 Agent 的记忆随工作区一同迁移。
- harness-browser — 基于 CDP 的浏览器自动化,支持持久化配置,用于网页类任务。
Octop 不依赖外部消息队列或中间件,而是通过进程内的 HarnessProcessor 统一路由所有入口——Web UI、IM 与定时任务。最终呈现为一个可重启恢复的单进程:启动时整个状态都从控制面数据库重建(默认 ~/.octop/octop.db,亦可配置 PostgreSQL)。
- 多用户 JWT 认证,支持管理员角色
- 首次运行向导(
octop init) - 交互式 API 文档:
/api/docs(默认关闭 — 在config.json中设置"enable_api_docs": true开启)
- 每位用户可创建多个 Agent;各自拥有独立工作区、供应商、通道和定时任务
- 16 种 MBTI 人格模板 + 自定义系统提示词
- 启动时扫描专家库(
infra/agents/experts/library/) - 工作区后端:本地磁盘、COS、S3 及其他远程存储
- IM 通道:飞书、钉钉、QQ、Discord、企业微信等
- 主动定时任务,支持自然语言和斜杠命令触发
- Web UI、IM、定时任务共用同一套消息处理链路
- Web 控制台 — 对话、Agent 管理、连接器、通道、定时任务、设置
- CLI —
octop run、octop chat、octop acp、管理命令 - HTTP/SSE/WebSocket API — 完整的程序化访问能力
- 知识库 — 基于文档的 RAG 检索;上传文件后,语义检索让 Agent 的回答锚定你的私有知识库
- 插件 — 安装并管理第三方插件(
octop plugin);内置插件随安装注入,按需在控制台一键启用
Octop 支持两个方向的 ACP 集成:
入站 — 外部工具使用你的 Octop Agent
octop acp --agent main # 为 Zed、OpenCode 等提供 stdio ACP 服务出站 — Octop 委派给外部编程 Agent
- 控制台 → ACP(
/acp):配置 Runner(按用户全局) - 为 Agent 启用 acp_runner 后,在对话中委派任务
- 控制台 → ACP(
内置出站 Runner 包括 OpenCode、CodeBuddy、Claude Code 和 Codex。















