{"adoption": {"forks": 152, "observed_at": "2026-08-28T04:03:57.388370+00:00", "stars": 1203}, "canonical_url": "https://ross.abutalabs.com/products/octop", "card": {"archived": false, "artifact_type": "application", "description": "A smarter, self-hosted AI assistant — multi-user, multi-agent.", "domain": ["artificial-intelligence", "large-language-models", "chatbots", "self-hosted", "privacy", "developer-tools"], "enriched": true, "function": ["agent-framework", "chatbot", "chat-interface", "rag", "mcp", "web-framework", "http-server", "cli", "security", "scheduling"], "health_score": 100, "homepage": "https://tencentcloud.github.io/Octop/", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["TencentCloud/Octop"], "name": "TencentCloud/Octop", "platform": ["python", "self-hosted", "cross-platform", "cli"], "pushed_at": "2026-08-26T13:22:28+00:00", "repo": "TencentCloud/Octop", "stars": 1203, "tags": ["multi-agent", "multi-user", "local-first", "long-term-memory", "im-integrations", "expert-library", "mbti-personas", "acp", "feishu", "dingtalk", "discord", "jwt-auth", "pii-redaction", "ai-agents", "automation", "web-server", "docker"], "topics": ["agent", "agentic-ai", "ai", "ai-agent", "ai-agents", "local-first", "long-term-memory"], "urls": [], "use_cases": ["self-host a private AI assistant for my family or team", "run multiple AI agents with different personalities in parallel", "chat with an AI assistant from Discord or DingTalk", "give my AI assistant long-term memory across conversations", "set up a multi-user AI assistant with per-user data isolation", "connect AI agents to tools via MCP and OAuth connectors", "use AI agents inside my IDE via ACP"], "what_it_is": "Octop is an open-source, self-hosted AI assistant built on a multi-agent, multi-user architecture that runs entirely on your own machine. It offers a web dashboard, CLI, and IM integrations (Feishu, DingTalk, QQ, Discord, WeCom), with an expert library, OAuth/MCP connectors, long-term memory, and built-in security features like JWT isolation and PII redaction.", "when_to_avoid": ["you need a fully managed SaaS assistant with zero setup", "you only need a simple single-user chatbot without agent orchestration", "you require non-Python deployment environments or mobile-native apps"], "when_to_choose": ["you want full privacy and self-hosting with no cloud dependency", "you need multi-user support with authentication and data isolation", "you want agents reachable from IM platforms like Feishu, DingTalk, or Discord", "you need extensible agents with MCP connectors and an expert/skill library"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/octop", "repo": "TencentCloud/Octop", "role": "main", "score": 80}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.388370+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:19:43.804579+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a3f191ec524686a36da7604770b41c196e6ed537b9fa3cf577d02df2dab06116", "fetched_at": "2026-08-28T04:03:57.388370+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TencentCloud/Octop"}, {"content_hash": "d9ec6b1223b29475d10bde2bcde76637fb237652d7a5045a81b5c019f584a693", "fetched_at": "2026-08-29T12:27:25.331822+00:00", "kind": "homepage", "missing": false, "url": "https://tencentcloud.github.io/Octop/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 4, "rhythm": 99}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 56, "days_push": 7, "days_rel": 7, "gap_med": 1, "n_releases_24m": 20}, "score": 80, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}