Skip to content

Since the last run

Overall +9 points

browserbase/stagehand (opens in a new tab)

An exceptionally agent-ready browser automation framework with pristine documentation, robust safety boundaries, and clear multi-language structures.

TypeScript★ 24,561396 open issuesMIT License
Overall score: 88 out of 100
Firm grip

last scored 2026-09-20 · both lenses

Readiness lenses

The same repo, two ways: how ready it is for an AI coding agent, and for a human newcomer. Switch lenses to see each one's score and checks.

How ready the repo is for an AI coding agent to read, build, and operate it.

88 / 100

28 of 41 checks passed across 6 categories.

  • Machine Orientation

    95

    Exceptionally well-documented and structured for AI agents across TypeScript, Python, and Go.

    The repository provides exceptional machine orientation with a comprehensive README, a focused AGENTS.md detailing stacked PR workflows, a clear justfile, and full multi-language package instructions. Essential build, test, and generation commands are explicitly machine-readable via the justfile and root package.json. This securely clears the Solid band.

  • Reproducible Setup

    85

    Solid setup driven by just and robust lockfiles, with minor gaps in node version pinning and devcontainers.

    The repository provides a comprehensive setup workflow via just and make commands, supported by multiple lockfiles (uv.lock, go.sum, pnpm-lock.yaml), a Dockerfile, and clear contributor guidelines in CONTRIBUTING.md. Minor friction stems from floating Node engine requirements in package.json and the lack of a pre-configured devcontainer, placing it firmly in the Solid band.

  • Code Navigability

    85

    Solid monorepo layout with clear module boundaries and explicit tooling, easily navigable by an agent.

    The repository features a conventional monorepo layout with clear module boundaries (`packages/protocol`, `packages/sdk-ts`, `packages/sdk-python`, `packages/sdk-go`, `packages/extension`), a robust task runner (`justfile`), and explicit types and naming across its TypeScript, Python, and Go codebases. This places the repository firmly in the Solid band (70–89), where an agent can easily navigate and localize code changes without stumbling.

  • Verification Surface

    85

    Comprehensive multi-language verification suite backed by just and CI workflows.

    Solid verification essentials are fully defined via justfile, package.json scripts, and a 6-workflow GitHub Actions CI pipeline covering TypeScript, Python, and Go checks, tests, and formatting. The repository clearly provides end-to-end runnable verification commands (`just check`, `just test`), clearing the Solid band.

  • Agent Safety

    95

    Exemplary secret hygiene and agent safety boundaries, landing safely in the top tier.

    The repository exhibits strong agent safety hygiene with a proper .env.example template, zero secret-shaped hits, gitignore coverage for environment files, and clean CODEOWNERS boundaries. It securely supports autonomous coding agents without exposing hardcoded secrets or destructive unfiltered operations.

  • Context Economy

    85

    Solid context economy with a clear AGENTS.md and monorepo structure, missing only an llms.txt index.

    The repository provides strong context-economy essentials, including a dedicated AGENTS.md, clean ignore configurations, and modular monorepo packages, though it lacks an explicit llms.txt. This places it solidly in the 70–89 band.

  • Machine Orientation

    6 checks passed4 problems found

    • lowllms.txt present

      An llms.txt is the emerging machine-orientation standard — a curated map for LLMs.

      Fix: Add an llms.txt pointing at the key docs and entry points.

    • lowArchitecture doc

      An ARCHITECTURE doc hands an agent the module map instead of making it infer one.

      Fix: Add an ARCHITECTURE.md describing the major components and how they fit.

    • lowREADME shows usage

      A usage/example section tells an agent how the project is actually invoked.

      Fix: Add a Usage or Examples section to the README with a runnable snippet.

    • lowExamples directory

      An examples/ directory gives an agent runnable, copyable references for the API.

      Fix: Add an examples/ directory with small, runnable usage samples.

    • README present — An agent reconstructs what the repo is and how to work in it from the README first.
    • Agent instructions file — AGENTS.md / CLAUDE.md is the direct, machine-read channel for entry points and conventions.
    • Agent instructions stay lean — A bloated instructions file burns context and measurably hurts more than it helps.
    • Repository description set — The one-line description is the fastest orientation signal an agent reads.
    • Topics set — GitHub topics situate the repo's domain and stack for an agent at a glance.
    • Contribution conventions are written down — A contributor guide is where an agent learns the branch, commit, and review conventions it must follow.
  • Reproducible Setup

    5 checks passed2 problems found

    • lowVersion pins are exact

      A floating pin (a bare major, or a range) still drifts between installs.

      Fix: Pin to an exact or minor version, not a floating range.

    • lowDev container

      A .devcontainer gives an agent a one-command, fully-declared environment.

      Fix: Add a .devcontainer so the toolchain is declared, not assumed.

    • Lockfile committed — Without a lockfile two clones can resolve different dependency trees — the build isn't reproducible.
    • Runtime / toolchain pinned — An unpinned runtime makes an agent guess the version a clean environment needs.
    • Env template present — A .env.example tells an agent which configuration keys it must supply to run.
    • Container or dev-container — A Dockerfile / compose / devcontainer removes 'works on my machine' from setup.
    • README documents setup — Explicit install/setup steps are what let an agent go from clone to running.
  • Code Navigability

    2 checks passed3 problems found

    • lowTypeScript strict mode on

      Strict typing gives an agent typed signatures to anchor an edit on, not guesses.

      Fix: Turn on `strict` in tsconfig.json.

    • low.editorconfig present

      An .editorconfig keeps whitespace and encoding consistent, so diffs stay legible.

      Fix: Add an .editorconfig pinning indentation, charset, and final-newline.

    • lowTyped public API

      A declared `types` entry gives an agent typed signatures to anchor an edit on.

      Fix: Ship type declarations and point package.json `types`/`typings` at them.

    • Conventional source layout — A recognised src/ · lib/ · app/ layout lets an agent localise code without spelunking.
    • Formatter configured — A formatter config (Prettier/Biome/rustfmt/…) keeps style uniform across the tree.
  • Verification Surface

    7 checks passed0 problems found

    • Tests present — Runnable tests are the ground truth an agent checks its own edits against.
    • Test command defined — A `test` script is the documented, discoverable way to run the suite.
    • Lint command defined — A linter an agent can run catches a class of mistakes before they ship.
    • CI configured — Readable CI is the feedback loop an agent reads to know what 'green' means here.
    • Task runner present — A Makefile / Taskfile / justfile gives an agent a single index of the project's commands.
    • Typecheck command — A typecheck script lets an agent catch type errors before they ship.
    • Build command — A documented build command is the discoverable way for an agent to produce artifacts.
  • Agent Safety

    6 checks passed2 problems found

    • mediumSecurity policy

      A SECURITY.md is where an autonomous security agent reads this repo's rules before acting on it.

      Fix: Add a SECURITY.md stating the disclosure channel and the repo's security rules.

    • lowAutomated dependency updates

      Dependabot / Renovate keeps dependencies patched without a human in the loop.

      Fix: Enable Dependabot or Renovate.

    • No committed .env — A tracked real .env hands secrets to anything — including an agent — that reads the repo.
    • No exposed secrets — Secret-shaped literals in tracked files are a live credential leak.
    • .gitignore covers env files — An ignore rule for .env is what keeps the next careless commit from leaking secrets.
    • CODEOWNERS present — CODEOWNERS marks the 'don't touch without review' zones an agent should respect.
    • .gitignore present — A .gitignore is the first guard against an agent committing secrets or build junk.
    • License makes the code reusable — Without a license an agent cannot safely copy, redistribute, or vendor any of this code.
  • Context Economy

    2 checks passed2 problems found

    • lowGenerated / vendored files marked

      A .gitattributes linguist marker tells tools (and agents) what to skip.

      Fix: Mark generated/vendored paths in .gitattributes (linguist-generated / linguist-vendored).

    • lowNo oversized source file

      A single file in the hundreds of KB blows past an agent's effective context window.

      Fix: Split the largest files along their natural seams.

    • Dependencies not vendored in — A committed node_modules / vendor tree drowns the real signal an agent needs.
    • Build output not committed — Generated dist/ · build/ output is noise an agent has to read past.

Where the grip slips

  1. lowVerification Surface+3 pts if fixed

    External dependency reliance in tests

    Integration tests and some browser evals depend on external API keys or headless browsers that might fail in disconnected agent environments without setup.

    Fix: Ensure documentation or pre-check scripts cleanly skip or mock external keys when offline.

  2. lowCode Navigability+2 pts if fixed

    Missing architecture document

    Architecture document explaining cross-package protocol generation flow is missing.

    Fix: Add an architecture document (e.g., ARCHITECTURE.md) explaining how protocol changes propagate to generated SDK clients.

  3. lowContext Economy+1 pts if fixed

    Missing llms.txt

    The repository lacks an llms.txt file to guide coding agents on compact context summaries and architectural conventions.

    Fix: Add an llms.txt file at the root providing high-level architecture pointers and token-efficient guidelines for agents.

  4. lowReproducible Setup+1 pts if fixed

    Floating Node engine version

    The engines.node setting in package.json is floating rather than strictly pinned.

    Fix: Pin engines.node to an exact patch release in package.json.

  5. lowReproducible Setup+1 pts if fixed

    Missing devcontainer config

    No devcontainer configuration is provided for instant containerized agent environments.

    Fix: Add a .devcontainer/devcontainer.json file to standardise the agent container environment.

Show your score

Latch badge
[![Latch score](https://latch.fyi/api/badge/190b8f2a-63cb-4ffb-9be1-1fddb67e5fa9)](https://latch.fyi/browserbase/stagehand)

Share this analysis

https://latch.fyi/browserbase/stagehand

Fixed some issues? Re-analyze to measure your progress →

Copy the whole report

Grab the entire verdict in one go — a Markdown block for a README or an issue, plain text, or a prompt you can paste straight into an LLM.

Was this verdict fair?

One tap helps — or tell us more.