Skip to content

Since the last run

Overall −2 points

TanStack/query (opens in a new tab)

A rigorously structured, highly TypeScript-native monorepo that is exceptionally well-suited for AI navigation, hindered only by bloated documentation trees and the lack of a central codebase map.

TypeScript★ 50,324160 open issuesMIT License
Overall score: 80 out of 100
Firm grip

last scored 2026-09-18 · 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.

80 / 100

30 of 41 checks passed across 6 categories.

  • Machine Orientation

    85

    Clear agent instructions and robust setup guidance make this repo straightforward for an AI agent to navigate and build.

    The repository provides clear machine-readable orientation through both `CONTRIBUTING.md` and an explicit `AGENTS.md` file that points agents directly to development, package management (`pnpm@11.9.0`), and testing commands. This easily clears the Solid band (70–89), though it falls short of Exemplary due to lacking a dedicated architecture doc or llms.txt.

  • Reproducible Setup

    85

    Solid, deterministic setup via pnpm and nvm with clear developer documentation.

    The repository provides solid reproducible setup signals with a pinned `pnpm-lock.yaml`, an exact `.nvmrc` and `packageManager` field, a devcontainer configuration, and explicit installation/build instructions in CONTRIBUTING.md. Minor gaps include the lack of a top-level .env.example (though none is explicitly required for core library packages) and no dedicated task runner tool beyond nx/pnpm scripts. This clears the Solid band (70–89).

  • Code Navigability

    80

    Strong monorepo structure with strict TypeScript, though lacking a central codebase map for fast agent orientation.

    The repository features a clear monorepo structure with strict TypeScript configuration and conventional layout, but lacks a dedicated architectural map or llms.txt guide to help agents navigate the multi-package ecosystem. This clears the Solid band (70-89) because core standards are strong and structured, though navigation across numerous packages requires trial-and-error discovery.

  • Verification Surface

    75

    Robust verification infrastructure with CI and test scripts, though lacking a simplified task runner wrapper.

    The repository provides extensive verification scripts in package.json (test, lint, type-checking via nx, knip, sherif) backed by 4 GitHub Actions workflows including a dedicated PR checks workflow. This places the repository firmly in the solid band (75/100) for verification surface.

  • Agent Safety

    80

    Solid agent safety with good secret hygiene and clear agent guidance, missing only an explicit env example and security policy.

    Solid secret hygiene with gitignore coverage and no committed secrets, paired with dedicated agent guidance in AGENTS.md, placing this repository in the 70–89 Solid band. Minor gaps include the lack of an explicit .env.example file and SECURITY.md policy document.

  • Context Economy

    75

    Clean of build artifacts and node_modules, but burdened by a massive tree of generated docs.

    Context economy is solid (75/100): dependencies and lockfiles are clean with no committed node_modules or build output, and an AGENTS.md file provides clear guardrails. However, the repository contains a massive number of generated documentation and reference files (over 3,500 files total), which can saturate an agent's context window if navigating without caution.

  • Machine Orientation

    7 checks passed3 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.

    • 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.
    • Examples directory — An examples/ directory gives an agent runnable, copyable references for the API.
    • 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

    • mediumREADME documents setup

      Explicit install/setup steps are what let an agent go from clone to running.

      Fix: Add a Setup/Install section with the exact commands to install and run.

    • lowEnv template present

      A .env.example tells an agent which configuration keys it must supply to run.

      Fix: Ship a .env.example listing every required key with placeholder values.

    • 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.
    • Version pins are exact — A floating pin (a bare major, or a range) still drifts between installs.
    • Container or dev-container — A Dockerfile / compose / devcontainer removes 'works on my machine' from setup.
    • Dev container — A .devcontainer gives an agent a one-command, fully-declared environment.
  • Code Navigability

    4 checks passed1 problem found

    • 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.
    • TypeScript strict mode on — Strict typing gives an agent typed signatures to anchor an edit on, not guesses.
    • .editorconfig present — An .editorconfig keeps whitespace and encoding consistent, so diffs stay legible.
    • Formatter configured — A formatter config (Prettier/Biome/rustfmt/…) keeps style uniform across the tree.
  • Verification Surface

    5 checks passed2 problems found

    • lowTask runner present

      A Makefile / Taskfile / justfile gives an agent a single index of the project's commands.

      Fix: Add a Makefile / Taskfile / justfile collecting the common commands.

    • lowTypecheck command

      A typecheck script lets an agent catch type errors before they ship.

      Fix: Add a `typecheck` script (e.g. `tsc --noEmit`).

    • 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.
    • Build command — A documented build command is the discoverable way for an agent to produce artifacts.
  • Agent Safety

    7 checks passed1 problem 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.

    • 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.
    • Automated dependency updates — Dependabot / Renovate keeps dependencies patched without a human in the loop.
    • .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+5 pts if fixed

    Missing unified task runner wrapper

    Local task runner setup relies entirely on pnpm and nx scripts without a unified wrapper task runner like Justfile or Taskfile for agents.

    Fix: Provide a Taskfile.yml or Makefile summarizing the common verification commands (test, lint, types) for quick agent discovery.

  2. mediumCode Navigability+3 pts if fixed

    Missing architecture document or navigation map for monorepo packages

    No top-level architecture document or navigation guide (like llms.txt or a codebase map) explaining package and module relationships across the monorepo.

    Fix: Add an architecture document or llms.txt at the repository root detailing the packages structure, core entry points, and module boundaries.

  3. lowReproducible Setup+3 pts if fixed

    Missing root .env.example

    No .env.example file is present at the root, which could leave agents guessing if environment variables are needed for external integrations or docs generation.

    Fix: Add a root .env.example file documenting any optional or required environment variables.

  4. mediumContext Economy+2 pts if fixed

    High file count from generated documentation and reference files

    Large volume of auto-generated markdown docs and type references inflate the file tree and token count.

    Fix: Ensure agents use targeted file searches or globs rather than reading full directory trees or bulk docs.

  5. lowMachine Orientation+2 pts if fixed

    Missing architecture document or llms.txt

    No dedicated architecture document or llms.txt explaining the monorepo package graph layout in depth.

    Fix: Add a high-level architecture overview document detailing the layout of packages/ and integrations/.

  6. lowAgent Safety+1 pts if fixed

    Missing .env.example template

    No .env.example template file is provided in the repository.

    Fix: Add a .env.example file if environment variables are needed for local development or testing.

  7. lowAgent Safety+1 pts if fixed

    Missing SECURITY.md

    No SECURITY.md file is present for reporting vulnerabilities.

    Fix: Create a SECURITY.md file detailing vulnerability reporting procedures.

Show your score

Latch badge
[![Latch score](https://latch.fyi/api/badge/06eab3d7-e550-4eeb-9a50-2be9879f1abc)](https://latch.fyi/tanstack/query)

Share this analysis

https://latch.fyi/tanstack/query

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.