Octop: Tencent Cloud’s Open‑Source Self‑Hosted AI Assistant Suite with Built‑In Browser
Octop is a self‑hosted AI assistant platform that supports multiple users and agents in a single process, integrating a web console, CLI, IM channels, scheduled tasks, browser automation, and ACP integration while keeping all data and credentials on the local machine.
Project Overview
Octop is an open‑source, self‑hosted AI assistant platform designed for multi‑user, multi‑Agent scenarios. The backend uses FastAPI with uvicorn, the Agent runtime is provided by harness‑agent (LangGraph), and IM bridging is handled by harness‑gateway. Storage defaults to SQLite (WAL) with optional PostgreSQL. The frontend is built with React 18, TypeScript, Vite and Ant Design.
Core Capabilities
Multi‑user, multi‑Agent expert team : Administrators can create multiple users; each user can create several agents with independent workspaces, providers, channels and scheduled tasks.
Built‑in expert library : Templates such as general‑assistant, ops‑engineer, stock‑assistant, parenting‑assistant, office‑automation, and specialized agents like wechat‑ops, news‑trend, cvm‑ai‑doctor, cvm‑cluster‑doctor can be instantiated with a single command.
MBTI personality : Sixteen personality templates provide distinct character traits for agents.
IM multi‑channel access : Feishu, DingTalk, QQ, Discord and Enterprise WeChat are unified via harness‑gateway.
Connector ecosystem : OAuth + MCP gateway integrates 18 external services (Tencent Docs, Meeting, News, WeRead, QQ Mail, Notion, Baidu Map, Ctrip, Meituan Travel, NetEase Music, etc.).
Pluggable backend storage : Supports local disk, Docker containers, PostgreSQL, COS/S3; file operations are confined to the AI sandbox.
Migratable memory system : Powered by harness‑memory with layered memory and full‑text retrieval; memory moves with workspaces.
ACP bidirectional integration : octop acp exposes agents as stdio services for IDEs (Zed, OpenCode) and can delegate to external coding agents (CodeBuddy, Claude Code, Codex).
Terminal AI : Interactive shell for AI‑assisted command execution and troubleshooting.
Browser AI : Headless Chromium sessions enable web automation, screenshots and remote control.
Remote desktop : Real‑time screen and keyboard/mouse control across Linux, Windows and macOS.
Scheduled tasks : Natural‑language Cron configuration for periodic agent actions.
CLI Command Reference
octop init # first‑time setup
octop run # start foreground service
octop service # install/manage system service
octop agent # manage agent lifecycle
octop chats # interactive REPL
octop channel # IM channel management
octop cron # scheduled task management
octop provider # provider management
octop models # model catalog
octop skills # list/enable agent skills
octop acp # expose agent as stdio ACP service
octop admin # administrative operations
octop backup # export or restore backup
octop update # check and install new version
octop plugin # install/manage plugins
octop user # user management
octop clean # clear CLI state (~/.octop/)
octop config # view/edit CLI configuration
octop completion # generate shell completion
octop version # print versionCommands are categorized as:
Offline : Operate on the local database only (e.g., init, backup, user *).
Attach : Require a running octop run service (e.g., chats send, channel test, provider test).
Embedded : The CLI launches a temporary OctopServer for a single command (e.g., octop acp, octop chats repl).
Quick Start
Supported on macOS, Linux and Windows. Installation creates an isolated Python 3.12 virtual environment under ~/.octop/ without requiring a pre‑installed Python.
curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bashFor Windows PowerShell:
irm https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.ps1 | iexAfter installation, add ~/.octop/bin to PATH and run octop run to start the service. Optional extras (browser automation, Feishu channel) can be installed via the same script with --extras flags.
Architecture Overview
The process‑level orchestrator OctopServer assembles components in dependency order:
DatabasePool (SQLite WAL or PostgreSQL)
→ SharedServices (dependency‑injection root)
→ ExpertCatalog / SubagentCatalog (scan built‑in templates)
→ AgentManager (global registry for HarnessAgent instances)
→ Gateway (IM bridge, WebSocket hub, CLI channel)
→ CronManager (APScheduler)
→ UserManager (authentication, JWT, per‑user isolation)All inbound traffic (Web UI via WebSocket, IM messages, scheduled triggers) is routed through a single GlobalProcessor that dispatches by agent_id to the appropriate HarnessAgent.
Extension Mechanism
Plugins : Drop Python packages into ~/.octop/plugins/; PluginManager.load_installed loads them. The CLI provides install, uninstall and reload commands.
Skills : Enable or disable per‑agent via octop skills list --agent <name>. Each skill is a reusable capability bundle (scripts, schemas).
Connectors : MCP gateway adapters implement list_tools, call_tool and probe_credentials for services such as Tencent Docs, Baidu Map, Ctrip, etc.
ACP Runner : Outbound programming agents (OpenCode, CodeBuddy, Claude Code, Codex) are delegated through the acp_runner tool.
Comparison with Similar Projects
Core positioning : Octop provides a multi‑user, multi‑Agent self‑hosted assistant platform in a single process; Open WebUI is a self‑hosted WebUI chat frontend; LibreChat is a multi‑user self‑hosted chat platform.
Language : Octop uses Python 3.12 (FastAPI); Open WebUI uses Python (FastAPI + Svelte); LibreChat uses Next.js + Node.
Deployment : Octop runs as a single process via octop run or Docker; Open WebUI requires Docker with an Ollama container; LibreChat uses Docker Compose with multiple services.
Multi‑Agent / roles : Octop offers a full expert library, MBTI personalities and multiple independent agents; the other projects support multiple models but lack independent agent workspaces.
IM channel integration : Octop integrates Feishu, DingTalk, QQ, Discord and Enterprise WeChat; Open WebUI and LibreChat have no IM integration.
Browser/desktop automation : Built‑in in Octop; not available in the other projects.
ACP / IDE integration : Supported in Octop; absent in the others.
Scheduled tasks : Native Cron support in Octop; not present in Open WebUI or LibreChat.
License : Octop and LibreChat are MIT‑licensed; Open WebUI uses BSD‑3‑Clause.
Summary
Octop is a multi‑user, multi‑Agent self‑hosted AI assistant platform that consolidates Web UI, CLI, IM channels, scheduled tasks, browser automation and ACP integration into a single process, keeping all data local. It offers extensive extensibility via plugins, skills and connectors, and distinguishes itself from similar projects by providing a full‑stack assistant ecosystem.
Reference
Project repository: https://github.com/TencentCloud/Octop
Documentation (in repo): docs/cli.md, docs/architecture.md, docs/acp.md, docs/user-guide.md, docs/configuration.md
Architecture decision records: docs/adr/001-single-process-model.md, docs/adr/002-database-backends.md
Dependent projects: harness-agent, harness-gateway, harness-memory, harness-browserSigned-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
AI Open-Source Efficiency Guide
With years of experience in cloud computing and DevOps, we daily recommend top open-source projects, use tools to boost coding efficiency, and apply AI to transform your programming workflow.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
