CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-isbot

Recognise bots/crawlers/spiders using the user agent string.

82

0.94x
Overview
Eval results
Files

rubric.jsonevals/scenario-3/

{
  "context": "Evaluates whether the solution leans on the isbot package to classify user agents and expose which detection engine ran, especially its automatic downgrade when advanced regex support is missing. Checks that both single and batch helpers propagate package-driven detection paths without custom regex replacements.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Default path",
      "description": "`classifyUserAgent` (and any helper it calls) uses `isbot` and its compiled pattern for the normal path instead of custom regex or string matching.",
      "max_score": 25
    },
    {
      "name": "Fallback usage",
      "description": "When `forceLegacy` is set or advanced regex features are unavailable, detection switches to the package's built-in fallback (`isbotNaive` or the automatic downgrade from `isbot`/`getPattern`) rather than a hand-rolled heuristic.",
      "max_score": 25
    },
    {
      "name": "Engine labels",
      "description": "The returned `engine` field is derived from which package detector ran (compiled `isbot` vs. fallback `isbotNaive`/downgraded path) and not from unrelated state or custom flags.",
      "max_score": 20
    },
    {
      "name": "Null safety",
      "description": "Null/undefined/empty user agents are handled through the package detectors (e.g., passing them to `isbot`/`isbotNaive`) to surface the library's safe falsey behavior without throwing custom errors.",
      "max_score": 15
    },
    {
      "name": "Batch summary",
      "description": "`summarizeUserAgents` counts bots by invoking the package-backed classifier for each entry (or directly reusing `isbot`/`isbotNaive`) rather than reimplementing regexes or pattern lists, preserving the same fallback semantics across the batch.",
      "max_score": 15
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-isbot

tile.json