乐于分享
好东西不私藏

Octop:腾讯云开源的「本地 AI 助手全家桶 」,内置浏览器真是太牛了 !

Octop:腾讯云开源的「本地 AI 助手全家桶 」,内置浏览器真是太牛了 !

大家好,这里是 AI开源提效指南

今天要介绍的 Octop 是腾讯云开源的一款自托管 AI 助手平台,用单进程同时跑起 Web 控制台、CLI、IM 通道(飞书 / 钉钉 / QQ / Discord / 企业微信)和定时任务,所有对话、工作区和凭据都留在你自己的机器上。

它通过一套「多用户 + 多 Agent」的运行时,让每个用户都能创建多个带独立工作区、供应商和人格的 Agent,还能从内置专家库里一键开出「写周报的」「管运维的」「陪孩子的」等专业角色。

和常见的单机 AI 工具相比,Octop 的特点是单进程、无外部中间件——不依赖消息队列和独立 worker,重启后状态从控制面数据库完整重建;同时把 Agent 运行时、IM 桥接、可迁移记忆、浏览器自动化四套能力组合进同一个进程,共用一条消息处理链路。

📦 项目介绍

Octop 是一个开源、自托管的 AI 助手平台,面向多用户、多 Agent 场景。

它把「每个对话、工作区、凭据都留在自己机器上」作为设计目标,同时为每个用户配备一组可按场景切换的专业 Agent。

技术栈上,后端是 FastAPI + uvicorn,Agent 运行时基于 harness-agentLangGraph 聊天运行时),IM 桥接用 harness-gateway,控制面数据库默认 SQLite (WAL)、可选 PostgreSQL,前端是 React 18 + TypeScript + Vite + Ant Design

核心能力

✅ 多用户多 Agent 专家团:一人管理账号,全家共用;管理员可创建多个用户,每个用户又可创建多个 Agent,各自拥有独立工作区、供应商、通道和定时任务

✅ 内置专家库:内置通用助手、运维工程师、股票助手、育儿专家、办公自动化、wechat-opsnews-trendcvm-ai-doctorcvm-cluster-doctor 等模板,一条命令从模板开出 Agent

✅ MBTI 人格:内置 16 种人格模板与互动测试,为每个 Agent 赋予鲜明性格

✅ IM 多通道接入:飞书、钉钉、QQ、Discord、企业微信等通道,底层由 harness-gateway 桥接,把各类入站消息归一为统一处理管线

✅ Connector 拓展体系:通过 OAuth + MCP 网关接入外部服务,内置腾讯文档、腾讯会议、腾讯新闻、微读、QQ 邮箱、飞书 CLI、企业微信 CLI、Notion、百度地图、携程问道、美团旅行、网易云音乐等 18 个连接器

✅ 可插拔后端存储:Agent 工作区后端支持本地磁盘、Docker 容器、PostgreSQL、COS/S3,AI 在隔离边界内操作文件

✅ 可迁移记忆系统:基于 harness-memory,分层记忆 + 全文检索,记忆随工作区迁移

✅ ACP 双向集成octop acp 把 Octop Agent 作为 stdio ACP 服务暴露给 IDE(Zed / OpenCode);对话中也能委派给 OpenCode / CodeBuddy / Claude Code / Codex 等外部编程 Agent

✅ 终端 AI:浏览器内交互式 Shell,AI 辅助命令执行与排障

✅ 浏览器AI:基于 Chromium 的无头浏览器会话,支持网页自动化、截图与远程操控

✅ 远程桌面:控制台内实时看屏与键鼠操控,跨 Linux / Windows / macOS,无图形 Linux 可一键搭建隔离桌面

✅ 定时任务:用自然语言配置 Cron,让 Agent 每天按时推送或执行任务

🧩 功能全景

Octop 的功能可以按「入口面」拆成三块:Web 控制台CLIIM 通道,它们共用同一套 Agent 运行时。

Web 控制台

页面
功能
对话
与 Agent 实时聊天(WebSocket 流式)
Agent
创建 Agent,选专家库 / MBTI 人格,配供应商
Connector
OAuth 应用与 MCP 网关
通道
IM 平台配置与状态
定时任务
可视化 Cron 管理
ACP
配置出站编程 Agent Runner(OpenCode / CodeBuddy / Claude Code / Codex)
设置
用户、安全、TLS、系统

支持的 IM 通道

通道
所需凭证
飞书
App ID + App Secret
钉钉
App Key + App Secret
QQ
Bot AppID + Token
企业微信
Corp ID + Agent Secret
Web 控制台
默认启用

支持的 LLM 供应商

OpenAI 兼容 API、DashScope(千问)、Ollama 等预设,在控制台或通过 octop provider 按 Agent 配置。

Connector 连接器矩阵

Octop 内置 18 个连接器,通过 OAuth + MCP 网关接入。

连接器
认证方式
腾讯文档
personal_token
腾讯 ima
api_key
腾讯会议
personal_token
腾讯新闻
api_key
微信读书
api_key
腾讯乐享
api_key
腾讯微云
personal_token
QQ 邮箱
imap_app_password
QQ 音乐
api_key
飞猪
api_key
百度地图
api_key
携程问道
api_key
美团旅行
api_key
圆点
api_key
有道云笔记
personal_token
Notion
oauth2
飞书 CLI
api_key
企业微信 CLI
api_key

完整 CLI 命令参考

命令
说明
octop init
首次引导
octop run
前台服务
octop service 
安装并管理系统服务
octop agent
Agent 生命周期管理
octop chats
会话与交互式 REPL
octop channel
IM 通道管理
octop cron
定时任务管理
octop provider
Provider 管理
octop models
模型目录与激活模型
octop skills
 Agent 开关 Skill
octop acp
把 Octop Agent 暴露为 stdio ACP 服务供 IDE 调用
octop admin
管理操作
octop backup
导出或恢复备份
octop update
检查并安装新版本
octop plugin
插件安装与管理
octop user
用户管理
octop clean
清掉 CLI 状态或整清 ~/.octop/
octop config
查看/编辑 CLI 状态(base URL、默认用户)
octop completion
生成 Shell 补全
octop version
打印版本号

CLI 命令分三种传输层:

  • Offline:只读本地 DB,无需运行服务,如 initbackupuser *
  • Attach:需要运行中的 octop run + 登录,如 chats sendchannel testprovider test
  • Embedded:CLI 自己启动一个 OctopServer 跑单条命令,如 octop acpoctop chats repl

🚀 快速开始

1. 环境要求

  • macOS / Linux / Windows
  • 无需预先安装 Python——安装脚本通过 uv 在 ~/.octop/ 下创建隔离的 Python 3.12 虚拟环境
  • Python 3.12+(若从源码安装)
  • 注意:当前版本注册管理员时不要使用 admin 用户,否则会失败!
  • 内存:目前运行服务,不执行任务大约在 800MB 以上,建议 1GB 以上内存测试!开浏览器的话建议配置调大!

2. 安装方式

macOS / Linux 一键安装(推荐):

curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bash

Windows(PowerShell):

irm https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.ps1 | iex

安装完成后打开新终端,或 source ~/.zshrc / ~/.bashrc 让 octop 进入 PATH(~/.octop/bin)。

可选附加组件:

# 浏览器自动化(Playwright Chromium)curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bash -s -- --extras browser# 飞书通道支持curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bash -s -- --extras channels-feishu

备选 — PyPI(若已自行管理 Python 环境):

pip install octop# 可选:pip install "octop[browser]"

Docker(生产推荐):

docker compose -f docker/docker-compose.yml up -d

3. 使用示例

# 前台运行(API + Web 控制台)octop run# 自定义主机与端口octop run --host 0.0.0.0 --port 8088# 注册为系统服务octop service start

常用管理命令:

# 配置 LLM 供应商与模型octop modelsoctop provider list# 创建 Agent(从专家模板)octop agent from-expert --expert general-assistant# 查看/启用 Agent 的 Skilloctop skills list --agent main# 管理定时任务octop cron list

🏗️ 整体架构

Octop 的架构思路很清晰:把四套 harness-* 能力库装进同一个进程,用一个 GlobalProcessor 统一路由 Web UI、IM 与定时任务三类入口,状态全部存在 SQLite 或 PostgreSQL 数据库里。

1. 架构概览

OctopServer 是进程级编排器,按依赖顺序装配:DatabasePool(SQLite WAL 或 PostgreSQL)→ SharedServices(依赖注入根,提供所有 repo 与配置)→ ExpertCatalog / SubagentCatalog(启动时扫描内置模板)→ AgentManager(全局单例,按 Agent 行实例化 HarnessAgentRuntime)→ Gateway(IM 通道 + WebSocket Hub + 定时任务触发源)→ CronManager(APScheduler)→ UserManager(认证 + 按用户查询)。

数据流方向上:Web UI 走 WebSocket、IM 通道走 harness-gateway 的事件流、定时任务走 APScheduler 触发,三者最终都汇入 GlobalProcessor,由它按 agent_id 路由到对应的 HarnessAgent 执行。

2. 模块职责

模块
职责
OctopServer
进程级编排器,装配所有运行时单例,负责启动/停止
AgentManager
全局 Agent 注册表,管理所有 HarnessAgent 实例的创建、热重载、流式调用
GlobalProcessor
统一消息处理器,路由所有入口(Web/IM/定时)的请求到对应 Agent
Gateway
IM 通道 + WebSocket Hub + CLI 通道的全局入口,负责建连与消息收发
ThreadRegistry
会话/线程状态机,管理 session 与 thread 的创建、复用、归档
CronManager
APScheduler 封装,定时任务调度与触发
UserManager
用户认证、JWT、按用户隔离 Agent 与工作区
ExpertCatalog
启动时扫描专家库模板,提供场景化 Agent 预设
PluginManager
加载 ~/.octop/plugins/ 下的第三方插件
SlashDispatcher
斜杠命令分发(/new/compact/approve 等)
SharedServices
依赖注入,持有全部仓储对象(repo)与配置

3. 技术架构图

Octop 技术架构图

🤖 Prompt 与工具链

Octop 的 Agent 能力由 harness-agent 运行时提供,Octop 层做的是「装配」和「接入」。

人格与角色注入: 每个 Agent 创建时写入 SOUL.md(主系统提示词)和可选的 IDENTITY.md,专家库模板的 manifest.json 里 prompt_files 指明要注入哪些文件。

工具装配:AgentManager 在构建 HarnessAgent 时注入三类工具——内置工具(浏览器、Shell、终端)、Skill 库(按 Agent 启用/禁用)、Connector 工具(MCP 网关)。

记忆系统: 基于 harness-memory,支持 memory_enabledextract_on_session_endextract_trigger_mode(idle/interval)等配置,记忆随工作区迁移。

多 Agent 协作:@Agent 和 ask_agent 通过 harness TeamManager(InboxManager + GlobalProcessor)实现。ask_agent 支持 sync(阻塞等子 Agent 一次结果)和 background(入 inbox,完成后 on_reply 返回)。

⚙️ 扩展机制

Octop 的扩展点非常清晰,从外到内有三层:

插件(Plugin): 扔进 ~/.octop/plugins/ 即可被 PluginManager.load_installed 加载,CLI 或控制台「插件页」可 install/uninstall/reload

Skill(技能): 按 Agent 启用/禁用,octop skills list --agent main 查看,Skill Hub 在启动时扫描。每个 Skill 是一套可复用的能力包(含脚本、schema)。

Connector(连接器): 通过 MCP 网关接入外部服务。本地网关适配器实现 list_tools / call_tool / probe_credentials 三件套(如 feishu_cli.pybaidu_map.py);远程模式直接指向第三方 MCP 端点(如腾讯文档)。

ACP Runner: 出站编程 Agent(OpenCode / CodeBuddy / Claude Code / Codex)按用户全局配置,对话中通过 acp_runner 工具委派。

📊 相似项目对比

Octop 属于「自托管 AI 助手平台」,定位上最相近的是 Open WebUI 和 LibreChat 这类项目。

下面做真实对比(数据来自各自仓库主页)。

特性
Octop
Open WebUI
LibreChat
核心定位
多用户多 Agent 自托管助手,单进程
自托管 WebUI 聊天前端
多用户自托管聊天平台
语言
Python 3.12(FastAPI)
Python(FastAPI + Svelte)
Next.js + Node
部署方式
单进程 octop run 或 Docker
Docker(Ollama 容器)
Docker Compose(多服务)
多 Agent / 角色
✅ 专家库 + MBTI 人格 + 多 Agent
部分(多模型,无独立 Agent 工作区)
部分(多端对话,无独立 Agent 工作区)
IM 通道接入
✅ 飞书/钉钉/QQ/Discord/企微
❌ 无
❌ 无
浏览器/桌面自动化
✅ 内置
ACP / IDE 集成
✅ 双向
定时任务
✅ 内置 Cron
许可证
MIT
BSD-3-Clause
MIT

结论:Open WebUI 和 LibreChat 更偏「聊天前端 + 多后端」,而 Octop 覆盖了 IM、浏览器、桌面、定时任务、ACP 等更完整的「助理平台」能力边界。三者的定位并不完全重叠。

🎯 总结

Octop 是一款多用户、多 Agent 的自托管 AI 助手平台,用单进程把 Web 控制台、CLI、IM 通道、定时任务、浏览器/桌面自动化、ACP 集成组合成一套完整的产品,所有数据留在本地。

一句话推荐:一条命令跑起的本地 AI 助手全家桶。

适合场景

  • ✅ 想要完全本地、隐私不妥协的个人 AI 助手
  • ✅ 需要按成员分配角色和模型的家庭/团队共享
  • ✅ 想通过 IM 群聊 + 定时任务 + 浏览器自动化搭建自动化工作流的进阶用户

📚 参考资料

项目仓库:https://github.com/TencentCloud/Octop官方文档(仓库内):docs/cli.md · docs/architecture.md · docs/acp.md · docs/user-guide.md · docs/configuration.md架构决策记录:docs/adr/001-single-process-model.md · docs/adr/002-database-backends.md依赖项目:harness-agent · harness-gateway · harness-memory · harness-browser(腾讯云 Harness 工程实践)

免责声明:本文内容仅供学习交流,所述工具/方法请遵守相关平台服务条款及法律法规。如涉及第三方服务,请以官方最新政策为准。

🎯 觉得这份工具干货有用?希望收到您的支持:

  • ⭐ 星标 / 置顶公众号,第一时间解锁最新工具分享!
  • ✅ 点赞推荐」,让更多技术伙伴发现优质干货!
  • 🔗 转发给团队小伙伴,一起高效提效!
  • 💬 底部留言区,告诉我您想找的工具/项目方向!

📬 长期追踪优质开源工具

  • 关注「AI 开源提效指南」|日更开源神器,玩转技术提效!
  • 回复 【容器加速器】,即刻开启你的高效探索之旅~