OpenOcta (Octopus)
China's first open-source personal desktop AI agent — double-click to install, run locally, starts in milliseconds, data stays on your machine.
- Source repo
- openocta/openocta
- Stars
- ★ 3.2k
- Last updated
- 1mo ago
- License
- GPL-3.0
- Primary language
- TypeScript
- FA score
- 27/100 · Major gaps
At a glance
- How it runs
- Works with
- Platform-specific
- Cost
- Free software; you pay for model usage
- Setup effort
- Low · running in minutes
- You'll need
- Typical use
- Office workers: Let AI summarize weekly email key points and generate a weekly report, reducing repetitive work.
- Not a fit if
- Teams that need an English UI and English docs
- Users who want it working without supplying their own LLM API key
- Projects needing a mature, English-first community ecosystem
- Source review
- 27/100 · Major gaps 8 safety controls not found
What does this agent do, and when should you use it?
OpenOcta is an open-source, personal desktop AI agent developed entirely in Go by a Chinese team, licensed under Apache-2.0. It offers a complete desktop client that installs in about 30 seconds, runs with low memory usage, and is suitable for 24/7 operation. Core components (Gateway, Agent, Channels) are natively implemented in Go, with the Control UI embedded in a single binary, eliminating the need for Node.js or Python in production. It supports remote control via WeChat, WeCom, DingTalk, and Feishu, integrates built-in tools plus MCP protocol and a skills marketplace, and features a four-tier memory system with a local Knowledge Vault for autonomous evolution. The installer is around 30MB and supports Windows, macOS, and Linux, with data stored locally for intranet deployment.
OpenOcta runs an agent runtime locally that parses user-described tasks and executes operations via built-in tools (file system, terminal, browser) and MCP servers. It calls LLMs (e.g., Moonshot, DeepSeek, Qwen, Doubao) for dialogue and task execution, and accepts commands through IM channels (WeChat, WeCom, DingTalk, Feishu). It includes a skills library (766+ skills), a digital employee marketplace (e.g., Zabbix, Prometheus, MySQL DBA), and an Obsidian-compatible knowledge base supporting semantic retrieval. Users interact via the Control UI or configure via a JSON config file. Developers can trigger tasks from CLI: ./openocta agent -m "...".
- Office workers: Let AI summarize weekly email key points and generate a weekly report, reducing repetitive work.
- IT ops: Have the agent monitor logs around the clock and suggest remediation, shifting from firefighting to prevention.
- Marketers: Quickly produce Xiaohongshu copy based on product materials for multi-channel promotion.
- Knowledge managers: Search local knowledge base for specific standards and auto-summarize, retaining team expertise.
- Developers: Ask the agent to read a repository's README and list pending changes, aiding code review and project maintenance.
How do you install or deploy this agent?
Download the installer for your platform from GitHub Releases or the openocta.com download page: Windows .exe, macOS .dmg, Linux .deb/.rpm/.tar.gz. Double-click to install (about 30 seconds) and open the desktop client.
How do you use this agent?
After installation, configure an LLM API key: open the client's 'Model' tab or follow the first-run configuration wizard to enter the API key and select a model. Alternatively, edit the config file at ~/.openocta/openocta.json (Linux/macOS) or %APPDATA%\openocta\openocta.json (Windows). Restart the client and describe tasks in the 'Messages' tab. Developers can run from source: make build && ./openocta gateway run, then access the Control UI at http://127.0.0.1:18900.
What are this agent's strengths and limitations?
- Go single-binary runtime with ~30MB installer and low memory footprint, suitable for always-on operation.
- Local-first: data and memory stay on the machine, supports intranet deployment, no Node/Python needed in production.
- Integration with Chinese IM platforms (WeChat, WeCom, DingTalk, Feishu) and domestic LLMs.
- Four-tier memory + L4 Evolution + Knowledge Vault provide autonomous personalization.
- As a new project, community size and ecosystem maturity may lag behind projects like OpenClaw.
- Desktop-focused; cloud or team collaboration deployment may require custom extensions.
- Documentation and examples are primarily in Chinese; English support is limited.
- Some features (skills marketplace, digital employee marketplace) depend on online resources, which may be restricted in offline environments.
How does this agent compare with similar options?
Compared to OpenClaw, OpenOcta emphasizes personal desktop: double-click install, built-in Control UI, Go single-binary runtime, whereas OpenClaw is Node.js-based with CLI deployment. Compared to Hermes (Python/CLI), OpenOcta is fully Go-implemented with built-in knowledge base and evolution. It also adapts to Chinese IM and domestic models.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| OpenOcta (Octopus) This agent | 27 · Major gaps | Desktop appFree + model costs | ★ 3.2k | 1mo ago | TypeScript | — |
| Atomic Agent | 56 · Major gaps | CLIFree + model costs | ★ 3.4k | 3d ago | TypeScript | — |
| CompozyOS | 52 · Major gaps | CLIFree + model costs | ★ 2.8k | today | Go | ChatGPT · Codex · Claude Code |
| DevOps AI Guidelines & Learning Path | 25 · Major gaps | Library / SDKFree | ★ 1.6k | 25d ago | Python | — |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence: README claims local-first and data stays on machine, but no permission model, user confirmation, data flow transparency, or sensitive data handling details are provided. Dependency security, external effects, rollback, and source attribution are undocumented. Deductions: all trust criteria lack evidence; claims alone are insufficient.
Evidence: README is consistent, but no error handling or failure message documentation. Dependency availability only mentions Go 1.24+ and Node≥18, without specific dependencies or versions. Deductions: self-consistency has basic description but no details; dependency availability incomplete; failure messages no evidence.
Evidence: Clear target users (office, IT ops, marketing) and scenarios, multi-platform installers, good environment fit. Capability boundaries only mention built-in tools and MCP, not detailed. Trigger precision undocumented. Deductions: capability boundaries and trigger precision lack specifics.
Evidence: README well-structured, install notes, documentation links, examples and FAQ (partial), Apache-2.0 license clear. Naming stability not mentioned, known limitations missing, versioning changelog not provided, maintenance responsibility only community. Deductions: naming stability, known limitations, versioning changelog, and maintenance responsibility insufficient evidence.
Evidence: Output usability has UI screenshots and examples, marginal value has comparison table, cost-benefit has lightweight claims. But no actual performance data or user feedback. Deductions: output usability evidence limited, cost-benefit based on claims only.
Evidence: Claims in README have some doc links (architecture, config), but no tests or independent verification. Cross-source corroboration missing, facts vs inferences not clearly separated. Deductions: lack of verifiable test results and independent sources.
- Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
- Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
- Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
- Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
- Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
- Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
- Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
- Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
- Trust criteria lack evidence, especially permission model, user confirmation, and data flow transparency.
- Dependency security not mentioned; dependency list should be reviewed.
- Known limitations and versioning changelog missing, may affect maintenance decisions.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
Changelog * 04b69a51f3152b240bc2a09ca7c4311b2ce65327 补充签名缺少文件 * 14005e3c6623dbdec72de06738a92deae0e5a778 补充签名缺少文件 * 59a33b14c678bc312140ee3010c9c8c16e9b93fd Update README.mdView on GitHub ↗ -
Release notes excerpt
v1.0.8 ✨ 版本亮点 OpenOcta v1.0.8 聚焦可靠性:流式与模型请求更稳,Windows 控制台与本机推理排查更清晰,数字员工私有 skill 可正确加载;知识库取消开关,同步索引不再因 knowledge is disabled 失败。 💬 对话与模型 * 流式输出保留空白与换行 chunk,避免 Markdown 标题/列表粘成一行。 * 模型空响应时广播 chat/complete,前端不再一直卡在「思考中」。 * system_prompt 变更纳入 runtime fingerprint,修改提示规则后会话会重建 runtime。 * 模型 API 请求绕过本地代理直连,HTTP 超时延长至 180s,降低 Clash/V2Ray 下 TLS EOF 与慢首包超时。 🧠 知识库 * 移除 agents.defaults.knowledge.enabled 开关,Knowledge Vault 始终启用。 * 「同步索引」不再报 knowledge is disabled;旧配置中的 enabled 字段会被忽略。 👤 数字员工与技能 * 按员工 ID 正确加载私有 skill(LoadEmployeeEntries);不再误用工作区全集。 …View on GitHub ↗ -
Release notes excerpt
v1.0.7 ✨ 版本亮点 OpenOcta v1.0.7 聚焦企业微信群聊定时任务投递可靠性:修复群 chatid 大小写被破坏导致的主动发送失败,并消除定时任务结果被重复 announce 的问题。 💬 企业微信群聊发送 * 主动发送(含定时任务)在还原群 chatid 原始大小写后再调用企微 API,避免 93006 invalid chatid。 * 群聊发送可按需携带 chat_type;定时投递对 wrk… 目标自动推断为群聊。 * chatid 原始大小写为进程内缓存;Gateway 重启后,需目标群再发一条消息给机器人以重建映射。 ⏰ 定时任务投递 * delivery.mode=announce 时,结果统一由 DeliverCronResultIfNeeded 投递一次,去掉与 chat.send 路径的重复出站。 * 增加短时去重兜底,降低同一次 cron 结果被连发两条的概率。 * 该修复作用于所有通道的 announce 投递,不限企业微信。 🛠️ 升级建议 * 从 v1.0.6 升级即可获得本版本全部修复。 …View on GitHub ↗
FAQ
Does OpenOcta require internet?
Do I need programming experience?
Which LLMs are supported?
Where is data stored?
~/.openocta or %APPDATA%\openocta.