{
  "ecosystem": {
    "id": "browser-ai",
    "title": "Browser AI Ecosystem",
    "description": "Browser automation, computer-use agents, Playwright integrations, and web workflow tools.",
    "query": "browser automation ai",
    "category": "browser_agent",
    "deployment": null,
    "nodes": [
      "Browser Use",
      "Playwright",
      "Chromium",
      "Stagehand",
      "Crawling",
      "Computer Use"
    ],
    "projects": [
      {
        "project_id": "vercel-labs/agent-browser",
        "repo": "vercel-labs/agent-browser",
        "name": "agent-browser",
        "github_url": "https://github.com/vercel-labs/agent-browser",
        "homepage_url": "https://agent-browser.dev",
        "language": "Rust",
        "license": "Apache-2.0",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [],
        "description": "Browser automation CLI for AI agents",
        "overview": "Use vercel-labs/agent-browser when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
        "alternatives": [
          {
            "repo": "browserbase/stagehand",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "huggingface/huggingface.js",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "SeleniumHQ/selenium",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "vercel",
          "serverless",
          "library_only",
          "local"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product"
        ],
        "classification": {
          "category": {
            "confidence": "medium",
            "evidence": [
              "Matched \"browser automation\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "high",
            "evidence": [
              "Matched \"vercel\" in repository content.",
              "Matched \"npm install\" in repository content.",
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 49160,
          "recent_commits": 100,
          "contributors": 100,
          "issue_response_time_hours": null,
          "release_frequency_180d": 39
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "partial",
          "releases_180d": "complete",
          "contributors_90d": "partial"
        },
        "quality_score": 84,
        "agent_score": 89,
        "score": 94,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 76,
          "deployment": 90,
          "popularity": 94,
          "community": 100
        },
        "git_top_score": 94,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 84,
          "documentation": 92,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-10T23:00:21.091Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use vercel-labs/agent-browser when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
          "purpose": "Use vercel-labs/agent-browser when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
          "install": "Install as a library or package using the repository instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "vercel",
            "serverless",
            "library_only",
            "local"
          ],
          "alternatives": [
            {
              "repo": "browserbase/stagehand",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "huggingface/huggingface.js",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "SeleniumHQ/selenium",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "medium",
              "evidence": [
                "Matched \"browser automation\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "high",
              "evidence": [
                "Matched \"vercel\" in repository content.",
                "Matched \"npm install\" in repository content.",
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "partial",
            "releases_180d": "complete",
            "contributors_90d": "partial"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-10T23:00:21.091Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "Partial or estimated quality signals: commits30d, contributors90d.",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
          "last_verified_at": "2026-11-10T23:00:21.091Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product",
          "Partial or estimated quality signals: commits30d, contributors90d.",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-10T23:00:21.091Z"
      },
      {
        "project_id": "jackwener/OpenCLI",
        "repo": "jackwener/OpenCLI",
        "name": "OpenCLI",
        "github_url": "https://github.com/jackwener/OpenCLI",
        "homepage_url": "https://opencli.info/",
        "language": "JavaScript",
        "license": "Apache-2.0",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "ai-agent",
          "ai-agents",
          "ai-tools",
          "browser-automation",
          "browser-use",
          "cli",
          "playwright"
        ],
        "description": "Make Any Website into CLI & Use your logged-in browser by AI agent. ",
        "overview": "Use jackwener/OpenCLI when the user needs a browser agent project with library-only, local, cloud deployment options.",
        "alternatives": [
          {
            "repo": "Tencent/BrowserSkill",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "citrolabs/ego-lite",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "browserbase/stagehand",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "library_only",
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product"
        ],
        "classification": {
          "category": {
            "confidence": "high",
            "evidence": [
              "Matched \"playwright\" in metadata.",
              "Matched \"browser-use\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "high",
            "evidence": [
              "Matched \"npm install\" in repository content.",
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 31008,
          "recent_commits": 93,
          "contributors": 100,
          "issue_response_time_hours": null,
          "release_frequency_180d": 15
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "complete",
          "releases_180d": "complete",
          "contributors_90d": "partial"
        },
        "quality_score": 71,
        "agent_score": 86,
        "score": 92,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 74,
          "deployment": 80,
          "popularity": 90,
          "community": 100
        },
        "git_top_score": 92,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 82,
          "documentation": 84,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-10T19:00:19.779Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use jackwener/OpenCLI when the user needs a browser agent project with library-only, local, cloud deployment options.",
          "purpose": "Use jackwener/OpenCLI when the user needs a browser agent project with library-only, local, cloud deployment options.",
          "install": "Install as a library or package using the repository instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "library_only",
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "Tencent/BrowserSkill",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "citrolabs/ego-lite",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "browserbase/stagehand",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "high",
              "evidence": [
                "Matched \"playwright\" in metadata.",
                "Matched \"browser-use\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "high",
              "evidence": [
                "Matched \"npm install\" in repository content.",
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "complete",
            "releases_180d": "complete",
            "contributors_90d": "partial"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-10T19:00:19.779Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "Partial or estimated quality signals: contributors90d.",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
          "last_verified_at": "2026-11-10T19:00:19.779Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product",
          "Partial or estimated quality signals: contributors90d.",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-10T19:00:19.779Z"
      },
      {
        "project_id": "Tencent/BrowserSkill",
        "repo": "Tencent/BrowserSkill",
        "name": "BrowserSkill",
        "github_url": "https://github.com/Tencent/BrowserSkill",
        "homepage_url": null,
        "language": "TypeScript",
        "license": "MIT",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "agent",
          "browser-use",
          "dsh-plugin"
        ],
        "description": "Let AI agents use your real, logged-in browser without interrupting your work. CLI + extension for browser automation across any shell-capable AI agent.",
        "overview": "Use Tencent/BrowserSkill when the user needs a browser agent project with local, cloud deployment options.",
        "alternatives": [
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "browserbase/stagehand",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "huggingface/huggingface.js",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation"
        ],
        "classification": {
          "category": {
            "confidence": "high",
            "evidence": [
              "Matched \"browser automation\" in metadata.",
              "Matched \"browser-use\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "medium",
            "evidence": [
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 10209,
          "recent_commits": 100,
          "contributors": 48,
          "issue_response_time_hours": null,
          "release_frequency_180d": 31
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "partial",
          "releases_180d": "complete",
          "contributors_90d": "complete"
        },
        "quality_score": 78,
        "agent_score": 79,
        "score": 91,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 68,
          "deployment": 70,
          "popularity": 80,
          "community": 93
        },
        "git_top_score": 91,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 78,
          "documentation": 84,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T06:51:07.907Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use Tencent/BrowserSkill when the user needs a browser agent project with local, cloud deployment options.",
          "purpose": "Use Tencent/BrowserSkill when the user needs a browser agent project with local, cloud deployment options.",
          "install": "Run the browser agent with the setup described in the repository README.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "browserbase/stagehand",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "huggingface/huggingface.js",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "high",
              "evidence": [
                "Matched \"browser automation\" in metadata.",
                "Matched \"browser-use\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "medium",
              "evidence": [
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "partial",
            "releases_180d": "complete",
            "contributors_90d": "complete"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T06:51:07.907Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "Partial or estimated quality signals: commits30d.",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
          "last_verified_at": "2026-11-09T06:51:07.907Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "Partial or estimated quality signals: commits30d.",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T06:51:07.907Z"
      },
      {
        "project_id": "citrolabs/ego-lite",
        "repo": "citrolabs/ego-lite",
        "name": "ego-lite",
        "github_url": "https://github.com/citrolabs/ego-lite",
        "homepage_url": "https://lite.ego.app",
        "language": "JavaScript",
        "license": "MIT",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "agent-skills",
          "ai-agent",
          "automation",
          "browser",
          "browser-automation",
          "claude-code",
          "codex",
          "hermes-agent",
          "skills",
          "skills-sh"
        ],
        "description": "The fastest browser for AI agents to run browser automation, built for sharing your logged-in browser state with your AI agents, like Codex or Claude Code, without disturbing you. Zero cost, zero config.",
        "overview": "Use citrolabs/ego-lite when the user needs a browser agent project with local, cloud deployment options.",
        "alternatives": [
          {
            "repo": "vercel-labs/agent-browser",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "jo-inc/camofox-browser",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation"
        ],
        "classification": {
          "category": {
            "confidence": "medium",
            "evidence": [
              "Matched \"browser automation\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "medium",
            "evidence": [
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 22185,
          "recent_commits": 100,
          "contributors": 11,
          "issue_response_time_hours": null,
          "release_frequency_180d": 15
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "partial",
          "releases_180d": "complete",
          "contributors_90d": "complete"
        },
        "quality_score": 71,
        "agent_score": 73,
        "score": 90,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 59,
          "deployment": 70,
          "popularity": 87,
          "community": 56
        },
        "git_top_score": 90,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 72,
          "documentation": 84,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T06:00:15.826Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use citrolabs/ego-lite when the user needs a browser agent project with local, cloud deployment options.",
          "purpose": "Use citrolabs/ego-lite when the user needs a browser agent project with local, cloud deployment options.",
          "install": "Run the browser agent with the setup described in the repository README.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "vercel-labs/agent-browser",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "jo-inc/camofox-browser",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "medium",
              "evidence": [
                "Matched \"browser automation\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "medium",
              "evidence": [
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "partial",
            "releases_180d": "complete",
            "contributors_90d": "complete"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T06:00:15.826Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "Partial or estimated quality signals: commits30d.",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Evidence is incomplete; use this project as an exploration candidate until classification and quality signals are reviewed.",
          "last_verified_at": "2026-11-09T06:00:15.826Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "Partial or estimated quality signals: commits30d.",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Evidence is incomplete; use this project as an exploration candidate until classification and quality signals are reviewed.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T06:00:15.826Z"
      },
      {
        "project_id": "browserbase/stagehand",
        "repo": "browserbase/stagehand",
        "name": "stagehand",
        "github_url": "https://github.com/browserbase/stagehand",
        "homepage_url": "https://stagehand.dev",
        "language": "TypeScript",
        "license": "MIT",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "agents",
          "ai",
          "ai-agents",
          "browser-agent",
          "browser-automation",
          "cdp",
          "cloud-browser",
          "data-extraction",
          "headless-chrome",
          "playwright",
          "python",
          "typescript",
          "web-automation",
          "web-scraping"
        ],
        "description": "The SDK to extract data and interact with any site on the web. Get started with Claude Code, Codex, Eve, Mastra, and more.",
        "overview": "Use browserbase/stagehand when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
        "alternatives": [
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "jo-inc/camofox-browser",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "huggingface/huggingface.js",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "vercel",
          "serverless",
          "library_only",
          "local"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product"
        ],
        "classification": {
          "category": {
            "confidence": "medium",
            "evidence": [
              "Matched \"playwright\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "high",
            "evidence": [
              "Matched \"vercel\" in repository content.",
              "Matched \"pip install\" in repository content.",
              "Matched \"npm install\" in repository content.",
              "Matched \"pnpm add\" in repository content.",
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "Runtime blocker: python.",
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 25992,
          "recent_commits": 89,
          "contributors": 49,
          "issue_response_time_hours": null,
          "release_frequency_180d": 18
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "complete",
          "releases_180d": "complete",
          "contributors_90d": "complete"
        },
        "quality_score": 48,
        "agent_score": 85,
        "score": 93,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 67,
          "deployment": 90,
          "popularity": 88,
          "community": 94
        },
        "git_top_score": 93,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 78,
          "documentation": 92,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T15:30:22.162Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use browserbase/stagehand when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
          "purpose": "Use browserbase/stagehand when the user needs a browser agent project with vercel, serverless, library-only deployment options.",
          "install": "Install as a library or package using the repository instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "vercel",
            "serverless",
            "library_only",
            "local"
          ],
          "alternatives": [
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "jo-inc/camofox-browser",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "huggingface/huggingface.js",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "medium",
              "evidence": [
                "Matched \"playwright\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "high",
              "evidence": [
                "Matched \"vercel\" in repository content.",
                "Matched \"pip install\" in repository content.",
                "Matched \"npm install\" in repository content.",
                "Matched \"pnpm add\" in repository content.",
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "Runtime blocker: python.",
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "complete",
            "releases_180d": "complete",
            "contributors_90d": "complete"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T15:30:22.162Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
          "last_verified_at": "2026-11-09T15:30:22.162Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Evidence is usable for comparison, but agents should cite caveats before making a strong recommendation.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T15:30:22.162Z"
      },
      {
        "project_id": "jo-inc/camofox-browser",
        "repo": "jo-inc/camofox-browser",
        "name": "camofox-browser",
        "github_url": "https://github.com/jo-inc/camofox-browser",
        "homepage_url": "https://github.com/jo-inc/camofox-browser#readme",
        "language": "JavaScript",
        "license": "MIT",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "ai-agent",
          "anti-bot",
          "antidetect-browser",
          "automation",
          "bot-detection",
          "browser-automation",
          "cloudflare-bypass",
          "headless-browser",
          "javascript",
          "nodejs",
          "playwright",
          "puppeteer",
          "scraping",
          "stealth-browser",
          "web-scraping"
        ],
        "description": "Stealth headless browser for AI agents — bypass Cloudflare, bot detection, and anti-scraping. Drop-in Puppeteer/Playwright replacement.",
        "overview": "Use jo-inc/camofox-browser when the user needs a browser agent project with docker, library-only, local deployment options.",
        "alternatives": [
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "citrolabs/ego-lite",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "browserbase/stagehand",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Cloudflare Workers",
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "docker",
          "library_only",
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product"
        ],
        "classification": {
          "category": {
            "confidence": "high",
            "evidence": [
              "Matched \"browser automation\" in metadata.",
              "Matched \"playwright\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "high",
            "evidence": [
              "Found Docker configuration file.",
              "Matched \"pip install\" in repository content.",
              "Matched \"npm install\" in repository content.",
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 12209,
          "recent_commits": 0,
          "contributors": 49,
          "issue_response_time_hours": null,
          "release_frequency_180d": 19
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "complete",
          "releases_180d": "complete",
          "contributors_90d": "complete"
        },
        "quality_score": 48,
        "agent_score": 80,
        "score": 86,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 50,
          "deployment": 90,
          "popularity": 82,
          "community": 94
        },
        "git_top_score": 86,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 46,
          "documentation": 92,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T06:30:15.477Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use jo-inc/camofox-browser when the user needs a browser agent project with docker, library-only, local deployment options.",
          "purpose": "Use jo-inc/camofox-browser when the user needs a browser agent project with docker, library-only, local deployment options.",
          "install": "Run with Docker using the repository's container instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "docker",
            "library_only",
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "citrolabs/ego-lite",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "browserbase/stagehand",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "high",
              "evidence": [
                "Matched \"browser automation\" in metadata.",
                "Matched \"playwright\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "high",
              "evidence": [
                "Found Docker configuration file.",
                "Matched \"pip install\" in repository content.",
                "Matched \"npm install\" in repository content.",
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "complete",
            "releases_180d": "complete",
            "contributors_90d": "complete"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T06:30:15.477Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
          "last_verified_at": "2026-11-09T06:30:15.477Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T06:30:15.477Z"
      },
      {
        "project_id": "apify/crawlee",
        "repo": "apify/crawlee",
        "name": "crawlee",
        "github_url": "https://github.com/apify/crawlee",
        "homepage_url": "https://crawlee.dev",
        "language": "TypeScript",
        "license": "Apache-2.0",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "apify",
          "automation",
          "crawler",
          "crawling",
          "headless",
          "headless-chrome",
          "javascript",
          "nodejs",
          "npm",
          "playwright",
          "puppeteer",
          "scraper",
          "scraping",
          "typescript",
          "web-crawler",
          "web-crawling",
          "web-scraping"
        ],
        "description": "Crawlee—A web scraping and browser automation library for Node.js to build reliable crawlers. In JavaScript and TypeScript. Extract data for AI, LLMs, RAG, or GPTs. Download HTML, PDF, JPG, PNG, and other files from websites. Works with Puppeteer, Playwright, Cheerio, JSDOM, and raw HTTP. Both headful and headless mode. With proxy rotation.",
        "overview": "Use apify/crawlee when the user needs a browser agent project with docker, library-only, local deployment options.",
        "alternatives": [
          {
            "repo": "Tencent/BrowserSkill",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "browserbase/stagehand",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Vector database",
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "docker",
          "library_only",
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product"
        ],
        "classification": {
          "category": {
            "confidence": "high",
            "evidence": [
              "Matched \"browser automation\" in metadata.",
              "Matched \"playwright\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "high",
            "evidence": [
              "Matched \"npm install\" in repository content.",
              "Matched \"library\" in repository content.",
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "Runtime blocker: python.",
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 26394,
          "recent_commits": 86,
          "contributors": 100,
          "issue_response_time_hours": null,
          "release_frequency_180d": 6
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "complete",
          "releases_180d": "complete",
          "contributors_90d": "partial"
        },
        "quality_score": 44,
        "agent_score": 84,
        "score": 90,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 61,
          "deployment": 90,
          "popularity": 88,
          "community": 100
        },
        "git_top_score": 90,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 73,
          "documentation": 84,
          "stability": 90,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T15:30:24.255Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use apify/crawlee when the user needs a browser agent project with docker, library-only, local deployment options.",
          "purpose": "Use apify/crawlee when the user needs a browser agent project with docker, library-only, local deployment options.",
          "install": "Run with Docker using the repository's container instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "docker",
            "library_only",
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "Tencent/BrowserSkill",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "browserbase/stagehand",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "high",
              "evidence": [
                "Matched \"browser automation\" in metadata.",
                "Matched \"playwright\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "high",
              "evidence": [
                "Matched \"npm install\" in repository content.",
                "Matched \"library\" in repository content.",
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "Runtime blocker: python.",
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "complete",
            "releases_180d": "complete",
            "contributors_90d": "partial"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T15:30:24.255Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "users expecting a complete hosted product",
            "Partial or estimated quality signals: contributors90d.",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
          "last_verified_at": "2026-11-09T15:30:24.255Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "users expecting a complete hosted product",
          "Partial or estimated quality signals: contributors90d.",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Classification evidence and quality signals are strong enough for shortlist reasoning when metadata is current.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T15:30:24.255Z"
      },
      {
        "project_id": "browserless/browserless",
        "repo": "browserless/browserless",
        "name": "browserless",
        "github_url": "https://github.com/browserless/browserless",
        "homepage_url": "https://browserless.io",
        "language": "TypeScript",
        "license": "NOASSERTION",
        "project_kind": "project",
        "category": [
          "browser_agent"
        ],
        "tags": [
          "browserless",
          "chrome",
          "docker",
          "firefox",
          "nodejs",
          "playwright",
          "puppeteer",
          "typescript",
          "webkit",
          "websocket"
        ],
        "description": "Deploy headless browsers in Docker. Run on our cloud or bring your own. Free for non-commercial uses.",
        "overview": "Use browserless/browserless when the user needs a browser agent project with docker, local, cloud deployment options.",
        "alternatives": [
          {
            "repo": "jackwener/OpenCLI",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "jo-inc/camofox-browser",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          },
          {
            "repo": "huggingface/huggingface.js",
            "reason": "Same browser agent intent with browser_automation, workflow overlap."
          }
        ],
        "related": [],
        "dependencies": [
          "Browser automation",
          "LLM provider"
        ],
        "deployments": [
          "docker",
          "local",
          "cloud"
        ],
        "difficulty": "intermediate",
        "cloudflare_ready": false,
        "use_cases": [
          "build browser automation agents",
          "operate web tasks with LLMs",
          "test web workflows"
        ],
        "not_good_for": [
          "edge-only Cloudflare Workers deployment without adaptation"
        ],
        "classification": {
          "category": {
            "confidence": "medium",
            "evidence": [
              "Matched \"playwright\" in metadata."
            ]
          },
          "deployment": {
            "confidence": "medium",
            "evidence": [
              "Local usage is assumed for open source repositories unless contradicted."
            ]
          },
          "difficulty": {
            "confidence": "medium",
            "evidence": [
              "No strong beginner or advanced signal found; defaulting to intermediate."
            ]
          },
          "cloudflare_ready": {
            "confidence": "high",
            "evidence": [
              "No Cloudflare deployment signal detected.",
              "No wrangler.toml found in inspected repository files."
            ]
          }
        },
        "quality_signals": {
          "stars": 13915,
          "recent_commits": 46,
          "contributors": 82,
          "issue_response_time_hours": null,
          "release_frequency_180d": 33
        },
        "quality_signal_confidence": {
          "stars_30d_delta": "snapshot",
          "stars30d_window_days": 31,
          "commits_30d": "complete",
          "releases_180d": "complete",
          "contributors_90d": "complete"
        },
        "quality_score": 42,
        "agent_score": 83,
        "score": 93,
        "agent_score_breakdown": {
          "documentation": 90,
          "maintenance": 68,
          "deployment": 80,
          "popularity": 83,
          "community": 100
        },
        "git_top_score": 93,
        "git_top_score_breakdown": {
          "community": 100,
          "maintenance": 78,
          "documentation": 84,
          "stability": 100,
          "adoption": 100,
          "agent_readability": 100
        },
        "verification": {
          "schema_version": "git-top.verification.v1",
          "overall_status": "partial",
          "observed_at": "2026-11-09T15:30:20.586Z",
          "signals": {
            "activity": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.pushed_at",
                "metrics.recent_push_days"
              ]
            },
            "license": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.license"
              ]
            },
            "documentation": {
              "status": "observed",
              "source": "github_metadata",
              "evidence": [
                "project.description"
              ]
            },
            "runtime": {
              "status": "inferred",
              "source": "git_top_heuristic",
              "evidence": [
                "agent_card.deployment",
                "agent_card.cloudflare_ready"
              ]
            },
            "install": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "installation/build probe is not enabled"
              ]
            },
            "security": {
              "status": "not_run",
              "source": "git_top_runtime",
              "evidence": [
                "dependency/security scan is not enabled"
              ]
            },
            "mcp": {
              "status": "not_applicable",
              "source": "git_top_runtime",
              "evidence": [
                "project is not classified as mcp_server"
              ]
            }
          },
          "coverage": {
            "observed": 3,
            "inferred": 1,
            "not_run": 2,
            "unknown": 0
          },
          "next_steps": [
            "Run an installation/build probe before production adoption.",
            "Run a dependency and security scan before treating the score as a trust claim."
          ]
        },
        "summary": {
          "tl_dr": "Use browserless/browserless when the user needs a browser agent project with docker, local, cloud deployment options.",
          "purpose": "Use browserless/browserless when the user needs a browser agent project with docker, local, cloud deployment options.",
          "install": "Run with Docker using the repository's container instructions.",
          "inputs": [
            "URL or page task",
            "browser session",
            "navigation constraints"
          ],
          "outputs": [
            "browser actions",
            "page state",
            "extracted data"
          ],
          "good_for": [
            "build browser automation agents",
            "operate web tasks with LLMs",
            "test web workflows",
            "web automation",
            "browser tasks",
            "UI-driven workflows"
          ],
          "not_good_for": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "backend-only jobs",
            "offline batch processing"
          ],
          "deployment": [
            "docker",
            "local",
            "cloud"
          ],
          "alternatives": [
            {
              "repo": "jackwener/OpenCLI",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "jo-inc/camofox-browser",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            },
            {
              "repo": "huggingface/huggingface.js",
              "reason": "Same browser agent intent with browser_automation, workflow overlap."
            }
          ]
        },
        "evidence": {
          "classification": {
            "category": {
              "confidence": "medium",
              "evidence": [
                "Matched \"playwright\" in metadata."
              ]
            },
            "deployment": {
              "confidence": "medium",
              "evidence": [
                "Local usage is assumed for open source repositories unless contradicted."
              ]
            },
            "difficulty": {
              "confidence": "medium",
              "evidence": [
                "No strong beginner or advanced signal found; defaulting to intermediate."
              ]
            },
            "cloudflare_ready": {
              "confidence": "high",
              "evidence": [
                "No Cloudflare deployment signal detected.",
                "No wrangler.toml found in inspected repository files."
              ]
            }
          },
          "quality_signal_confidence": {
            "stars_30d_delta": "snapshot",
            "stars30d_window_days": 31,
            "commits_30d": "complete",
            "releases_180d": "complete",
            "contributors_90d": "complete"
          },
          "verification": {
            "schema_version": "git-top.verification.v1",
            "overall_status": "partial",
            "observed_at": "2026-11-09T15:30:20.586Z",
            "signals": {
              "activity": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.pushed_at",
                  "metrics.recent_push_days"
                ]
              },
              "license": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.license"
                ]
              },
              "documentation": {
                "status": "observed",
                "source": "github_metadata",
                "evidence": [
                  "project.description"
                ]
              },
              "runtime": {
                "status": "inferred",
                "source": "git_top_heuristic",
                "evidence": [
                  "agent_card.deployment",
                  "agent_card.cloudflare_ready"
                ]
              },
              "install": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "installation/build probe is not enabled"
                ]
              },
              "security": {
                "status": "not_run",
                "source": "git_top_runtime",
                "evidence": [
                  "dependency/security scan is not enabled"
                ]
              },
              "mcp": {
                "status": "not_applicable",
                "source": "git_top_runtime",
                "evidence": [
                  "project is not classified as mcp_server"
                ]
              }
            },
            "coverage": {
              "observed": 3,
              "inferred": 1,
              "not_run": 2,
              "unknown": 0
            },
            "next_steps": [
              "Run an installation/build probe before production adoption.",
              "Run a dependency and security scan before treating the score as a trust claim."
            ]
          },
          "source_fields": [
            "project.description",
            "project.topics",
            "project.language",
            "project.license",
            "agent_card.summary_for_agent",
            "agent_card.use_cases",
            "agent_card.deployment",
            "agent_card.classification",
            "metrics",
            "verification.signals"
          ],
          "caveats": [
            "edge-only Cloudflare Workers deployment without adaptation",
            "Independent installation, security, or runtime probes have not been run for this project."
          ],
          "confidence_reason": "Evidence is incomplete; use this project as an exploration candidate until classification and quality signals are reviewed.",
          "last_verified_at": "2026-11-09T15:30:20.586Z"
        },
        "caveats": [
          "edge-only Cloudflare Workers deployment without adaptation",
          "Independent installation, security, or runtime probes have not been run for this project."
        ],
        "confidence_reason": "Evidence is incomplete; use this project as an exploration candidate until classification and quality signals are reviewed.",
        "source_fields": [
          "project.description",
          "project.topics",
          "project.language",
          "project.license",
          "agent_card.summary_for_agent",
          "agent_card.use_cases",
          "agent_card.deployment",
          "agent_card.classification",
          "metrics",
          "verification.signals"
        ],
        "last_verified_at": "2026-11-09T15:30:20.586Z"
      }
    ],
    "project_count": 8,
    "stats": {
      "concept_count": 6,
      "project_count": 8,
      "edge_count": 35,
      "top_project": "vercel-labs/agent-browser",
      "average_git_top_score": 91
    },
    "map": {
      "nodes": [
        {
          "id": "ecosystem:browser-ai",
          "label": "Browser AI Ecosystem",
          "kind": "ecosystem",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:browser-use",
          "label": "Browser Use",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:playwright",
          "label": "Playwright",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:chromium",
          "label": "Chromium",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:stagehand",
          "label": "Stagehand",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:crawling",
          "label": "Crawling",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "concept:browser-ai:computer-use",
          "label": "Computer Use",
          "kind": "concept",
          "ecosystem_id": "browser-ai"
        },
        {
          "id": "project:vercel-labs/agent-browser",
          "label": "agent-browser",
          "kind": "project",
          "repo": "vercel-labs/agent-browser",
          "score": 94,
          "category": "browser_agent"
        },
        {
          "id": "project:jackwener/OpenCLI",
          "label": "OpenCLI",
          "kind": "project",
          "repo": "jackwener/OpenCLI",
          "score": 92,
          "category": "browser_agent"
        },
        {
          "id": "project:Tencent/BrowserSkill",
          "label": "BrowserSkill",
          "kind": "project",
          "repo": "Tencent/BrowserSkill",
          "score": 91,
          "category": "browser_agent"
        },
        {
          "id": "project:citrolabs/ego-lite",
          "label": "ego-lite",
          "kind": "project",
          "repo": "citrolabs/ego-lite",
          "score": 90,
          "category": "browser_agent"
        },
        {
          "id": "project:browserbase/stagehand",
          "label": "stagehand",
          "kind": "project",
          "repo": "browserbase/stagehand",
          "score": 93,
          "category": "browser_agent"
        },
        {
          "id": "project:jo-inc/camofox-browser",
          "label": "camofox-browser",
          "kind": "project",
          "repo": "jo-inc/camofox-browser",
          "score": 86,
          "category": "browser_agent"
        },
        {
          "id": "project:apify/crawlee",
          "label": "crawlee",
          "kind": "project",
          "repo": "apify/crawlee",
          "score": 90,
          "category": "browser_agent"
        },
        {
          "id": "project:browserless/browserless",
          "label": "browserless",
          "kind": "project",
          "repo": "browserless/browserless",
          "score": 93,
          "category": "browser_agent"
        }
      ],
      "edges": [
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:browser-use",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:playwright",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:chromium",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:stagehand",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:crawling",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "concept:browser-ai:computer-use",
          "kind": "contains",
          "weight": 80
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:vercel-labs/agent-browser",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:jackwener/OpenCLI",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:Tencent/BrowserSkill",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:citrolabs/ego-lite",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:browserbase/stagehand",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:jo-inc/camofox-browser",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:apify/crawlee",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "ecosystem:browser-ai",
          "target": "project:browserless/browserless",
          "kind": "contains_project",
          "weight": 72
        },
        {
          "source": "project:vercel-labs/agent-browser",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:vercel-labs/agent-browser",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jackwener/OpenCLI",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jackwener/OpenCLI",
          "target": "concept:browser-ai:playwright",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jackwener/OpenCLI",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:Tencent/BrowserSkill",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:Tencent/BrowserSkill",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:citrolabs/ego-lite",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:citrolabs/ego-lite",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserbase/stagehand",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserbase/stagehand",
          "target": "concept:browser-ai:playwright",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserbase/stagehand",
          "target": "concept:browser-ai:stagehand",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jo-inc/camofox-browser",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jo-inc/camofox-browser",
          "target": "concept:browser-ai:playwright",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:jo-inc/camofox-browser",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:apify/crawlee",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:apify/crawlee",
          "target": "concept:browser-ai:playwright",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:apify/crawlee",
          "target": "concept:browser-ai:crawling",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserless/browserless",
          "target": "concept:browser-ai:browser-use",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserless/browserless",
          "target": "concept:browser-ai:playwright",
          "kind": "matches_concept",
          "weight": 64
        },
        {
          "source": "project:browserless/browserless",
          "target": "concept:browser-ai:computer-use",
          "kind": "matches_concept",
          "weight": 64
        }
      ]
    },
    "exploration_paths": [
      {
        "label": "Discover Projects",
        "description": "Browse indexed projects around Browser AI Ecosystem.",
        "href": "/api/search?q=browser%20automation%20ai&ranking=browse&limit=12",
        "kind": "search"
      },
      {
        "label": "Get Recommendations",
        "description": "Generate an explainable shortlist for Browser AI Ecosystem.",
        "href": "/recommend?use_case=choose+projects+for+Browser+AI+Ecosystem&limit=5&category=browser_agent",
        "kind": "recommend"
      },
      {
        "label": "Open Graph",
        "description": "Inspect relationships around vercel-labs/agent-browser.",
        "href": "/graph/vercel-labs/agent-browser",
        "kind": "graph"
      },
      {
        "label": "Find Alternatives",
        "description": "Find replacements and adjacent options for vercel-labs/agent-browser.",
        "href": "/alternatives/vercel-labs/agent-browser",
        "kind": "alternatives"
      },
      {
        "label": "Explain Score",
        "description": "Understand why vercel-labs/agent-browser has its Git.Top Score.",
        "href": "/score/vercel-labs/agent-browser",
        "kind": "score"
      },
      {
        "label": "Compare Options",
        "description": "Compare vercel-labs/agent-browser and jackwener/OpenCLI.",
        "href": "/compare/vercel-labs-agent-browser...jackwener-OpenCLI",
        "kind": "compare"
      }
    ],
    "exploration_journeys": [
      {
        "label": "Choose a production candidate",
        "description": "Start broad in Browser AI Ecosystem, then narrow to one project with score and graph evidence.",
        "steps": [
          {
            "label": "Discover",
            "href": "/categories/browser_agent",
            "description": "Browse the ecosystem entry point."
          },
          {
            "label": "Recommend",
            "href": "/recommend?use_case=choose+projects+for+Browser+AI+Ecosystem&limit=5&category=browser_agent",
            "description": "Generate a constrained shortlist."
          },
          {
            "label": "Score",
            "href": "/score/vercel-labs/agent-browser",
            "description": "Inspect vercel-labs/agent-browser risk and score evidence."
          }
        ]
      },
      {
        "label": "Map dependencies and neighbors",
        "description": "Follow graph relationships before deciding whether a project fits the stack.",
        "steps": [
          {
            "label": "Graph",
            "href": "/graph/vercel-labs/agent-browser",
            "description": "Open vercel-labs/agent-browser relationship graph."
          },
          {
            "label": "Related",
            "href": "/api/related/vercel-labs/agent-browser?limit=8",
            "description": "Inspect adjacent projects as structured JSON."
          },
          {
            "label": "Atlas",
            "href": "/api/atlas/browser-ai?limit=8",
            "description": "Fetch the ecosystem map for agent planning."
          }
        ]
      },
      {
        "label": "Compare replacement paths",
        "description": "Move from the top project to alternatives and a decision matrix.",
        "steps": [
          {
            "label": "Alternatives",
            "href": "/alternatives/vercel-labs/agent-browser",
            "description": "Find alternatives for vercel-labs/agent-browser."
          },
          {
            "label": "Compare",
            "href": "/api/compare?repos=vercel-labs%2Fagent-browser%2Cjackwener%2FOpenCLI",
            "description": "Compare vercel-labs/agent-browser and jackwener/OpenCLI."
          },
          {
            "label": "Agent Map",
            "href": "/api/agent-map",
            "description": "Choose the next REST or MCP surface."
          }
        ]
      }
    ],
    "comparison_paths": [
      {
        "label": "Compare leading candidates",
        "description": "Compare the strongest indexed projects in Browser AI Ecosystem before choosing a default.",
        "repos": [
          "vercel-labs/agent-browser",
          "jackwener/OpenCLI",
          "Tencent/BrowserSkill",
          "citrolabs/ego-lite"
        ],
        "href": "/compare/vercel-labs-agent-browser...jackwener-OpenCLI...Tencent-BrowserSkill...citrolabs-ego-lite",
        "api_href": "/api/compare?repos=vercel-labs%2Fagent-browser%2Cjackwener%2FOpenCLI%2CTencent%2FBrowserSkill%2Ccitrolabs%2Fego-lite",
        "decision_focus": "winner_by_agent_score",
        "context": {
          "ecosystem_id": "browser-ai",
          "category": "browser_agent",
          "deployment": null
        }
      },
      {
        "label": "Evaluate fallback options",
        "description": "Compare high-quality fallback candidates when the top project is not the right operational fit.",
        "repos": [
          "vercel-labs/agent-browser",
          "jackwener/OpenCLI",
          "Tencent/BrowserSkill",
          "citrolabs/ego-lite"
        ],
        "href": "/compare/vercel-labs-agent-browser...jackwener-OpenCLI...Tencent-BrowserSkill...citrolabs-ego-lite",
        "api_href": "/api/compare?repos=vercel-labs%2Fagent-browser%2Cjackwener%2FOpenCLI%2CTencent%2FBrowserSkill%2Ccitrolabs%2Fego-lite",
        "decision_focus": "fallback_quality",
        "context": {
          "ecosystem_id": "browser-ai",
          "category": "browser_agent",
          "deployment": null
        }
      }
    ],
    "links": {
      "page": "/atlas/browser-ai",
      "search_api": "/api/search?q=browser%20automation%20ai&ranking=browse&limit=8",
      "recommend_api": "/api/recommend?use_case=choose+projects+for+Browser+AI+Ecosystem&limit=8&category=browser_agent",
      "graph": "/api/graph/vercel-labs/agent-browser?limit=24"
    }
  },
  "metadata": {
    "source": "d1",
    "reason": "d1_query",
    "project_count": 1226,
    "generated_at": "2026-11-11T00:23:02.526Z",
    "snapshot_id": "d1:1226:2026-11-11T00:00:28.077Z",
    "latest_synced_at": "2026-11-11T00:00:28.077Z",
    "schema_version": "git-top.knowledge.v1",
    "loaded_project_limit": 2000,
    "truncated": false
  }
}