{"adoption": {"forks": 103, "observed_at": "2026-09-03T02:15:06.355621+00:00", "stars": 1056}, "canonical_url": "https://ross.abutalabs.com/products/ccpocket", "card": {"archived": false, "artifact_type": "application", "description": "Mobile client for Codex and Claude — control coding agents from your phone via WebSocket bridge", "domain": ["developer-tools", "large-language-models", "mobile-development", "cross-platform"], "enriched": true, "function": ["websocket", "developer-tools", "chat-interface"], "health_score": 100, "homepage": "https://k9i-0.github.io/ccpocket/install/", "language": "Dart", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["K9i-0/ccpocket"], "name": "K9i-0/ccpocket", "platform": ["windows", "self-hosted"], "pushed_at": "2026-09-02T23:17:26+00:00", "repo": "K9i-0/ccpocket", "stars": 1056, "tags": ["claude-code", "codex", "coding-agents", "remote-control", "bridge-server", "mobile-client", "websocket-bridge", "qr-code-pairing", "ai-agents", "ios", "android", "macos", "linux", "flutter", "nodejs"], "topics": ["android", "bridge-server", "claude-code", "cli", "flutter", "ios", "mobile", "remote-control", "typescript", "websocket", "codex", "openai", "app-server"], "urls": [], "use_cases": ["control claude code sessions from my phone", "run codex agent remotely from iphone", "approve coding agent permission prompts on the go", "review agent diffs from mobile", "resume coding agent sessions from tablet", "self-hosted remote control for AI coding agents"], "what_it_is": "CC Pocket is a Flutter-based mobile and desktop client for controlling Codex and Claude Code coding-agent sessions remotely. A self-hosted Node.js Bridge Server runs on your dev machine and connects to the app over WebSocket, letting you start sessions, approve actions, and review diffs from your phone.", "when_to_avoid": ["you want a fully cloud-hosted agent service with no local machine", "you don't use Codex or Claude Code as your coding agents", "you need stable Linux/Windows desktop support (still experimental)"], "when_to_choose": ["you run Codex or Claude Code locally and want to monitor/approve sessions away from your desk", "you want your code to stay on your own machine with a self-hosted bridge", "you need cross-platform clients (iOS, Android, macOS, experimental Linux/Windows)"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ccpocket", "repo": "K9i-0/ccpocket", "role": "main", "score": 79}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.355621+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:01:55.210223+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd77b3ed629c3ea5eaf91258bc6192fc567c7da820652d280d213437b6977df9", "fetched_at": "2026-09-03T02:15:06.355621+00:00", "kind": "readme", "missing": false, "url": "https://github.com/K9i-0/ccpocket"}, {"content_hash": "7952e240a45f8813f1ac4a853d438a95266371e6e38951a099b7c05545661116", "fetched_at": "2026-08-29T13:02:33.324484+00:00", "kind": "homepage", "missing": false, "url": "https://k9i-0.github.io/ccpocket/install/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 14, "rhythm": 88}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 209, "days_push": 0, "days_rel": 1, "gap_med": 0, "n_releases_24m": 808}, "score": 79, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 3, "stale_scrape": false}}