TencentCloud/Octop: A Self-Hosted Multi-User, Multi-Agent Assistant
A self-hosted multi-agent assistant for families and small teams, combining Web, IM, CLI, and automation in one process.
GitHub TencentCloud/Octop Updated 2026-09-18 Branch main Stars 3.4K Forks 358
Python TypeScript Self-hosted AI assistant Multi-user multi-agent ACP Browser AI+ macOS/Linux/Windows

🧭 Decision Guide

Try it if you

  • You need one admin to manage multiple household members and specialist agents.
    README Overview's Family sharing and the Highlights section's Multi-user expert team
  • Your team distributes tasks through Feishu, DingTalk, or WeCom.
    README Overview's Team helper and the supported channel list
  • You want to delegate coding tasks from an IDE or terminal to OpenCode or Claude Code.
    README Highlights' ACP bidirectional and Developer boost
  • You need conversations, credentials, and workspace data to remain on your machine.
    README Overview's self-hosted design and control-plane database under `~/.octop/`

Skip it if you

  • You currently require Shared resource pool or Expert sharing.
    README Roadmap marks Shared resource pool and Expert sharing as `[ ]`
  • You require an officially completed native desktop or mobile client.
    README Roadmap marks PC / mobile clients as `[ ]`
  • You do not accept directly executing remote `curl` or `irm` installation scripts.
    README Quick Start provides `curl ... | bash` and `irm ... | iex`
  • Your model provider is outside the listed presets such as OpenAI-compatible, DashScope, or Ollama.
    README Configuration's Supported LLM providers lists these preset types

Requirements

  • macOS, Linux, or Windows is supported; the README provides installers for each.
  • PyPI installation uses `pip install octop`, or source setup uses `uv sync --extra local-embedding`.
  • The runtime entry point is `octop run`, with the default URL `http://127.0.0.1:8088`.
  • Docker initialization writes credentials to `/data/.octop/credential.txt`; interactive passwords require at least 8 characters with letters and digits.
  • SQLite is the default control-plane database, with PostgreSQL as an optional backend.

First step (verbatim from README)

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

Watch out

  • After installation, open a new terminal or reload `~/.zshrc` or `~/.bashrc`.
    The post-installation note in README Quick Start
  • Browser AI+ requires an additional Playwright Chromium installation.
    The `--extras browser` command in README Install
  • Feishu support is not a default installation item and requires `--extras channels-feishu`.
    The Feishu channel support command in README Install
  • Custom binding uses `octop run --host 0.0.0.0 --port 8088`.
    The Custom host / port example in README Run

Alternatives

  • OpenCode / Claude Code:When you only need a coding agent and not Octop's multi-user, IM, and cron control plane.
    README sections ACP bidirectional and Developer boost
  • Ollama:When you need a standalone local LLM service rather than the full Octop Dashboard, IM, and agent environment.
    README Configuration section, Supported LLM providers

Not stated in the README

  • The README excerpt does not specify exact supported LLM model names, context limits, or model costs.
  • The README excerpt does not specify resource requirements for Browser AI+, Remote desktop, or parallel multi-agent execution.
  • The README excerpt does not provide detailed configuration steps or permission scopes for Feishu, DingTalk, and WeCom.
  • The README excerpt does not provide a compatibility matrix for v1.0.0 across operating systems, Docker, and PostgreSQL.
  • The README excerpt omits the full Server & auth, Security & privacy, and Docker production documentation.
  • The README excerpt does not state version requirements for ACP with OpenCode or Claude Code.

💡 Deep Analysis

6
Yes I already use OpenCode and Claude Code and want to delegate tasks to Octop through ACP, including browser actions and shell commands. Is this suitable for development assistance?
For: A developer using OpenCode or Claude Code who wants terminal access plus browser and shell automation

Yes, but it is better suited to permission-gated development assistance than unattended execution.

  • README Highlights provides octop acp for bidirectional collaboration with OpenCode and Claude Code, explicitly including permission gates.
  • The same section lists Terminal AI+, which provides an interactive shell in the browser for AI-assisted command execution and troubleshooting.
  • Browser AI+ uses headless Chromium for web automation, screenshots, and remote browsing, giving the agent real execution capability for tasks such as form filling and information collection.
  • “Security built-in” lists tool approval and shell command guardrails. The project insights also warn that incorrectly configured browser, terminal, or ACP permissions can cause file deletion, credential exposure, or unintended external actions.

Octop therefore matches this toolchain, but ACP, Shell, and browser automation should be treated as privileged execution surfaces rather than ordinary chat extensions.

  • README Highlights: "`octop acp` for IDE/terminal AI; delegate to OpenCode / Claude Code with permission gates"
  • README Highlights: "Terminal AI+" and "AI-assisted command execution and troubleshooting"
  • README Highlights: "Browser AI+" and "Headless Chromium sessions for web automation, screenshots, and remote browsing"
  • README Highlights: "tool approval" and "shell command guardrails"
octop run
Not stated in the README:The README does not specify ACP permission policies, working-directory restrictions, or default approval behavior for each tool;The README does not provide an OpenCode/Claude Code compatibility matrix or explain how broadly browser automation handles anti-bot controls
Yes I want one administrator to provide Feishu, DingTalk, and WeCom access to family members while preserving separate accounts, sessions, and expert configurations. Is Octop suitable?
For: A household user who wants one administrator to serve family members through Feishu, DingTalk, or WeCom

Yes: multi-user household sharing and multi-channel access are explicitly presented as Octop use cases.

  • Highlights describes a “Multi-user expert team” with one administrator, a shared household, and an expert library that can switch specialists by scenario.
  • “Security built-in” lists JWT multi-user isolation, tool approval, shell command guardrails, and PII redaction. The Overview also says each user can have a personal team of specialized agents.
  • The README explicitly lists Feishu, DingTalk, QQ, Discord, and WeCom, together with the Web Dashboard, CLI, and HTTP/SSE/WebSocket interfaces.
  • The project insights caution that multi-user isolation does not automatically isolate every plugin, external service, or host resource. Sharing a workspace, expert, or credential can weaken the intended privacy boundary.

Octop is therefore suitable for shared household infrastructure, provided account separation is not confused with complete execution and credential isolation.

  • README Highlights: "Multi-user expert team" and "One admin, shared household"
  • README Highlights: "JWT multi-user isolation, tool approval, shell command guardrails, and PII redaction"
  • README Overview: "Feishu, DingTalk, QQ, Discord, WeCom" and "each user a personal team of specialized agents"
  • Project insights, user_experience.common_pitfalls: sharing workspaces, experts, or credentials can weaken isolation
octop run
Not stated in the README:The README does not specify household member limits, permission granularity, or identity mapping across channels;The README does not state whether every plugin and connector fully inherits JWT user isolation
Yes I need RAG over private documents and want local ONNX embeddings with long-term memory that migrates with the workspace. Is Octop suitable for building a personal knowledge assistant?
For: A technical user maintaining a private document corpus who wants local ONNX embeddings and workspace-portable long-term memory

Yes: private-document RAG, local embeddings, and portable long-term memory are all explicit Octop capabilities, although answer quality still depends on retrieval and memory configuration.

  • Highlights defines the Knowledge base as RAG over documents, using semantic retrieval to ground agent answers in a private corpus.
  • Portable memory states that long-term memory is powered by harness-memory and migrates with the workspace, which is suitable for continuous use beyond one chat interface.
  • Quick Start provides the optional octop[local-embedding] extra and says the model cache is under ~/.octop/embedding_models; it also explicitly clarifies that this is not the chat model or Memory.
  • The project insights warn that document chunking, embedding choice, recall quality, memory contamination, and context limits affect results. The README does not provide corpus-size limits or retrieval benchmarks.

The component fit is therefore strong, but enabling RAG or Memory should not be treated as a guarantee of factual accuracy.

  • README Highlights: "Knowledge base"; "RAG over your documents"; "private corpus"
  • README Highlights: "Portable memory"; "Powered by harness-memory; memory migrates with the workspace"
  • README Quick Start: `pip install "octop[local-embedding]"`; "Downloads catalog weights under ~/.octop/embedding_models; not chat, not Memory"
  • Project insights, user_experience.common_pitfalls: RAG and long-term memory are affected by chunking, embeddings, recall, and context limits
pip install "octop[local-embedding]"
Not stated in the README:The README does not list supported ONNX embedding models, language coverage, or hardware requirements;The README does not provide document-count limits, index sizes, retrieval latency, or recall benchmarks
It depends I use Ollama on Linux and want chats, workspaces, and credentials to stay on my machine. Is Octop suitable as a replacement for a cloud AI assistant?
For: A Linux individual user running Ollama who wants conversations and workspace data to remain on the local machine

It depends: Octop fits a local-first setup, but complete offline operation depends on the selected model and connectors.

  • The README Overview describes Octop as self-hosted, stores the control-plane data under ~/.octop/, and uses SQLite by default. Highlights also states that “data stays local.”
  • The project insights list Ollama as a supported model option, so local inference is possible. However, OpenAI-compatible APIs, DashScope, OAuth connectors, and MCP services can send requests or tool data outside the machine.
  • The latest release is v1.0.0 and the project has five releases. The supplied README does not specify an Ollama model compatibility matrix, minimum hardware, or a complete offline-mode checklist.

It is therefore suitable for local control, but “self-hosted” alone does not prove that every inference, embedding, and connector call stays offline.

  • README Overview: "self-hosted AI assistant" and "all sharing one control-plane database under `~/.octop/` (SQLite by default; PostgreSQL optional)"
  • README Highlights: "Self-hosted" and "data stays local"
  • Project insights, solution_analysis: model layer supports Ollama, OpenAI-compatible APIs, and DashScope
  • Project data: latest_release is v1.0.0; release_count is 5
curl -fsSL https://finnie-1258344699.cos.ap-guangzhou.myqcloud.com/octop/install.sh | bash
Not stated in the README:The README does not provide a concrete Ollama model support list or VRAM/RAM requirements;The README does not state whether local-model operation still makes default telemetry, embedding, or connector requests
It depends We are a small team planning to run multiple agents, the Web Dashboard, and cron jobs in one Octop process. Is SQLite sufficient, or should we use PostgreSQL immediately?
For: An internal support team starting with SQLite and planning to run multiple agents and cron jobs concurrently

It depends: SQLite is reasonable for a lightweight shared deployment, while the README already provides PostgreSQL as the alternative backend for growth.

  • The Overview says that the Web Dashboard, CLI, IM channels, and cron share one control-plane database; SQLite is the default and PostgreSQL is optional.
  • Octop uses a single-process design that combines the dashboard, CLI, IM, and scheduled tasks, and positions itself for households and small teams with less service orchestration.
  • The project insights state that SQLite fits lightweight deployments, while high concurrency, multiple users, many automated tasks, or a larger knowledge base may require PostgreSQL, separate storage, and more operational design.
  • The README does not provide limits for concurrent users, task counts, database size, or a SQLite-to-PostgreSQL migration benchmark.

A small team can therefore begin with the default database, but sustained concurrent cron, IM, and multi-agent activity points toward PostgreSQL; no exact capacity threshold can be inferred from the supplied material.

  • README Overview: "SQLite by default; PostgreSQL optional"
  • README Overview: "single process that serves a web dashboard, a CLI, IM channels ... and cron automation"
  • Project insights, solution_analysis.architectural_strengths: the single-process design suits individuals and small teams
  • Project insights, user_experience.usage_limitations: SQLite fits lightweight deployments; high concurrency or larger knowledge bases may require PostgreSQL
octop run
Not stated in the README:The README does not provide SQLite/PostgreSQL benchmarks, concurrency limits, or a recommended migration threshold;The README does not describe the complete database migration, backup/restore, or high-availability procedure
It depends Our small team uses Windows, macOS, and Linux, and we want to view screens and operate GUI applications from the Octop Dashboard. Is Octop suitable for cross-platform remote-office automation?
For: A small-team developer who needs to share remote-desktop AI workflows across Windows, macOS, and Linux

It depends: Octop clearly offers cross-platform remote-desktop capability, but reliable GUI automation still depends on OS permissions, display environments, and the applications involved.

  • README Highlights states that Remote desktop supports Linux, Windows, and macOS, with live screen viewing and input from the Dashboard.
  • The README also mentions a “one-click isolated desktop on headless Linux,” providing a defined path for Linux machines without a physical display.
  • Browser AI+ uses headless Chromium for web actions, screenshots, and remote browsing; native GUI applications do not necessarily follow the same execution path.
  • The project insights note that cross-platform behavior can be affected by operating-system permissions, Chromium dependencies, display environments, sandboxes, network authentication, and anti-automation mechanisms.

Octop is therefore suitable as a unified entry point for controlled remote operations, but the supplied material does not establish stable unattended support for every Windows, macOS, or Linux GUI application.

  • README Highlights: "Remote desktop"; "Linux, Windows, and macOS"; "Live screen and input from the dashboard"
  • README Highlights: "one-click isolated desktop on headless Linux"
  • README Highlights: "Browser AI+" and "Headless Chromium sessions for web automation, screenshots, and remote browsing"
  • Project insights, user_experience.usage_limitations: cross-platform behavior is affected by OS permissions, display environments, sandboxes, and network authentication
octop run --host 0.0.0.0 --port 8088
Not stated in the README:The README does not specify which screen-recording, accessibility, or input-control permissions each operating system requires;The README does not provide remote-desktop latency, concurrent-session limits, encoding details, or reconnect behavior

✨ Highlights

  • One process provides the Dashboard, CLI, IM, and cron
  • Supports Feishu, DingTalk, QQ, Discord, and WeCom
  • ACP can delegate tasks to OpenCode and Claude Code
  • JWT isolation, tool approval, and PII redaction are built in
  • Shared resource pool and Expert sharing remain on the Roadmap

🔧 Engineering

  • Use `octop run` to start the Web, CLI, IM, and cron together
  • Browser AI+ uses Headless Chromium for web automation
  • The RAG knowledge base retrieves private documents to ground agent answers
  • PostgreSQL, Docker, and COS/S3 are available as backends

⚠️ Risks

  • Shared resource pools and expert sharing are unfinished on the Roadmap
  • The installer executes through remote curl or irm commands
  • Docker initialization generates a random admin password file
  • The README only lists OpenAI-compatible, DashScope, and Ollama presets

👥 For who?

  • Small teams needing family-style sharing and multi-user agents
  • Teams collaborating through Feishu, DingTalk, or WeCom
  • Developers wanting to connect OpenCode or Claude Code to IDE workflows
  • Self-hosted users requiring local data under `~/.octop/`