{"adoption": {"forks": 1502, "observed_at": "2026-08-28T04:11:09.348683+00:00", "stars": 15191}, "canonical_url": "https://ross.abutalabs.com/products/cc-connect", "card": {"archived": false, "artifact_type": "service", "description": "Bridge local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex) to messaging platforms (Feishu/Lark, DingTalk, Slack, Telegram, Discord, LINE, WeChat Work). Chat with your AI dev assistant from anywhere — no public IP required for most platforms.", "domain": ["developer-tools", "messaging-platforms"], "enriched": true, "function": ["chatbot", "agent-framework", "developer-tools", "workflow-automation"], "health_score": 100, "homepage": null, "language": "Go", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["chenhg5/cc-connect"], "name": "chenhg5/cc-connect", "platform": ["windows", "go", "cross-platform"], "pushed_at": "2026-08-26T13:33:19+00:00", "repo": "chenhg5/cc-connect", "stars": 15191, "tags": ["claude-code", "cursor", "gemini-cli", "codex", "feishu", "lark", "dingtalk", "slack", "telegram", "discord", "wechat-work", "messaging-bridge", "remote-access", "ai-agents", "automation", "linux", "macos"], "topics": [], "urls": [], "use_cases": ["control claude code from telegram", "chat with my ai coding agent from slack", "run local ai dev assistant remotely via feishu", "bridge cursor agent to dingtalk", "message my coding agent from discord without public ip", "manage local codebase tasks from phone via messaging app"], "what_it_is": "CC-Connect is a Go-based bridge that connects local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex, Kimi CLI) to instant messaging platforms like Feishu/Lark, DingTalk, Slack, Telegram, Discord, and WeChat Work. It lets developers chat with their AI dev assistant remotely without needing a public IP for most platforms.", "when_to_avoid": ["you need a fully hosted SaaS solution rather than a self-run bridge", "you require a project with an explicit license file for commercial compliance", "you only need chat with cloud-hosted LLMs and no local agent integration"], "when_to_choose": ["you use AI coding agents locally and want to interact with them from messaging apps on the go", "you want remote access to your dev assistant without exposing a public IP", "your team communicates on Feishu, DingTalk, Slack, Telegram, or Discord and wants an AI assistant in the chat"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cc-connect", "repo": "chenhg5/cc-connect", "role": "main", "score": 81}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "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:11:09.348683+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:09.348683+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:06:34.089233+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "606836c23fc6fe8059f34812a0d1896e48813cc227edb469af6517f03d9ff27d", "fetched_at": "2026-08-28T04:11:09.348683+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chenhg5/cc-connect"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 13, "rhythm": 98}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 186, "days_push": 7, "days_rel": 17, "gap_med": 1.5, "n_releases_24m": 13}, "score": 81, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}