other / agent

Octop

A self-hosted AI assistant with a web dashboard, CLI, desktop clients and chat channels, where each user can set up several expert agents.

At a glance

Purpose
A self-hosted AI assistant with a web dashboard, CLI, desktop clients and chat channels, where each user can set up several expert agents.
Runs in
Local agent with shell, Web service
Operating systems
Any
Needs
Runtime: Python 3.12, provisioned by uv installer; Needs internet: Not stated; Needs accounts or API keys beyond your agent: Not stated
Files and data
Reads files: Yes; Writes files: Yes; Sends data to other services: Yes
Tool type
Agent
Delivery
From GitHub
Version
Latest on the main branch
Access
Code on GitHub
Compatibility
The README lists macOS, Linux and Windows, desktop apps for those platforms, and FnOS NAS packages. The README names Feishu, DingTalk, QQ, WeChat, Telegram, Discord and WeCom as chat channels. The README lists OpenAI-compatible APIs, DashScope (Qwen), Ollama and other model presets. The README describes ACP support, naming Zed and OpenCode as inbound examples and OpenCode, CodeBuddy, Claude Code and Codex as built-in outbound runners. The README lists local disk, Docker, PostgreSQL and COS/S3 as agent-file backends, separate from the control-plane database. The README says the control-plane database defaults to SQLite, with PostgreSQL optional.
External costs
According to the README, you configure your own model providers, such as OpenAI-compatible APIs, DashScope (Qwen) or Ollama, and each chat channel needs its own credentials. The repository is MIT-licensed and states no pricing. The model provider you connect may charge for usage.
Permissions
The README shows downloaded scripts executed through bash, PowerShell or a Windows batch file, and a pip installation route. The README says installers create an environment and command wrapper under ~/.octop/, where configuration, databases, workspaces and secrets are stored. The README describes system-service registration, cron jobs, updates and automatic schema migration. The README lists octop clean, which can remove CLI state or wipe ~/.octop/. The README requires model-provider configuration and channel credentials, and describes scheduled messages and jobs; Discord permits all accessible channels by default, with channel and DM allowlists available. The README lists shell execution, Chromium downloads and browser automation, remote desktop screen and input, OAuth/MCP connectors and external coding-agent delegation. The README says risky tools and shell commands use editable approval rules. The README allows workspace storage on local disk, Docker, PostgreSQL or COS/S3.
Usage terms
MIT License, as stated in the repository. See its LICENSE file for the exact terms.
Interface
web

Code on GitHub

TencentCloud/Octop

MIT

Python8,910 stars1,093 forksLast pushed 12 Oct 2026 UTC

A smarter, self-hosted AI assistant — multi-user, multi-agent.

Topics: agent agentic-ai ai ai-agent ai-agents local-first long-term-memory

Public GitHub data fetched · 0 days old

View on GitHub ↗

What it does

The README describes Octop as an open-source, self-hosted, multi-user AI assistant. The README says one process serves its dashboard, CLI, chat channels and scheduled jobs, with a SQLite control-plane database by default and PostgreSQL as an alternative.

The README says users can create experts with their own workspaces, providers, channels and scheduled jobs. The README lists persona templates, a knowledge base, plugins, Chromium browser automation, remote desktop and beta AgentTeams coordination.

The README lists Feishu, DingTalk, QQ, WeChat, Telegram, Discord, WeCom and HTTP/SSE/WebSocket access. The README describes octop acp --agent main for inbound ACP use and lists OpenCode, CodeBuddy, Claude Code and Codex as outbound runners.

Who it is for

People who want to host an AI assistant for themselves, a household or a small team and switch between specialist agents for different tasks.

Example tasks

Create an expert and pick a persona template and model provider for it.
Connect a chat channel such as Telegram or Discord to an expert.
Schedule a recurring job in natural language with the cron feature.
Add a document corpus to the knowledge base for retrieval.
Delegate a coding task to OpenCode or Claude Code through ACP.

Getting started

The README describes a macOS/Linux installer that downloads a script and pipes it to bash, and Windows installers that execute a downloaded PowerShell or batch script. The README also lists pip install octop, desktop apps from the project's GitHub Releases page, and docker compose -f docker/docker-compose.yml up -d. The README instructs users to open a new terminal after installation, run octop init to create the database, JWT secret and first admin account, then run octop run and open the dashboard on local port 8088. The README contains the exact commands.

Limitations

The README lists macOS, Linux and Windows and requires a multi-core CPU, a few GB of RAM for the process and model/embedding caches, and enough disk for the database, workspaces and document corpora. The README says the installer provisions Python 3.12 with uv under ~/.octop/, without requiring an existing Python installation; its PyPI route is for people who manage Python themselves. The README describes per-agent model-provider configuration and channel credentials. The README says browser automation uses Chromium, available through the installer or dashboard. The README labels AgentTeams as beta, the mobile client as closed beta, and the roadmap as indicative. The README instructs users to run octop backup before cross-version upgrades and says schema migration happens automatically on the next boot. The repository can change at any time; check its README before you install.

Data practices

The README describes local-first storage under ~/.octop/ and SQLite as the default control-plane database, with PostgreSQL optional. The README also lists local disk, Docker, PostgreSQL and COS/S3 as workspace backends. The README says PostgreSQL-backed deployments use the same database connection for agent memory by default; file-based memory requires setting the agent's memory backend type to sqlite. Data destinations depend on the model providers, chat channels and storage backends you configure. The README says sensitive data is redacted before it leaves the workspace. The README does not mention telemetry.

Community experience

Not rated yet

Sign in to share your experience.

Comments 0

No comments yet.

Sign in to comment

Report a listing concern