{"adoption": {"forks": 449, "observed_at": "2026-08-28T04:08:32.540108+00:00", "stars": 4026}, "canonical_url": "https://ross.abutalabs.com/products/waishnav-devspace", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Turn ChatGPT into Codex! OR Turn Claude Web into Claude Code!", "domain": ["developer-tools", "large-language-models", "self-hosted"], "enriched": true, "function": ["mcp", "agent-framework", "developer-tools", "cli", "security"], "health_score": 100, "homepage": null, "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["Waishnav/devspace"], "name": "Waishnav/devspace", "platform": ["cli", "self-hosted", "cross-platform"], "pushed_at": "2026-08-26T19:25:35+00:00", "repo": "Waishnav/devspace", "stars": 4026, "tags": ["mcp-server", "chatgpt", "claude-code", "codex", "coding-agent", "tunnel", "local-execution", "ai-agents", "command-line", "nodejs"], "topics": ["agent-orchestration", "chatgpt", "claude", "claude-code", "codex", "pi-coding-agent", "dyanmic-workflow"], "urls": [], "use_cases": ["turn chatgpt into a codex-style coding agent on my local machine", "let claude web edit files and run commands locally", "self-hosted mcp server for coding agents", "run an ai coding agent without uploading code to third parties", "connect chatgpt to my local project folder securely", "give an llm terminal access through a tunnel with password auth"], "what_it_is": "DevSpace is a self-hosted MCP server and CLI that gives ChatGPT or Claude Web a secure connection to your local machine so they can read, edit, search, and run code in real projects. It exposes your filesystem and terminal through a tunnel you control, gated by a password, turning web chat UIs into Codex/Claude Code-style coding agents.", "when_to_avoid": ["you need a fully managed cloud coding agent with no local setup", "you cannot expose any HTTPS tunnel endpoint", "you prefer desktop coding agents like Claude Code or Codex CLI directly"], "when_to_choose": ["you want ChatGPT or Claude Web to work directly on local codebases", "you need a self-hosted, privacy-conscious bridge between web LLMs and your machine", "you already use tunnels like Cloudflare Tunnel or ngrok and want password-protected agent access"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/waishnav-devspace", "repo": "Waishnav/devspace", "role": "main", "score": 80}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "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:08:32.540108+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:32.540108+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:23:53.458313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bf91f2652a7389a33a11ff67f59443a16494bd2d6a305a7b3a4e25feb8217978", "fetched_at": "2026-08-28T04:08:32.540108+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Waishnav/devspace"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 5, "rhythm": 99}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 80, "days_push": 7, "days_rel": 8, "gap_med": 6.0, "n_releases_24m": 9}, "score": 80, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}