The verification layerfor everything your agent installs.

lurq serves your agent before it ever installs a single package, so the versions agree and the stack runs when you deploy.

Read the docs

Install it once. It shows up in all of these.

  • Claude Code
  • Cursor
  • Windsurf
  • Copilot
  • Codex
  • VS Code
  • Gemini CLI
  • Antigravity
  • Kiro

Ask for an upgrade. Find out what breaks first.

When a request touches packages, lurq resolves the versions from the registry, analyzing compatibility, and reports the clashes. We do this before anything is written to your project.

Claude Code

Upgrade me to TypeScript 7.

I'll bump typescript to 7 and leave the lint setup as it is.

lurqcompatnext typescript @typescript-eslint/eslint-plugin3 pairs · 1 conflict
  • next16.3.0
  • typescript7.0.2
  • @typescript-eslint/eslint-plugin8.66.0

@typescript-eslint/eslint-plugin needs peer typescript@>=4.8.4 <6.1.0, but the stack uses typescript@7.0.2

Left alone, npm refuses the install.

Holding typescript at >=4.8.4 <6.1.0 until the plugin supports 7.0.2.

  1. 01

    It answers from memory

    Upgrading the compiler should be an obvious move for models. The problem is nothing in the editor knows if the other tools have caught up.

  2. 02

    lurq reads what is true today

    One call resolves the versions each package currently supports, with retrieved info refreshed on published upgrades.

  3. 03

    You find out now, not at install

    @typescript-eslint/eslint-plugin still declares support for >=4.8.4 <6.1.0, so npm refuses to put it next to 7.0.2. You get the version compatible with your stack instead of wasting thirty minutes figuring out why.

The most-installed packagesyour model still gets wrong.

New versions mean the old API broke. We record the date their knowledge stops and record how the registry transforms over time. Asking models which version to install returns confident answers but breaking code

Knowledge cutoff

Claude Opus 5 stopped learning in may 2026.

Anthropic’s published figure

9%

of the packages it knew have broken since may 2026

637

shipped a new major upgrade after may 2026

7,464

packages the index already tracked by then

version drift695 packages synced 8 aug 2026
Packages that changed major version since Claude Opus 5’s knowledge cutoff of may 2026, by weekly installs
RankModel believesActually on
01@types/node25.6.026.1.1+12 moshipped jun 2026, wrong for 2 months382M
02which6.0.17.0.0+13 moshipped may 2026, wrong for 3 months326M
03js-yaml4.1.15.2.1+12 moshipped jun 2026, wrong for 2 months288M
04typescript6.0.37.0.2+11 moshipped jul 2026, wrong for 1 month260M
05argparse2.0.13.0.0+11 moshipped jul 2026, wrong for 1 month240M
06@babel/code-frame7.29.08.0.0+12 moshipped jun 2026, wrong for 2 months228M
07@babel/types7.29.08.0.4+12 moshipped jun 2026, wrong for 2 months212M
08@babel/parser7.29.38.0.4+12 moshipped jun 2026, wrong for 2 months208M

Read from lurq's own index on 8 Aug 2026. The may 2026 cutoff is Anthropic's published figure for Claude Opus 5. Totals count only packages the index already tracked by that date, and every number here is measured against it.

Five questions a model cannot answer from memory.

verify · evaluate

Is it real, and is it healthy?

Downloads, release cadence, open advisories, deprecation flags. We catch the package that does not exist: a name the model produced fluently, spelled the way a real one would be spelled.

compat

Will these install together?

Every pair in the set, graded against declared peer ranges and co-installs already in the compatibility matrix.

compat · usage

Does it run on your Node?

We check against the runtime you deploy on. Declared engines can range, so stacks can resolve perfectly and still die in production because one node doesn't support the Node you ship.

usage · resolve_surface · diff_surface

What is the API, exactly?

Exported symbols and signatures, read out of the version's own shipped .d.ts. We hand the delta to your model: what moved, what went, what is new.

recommend · plan

What should the whole stack be?

Describe the project and lurq fills every gap. It's quick because compatible sets are already stored.

Every answer traces back to a host you can check yourself.

Existence and version ranges come straight off the registry. Maintenance is a composite: downloads, release cadence, open issues, the OpenSSF Scorecard. Risk is OSV advisories plus the deprecation flags. The API surface is the odd one out, parsed from each package's shipped types.

  • npm registryregistry.npmjs.org
  • npm downloadsapi.npmjs.org
  • npm searchregistry.npmjs.org/-/v1/search
  • GitHub APIapi.github.com
  • GitHub rawraw.githubusercontent.com
  • deps.devapi.deps.dev
  • OpenSSF Scorecardapi.deps.dev/v3/projects
  • OSV advisoriesapi.deps.dev/v3/advisories
  • Bundlephobiabundlephobia.com
  • jsDelivrcdn.jsdelivr.net
packages indexed
8,270packages indexed
sources
10sources
versions tracked
1,455,388versions tracked
version pairs graded
2,919,675version pairs graded
last read
8 Auglast read

Four ways in, and the same index behind them.

lurq · install

npx lurqrun install

key validated

detected Claude Code, Cursor, VS Code

wrote 3 keyed MCP entries

no database credentials written

restart your agent to finish

After lurq asks for your API key, we work out which assistants are installed on the machine and write a keyed entry for each. Nothing else about your setup changes, and you don't need any database credentials.

Questions, answered.

Something not covered here? Talk to us.

General

What is lurq?

lurq is a dynamic index of JS/TS packages that your coding agent checks before install. We score packages from public signals and verify in sandboxes where necessary. Your agent asks lurq, then writes the code.

How is it different from just asking my model?

Models remember what was popular when they were trained. lurq suggests newer options, flags outdated versions, and hands agents the code they need to craft the strongest stack for you.

Which tools does it work with?

Claude Code, Cursor, Windsurf, VS Code / Copilot, Codex, Gemini CLI, Antigravity, Kiro, and anything else that can use a CLI or MCP connection. One install step writes the config file each of those already reads.

What doesn't work yet?

Three things, honestly. The API surface index covers 2326 package versions so far, so for most packages the exact-signature answer is not there yet. Sandbox verification runs on a queue rather than on demand, which means a brand new pair may not have been executed when you ask. And the whole index is JS/TS only, with no plans for other ecosystems until this one is solid.

The checks

What do you mean by execution-verified?

lurq reads metadata: downloads, release dates, advisories. But, lurq also returns info from sandboxed trials. Did the install succeed? Does it import? Do these two versions coexist? We outrace the changelog and the training data.

Why does a whole stack need checking, not just each package?

Because six individually healthy packages can still refuse to install together. Peer ranges conflict, engines disagree, transitive versions collide. lurq mines compatibility from co-installs, so a stack can hold together rather than break later from a simple upgrade.

Data and access

How current is it?

Every answer carries a dataAsOf timestamp, so you can see exactly how old the reading is.

Is it free?

Yes, free to get started. Create an account, generate an API key, and you get the CLI, the agent connection, and the installable skill with a monthly allowance of hosted calls.

Tell us what broke.

A bug, a package we have scored wrong, a stack you want a second opinion on. There is no ticket queue. It lands in an inbox one of us reads.

Reply
Usually within a day