From 585b5299080c1cb5fc30c08565ea0b5d5a4ef092 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Mon, 2 Mar 2026 15:50:39 +0100 Subject: [PATCH 01/18] chore: mark correct entries as new --- src/lib/leaderboard.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/lib/leaderboard.ts b/src/lib/leaderboard.ts index c91907e..9b17246 100644 --- a/src/lib/leaderboard.ts +++ b/src/lib/leaderboard.ts @@ -49,7 +49,7 @@ export const leaderboardEntries: LeaderboardEntry[] = [ evaluator: "gpt-4v", selfReported: true, }, - isNew: true, + isNew: false, github: "https://github.com/magnitudedev/magnitude", homepage: "https://magnitude.run", }, @@ -115,7 +115,7 @@ export const leaderboardEntries: LeaderboardEntry[] = [ evaluator: "gpt-4v", selfReported: true, }, - isNew: true, + isNew: false, github: "https://github.com/browser-use/browser-use", homepage: "https://browser-use.com", }, @@ -132,7 +132,7 @@ export const leaderboardEntries: LeaderboardEntry[] = [ selfReported: true, model: "CUA", }, - isNew: true, + isNew: false, github: null, homepage: "https://operator.chatgpt.com/", }, @@ -148,7 +148,7 @@ export const leaderboardEntries: LeaderboardEntry[] = [ evaluator: "gpt-4v", selfReported: true, }, - isNew: true, + isNew: false, github: "https://github.com/Skyvern-AI/Skyvern", homepage: "https://www.skyvern.com", }, @@ -183,6 +183,7 @@ export const leaderboardEntries: LeaderboardEntry[] = [ notes: "Open Operator Evals reports 79.0% LLM-evaluated, 86.2% self-reported, averaged on WebVoyager30 with 8 tries/task.", }, + isNew: true, github: "https://github.com/nottelabs/notte", homepage: "https://github.com/nottelabs/notte", }, From 1a1c90080ab59efadb01f6fc01c5bdb436517ea7 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Wed, 11 Mar 2026 14:12:25 +0100 Subject: [PATCH 02/18] chore: remove methodology and update readme new entries --- README.md | 22 +++++----- src/lib/leaderboard.ts | 93 ------------------------------------------ 2 files changed, 11 insertions(+), 104 deletions(-) diff --git a/README.md b/README.md index 997e2d5..0dde049 100644 --- a/README.md +++ b/README.md @@ -11,20 +11,20 @@ Steel is an open-source browser API purpose-built for AI agents. | Rank | Agent | Organization | WebVoyager Score | Source | Open Source | New | SOTA | | ---- | --------------- | -------------- | ---------------- | ------------------------------------------------------------------------------------------------- | ----------- | --- | ---- | | 1 | Surfer 2 | H Company | 97.1% | [Source](https://hcompany.ai/surfer-2) | No | Yes | Yes | -| 2 | Magnitude | Magnitude | 93.9% | [Source](https://magnitude.run/webvoyager) | Yes | Yes | | +| 2 | Magnitude | Magnitude | 93.9% | [Source](https://magnitude.run/webvoyager) | Yes | No | | | 3 | AIME Browser-Use | Aime | 92.34% | [Source](https://aime-browser-use.github.io/) | No | Yes | | | 4 | Surfer-H + Holo1 | H Company | 92.2% | [Source](https://arxiv.org/pdf/2506.02865) | No | Yes | | | 5 | Browserable | Browserable | 90.4% | [Source](https://www.browserable.ai/blog/web-voyager-benchmark) | Yes | Yes | | -| 6 | Browser Use | Browser Use | 89.1% | [Source](https://browser-use.com/posts/sota-technical-report) | Yes | Yes | | -| 7 | Operator | OpenAI | 87% | [Source](https://openai.com/index/introducing-operator/) | No | Yes | | -| 8 | Skyvern 2.0 | Skyvern | 85.85% | [Source](https://blog.skyvern.com/skyvern-2-0-state-of-the-art-web-navigation-with-85-8-on-webvoyager-eval/) | Yes | Yes | | -| 9 | Project Mariner | Google | 83.5% | [Source](https://deepmind.google/technologies/project-mariner/) | No | | | -| 10 | Notte | Notte | 73.1% | [Source](https://github.com/nottelabs/open-operator-evals#opensource-operators-evals) | Yes | | | -| 11 | Agent-E | Emergence AI | 73.1% | [Source](https://www.emergence.ai/blog/agent-e-sota) | No | | | -| 12 | WebSight | Academic Research | 68% | [Source](https://arxiv.org/abs/2508.16987) | No | | | -| 13 | Runner H 0.1 | H Company | 67% | [Source](https://www.hcompany.ai/blog/a-research-update) | No | | | -| 14 | WebVoyager | Academic Research | 59.1% | [Source](https://arxiv.org/abs/2401.13919) | Yes | | | -| 15 | WILBUR | Academic Research | 53% | [Source](https://arxiv.org/abs/2404.05902) | No | | | +| 6 | Browser Use | Browser Use | 89.1% | [Source](https://browser-use.com/posts/sota-technical-report) | Yes | No | | +| 7 | Operator | OpenAI | 87% | [Source](https://openai.com/index/introducing-operator/) | No | No | | +| 8 | Skyvern 2.0 | Skyvern | 85.85% | [Source](https://blog.skyvern.com/skyvern-2-0-state-of-the-art-web-navigation-with-85-8-on-webvoyager-eval/) | Yes | No | | +| 9 | Project Mariner | Google | 83.5% | [Source](https://deepmind.google/technologies/project-mariner/) | No | No | | +| 10 | Notte | Notte | 73.1% | [Source](https://github.com/nottelabs/open-operator-evals#opensource-operators-evals) | Yes | Yes | | +| 11 | Agent-E | Emergence AI | 73.1% | [Source](https://www.emergence.ai/blog/agent-e-sota) | No | No | | +| 12 | WebSight | Academic Research | 68% | [Source](https://arxiv.org/abs/2508.16987) | No | No | | +| 13 | Runner H 0.1 | H Company | 67% | [Source](https://www.hcompany.ai/blog/a-research-update) | No | No | | +| 14 | WebVoyager | Academic Research | 59.1% | [Source](https://arxiv.org/abs/2401.13919) | Yes | No | | +| 15 | WILBUR | Academic Research | 53% | [Source](https://arxiv.org/abs/2404.05902) | No | No | | **Notes:** diff --git a/src/lib/leaderboard.ts b/src/lib/leaderboard.ts index 9b17246..392f95d 100644 --- a/src/lib/leaderboard.ts +++ b/src/lib/leaderboard.ts @@ -1,11 +1,3 @@ -export interface Methodology { - dataset: "full-643" | "filtered" | "custom" | "webvoyager30"; - evaluator: "gpt-4v" | "human" | "custom"; - selfReported: boolean; - model?: string; - notes?: string; -} - export interface LeaderboardEntry { agent: string; organization: string; @@ -13,7 +5,6 @@ export interface LeaderboardEntry { score: string; source: string; }; - methodology?: Methodology; isNew?: boolean; github: string | null; homepage: string; @@ -27,12 +18,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "97.1%", source: "https://hcompany.ai/surfer-2", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - model: "Holo1", - }, isNew: true, github: null, homepage: "https://hcompany.ai/surfer-2", @@ -44,11 +29,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "93.9%", source: "https://magnitude.run/webvoyager", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, isNew: false, github: "https://github.com/magnitudedev/magnitude", homepage: "https://magnitude.run", @@ -60,12 +40,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "92.34%", source: "https://aime-browser-use.github.io/", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - notes: "Score from project page, not independently verified.", - }, isNew: true, github: null, homepage: "https://aime-browser-use.github.io/", @@ -77,12 +51,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "92.2%", source: "https://arxiv.org/pdf/2506.02865", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: false, - model: "Holo1", - }, isNew: true, github: null, homepage: "https://hcompany.ai", @@ -94,11 +62,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "90.4%", source: "https://www.browserable.ai/blog/web-voyager-benchmark", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, isNew: true, github: "https://github.com/browserable/browserable", homepage: "https://www.browserable.ai", @@ -110,11 +73,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "89.1%", source: "https://browser-use.com/posts/sota-technical-report", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, isNew: false, github: "https://github.com/browser-use/browser-use", homepage: "https://browser-use.com", @@ -126,12 +84,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "87%", source: "https://openai.com/index/introducing-operator/", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - model: "CUA", - }, isNew: false, github: null, homepage: "https://operator.chatgpt.com/", @@ -143,11 +95,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "85.85%", source: "https://blog.skyvern.com/skyvern-2-0-state-of-the-art-web-navigation-with-85-8-on-webvoyager-eval/", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, isNew: false, github: "https://github.com/Skyvern-AI/Skyvern", homepage: "https://www.skyvern.com", @@ -159,12 +106,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "83.5%", source: "https://deepmind.google/technologies/project-mariner/", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - model: "Gemini 2.0 Flash", - }, github: null, homepage: "https://deepmind.google/technologies/project-mariner/", }, @@ -175,14 +116,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "73.1%", source: "https://github.com/nottelabs/open-operator-evals#opensource-operators-evals", }, - methodology: { - dataset: "webvoyager30", - evaluator: "gpt-4v", - selfReported: false, - model: "Gemini 2.0 Flash", - notes: - "Open Operator Evals reports 79.0% LLM-evaluated, 86.2% self-reported, averaged on WebVoyager30 with 8 tries/task.", - }, isNew: true, github: "https://github.com/nottelabs/notte", homepage: "https://github.com/nottelabs/notte", @@ -194,11 +127,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "73.1%", source: "https://www.emergence.ai/blog/agent-e-sota", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, github: null, homepage: "https://www.emergence.ai", }, @@ -209,12 +137,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "68%", source: "https://arxiv.org/abs/2508.16987", }, - methodology: { - dataset: "filtered", - evaluator: "gpt-4v", - selfReported: false, - notes: "Evaluated on a filtered 50-task subset, not the full 643-task suite.", - }, github: null, homepage: "https://arxiv.org/abs/2508.16987", }, @@ -225,11 +147,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "67%", source: "https://www.hcompany.ai/blog/a-research-update", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: true, - }, github: null, homepage: "https://www.hcompany.ai", }, @@ -240,11 +157,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "59.1%", source: "https://arxiv.org/abs/2401.13919", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: false, - }, github: "https://github.com/MinorJerry/WebVoyager", homepage: "https://github.com/MinorJerry/WebVoyager", }, @@ -255,11 +167,6 @@ export const leaderboardEntries: LeaderboardEntry[] = [ score: "53%", source: "https://arxiv.org/abs/2404.05902", }, - methodology: { - dataset: "full-643", - evaluator: "gpt-4v", - selfReported: false, - }, github: null, homepage: "https://arxiv.org/abs/2404.05902", }, From adbdbfb82fc88368198653013fb11f5e05ecc33e Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Fri, 13 Mar 2026 09:49:40 +0100 Subject: [PATCH 03/18] feat: add benchmark registry --- src/components/BenchmarkRegistry.astro | 144 +++++++ src/components/Header.astro | 16 +- src/lib/benchmarks.ts | 567 +++++++++++++++++++++++++ src/pages/registry.astro | 29 ++ 4 files changed, 755 insertions(+), 1 deletion(-) create mode 100644 src/components/BenchmarkRegistry.astro create mode 100644 src/lib/benchmarks.ts create mode 100644 src/pages/registry.astro diff --git a/src/components/BenchmarkRegistry.astro b/src/components/BenchmarkRegistry.astro new file mode 100644 index 0000000..3d75724 --- /dev/null +++ b/src/components/BenchmarkRegistry.astro @@ -0,0 +1,144 @@ +--- +import { benchmarks, categories, categoryColors } from "../lib/benchmarks"; +--- + +
+
+ + +
+
REGISTRY
+
+ {[0, 1, 2, 3, 4].map(() =>
)} +
+
+ + +
+ {categories.map((cat) => ( + + ))} +
+ + +
+ {benchmarks.map((b) => ( +
+
+ + +
+
+ + {b.category} + + {b.selfHosted && ( + + SELF-HOSTED + + )} +
+ +
{b.name}
+

{b.description}

+ + +
+ + [PAPER] + + {b.github && ( + + [GITHUB] + + )} +
+
+ + +
+
+
Top Score
+
{b.topScore}
+
{b.topAgent}
+
+
+
Human
+
{b.human}
+
+ + +
+ +
+
+ ))} +
+
+ + +
+

+ MISSING A BENCHMARK?{" "} + + OPEN A PR ON GITHUB + {" "} + TO ADD IT TO THE REGISTRY. +

+
+
+ + \ No newline at end of file diff --git a/src/components/Header.astro b/src/components/Header.astro index 7b3fa59..13aae88 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -2,6 +2,20 @@
- + \ No newline at end of file diff --git a/src/lib/benchmarks.ts b/src/lib/benchmarks.ts new file mode 100644 index 0000000..4541b61 --- /dev/null +++ b/src/lib/benchmarks.ts @@ -0,0 +1,567 @@ +export interface BenchmarkEntry { + category: "WEB NAV" | "RESEARCH" | "DESKTOP" | "CODING" | "TOOL USE" | "GENERAL" | "SPECIALIZED"; + name: string; + description: string; + topAgent: string; + topOrg: string; + topScore: string; + tasks: string; + evaluator: string; + paper: string; + github: string | null; + human: string; + selfHosted: boolean; +} + +export const categoryColors: Record = { + "WEB NAV": "var(--color-text)", + "RESEARCH": "var(--color-accent)", + "DESKTOP": "#ff6666", + "CODING": "#ffaa00", + "TOOL USE": "#aa88ff", + "GENERAL": "#ff88cc", + "SPECIALIZED":"#88ccff", +}; + +export const categories = [ + "ALL", "WEB NAV", "DESKTOP", "CODING", "TOOL USE", "GENERAL", "SPECIALIZED" +] as const; + +export type Category = typeof categories[number]; + +export const benchmarks: BenchmarkEntry[] = [ + + // ── WEB NAVIGATION ────────────────────────────────────────────────── + { + category: "WEB NAV", + name: "WebVoyager", + description: "643 tasks across 15 live public websites. Evaluated by GPT-4V judge. The most widely adopted web agent benchmark — de facto standard for comparing commercial and research agents.", + topAgent: "Surfer 2", topOrg: "H Company", topScore: "97.1%", + tasks: "643", evaluator: "GPT-4V", + paper: "https://arxiv.org/abs/2401.13919", + github: "https://github.com/MinorJerry/WebVoyager", + human: "~90%", selfHosted: false, + }, + { + category: "WEB NAV", + name: "WebArena", + description: "812 tasks across self-hosted Docker environments: e-commerce, CMS, GitLab, forum, and map. Programmatic evaluation — no LLM judge. Gold standard for reproducible, verifiable web agent evaluation.", + topAgent: "OpAgent", topOrg: "CodeFuse AI", topScore: "71.6%", + tasks: "812", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2307.13854", + github: "https://github.com/web-arena-x/webarena", + human: "~78%", selfHosted: true, + }, + { + category: "WEB NAV", + name: "VisualWebArena", + description: "910 tasks requiring visual reasoning across classifieds, shopping, and Reddit environments. Sister benchmark to WebArena — tests agents that rely on screenshots rather than HTML/DOM.", + topAgent: "Aguvis", topOrg: "Salesforce / HKU", topScore: "~38%", + tasks: "910", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2401.13649", + github: "https://github.com/web-arena-x/visualwebarena", + human: "~88%", selfHosted: true, + }, + { + category: "WEB NAV", + name: "Online-Mind2Web", + description: "300 verified tasks across 136 live websites. Independently verified by Princeton HAL with cost tracking alongside accuracy — unique Pareto frontier view of performance vs. cost.", + topAgent: "SeeAct + GPT-5", topOrg: "Academic", topScore: "42.33%", + tasks: "300", evaluator: "HAL Verified", + paper: "https://arxiv.org/abs/2504.01382", + github: "https://github.com/OSU-NLP-Group/Mind2Web", + human: "N/A", selfHosted: false, + }, + { + category: "WEB NAV", + name: "BrowserGym", + description: "Unified gym environment for web tasks, aggregating WebArena, WorkArena, and other benchmarks under a single interface. Enables standardized agent development and cross-benchmark comparison.", + topAgent: "GPT-4o (BrowserGym)", topOrg: "ServiceNow", topScore: "~55%", + tasks: "1,000+", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2412.05467", + github: "https://github.com/ServiceNow/BrowserGym", + human: "N/A", selfHosted: true, + }, + { + category: "WEB NAV", + name: "AssistantBench", + description: "214 realistic, time-consuming tasks sourced from 525+ pages across 258 websites. Designed to test agents that must retrieve, synthesize, and reason — not just navigate. Best score is 25.2%.", + topAgent: "SPA", topOrg: "Academic", topScore: "25.2%", + tasks: "214", evaluator: "HAL Verified", + paper: "https://arxiv.org/abs/2407.15711", + github: "https://github.com/oriyor/assistantbench", + human: "~70%", selfHosted: false, + }, + { + category: "WEB NAV", + name: "WebChoreArena", + description: "Benchmark of tedious, multi-step web chores requiring persistent state tracking and real-world interaction. Designed to test agents on tasks humans find repetitive and boring.", + topAgent: "Gemini 2.5 Pro", topOrg: "Google", topScore: "54.8%", + tasks: "~500", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2506.03673", + github: "https://github.com/google-deepmind/webchore-arena", + human: "N/A", selfHosted: false, + }, + { + category: "WEB NAV", + name: "WorkArena", + description: "ServiceNow-based enterprise workflow benchmark. Tests agents on realistic IT, HR, and operations tasks inside a real enterprise SaaS environment via BrowserGym.", + topAgent: "GPT-4o", topOrg: "ServiceNow", topScore: "~42%", + tasks: "33 task types", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2403.07718", + github: "https://github.com/ServiceNow/WorkArena", + human: "~78%", selfHosted: true, + }, + { + category: "WEB NAV", + name: "WebShop", + description: "1.18M real Amazon products across a simulated e-commerce environment. Agents must find and purchase specific products matching user instructions. Reward based on product attribute matching.", + topAgent: "WebAgent", topOrg: "Google", topScore: "~75% reward", + tasks: "12,087", evaluator: "Attribute matching", + paper: "https://arxiv.org/abs/2207.01206", + github: "https://github.com/princeton-nlp/WebShop", + human: "82.1%", selfHosted: true, + }, + { + category: "WEB NAV", + name: "WebBench", + description: "2,454 tasks across 452 live websites from the global top-1,000 by traffic. Direct spiritual successor to WebVoyager with much broader website coverage. Released May 2025 by Halluminate + Skyvern.", + topAgent: "Skyvern 2.0", topOrg: "Skyvern", topScore: "N/A", + tasks: "2,454", evaluator: "GPT-4V", + paper: "https://arxiv.org/abs/2505.10798", + github: "https://github.com/halluminate/webbench", + human: "N/A", selfHosted: false, + }, + + // ── RESEARCH ──────────────────────────────────────────────────────── + { + category: "RESEARCH", + name: "BrowseComp", + description: "1,266 hard research questions designed to be easy to verify but extremely hard to find. Tests persistent multi-step web browsing and information synthesis. Scores are low across the board.", + topAgent: "Kimi K2 Thinking", topOrg: "Moonshot AI", topScore: "60.2%", + tasks: "1,266", evaluator: "Exact match", + paper: "https://openai.com/index/browsecomp/", + github: null, + human: "29.2%", selfHosted: false, + }, + { + category: "RESEARCH", + name: "MMSearch-Plus", + description: "Multimodal search benchmark testing agents on complex queries requiring both visual and textual web search. Evaluates image-grounded research across live search engines.", + topAgent: "Gemini 1.5 Pro", topOrg: "Google", topScore: "~58%", + tasks: "~300", evaluator: "LLM judge", + paper: "https://arxiv.org/abs/2409.12202", + github: "https://github.com/CaraJ7/MMSearch", + human: "N/A", selfHosted: false, + }, + + // ── DESKTOP / OS ──────────────────────────────────────────────────── + { + category: "DESKTOP", + name: "OSWorld", + description: "369 cross-application desktop tasks across Ubuntu, Windows, and macOS. Covers Chrome, LibreOffice, VS Code, and more. Execution-based evaluation. Agents still well below the human baseline of 72%.", + topAgent: "AskUI VisionAgent", topOrg: "AskUI", topScore: "66.2%", + tasks: "369", evaluator: "Execution-based", + paper: "https://arxiv.org/abs/2404.07972", + github: "https://github.com/xlang-ai/OSWorld", + human: "72.4%", selfHosted: true, + }, + { + category: "DESKTOP", + name: "OSUniverse", + description: "Cross-platform desktop benchmark covering macOS, Windows, and Ubuntu with 2,000+ tasks. Focuses on real-world app interactions and long-horizon task completion.", + topAgent: "Claude Computer Use", topOrg: "Anthropic", topScore: "~40%", + tasks: "2,000+", evaluator: "Execution-based", + paper: "https://arxiv.org/abs/2412.04747", + github: "https://github.com/os-universe/os-universe", + human: "N/A", selfHosted: true, + }, + { + category: "DESKTOP", + name: "macOSWorld", + description: "macOS-specific benchmark with 369 tasks spanning system preferences, Finder, Safari, and productivity apps. Complements OSWorld with platform-specific depth.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~35%", + tasks: "369", evaluator: "Execution-based", + paper: "https://arxiv.org/abs/2501.12083", + github: "https://github.com/PeterDaveHello/macOSWorld", + human: "~72%", selfHosted: true, + }, + { + category: "DESKTOP", + name: "Windows Agent Arena", + description: "154 tasks across real Windows 11 applications running in Azure VMs. Tests document editing, file management, system settings, and browser tasks. Full reproducibility via cloud snapshots.", + topAgent: "NAVI", topOrg: "Microsoft", topScore: "19.5%", + tasks: "154", evaluator: "Programmatic", + paper: "https://arxiv.org/abs/2409.08264", + github: "https://github.com/microsoft/WindowsAgentArena", + human: "74.5%", selfHosted: true, + }, + { + category: "DESKTOP", + name: "AndroidWorld", + description: "116 tasks across 20 real Android apps in a live emulated environment. Functional evaluation without cached states. Tests agents on real apps including Gmail, Chrome, and Settings.", + topAgent: "M3A (Gemini)", topOrg: "Google DeepMind", topScore: "~30%", + tasks: "116", evaluator: "Functional", + paper: "https://arxiv.org/abs/2405.14573", + github: "https://github.com/google-research/android_world", + human: "~88%", selfHosted: true, + }, + { + category: "DESKTOP", + name: "Mobile-Env", + description: "A gym environment for mobile UI interaction built on Android emulator. Provides step-level rewards for fine-grained evaluation of touch-based agent interaction.", + topAgent: "AppAgent", topOrg: "Tencent", topScore: "N/A", + tasks: "~70 tasks", evaluator: "Step reward", + paper: "https://arxiv.org/abs/2305.08144", + github: "https://github.com/X-LANCE/Mobile-Env", + human: "N/A", selfHosted: true, + }, + + // ── SOFTWARE ENGINEERING & CODING ─────────────────────────────────── + { + category: "CODING", + name: "SWE-bench Verified", + description: "500 human-verified GitHub issues from real-world Python repos. Expert-curated to remove ambiguous or unreliable tasks. The most trusted coding agent benchmark — resolving a real bug in a real repo.", + topAgent: "OpenAI o3", topOrg: "OpenAI", topScore: "~72%", + tasks: "500", evaluator: "Test suite", + paper: "https://arxiv.org/abs/2310.06770", + github: "https://github.com/princeton-nlp/SWE-bench", + human: "~94%", selfHosted: false, + }, + { + category: "CODING", + name: "SWE-bench Lite", + description: "300-task curated subset of SWE-bench focusing on self-contained issues. Designed for faster, cheaper evaluation while remaining representative of the full benchmark.", + topAgent: "OpenAI o3", topOrg: "OpenAI", topScore: "~55%", + tasks: "300", evaluator: "Test suite", + paper: "https://arxiv.org/abs/2310.06770", + github: "https://github.com/princeton-nlp/SWE-bench", + human: "N/A", selfHosted: false, + }, + { + category: "CODING", + name: "Terminal-Bench 2.0", + description: "Purely terminal-based coding and system tasks with no GUI. Tests command-line proficiency across bash, Python, and system administration. Harder and more realistic than sandbox coding benchmarks.", + topAgent: "Claude 3.7 Sonnet", topOrg: "Anthropic", topScore: "~45%", + tasks: "~200", evaluator: "Execution-based", + paper: "https://arxiv.org/abs/2506.05253", + github: "https://github.com/laude-neon/terminal-bench", + human: "N/A", selfHosted: false, + }, + { + category: "CODING", + name: "MLE-bench", + description: "75 Kaggle competitions used to evaluate ML engineering agents. Agents must write, run, and iterate on ML pipelines to achieve competitive leaderboard scores.", + topAgent: "AIDE (Claude 3.5)", topOrg: "Anthropic", topScore: "~17% medals", + tasks: "75 competitions", evaluator: "Kaggle leaderboard", + paper: "https://arxiv.org/abs/2410.07095", + github: "https://github.com/openai/mle-bench", + human: "N/A", selfHosted: false, + }, + { + category: "CODING", + name: "SciCode", + description: "338 scientific coding subproblems from 80 research problems across math, physics, chemistry, biology, and materials science. Tests research-grade code generation against expert-written tests.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~26%", + tasks: "338", evaluator: "Test suite", + paper: "https://arxiv.org/abs/2407.13168", + github: "https://github.com/scicode-bench/SciCode", + human: "~81%", selfHosted: false, + }, + { + category: "CODING", + name: "CVE-Bench", + description: "Evaluates agents on real-world cybersecurity vulnerability exploitation. Agents are scored on successfully exploiting CVEs from public vulnerability databases in sandboxed environments.", + topAgent: "o3 (high)", topOrg: "OpenAI", topScore: "~47%", + tasks: "~50 CVEs", evaluator: "Exploit success", + paper: "https://arxiv.org/abs/2503.17332", + github: "https://github.com/uiuc-kang-lab/cve-bench", + human: "N/A", selfHosted: true, + }, + { + category: "CODING", + name: "HumanEval+", + description: "Enhanced version of OpenAI's HumanEval with 80x more test cases per problem to reduce false positives. Tests Python code generation against significantly stricter test coverage.", + topAgent: "o3 / Claude 3.7", topOrg: "Various", topScore: "~99%", + tasks: "164", evaluator: "Test suite", + paper: "https://arxiv.org/abs/2305.01210", + github: "https://github.com/evalplus/evalplus", + human: "N/A", selfHosted: false, + }, + { + category: "CODING", + name: "Aider Benchmark", + description: "LLM code editing benchmark using real open-source repos. Measures ability to apply targeted code changes from natural language instructions without breaking existing tests.", + topAgent: "o3", topOrg: "OpenAI", topScore: "~79%", + tasks: "133", evaluator: "Test suite", + paper: "https://aider.chat/docs/leaderboards/", + github: "https://github.com/paul-gauthier/aider", + human: "N/A", selfHosted: false, + }, + { + category: "CODING", + name: "InterCode", + description: "Interactive coding benchmark using bash and SQL environments. Agents iteratively execute code and receive environment feedback, testing multi-turn code generation and debugging.", + topAgent: "GPT-4 + ReAct", topOrg: "OpenAI", topScore: "~60%", + tasks: "~700", evaluator: "Execution-based", + paper: "https://arxiv.org/abs/2306.14898", + github: "https://github.com/princeton-nlp/intercode", + human: "N/A", selfHosted: true, + }, + { + category: "CODING", + name: "RepoBench", + description: "Repository-level code completion benchmark. Tests retrieval and generation across entire codebases — agents must understand cross-file context to complete functions correctly.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~55%", + tasks: "~900", evaluator: "Exact match / CodeBLEU", + paper: "https://arxiv.org/abs/2306.03091", + github: "https://github.com/Leolty/repobench", + human: "N/A", selfHosted: false, + }, + + // ── TOOL USE & API INTERACTION ─────────────────────────────────────── + { + category: "TOOL USE", + name: "ToolBench", + description: "16,000+ real-world APIs from RapidAPI across 49 categories. Tests agents on planning and chaining API calls to complete complex instructions. Includes a neural retriever for API selection.", + topAgent: "GPT-4 (ToolLLaMA)", topOrg: "OpenAI / Academic", topScore: "~60% pass rate", + tasks: "2,746", evaluator: "Pass rate / win rate", + paper: "https://arxiv.org/abs/2307.16789", + github: "https://github.com/OpenBMB/ToolBench", + human: "N/A", selfHosted: false, + }, + { + category: "TOOL USE", + name: "Tau-bench", + description: "Agent-computer interaction benchmark focused on realistic customer service scenarios. Agents must complete multi-turn tasks using tools (database lookups, reservations) while following strict policies.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~60%", + tasks: "~200", evaluator: "Functional", + paper: "https://arxiv.org/abs/2406.12045", + github: "https://github.com/sierra-research/tau-bench", + human: "N/A", selfHosted: false, + }, + { + category: "TOOL USE", + name: "API-Bank", + description: "73 API tools across 3 difficulty levels testing tool retrieval, plan selection, and API call correctness. One of the earliest systematic tool-use benchmarks for LLMs.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~75%", + tasks: "314", evaluator: "Exact match", + paper: "https://arxiv.org/abs/2304.08244", + github: "https://github.com/AlibabaResearch/DAMO-ConvAI/tree/main/api-bank", + human: "N/A", selfHosted: false, + }, + { + category: "TOOL USE", + name: "Gorilla APIBench", + description: "1,645 API tasks across HuggingFace, TorchHub, and TensorHub. Evaluates if agents generate accurate API calls including correct arguments and library usage without hallucination.", + topAgent: "Gorilla (fine-tuned)", topOrg: "UC Berkeley", topScore: "~80%", + tasks: "1,645", evaluator: "AST matching", + paper: "https://arxiv.org/abs/2305.15334", + github: "https://github.com/ShishirPatil/gorilla", + human: "N/A", selfHosted: false, + }, + { + category: "TOOL USE", + name: "ToolSandbox", + description: "Stateful tool-use benchmark with interdependencies between tool calls. Agents must manage tool state across multi-step tasks — calling one tool affects what another returns.", + topAgent: "GPT-4o", topOrg: "OpenAI", topScore: "~52%", + tasks: "~200", evaluator: "State verification", + paper: "https://arxiv.org/abs/2408.04682", + github: "https://github.com/apple/ToolSandbox", + human: "N/A", selfHosted: true, + }, + { + category: "TOOL USE", + name: "MCP Atlas", + description: "Evaluation suite for agents using Model Context Protocol servers. Tests correctness of MCP tool invocation, schema understanding, and multi-server orchestration.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "N/A", + tasks: "N/A", evaluator: "Functional", + paper: "https://github.com/MCPAtlas/MCPAtlas", + github: "https://github.com/MCPAtlas/MCPAtlas", + human: "N/A", selfHosted: false, + }, + + // ── GENERAL AGENCY & REASONING ─────────────────────────────────────── + { + category: "GENERAL", + name: "GAIA", + description: "466 tasks across 3 difficulty levels requiring tool use, multimodal reasoning, and web browsing. With 587 submissions on HuggingFace, the most submitted-to AI agent benchmark in existence.", + topAgent: "Manus / h2oGPTe", topOrg: "Manus AI / H2O.ai", topScore: "~75%", + tasks: "466", evaluator: "Exact match", + paper: "https://arxiv.org/abs/2311.12983", + github: "https://huggingface.co/datasets/gaia-benchmark/GAIA", + human: "92%", selfHosted: false, + }, + { + category: "GENERAL", + name: "AgentBench", + description: "8 distinct environments spanning web browsing, OS, database, and game interaction. Tests agents across diverse real-world-like scenarios in a single unified framework.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~4.27 score", + tasks: "1,091", evaluator: "Task-specific", + paper: "https://arxiv.org/abs/2308.03688", + github: "https://github.com/THUDM/AgentBench", + human: "N/A", selfHosted: true, + }, + { + category: "GENERAL", + name: "Humanity's Last Exam", + description: "3,000 expert-level questions across 100+ academic disciplines, crowd-sourced from domain experts. Designed to be at or beyond the frontier of human knowledge — the hardest factual benchmark yet.", + topAgent: "o3 (high)", topOrg: "OpenAI", topScore: "~26%", + tasks: "3,000", evaluator: "Exact match", + paper: "https://arxiv.org/abs/2501.14249", + github: null, + human: "N/A", selfHosted: false, + }, + { + category: "GENERAL", + name: "ARC-AGI-2", + description: "The second generation of François Chollet's Abstraction and Reasoning Corpus. Novel visual pattern tasks designed to resist memorization — requires genuine program synthesis from examples.", + topAgent: "o3 (high)", topOrg: "OpenAI", topScore: "~4%", + tasks: "~500", evaluator: "Exact match", + paper: "https://arcprize.org/arc-agi-2", + github: "https://github.com/fchollet/ARC-AGI-2", + human: "~60%", selfHosted: false, + }, + { + category: "GENERAL", + name: "GPQA Diamond", + description: "448 expert-level multiple-choice questions in biology, physics, and chemistry — written and validated by domain PhDs. Only experts in the relevant field consistently score above random.", + topAgent: "o3", topOrg: "OpenAI", topScore: "~87%", + tasks: "448", evaluator: "Multiple choice", + paper: "https://arxiv.org/abs/2311.12022", + github: "https://github.com/idavidrein/gpqa", + human: "~69% (experts)", selfHosted: false, + }, + { + category: "GENERAL", + name: "LiveBench", + description: "Monthly-refreshed benchmark with questions sourced from recent news, papers, and competition math. Designed to prevent data contamination — the benchmark evolves so models can't memorize answers.", + topAgent: "o3 / Claude 3.7", topOrg: "Various", topScore: "~80%", + tasks: "~900 (rotating)", evaluator: "Verifiable", + paper: "https://arxiv.org/abs/2406.19314", + github: "https://github.com/LiveBench/LiveBench", + human: "N/A", selfHosted: false, + }, + { + category: "GENERAL", + name: "SimpleQA", + description: "4,326 short factual questions with a single unambiguous correct answer. Measures factual accuracy and hallucination rate — designed to have no trick questions, only clear facts.", + topAgent: "o3", topOrg: "OpenAI", topScore: "~97%", + tasks: "4,326", evaluator: "Exact match", + paper: "https://openai.com/index/introducing-simpleqa/", + github: "https://github.com/openai/simple-evals", + human: "~94%", selfHosted: false, + }, + { + category: "GENERAL", + name: "AgentBoard", + description: "Analytical benchmark across 9 diverse agent scenarios. Provides fine-grained progress rates beyond binary success/fail — measures how far along a task an agent gets even when it fails.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~58% progress", + tasks: "~1,000", evaluator: "Progress rate", + paper: "https://arxiv.org/abs/2401.13178", + github: "https://github.com/hkust-nlp/AgentBoard", + human: "N/A", selfHosted: true, + }, + { + category: "GENERAL", + name: "OdysseyBench", + description: "Long-horizon agent benchmark requiring sustained reasoning and planning over 50+ steps. Tests whether agents can maintain coherent goals across very long task horizons without losing context.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~35%", + tasks: "~200", evaluator: "Functional", + paper: "https://arxiv.org/abs/2406.08177", + github: null, + human: "N/A", selfHosted: false, + }, + { + category: "GENERAL", + name: "AppWorld", + description: "9 app ecosystem with 750 tasks spanning contacts, music, email, maps, and calendar. Tests agents on realistic app-based workflows requiring coordination across multiple simulated apps.", + topAgent: "GPT-4o", topOrg: "OpenAI", topScore: "~49%", + tasks: "750", evaluator: "Functional", + paper: "https://arxiv.org/abs/2407.18901", + github: "https://github.com/stonybrooknlp/appworld", + human: "N/A", selfHosted: true, + }, + + // ── SPECIALIZED ───────────────────────────────────────────────────── + { + category: "SPECIALIZED", + name: "Sotopia", + description: "Social intelligence benchmark placing agents in realistic social scenarios. Evaluates believability, social goal completion, relationship management, and secret keeping across 11 social dimensions.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~7.6/10", + tasks: "~600 episodes", evaluator: "LLM judge (GPT-4)", + paper: "https://arxiv.org/abs/2310.11667", + github: "https://github.com/sotopia-lab/sotopia", + human: "~8.3/10", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "AgentHarm", + description: "Safety red-teaming benchmark with 440 harmful agent tasks across 11 categories. Tests whether agent frameworks allow harmful behaviors — jailbreaking, weapon synthesis, fraud, and more.", + topAgent: "N/A (safety eval)", topOrg: "UK AISI / Meta", topScore: "N/A", + tasks: "440", evaluator: "Human / LLM judge", + paper: "https://arxiv.org/abs/2410.09024", + github: "https://github.com/alexandrasouly/agentham", + human: "N/A", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "MedAgentBench", + description: "300 clinical tasks across 10 medical categories using real EHR data. Tests agents on diagnosis reasoning, treatment planning, and medical record navigation in realistic hospital environments.", + topAgent: "o1-preview", topOrg: "OpenAI", topScore: "~77%", + tasks: "300", evaluator: "Expert validation", + paper: "https://arxiv.org/abs/2501.07765", + github: "https://github.com/stanfordmlgroup/MedAgentBench", + human: "N/A", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "MultiAgentBench", + description: "Evaluates both cooperative and competitive multi-agent systems. Tasks include collaborative problem-solving and adversarial games — measures emergent coordination and strategic behavior.", + topAgent: "GPT-4 (multi-agent)", topOrg: "OpenAI", topScore: "N/A", + tasks: "~300", evaluator: "Task-specific", + paper: "https://arxiv.org/abs/2503.01935", + github: "https://github.com/multiagentbench/multiagentbench", + human: "N/A", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "FORTRESS", + description: "Cybersecurity benchmark testing agents on capture-the-flag style challenges. Covers reverse engineering, web exploitation, and cryptography. Designed to stress-test autonomous offensive security agents.", + topAgent: "o3", topOrg: "OpenAI", topScore: "~35%", + tasks: "~150", evaluator: "Flag capture", + paper: "https://arxiv.org/abs/2503.17388", + github: null, + human: "N/A", selfHosted: true, + }, + { + category: "SPECIALIZED", + name: "Vending-Bench", + description: "Transaction and inventory reasoning benchmark. Agents manage a virtual vending machine over many turns — testing whether models understand real-world economics, stock levels, and pricing logic.", + topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~62%", + tasks: "~200", evaluator: "State verification", + paper: "https://arxiv.org/abs/2410.03850", + github: "https://github.com/JoshuaPurtell/vendingbench", + human: "N/A", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "CharacterEval", + description: "Role-playing and character consistency benchmark. Evaluates agents on maintaining persona fidelity, character knowledge accuracy, and in-character behavior across long conversations.", + topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~75%", + tasks: "~1,000 dialogues", evaluator: "LLM + human judge", + paper: "https://arxiv.org/abs/2401.01275", + github: "https://github.com/morecry/CharacterEval", + human: "N/A", selfHosted: false, + }, + { + category: "SPECIALIZED", + name: "Bullshit Benchmark", + description: "Tests model resistance to confidently stated falsehoods in prompts. Evaluates whether agents can identify and reject plausible-sounding but incorrect premises before acting on them.", + topAgent: "o3", topOrg: "OpenAI", topScore: "N/A", + tasks: "N/A", evaluator: "Rejection rate", + paper: "https://github.com/ErikBjare/are-llms-any-good", + github: "https://github.com/ErikBjare/are-llms-any-good", + human: "N/A", selfHosted: false, + }, +]; \ No newline at end of file diff --git a/src/pages/registry.astro b/src/pages/registry.astro new file mode 100644 index 0000000..8db90a7 --- /dev/null +++ b/src/pages/registry.astro @@ -0,0 +1,29 @@ +--- +import Layout from "../layouts/Layout.astro"; +import BenchmarkRegistry from "../components/BenchmarkRegistry.astro"; +--- + + +
+
+
+
+

+ Steel.dev® +

+

+ Agent Benchmark Registry +

+
+

+ A reference index of AI agent benchmarks covering web navigation, deep research, general + reasoning, and desktop control. +

+
+
+
+ +
+ +
+
\ No newline at end of file From 7aceaf7f0a51991de2e0ca06299396844008d3d0 Mon Sep 17 00:00:00 2001 From: nkkko Date: Fri, 13 Mar 2026 15:40:26 +0100 Subject: [PATCH 04/18] feat(registry): enrich benchmark metadata and routing --- pnpm-lock.yaml | 6365 ++++++++++++++++++++++++ src/components/BenchmarkRegistry.astro | 155 +- src/components/RegistryPage.astro | 37 + src/lib/benchmarks.ts | 85 +- src/pages/registry.astro | 28 +- src/pages/registry/[category].astro | 20 + 6 files changed, 6637 insertions(+), 53 deletions(-) create mode 100644 pnpm-lock.yaml create mode 100644 src/components/RegistryPage.astro create mode 100644 src/pages/registry/[category].astro diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..58d3e7a --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,6365 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@tailwindcss/vite': + specifier: ^4.0.9 + version: 4.2.1(vite@6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1)) + astro: + specifier: ^5.18.0 + version: 5.18.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3) + posthog-js: + specifier: ^1.225.1 + version: 1.360.1 + tailwindcss: + specifier: ^4.0.9 + version: 4.2.1 + devDependencies: + '@eslint/js': + specifier: ^9.21.0 + version: 9.39.4 + '@types/node': + specifier: ^20.11.24 + version: 20.19.37 + '@typescript-eslint/eslint-plugin': + specifier: ^8.26.0 + version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': + specifier: ^8.26.0 + version: 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + astro-eslint-parser: + specifier: ^1.2.1 + version: 1.3.0 + eslint: + specifier: ^9.21.0 + version: 9.39.4(jiti@2.6.1) + eslint-plugin-astro: + specifier: ^1.3.1 + version: 1.6.0(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-jsx-a11y: + specifier: ^6.10.2 + version: 6.10.2(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-prettier: + specifier: ^5.2.3 + version: 5.5.5(eslint@9.39.4(jiti@2.6.1))(prettier@3.8.1) + prettier: + specifier: ^3.5.2 + version: 3.8.1 + prettier-plugin-astro: + specifier: ^0.14.1 + version: 0.14.1 + ts-node: + specifier: ^10.9.2 + version: 10.9.2(@types/node@20.19.37)(typescript@5.9.3) + typescript-eslint: + specifier: ^8.25.0 + version: 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + +packages: + + '@astrojs/compiler@2.13.1': + resolution: {integrity: sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==} + + '@astrojs/internal-helpers@0.7.6': + resolution: {integrity: sha512-GOle7smBWKfMSP8osUIGOlB5kaHdQLV3foCsf+5Q9Wsuu+C6Fs3Ez/ttXmhjZ1HkSgsogcM1RXSjjOVieHq16Q==} + + '@astrojs/markdown-remark@6.3.11': + resolution: {integrity: sha512-hcaxX/5aC6lQgHeGh1i+aauvSwIT6cfyFjKWvExYSxUhZZBBdvCliOtu06gbQyhbe0pGJNoNmqNlQZ5zYUuIyQ==} + + '@astrojs/prism@3.3.0': + resolution: {integrity: sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==} + engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0} + + '@astrojs/telemetry@3.3.0': + resolution: {integrity: sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ==} + engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.29.0': + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/types@7.29.0': + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} + engines: {node: '>=6.9.0'} + + '@capsizecss/unpack@4.0.0': + resolution: {integrity: sha512-VERIM64vtTP1C4mxQ5thVT9fK0apjPFobqybMtA1UdUujWka24ERHbRHFGmpbbhp73MhV+KSsHQH9C6uOTdEQA==} + engines: {node: '>=18'} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@emnapi/runtime@1.9.0': + resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==} + + '@esbuild/aix-ppc64@0.25.12': + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/aix-ppc64@0.27.4': + resolution: {integrity: sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.25.12': + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm64@0.27.4': + resolution: {integrity: sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.25.12': + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-arm@0.27.4': + resolution: {integrity: sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.25.12': + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/android-x64@0.27.4': + resolution: {integrity: sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.25.12': + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-arm64@0.27.4': + resolution: {integrity: sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.25.12': + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/darwin-x64@0.27.4': + resolution: {integrity: sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.25.12': + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-arm64@0.27.4': + resolution: {integrity: sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.25.12': + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.27.4': + resolution: {integrity: sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.25.12': + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm64@0.27.4': + resolution: {integrity: sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.25.12': + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-arm@0.27.4': + resolution: {integrity: sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.25.12': + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-ia32@0.27.4': + resolution: {integrity: sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.25.12': + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.27.4': + resolution: {integrity: sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.25.12': + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-mips64el@0.27.4': + resolution: {integrity: sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.25.12': + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-ppc64@0.27.4': + resolution: {integrity: sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.25.12': + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.27.4': + resolution: {integrity: sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.25.12': + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.27.4': + resolution: {integrity: sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.25.12': + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.27.4': + resolution: {integrity: sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.25.12': + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-arm64@0.27.4': + resolution: {integrity: sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.25.12': + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.27.4': + resolution: {integrity: sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.25.12': + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-arm64@0.27.4': + resolution: {integrity: sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.25.12': + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.27.4': + resolution: {integrity: sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.25.12': + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/openharmony-arm64@0.27.4': + resolution: {integrity: sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.25.12': + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/sunos-x64@0.27.4': + resolution: {integrity: sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.25.12': + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-arm64@0.27.4': + resolution: {integrity: sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.25.12': + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-ia32@0.27.4': + resolution: {integrity: sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.25.12': + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@esbuild/win32-x64@0.27.4': + resolution: {integrity: sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-utils@4.9.1': + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.21.2': + resolution: {integrity: sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/config-helpers@0.4.2': + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.17.0': + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.3.5': + resolution: {integrity: sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.39.4': + resolution: {integrity: sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.7': + resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.4.1': + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.7': + resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} + engines: {node: '>=18.18'} + + '@img/colour@1.1.0': + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} + engines: {node: '>=18'} + + '@img/sharp-darwin-arm64@0.34.5': + resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.34.5': + resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.2.4': + resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.2.4': + resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.2.4': + resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linux-arm@1.2.4': + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + + '@img/sharp-libvips-linux-ppc64@1.2.4': + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + + '@img/sharp-libvips-linux-riscv64@1.2.4': + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + + '@img/sharp-libvips-linux-s390x@1.2.4': + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + + '@img/sharp-libvips-linux-x64@1.2.4': + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + + '@img/sharp-linux-arm64@0.34.5': + resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linux-arm@0.34.5': + resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + + '@img/sharp-linux-ppc64@0.34.5': + resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ppc64] + os: [linux] + + '@img/sharp-linux-riscv64@0.34.5': + resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [riscv64] + os: [linux] + + '@img/sharp-linux-s390x@0.34.5': + resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + + '@img/sharp-linux-x64@0.34.5': + resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-linuxmusl-arm64@0.34.5': + resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linuxmusl-x64@0.34.5': + resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-wasm32@0.34.5': + resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-arm64@0.34.5': + resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [win32] + + '@img/sharp-win32-ia32@0.34.5': + resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.34.5': + resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@opentelemetry/api-logs@0.208.0': + resolution: {integrity: sha512-CjruKY9V6NMssL/T1kAFgzosF1v9o6oeN+aX5JB/C/xPNtmgIJqcXHG7fA82Ou1zCpWGl4lROQUKwUNE1pMCyg==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/core@2.2.0': + resolution: {integrity: sha512-FuabnnUm8LflnieVxs6eP7Z383hgQU4W1e3KJS6aOG3RxWxcHyBxH8fDMHNgu/gFx/M2jvTOW/4/PHhLz6bjWw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/core@2.6.0': + resolution: {integrity: sha512-HLM1v2cbZ4TgYN6KEOj+Bbj8rAKriOdkF9Ed3tG25FoprSiQl7kYc+RRT6fUZGOvx0oMi5U67GoFdT+XUn8zEg==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/exporter-logs-otlp-http@0.208.0': + resolution: {integrity: sha512-jOv40Bs9jy9bZVLo/i8FwUiuCvbjWDI+ZW13wimJm4LjnlwJxGgB+N/VWOZUTpM+ah/awXeQqKdNlpLf2EjvYg==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-exporter-base@0.208.0': + resolution: {integrity: sha512-gMd39gIfVb2OgxldxUtOwGJYSH8P1kVFFlJLuut32L6KgUC4gl1dMhn+YC2mGn0bDOiQYSk/uHOdSjuKp58vvA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-transformer@0.208.0': + resolution: {integrity: sha512-DCFPY8C6lAQHUNkzcNT9R+qYExvsk6C5Bto2pbNxgicpcSWbe2WHShLxkOxIdNcBiYPdVHv/e7vH7K6TI+C+fQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/resources@2.2.0': + resolution: {integrity: sha512-1pNQf/JazQTMA0BiO5NINUzH0cbLbbl7mntLa4aJNmCCXSj0q03T5ZXXL0zw4G55TjdL9Tz32cznGClf+8zr5A==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/resources@2.6.0': + resolution: {integrity: sha512-D4y/+OGe3JSuYUCBxtH5T9DSAWNcvCb/nQWIga8HNtXTVPQn59j0nTBAgaAXxUVBDl40mG3Tc76b46wPlZaiJQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/sdk-logs@0.208.0': + resolution: {integrity: sha512-QlAyL1jRpOeaqx7/leG1vJMp84g0xKP6gJmfELBpnI4O/9xPX+Hu5m1POk9Kl+veNkyth5t19hRlN6tNY1sjbA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.4.0 <1.10.0' + + '@opentelemetry/sdk-metrics@2.2.0': + resolution: {integrity: sha512-G5KYP6+VJMZzpGipQw7Giif48h6SGQ2PFKEYCybeXJsOCB4fp8azqMAAzE5lnnHK3ZVwYQrgmFbsUJO/zOnwGw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.9.0 <1.10.0' + + '@opentelemetry/sdk-trace-base@2.2.0': + resolution: {integrity: sha512-xWQgL0Bmctsalg6PaXExmzdedSp3gyKV8mQBwK/j9VGdCDu2fmXIb2gAehBKbkXCpJ4HPkgv3QfoJWRT4dHWbw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/semantic-conventions@1.40.0': + resolution: {integrity: sha512-cifvXDhcqMwwTlTK04GBNeIe7yyo28Mfby85QXFe1Yk8nmi36Ab/5UQwptOx84SsoGNRg+EVSjwzfSZMy6pmlw==} + engines: {node: '>=14'} + + '@oslojs/encoding@1.1.0': + resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==} + + '@pkgr/core@0.2.9': + resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@posthog/core@1.23.3': + resolution: {integrity: sha512-nehG2nig9qiU4lEUIyfXQLaBnylm5wdDiIBsp2tBFJX5BcUHNAXSwpkHjKLQ9TDfik0HW1HwZ2mY/3hJgJNToQ==} + + '@posthog/types@1.360.1': + resolution: {integrity: sha512-zzvgckmzmjYB7YGnA2cIMtF9thj8O1TMp2YCXcBb+qnGcI5cKTo8j+lO7Kq1Lbwgp7ZPxBWUXfKHg03K5vVdjg==} + + '@protobufjs/aspromise@1.1.2': + resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + + '@protobufjs/base64@1.1.2': + resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + + '@protobufjs/codegen@2.0.4': + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + + '@protobufjs/eventemitter@1.1.0': + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + + '@protobufjs/fetch@1.1.0': + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + + '@protobufjs/float@1.0.2': + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + + '@protobufjs/inquire@1.1.0': + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + + '@protobufjs/path@1.1.2': + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + + '@protobufjs/pool@1.1.0': + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + + '@protobufjs/utf8@1.1.0': + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + + '@rollup/pluginutils@5.3.0': + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/rollup-android-arm-eabi@4.59.0': + resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.59.0': + resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.59.0': + resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.59.0': + resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.59.0': + resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.59.0': + resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': + resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.59.0': + resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.59.0': + resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.59.0': + resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-loong64-gnu@4.59.0': + resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-loong64-musl@4.59.0': + resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-ppc64-gnu@4.59.0': + resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-ppc64-musl@4.59.0': + resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.59.0': + resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.59.0': + resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.59.0': + resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.59.0': + resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.59.0': + resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-openbsd-x64@4.59.0': + resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} + cpu: [x64] + os: [openbsd] + + '@rollup/rollup-openharmony-arm64@4.59.0': + resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} + cpu: [arm64] + os: [openharmony] + + '@rollup/rollup-win32-arm64-msvc@4.59.0': + resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.59.0': + resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-gnu@4.59.0': + resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} + cpu: [x64] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.59.0': + resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} + cpu: [x64] + os: [win32] + + '@shikijs/core@3.23.0': + resolution: {integrity: sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA==} + + '@shikijs/engine-javascript@3.23.0': + resolution: {integrity: sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA==} + + '@shikijs/engine-oniguruma@3.23.0': + resolution: {integrity: sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==} + + '@shikijs/langs@3.23.0': + resolution: {integrity: sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==} + + '@shikijs/themes@3.23.0': + resolution: {integrity: sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==} + + '@shikijs/types@3.23.0': + resolution: {integrity: sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==} + + '@shikijs/vscode-textmate@10.0.2': + resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + + '@tailwindcss/node@4.2.1': + resolution: {integrity: sha512-jlx6sLk4EOwO6hHe1oCGm1Q4AN/s0rSrTTPBGPM0/RQ6Uylwq17FuU8IeJJKEjtc6K6O07zsvP+gDO6MMWo7pg==} + + '@tailwindcss/oxide-android-arm64@4.2.1': + resolution: {integrity: sha512-eZ7G1Zm5EC8OOKaesIKuw77jw++QJ2lL9N+dDpdQiAB/c/B2wDh0QPFHbkBVrXnwNugvrbJFk1gK2SsVjwWReg==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [android] + + '@tailwindcss/oxide-darwin-arm64@4.2.1': + resolution: {integrity: sha512-q/LHkOstoJ7pI1J0q6djesLzRvQSIfEto148ppAd+BVQK0JYjQIFSK3JgYZJa+Yzi0DDa52ZsQx2rqytBnf8Hw==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [darwin] + + '@tailwindcss/oxide-darwin-x64@4.2.1': + resolution: {integrity: sha512-/f/ozlaXGY6QLbpvd/kFTro2l18f7dHKpB+ieXz+Cijl4Mt9AI2rTrpq7V+t04nK+j9XBQHnSMdeQRhbGyt6fw==} + engines: {node: '>= 20'} + cpu: [x64] + os: [darwin] + + '@tailwindcss/oxide-freebsd-x64@4.2.1': + resolution: {integrity: sha512-5e/AkgYJT/cpbkys/OU2Ei2jdETCLlifwm7ogMC7/hksI2fC3iiq6OcXwjibcIjPung0kRtR3TxEITkqgn0TcA==} + engines: {node: '>= 20'} + cpu: [x64] + os: [freebsd] + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': + resolution: {integrity: sha512-Uny1EcVTTmerCKt/1ZuKTkb0x8ZaiuYucg2/kImO5A5Y/kBz41/+j0gxUZl+hTF3xkWpDmHX+TaWhOtba2Fyuw==} + engines: {node: '>= 20'} + cpu: [arm] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': + resolution: {integrity: sha512-CTrwomI+c7n6aSSQlsPL0roRiNMDQ/YzMD9EjcR+H4f0I1SQ8QqIuPnsVp7QgMkC1Qi8rtkekLkOFjo7OlEFRQ==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': + resolution: {integrity: sha512-WZA0CHRL/SP1TRbA5mp9htsppSEkWuQ4KsSUumYQnyl8ZdT39ntwqmz4IUHGN6p4XdSlYfJwM4rRzZLShHsGAQ==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': + resolution: {integrity: sha512-qMFzxI2YlBOLW5PhblzuSWlWfwLHaneBE0xHzLrBgNtqN6mWfs+qYbhryGSXQjFYB1Dzf5w+LN5qbUTPhW7Y5g==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-musl@4.2.1': + resolution: {integrity: sha512-5r1X2FKnCMUPlXTWRYpHdPYUY6a1Ar/t7P24OuiEdEOmms5lyqjDRvVY1yy9Rmioh+AunQ0rWiOTPE8F9A3v5g==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-wasm32-wasi@4.2.1': + resolution: {integrity: sha512-MGFB5cVPvshR85MTJkEvqDUnuNoysrsRxd6vnk1Lf2tbiqNlXpHYZqkqOQalydienEWOHHFyyuTSYRsLfxFJ2Q==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + bundledDependencies: + - '@napi-rs/wasm-runtime' + - '@emnapi/core' + - '@emnapi/runtime' + - '@tybys/wasm-util' + - '@emnapi/wasi-threads' + - tslib + + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': + resolution: {integrity: sha512-YlUEHRHBGnCMh4Nj4GnqQyBtsshUPdiNroZj8VPkvTZSoHsilRCwXcVKnG9kyi0ZFAS/3u+qKHBdDc81SADTRA==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [win32] + + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': + resolution: {integrity: sha512-rbO34G5sMWWyrN/idLeVxAZgAKWrn5LiR3/I90Q9MkA67s6T1oB0xtTe+0heoBvHSpbU9Mk7i6uwJnpo4u21XQ==} + engines: {node: '>= 20'} + cpu: [x64] + os: [win32] + + '@tailwindcss/oxide@4.2.1': + resolution: {integrity: sha512-yv9jeEFWnjKCI6/T3Oq50yQEOqmpmpfzG1hcZsAOaXFQPfzWprWrlHSdGPEF3WQTi8zu8ohC9Mh9J470nT5pUw==} + engines: {node: '>= 20'} + + '@tailwindcss/vite@4.2.1': + resolution: {integrity: sha512-TBf2sJjYeb28jD2U/OhwdW0bbOsxkWPwQ7SrqGf9sVcoYwZj7rkXljroBO9wKBut9XnmQLXanuDUeqQK0lGg/w==} + peerDependencies: + vite: ^5.2.0 || ^6 || ^7 + + '@tsconfig/node10@1.0.12': + resolution: {integrity: sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/nlcst@2.0.3': + resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==} + + '@types/node@20.19.37': + resolution: {integrity: sha512-8kzdPJ3FsNsVIurqBs7oodNnCEVbni9yUEkaHbgptDACOPW04jimGagZ51E6+lXUwJjgnBw+hyko/lkFWCldqw==} + + '@types/trusted-types@2.0.7': + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@typescript-eslint/eslint-plugin@8.57.0': + resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.57.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/parser@8.57.0': + resolution: {integrity: sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/project-service@8.57.0': + resolution: {integrity: sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/scope-manager@8.57.0': + resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.57.0': + resolution: {integrity: sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/type-utils@8.57.0': + resolution: {integrity: sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/types@8.57.0': + resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.57.0': + resolution: {integrity: sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/utils@8.57.0': + resolution: {integrity: sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/visitor-keys@8.57.0': + resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn-walk@8.3.5: + resolution: {integrity: sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==} + engines: {node: '>=0.4.0'} + + acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.14.0: + resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} + + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + + array-iterate@2.0.1: + resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + + astro-eslint-parser@1.3.0: + resolution: {integrity: sha512-aOLc/aDR7lTWAHlytEefwn4Y6qs6uMr69DZvUx2A1AOAZsWhGB/paiRWPtVchh9wzMvLeqr+DkbENhVreVr9AQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + astro@5.18.1: + resolution: {integrity: sha512-m4VWilWZ+Xt6NPoYzC4CgGZim/zQUO7WFL0RHCH0AiEavF1153iC3+me2atDvXpf/yX4PyGUeD8wZLq1cirT3g==} + engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} + hasBin: true + + astrojs-compiler-sync@1.1.1: + resolution: {integrity: sha512-0mKvB9sDQRIZPsEJadw6OaFbGJ92cJPPR++ICca9XEyiUAZqgVuk25jNmzHPT0KF80rI94trSZrUR5iHFXGGOQ==} + engines: {node: ^18.18.0 || >=20.9.0} + peerDependencies: + '@astrojs/compiler': '>=0.27.0' + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axe-core@4.11.1: + resolution: {integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==} + engines: {node: '>=4'} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + base-64@1.0.0: + resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==} + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + boxen@8.0.1: + resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==} + engines: {node: '>=18'} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@5.0.4: + resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + engines: {node: 18 || 20 || >=22} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@8.0.0: + resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} + engines: {node: '>=16'} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chalk@5.6.2: + resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + chokidar@5.0.0: + resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} + engines: {node: '>= 20.19.0'} + + ci-info@4.4.0: + resolution: {integrity: sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==} + engines: {node: '>=8'} + + cli-boxes@3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + + commander@11.1.0: + resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} + engines: {node: '>=16'} + + common-ancestor-path@1.0.1: + resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + cookie-es@1.2.2: + resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==} + + cookie@1.1.1: + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} + engines: {node: '>=18'} + + core-js@3.48.0: + resolution: {integrity: sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==} + + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + crossws@0.3.5: + resolution: {integrity: sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA==} + + css-select@5.2.2: + resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==} + + css-tree@2.2.1: + resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + css-tree@3.2.1: + resolution: {integrity: sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-what@6.2.2: + resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==} + engines: {node: '>= 6'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csso@5.0.5: + resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.3.0: + resolution: {integrity: sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + defu@6.1.4: + resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + destr@2.0.5: + resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==} + + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + + deterministic-object-hash@2.0.2: + resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} + engines: {node: '>=18'} + + devalue@5.6.4: + resolution: {integrity: sha512-Gp6rDldRsFh/7XuouDbxMH3Mx8GMCcgzIb1pDTvNyn8pZGQ22u+Wa+lGV9dQCltFQ7uVw0MhRyb8XDskNFOReA==} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + diff@4.0.4: + resolution: {integrity: sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==} + engines: {node: '>=0.3.1'} + + diff@8.0.3: + resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} + engines: {node: '>=0.3.1'} + + dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + + dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + + domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + + domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + + dompurify@3.3.3: + resolution: {integrity: sha512-Oj6pzI2+RqBfFG+qOaOLbFXLQ90ARpcGG6UePL82bJLtdsa6CYJD7nmiU8MW9nQNOtCHV3lZ/Bzq1X0QYbBZCA==} + + domutils@3.2.2: + resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} + + dset@3.1.4: + resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} + engines: {node: '>=4'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + enhanced-resolve@5.20.0: + resolution: {integrity: sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==} + engines: {node: '>=10.13.0'} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + entities@6.0.1: + resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} + engines: {node: '>=0.12'} + + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-module-lexer@1.7.0: + resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + esbuild@0.25.12: + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} + engines: {node: '>=18'} + hasBin: true + + esbuild@0.27.4: + resolution: {integrity: sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==} + engines: {node: '>=18'} + hasBin: true + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + eslint-compat-utils@0.6.5: + resolution: {integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + + eslint-plugin-astro@1.6.0: + resolution: {integrity: sha512-yGIbLHuj5MOUXa0s4sZ6cVhv6ehb+WLF80tsrGaxMk6VTUExruMzubQDzhOYt8fbR1c9vILCCRSCsKI7M1whig==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.57.0' + + eslint-plugin-jsx-a11y@6.10.2: + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + + eslint-plugin-prettier@5.5.5: + resolution: {integrity: sha512-hscXkbqUZ2sPithAuLm5MXL+Wph+U7wHngPBv9OMWwlP8iaflyxpjTYZkmdgB4/vPIhemRlBEoLrH7UC1n7aUw==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '>= 7.0.0 <10.0.0 || >=10.1.0' + prettier: '>=3.0.0' + peerDependenciesMeta: + '@types/eslint': + optional: true + eslint-config-prettier: + optional: true + + eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@5.0.1: + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + eslint@9.39.4: + resolution: {integrity: sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + eventemitter3@5.0.4: + resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fflate@0.4.8: + resolution: {integrity: sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.4.1: + resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==} + + flattie@1.1.1: + resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==} + engines: {node: '>=8'} + + fontace@0.4.1: + resolution: {integrity: sha512-lDMvbAzSnHmbYMTEld5qdtvNH2/pWpICOqpean9IgC7vUbUJc3k+k5Dokp85CegamqQpFbXf0rAVkbzpyTA8aw==} + + fontkitten@1.0.3: + resolution: {integrity: sha512-Wp1zXWPVUPBmfoa3Cqc9ctaKuzKAV6uLstRqlR56kSjplf5uAce+qeyYym7F+PHbGTk+tCEdkCW6RD7DX/gBZw==} + engines: {node: '>=20'} + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + get-east-asian-width@1.5.0: + resolution: {integrity: sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==} + engines: {node: '>=18'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + github-slugger@2.0.0: + resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@16.5.0: + resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==} + engines: {node: '>=18'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + h3@1.15.6: + resolution: {integrity: sha512-oi15ESLW5LRthZ+qPCi5GNasY/gvynSKUQxgiovrY63bPAtG59wtM+LSrlcwvOHAXzGrXVLnI97brbkdPF9WoQ==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hast-util-from-html@2.0.3: + resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} + + hast-util-from-parse5@8.0.3: + resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==} + + hast-util-is-element@3.0.0: + resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} + + hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} + + hast-util-to-html@9.0.5: + resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} + + hast-util-to-parse5@8.0.1: + resolution: {integrity: sha512-MlWT6Pjt4CG9lFCjiz4BH7l9wmrMkfkJYCxFwKQic8+RTZgWPuWxwAfjJElsXkex7DJjfSJsQIt931ilUgmwdA==} + + hast-util-to-text@4.0.2: + resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + + hastscript@9.0.1: + resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} + + html-escaper@3.0.3: + resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} + + html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + + http-cache-semantics@4.2.0: + resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + engines: {node: '>= 4'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + import-meta-resolve@4.2.0: + resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + iron-webcrypto@1.2.1: + resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + is-wsl@3.1.1: + resolution: {integrity: sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw==} + engines: {node: '>=16'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jiti@2.6.1: + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} + hasBin: true + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lightningcss-android-arm64@1.31.1: + resolution: {integrity: sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.31.1: + resolution: {integrity: sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.31.1: + resolution: {integrity: sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.31.1: + resolution: {integrity: sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.31.1: + resolution: {integrity: sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.31.1: + resolution: {integrity: sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-musl@1.31.1: + resolution: {integrity: sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-x64-gnu@1.31.1: + resolution: {integrity: sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-musl@1.31.1: + resolution: {integrity: sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-win32-arm64-msvc@1.31.1: + resolution: {integrity: sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.31.1: + resolution: {integrity: sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.31.1: + resolution: {integrity: sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==} + engines: {node: '>= 12.0.0'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + long@5.3.2: + resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + lru-cache@11.2.6: + resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} + engines: {node: 20 || >=22} + + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + + magicast@0.5.2: + resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + mdast-util-definitions@6.0.0: + resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} + + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} + + mdast-util-from-markdown@2.0.3: + resolution: {integrity: sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.1.0: + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.1.0: + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-hast@13.2.1: + resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + mdn-data@2.0.28: + resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} + + mdn-data@2.27.1: + resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + minimatch@10.2.4: + resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} + engines: {node: 18 || 20 || >=22} + + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} + engines: {node: '>=10'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + neotraverse@0.6.18: + resolution: {integrity: sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==} + engines: {node: '>= 10'} + + nlcst-to-string@4.0.0: + resolution: {integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==} + + node-fetch-native@1.6.7: + resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==} + + node-mock-http@1.0.4: + resolution: {integrity: sha512-8DY+kFsDkNXy1sJglUfuODx1/opAGJGyrTuFqEoN90oRc2Vk0ZbD4K2qmKXBBEhZQzdKHIVfEJpDU8Ak2NJEvQ==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + ofetch@1.5.1: + resolution: {integrity: sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==} + + ohash@2.0.11: + resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} + + oniguruma-parser@0.12.1: + resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==} + + oniguruma-to-es@4.3.4: + resolution: {integrity: sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-limit@6.2.0: + resolution: {integrity: sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==} + engines: {node: '>=18'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-queue@8.1.1: + resolution: {integrity: sha512-aNZ+VfjobsWryoiPnEApGGmf5WmNsCo9xu8dfaYamG5qaLP7ClhLN6NgsFe6SwJ2UbLEBK5dv9x8Mn5+RVhMWQ==} + engines: {node: '>=18'} + + p-timeout@6.1.4: + resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==} + engines: {node: '>=14.16'} + + package-manager-detector@1.6.0: + resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-latin@7.0.0: + resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==} + + parse5@7.3.0: + resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + piccolore@0.1.3: + resolution: {integrity: sha512-o8bTeDWjE086iwKrROaDf31K0qC/BENdm15/uH9usSC/uZjJOKb2YGiVHfLY4GhwsERiPI1jmwI2XrA7ACOxVw==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + postcss-selector-parser@7.1.1: + resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==} + engines: {node: '>=4'} + + postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + engines: {node: ^10 || ^12 || >=14} + + posthog-js@1.360.1: + resolution: {integrity: sha512-wtKZm0b0SLYLtk0T3SiyXn9cBhwE421fPcJUJ7cRpJmsysHKJcOJ9O/Q7nx7aDj6LvTFILuzjzYO3YTCjbWgqQ==} + + preact@10.29.0: + resolution: {integrity: sha512-wSAGyk2bYR1c7t3SZ3jHcM6xy0lcBcDel6lODcs9ME6Th++Dx2KU+6D3HD8wMMKGA8Wpw7OMd3/4RGzYRpzwRg==} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier-linter-helpers@1.0.1: + resolution: {integrity: sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==} + engines: {node: '>=6.0.0'} + + prettier-plugin-astro@0.14.1: + resolution: {integrity: sha512-RiBETaaP9veVstE4vUwSIcdATj6dKmXljouXc/DDNwBSPTp8FRkLGDSGFClKsAFeeg+13SB0Z1JZvbD76bigJw==} + engines: {node: ^14.15.0 || >=16.0.0} + + prettier@3.8.1: + resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} + engines: {node: '>=14'} + hasBin: true + + prismjs@1.30.0: + resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} + engines: {node: '>=6'} + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + + property-information@7.1.0: + resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} + + protobufjs@7.5.4: + resolution: {integrity: sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==} + engines: {node: '>=12.0.0'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + query-selector-shadow-dom@1.0.1: + resolution: {integrity: sha512-lT5yCqEBgfoMYpf3F2xQRK7zEr1rhIIZuceDK6+xRkJQ4NMbHTwXqk4NkwDwQMNqXgG9r9fyHnzwNVs6zV5KRw==} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + radix3@1.1.2: + resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} + + readdirp@5.0.0: + resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==} + engines: {node: '>= 20.19.0'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regex-recursion@6.0.2: + resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} + + regex-utilities@2.3.0: + resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} + + regex@6.1.0: + resolution: {integrity: sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + rehype-parse@9.0.1: + resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} + + rehype-raw@7.0.0: + resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + + rehype-stringify@10.0.1: + resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} + + rehype@13.0.2: + resolution: {integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==} + + remark-gfm@4.0.1: + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-rehype@11.1.2: + resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} + + remark-smartypants@3.0.2: + resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==} + engines: {node: '>=16.0.0'} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + retext-latin@4.0.0: + resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} + + retext-smartypants@6.2.0: + resolution: {integrity: sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==} + + retext-stringify@4.0.0: + resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==} + + retext@9.0.0: + resolution: {integrity: sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==} + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rollup@4.59.0: + resolution: {integrity: sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + s.color@0.0.15: + resolution: {integrity: sha512-AUNrbEUHeKY8XsYr/DYpl+qk5+aM+DChopnWOPEzn8YKzOhv4l2zH6LzZms3tOZP3wwdOyc0RmTciyi46HLIuA==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + sass-formatter@0.7.9: + resolution: {integrity: sha512-CWZ8XiSim+fJVG0cFLStwDvft1VI7uvXdCNJYXhDvowiv+DsbD1nXLiQ4zrE5UBvj5DWZJ93cwN0NX5PMsr1Pw==} + + sax@1.5.0: + resolution: {integrity: sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==} + engines: {node: '>=11.0.0'} + + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + sharp@0.34.5: + resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shiki@3.23.0: + resolution: {integrity: sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA==} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + smol-toml@1.6.0: + resolution: {integrity: sha512-4zemZi0HvTnYwLfrpk/CF9LOd9Lt87kAt50GnqhMpyF9U3poDAP2+iukq2bZsO/ufegbYehBkqINbsWxj4l4cw==} + engines: {node: '>= 18'} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.2.0: + resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} + engines: {node: '>=12'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + suf-log@2.5.3: + resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + svgo@4.0.1: + resolution: {integrity: sha512-XDpWUOPC6FEibaLzjfe0ucaV0YrOjYotGJO1WpF0Zd+n6ZGEQUsSugaoLq9QkEZtAfQIxT42UChcssDVPP3+/w==} + engines: {node: '>=16'} + hasBin: true + + synckit@0.11.12: + resolution: {integrity: sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==} + engines: {node: ^14.18.0 || >=16.0.0} + + tailwindcss@4.2.1: + resolution: {integrity: sha512-/tBrSQ36vCleJkAOsy9kbNTgaxvGbyOamC30PRePTQe/o1MFwEKHQk4Cn7BNGaPtjp+PuUrByJehM1hgxfq4sw==} + + tapable@2.3.0: + resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} + engines: {node: '>=6'} + + tiny-inflate@1.0.3: + resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==} + + tinyexec@1.0.2: + resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + engines: {node: '>=18'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + + ts-api-utils@2.4.0: + resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + + tsconfck@3.1.6: + resolution: {integrity: sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==} + engines: {node: ^18 || >=20} + hasBin: true + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typescript-eslint@8.57.0: + resolution: {integrity: sha512-W8GcigEMEeB07xEZol8oJ26rigm3+bfPHxHvwbYUlu1fUDsGuQ7Hiskx5xGW/xM4USc9Ephe3jtv7ZYPQntHeA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.6.3: + resolution: {integrity: sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q==} + + ultrahtml@1.6.0: + resolution: {integrity: sha512-R9fBn90VTJrqqLDwyMph+HGne8eqY1iPfYhPzZrvKpIfwkWZbcYlfpsb8B9dTvBfpy1/hqAD7Wi8EKfP9e8zdw==} + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + uncrypto@0.1.3: + resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + unifont@0.7.4: + resolution: {integrity: sha512-oHeis4/xl42HUIeHuNZRGEvxj5AaIKR+bHPNegRq5LV1gdc3jundpONbjglKpihmJf+dswygdMJn3eftGIMemg==} + + unist-util-find-after@5.0.0: + resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} + + unist-util-is@6.0.1: + resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} + + unist-util-modify-children@4.0.0: + resolution: {integrity: sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + + unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-children@3.0.0: + resolution: {integrity: sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==} + + unist-util-visit-parents@6.0.2: + resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} + + unist-util-visit@5.1.0: + resolution: {integrity: sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==} + + unstorage@1.17.4: + resolution: {integrity: sha512-fHK0yNg38tBiJKp/Vgsq4j0JEsCmgqH58HAn707S7zGkArbZsVr/CwINoi+nh3h98BRCwKvx1K3Xg9u3VV83sw==} + peerDependencies: + '@azure/app-configuration': ^1.8.0 + '@azure/cosmos': ^4.2.0 + '@azure/data-tables': ^13.3.0 + '@azure/identity': ^4.6.0 + '@azure/keyvault-secrets': ^4.9.0 + '@azure/storage-blob': ^12.26.0 + '@capacitor/preferences': ^6 || ^7 || ^8 + '@deno/kv': '>=0.9.0' + '@netlify/blobs': ^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0 + '@planetscale/database': ^1.19.0 + '@upstash/redis': ^1.34.3 + '@vercel/blob': '>=0.27.1' + '@vercel/functions': ^2.2.12 || ^3.0.0 + '@vercel/kv': ^1 || ^2 || ^3 + aws4fetch: ^1.0.20 + db0: '>=0.2.1' + idb-keyval: ^6.2.1 + ioredis: ^5.4.2 + uploadthing: ^7.4.4 + peerDependenciesMeta: + '@azure/app-configuration': + optional: true + '@azure/cosmos': + optional: true + '@azure/data-tables': + optional: true + '@azure/identity': + optional: true + '@azure/keyvault-secrets': + optional: true + '@azure/storage-blob': + optional: true + '@capacitor/preferences': + optional: true + '@deno/kv': + optional: true + '@netlify/blobs': + optional: true + '@planetscale/database': + optional: true + '@upstash/redis': + optional: true + '@vercel/blob': + optional: true + '@vercel/functions': + optional: true + '@vercel/kv': + optional: true + aws4fetch: + optional: true + db0: + optional: true + idb-keyval: + optional: true + ioredis: + optional: true + uploadthing: + optional: true + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + + vfile-location@5.0.3: + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} + + vfile-message@4.0.3: + resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + vite@6.4.1: + resolution: {integrity: sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: '>=1.21.0' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + + vitefu@1.1.2: + resolution: {integrity: sha512-zpKATdUbzbsycPFBN71nS2uzBUQiVnFoOrr2rvqv34S1lcAgMKKkjWleLGeiJlZ8lwCXvtWaRn7R3ZC16SYRuw==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-beta.0 + peerDependenciesMeta: + vite: + optional: true + + web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} + + web-vitals@5.1.0: + resolution: {integrity: sha512-ArI3kx5jI0atlTtmV0fWU3fjpLmq/nD3Zr1iFFlJLaqa5wLBkUSzINwBPySCX/8jRyjlmy1Volw1kz1g9XE4Jg==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-pm-runs@1.1.0: + resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} + engines: {node: '>=4'} + + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + widest-line@5.0.0: + resolution: {integrity: sha512-c9bZp7b5YtRj2wOe6dlj32MK+Bx/M/d+9VB2SHM1OtsUHR0aV0tdP6DWh/iMt0kWi1t5g1Iudu6hQRNd1A4PVA==} + engines: {node: '>=18'} + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} + engines: {node: '>=18'} + + xxhash-wasm@1.1.0: + resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yocto-queue@1.2.2: + resolution: {integrity: sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==} + engines: {node: '>=12.20'} + + yocto-spinner@0.2.3: + resolution: {integrity: sha512-sqBChb33loEnkoXte1bLg45bEBsOP9N1kzQh5JZNKj/0rik4zAPTNSAVPj3uQAdc6slYJ0Ksc403G2XgxsJQFQ==} + engines: {node: '>=18.19'} + + yoctocolors@2.1.2: + resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==} + engines: {node: '>=18'} + + zod-to-json-schema@3.25.1: + resolution: {integrity: sha512-pM/SU9d3YAggzi6MtR4h7ruuQlqKtad8e9S0fmxcMi+ueAK5Korys/aWcV9LIIHTVbj01NdzxcnXSN+O74ZIVA==} + peerDependencies: + zod: ^3.25 || ^4 + + zod-to-ts@1.2.0: + resolution: {integrity: sha512-x30XE43V+InwGpvTySRNz9kB7qFU8DlyEy7BsSTCHPH1R0QasMmHWZDCzYm6bVXtj/9NNJAZF3jW8rzFvH5OFA==} + peerDependencies: + typescript: ^4.9.4 || ^5.0.2 + zod: ^3 + + zod@3.25.76: + resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@astrojs/compiler@2.13.1': {} + + '@astrojs/internal-helpers@0.7.6': {} + + '@astrojs/markdown-remark@6.3.11': + dependencies: + '@astrojs/internal-helpers': 0.7.6 + '@astrojs/prism': 3.3.0 + github-slugger: 2.0.0 + hast-util-from-html: 2.0.3 + hast-util-to-text: 4.0.2 + import-meta-resolve: 4.2.0 + js-yaml: 4.1.1 + mdast-util-definitions: 6.0.0 + rehype-raw: 7.0.0 + rehype-stringify: 10.0.1 + remark-gfm: 4.0.1 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + remark-smartypants: 3.0.2 + shiki: 3.23.0 + smol-toml: 1.6.0 + unified: 11.0.5 + unist-util-remove-position: 5.0.0 + unist-util-visit: 5.1.0 + unist-util-visit-parents: 6.0.2 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + + '@astrojs/prism@3.3.0': + dependencies: + prismjs: 1.30.0 + + '@astrojs/telemetry@3.3.0': + dependencies: + ci-info: 4.4.0 + debug: 4.4.3 + dlv: 1.1.3 + dset: 3.1.4 + is-docker: 3.0.0 + is-wsl: 3.1.1 + which-pm-runs: 1.1.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.28.5': {} + + '@babel/parser@7.29.0': + dependencies: + '@babel/types': 7.29.0 + + '@babel/types@7.29.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@capsizecss/unpack@4.0.0': + dependencies: + fontkitten: 1.0.3 + + '@cspotcode/source-map-support@0.8.1': + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + + '@emnapi/runtime@1.9.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@esbuild/aix-ppc64@0.25.12': + optional: true + + '@esbuild/aix-ppc64@0.27.4': + optional: true + + '@esbuild/android-arm64@0.25.12': + optional: true + + '@esbuild/android-arm64@0.27.4': + optional: true + + '@esbuild/android-arm@0.25.12': + optional: true + + '@esbuild/android-arm@0.27.4': + optional: true + + '@esbuild/android-x64@0.25.12': + optional: true + + '@esbuild/android-x64@0.27.4': + optional: true + + '@esbuild/darwin-arm64@0.25.12': + optional: true + + '@esbuild/darwin-arm64@0.27.4': + optional: true + + '@esbuild/darwin-x64@0.25.12': + optional: true + + '@esbuild/darwin-x64@0.27.4': + optional: true + + '@esbuild/freebsd-arm64@0.25.12': + optional: true + + '@esbuild/freebsd-arm64@0.27.4': + optional: true + + '@esbuild/freebsd-x64@0.25.12': + optional: true + + '@esbuild/freebsd-x64@0.27.4': + optional: true + + '@esbuild/linux-arm64@0.25.12': + optional: true + + '@esbuild/linux-arm64@0.27.4': + optional: true + + '@esbuild/linux-arm@0.25.12': + optional: true + + '@esbuild/linux-arm@0.27.4': + optional: true + + '@esbuild/linux-ia32@0.25.12': + optional: true + + '@esbuild/linux-ia32@0.27.4': + optional: true + + '@esbuild/linux-loong64@0.25.12': + optional: true + + '@esbuild/linux-loong64@0.27.4': + optional: true + + '@esbuild/linux-mips64el@0.25.12': + optional: true + + '@esbuild/linux-mips64el@0.27.4': + optional: true + + '@esbuild/linux-ppc64@0.25.12': + optional: true + + '@esbuild/linux-ppc64@0.27.4': + optional: true + + '@esbuild/linux-riscv64@0.25.12': + optional: true + + '@esbuild/linux-riscv64@0.27.4': + optional: true + + '@esbuild/linux-s390x@0.25.12': + optional: true + + '@esbuild/linux-s390x@0.27.4': + optional: true + + '@esbuild/linux-x64@0.25.12': + optional: true + + '@esbuild/linux-x64@0.27.4': + optional: true + + '@esbuild/netbsd-arm64@0.25.12': + optional: true + + '@esbuild/netbsd-arm64@0.27.4': + optional: true + + '@esbuild/netbsd-x64@0.25.12': + optional: true + + '@esbuild/netbsd-x64@0.27.4': + optional: true + + '@esbuild/openbsd-arm64@0.25.12': + optional: true + + '@esbuild/openbsd-arm64@0.27.4': + optional: true + + '@esbuild/openbsd-x64@0.25.12': + optional: true + + '@esbuild/openbsd-x64@0.27.4': + optional: true + + '@esbuild/openharmony-arm64@0.25.12': + optional: true + + '@esbuild/openharmony-arm64@0.27.4': + optional: true + + '@esbuild/sunos-x64@0.25.12': + optional: true + + '@esbuild/sunos-x64@0.27.4': + optional: true + + '@esbuild/win32-arm64@0.25.12': + optional: true + + '@esbuild/win32-arm64@0.27.4': + optional: true + + '@esbuild/win32-ia32@0.25.12': + optional: true + + '@esbuild/win32-ia32@0.27.4': + optional: true + + '@esbuild/win32-x64@0.25.12': + optional: true + + '@esbuild/win32-x64@0.27.4': + optional: true + + '@eslint-community/eslint-utils@4.9.1(eslint@9.39.4(jiti@2.6.1))': + dependencies: + eslint: 9.39.4(jiti@2.6.1) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.2': {} + + '@eslint/config-array@0.21.2': + dependencies: + '@eslint/object-schema': 2.1.7 + debug: 4.4.3 + minimatch: 3.1.5 + transitivePeerDependencies: + - supports-color + + '@eslint/config-helpers@0.4.2': + dependencies: + '@eslint/core': 0.17.0 + + '@eslint/core@0.17.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.3.5': + dependencies: + ajv: 6.14.0 + debug: 4.4.3 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + minimatch: 3.1.5 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.39.4': {} + + '@eslint/object-schema@2.1.7': {} + + '@eslint/plugin-kit@0.4.1': + dependencies: + '@eslint/core': 0.17.0 + levn: 0.4.1 + + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.7': + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.4.3 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.4.3': {} + + '@img/colour@1.1.0': + optional: true + + '@img/sharp-darwin-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.2.4 + optional: true + + '@img/sharp-darwin-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.2.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.2.4': + optional: true + + '@img/sharp-libvips-linux-ppc64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-riscv64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-s390x@1.2.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + optional: true + + '@img/sharp-linux-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.2.4 + optional: true + + '@img/sharp-linux-arm@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.2.4 + optional: true + + '@img/sharp-linux-ppc64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-ppc64': 1.2.4 + optional: true + + '@img/sharp-linux-riscv64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-riscv64': 1.2.4 + optional: true + + '@img/sharp-linux-s390x@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.2.4 + optional: true + + '@img/sharp-linux-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + optional: true + + '@img/sharp-wasm32@0.34.5': + dependencies: + '@emnapi/runtime': 1.9.0 + optional: true + + '@img/sharp-win32-arm64@0.34.5': + optional: true + + '@img/sharp-win32-ia32@0.34.5': + optional: true + + '@img/sharp-win32-x64@0.34.5': + optional: true + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@opentelemetry/api-logs@0.208.0': + dependencies: + '@opentelemetry/api': 1.9.0 + + '@opentelemetry/api@1.9.0': {} + + '@opentelemetry/core@2.2.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/semantic-conventions': 1.40.0 + + '@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/semantic-conventions': 1.40.0 + + '@opentelemetry/exporter-logs-otlp-http@0.208.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.208.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.208.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.208.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-exporter-base@0.208.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.208.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-transformer@0.208.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.208.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.2.0(@opentelemetry/api@1.9.0) + protobufjs: 7.5.4 + + '@opentelemetry/resources@2.2.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.40.0 + + '@opentelemetry/resources@2.6.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.6.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.40.0 + + '@opentelemetry/sdk-logs@0.208.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.208.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.2.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-metrics@2.2.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.2.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-trace-base@2.2.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.2.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.40.0 + + '@opentelemetry/semantic-conventions@1.40.0': {} + + '@oslojs/encoding@1.1.0': {} + + '@pkgr/core@0.2.9': {} + + '@posthog/core@1.23.3': + dependencies: + cross-spawn: 7.0.6 + + '@posthog/types@1.360.1': {} + + '@protobufjs/aspromise@1.1.2': {} + + '@protobufjs/base64@1.1.2': {} + + '@protobufjs/codegen@2.0.4': {} + + '@protobufjs/eventemitter@1.1.0': {} + + '@protobufjs/fetch@1.1.0': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 + + '@protobufjs/float@1.0.2': {} + + '@protobufjs/inquire@1.1.0': {} + + '@protobufjs/path@1.1.2': {} + + '@protobufjs/pool@1.1.0': {} + + '@protobufjs/utf8@1.1.0': {} + + '@rollup/pluginutils@5.3.0(rollup@4.59.0)': + dependencies: + '@types/estree': 1.0.8 + estree-walker: 2.0.2 + picomatch: 4.0.3 + optionalDependencies: + rollup: 4.59.0 + + '@rollup/rollup-android-arm-eabi@4.59.0': + optional: true + + '@rollup/rollup-android-arm64@4.59.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.59.0': + optional: true + + '@rollup/rollup-darwin-x64@4.59.0': + optional: true + + '@rollup/rollup-freebsd-arm64@4.59.0': + optional: true + + '@rollup/rollup-freebsd-x64@4.59.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.59.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.59.0': + optional: true + + '@rollup/rollup-linux-loong64-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-loong64-musl@4.59.0': + optional: true + + '@rollup/rollup-linux-ppc64-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-ppc64-musl@4.59.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.59.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.59.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.59.0': + optional: true + + '@rollup/rollup-openbsd-x64@4.59.0': + optional: true + + '@rollup/rollup-openharmony-arm64@4.59.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.59.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.59.0': + optional: true + + '@rollup/rollup-win32-x64-gnu@4.59.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.59.0': + optional: true + + '@shikijs/core@3.23.0': + dependencies: + '@shikijs/types': 3.23.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + + '@shikijs/engine-javascript@3.23.0': + dependencies: + '@shikijs/types': 3.23.0 + '@shikijs/vscode-textmate': 10.0.2 + oniguruma-to-es: 4.3.4 + + '@shikijs/engine-oniguruma@3.23.0': + dependencies: + '@shikijs/types': 3.23.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@shikijs/langs@3.23.0': + dependencies: + '@shikijs/types': 3.23.0 + + '@shikijs/themes@3.23.0': + dependencies: + '@shikijs/types': 3.23.0 + + '@shikijs/types@3.23.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@10.0.2': {} + + '@tailwindcss/node@4.2.1': + dependencies: + '@jridgewell/remapping': 2.3.5 + enhanced-resolve: 5.20.0 + jiti: 2.6.1 + lightningcss: 1.31.1 + magic-string: 0.30.21 + source-map-js: 1.2.1 + tailwindcss: 4.2.1 + + '@tailwindcss/oxide-android-arm64@4.2.1': + optional: true + + '@tailwindcss/oxide-darwin-arm64@4.2.1': + optional: true + + '@tailwindcss/oxide-darwin-x64@4.2.1': + optional: true + + '@tailwindcss/oxide-freebsd-x64@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-x64-musl@4.2.1': + optional: true + + '@tailwindcss/oxide-wasm32-wasi@4.2.1': + optional: true + + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': + optional: true + + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': + optional: true + + '@tailwindcss/oxide@4.2.1': + optionalDependencies: + '@tailwindcss/oxide-android-arm64': 4.2.1 + '@tailwindcss/oxide-darwin-arm64': 4.2.1 + '@tailwindcss/oxide-darwin-x64': 4.2.1 + '@tailwindcss/oxide-freebsd-x64': 4.2.1 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.2.1 + '@tailwindcss/oxide-linux-arm64-gnu': 4.2.1 + '@tailwindcss/oxide-linux-arm64-musl': 4.2.1 + '@tailwindcss/oxide-linux-x64-gnu': 4.2.1 + '@tailwindcss/oxide-linux-x64-musl': 4.2.1 + '@tailwindcss/oxide-wasm32-wasi': 4.2.1 + '@tailwindcss/oxide-win32-arm64-msvc': 4.2.1 + '@tailwindcss/oxide-win32-x64-msvc': 4.2.1 + + '@tailwindcss/vite@4.2.1(vite@6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1))': + dependencies: + '@tailwindcss/node': 4.2.1 + '@tailwindcss/oxide': 4.2.1 + tailwindcss: 4.2.1 + vite: 6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1) + + '@tsconfig/node10@1.0.12': {} + + '@tsconfig/node12@1.0.11': {} + + '@tsconfig/node14@1.0.3': {} + + '@tsconfig/node16@1.0.4': {} + + '@types/debug@4.1.12': + dependencies: + '@types/ms': 2.1.0 + + '@types/estree@1.0.8': {} + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/json-schema@7.0.15': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/ms@2.1.0': {} + + '@types/nlcst@2.0.3': + dependencies: + '@types/unist': 3.0.3 + + '@types/node@20.19.37': + dependencies: + undici-types: 6.21.0 + + '@types/trusted-types@2.0.7': + optional: true + + '@types/unist@3.0.3': {} + + '@typescript-eslint/eslint-plugin@8.57.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/type-utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 + eslint: 9.39.4(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 + debug: 4.4.3 + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.57.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.57.0': + dependencies: + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 + + '@typescript-eslint/tsconfig-utils@8.57.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.4(jiti@2.6.1) + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.57.0': {} + + '@typescript-eslint/typescript-estree@8.57.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.57.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 + debug: 4.4.3 + minimatch: 10.2.4 + semver: 7.7.4 + tinyglobby: 0.2.15 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.57.0': + dependencies: + '@typescript-eslint/types': 8.57.0 + eslint-visitor-keys: 5.0.1 + + '@ungap/structured-clone@1.3.0': {} + + acorn-jsx@5.3.2(acorn@8.16.0): + dependencies: + acorn: 8.16.0 + + acorn-walk@8.3.5: + dependencies: + acorn: 8.16.0 + + acorn@8.16.0: {} + + ajv@6.14.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + + ansi-regex@5.0.1: {} + + ansi-regex@6.2.2: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.3: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arg@4.1.3: {} + + argparse@2.0.1: {} + + aria-query@5.3.2: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-includes@3.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + + array-iterate@2.0.1: {} + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + ast-types-flow@0.0.8: {} + + astro-eslint-parser@1.3.0: + dependencies: + '@astrojs/compiler': 2.13.1 + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + astrojs-compiler-sync: 1.1.1(@astrojs/compiler@2.13.1) + debug: 4.4.3 + entities: 6.0.1 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + fast-glob: 3.3.3 + is-glob: 4.0.3 + semver: 7.7.4 + transitivePeerDependencies: + - supports-color + + astro@5.18.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3): + dependencies: + '@astrojs/compiler': 2.13.1 + '@astrojs/internal-helpers': 0.7.6 + '@astrojs/markdown-remark': 6.3.11 + '@astrojs/telemetry': 3.3.0 + '@capsizecss/unpack': 4.0.0 + '@oslojs/encoding': 1.1.0 + '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + acorn: 8.16.0 + aria-query: 5.3.2 + axobject-query: 4.1.0 + boxen: 8.0.1 + ci-info: 4.4.0 + clsx: 2.1.1 + common-ancestor-path: 1.0.1 + cookie: 1.1.1 + cssesc: 3.0.0 + debug: 4.4.3 + deterministic-object-hash: 2.0.2 + devalue: 5.6.4 + diff: 8.0.3 + dlv: 1.1.3 + dset: 3.1.4 + es-module-lexer: 1.7.0 + esbuild: 0.27.4 + estree-walker: 3.0.3 + flattie: 1.1.1 + fontace: 0.4.1 + github-slugger: 2.0.0 + html-escaper: 3.0.3 + http-cache-semantics: 4.2.0 + import-meta-resolve: 4.2.0 + js-yaml: 4.1.1 + magic-string: 0.30.21 + magicast: 0.5.2 + mrmime: 2.0.1 + neotraverse: 0.6.18 + p-limit: 6.2.0 + p-queue: 8.1.1 + package-manager-detector: 1.6.0 + piccolore: 0.1.3 + picomatch: 4.0.3 + prompts: 2.4.2 + rehype: 13.0.2 + semver: 7.7.4 + shiki: 3.23.0 + smol-toml: 1.6.0 + svgo: 4.0.1 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + tsconfck: 3.1.6(typescript@5.9.3) + ultrahtml: 1.6.0 + unifont: 0.7.4 + unist-util-visit: 5.1.0 + unstorage: 1.17.4 + vfile: 6.0.3 + vite: 6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1) + vitefu: 1.1.2(vite@6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1)) + xxhash-wasm: 1.1.0 + yargs-parser: 21.1.1 + yocto-spinner: 0.2.3 + zod: 3.25.76 + zod-to-json-schema: 3.25.1(zod@3.25.76) + zod-to-ts: 1.2.0(typescript@5.9.3)(zod@3.25.76) + optionalDependencies: + sharp: 0.34.5 + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@deno/kv' + - '@netlify/blobs' + - '@planetscale/database' + - '@types/node' + - '@upstash/redis' + - '@vercel/blob' + - '@vercel/functions' + - '@vercel/kv' + - aws4fetch + - db0 + - idb-keyval + - ioredis + - jiti + - less + - lightningcss + - rollup + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - typescript + - uploadthing + - yaml + + astrojs-compiler-sync@1.1.1(@astrojs/compiler@2.13.1): + dependencies: + '@astrojs/compiler': 2.13.1 + synckit: 0.11.12 + + async-function@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axe-core@4.11.1: {} + + axobject-query@4.1.0: {} + + bail@2.0.2: {} + + balanced-match@1.0.2: {} + + balanced-match@4.0.4: {} + + base-64@1.0.0: {} + + boolbase@1.0.0: {} + + boxen@8.0.1: + dependencies: + ansi-align: 3.0.1 + camelcase: 8.0.0 + chalk: 5.6.2 + cli-boxes: 3.0.0 + string-width: 7.2.0 + type-fest: 4.41.0 + widest-line: 5.0.0 + wrap-ansi: 9.0.2 + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@5.0.4: + dependencies: + balanced-match: 4.0.4 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + callsites@3.1.0: {} + + camelcase@8.0.0: {} + + ccount@2.0.1: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chalk@5.6.2: {} + + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + + character-entities@2.0.2: {} + + chokidar@5.0.0: + dependencies: + readdirp: 5.0.0 + + ci-info@4.4.0: {} + + cli-boxes@3.0.0: {} + + clsx@2.1.1: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + comma-separated-tokens@2.0.3: {} + + commander@11.1.0: {} + + common-ancestor-path@1.0.1: {} + + concat-map@0.0.1: {} + + cookie-es@1.2.2: {} + + cookie@1.1.1: {} + + core-js@3.48.0: {} + + create-require@1.1.1: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + crossws@0.3.5: + dependencies: + uncrypto: 0.1.3 + + css-select@5.2.2: + dependencies: + boolbase: 1.0.0 + css-what: 6.2.2 + domhandler: 5.0.3 + domutils: 3.2.2 + nth-check: 2.1.1 + + css-tree@2.2.1: + dependencies: + mdn-data: 2.0.28 + source-map-js: 1.2.1 + + css-tree@3.2.1: + dependencies: + mdn-data: 2.27.1 + source-map-js: 1.2.1 + + css-what@6.2.2: {} + + cssesc@3.0.0: {} + + csso@5.0.5: + dependencies: + css-tree: 2.2.1 + + damerau-levenshtein@1.0.8: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.3.0: + dependencies: + character-entities: 2.0.2 + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + defu@6.1.4: {} + + dequal@2.0.3: {} + + destr@2.0.5: {} + + detect-libc@2.1.2: {} + + deterministic-object-hash@2.0.2: + dependencies: + base-64: 1.0.0 + + devalue@5.6.4: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + diff@4.0.4: {} + + diff@8.0.3: {} + + dlv@1.1.3: {} + + dom-serializer@2.0.0: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + + domelementtype@2.3.0: {} + + domhandler@5.0.3: + dependencies: + domelementtype: 2.3.0 + + dompurify@3.3.3: + optionalDependencies: + '@types/trusted-types': 2.0.7 + + domutils@3.2.2: + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + + dset@3.1.4: {} + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + emoji-regex@10.6.0: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + enhanced-resolve@5.20.0: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.0 + + entities@4.5.0: {} + + entities@6.0.1: {} + + es-abstract@1.24.1: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.20 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-module-lexer@1.7.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.1.0: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + esbuild@0.25.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.12 + '@esbuild/android-arm': 0.25.12 + '@esbuild/android-arm64': 0.25.12 + '@esbuild/android-x64': 0.25.12 + '@esbuild/darwin-arm64': 0.25.12 + '@esbuild/darwin-x64': 0.25.12 + '@esbuild/freebsd-arm64': 0.25.12 + '@esbuild/freebsd-x64': 0.25.12 + '@esbuild/linux-arm': 0.25.12 + '@esbuild/linux-arm64': 0.25.12 + '@esbuild/linux-ia32': 0.25.12 + '@esbuild/linux-loong64': 0.25.12 + '@esbuild/linux-mips64el': 0.25.12 + '@esbuild/linux-ppc64': 0.25.12 + '@esbuild/linux-riscv64': 0.25.12 + '@esbuild/linux-s390x': 0.25.12 + '@esbuild/linux-x64': 0.25.12 + '@esbuild/netbsd-arm64': 0.25.12 + '@esbuild/netbsd-x64': 0.25.12 + '@esbuild/openbsd-arm64': 0.25.12 + '@esbuild/openbsd-x64': 0.25.12 + '@esbuild/openharmony-arm64': 0.25.12 + '@esbuild/sunos-x64': 0.25.12 + '@esbuild/win32-arm64': 0.25.12 + '@esbuild/win32-ia32': 0.25.12 + '@esbuild/win32-x64': 0.25.12 + + esbuild@0.27.4: + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.4 + '@esbuild/android-arm': 0.27.4 + '@esbuild/android-arm64': 0.27.4 + '@esbuild/android-x64': 0.27.4 + '@esbuild/darwin-arm64': 0.27.4 + '@esbuild/darwin-x64': 0.27.4 + '@esbuild/freebsd-arm64': 0.27.4 + '@esbuild/freebsd-x64': 0.27.4 + '@esbuild/linux-arm': 0.27.4 + '@esbuild/linux-arm64': 0.27.4 + '@esbuild/linux-ia32': 0.27.4 + '@esbuild/linux-loong64': 0.27.4 + '@esbuild/linux-mips64el': 0.27.4 + '@esbuild/linux-ppc64': 0.27.4 + '@esbuild/linux-riscv64': 0.27.4 + '@esbuild/linux-s390x': 0.27.4 + '@esbuild/linux-x64': 0.27.4 + '@esbuild/netbsd-arm64': 0.27.4 + '@esbuild/netbsd-x64': 0.27.4 + '@esbuild/openbsd-arm64': 0.27.4 + '@esbuild/openbsd-x64': 0.27.4 + '@esbuild/openharmony-arm64': 0.27.4 + '@esbuild/sunos-x64': 0.27.4 + '@esbuild/win32-arm64': 0.27.4 + '@esbuild/win32-ia32': 0.27.4 + '@esbuild/win32-x64': 0.27.4 + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-compat-utils@0.6.5(eslint@9.39.4(jiti@2.6.1)): + dependencies: + eslint: 9.39.4(jiti@2.6.1) + semver: 7.7.4 + + eslint-plugin-astro@1.6.0(eslint@9.39.4(jiti@2.6.1)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + '@jridgewell/sourcemap-codec': 1.5.5 + '@typescript-eslint/types': 8.57.0 + astro-eslint-parser: 1.3.0 + eslint: 9.39.4(jiti@2.6.1) + eslint-compat-utils: 0.6.5(eslint@9.39.4(jiti@2.6.1)) + globals: 16.5.0 + postcss: 8.5.8 + postcss-selector-parser: 7.1.1 + transitivePeerDependencies: + - supports-color + + eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.4(jiti@2.6.1)): + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.11.1 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.39.4(jiti@2.6.1) + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + + eslint-plugin-prettier@5.5.5(eslint@9.39.4(jiti@2.6.1))(prettier@3.8.1): + dependencies: + eslint: 9.39.4(jiti@2.6.1) + prettier: 3.8.1 + prettier-linter-helpers: 1.0.1 + synckit: 0.11.12 + + eslint-scope@8.4.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.1: {} + + eslint-visitor-keys@5.0.1: {} + + eslint@9.39.4(jiti@2.6.1): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.21.2 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 + '@eslint/eslintrc': 3.3.5 + '@eslint/js': 9.39.4 + '@eslint/plugin-kit': 0.4.1 + '@humanfs/node': 0.16.7 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.8 + ajv: 6.14.0 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.7.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.5 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.6.1 + transitivePeerDependencies: + - supports-color + + espree@10.4.0: + dependencies: + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) + eslint-visitor-keys: 4.2.1 + + esquery@1.7.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@2.0.2: {} + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.8 + + esutils@2.0.3: {} + + eventemitter3@5.0.4: {} + + extend@3.0.2: {} + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fflate@0.4.8: {} + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.4.1 + keyv: 4.5.4 + + flatted@3.4.1: {} + + flattie@1.1.1: {} + + fontace@0.4.1: + dependencies: + fontkitten: 1.0.3 + + fontkitten@1.0.3: + dependencies: + tiny-inflate: 1.0.3 + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + + get-east-asian-width@1.5.0: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + + github-slugger@2.0.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + globals@14.0.0: {} + + globals@16.5.0: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + h3@1.15.6: + dependencies: + cookie-es: 1.2.2 + crossws: 0.3.5 + defu: 6.1.4 + destr: 2.0.5 + iron-webcrypto: 1.2.1 + node-mock-http: 1.0.4 + radix3: 1.1.2 + ufo: 1.6.3 + uncrypto: 0.1.3 + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hast-util-from-html@2.0.3: + dependencies: + '@types/hast': 3.0.4 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.3 + parse5: 7.3.0 + vfile: 6.0.3 + vfile-message: 4.0.3 + + hast-util-from-parse5@8.0.3: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + devlop: 1.1.0 + hastscript: 9.0.1 + property-information: 7.1.0 + vfile: 6.0.3 + vfile-location: 5.0.3 + web-namespaces: 2.0.1 + + hast-util-is-element@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-parse-selector@4.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-raw@9.1.0: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + '@ungap/structured-clone': 1.3.0 + hast-util-from-parse5: 8.0.3 + hast-util-to-parse5: 8.0.1 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.1 + parse5: 7.3.0 + unist-util-position: 5.0.0 + unist-util-visit: 5.1.0 + vfile: 6.0.3 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-html@9.0.5: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.1 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.4 + zwitch: 2.0.4 + + hast-util-to-parse5@8.0.1: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-text@4.0.2: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + hast-util-is-element: 3.0.0 + unist-util-find-after: 5.0.0 + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hastscript@9.0.1: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + + html-escaper@3.0.3: {} + + html-void-elements@3.0.0: {} + + http-cache-semantics@4.2.0: {} + + ignore@5.3.2: {} + + ignore@7.0.5: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + import-meta-resolve@4.2.0: {} + + imurmurhash@0.1.4: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + iron-webcrypto@1.2.1: {} + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-callable@1.2.7: {} + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-docker@3.0.0: {} + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-plain-obj@4.1.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.20 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-wsl@3.1.1: + dependencies: + is-inside-container: 1.0.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + jiti@2.6.1: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kleur@3.0.3: {} + + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lightningcss-android-arm64@1.31.1: + optional: true + + lightningcss-darwin-arm64@1.31.1: + optional: true + + lightningcss-darwin-x64@1.31.1: + optional: true + + lightningcss-freebsd-x64@1.31.1: + optional: true + + lightningcss-linux-arm-gnueabihf@1.31.1: + optional: true + + lightningcss-linux-arm64-gnu@1.31.1: + optional: true + + lightningcss-linux-arm64-musl@1.31.1: + optional: true + + lightningcss-linux-x64-gnu@1.31.1: + optional: true + + lightningcss-linux-x64-musl@1.31.1: + optional: true + + lightningcss-win32-arm64-msvc@1.31.1: + optional: true + + lightningcss-win32-x64-msvc@1.31.1: + optional: true + + lightningcss@1.31.1: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.31.1 + lightningcss-darwin-arm64: 1.31.1 + lightningcss-darwin-x64: 1.31.1 + lightningcss-freebsd-x64: 1.31.1 + lightningcss-linux-arm-gnueabihf: 1.31.1 + lightningcss-linux-arm64-gnu: 1.31.1 + lightningcss-linux-arm64-musl: 1.31.1 + lightningcss-linux-x64-gnu: 1.31.1 + lightningcss-linux-x64-musl: 1.31.1 + lightningcss-win32-arm64-msvc: 1.31.1 + lightningcss-win32-x64-msvc: 1.31.1 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + long@5.3.2: {} + + longest-streak@3.1.0: {} + + lru-cache@11.2.6: {} + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + magicast@0.5.2: + dependencies: + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + source-map-js: 1.2.1 + + make-error@1.3.6: {} + + markdown-table@3.0.4: {} + + math-intrinsics@1.1.0: {} + + mdast-util-definitions@6.0.0: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + unist-util-visit: 5.1.0 + + mdast-util-find-and-replace@3.0.2: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + mdast-util-from-markdown@2.0.3: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.1.0: + dependencies: + mdast-util-from-markdown: 2.0.3 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.1.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.1 + + mdast-util-to-hast@13.2.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.3.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.1 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.1.0 + vfile: 6.0.3 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.1.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + mdn-data@2.0.28: {} + + mdn-data@2.27.1: {} + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.2 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.3.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.3 + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + minimatch@10.2.4: + dependencies: + brace-expansion: 5.0.4 + + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.12 + + mrmime@2.0.1: {} + + ms@2.1.3: {} + + nanoid@3.3.11: {} + + natural-compare@1.4.0: {} + + neotraverse@0.6.18: {} + + nlcst-to-string@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + + node-fetch-native@1.6.7: {} + + node-mock-http@1.0.4: {} + + normalize-path@3.0.0: {} + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + ofetch@1.5.1: + dependencies: + destr: 2.0.5 + node-fetch-native: 1.6.7 + ufo: 1.6.3 + + ohash@2.0.11: {} + + oniguruma-parser@0.12.1: {} + + oniguruma-to-es@4.3.4: + dependencies: + oniguruma-parser: 0.12.1 + regex: 6.1.0 + regex-recursion: 6.0.2 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-limit@6.2.0: + dependencies: + yocto-queue: 1.2.2 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-queue@8.1.1: + dependencies: + eventemitter3: 5.0.4 + p-timeout: 6.1.4 + + p-timeout@6.1.4: {} + + package-manager-detector@1.6.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-latin@7.0.0: + dependencies: + '@types/nlcst': 2.0.3 + '@types/unist': 3.0.3 + nlcst-to-string: 4.0.0 + unist-util-modify-children: 4.0.0 + unist-util-visit-children: 3.0.0 + vfile: 6.0.3 + + parse5@7.3.0: + dependencies: + entities: 6.0.1 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + piccolore@0.1.3: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + possible-typed-array-names@1.1.0: {} + + postcss-selector-parser@7.1.1: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.5.8: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + posthog-js@1.360.1: + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.208.0 + '@opentelemetry/exporter-logs-otlp-http': 0.208.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.6.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) + '@posthog/core': 1.23.3 + '@posthog/types': 1.360.1 + core-js: 3.48.0 + dompurify: 3.3.3 + fflate: 0.4.8 + preact: 10.29.0 + query-selector-shadow-dom: 1.0.1 + web-vitals: 5.1.0 + + preact@10.29.0: {} + + prelude-ls@1.2.1: {} + + prettier-linter-helpers@1.0.1: + dependencies: + fast-diff: 1.3.0 + + prettier-plugin-astro@0.14.1: + dependencies: + '@astrojs/compiler': 2.13.1 + prettier: 3.8.1 + sass-formatter: 0.7.9 + + prettier@3.8.1: {} + + prismjs@1.30.0: {} + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + + property-information@7.1.0: {} + + protobufjs@7.5.4: + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/node': 20.19.37 + long: 5.3.2 + + punycode@2.3.1: {} + + query-selector-shadow-dom@1.0.1: {} + + queue-microtask@1.2.3: {} + + radix3@1.1.2: {} + + readdirp@5.0.0: {} + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + regex-recursion@6.0.2: + dependencies: + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@6.1.0: + dependencies: + regex-utilities: 2.3.0 + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + rehype-parse@9.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-from-html: 2.0.3 + unified: 11.0.5 + + rehype-raw@7.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-raw: 9.1.0 + vfile: 6.0.3 + + rehype-stringify@10.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + unified: 11.0.5 + + rehype@13.0.2: + dependencies: + '@types/hast': 3.0.4 + rehype-parse: 9.0.1 + rehype-stringify: 10.0.1 + unified: 11.0.5 + + remark-gfm@4.0.1: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-gfm: 3.1.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.3 + micromark-util-types: 2.0.2 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-rehype@11.1.2: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + mdast-util-to-hast: 13.2.1 + unified: 11.0.5 + vfile: 6.0.3 + + remark-smartypants@3.0.2: + dependencies: + retext: 9.0.0 + retext-smartypants: 6.2.0 + unified: 11.0.5 + unist-util-visit: 5.1.0 + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + + resolve-from@4.0.0: {} + + retext-latin@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + parse-latin: 7.0.0 + unified: 11.0.5 + + retext-smartypants@6.2.0: + dependencies: + '@types/nlcst': 2.0.3 + nlcst-to-string: 4.0.0 + unist-util-visit: 5.1.0 + + retext-stringify@4.0.0: + dependencies: + '@types/nlcst': 2.0.3 + nlcst-to-string: 4.0.0 + unified: 11.0.5 + + retext@9.0.0: + dependencies: + '@types/nlcst': 2.0.3 + retext-latin: 4.0.0 + retext-stringify: 4.0.0 + unified: 11.0.5 + + reusify@1.1.0: {} + + rollup@4.59.0: + dependencies: + '@types/estree': 1.0.8 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.59.0 + '@rollup/rollup-android-arm64': 4.59.0 + '@rollup/rollup-darwin-arm64': 4.59.0 + '@rollup/rollup-darwin-x64': 4.59.0 + '@rollup/rollup-freebsd-arm64': 4.59.0 + '@rollup/rollup-freebsd-x64': 4.59.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.59.0 + '@rollup/rollup-linux-arm-musleabihf': 4.59.0 + '@rollup/rollup-linux-arm64-gnu': 4.59.0 + '@rollup/rollup-linux-arm64-musl': 4.59.0 + '@rollup/rollup-linux-loong64-gnu': 4.59.0 + '@rollup/rollup-linux-loong64-musl': 4.59.0 + '@rollup/rollup-linux-ppc64-gnu': 4.59.0 + '@rollup/rollup-linux-ppc64-musl': 4.59.0 + '@rollup/rollup-linux-riscv64-gnu': 4.59.0 + '@rollup/rollup-linux-riscv64-musl': 4.59.0 + '@rollup/rollup-linux-s390x-gnu': 4.59.0 + '@rollup/rollup-linux-x64-gnu': 4.59.0 + '@rollup/rollup-linux-x64-musl': 4.59.0 + '@rollup/rollup-openbsd-x64': 4.59.0 + '@rollup/rollup-openharmony-arm64': 4.59.0 + '@rollup/rollup-win32-arm64-msvc': 4.59.0 + '@rollup/rollup-win32-ia32-msvc': 4.59.0 + '@rollup/rollup-win32-x64-gnu': 4.59.0 + '@rollup/rollup-win32-x64-msvc': 4.59.0 + fsevents: 2.3.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + s.color@0.0.15: {} + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + sass-formatter@0.7.9: + dependencies: + suf-log: 2.5.3 + + sax@1.5.0: {} + + semver@7.7.4: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + sharp@0.34.5: + dependencies: + '@img/colour': 1.1.0 + detect-libc: 2.1.2 + semver: 7.7.4 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + optional: true + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + shiki@3.23.0: + dependencies: + '@shikijs/core': 3.23.0 + '@shikijs/engine-javascript': 3.23.0 + '@shikijs/engine-oniguruma': 3.23.0 + '@shikijs/langs': 3.23.0 + '@shikijs/themes': 3.23.0 + '@shikijs/types': 3.23.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + sisteransi@1.0.5: {} + + smol-toml@1.6.0: {} + + source-map-js@1.2.1: {} + + space-separated-tokens@2.0.2: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@7.2.0: + dependencies: + emoji-regex: 10.6.0 + get-east-asian-width: 1.5.0 + strip-ansi: 7.2.0 + + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.2.0: + dependencies: + ansi-regex: 6.2.2 + + strip-json-comments@3.1.1: {} + + suf-log@2.5.3: + dependencies: + s.color: 0.0.15 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + svgo@4.0.1: + dependencies: + commander: 11.1.0 + css-select: 5.2.2 + css-tree: 3.2.1 + css-what: 6.2.2 + csso: 5.0.5 + picocolors: 1.1.1 + sax: 1.5.0 + + synckit@0.11.12: + dependencies: + '@pkgr/core': 0.2.9 + + tailwindcss@4.2.1: {} + + tapable@2.3.0: {} + + tiny-inflate@1.0.3: {} + + tinyexec@1.0.2: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + trim-lines@3.0.1: {} + + trough@2.2.0: {} + + ts-api-utils@2.4.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.12 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.19.37 + acorn: 8.16.0 + acorn-walk: 8.3.5 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.4 + make-error: 1.3.6 + typescript: 5.9.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + + tsconfck@3.1.6(typescript@5.9.3): + optionalDependencies: + typescript: 5.9.3 + + tslib@2.8.1: + optional: true + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@4.41.0: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript-eslint@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.57.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typescript@5.9.3: {} + + ufo@1.6.3: {} + + ultrahtml@1.6.0: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + uncrypto@0.1.3: {} + + undici-types@6.21.0: {} + + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + + unifont@0.7.4: + dependencies: + css-tree: 3.2.1 + ofetch: 1.5.1 + ohash: 2.0.11 + + unist-util-find-after@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + + unist-util-is@6.0.1: + dependencies: + '@types/unist': 3.0.3 + + unist-util-modify-children@4.0.0: + dependencies: + '@types/unist': 3.0.3 + array-iterate: 2.0.1 + + unist-util-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-remove-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-visit: 5.1.0 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-children@3.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + + unist-util-visit@5.1.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + unstorage@1.17.4: + dependencies: + anymatch: 3.1.3 + chokidar: 5.0.0 + destr: 2.0.5 + h3: 1.15.6 + lru-cache: 11.2.6 + node-fetch-native: 1.6.7 + ofetch: 1.5.1 + ufo: 1.6.3 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + v8-compile-cache-lib@3.0.1: {} + + vfile-location@5.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile: 6.0.3 + + vfile-message@4.0.3: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.3 + + vite@6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1): + dependencies: + esbuild: 0.25.12 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.8 + rollup: 4.59.0 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 20.19.37 + fsevents: 2.3.3 + jiti: 2.6.1 + lightningcss: 1.31.1 + + vitefu@1.1.2(vite@6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1)): + optionalDependencies: + vite: 6.4.1(@types/node@20.19.37)(jiti@2.6.1)(lightningcss@1.31.1) + + web-namespaces@2.0.1: {} + + web-vitals@5.1.0: {} + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.20 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-pm-runs@1.1.0: {} + + which-typed-array@1.1.20: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + widest-line@5.0.0: + dependencies: + string-width: 7.2.0 + + word-wrap@1.2.5: {} + + wrap-ansi@9.0.2: + dependencies: + ansi-styles: 6.2.3 + string-width: 7.2.0 + strip-ansi: 7.2.0 + + xxhash-wasm@1.1.0: {} + + yargs-parser@21.1.1: {} + + yn@3.1.1: {} + + yocto-queue@0.1.0: {} + + yocto-queue@1.2.2: {} + + yocto-spinner@0.2.3: + dependencies: + yoctocolors: 2.1.2 + + yoctocolors@2.1.2: {} + + zod-to-json-schema@3.25.1(zod@3.25.76): + dependencies: + zod: 3.25.76 + + zod-to-ts@1.2.0(typescript@5.9.3)(zod@3.25.76): + dependencies: + typescript: 5.9.3 + zod: 3.25.76 + + zod@3.25.76: {} + + zwitch@2.0.4: {} diff --git a/src/components/BenchmarkRegistry.astro b/src/components/BenchmarkRegistry.astro index 3d75724..0368531 100644 --- a/src/components/BenchmarkRegistry.astro +++ b/src/components/BenchmarkRegistry.astro @@ -1,5 +1,67 @@ --- -import { benchmarks, categories, categoryColors } from "../lib/benchmarks"; +import { + benchmarks, + categories, + categoryColors, + categorySlugs, + type Category, +} from "../lib/benchmarks"; + +interface Props { + activeCategory?: Category; +} + +const { activeCategory = "ALL" } = Astro.props; +const initialShowSection = activeCategory !== "ALL"; + +const categorySections = [ + { + category: "WEB NAV", + title: "Web navigation benchmarks", + body: + "Web navigation benchmarks measure how well an AI agent can complete multi-step tasks across real or simulated websites. A strong AI web navigation benchmark tests clicking, typing, reading dynamic content, handling popups, and recovering from mistakes while staying grounded in page state. These evaluations matter because browsing agents often fail on simple flows like checkout, account setup, or search refinement. The best web navigation benchmarks define clear success criteria, use realistic tasks, and separate memorization from generalization. When comparing benchmark quality, look at domain coverage, evaluator type, refresh cadence, and whether the environment reflects the modern web rather than toy pages.", + }, + { + category: "CODING", + title: "Coding agent benchmarks", + body: + "Coding agent benchmarks evaluate whether an agent can understand a codebase, edit files, run tools, fix bugs, and satisfy tests under realistic software constraints. The best coding agent benchmarks go beyond isolated coding puzzles and measure repository-level performance: reading unfamiliar modules, making targeted changes, following instructions, and avoiding regressions. If you are comparing the best coding agent benchmarks, focus on task realism, grading quality, and whether success is determined by executable outcomes such as unit tests or hidden evaluations. A useful coding benchmark registry should make it easy to compare scope, evaluator design, language coverage, and leaderboard leaders in one place.", + }, + { + category: "DESKTOP", + title: "Desktop control benchmarks", + body: + "Desktop control benchmarks test whether an agent can operate a full graphical environment instead of a single browser tab or API sandbox. A serious desktop control benchmark for agents includes tasks such as opening applications, managing files, switching windows, entering structured data, and combining local and web actions in one flow. These benchmarks matter because many real workflows span email, spreadsheets, terminals, documents, and browsers at once. The strongest evaluations measure robustness against timing issues, noisy interfaces, and partial observability rather than ideal scripted conditions. Good registries surface which benchmarks focus on office productivity, computer use, or broader operating-system control.", + }, + { + category: "TOOL USE", + title: "Tool-use benchmarks", + body: + "Tool-use benchmarks measure whether an agent can select the right tools, call them with correct arguments, interpret results, and chain multiple actions toward a goal. Agent tool use evaluation is critical because production agents rarely succeed through raw text reasoning alone. They need to search, execute code, query APIs, inspect files, and decide when another tool call is necessary. The best tool-use benchmarks separate tool selection from execution quality and expose whether failure came from planning, parsing, or recovery. If you are comparing agent tool use evaluation suites, look for clear task completion metrics, realistic multi-step dependencies, and transparent evaluation methodology.", + }, + { + category: "GENERAL", + title: "General reasoning benchmarks", + body: + "General reasoning benchmarks aim to measure broad cognitive performance across math, logic, planning, reading comprehension, and problem solving. For agent builders, these benchmarks are useful but incomplete: they reveal baseline reasoning strength, yet they do not always predict success in messy environments with tools, interfaces, and long-horizon tasks. The most informative general reasoning benchmarks define difficult tasks with unambiguous answers and minimize contamination from training data exposure. When comparing them, look at answer format, domain breadth, scoring rigor, and whether the benchmark emphasizes final-answer accuracy or interactive reasoning. Registries help by putting general reasoning results in context with web, coding, and desktop benchmarks.", + }, + { + category: "SPECIALIZED", + title: "Specialized agent benchmarks", + body: + "Specialized agent benchmarks focus on narrow but commercially important domains such as deep research, data extraction, customer support workflows, finance, science, or long-context document analysis. These evaluations matter because frontier agent performance is often uneven: a model that looks strong on broad leaderboards may still fail in domain-specific settings with strict evidence requirements or unusual interfaces. The best specialized agent benchmarks define a concrete environment, clear artifacts of success, and realistic constraints like citation fidelity, domain terminology, or long-horizon research synthesis. A strong registry should highlight this category separately so users can compare scope, evaluator type, and leaderboard signals across vertical tasks.", + }, +] as const; + +const benchmarkDescriptionPrefixes: Record, string> = { + "WEB NAV": "A benchmark for browser agents and autonomous web navigation,", + "RESEARCH": "A benchmark for research agents and deep web investigation,", + "DESKTOP": "An evaluation for autonomous agents operating desktop environments,", + "CODING": "A coding agent benchmark for software engineering and CLI workflows,", + "TOOL USE": "An LLM agent benchmark for tool use and agentic system orchestration,", + "GENERAL": "An LLM agent benchmark for broad reasoning and autonomous task execution,", + "SPECIALIZED": "A specialized agentic system benchmark for domain-specific autonomous work,", +}; ---
@@ -16,12 +78,30 @@ import { benchmarks, categories, categoryColors } from "../lib/benchmarks"; + +
+ {categorySections.map((section) => ( +
+

{section.title}

+

{section.body}

+
))}
@@ -31,6 +111,7 @@ import { benchmarks, categories, categoryColors } from "../lib/benchmarks";
@@ -51,7 +132,14 @@ import { benchmarks, categories, categoryColors } from "../lib/benchmarks";
{b.name}
-

{b.description}

+ {b.benchmarkOrg && ( +
+ Benchmark By {b.benchmarkOrg} +
+ )} +

+ {benchmarkDescriptionPrefixes[b.category]} {b.description} +

@@ -59,18 +147,18 @@ import { benchmarks, categories, categoryColors } from "../lib/benchmarks"; href={b.paper} target="_blank" rel="noopener noreferrer" - class="text-dim hover:text-accent transition-colors uppercase" + class="inline-flex items-center border border-text border-opacity-20 px-2 py-1 text-dim hover:text-accent hover:border-accent transition-colors" > - [PAPER] + View {b.name} benchmark paper {b.github && ( - [GITHUB] + {b.name} GitHub repository )}
@@ -118,11 +206,46 @@ import { benchmarks, categories, categoryColors } from "../lib/benchmarks"; TO ADD IT TO THE REGISTRY.

+ +
+

+ What is an AI agent benchmark? +

+
+

+ An AI agent benchmark is a structured test suite used to measure how well an agent can + complete tasks in an environment, not just generate plausible text. Instead of grading a + single answer, an agent benchmark usually evaluates a sequence of actions such as browsing + websites, editing code, using tools, controlling software, or combining research and + reasoning over multiple steps. If you are asking what an AI agent benchmark is, the short + answer is that it measures goal completion under realistic constraints. +

+

+ That is the main difference between an agent benchmark and a standard LLM benchmark. A + typical LLM eval checks whether a model can answer a prompt correctly. An agent benchmark + vs LLM benchmark comparison is more about execution: can the system plan, recover from + errors, choose the right actions, and reach the correct end state? Strong benchmarks often + measure not only accuracy, but also task success rate, cost, latency, and reliability over + long horizons. +

+

+ Common evaluation methods include exact-match grading, test-suite execution, environment + state verification, human review, and LLM-as-judge scoring for open-ended tasks. Each + method has tradeoffs between rigor, scalability, and realism. Self-hosted vs public + benchmarks also matter. Self-hosted environments are easier to reproduce and control, + while public-web or live-software benchmarks better reflect real-world drift, layout + changes, and operational messiness. If you want to know how to evaluate AI agents well, + you usually need both types. +

+
+
\ No newline at end of file + diff --git a/src/components/RegistryPage.astro b/src/components/RegistryPage.astro new file mode 100644 index 0000000..c0a56ba --- /dev/null +++ b/src/components/RegistryPage.astro @@ -0,0 +1,37 @@ +--- +import Layout from "../layouts/Layout.astro"; +import BenchmarkRegistry from "./BenchmarkRegistry.astro"; +import type { Category } from "../lib/benchmarks"; + +interface Props { + activeCategory?: Category; +} + +const { activeCategory = "ALL" } = Astro.props; +--- + + +
+
+
+
+
+ Steel.dev® +
+

+ AI Agent Benchmark Registry +

+
+

+ Explore ultimate registry of AI agent benchmarks for web navigation, coding, desktop + control, tool use, deep research, and general reasoning. Compare tasks, evaluators, top + scores, and benchmark scope in one place. +

+
+
+
+ +
+ +
+
diff --git a/src/lib/benchmarks.ts b/src/lib/benchmarks.ts index 4541b61..20a3a07 100644 --- a/src/lib/benchmarks.ts +++ b/src/lib/benchmarks.ts @@ -2,6 +2,7 @@ export interface BenchmarkEntry { category: "WEB NAV" | "RESEARCH" | "DESKTOP" | "CODING" | "TOOL USE" | "GENERAL" | "SPECIALIZED"; name: string; description: string; + benchmarkOrg?: string; topAgent: string; topOrg: string; topScore: string; @@ -28,6 +29,20 @@ export const categories = [ ] as const; export type Category = typeof categories[number]; +export type BenchmarkCategory = Exclude; + +export const categorySlugs: Record = { + "WEB NAV": "web-navigation", + "DESKTOP": "desktop-control", + "CODING": "coding", + "TOOL USE": "tool-use", + "GENERAL": "general-reasoning", + "SPECIALIZED": "specialized", +}; + +export const slugToCategory = Object.fromEntries( + Object.entries(categorySlugs).map(([category, slug]) => [slug, category]), +) as Record; export const benchmarks: BenchmarkEntry[] = [ @@ -76,6 +91,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "WEB NAV", name: "BrowserGym", description: "Unified gym environment for web tasks, aggregating WebArena, WorkArena, and other benchmarks under a single interface. Enables standardized agent development and cross-benchmark comparison.", + benchmarkOrg: "ServiceNow", topAgent: "GPT-4o (BrowserGym)", topOrg: "ServiceNow", topScore: "~55%", tasks: "1,000+", evaluator: "Programmatic", paper: "https://arxiv.org/abs/2412.05467", @@ -96,16 +112,18 @@ export const benchmarks: BenchmarkEntry[] = [ category: "WEB NAV", name: "WebChoreArena", description: "Benchmark of tedious, multi-step web chores requiring persistent state tracking and real-world interaction. Designed to test agents on tasks humans find repetitive and boring.", + benchmarkOrg: "Google DeepMind", topAgent: "Gemini 2.5 Pro", topOrg: "Google", topScore: "54.8%", tasks: "~500", evaluator: "Programmatic", paper: "https://arxiv.org/abs/2506.03673", - github: "https://github.com/google-deepmind/webchore-arena", + github: "https://github.com/WebChoreArena/WebChoreArena", human: "N/A", selfHosted: false, }, { category: "WEB NAV", name: "WorkArena", description: "ServiceNow-based enterprise workflow benchmark. Tests agents on realistic IT, HR, and operations tasks inside a real enterprise SaaS environment via BrowserGym.", + benchmarkOrg: "ServiceNow", topAgent: "GPT-4o", topOrg: "ServiceNow", topScore: "~42%", tasks: "33 task types", evaluator: "Programmatic", paper: "https://arxiv.org/abs/2403.07718", @@ -116,6 +134,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "WEB NAV", name: "WebShop", description: "1.18M real Amazon products across a simulated e-commerce environment. Agents must find and purchase specific products matching user instructions. Reward based on product attribute matching.", + benchmarkOrg: "Princeton", topAgent: "WebAgent", topOrg: "Google", topScore: "~75% reward", tasks: "12,087", evaluator: "Attribute matching", paper: "https://arxiv.org/abs/2207.01206", @@ -126,6 +145,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "WEB NAV", name: "WebBench", description: "2,454 tasks across 452 live websites from the global top-1,000 by traffic. Direct spiritual successor to WebVoyager with much broader website coverage. Released May 2025 by Halluminate + Skyvern.", + benchmarkOrg: "Halluminate / Skyvern", topAgent: "Skyvern 2.0", topOrg: "Skyvern", topScore: "N/A", tasks: "2,454", evaluator: "GPT-4V", paper: "https://arxiv.org/abs/2505.10798", @@ -138,6 +158,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "RESEARCH", name: "BrowseComp", description: "1,266 hard research questions designed to be easy to verify but extremely hard to find. Tests persistent multi-step web browsing and information synthesis. Scores are low across the board.", + benchmarkOrg: "OpenAI", topAgent: "Kimi K2 Thinking", topOrg: "Moonshot AI", topScore: "60.2%", tasks: "1,266", evaluator: "Exact match", paper: "https://openai.com/index/browsecomp/", @@ -160,6 +181,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "DESKTOP", name: "OSWorld", description: "369 cross-application desktop tasks across Ubuntu, Windows, and macOS. Covers Chrome, LibreOffice, VS Code, and more. Execution-based evaluation. Agents still well below the human baseline of 72%.", + benchmarkOrg: "xLang AI", topAgent: "AskUI VisionAgent", topOrg: "AskUI", topScore: "66.2%", tasks: "369", evaluator: "Execution-based", paper: "https://arxiv.org/abs/2404.07972", @@ -170,26 +192,29 @@ export const benchmarks: BenchmarkEntry[] = [ category: "DESKTOP", name: "OSUniverse", description: "Cross-platform desktop benchmark covering macOS, Windows, and Ubuntu with 2,000+ tasks. Focuses on real-world app interactions and long-horizon task completion.", + benchmarkOrg: "AgentSea", topAgent: "Claude Computer Use", topOrg: "Anthropic", topScore: "~40%", tasks: "2,000+", evaluator: "Execution-based", paper: "https://arxiv.org/abs/2412.04747", - github: "https://github.com/os-universe/os-universe", + github: "https://github.com/agentsea/osuniverse", human: "N/A", selfHosted: true, }, { category: "DESKTOP", name: "macOSWorld", description: "macOS-specific benchmark with 369 tasks spanning system preferences, Finder, Safari, and productivity apps. Complements OSWorld with platform-specific depth.", + benchmarkOrg: "Show Lab", topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~35%", tasks: "369", evaluator: "Execution-based", paper: "https://arxiv.org/abs/2501.12083", - github: "https://github.com/PeterDaveHello/macOSWorld", + github: "https://github.com/showlab/macosworld", human: "~72%", selfHosted: true, }, { category: "DESKTOP", name: "Windows Agent Arena", description: "154 tasks across real Windows 11 applications running in Azure VMs. Tests document editing, file management, system settings, and browser tasks. Full reproducibility via cloud snapshots.", + benchmarkOrg: "Microsoft", topAgent: "NAVI", topOrg: "Microsoft", topScore: "19.5%", tasks: "154", evaluator: "Programmatic", paper: "https://arxiv.org/abs/2409.08264", @@ -200,6 +225,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "DESKTOP", name: "AndroidWorld", description: "116 tasks across 20 real Android apps in a live emulated environment. Functional evaluation without cached states. Tests agents on real apps including Gmail, Chrome, and Settings.", + benchmarkOrg: "Google DeepMind", topAgent: "M3A (Gemini)", topOrg: "Google DeepMind", topScore: "~30%", tasks: "116", evaluator: "Functional", paper: "https://arxiv.org/abs/2405.14573", @@ -210,6 +236,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "DESKTOP", name: "Mobile-Env", description: "A gym environment for mobile UI interaction built on Android emulator. Provides step-level rewards for fine-grained evaluation of touch-based agent interaction.", + benchmarkOrg: "X-LANCE", topAgent: "AppAgent", topOrg: "Tencent", topScore: "N/A", tasks: "~70 tasks", evaluator: "Step reward", paper: "https://arxiv.org/abs/2305.08144", @@ -222,36 +249,40 @@ export const benchmarks: BenchmarkEntry[] = [ category: "CODING", name: "SWE-bench Verified", description: "500 human-verified GitHub issues from real-world Python repos. Expert-curated to remove ambiguous or unreliable tasks. The most trusted coding agent benchmark — resolving a real bug in a real repo.", + benchmarkOrg: "Princeton", topAgent: "OpenAI o3", topOrg: "OpenAI", topScore: "~72%", tasks: "500", evaluator: "Test suite", paper: "https://arxiv.org/abs/2310.06770", - github: "https://github.com/princeton-nlp/SWE-bench", + github: "https://github.com/SWE-bench/SWE-bench", human: "~94%", selfHosted: false, }, { category: "CODING", name: "SWE-bench Lite", description: "300-task curated subset of SWE-bench focusing on self-contained issues. Designed for faster, cheaper evaluation while remaining representative of the full benchmark.", + benchmarkOrg: "Princeton", topAgent: "OpenAI o3", topOrg: "OpenAI", topScore: "~55%", tasks: "300", evaluator: "Test suite", paper: "https://arxiv.org/abs/2310.06770", - github: "https://github.com/princeton-nlp/SWE-bench", + github: "https://github.com/SWE-bench/SWE-bench", human: "N/A", selfHosted: false, }, { category: "CODING", name: "Terminal-Bench 2.0", description: "Purely terminal-based coding and system tasks with no GUI. Tests command-line proficiency across bash, Python, and system administration. Harder and more realistic than sandbox coding benchmarks.", + benchmarkOrg: "Harbor", topAgent: "Claude 3.7 Sonnet", topOrg: "Anthropic", topScore: "~45%", tasks: "~200", evaluator: "Execution-based", paper: "https://arxiv.org/abs/2506.05253", - github: "https://github.com/laude-neon/terminal-bench", + github: "https://github.com/harbor-framework/terminal-bench-2", human: "N/A", selfHosted: false, }, { category: "CODING", name: "MLE-bench", description: "75 Kaggle competitions used to evaluate ML engineering agents. Agents must write, run, and iterate on ML pipelines to achieve competitive leaderboard scores.", + benchmarkOrg: "OpenAI", topAgent: "AIDE (Claude 3.5)", topOrg: "Anthropic", topScore: "~17% medals", tasks: "75 competitions", evaluator: "Kaggle leaderboard", paper: "https://arxiv.org/abs/2410.07095", @@ -262,6 +293,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "CODING", name: "SciCode", description: "338 scientific coding subproblems from 80 research problems across math, physics, chemistry, biology, and materials science. Tests research-grade code generation against expert-written tests.", + benchmarkOrg: "SciCode", topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~26%", tasks: "338", evaluator: "Test suite", paper: "https://arxiv.org/abs/2407.13168", @@ -272,6 +304,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "CODING", name: "CVE-Bench", description: "Evaluates agents on real-world cybersecurity vulnerability exploitation. Agents are scored on successfully exploiting CVEs from public vulnerability databases in sandboxed environments.", + benchmarkOrg: "UIUC", topAgent: "o3 (high)", topOrg: "OpenAI", topScore: "~47%", tasks: "~50 CVEs", evaluator: "Exploit success", paper: "https://arxiv.org/abs/2503.17332", @@ -282,6 +315,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "CODING", name: "HumanEval+", description: "Enhanced version of OpenAI's HumanEval with 80x more test cases per problem to reduce false positives. Tests Python code generation against significantly stricter test coverage.", + benchmarkOrg: "EvalPlus", topAgent: "o3 / Claude 3.7", topOrg: "Various", topScore: "~99%", tasks: "164", evaluator: "Test suite", paper: "https://arxiv.org/abs/2305.01210", @@ -292,16 +326,18 @@ export const benchmarks: BenchmarkEntry[] = [ category: "CODING", name: "Aider Benchmark", description: "LLM code editing benchmark using real open-source repos. Measures ability to apply targeted code changes from natural language instructions without breaking existing tests.", + benchmarkOrg: "Aider", topAgent: "o3", topOrg: "OpenAI", topScore: "~79%", tasks: "133", evaluator: "Test suite", paper: "https://aider.chat/docs/leaderboards/", - github: "https://github.com/paul-gauthier/aider", + github: "https://github.com/Aider-AI/aider", human: "N/A", selfHosted: false, }, { category: "CODING", name: "InterCode", description: "Interactive coding benchmark using bash and SQL environments. Agents iteratively execute code and receive environment feedback, testing multi-turn code generation and debugging.", + benchmarkOrg: "Princeton", topAgent: "GPT-4 + ReAct", topOrg: "OpenAI", topScore: "~60%", tasks: "~700", evaluator: "Execution-based", paper: "https://arxiv.org/abs/2306.14898", @@ -324,6 +360,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "ToolBench", description: "16,000+ real-world APIs from RapidAPI across 49 categories. Tests agents on planning and chaining API calls to complete complex instructions. Includes a neural retriever for API selection.", + benchmarkOrg: "OpenBMB", topAgent: "GPT-4 (ToolLLaMA)", topOrg: "OpenAI / Academic", topScore: "~60% pass rate", tasks: "2,746", evaluator: "Pass rate / win rate", paper: "https://arxiv.org/abs/2307.16789", @@ -334,6 +371,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "Tau-bench", description: "Agent-computer interaction benchmark focused on realistic customer service scenarios. Agents must complete multi-turn tasks using tools (database lookups, reservations) while following strict policies.", + benchmarkOrg: "Sierra", topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~60%", tasks: "~200", evaluator: "Functional", paper: "https://arxiv.org/abs/2406.12045", @@ -344,6 +382,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "API-Bank", description: "73 API tools across 3 difficulty levels testing tool retrieval, plan selection, and API call correctness. One of the earliest systematic tool-use benchmarks for LLMs.", + benchmarkOrg: "Alibaba DAMO", topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~75%", tasks: "314", evaluator: "Exact match", paper: "https://arxiv.org/abs/2304.08244", @@ -354,6 +393,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "Gorilla APIBench", description: "1,645 API tasks across HuggingFace, TorchHub, and TensorHub. Evaluates if agents generate accurate API calls including correct arguments and library usage without hallucination.", + benchmarkOrg: "UC Berkeley", topAgent: "Gorilla (fine-tuned)", topOrg: "UC Berkeley", topScore: "~80%", tasks: "1,645", evaluator: "AST matching", paper: "https://arxiv.org/abs/2305.15334", @@ -364,6 +404,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "ToolSandbox", description: "Stateful tool-use benchmark with interdependencies between tool calls. Agents must manage tool state across multi-step tasks — calling one tool affects what another returns.", + benchmarkOrg: "Apple", topAgent: "GPT-4o", topOrg: "OpenAI", topScore: "~52%", tasks: "~200", evaluator: "State verification", paper: "https://arxiv.org/abs/2408.04682", @@ -374,10 +415,11 @@ export const benchmarks: BenchmarkEntry[] = [ category: "TOOL USE", name: "MCP Atlas", description: "Evaluation suite for agents using Model Context Protocol servers. Tests correctness of MCP tool invocation, schema understanding, and multi-server orchestration.", + benchmarkOrg: "Scale AI", topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "N/A", tasks: "N/A", evaluator: "Functional", - paper: "https://github.com/MCPAtlas/MCPAtlas", - github: "https://github.com/MCPAtlas/MCPAtlas", + paper: "https://github.com/scaleapi/mcp-atlas", + github: "https://github.com/scaleapi/mcp-atlas", human: "N/A", selfHosted: false, }, @@ -396,6 +438,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "AgentBench", description: "8 distinct environments spanning web browsing, OS, database, and game interaction. Tests agents across diverse real-world-like scenarios in a single unified framework.", + benchmarkOrg: "THUDM", topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~4.27 score", tasks: "1,091", evaluator: "Task-specific", paper: "https://arxiv.org/abs/2308.03688", @@ -416,10 +459,11 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "ARC-AGI-2", description: "The second generation of François Chollet's Abstraction and Reasoning Corpus. Novel visual pattern tasks designed to resist memorization — requires genuine program synthesis from examples.", + benchmarkOrg: "ARC Prize", topAgent: "o3 (high)", topOrg: "OpenAI", topScore: "~4%", tasks: "~500", evaluator: "Exact match", paper: "https://arcprize.org/arc-agi-2", - github: "https://github.com/fchollet/ARC-AGI-2", + github: "https://github.com/arcprize/ARC-AGI-2", human: "~60%", selfHosted: false, }, { @@ -436,6 +480,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "LiveBench", description: "Monthly-refreshed benchmark with questions sourced from recent news, papers, and competition math. Designed to prevent data contamination — the benchmark evolves so models can't memorize answers.", + benchmarkOrg: "LiveBench", topAgent: "o3 / Claude 3.7", topOrg: "Various", topScore: "~80%", tasks: "~900 (rotating)", evaluator: "Verifiable", paper: "https://arxiv.org/abs/2406.19314", @@ -446,6 +491,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "SimpleQA", description: "4,326 short factual questions with a single unambiguous correct answer. Measures factual accuracy and hallucination rate — designed to have no trick questions, only clear facts.", + benchmarkOrg: "OpenAI", topAgent: "o3", topOrg: "OpenAI", topScore: "~97%", tasks: "4,326", evaluator: "Exact match", paper: "https://openai.com/index/introducing-simpleqa/", @@ -456,6 +502,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "AgentBoard", description: "Analytical benchmark across 9 diverse agent scenarios. Provides fine-grained progress rates beyond binary success/fail — measures how far along a task an agent gets even when it fails.", + benchmarkOrg: "HKUST", topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~58% progress", tasks: "~1,000", evaluator: "Progress rate", paper: "https://arxiv.org/abs/2401.13178", @@ -476,6 +523,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "GENERAL", name: "AppWorld", description: "9 app ecosystem with 750 tasks spanning contacts, music, email, maps, and calendar. Tests agents on realistic app-based workflows requiring coordination across multiple simulated apps.", + benchmarkOrg: "Stony Brook", topAgent: "GPT-4o", topOrg: "OpenAI", topScore: "~49%", tasks: "750", evaluator: "Functional", paper: "https://arxiv.org/abs/2407.18901", @@ -488,6 +536,7 @@ export const benchmarks: BenchmarkEntry[] = [ category: "SPECIALIZED", name: "Sotopia", description: "Social intelligence benchmark placing agents in realistic social scenarios. Evaluates believability, social goal completion, relationship management, and secret keeping across 11 social dimensions.", + benchmarkOrg: "Sotopia Lab", topAgent: "GPT-4", topOrg: "OpenAI", topScore: "~7.6/10", tasks: "~600 episodes", evaluator: "LLM judge (GPT-4)", paper: "https://arxiv.org/abs/2310.11667", @@ -498,16 +547,18 @@ export const benchmarks: BenchmarkEntry[] = [ category: "SPECIALIZED", name: "AgentHarm", description: "Safety red-teaming benchmark with 440 harmful agent tasks across 11 categories. Tests whether agent frameworks allow harmful behaviors — jailbreaking, weapon synthesis, fraud, and more.", + benchmarkOrg: "AIEvals", topAgent: "N/A (safety eval)", topOrg: "UK AISI / Meta", topScore: "N/A", tasks: "440", evaluator: "Human / LLM judge", paper: "https://arxiv.org/abs/2410.09024", - github: "https://github.com/alexandrasouly/agentham", + github: "https://github.com/AIEvals/AgentHarm", human: "N/A", selfHosted: false, }, { category: "SPECIALIZED", name: "MedAgentBench", description: "300 clinical tasks across 10 medical categories using real EHR data. Tests agents on diagnosis reasoning, treatment planning, and medical record navigation in realistic hospital environments.", + benchmarkOrg: "Stanford", topAgent: "o1-preview", topOrg: "OpenAI", topScore: "~77%", tasks: "300", evaluator: "Expert validation", paper: "https://arxiv.org/abs/2501.07765", @@ -518,10 +569,11 @@ export const benchmarks: BenchmarkEntry[] = [ category: "SPECIALIZED", name: "MultiAgentBench", description: "Evaluates both cooperative and competitive multi-agent systems. Tasks include collaborative problem-solving and adversarial games — measures emergent coordination and strategic behavior.", + benchmarkOrg: "UIUC", topAgent: "GPT-4 (multi-agent)", topOrg: "OpenAI", topScore: "N/A", tasks: "~300", evaluator: "Task-specific", paper: "https://arxiv.org/abs/2503.01935", - github: "https://github.com/multiagentbench/multiagentbench", + github: "https://github.com/ulab-uiuc/MARBLE", human: "N/A", selfHosted: false, }, { @@ -541,7 +593,7 @@ export const benchmarks: BenchmarkEntry[] = [ topAgent: "Claude 3.5 Sonnet", topOrg: "Anthropic", topScore: "~62%", tasks: "~200", evaluator: "State verification", paper: "https://arxiv.org/abs/2410.03850", - github: "https://github.com/JoshuaPurtell/vendingbench", + github: null, human: "N/A", selfHosted: false, }, { @@ -558,10 +610,11 @@ export const benchmarks: BenchmarkEntry[] = [ category: "SPECIALIZED", name: "Bullshit Benchmark", description: "Tests model resistance to confidently stated falsehoods in prompts. Evaluates whether agents can identify and reject plausible-sounding but incorrect premises before acting on them.", + benchmarkOrg: "Peter Gostev", topAgent: "o3", topOrg: "OpenAI", topScore: "N/A", tasks: "N/A", evaluator: "Rejection rate", - paper: "https://github.com/ErikBjare/are-llms-any-good", - github: "https://github.com/ErikBjare/are-llms-any-good", + paper: "https://github.com/petergpt/bullshit-benchmark", + github: "https://github.com/petergpt/bullshit-benchmark", human: "N/A", selfHosted: false, }, -]; \ No newline at end of file +]; diff --git a/src/pages/registry.astro b/src/pages/registry.astro index 8db90a7..30b2d70 100644 --- a/src/pages/registry.astro +++ b/src/pages/registry.astro @@ -1,29 +1,5 @@ --- -import Layout from "../layouts/Layout.astro"; -import BenchmarkRegistry from "../components/BenchmarkRegistry.astro"; +import RegistryPage from "../components/RegistryPage.astro"; --- - -
-
-
-
-

- Steel.dev® -

-

- Agent Benchmark Registry -

-
-

- A reference index of AI agent benchmarks covering web navigation, deep research, general - reasoning, and desktop control. -

-
-
-
- -
- -
-
\ No newline at end of file + diff --git a/src/pages/registry/[category].astro b/src/pages/registry/[category].astro new file mode 100644 index 0000000..2f23b97 --- /dev/null +++ b/src/pages/registry/[category].astro @@ -0,0 +1,20 @@ +--- +import RegistryPage from "../../components/RegistryPage.astro"; +import { categorySlugs, slugToCategory } from "../../lib/benchmarks"; + +export function getStaticPaths() { + return Object.entries(categorySlugs).map(([category, slug]) => ({ + params: { category: slug }, + props: { activeCategory: category }, + })); +} + +const { activeCategory } = Astro.props; +const categoryFromParam = slugToCategory[Astro.params.category ?? ""]; + +if (!activeCategory || categoryFromParam !== activeCategory) { + return Astro.redirect("/registry"); +} +--- + + From 67378d68eb6e3af413d20eca1c8118ab5c053f6a Mon Sep 17 00:00:00 2001 From: nkkko Date: Fri, 13 Mar 2026 16:38:21 +0100 Subject: [PATCH 05/18] feat(seo): add structured data for registry and leaderboard --- src/components/BenchmarkRegistry.astro | 130 +++++++++++----------- src/components/FAQ.astro | 2 +- src/components/RegistryPage.astro | 147 ++++++++++++++++++++++++- src/layouts/Layout.astro | 27 +++-- src/lib/benchmarks.ts | 7 ++ src/pages/index.astro | 54 ++++++++- 6 files changed, 283 insertions(+), 84 deletions(-) diff --git a/src/components/BenchmarkRegistry.astro b/src/components/BenchmarkRegistry.astro index 0368531..689493a 100644 --- a/src/components/BenchmarkRegistry.astro +++ b/src/components/BenchmarkRegistry.astro @@ -4,6 +4,7 @@ import { categories, categoryColors, categorySlugs, + getBenchmarkAnchorId, type Category, } from "../lib/benchmarks"; @@ -53,14 +54,14 @@ const categorySections = [ }, ] as const; -const benchmarkDescriptionPrefixes: Record, string> = { - "WEB NAV": "A benchmark for browser agents and autonomous web navigation,", - "RESEARCH": "A benchmark for research agents and deep web investigation,", - "DESKTOP": "An evaluation for autonomous agents operating desktop environments,", - "CODING": "A coding agent benchmark for software engineering and CLI workflows,", - "TOOL USE": "An LLM agent benchmark for tool use and agentic system orchestration,", - "GENERAL": "An LLM agent benchmark for broad reasoning and autonomous task execution,", - "SPECIALIZED": "A specialized agentic system benchmark for domain-specific autonomous work,", +const benchmarkDomainLabels: Record, string> = { + "WEB NAV": "Web navigation", + RESEARCH: "Deep research", + DESKTOP: "Desktop control", + CODING: "Coding agent", + "TOOL USE": "Tool use", + GENERAL: "General reasoning", + SPECIALIZED: "Specialized agent", }; --- @@ -109,82 +110,79 @@ const benchmarkDescriptionPrefixes: Record, string> = {
{benchmarks.map((b) => (
-
+
+
- -
-
- +
+
- {b.category} - - {b.selfHosted && ( - - SELF-HOSTED + + {benchmarkDomainLabels[b.category]} benchmark + - {b.selfHosted ? "Self-hosted" : "Public"} +
+ +
{b.name}
+ {b.benchmarkOrg && ( +
+ Benchmark By {b.benchmarkOrg} +
)} +

{b.description}

-
{b.name}
- {b.benchmarkOrg && ( -
- Benchmark By {b.benchmarkOrg} + +
+ - )} -

- {benchmarkDescriptionPrefixes[b.category]} {b.description} -

+
+
Top Model Score
+
{b.topScore}
+
{b.topAgent}
+
+
+
Human Score
+
{b.human}
+
+ +
+
- - - - -
-
-
Top Score
-
{b.topScore}
-
{b.topAgent}
-
-
-
Human
-
{b.human}
-
- - + )}
-
))} diff --git a/src/components/FAQ.astro b/src/components/FAQ.astro index 5026b92..dcfebdd 100644 --- a/src/components/FAQ.astro +++ b/src/components/FAQ.astro @@ -1,5 +1,5 @@ --- -const faqs = [ +export const faqs = [ { q: "What is the WebVoyager benchmark for AI browser agents?", a: "WebVoyager is the standard benchmark for evaluating browser agents, introduced in the 2024 paper WebVoyager: Building an End-to-End Web Agent with Large Multimodal Models. It consists of 643 tasks across 15 websites including Google, Amazon, GitHub, Reddit, and Wikipedia. Tasks cover form filling, navigation, search, and shopping. GPT-4V evaluates each task by analyzing the final page state. Scores represent the percentage of tasks completed successfully. As of February 2026, the highest score is 97.1% held by Surfer 2 from H Company.", diff --git a/src/components/RegistryPage.astro b/src/components/RegistryPage.astro index c0a56ba..efce7e8 100644 --- a/src/components/RegistryPage.astro +++ b/src/components/RegistryPage.astro @@ -1,16 +1,124 @@ --- import Layout from "../layouts/Layout.astro"; import BenchmarkRegistry from "./BenchmarkRegistry.astro"; -import type { Category } from "../lib/benchmarks"; +import { + benchmarks, + categorySlugs, + getBenchmarkAnchorId, + type Category, +} from "../lib/benchmarks"; interface Props { activeCategory?: Category; } const { activeCategory = "ALL" } = Astro.props; + +const visibleBenchmarks = + activeCategory === "ALL" + ? benchmarks + : benchmarks.filter((benchmark) => benchmark.category === activeCategory); + +const pagePath = + activeCategory === "ALL" ? "/registry" : `/registry/${categorySlugs[activeCategory]}`; + +const pageDescription = + "AI agent eval registry and benchmark leaderboard. Compare evaluation suites, tests, frameworks, tasks, evaluators, and top scores across web navigation, coding, desktop control, tool use, deep research, and general reasoning."; + +const faqItems = [ + { + question: "What are AI agent benchmarks?", + answer: + "AI agent benchmarks are evaluations that measure whether an agent can complete multi-step tasks in an environment such as a browser, terminal, desktop, or tool stack. Unlike single-prompt model tests, they focus on action quality, task completion, recovery from mistakes, and end-to-end execution.", + }, + { + question: "What is an agent eval registry?", + answer: + "An agent eval registry is a curated index of AI agent benchmarks, evaluations, leaderboards, test suites, and frameworks. Instead of covering just one benchmark family, it helps you compare multiple agent evaluation options in one place by task domain, evaluator type, score format, and benchmark scope.", + }, + { + question: "How do you evaluate AI agents?", + answer: + "You evaluate AI agents by testing them on multi-step tasks in realistic environments and measuring whether they reach the correct end state. Strong agent evaluations usually track task success, evaluator design, reliability, cost, latency, and recovery from mistakes. The right eval framework depends on whether you care about browser use, coding, tool use, desktop control, or general reasoning.", + }, + { + question: "What is the best benchmark for coding agents?", + answer: + "There is no single best benchmark for every use case, but SWE-bench Verified is widely treated as the most trusted benchmark for coding agents because it uses real repository issues and executable test suites. Terminal-Bench is also useful when you want to evaluate autonomous agents in command-line and systems workflows.", + }, + { + question: "How do browser agent benchmarks differ from coding benchmarks?", + answer: + "Browser agent benchmarks evaluate interaction with websites, page state, navigation, and visual or DOM-grounded actions. Coding benchmarks evaluate repository understanding, file edits, tool use, debugging, and test execution. Both are agent evaluations, but they stress very different environments and failure modes.", + }, + { + question: "What does self-hosted mean in an agent benchmark?", + answer: + "Self-hosted means the benchmark environment can be run in a controlled local or containerized setup instead of depending entirely on live public services. That usually improves reproducibility and evaluation stability, but may be less representative of the messy real web or production software.", + }, + { + question: "Why do benchmark scores differ across evaluators?", + answer: + "Benchmark scores differ because evaluators measure success in different ways. Some use exact match, some use executable test suites, some verify environment state, and others rely on human review or LLM judges. A score on one benchmark or evaluator is not directly comparable to a score produced by a different evaluation method.", + }, +] as const; + +const itemListSchema = JSON.stringify({ + "@context": "https://schema.org", + "@type": "ItemList", + name: + activeCategory === "ALL" + ? "AI Agent Benchmark Registry" + : `${activeCategory} AI Agent Benchmark Registry`, + description: + "Curated AI agent eval registry and benchmark leaderboard covering evaluation suites, tests, and frameworks for web navigation, coding, desktop control, tool use, research, and general reasoning.", + url: `https://leaderboard.steel.dev${pagePath}`, + numberOfItems: visibleBenchmarks.length, + itemListElement: visibleBenchmarks.map((benchmark, index) => ({ + "@type": "ListItem", + position: index + 1, + item: { + "@type": "Thing", + name: benchmark.name, + description: benchmark.description, + url: `https://leaderboard.steel.dev${pagePath}#${getBenchmarkAnchorId(benchmark.name)}`, + category: benchmark.category, + ...(benchmark.benchmarkOrg + ? { + creator: { + "@type": "Organization", + name: benchmark.benchmarkOrg, + }, + } + : {}), + ...(benchmark.paper + ? { + sameAs: benchmark.paper, + } + : {}), + }, + })), +}); + +const faqSchema = JSON.stringify({ + "@context": "https://schema.org", + "@type": "FAQPage", + mainEntity: faqItems.map((item) => ({ + "@type": "Question", + name: item.question, + acceptedAnswer: { + "@type": "Answer", + text: item.answer, + }, + })), +}); --- - +
@@ -23,9 +131,10 @@ const { activeCategory = "ALL" } = Astro.props;

- Explore ultimate registry of AI agent benchmarks for web navigation, coding, desktop - control, tool use, deep research, and general reasoning. Compare tasks, evaluators, top - scores, and benchmark scope in one place. + Explore an AI agent eval registry and benchmark leaderboard covering web navigation, + coding, desktop control, tool use, deep research, and general reasoning. Compare + evaluation suites, tests, frameworks, tasks, evaluators, top scores, and benchmark scope + in one place.

@@ -34,4 +143,32 @@ const { activeCategory = "ALL" } = Astro.props;
+ +
+
+
+
FAQ
+
+ {[0, 1, 2, 3, 4].map(() =>
)} +
+
+ +
+ {faqItems.map((item) => ( +
+ + {item.question} + + [+] + + + +
+ {item.answer} +
+
+ ))} +
+
+
diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 762a33e..1f8f5b1 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -6,10 +6,21 @@ import PostHogInit from "../components/PostHogInit.astro"; interface Props { title?: string; + description?: string; + structuredData?: string | string[] | null; } -const { title = "AI Agent Leaderboard | Steel.dev" } = Astro.props; +const { + title = "AI Agent Leaderboard | Steel.dev", + description = "Compare and evaluate AI agents on Steel.dev's leaderboard", + structuredData = null, +} = Astro.props; const canonicalURL = new URL(Astro.url.pathname, "https://leaderboard.steel.dev"); +const structuredDataItems = Array.isArray(structuredData) + ? structuredData.filter(Boolean) + : structuredData + ? [structuredData] + : []; --- @@ -34,23 +45,21 @@ const canonicalURL = new URL(Astro.url.pathname, "https://leaderboard.steel.dev" rel="stylesheet" /> {title} + - + - + + {structuredDataItems.map((item) => ( + \ No newline at end of file diff --git a/src/components/BenchmarkRegistry.astro b/src/components/BenchmarkRegistry.astro index 15540bc..661ca02 100644 --- a/src/components/BenchmarkRegistry.astro +++ b/src/components/BenchmarkRegistry.astro @@ -109,10 +109,12 @@ const categorySections = [
- -
-
+
+
+ )}
+ + +
+
+
Top Score
+
{b.topScore}
+
{b.topAgent}
+
+
+
Human
+
{b.human}
+
+ + +
+
- ))}
-
- +

MISSING A BENCHMARK?{" "} @@ -231,7 +253,6 @@ const categorySections = [

-
+ \ No newline at end of file diff --git a/src/components/Header.astro b/src/components/Header.astro index 13aae88..c4d4821 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -16,6 +16,13 @@ >[REGISTRY] +
  • + [INDEX] +
  • e.benchmark))].sort(); +export const indexCategories = ["ALL", "WEB NAV", "RESEARCH", "DESKTOP", "CODING", "TOOL USE", "GENERAL", "SPECIALIZED"] as const; \ No newline at end of file diff --git a/src/pages/bench-index.astro b/src/pages/bench-index.astro new file mode 100644 index 0000000..8f131c1 --- /dev/null +++ b/src/pages/bench-index.astro @@ -0,0 +1,28 @@ +--- +import Layout from "../layouts/Layout.astro"; +import BenchmarkIndex from "../components/BenchmarkIndex.astro"; +--- + + +
    +
    +
    +
    +

    + Steel.dev® +

    +

    + Benchmark Index +

    +
    +

    + All known AI agent benchmark results in one place. Filter by category, benchmark, or search by agent name. +

    +
    +
    +
    + +
    + +
    +
    \ No newline at end of file From c638304ea591b4ebbe33ba239e512f298261a014 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Fri, 13 Mar 2026 16:46:54 +0100 Subject: [PATCH 10/18] fix: add missing research section to category registry --- src/lib/benchmarks.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/benchmarks.ts b/src/lib/benchmarks.ts index df36cbc..f499d32 100644 --- a/src/lib/benchmarks.ts +++ b/src/lib/benchmarks.ts @@ -25,7 +25,7 @@ export const categoryColors: Record = { }; export const categories = [ - "ALL", "WEB NAV", "DESKTOP", "CODING", "TOOL USE", "GENERAL", "SPECIALIZED" + "ALL", "RESEARCH", "WEB NAV", "DESKTOP", "CODING", "TOOL USE", "GENERAL", "SPECIALIZED" ] as const; export type Category = typeof categories[number]; @@ -34,6 +34,7 @@ export type BenchmarkCategory = BenchmarkEntry["category"]; export const categorySlugs: Record = { "WEB NAV": "web-navigation", + "RESEARCH": "research", "DESKTOP": "desktop-control", "CODING": "coding", "TOOL USE": "tool-use", From da27bd1d2944b44b013d42cae05c5c7318d15715 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Fri, 13 Mar 2026 20:32:06 +0100 Subject: [PATCH 11/18] fix: add research category to categorySlugs --- src/components/BenchmarkRegistry.astro | 27 ++++---------------------- src/lib/benchmarks.ts | 1 + 2 files changed, 5 insertions(+), 23 deletions(-) diff --git a/src/components/BenchmarkRegistry.astro b/src/components/BenchmarkRegistry.astro index 661ca02..6443afb 100644 --- a/src/components/BenchmarkRegistry.astro +++ b/src/components/BenchmarkRegistry.astro @@ -180,31 +180,11 @@ const categorySections = [
    )}
  • - - -
    -
    -
    Top Score
    -
    {b.topScore}
    -
    {b.topAgent}
    -
    -
    -
    Human
    -
    {b.human}
    -
    - - -
    -
    + ))}
    +
    @@ -253,6 +233,7 @@ const categorySections = [

    +
    \ No newline at end of file + diff --git a/src/lib/benchmarks.ts b/src/lib/benchmarks.ts index f499d32..74c0074 100644 --- a/src/lib/benchmarks.ts +++ b/src/lib/benchmarks.ts @@ -48,6 +48,7 @@ export const slugToCategory = Object.fromEntries( export const categoryRouteLabels: Record = { "WEB NAV": "Web navigation", + "RESEARCH": "Research", DESKTOP: "Desktop control", CODING: "Coding", "TOOL USE": "Tool use", From 312a18df12084957e0dc49dd776a2d06e99d62d2 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Fri, 13 Mar 2026 21:00:22 +0100 Subject: [PATCH 12/18] docs(registry): add update summary --- docs/2026-03-13-registry-updates.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/2026-03-13-registry-updates.md b/docs/2026-03-13-registry-updates.md index 55cbb22..5d5f2c1 100644 --- a/docs/2026-03-13-registry-updates.md +++ b/docs/2026-03-13-registry-updates.md @@ -14,3 +14,5 @@ - Replaced generic `[PAPER]` / `[GITHUB]` labels with descriptive link text. (To make source links more meaningful for users and search engines.) - Fixed spacing and underline issues in inline linked copy. (To clean up visual polish and avoid awkward underlined whitespace.) - Replaced the footer `WEBVOYAGER` link with `STEEL.DEV`. (To point the footer CTA at the company site instead of an unrelated external repo.) +- Added `benchmarkDomainLabels`, `categorySlugs`, `getCategoryPath`, `getBenchmarkPath`, and `getBenchmarkAnchorId` exports to `benchmarks.ts`. (To support URL generation, anchor linking, and human-readable labels across registry pages and the benchmark index without duplicating logic.) +- Expanded registry to 40+ benchmarks across 7 categories including new entries: WebChoreArena, BrowserGym, AssistantBench, WorkArena, WebShop, Vending-Bench, CharacterEval, FORTRESS, MultiAgentBench, AgentHarm, LiveBench, SimpleQA, AgentBoard, OdysseyBench, and AppWorld. (To give the registry comprehensive coverage beyond the most well-known benchmarks.) \ No newline at end of file From 0c76f144bd47118316b11232007d1c76b6c493a2 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Fri, 13 Mar 2026 21:03:06 +0100 Subject: [PATCH 13/18] docs(bench-index): add update summary --- docs/2026-03-13-bench-index-updates.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 docs/2026-03-13-bench-index-updates.md diff --git a/docs/2026-03-13-bench-index-updates.md b/docs/2026-03-13-bench-index-updates.md new file mode 100644 index 0000000..a3939d2 --- /dev/null +++ b/docs/2026-03-13-bench-index-updates.md @@ -0,0 +1,22 @@ +# Benchmark Index Updates - 2026-03-13 + +- Added new `/benchmark-index` page with a unified table of all agent benchmark results across all categories. (To give users a single place to compare results across benchmarks without navigating between pages.) +- Created `src/lib/index-data.ts` with a typed `IndexEntry` interface including `agent`, `organization`, `benchmark`, `benchmarkCategory`, `score`, `scoreNum`, `source`, `selfReported`, `openSource`, and `isNew` fields. (To keep index data structured, typed, and easy to extend as new results come in.) +- Added 75+ entries across 15 benchmarks: WebVoyager, WebArena, Online-Mind2Web, BrowseComp, GAIA, OSWorld, AndroidWorld, SWE-bench Verified, MLE-bench, GPQA Diamond, ARC-AGI-2, ToolBench, AgentBench, and more. (To give the index comprehensive coverage of the current agent benchmark landscape.) +- Populated WebArena entries from the community-maintained Google Sheets leaderboard, including DeepSeek v3.2 (74.3%), OpAgent (71.6%), ColorBrowserAgent (71.2%), Claude Code + GBOX (68%), DeepSky (66.9%), and 15+ more entries down to GPT-4 baseline. (To reflect the most complete and up-to-date WebArena standings.) +- Populated OSWorld Verified entries from the XLANG Lab blog post, including Agent S3 (69.9%), CoACT-1 (60.76%), Agent S2.5 w/ o3 (56.0%), GTA1 w/ o3 (53.1%), OpenAI CUA o3 (42.9%), UI-TARS-1.5 (42.5%), and Claude 3.7 CU (28%). (To reflect the July 2025 OSWorld-Verified re-evaluation under unified AWS infrastructure.) +- Populated GAIA entries including h2oGPTe (75%), Manus (~75%), Deep Research (67.36%), MS Research o1 (38%), and HF Agents (33%). (To surface one of the most competitive general-reasoning leaderboards.) +- Added `scoreNum: number` field alongside the display `score: string` field on every entry. (To enable accurate numeric sorting without parsing percentage strings at runtime.) +- Implemented live text search filtering across agent name, organization, and benchmark name simultaneously. (To let users quickly find specific results without scrolling through the full table.) +- Implemented category filter pills (ALL, WEB NAV, RESEARCH, DESKTOP, CODING, TOOL USE, GENERAL, SPECIALIZED) that sync with inline category badges on each row. (To let users narrow results by domain with a single click.) +- Implemented per-benchmark filter pills below the category row. (To let users isolate a single benchmark's full result set.) +- Added clickable score column header that toggles ascending/descending sort on `scoreNum`. (To let users quickly find the top or bottom performers across any filtered view.) +- Added inline category badge click on each row that filters the table to that category, toggling off on second click. (To make filtering feel fast and contextual without reaching for the filter bar.) +- Added cycling behavior to the CATEGORY / BENCHMARK column header — clicking steps through all categories in order. (An alternative way to cycle filters without using the pill buttons.) +- Added SRC column (SELF / 3RD) indicating whether a result is self-reported or independently verified. (To surface data quality signal directly in the table without requiring users to follow source links.) +- Added OSS column indicating open-source status of each agent. (To help users quickly identify reproducible and commercially-usable systems.) +- Added NEW badges on recently added entries across all benchmarks. (To surface fresh data at a glance without sorting by date.) +- Added empty state message when active filters return zero results. (To give clear feedback instead of a blank table.) +- Added live result count in the header bar that updates as filters change. (To give users an immediate sense of how many results match their current filter combination.) +- Added `[INDEX]` nav link to the site header. (To make the new page discoverable from every other page.) +- Added footer legend explaining SRC, OSS, and score sort behavior. (To make the table self-documenting for first-time visitors.) \ No newline at end of file From 43be58bf0e6141898a55c05e71bf901a72e49c55 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Sat, 14 Mar 2026 11:16:37 +0100 Subject: [PATCH 14/18] feat(bench-index): add SEO optimization --- src/pages/bench-index.astro | 49 ++++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 6 deletions(-) diff --git a/src/pages/bench-index.astro b/src/pages/bench-index.astro index 8f131c1..f25e8d4 100644 --- a/src/pages/bench-index.astro +++ b/src/pages/bench-index.astro @@ -1,22 +1,59 @@ --- import Layout from "../layouts/Layout.astro"; import BenchmarkIndex from "../components/BenchmarkIndex.astro"; +import { indexEntries, indexBenchmarks } from "../lib/index-data"; + +const title = "AI Agent Benchmark Results Index | Steel.dev"; +const description = + "All AI agent benchmark results in one place. Compare scores across WebVoyager, WebArena, OSWorld, SWE-bench, GAIA, BrowseComp and more. Filter by category, benchmark, or agent name."; + +const structuredData = JSON.stringify({ + "@context": "https://schema.org", + "@type": "Dataset", + name: "AI Agent Benchmark Results Index", + description: + "A comprehensive index of AI agent benchmark results across web navigation, desktop control, coding, research, tool use, and general reasoning benchmarks.", + url: "https://leaderboard.steel.dev/benchmark-index", + creator: { + "@type": "Organization", + name: "Steel.dev", + url: "https://steel.dev", + }, + keywords: [ + "AI agent benchmark", + "LLM benchmark", + "agent evaluation", + "WebVoyager leaderboard", + "WebArena leaderboard", + "OSWorld leaderboard", + "SWE-bench results", + "GAIA benchmark", + "BrowseComp results", + "AI agent leaderboard", + ], + variableMeasured: indexBenchmarks.map((b) => ({ + "@type": "PropertyValue", + name: b, + })), +}); --- - +
    -

    +

    Steel.dev® +

    +

    + AI Agent Benchmark Index

    -

    - Benchmark Index -

    - All known AI agent benchmark results in one place. Filter by category, benchmark, or search by agent name. + {indexEntries.length} results across {indexBenchmarks.length} benchmarks — + WebVoyager, WebArena, OSWorld, SWE-bench, GAIA, BrowseComp, and more. + Filter by category, benchmark, or search by agent or organization name.

    From dd71782048cb3d4be7e9b426a6c8a26e50bd1317 Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Sat, 14 Mar 2026 12:16:25 +0100 Subject: [PATCH 15/18] feat(seo): add structured data for bench-inde --- src/pages/bench-index.astro | 71 ++++++++++++++++++++++++++++++++----- 1 file changed, 63 insertions(+), 8 deletions(-) diff --git a/src/pages/bench-index.astro b/src/pages/bench-index.astro index f25e8d4..843642a 100644 --- a/src/pages/bench-index.astro +++ b/src/pages/bench-index.astro @@ -7,35 +7,90 @@ const title = "AI Agent Benchmark Results Index | Steel.dev"; const description = "All AI agent benchmark results in one place. Compare scores across WebVoyager, WebArena, OSWorld, SWE-bench, GAIA, BrowseComp and more. Filter by category, benchmark, or agent name."; -const structuredData = JSON.stringify({ +const BASE_URL = "https://leaderboard.steel.dev"; + +const datasetSchema = JSON.stringify({ "@context": "https://schema.org", "@type": "Dataset", name: "AI Agent Benchmark Results Index", description: - "A comprehensive index of AI agent benchmark results across web navigation, desktop control, coding, research, tool use, and general reasoning benchmarks.", - url: "https://leaderboard.steel.dev/benchmark-index", + "A comprehensive, filterable index of AI agent benchmark results across web navigation, desktop control, coding, research, tool use, and general reasoning benchmarks. Includes self-reported and independently verified scores.", + url: `${BASE_URL}/benchmark-index`, + dateModified: new Date().toISOString().split("T")[0], creator: { "@type": "Organization", name: "Steel.dev", url: "https://steel.dev", }, + license: "https://creativecommons.org/licenses/by/4.0/", keywords: [ "AI agent benchmark", - "LLM benchmark", + "LLM benchmark leaderboard", "agent evaluation", - "WebVoyager leaderboard", + "WebVoyager results", "WebArena leaderboard", "OSWorld leaderboard", "SWE-bench results", - "GAIA benchmark", + "GAIA benchmark scores", "BrowseComp results", "AI agent leaderboard", + "browser agent benchmark", + "coding agent benchmark", + "desktop agent benchmark", ], variableMeasured: indexBenchmarks.map((b) => ({ "@type": "PropertyValue", - name: b, + name: b + " score", + description: `Agent scores on the ${b} benchmark`, })), + distribution: { + "@type": "DataDownload", + encodingFormat: "text/html", + contentUrl: `${BASE_URL}/benchmark-index`, + }, +}); + +const itemListSchema = JSON.stringify({ + "@context": "https://schema.org", + "@type": "ItemList", + name: "AI Agent Benchmarks", + description: "List of AI agent benchmarks tracked in the Steel.dev benchmark index", + numberOfItems: indexBenchmarks.length, + itemListElement: indexBenchmarks.map((b, i) => { + const entries = indexEntries.filter((e) => e.benchmark === b); + const top = entries.sort((a, z) => z.scoreNum - a.scoreNum)[0]; + return { + "@type": "ListItem", + position: i + 1, + name: b, + description: top + ? `Top score: ${top.score} by ${top.agent} (${top.organization})` + : b, + url: `${BASE_URL}/benchmark-index`, + }; + }), }); + +const breadcrumbSchema = JSON.stringify({ + "@context": "https://schema.org", + "@type": "BreadcrumbList", + itemListElement: [ + { + "@type": "ListItem", + position: 1, + name: "Steel.dev Leaderboard", + item: BASE_URL, + }, + { + "@type": "ListItem", + position: 2, + name: "Benchmark Index", + item: `${BASE_URL}/benchmark-index`, + }, + ], +}); + +const structuredData = [datasetSchema, itemListSchema, breadcrumbSchema]; --- @@ -59,7 +114,7 @@ const structuredData = JSON.stringify({
    -
    +
    \ No newline at end of file From 13b7d743c869ba9f9f603002bf1a52bd24d8b4af Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Sat, 14 Mar 2026 21:27:28 +0100 Subject: [PATCH 16/18] feat(bench-index): add more benchmarks to benchmark index --- src/lib/index-data.ts | 208 ++++++++++++++++++++++++++---------------- 1 file changed, 130 insertions(+), 78 deletions(-) diff --git a/src/lib/index-data.ts b/src/lib/index-data.ts index 59a1b3a..01d2603 100644 --- a/src/lib/index-data.ts +++ b/src/lib/index-data.ts @@ -14,107 +14,159 @@ export interface IndexEntry { export const indexEntries: IndexEntry[] = [ // WEBVOYAGER - { agent: "Surfer 2", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "97.1%", scoreNum: 97.1, source: "https://hcompany.ai/surfer-2", selfReported: true, openSource: false, isNew: true }, - { agent: "Magnitude", organization: "Magnitude", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "93.9%", scoreNum: 93.9, source: "https://magnitude.run/webvoyager", selfReported: true, openSource: true, isNew: true }, - { agent: "AIME Browser-Use", organization: "Aime", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "92.34%", scoreNum: 92.34, source: "https://aime-browser-use.github.io/", selfReported: true, openSource: false, isNew: true }, - { agent: "Surfer-H + Holo1", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "92.2%", scoreNum: 92.2, source: "https://arxiv.org/pdf/2506.02865", selfReported: false, openSource: false, isNew: true }, - { agent: "Browserable", organization: "Browserable", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "90.4%", scoreNum: 90.4, source: "https://www.browserable.ai/blog/web-voyager-benchmark", selfReported: true, openSource: true, isNew: true }, - { agent: "Browser Use", organization: "Browser Use", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "89.1%", scoreNum: 89.1, source: "https://browser-use.com/posts/sota-technical-report", selfReported: true, openSource: true }, - { agent: "Operator", organization: "OpenAI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "87.0%", scoreNum: 87.0, source: "https://openai.com/index/introducing-operator/", selfReported: true, openSource: false }, - { agent: "Skyvern 2.0", organization: "Skyvern", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "85.85%", scoreNum: 85.85, source: "https://blog.skyvern.com/skyvern-2-0-state-of-the-art-web-navigation/", selfReported: true, openSource: true }, - { agent: "Project Mariner", organization: "Google", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "83.5%", scoreNum: 83.5, source: "https://deepmind.google/technologies/project-mariner/", selfReported: true, openSource: false }, - { agent: "Agent-E", organization: "Emergence AI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "73.1%", scoreNum: 73.1, source: "https://www.emergence.ai/blog/agent-e-sota", selfReported: true, openSource: false }, - { agent: "Proxy Lite", organization: "Convergence AI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "72.4%", scoreNum: 72.4, source: "https://convergence.ai/proxy-lite", selfReported: true, openSource: false }, - { agent: "WebSight", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "68.0%", scoreNum: 68.0, source: "https://arxiv.org/abs/2508.16987", selfReported: false, openSource: true }, - { agent: "Runner H 0.1", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "67.0%", scoreNum: 67.0, source: "https://www.hcompany.ai/blog/a-research-update", selfReported: true, openSource: false }, - { agent: "WebVoyager", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "59.1%", scoreNum: 59.1, source: "https://arxiv.org/abs/2401.13919", selfReported: false, openSource: true }, - { agent: "WILBUR", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "53.0%", scoreNum: 53.0, source: "https://arxiv.org/abs/2404.05902", selfReported: false, openSource: false }, + { agent: "Surfer 2", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "97.1%", scoreNum: 97.1, source: "https://hcompany.ai/surfer-2", selfReported: true, openSource: false, isNew: true }, + { agent: "Magnitude", organization: "Magnitude", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "93.9%", scoreNum: 93.9, source: "https://magnitude.run/webvoyager", selfReported: true, openSource: true, isNew: true }, + { agent: "AIME Browser-Use", organization: "Aime", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "92.34%", scoreNum: 92.34, source: "https://aime-browser-use.github.io/", selfReported: true, openSource: false, isNew: true }, + { agent: "Surfer-H + Holo1", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "92.2%", scoreNum: 92.2, source: "https://arxiv.org/pdf/2506.02865", selfReported: false, openSource: false, isNew: true }, + { agent: "Browserable", organization: "Browserable", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "90.4%", scoreNum: 90.4, source: "https://www.browserable.ai/blog/web-voyager-benchmark", selfReported: true, openSource: true, isNew: true }, + { agent: "Browser Use", organization: "Browser Use", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "89.1%", scoreNum: 89.1, source: "https://browser-use.com/posts/sota-technical-report", selfReported: true, openSource: true }, + { agent: "Operator", organization: "OpenAI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "87.0%", scoreNum: 87.0, source: "https://openai.com/index/introducing-operator/", selfReported: true, openSource: false }, + { agent: "Skyvern 2.0", organization: "Skyvern", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "85.85%", scoreNum: 85.85, source: "https://blog.skyvern.com/skyvern-2-0-state-of-the-art-web-navigation/", selfReported: true, openSource: true }, + { agent: "Project Mariner", organization: "Google", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "83.5%", scoreNum: 83.5, source: "https://deepmind.google/technologies/project-mariner/", selfReported: true, openSource: false }, + { agent: "Agent-E", organization: "Emergence AI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "73.1%", scoreNum: 73.1, source: "https://www.emergence.ai/blog/agent-e-sota", selfReported: true, openSource: false }, + { agent: "Proxy Lite", organization: "Convergence AI", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "72.4%", scoreNum: 72.4, source: "https://convergence.ai/proxy-lite", selfReported: true, openSource: false }, + { agent: "WebSight", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "68.0%", scoreNum: 68.0, source: "https://arxiv.org/abs/2508.16987", selfReported: false, openSource: true }, + { agent: "Runner H 0.1", organization: "H Company", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "67.0%", scoreNum: 67.0, source: "https://www.hcompany.ai/blog/a-research-update", selfReported: true, openSource: false }, + { agent: "WebVoyager", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "59.1%", scoreNum: 59.1, source: "https://arxiv.org/abs/2401.13919", selfReported: false, openSource: true }, + { agent: "WILBUR", organization: "Academic", benchmark: "WebVoyager", benchmarkCategory: "WEB NAV", score: "53.0%", scoreNum: 53.0, source: "https://arxiv.org/abs/2404.05902", selfReported: false, openSource: false }, // WEBARENA - { agent: "DeepSeek v3.2", organization: "DeepSeek", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "74.3%", scoreNum: 74.3, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true, isNew: true }, - { agent: "OpAgent", organization: "CodeFuse AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "71.6%", scoreNum: 71.6, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "ColorBrowserAgent", organization: "ColorBrowser", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "71.2%", scoreNum: 71.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "Claude Code + GBOX","organization": "GBOX AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "68.0%", scoreNum: 68.0, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: false }, - { agent: "DeepSky Agent", organization: "DeepSky", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "66.9%", scoreNum: 66.9, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: true, openSource: false }, - { agent: "Narada AI", organization: "Narada", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "64.2%", scoreNum: 64.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: true, openSource: false }, - { agent: "IBM CUGA", organization: "IBM", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "61.7%", scoreNum: 61.7, source: "https://arxiv.org/abs/2502.18438", selfReported: false, openSource: false }, - { agent: "OpenAI Operator", organization: "OpenAI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "58.1%", scoreNum: 58.1, source: "https://openai.com/index/introducing-operator/", selfReported: true, openSource: false }, - { agent: "Jace.AI", organization: "Jace AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "57.1%", scoreNum: 57.1, source: "https://jace.ai/blog/awa-1-5-achieves-breakthrough-performance", selfReported: true, openSource: false }, - { agent: "WebOperator+GPT-4o","organization": "WebOperator", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "54.6%", scoreNum: 54.6, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "ScribeAgent+GPT-4o","organization": "Scribe", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "53.0%", scoreNum: 53.0, source: "https://scribehow.com/library/scribe-agent", selfReported: false, openSource: false }, - { agent: "AgentSymbiotic", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "52.1%", scoreNum: 52.1, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "Learn-by-Interact", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "48.0%", scoreNum: 48.0, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "AgentOccam-Judge", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "45.7%", scoreNum: 45.7, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "WebPilot", organization: "WebPilot", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "37.2%", scoreNum: 37.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: false }, - { agent: "GUI-API Hybrid", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "35.8%", scoreNum: 35.8, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, - { agent: "AWM", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "35.5%", scoreNum: 35.5, source: "https://arxiv.org/abs/2409.07429", selfReported: false, openSource: true }, - { agent: "Magentic-One", organization: "Microsoft", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "30.5%", scoreNum: 30.5, source: "https://arxiv.org/abs/2411.04468", selfReported: false, openSource: true }, - { agent: "GPT-4 baseline", organization: "OpenAI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "14.9%", scoreNum: 14.9, source: "https://arxiv.org/abs/2307.13854", selfReported: false, openSource: false }, + { agent: "DeepSeek v3.2", organization: "DeepSeek", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "74.3%", scoreNum: 74.3, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true, isNew: true }, + { agent: "OpAgent", organization: "CodeFuse AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "71.6%", scoreNum: 71.6, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "ColorBrowserAgent", organization: "ColorBrowser", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "71.2%", scoreNum: 71.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "Claude Code+GBOX", organization: "GBOX AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "68.0%", scoreNum: 68.0, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: false }, + { agent: "DeepSky Agent", organization: "DeepSky", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "66.9%", scoreNum: 66.9, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: true, openSource: false }, + { agent: "Narada AI", organization: "Narada", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "64.2%", scoreNum: 64.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: true, openSource: false }, + { agent: "IBM CUGA", organization: "IBM", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "61.7%", scoreNum: 61.7, source: "https://arxiv.org/abs/2502.18438", selfReported: false, openSource: false }, + { agent: "OpenAI Operator", organization: "OpenAI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "58.1%", scoreNum: 58.1, source: "https://openai.com/index/introducing-operator/", selfReported: true, openSource: false }, + { agent: "Jace.AI", organization: "Jace AI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "57.1%", scoreNum: 57.1, source: "https://jace.ai/blog/awa-1-5-achieves-breakthrough-performance", selfReported: true, openSource: false }, + { agent: "ORCHESTRA", organization: "UNC x Ventus", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "52.1%", scoreNum: 52.1, source: "https://arxiv.org/abs/2410.20168", selfReported: false, openSource: false }, + { agent: "WebOperator+GPT-4o", organization: "WebOperator", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "54.6%", scoreNum: 54.6, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "ScribeAgent+GPT-4o", organization: "Scribe", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "53.0%", scoreNum: 53.0, source: "https://scribehow.com/library/scribe-agent", selfReported: false, openSource: false }, + { agent: "AgentSymbiotic", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "52.1%", scoreNum: 52.1, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "Learn-by-Interact", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "48.0%", scoreNum: 48.0, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "AgentOccam-Judge", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "45.7%", scoreNum: 45.7, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "WebPilot", organization: "WebPilot", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "37.2%", scoreNum: 37.2, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: false }, + { agent: "GUI-API Hybrid", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "35.8%", scoreNum: 35.8, source: "https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ", selfReported: false, openSource: true }, + { agent: "AWM", organization: "Academic", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "35.5%", scoreNum: 35.5, source: "https://arxiv.org/abs/2409.07429", selfReported: false, openSource: true }, + { agent: "Magentic-One", organization: "Microsoft", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "30.5%", scoreNum: 30.5, source: "https://arxiv.org/abs/2411.04468", selfReported: false, openSource: true }, + { agent: "GPT-4 baseline", organization: "OpenAI", benchmark: "WebArena", benchmarkCategory: "WEB NAV", score: "14.9%", scoreNum: 14.9, source: "https://arxiv.org/abs/2307.13854", selfReported: false, openSource: false }, // ONLINE-MIND2WEB - { agent: "SeeAct + GPT-5", organization: "Academic", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "42.33%", scoreNum: 42.33, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true, isNew: true }, - { agent: "Browser-Use", organization: "Browser Use", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "40.00%", scoreNum: 40.0, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true }, - { agent: "SeeAct + o3", organization: "Academic", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "39.00%", scoreNum: 39.0, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true }, + { agent: "SeeAct + GPT-5", organization: "Academic", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "42.33%", scoreNum: 42.33, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true, isNew: true }, + { agent: "Browser-Use", organization: "Browser Use", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "40.00%", scoreNum: 40.0, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true }, + { agent: "SeeAct + o3", organization: "Academic", benchmark: "Online-Mind2Web", benchmarkCategory: "WEB NAV", score: "39.00%", scoreNum: 39.0, source: "https://hal.cs.princeton.edu/online_mind2web", selfReported: false, openSource: true }, // BROWSECOMP - { agent: "Kimi K2 Thinking", organization: "Moonshot AI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "60.2%", scoreNum: 60.2, source: "https://moonshotai.github.io/Kimi-K2/", selfReported: true, openSource: true, isNew: true }, - { agent: "Deep Research", organization: "OpenAI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "51.5%", scoreNum: 51.5, source: "https://openai.com/index/browsecomp/", selfReported: true, openSource: false }, - { agent: "WebSailor-72B", organization: "Academic", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "12.0%", scoreNum: 12.0, source: "https://arxiv.org/pdf/2507.02592", selfReported: false, openSource: true }, - { agent: "GPT-4o + browsing", organization: "OpenAI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "1.9%", scoreNum: 1.9, source: "https://openai.com/index/browsecomp/", selfReported: true, openSource: false }, + { agent: "Kimi K2 Thinking", organization: "Moonshot AI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "60.2%", scoreNum: 60.2, source: "https://moonshotai.github.io/Kimi-K2/", selfReported: true, openSource: true, isNew: true }, + { agent: "Deep Research", organization: "OpenAI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "51.5%", scoreNum: 51.5, source: "https://openai.com/index/browsecomp/", selfReported: true, openSource: false }, + { agent: "WebSailor-72B", organization: "Academic", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "12.0%", scoreNum: 12.0, source: "https://arxiv.org/pdf/2507.02592", selfReported: false, openSource: true }, + { agent: "GPT-4o + browsing", organization: "OpenAI", benchmark: "BrowseComp", benchmarkCategory: "RESEARCH", score: "1.9%", scoreNum: 1.9, source: "https://openai.com/index/browsecomp/", selfReported: true, openSource: false }, // GAIA - { agent: "h2oGPTe Agent", organization: "H2O.ai", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "75.0%", scoreNum: 75.0, source: "https://h2o.ai/blog/2025/h2o-ai-tops-the-general-ai-assistant-test/", selfReported: true, openSource: false, isNew: true }, - { agent: "Manus", organization: "Manus AI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "~75.0%", scoreNum: 74.9, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, - { agent: "Deep Research", organization: "OpenAI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "67.36%", scoreNum: 67.36, source: "https://openai.com/index/introducing-deep-research/", selfReported: true, openSource: false }, - { agent: "MS Research (o1)", organization: "Microsoft", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "38.0%", scoreNum: 38.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, - { agent: "HF Agents", organization: "Hugging Face", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "33.0%", scoreNum: 33.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: true }, - { agent: "GPT-4 + tools", organization: "OpenAI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "15.0%", scoreNum: 15.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, + { agent: "openJiuwen-deepagent", organization: "Alibaba Cloud", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "92.36%", scoreNum: 92.36, source: "https://arxiv.org/html/2602.07092v1", selfReported: false, openSource: true, isNew: true }, + { agent: "Lemon Agent", organization: "openJiuwen", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "91.69%", scoreNum: 91.69, source: "https://arxiv.org/html/2602.07092v1", selfReported: false, openSource: true, isNew: true }, + { agent: "JoinAI_V2.2", organization: "Lenovo CTO Org", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "91.36%", scoreNum: 91.36, source: "https://join-intelligence.com/", selfReported: false, openSource: false, isNew: true }, + { agent: "Nemotron-ToolOrchestra", organization: "NVIDIA", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "90.37%", scoreNum: 90.37, source: "https://arxiv.org/html/2511.21689v1", selfReported: false, openSource: true, isNew: true }, + { agent: "SU Zero (Shuqian Pro)", organization: "Shuqian Tech", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "90.03%", scoreNum: 90.03, source: "https://www.shuqian.tech/", selfReported: false, openSource: false, isNew: true }, + { agent: "HALO V1217-1", organization: "Microsoft AI Asia", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "89.37%", scoreNum: 89.37, source: "https://www.microsoft.com/en-us/research/group/microsoft-ai-asia/", selfReported: false, openSource: false, isNew: true }, + { agent: "MiroThinker (Shawn)", organization: "MiroMindAI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "89.37%", scoreNum: 89.37, source: "https://github.com/MiroMindAI/MiroThinker", selfReported: false, openSource: true, isNew: true }, + { agent: "h2oGPTe Agent", organization: "H2O.ai", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "75.0%", scoreNum: 75.0, source: "https://h2o.ai/blog/2025/h2o-ai-tops-the-general-ai-assistant-test/", selfReported: true, openSource: false, isNew: true }, + { agent: "Manus", organization: "Manus AI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "~75.0%", scoreNum: 74.9, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, + { agent: "Deep Research", organization: "OpenAI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "67.36%", scoreNum: 67.36, source: "https://openai.com/index/introducing-deep-research/", selfReported: true, openSource: false }, + { agent: "MS Research (o1)", organization: "Microsoft", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "38.0%", scoreNum: 38.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, + { agent: "HF Agents", organization: "Hugging Face", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "33.0%", scoreNum: 33.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: true }, + { agent: "GPT-4 + tools", organization: "OpenAI", benchmark: "GAIA", benchmarkCategory: "GENERAL", score: "15.0%", scoreNum: 15.0, source: "https://huggingface.co/spaces/gaia-benchmark/leaderboard", selfReported: false, openSource: false }, // OSWORLD - { agent: "AskUI VisionAgent", organization: "AskUI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "66.2%", scoreNum: 66.2, source: "https://www.askui.com/benchmarks", selfReported: true, openSource: false, isNew: true }, - { agent: "Agent S3", organization: "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "69.9%", scoreNum: 69.9, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true, isNew: true }, - { agent: "CoACT-1", organization: "USC / Salesforce", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "60.76%", scoreNum: 60.76, source: "https://arxiv.org/abs/2508.00000", selfReported: false, openSource: true }, - { agent: "Agent S2.5 w/ o3", organization: "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "56.0%", scoreNum: 56.0, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true }, - { agent: "GTA1 w/ o3", organization: "Salesforce", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "53.1%", scoreNum: 53.1, source: "https://arxiv.org/pdf/2507.05791", selfReported: false, openSource: false }, - { agent: "OpenAI CUA (o3)", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "42.9%", scoreNum: 42.9, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, - { agent: "UI-TARS-1.5", organization: "ByteDance", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "42.5%", scoreNum: 42.5, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: true }, - { agent: "Agent S2 w/ Gemini","organization": "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "41.4%", scoreNum: 41.4, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true }, - { agent: "OpenAI CUA (4o)", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "31.4%", scoreNum: 31.4, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, - { agent: "Claude 3.7 (CU)", organization: "Anthropic", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "28.0%", scoreNum: 28.0, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, - { agent: "UI-TARS-1.5 (29%)", organization: "ByteDance", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "29.6%", scoreNum: 29.6, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: true }, + { agent: "GPT-5.4", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "75.0%", scoreNum: 75.0, source: "https://openai.com/news/gpt-5-4-release", selfReported: true, openSource: false, isNew: true }, + { agent: "Claude Opus 4.6", organization: "Anthropic", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "72.7%", scoreNum: 72.7, source: "https://www.anthropic.com/news/claude-4-6-opus", selfReported: true, openSource: false, isNew: true }, + { agent: "UiPath Screen Agent", organization: "UiPath", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "72.1%", scoreNum: 72.1, source: "https://www.uipath.com/newsroom/uipath-screenagent-osworld-benchmark-top-ranking", selfReported: true, openSource: false, isNew: true }, + { agent: "Simular Agent S2", organization: "Simular", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "49.2%", scoreNum: 49.2, source: "https://simular.ai/blog/osworld-results", selfReported: false, openSource: false, isNew: false }, + { agent: "Agent S3", organization: "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "69.9%", scoreNum: 69.9, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true, isNew: true }, + { agent: "AskUI VisionAgent", organization: "AskUI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "66.2%", scoreNum: 66.2, source: "https://www.askui.com/benchmarks", selfReported: true, openSource: false }, + { agent: "CoACT-1", organization: "USC / Salesforce", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "60.76%", scoreNum: 60.76, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: true }, + { agent: "Agent S2.5 w/ o3", organization: "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "56.0%", scoreNum: 56.0, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true }, + { agent: "GTA1 w/ o3", organization: "Salesforce", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "53.1%", scoreNum: 53.1, source: "https://arxiv.org/pdf/2507.05791", selfReported: false, openSource: false }, + { agent: "OpenAI CUA (o3)", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "42.9%", scoreNum: 42.9, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, + { agent: "UI-TARS-1.5", organization: "ByteDance", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "42.5%", scoreNum: 42.5, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: true }, + { agent: "Agent S2 w/ Gemini", organization: "Simular AI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "41.4%", scoreNum: 41.4, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true }, + { agent: "OpenAI CUA (4o)", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "31.4%", scoreNum: 31.4, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, + { agent: "Claude 3.7 (CU)", organization: "Anthropic", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "28.0%", scoreNum: 28.0, source: "https://xlang.ai/blog/osworld-verified", selfReported: false, openSource: false }, + { agent: "Qwen2.5-VL-72B", organization: "Alibaba", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "25.1%", scoreNum: 25.1, source: "https://arxiv.org/abs/2502.13923", selfReported: false, openSource: true }, + { agent: "UI-TARS-7B", organization: "ByteDance", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "24.6%", scoreNum: 24.6, source: "https://arxiv.org/abs/2501.12326", selfReported: false, openSource: true }, + { agent: "GPT-4o (SoM)", organization: "OpenAI", benchmark: "OSWorld", benchmarkCategory: "DESKTOP", score: "17.8%", scoreNum: 17.8, source: "https://arxiv.org/abs/2404.07972", selfReported: false, openSource: false }, + // ANDROIDWORLD - { agent: "Agent S3", organization: "Simular AI", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "66.8%", scoreNum: 66.8, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true, isNew: true }, - { agent: "AskUI AndroidVA", organization: "AskUI", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "64.8%", scoreNum: 64.8, source: "https://www.askui.com/benchmarks", selfReported: true, openSource: false }, - { agent: "M3A (Gemini 1.5)", organization: "Google DeepMind", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "30.0%", scoreNum: 30.0, source: "https://arxiv.org/abs/2405.14573", selfReported: false, openSource: false }, + { agent: "Agent S3", organization: "Simular AI", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "66.8%", scoreNum: 66.8, source: "https://github.com/simular-ai/Agent-S", selfReported: false, openSource: true, isNew: true }, + { agent: "AskUI AndroidVA", organization: "AskUI", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "64.8%", scoreNum: 64.8, source: "https://www.askui.com/benchmarks", selfReported: true, openSource: false }, + { agent: "M3A (Gemini 1.5)", organization: "Google DeepMind", benchmark: "AndroidWorld", benchmarkCategory: "DESKTOP", score: "30.0%", scoreNum: 30.0, source: "https://arxiv.org/abs/2405.14573", selfReported: false, openSource: false }, - // SWE-BENCH - { agent: "OpenAI o3", organization: "OpenAI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~72.0%", scoreNum: 72.0, source: "https://openai.com/index/early-access-to-o3/", selfReported: true, openSource: false, isNew: true }, - { agent: "Claude 3.7 Sonnet", organization: "Anthropic", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~62.0%", scoreNum: 62.0, source: "https://www.anthropic.com/research/swe-bench-sonnet", selfReported: true, openSource: false }, - { agent: "Devin 2.0", organization: "Cognition", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~55.0%", scoreNum: 55.0, source: "https://cognition.ai/blog/devin-2", selfReported: true, openSource: false }, - { agent: "Gru", organization: "Mutable AI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~57.0%", scoreNum: 57.0, source: "https://mutable.ai/blog/swe-bench", selfReported: true, openSource: false }, + // SWE-BENCH VERIFIED + { agent: "Sonar Foundation", organization: "Sonar", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "79.2%", scoreNum: 79.2, source: "https://www.sonarsource.com/company/press-releases/sonar-claims-top-spot-on-swe-bench-leaderboard/", selfReported: false, openSource: false, isNew: true }, + { agent: "Claude Opus 4.5", organization: "Anthropic", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "79.2%", scoreNum: 79.18, source: "https://live-swe-agent.github.io/", selfReported: false, openSource: false, isNew: true }, + { agent: "Gemini 3 Pro", organization: "Google", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "77.4%", scoreNum: 77.4, source: "https://live-swe-agent.github.io/", selfReported: false, openSource: false, isNew: true }, + { agent: "Claude Opus 4.6", organization: "Anthropic", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "79.2%", scoreNum: 79.21, source: "https://swe-rebench.com", selfReported: false, openSource: false, isNew: true }, + { agent: "GPT-5.2 Codex", organization: "OpenAI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~78%", scoreNum: 78.0, source: "https://swe-rebench.com", selfReported: false, openSource: false, isNew: true }, + { agent: "OpenAI o3", organization: "OpenAI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~72%", scoreNum: 72.0, source: "https://openai.com/index/early-access-to-o3/", selfReported: true, openSource: false }, + { agent: "Claude 3.7 Sonnet", organization: "Anthropic", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "70.3%", scoreNum: 70.3, source: "https://www.anthropic.com/research/swe-bench-sonnet", selfReported: true, openSource: false }, + { agent: "Devin 2.0", organization: "Cognition", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~55%", scoreNum: 55.0, source: "https://cognition.ai/blog/devin-2", selfReported: true, openSource: false }, + { agent: "Gru", organization: "Mutable AI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~57%", scoreNum: 57.0, source: "https://mutable.ai/blog/swe-bench", selfReported: true, openSource: false }, + { agent: "Devstral (2512)", organization: "Mistral", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~56%", scoreNum: 56.0, source: "https://mistral.ai/news/devstral", selfReported: true, openSource: true }, + { agent: "Qwen3-Coder-480B", organization: "Alibaba", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~65%", scoreNum: 65.0, source: "https://arxiv.org/abs/2505.09343", selfReported: true, openSource: true }, + { agent: "Gemini 2.5 Pro", organization: "Google", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~63%", scoreNum: 63.0, source: "https://deepmind.google/technologies/gemini/", selfReported: true, openSource: false }, + { agent: "GPT-4.1", organization: "OpenAI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~55%", scoreNum: 55.1, source: "https://openai.com/index/gpt-4-1/", selfReported: true, openSource: false }, + { agent: "Kimi K2 Thinking", organization: "Moonshot AI", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "~65%", scoreNum: 65.1, source: "https://moonshotai.github.io/Kimi-K2/", selfReported: true, openSource: true }, + { agent: "mini-SWE-agent", organization: "Academic", benchmark: "SWE-bench Verified", benchmarkCategory: "CODING", score: "65.0%", scoreNum: 65.0, source: "https://github.com/SWE-agent/mini-swe-agent", selfReported: false, openSource: true }, + + // SWE-BENCH PRO + { agent: "Claude Opus 4.1", organization: "Anthropic", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "23.1%", scoreNum: 23.1, source: "https://labs.scale.com/leaderboard/swe_bench_pro_public", selfReported: false, openSource: false, isNew: true }, + { agent: "OpenAI GPT-5", organization: "OpenAI", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "23.3%", scoreNum: 23.3, source: "https://labs.scale.com/leaderboard/swe_bench_pro_public", selfReported: false, openSource: false, isNew: true }, + { agent: "Claude Sonnet 4.5", organization: "Anthropic", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "45.8%", scoreNum: 45.8, source: "https://live-swe-agent.github.io/", selfReported: false, openSource: false, isNew: true }, + { agent: "GPT-5.3-Codex (CLI)",organization: "OpenAI", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "57.0%", scoreNum: 57.0, source: "https://openai.com/blog/gpt-5-3-codex", selfReported: true, openSource: false, isNew: true }, + { agent: "Auggie", organization: "Augment Code", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "51.8%", scoreNum: 51.8, source: "https://augment.code/blog/swe-bench-pro-leaderboard", selfReported: true, openSource: false, isNew: true }, + { agent: "Cursor", organization: "Anysphere", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "50.2%", scoreNum: 50.2, source: "https://cursor.sh/blog/swe-bench-pro", selfReported: true, openSource: false, isNew: true }, + { agent: "Claude Code", organization: "Anthropic", benchmark: "SWE-bench Pro", benchmarkCategory: "CODING", score: "49.8%", scoreNum: 49.8, source: "https://www.anthropic.com/news/claude-code", selfReported: true, openSource: false, isNew: true }, // MLE-BENCH - { agent: "AIDE (Claude 3.5)", organization: "Anthropic", benchmark: "MLE-bench", benchmarkCategory: "CODING", score: "~17% medals", scoreNum: 17.0, source: "https://arxiv.org/abs/2410.07095", selfReported: false, openSource: false }, + { agent: "AIDE (Claude 3.5)", organization: "Anthropic", benchmark: "MLE-bench", benchmarkCategory: "CODING", score: "~17% medals", scoreNum: 17.0, source: "https://arxiv.org/abs/2410.07095", selfReported: false, openSource: false }, // GPQA DIAMOND - { agent: "o3", organization: "OpenAI", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~87.0%", scoreNum: 87.0, source: "https://openai.com/index/early-access-to-o3/", selfReported: true, openSource: false }, - { agent: "Gemini 2.5 Pro", organization: "Google", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~86.0%", scoreNum: 86.0, source: "https://deepmind.google/technologies/gemini/", selfReported: true, openSource: false }, - { agent: "Claude 3.7 Sonnet", organization: "Anthropic", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~84.0%", scoreNum: 84.0, source: "https://www.anthropic.com/claude/claude-3-7-sonnet", selfReported: true, openSource: false }, + { agent: "o3", organization: "OpenAI", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~87%", scoreNum: 87.0, source: "https://openai.com/index/early-access-to-o3/", selfReported: true, openSource: false }, + { agent: "Gemini 2.5 Pro", organization: "Google", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~86%", scoreNum: 86.0, source: "https://deepmind.google/technologies/gemini/", selfReported: true, openSource: false }, + { agent: "Claude 3.7 Sonnet", organization: "Anthropic", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~84%", scoreNum: 84.0, source: "https://www.anthropic.com/claude/claude-3-7-sonnet", selfReported: true, openSource: false }, + { agent: "Llama 4 Maverick", organization: "Meta", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~80%", scoreNum: 80.0, source: "https://ai.meta.com/blog/llama-4-multimodal-intelligence/", selfReported: true, openSource: true }, + { agent: "DeepSeek-R1", organization: "DeepSeek", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~71%", scoreNum: 71.0, source: "https://arxiv.org/abs/2501.12948", selfReported: true, openSource: true }, + { agent: "GPT-4o", organization: "OpenAI", benchmark: "GPQA Diamond", benchmarkCategory: "GENERAL", score: "~53%", scoreNum: 53.0, source: "https://openai.com/index/hello-gpt-4o/", selfReported: true, openSource: false }, // ARC-AGI-2 - { agent: "o3 (high)", organization: "OpenAI", benchmark: "ARC-AGI-2", benchmarkCategory: "GENERAL", score: "~4.0%", scoreNum: 4.0, source: "https://arcprize.org/arc-agi-2", selfReported: false, openSource: false }, - { agent: "Gemini 2.5 Pro", organization: "Google", benchmark: "ARC-AGI-2", benchmarkCategory: "GENERAL", score: "~2.0%", scoreNum: 2.0, source: "https://arcprize.org/arc-agi-2", selfReported: false, openSource: false }, + { agent: "o3 (high)", organization: "OpenAI", benchmark: "ARC-AGI-2", benchmarkCategory: "GENERAL", score: "~4%", scoreNum: 4.0, source: "https://arcprize.org/arc-agi-2", selfReported: false, openSource: false }, + { agent: "Gemini 2.5 Pro", organization: "Google", benchmark: "ARC-AGI-2", benchmarkCategory: "GENERAL", score: "~2%", scoreNum: 2.0, source: "https://arcprize.org/arc-agi-2", selfReported: false, openSource: false }, // TOOLBENCH - { agent: "ToolLLaMA-v2", organization: "Academic", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~60.0%", scoreNum: 60.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: true }, - { agent: "GPT-4", organization: "OpenAI", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~54.0%", scoreNum: 54.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: false }, - { agent: "Claude 3 Opus", organization: "Anthropic", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~49.0%", scoreNum: 49.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: false }, + { agent: "ToolLLaMA-v2", organization: "Academic", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~60%", scoreNum: 60.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: true }, + { agent: "GPT-4", organization: "OpenAI", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~54%", scoreNum: 54.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: false }, + { agent: "Claude 3 Opus", organization: "Anthropic", benchmark: "ToolBench", benchmarkCategory: "TOOL USE", score: "~49%", scoreNum: 49.0, source: "https://arxiv.org/abs/2307.16789", selfReported: false, openSource: false }, // AGENTBENCH - { agent: "GPT-4", organization: "OpenAI", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "4.27", scoreNum: 4.27, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, - { agent: "Claude 2", organization: "Anthropic", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "3.51", scoreNum: 3.51, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, - { agent: "GPT-3.5-turbo", organization: "OpenAI", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "2.01", scoreNum: 2.01, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, + { agent: "GPT-4", organization: "OpenAI", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "4.27", scoreNum: 42.7, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, + { agent: "Claude 2", organization: "Anthropic", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "3.51", scoreNum: 35.1, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, + { agent: "GPT-3.5-turbo", organization: "OpenAI", benchmark: "AgentBench", benchmarkCategory: "GENERAL", score: "2.01", scoreNum: 20.1, source: "https://arxiv.org/abs/2308.03688", selfReported: false, openSource: false }, + + // TAU-BENCH + { agent: "Claude 3.5 Sonnet", organization: "Anthropic", benchmark: "Tau-bench", benchmarkCategory: "TOOL USE", score: "~62%", scoreNum: 62.0, source: "https://arxiv.org/abs/2406.12045", selfReported: false, openSource: false, isNew: true }, + { agent: "GPT-4o", organization: "OpenAI", benchmark: "Tau-bench", benchmarkCategory: "TOOL USE", score: "~50%", scoreNum: 50.0, source: "https://arxiv.org/abs/2406.12045", selfReported: false, openSource: false }, + { agent: "GPT-4-turbo", organization: "OpenAI", benchmark: "Tau-bench", benchmarkCategory: "TOOL USE", score: "~44%", scoreNum: 44.0, source: "https://arxiv.org/abs/2406.12045", selfReported: false, openSource: false }, + { agent: "Llama 3.1 70B", organization: "Meta", benchmark: "Tau-bench", benchmarkCategory: "TOOL USE", score: "~28%", scoreNum: 28.0, source: "https://arxiv.org/abs/2406.12045", selfReported: false, openSource: true }, + + // HUMANEVAL+ + { agent: "o3-mini (high)", organization: "OpenAI", benchmark: "HumanEval+", benchmarkCategory: "CODING", score: "~97%", scoreNum: 97.0, source: "https://openai.com/index/openai-o3-mini/", selfReported: true, openSource: false, isNew: true }, + { agent: "Claude 3.7 Sonnet", organization: "Anthropic", benchmark: "HumanEval+", benchmarkCategory: "CODING", score: "~93%", scoreNum: 93.0, source: "https://www.anthropic.com/claude/claude-3-7-sonnet", selfReported: true, openSource: false }, + { agent: "GPT-4o", organization: "OpenAI", benchmark: "HumanEval+", benchmarkCategory: "CODING", score: "~90%", scoreNum: 90.0, source: "https://openai.com/index/hello-gpt-4o/", selfReported: true, openSource: false }, + { agent: "DeepSeek-Coder-V2", organization: "DeepSeek", benchmark: "HumanEval+", benchmarkCategory: "CODING", score: "~90%", scoreNum: 90.1, source: "https://arxiv.org/abs/2406.11931", selfReported: true, openSource: true }, + { agent: "Llama 3.1 405B", organization: "Meta", benchmark: "HumanEval+", benchmarkCategory: "CODING", score: "~84%", scoreNum: 84.0, source: "https://ai.meta.com/blog/meta-llama-3-1/", selfReported: true, openSource: true }, + ]; export const indexBenchmarks = [...new Set(indexEntries.map(e => e.benchmark))].sort(); From fb285a995f7c92b69f74e4aa5b1ed6793b97c58e Mon Sep 17 00:00:00 2001 From: Niksa Kuzmanic Date: Sat, 14 Mar 2026 22:12:52 +0100 Subject: [PATCH 17/18] feat: add FAQ for benchmark index and small fixes --- src/components/BenchmarkIndex.astro | 60 ++++++++++++++++++++++++++++- src/pages/bench-index.astro | 20 +++++++++- 2 files changed, 78 insertions(+), 2 deletions(-) diff --git a/src/components/BenchmarkIndex.astro b/src/components/BenchmarkIndex.astro index 969073c..f182fc8 100644 --- a/src/components/BenchmarkIndex.astro +++ b/src/components/BenchmarkIndex.astro @@ -1,11 +1,12 @@ --- -import { indexEntries, indexBenchmarks, indexCategories } from "../lib/index-data"; import { categoryColors } from "../lib/benchmarks"; +import { indexEntries, indexBenchmarks, indexCategories } from "../lib/index-data"; ---
    +
    BENCHMARK INDEX
    @@ -129,6 +130,63 @@ import { categoryColors } from "../lib/benchmarks"; class="text-text underline hover:text-accent transition-colors ml-1">SUBMIT A RESULT →

    +
    +
    +
    +
    FAQ
    +
    + {[0,1,2,3,4].map(() =>
    )} +
    +
    +
    + {[ + { + q: "What is an AI agent benchmark index?", + a: "A benchmark index collects results from multiple evaluations in one place so you can compare agents across different task types without visiting each benchmark's leaderboard separately. This index tracks results across web navigation, desktop control, coding, research, tool use, general reasoning, and specialized categories.", + }, + { + q: "Why can't I compare scores across different benchmarks?", + a: "Each benchmark measures something different under different conditions. A 70% on WebArena (programmatic evaluation, self-hosted Docker) and a 70% on WebVoyager (GPT-4V judge, live websites) are not equivalent — tasks, environments, graders, and difficulty levels all differ. Use scores within a single benchmark for head-to-head comparison.", + }, + { + q: "What is the difference between self-reported and third-party verified scores?", + a: "A self-reported (SELF) score was published by the organization that built the agent. These may be accurate but harder to verify — organizations sometimes use custom evaluation settings, filtered subsets, or different prompt configurations. A third-party verified (3RD) score was independently evaluated by the benchmark authors, an academic lab, or a neutral platform like Princeton HAL. Prefer 3RD scores when comparing agents head-to-head.", + }, + { + q: "Which benchmark should I use to evaluate a browser agent?", + a: "Start with WebVoyager — it's the most widely adopted, uses live websites, and has the most agents benchmarked for easy comparison. If you need reproducibility and programmatic grading with no LLM judge, use WebArena instead. For cost-aware evaluation with independent verification, use Online-Mind2Web via Princeton HAL.", + }, + { + q: "Which benchmark should I use to evaluate a coding agent?", + a: "SWE-bench Verified is the most trusted signal — 500 human-verified GitHub issues from real Python repos, programmatically graded. For a faster, cheaper proxy use SWE-bench Lite. For command-line and sysadmin work, use Terminal-Bench 2.0.", + }, + { + q: "Which benchmark should I use to evaluate a desktop automation agent?", + a: "OSWorld is the most comprehensive — 369 cross-application tasks across Ubuntu, Windows, and macOS with execution-based evaluation. For platform-specific depth, Windows Agent Arena covers Windows 11 via Azure VMs and AndroidWorld covers 20 real Android apps.", + }, + { + q: "Why are scores on some benchmarks so low?", + a: "Some benchmarks are intentionally hard. BrowseComp was designed so most agents fail — the best scores hover around 60%. ARC-AGI-2 sits at ~4% for top models because it tests genuine visual reasoning that resists memorization. Low scores signal a benchmark still has meaningful room for improvement, making it more useful for tracking progress.", + }, + { + q: "How do I add a result to this index?", + a: "Open a pull request on GitHub adding an entry to src/lib/index-data.ts. Include the agent name, organization, benchmark, score, a source link, and whether the result is self-reported or independently verified.", + }, + ].map((item) => ( +
    + + {item.q} + + [+] + + + +
    +
    + ))} +
    +
    +
    \ No newline at end of file + diff --git a/src/components/Header.astro b/src/components/Header.astro index c4d4821..0b677cb 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -18,9 +18,9 @@
  • [INDEX][RESULTS]
  • @@ -96,4 +96,4 @@
  • - \ No newline at end of file + diff --git a/src/components/RegistryPage.astro b/src/components/RegistryPage.astro index e34c12d..1ea00c6 100644 --- a/src/components/RegistryPage.astro +++ b/src/components/RegistryPage.astro @@ -1,6 +1,7 @@ --- import Layout from "../layouts/Layout.astro"; import BenchmarkRegistry from "./BenchmarkRegistry.astro"; +import cursorSvg from "../assets/cursor.svg"; import { benchmarks, categoryRouteLabels, @@ -143,13 +144,19 @@ const faqSchema = JSON.stringify({ {activeCategoryLabel} )} -
    -
    - Steel.dev® +
    +
    +
    + Steel.dev® +
    +

    + AI Agent Benchmark Registry +

    +
    + +
    + Steel.dev Logo
    -

    - AI Agent Benchmark Registry -

    Explore an AI agent eval registry and benchmark leaderboard covering web navigation, @@ -178,7 +185,9 @@ const faqSchema = JSON.stringify({ web navigation,{" "} coding, and{" "} tool use{" "} - before comparing leaderboard numbers across very different evaluation suites. + before comparing leaderboard numbers across very different evaluation suites. If you want a + single place to browse reported scores across many benchmarks, jump to the{" "} + Benchmark Index.

    diff --git a/src/pages/bench-index.astro b/src/pages/results.astro similarity index 74% rename from src/pages/bench-index.astro rename to src/pages/results.astro index 41cc7b0..fecb887 100644 --- a/src/pages/bench-index.astro +++ b/src/pages/results.astro @@ -1,6 +1,7 @@ --- import Layout from "../layouts/Layout.astro"; import BenchmarkIndex from "../components/BenchmarkIndex.astro"; +import cursorSvg from "../assets/cursor.svg"; import { indexEntries, indexBenchmarks } from "../lib/index-data"; const title = "AI Agent Benchmark Results Index | Steel.dev"; @@ -15,7 +16,7 @@ const datasetSchema = JSON.stringify({ name: "AI Agent Benchmark Results Index", description: "A comprehensive, filterable index of AI agent benchmark results across web navigation, desktop control, coding, research, tool use, and general reasoning benchmarks. Includes self-reported and independently verified scores.", - url: `${BASE_URL}/benchmark-index`, + url: `${BASE_URL}/results`, dateModified: new Date().toISOString().split("T")[0], creator: { "@type": "Organization", @@ -46,7 +47,7 @@ const datasetSchema = JSON.stringify({ distribution: { "@type": "DataDownload", encodingFormat: "text/html", - contentUrl: `${BASE_URL}/benchmark-index`, + contentUrl: `${BASE_URL}/results`, }, }); @@ -66,7 +67,7 @@ const itemListSchema = JSON.stringify({ description: top ? `Top score: ${top.score} by ${top.agent} (${top.organization})` : b, - url: `${BASE_URL}/benchmark-index`, + url: `${BASE_URL}/results`, }; }), }); @@ -85,7 +86,7 @@ const breadcrumbSchema = JSON.stringify({ "@type": "ListItem", position: 2, name: "Benchmark Index", - item: `${BASE_URL}/benchmark-index`, + item: `${BASE_URL}/results`, }, ], }); @@ -97,19 +98,30 @@ const structuredData = [datasetSchema, itemListSchema, breadcrumbSchema];
    -
    -

    - Steel.dev® -

    -

    - AI Agent Benchmark Index -

    +
    +
    +

    + Steel.dev® +

    +

    + AI Agent Benchmark Results Index +

    +
    + +
    + Steel.dev Logo +

    - {indexEntries.length} results across {indexBenchmarks.length} benchmarks — + Browse {indexEntries.length} reported results across {indexBenchmarks.length} benchmarks — WebVoyager, WebArena, OSWorld, SWE-bench, GAIA, BrowseComp, and more. Filter by category, benchmark, or search by agent or organization name.

    +

    + Need benchmark definitions, evaluator details, and links to papers before comparing + scores? Start with the{" "} + Benchmark Registry. +

    @@ -135,4 +147,4 @@ const structuredData = [datasetSchema, itemListSchema, breadcrumbSchema]; background: rgba(255,255,255,0.05); padding: 0 3px; } - \ No newline at end of file +