Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 2.5.0 · 2026-07-31 00:38 UTC

jmrplens / gitlab-mcp-server

Open source GitLab MCP server for AI assistants: 2-tool dynamic find/execute over 850+ GitLab actions (1,000+ Enterprise), stdio/HTTP/OAuth, safe/read-only modes.

GoMIT★ 31 estrellas⑂ 2 forksdesde abr 2026Ver en GitHub ↗
TipoServidor MCPcómo se determina

jmrplens/gitlab-mcp-server tiene un índice de salud de 86 sobre 100, lo que lo sitúa en la banda Excelente. Su puntuación más alta es Engineering Quality (90/100) y la más baja, Sustainability & Governance (56/100). Se actualizó por última vez hace 1 día. Una sola persona concentra la mayor parte del trabajo reciente.

86
global / 100
Excelente

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala estandarizada de 1 a 100. El resultado global parte de su media ponderada, calibrada contra la distribución del registro público para que las bandas tengan significado percentil; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe un límite «En riesgo» de 34.

86
Excepcional93-100El nivel más alto del registro (≈ el 5% superior); cumple prácticamente todos los criterios evaluados
Excelente80-92Sólido en todos los frentes; carencias menores
Bueno65-79Saludable; carencias limitadas y manejables
Moderado50-64Aceptable con carencias notables; se recomienda revisión
Débil35-49Debilidades sustanciales en varias áreas
En riesgo20-34Debilidades significativas; su adopción exige cautela
Crítico1-19Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
VitalidadComunidad yAdopciónSostenibilidady GobernanzaCalidad deIngenieríaSeguridadPreparaciónpara IA

Perfil de puntuación

Cada eje es una categoría. La forma importa más que la media: un proyecto sano llena toda la figura, mientras que un perfil de picos y cráteres indica que la fortaleza en una dimensión enmascara el riesgo en otra.

El resultado global ponderado 72 se calibra a 86 en la escala publicada del índice (calibración del registro 2026-08-02).

Titularidad

José M. Requena PlensCuenta personal
39 seguidores32 repositorios públicosdesde may 2017

Este repositorio pertenece a una cuenta personal. Un proyecto con un único propietario conlleva más riesgo de continuidad que uno respaldado por una organización.

Ecosistemas de paquetes

RegistroPaqueteVersiónDescargas / mesVersionesÚltima publicación
Gogithub.com/jmrplens/gitlab-mcp-server/v2v2.5.3-17hace 1 día

Métricas por categoría

Vitalidad

¿Está vivo el proyecto: se escribe código y se publican versiones?

84Excelente · 21% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 1 días
9.7/36Cadencia de commits — 14/52 semanas con commits
18/18Volumen de commits — 278 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year278
human_commit_share0,99
days_since_last_push1
active_weeks_last_year14
Cómo se puntúa
27/27Publica versiones — 41 versiones publicadas
36/36Recencia de las versiones — última versión hace 1 días
27/27Cadencia de publicación — una versión cada ~5,9 días
8/10OpenSSF Scorecard: Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
Datos de entrada utilizados
releases_count41
latest_release_tagv2.5.3
releases_from_tagsno
days_since_latest_release1
mean_days_between_releases5,9

Comunidad y Adopción

¿Tiene el proyecto usuarios, descargas, atención y unas condiciones acogedoras para quienes contribuyen?

56Moderado · 17% del índice global
Cómo se puntúa
24/60Estrellas — 31 estrellas
0/25Forks — 2 forks
0/15Observadores — 1 observadores
Datos de entrada utilizados
forks2
stars31
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MIT)
18/18Guía CONTRIBUTING
13.5/13.5Código de conducta
0/7.2Plantilla de issues
6.3/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
readme_badges
has_contributing
has_issue_templateno
has_code_of_conduct
readme_badge_services
has_pull_request_template

Sostenibilidad y Gobernanza

¿Sobrevivirá el proyecto a sus personas: factor bus, capacidad de respuesta, quién lo respalda y mantenimiento del paquete?

56Moderado · 23% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
0.1/22.5Distribución de commits — el principal contribuyente firma el 100% de los commits
2.7/13.5Amplitud de contribuyentes — 2 contribuyentes
0/10OpenSSF Scorecard: Contributors — project has 0 contributing companies or organizations -- score normalized to 0
Datos de entrada utilizados
bus_factor1
contributors_sampled2
top_contributor_share0,996
Cómo se puntúa
42/42Resolución de issues — 100% de issues cerradas
23/30Aceptación de PR — 194/253 PR decididos fusionados
0/13Newcomer PR acceptance — ningún PR de un contribuyente primerizo decidido en 30 d
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Datos de entrada utilizados
merged_prs194
open_issues0
closed_issues1
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio1
closed_unmerged_prs59
first_time_authors_30d
first_time_prs_merged_30d
first_time_prs_decided_30d
Excluidos de la puntuación (sin datos o no aplicable): newcomer_pr_acceptance. Los pesos restantes se han renormalizado.
Cómo se puntúa
10/30Respaldo de la propiedad — cuenta personal (usuario)
0/20Dominio verificado — no aplicable a cuentas de usuario
11.5/25Alcance del propietario — 39 seguidores de jmrplens
23.1/25Trayectoria — 32 repos públicos, cuenta de ~9 años
Datos de entrada utilizados
followers39
owner_typeUser
is_verified
owner_loginjmrplens
public_repos32
account_age_days3353
Excluidos de la puntuación (sin datos o no aplicable): Dominio verificado. Los pesos restantes se han renormalizado.
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en go
35/35Recencia de publicación — última publicación hace 1 días
20/20Historial de versiones — 17 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packagesgithub.com/jmrplens/gitlab-mcp-server/v2
ecosystemsgo
any_deprecatedno
min_days_since_publish1

Calidad de Ingeniería

¿Existen unas prácticas mínimas de ingeniería y documentación?

90Excelente · 19% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 7 flujo(s) de trabajo
24/24Pruebas presentes
16/16Configuración de linter — .golangci.yml, eslint.config.mjs
0/9.6Hooks de pre-commit
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 25 out of 25 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_configno

Documentación

90Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://jmrplens.github.io/gitlab-mcp-server/
10/10Descripción del repositorio
10/10Topics — 8 topics
0/10Wiki
Datos de entrada utilizados
topicsai-tools, gitlab, gitlab-api, go, llm, mcp, mcp-server, model-context-protocol
has_wikino
homepagehttps://jmrplens.github.io/gitlab-mcp-server/
has_readme
has_docs_dir
has_description

Seguridad

¿Son sólidas las prácticas visibles de seguridad y de cadena de suministro, sin exposición jurisdiccional de alto riesgo sin resolver?

74Bueno · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 25 out of 25 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
0/10Dangerous-Workflow — sin datos
7.5/7.5Dependency-Update-Tool — update tool detected
5/5Fuzzing — project is fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
5/5SAST — SAST tool is run on all commits
5/5Security-Policy — security policy file detected
6/7.5Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
0/7.5Token-Permissions — sin datos
6.8/7.5Vulnerabilities — 1 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate7
Excluidos de la puntuación (sin datos o no aplicable): dangerous_workflow, packaging, token_permissions. Los pesos restantes se han renormalizado.
Cómo se puntúa
26.6/35Dependencias directas libres de avisos conocidos — 1 afectados: golang.org/x/crypto v0.54.0 (unknown)
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
40/40Sin avisos pendientes — ningún aviso lleva público más de 90 días
Datos de entrada utilizados
sourceosv
advisories2
affected_packages2
assessed_packages1016
unassessed_packages0
affected_by_severityhigh 1, unknown 1
direct_affected_packages1
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos. Los pesos restantes se han renormalizado. Se cotejaron 1016 dependencias resueltas con OSV. Este repositorio no publica ningún paquete que el índice resuelva, por lo que se evaluó en su lugar el grafo de dependencias del repositorio. Ese grafo mezcla fijaciones de desarrollo y prueba con las dependencias distribuidas, de modo que solo se puntúan las dependencias declaradas en tiempo de ejecución; los hallazgos transitivos se informan como contexto y quedan excluidos de la puntuación. No se analiza la alcanzabilidad.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Tiene un peso deliberadamente pequeño (4%): las herramientas para agentes son una señal real de mantenimiento, pero un repositorio sin ninguna puede alcanzar igualmente 100/100.

87Excelente · 4% del índice global
Cómo se puntúa
45/45Instrucciones para agentes — .github/copilot-instructions.md, .github/instructions/code-review-generic.instructions.md, .github/instructions/context-engineering.instructions.md, .github/instructions/go-mcp-server.instructions.md, .github/instructions/go.instructions.md, .github/instructions/mcp-best-practices.instructions.md, .github/instructions/security-and-owasp.instructions.md, .github/instructions/self-explanatory-code-commenting.instructions.md, AGENTS.md, CLAUDE.md
15/15Documentación legible por máquinas (llms.txt) — llms.txt presente
40/40Historial de commits legible — 99 de 99 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txt
legible_history_share1
agent_instruction_files.github/copilot-instructions.md, .github/instructions/code-review-generic.instructions.md, .github/instructions/context-engineering.instructions.md, .github/instructions/go-mcp-server.instructions.md, .github/instructions/go.instructions.md, .github/instructions/mcp-best-practices.instructions.md, .github/instructions/security-and-owasp.instructions.md, .github/instructions/self-explanatory-code-commenting.instructions.md, AGENTS.md, CLAUDE.md
agent_instruction_max_bytes54.565
Cómo se puntúa
18/18Arranque con un solo comando — Makefile
22/22Pruebas automatizadas
11/11Configuración de lint / formato — .golangci.yml, eslint.config.mjs
11/11Verificación estática de tipos — site/tsconfig.json
10/10Entorno reproducible — Dockerfile, lockfile
4/10Práctica demostrada con agentes — 2 de los últimos 100 commits con autoría o crédito de agente
8/8Mantenimiento automatizado — 1 de los últimos 100 commits son actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfilesgo.sum, pnpm-lock.yaml
has_dockerfile
typed_language
bootstrap_filesMakefile
has_devcontainerno
has_linter_config
typecheck_configssite/tsconfig.json
agent_commit_share0,02
toolchain_manifestsgo.mod
dependency_bot_commit_share0,01
Cómo se puntúa
45/45Código verificable por tipos — Go (tipado estático)
53.6/55Tamaños de archivo manejables — 45/1708 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageGo
largest_source_bytes316.328
source_files_sampled1708
oversized_source_files45
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
20/20Servidor MCP
40/40Ejemplos ejecutables — examples
Datos de entrada utilizados
example_dirsexamples
has_mcp_signal
api_schema_files

Datos clave

31estrellas de GitHub
2contribuidores
278commits en los últimos 12 meses
1días desde el último push
41versiones publicadas
1factor bus
0issues abiertas
Go, npmecosistemas de paquetes

Advertencias de recopilación de datos

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

Más detalle

Historial de estrellas y forks 0 ★ / 2 ⇿
0Estrellas
2Forks
5Versiones

Cuándo se añadió cada estrella y fork, recopilado de GitHub y agrupado por día. El crecimiento acumulado se sitúa justo encima de las adiciones diarias que lo componen, de modo que ambos se leen en conjunto: la acumulación orgánica sostenida no se parece en nada a un pico abrupto y efímero. Cuando esa diferencia es medible, se informa como autenticidad del crecimiento.

111222212026-052026-062026-06
Mayor 0Menor 1Parche 4
OpenSSF Scorecard 7.0 / 10
7.0agregado

Evaluación de seguridad independiente y agnóstica en cuanto a herramientas, procedente del proyecto de código abierto OpenSSF Scorecard. Cada comprobación premia una práctica de seguridad, no la herramienta de un proveedor concreto. Las comprobaciones que Scorecard no pudo determinar se marcan como n/d y se excluyen de la puntuación de seguridad (nunca se cuentan como cero).Scorecard v5.5.0 · 2026-07-31 00:38 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests25 out of 25 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
n/dDangerous-Workflowno workflows found
10Dependency-Update-Toolupdate tool detected
10Fuzzingproject is fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
10SASTSAST tool is run on all commits
10Security-Policysecurity policy file detected
8Signed-Releases5 out of the last 5 releases have a total of 5 signed artifacts.
n/dToken-PermissionsNo tokens found
9Vulnerabilities1 existing vulnerabilities detected
Dependencias directas 17
RegistroPaqueteRestricción de versiónManifiesto
Gocharm.land/bubbles/v2v2.1.1go.mod
Gocharm.land/bubbletea/v2v2.0.8go.mod
Gocharm.land/lipgloss/v2v2.0.5go.mod
Gogithub.com/creativeprojects/go-selfupdatev1.6.0go.mod
Gogithub.com/google/jsonschema-gov0.4.3go.mod
Gogithub.com/joho/godotenvv1.5.1go.mod
Gogithub.com/modelcontextprotocol/go-sdkv1.7.0go.mod
Gogithub.com/shirou/gopsutil/v4v4.26.6go.mod
Gogithub.com/tiktoken-go/tokenizerv0.8.1go.mod
Gogitlab.com/gitlab-org/api/client-go/v2v2.53.0go.mod
Gogolang.org/x/cryptov0.54.0go.mod
Gogolang.org/x/timev0.15.0go.mod
Gogolang.org/x/toolsv0.48.0go.mod
npm@astrojs/starlight^0.41.5site/package.json
npmastro^7.1.6site/package.json
npmmermaid^11.16.0site/package.json
npmsharp^0.35.3site/package.json
Todas las dependencias 1016

Conjunto completo de dependencias resueltas según el grafo de dependencias de GitHub: 17 paquetes directos y 999 indirectos (transitivos). El cierre transitivo es completo cuando el repositorio incluye un lockfile.

RegistroPaqueteVersiónRelación
Gocharm.land/bubbles/v2v2.1.1directa
Gocharm.land/bubbletea/v2v2.0.8directa
Gocharm.land/lipgloss/v2v2.0.5directa
Gogithub.com/creativeprojects/go-selfupdatev1.6.0directa
Gogithub.com/google/jsonschema-gov0.4.3directa
Gogithub.com/joho/godotenvv1.5.1directa
Gogithub.com/modelcontextprotocol/go-sdkv1.7.0directa
Gogithub.com/shirou/gopsutil/v4v4.26.6directa
Gogithub.com/tiktoken-go/tokenizerv0.8.1directa
Gogitlab.com/gitlab-org/api/client-go/v2v2.53.0directa
Gogolang.org/x/cryptov0.54.0directa
Gogolang.org/x/timev0.15.0directa
Gogolang.org/x/toolsv0.48.0directa
npm@astrojs/starlight0.41.5directa
npmastro7.1.6directa
npmmermaid11.16.0directa
npmsharp0.35.3directa
Gocode.gitea.io/sdk/giteav0.25.1indirecta
Gogithub.com/42wim/httpsigv1.2.4indirecta
Gogithub.com/atotto/clipboardv0.1.4indirecta
Gogithub.com/charmbracelet/colorprofilev0.4.3indirecta
Gogithub.com/charmbracelet/ultravioletv0.0.0-20260720091822-7cc6674724acindirecta
Gogithub.com/charmbracelet/x/ansiv0.11.7indirecta
Gogithub.com/charmbracelet/x/exp/goldenv0.0.0-20260602025833-85a30b5e440aindirecta
Gogithub.com/charmbracelet/x/termv0.2.2indirecta
Gogithub.com/charmbracelet/x/termiosv0.1.1indirecta
Gogithub.com/charmbracelet/x/windowsv0.2.2indirecta
Gogithub.com/clipperhouse/displaywidthv0.11.0indirecta
Gogithub.com/clipperhouse/uax29/v2v2.7.0indirecta
Gogithub.com/davidmz/go-pageantv1.0.2indirecta
Gogithub.com/dlclark/regexp2/v2v2.5.2indirecta
Gogithub.com/ebitengine/puregov0.10.2indirecta
Gogithub.com/fatih/colorv1.19.0indirecta
Gogithub.com/go-fed/httpsigv1.1.0indirecta
Gogithub.com/go-ole/go-olev1.3.0indirecta
Gogithub.com/google/go-github/v86v86.0.0indirecta
Gogithub.com/google/go-querystringv1.2.0indirecta
Gogithub.com/hashicorp/go-cleanhttpv0.5.2indirecta
Gogithub.com/hashicorp/go-retryablehttpv0.7.8indirecta
Gogithub.com/hashicorp/go-versionv1.9.0indirecta
Gogithub.com/kr/prettyv0.3.1indirecta
Gogithub.com/lucasb-eyer/go-colorfulv1.4.0indirecta
Gogithub.com/lufia/plan9statsv0.0.0-20260627054121-477a66015f15indirecta
Gogithub.com/masterminds/semver/v3v3.5.0indirecta
Gogithub.com/mattn/go-colorablev0.1.15indirecta
Gogithub.com/mattn/go-isattyv0.0.24indirecta
Gogithub.com/mattn/go-runewidthv0.0.27indirecta
Gogithub.com/muesli/cancelreaderv0.2.2indirecta
Gogithub.com/power-devops/perfstatv0.0.0-20240221224432-82ca36839d55indirecta
Gogithub.com/rivo/unisegv0.4.7indirecta
Gogithub.com/rogpeppe/go-internalv1.15.0indirecta
Gogithub.com/segmentio/asmv1.2.1indirecta
Gogithub.com/segmentio/encodingv0.5.4indirecta
Gogithub.com/tklauser/go-sysconfv0.4.0indirecta
Gogithub.com/tklauser/numcpusv0.12.0indirecta
Gogithub.com/ulikunitz/xzv0.5.16indirecta
Gogithub.com/xo/terminfov0.0.0-20220910002029-abceb7e1c41eindirecta
Gogithub.com/yosida95/uritemplate/v3v3.0.2indirecta
Gogithub.com/yusufpapurcu/wmiv1.2.4indirecta
Gogitlab.com/gitlab-org/api/client-gov1.46.0indirecta
Gogolang.org/x/expv0.0.0-20260727155853-b88d891fe743indirecta
Gogolang.org/x/modv0.38.0indirecta
Gogolang.org/x/oauth2v0.36.0indirecta
Gogolang.org/x/syncv0.22.0indirecta
Gogolang.org/x/sysv0.47.0indirecta
Gogopkg.in/check.v1v1.0.0-20201130134442-10cb98267c6cindirecta
Gogopkg.in/yaml.v3v3.0.1indirecta
npm@antfu/install-pkg1.1.0indirecta
npm@astrojs/check0.9.10indirecta
npm@astrojs/compiler2.13.1indirecta
npm@astrojs/compiler-binding0.3.1indirecta
npm@astrojs/compiler-binding0.3.2indirecta
npm@astrojs/compiler-binding-darwin-arm640.3.1indirecta
npm@astrojs/compiler-binding-darwin-arm640.3.2indirecta
npm@astrojs/compiler-binding-darwin-x640.3.1indirecta
npm@astrojs/compiler-binding-darwin-x640.3.2indirecta
npm@astrojs/compiler-binding-linux-arm64-gnu0.3.1indirecta
npm@astrojs/compiler-binding-linux-arm64-gnu0.3.2indirecta
npm@astrojs/compiler-binding-linux-arm64-musl0.3.1indirecta
npm@astrojs/compiler-binding-linux-arm64-musl0.3.2indirecta
npm@astrojs/compiler-binding-linux-x64-gnu0.3.1indirecta
npm@astrojs/compiler-binding-linux-x64-gnu0.3.2indirecta
npm@astrojs/compiler-binding-linux-x64-musl0.3.1indirecta
npm@astrojs/compiler-binding-linux-x64-musl0.3.2indirecta
npm@astrojs/compiler-binding-wasm32-wasi0.3.1indirecta
npm@astrojs/compiler-binding-wasm32-wasi0.3.2indirecta
npm@astrojs/compiler-binding-win32-arm64-msvc0.3.1indirecta
npm@astrojs/compiler-binding-win32-arm64-msvc0.3.2indirecta
npm@astrojs/compiler-binding-win32-x64-msvc0.3.1indirecta
npm@astrojs/compiler-binding-win32-x64-msvc0.3.2indirecta
npm@astrojs/compiler-rs0.3.1indirecta
npm@astrojs/compiler-rs0.3.2indirecta
npm@astrojs/internal-helpers0.10.0indirecta
npm@astrojs/internal-helpers0.10.1indirecta
npm@astrojs/internal-helpers0.10.2indirecta
npm@astrojs/language-server2.16.10indirecta
npm@astrojs/markdown-remark7.2.1indirecta
npm@astrojs/markdown-satteri0.3.2indirecta
npm@astrojs/markdown-satteri0.3.4indirecta
npm@astrojs/markdown-satteri0.3.5indirecta
npm@astrojs/mdx7.0.3indirecta
npm@astrojs/prism4.0.2indirecta
npm@astrojs/sitemap3.7.3indirecta
npm@astrojs/telemetry3.3.3indirecta
npm@astrojs/yaml2ts0.2.4indirecta
npm@babel/code-frame7.29.7indirecta
npm@babel/helper-string-parser7.29.7indirecta
npm@babel/helper-validator-identifier7.29.7indirecta
npm@babel/parser7.29.7indirecta
npm@babel/types7.29.7indirecta
npm@braintree/sanitize-url7.1.2indirecta
npm@bruits/satteri-darwin-arm640.9.4indirecta
npm@bruits/satteri-darwin-arm640.9.5indirecta
npm@bruits/satteri-darwin-x640.9.4indirecta
npm@bruits/satteri-darwin-x640.9.5indirecta
npm@bruits/satteri-linux-arm64-gnu0.9.4indirecta
npm@bruits/satteri-linux-arm64-gnu0.9.5indirecta
npm@bruits/satteri-linux-arm64-musl0.9.4indirecta
npm@bruits/satteri-linux-arm64-musl0.9.5indirecta
npm@bruits/satteri-linux-x64-gnu0.9.4indirecta
npm@bruits/satteri-linux-x64-gnu0.9.5indirecta
npm@bruits/satteri-linux-x64-musl0.9.4indirecta
npm@bruits/satteri-linux-x64-musl0.9.5indirecta
npm@bruits/satteri-wasm32-wasi0.9.4indirecta
npm@bruits/satteri-wasm32-wasi0.9.5indirecta
npm@bruits/satteri-win32-arm64-msvc0.9.4indirecta
npm@bruits/satteri-win32-arm64-msvc0.9.5indirecta
npm@bruits/satteri-win32-x64-msvc0.9.4indirecta
npm@bruits/satteri-win32-x64-msvc0.9.5indirecta
npm@capsizecss/unpack4.0.1indirecta
npm@chevrotain/types11.1.2indirecta
npm@clack/core1.4.3indirecta
npm@clack/prompts1.7.0indirecta
npm@ctrl/tinycolor4.2.0indirecta
npm@emmetio/abbreviation2.3.3indirecta
npm@emmetio/css-abbreviation2.1.8indirecta
npm@emmetio/css-parser0.4.1indirecta
npm@emmetio/html-matcher1.3.0indirecta
npm@emmetio/scanner1.0.4indirecta
npm@emmetio/stream-reader2.2.0indirecta
npm@emmetio/stream-reader-utils0.1.0indirecta
npm@emnapi/core1.11.1indirecta
npm@emnapi/runtime1.11.1indirecta
npm@emnapi/runtime1.11.2indirecta
npm@emnapi/wasi-threads1.2.2indirecta
npm@esbuild/aix-ppc640.28.1indirecta
npm@esbuild/android-arm0.28.1indirecta
npm@esbuild/android-arm640.28.1indirecta
npm@esbuild/android-x640.28.1indirecta
npm@esbuild/darwin-arm640.28.1indirecta
npm@esbuild/darwin-x640.28.1indirecta
npm@esbuild/freebsd-arm640.28.1indirecta
npm@esbuild/freebsd-x640.28.1indirecta
npm@esbuild/linux-arm0.28.1indirecta
npm@esbuild/linux-arm640.28.1indirecta
npm@esbuild/linux-ia320.28.1indirecta
npm@esbuild/linux-loong640.28.1indirecta
npm@esbuild/linux-mips64el0.28.1indirecta
npm@esbuild/linux-ppc640.28.1indirecta
npm@esbuild/linux-riscv640.28.1indirecta
npm@esbuild/linux-s390x0.28.1indirecta
npm@esbuild/linux-x640.28.1indirecta
npm@esbuild/netbsd-arm640.28.1indirecta
npm@esbuild/netbsd-x640.28.1indirecta
npm@esbuild/openbsd-arm640.28.1indirecta
npm@esbuild/openbsd-x640.28.1indirecta
npm@esbuild/openharmony-arm640.28.1indirecta
npm@esbuild/sunos-x640.28.1indirecta
npm@esbuild/win32-arm640.28.1indirecta
npm@esbuild/win32-ia320.28.1indirecta
npm@esbuild/win32-x640.28.1indirecta
npm@eslint-community/eslint-utils4.10.1indirecta
npm@eslint-community/eslint-utils4.9.1indirecta
npm@eslint-community/regexpp4.12.2indirecta
npm@eslint/config-array0.23.5indirecta
npm@eslint/config-helpers0.7.0indirecta
npm@eslint/core1.2.1indirecta
npm@eslint/object-schema3.0.5indirecta
npm@eslint/plugin-kit0.7.2indirecta
npm@expressive-code/core0.44.1indirecta
npm@expressive-code/plugin-frames0.44.1indirecta
npm@expressive-code/plugin-shiki0.44.1indirecta
npm@expressive-code/plugin-text-markers0.44.1indirecta
npm@fortawesome/fontawesome-free6.7.2indirecta
npm@html-validate/stylish6.0.0indirecta
npm@humanfs/core0.19.2indirecta
npm@humanfs/node0.16.8indirecta
npm@humanfs/types0.15.0indirecta
npm@humanwhocodes/module-importer1.0.1indirecta
npm@humanwhocodes/retry0.4.3indirecta
npm@iconify/types2.0.0indirecta
npm@iconify/utils3.1.3indirecta
npm@img/colour1.1.0indirecta
npm@img/sharp-darwin-arm640.35.3indirecta
npm@img/sharp-darwin-x640.35.3indirecta
npm@img/sharp-freebsd-wasm320.35.3indirecta
npm@img/sharp-libvips-darwin-arm641.3.2indirecta
npm@img/sharp-libvips-darwin-x641.3.2indirecta
npm@img/sharp-libvips-linux-arm1.3.2indirecta
npm@img/sharp-libvips-linux-arm641.3.2indirecta
npm@img/sharp-libvips-linux-ppc641.3.2indirecta
npm@img/sharp-libvips-linux-riscv641.3.2indirecta
npm@img/sharp-libvips-linux-s390x1.3.2indirecta
npm@img/sharp-libvips-linux-x641.3.2indirecta
npm@img/sharp-libvips-linuxmusl-arm641.3.2indirecta
npm@img/sharp-libvips-linuxmusl-x641.3.2indirecta
npm@img/sharp-linux-arm0.35.3indirecta
npm@img/sharp-linux-arm640.35.3indirecta
npm@img/sharp-linux-ppc640.35.3indirecta
npm@img/sharp-linux-riscv640.35.3indirecta
npm@img/sharp-linux-s390x0.35.3indirecta
npm@img/sharp-linux-x640.35.3indirecta
npm@img/sharp-linuxmusl-arm640.35.3indirecta
npm@img/sharp-linuxmusl-x640.35.3indirecta
npm@img/sharp-wasm320.35.3indirecta
npm@img/sharp-webcontainers-wasm320.35.3indirecta
npm@img/sharp-win32-arm640.35.3indirecta
npm@img/sharp-win32-ia320.35.3indirecta
npm@img/sharp-win32-x640.35.3indirecta
npm@jridgewell/sourcemap-codec1.5.5indirecta
npm@mdx-js/mdx3.1.1indirecta
npm@mermaid-js/parser1.2.0indirecta
npm@napi-rs/wasm-runtime1.1.6indirecta
npm@napi-rs/wasm-runtime1.2.0indirecta
npm@oslojs/encoding1.1.0indirecta
npm@oxc-project/types0.139.0indirecta
npm@pa11y/html_codesniffer2.6.0indirecta
npm@pagefind/darwin-arm641.5.2indirecta
npm@pagefind/darwin-x641.5.2indirecta
npm@pagefind/default-ui1.5.2indirecta
npm@pagefind/freebsd-x641.5.2indirecta
npm@pagefind/linux-arm641.5.2indirecta
npm@pagefind/linux-x641.5.2indirecta
npm@pagefind/windows-arm641.5.2indirecta
npm@pagefind/windows-x641.5.2indirecta
npm@puppeteer/browsers2.13.2indirecta
npm@rolldown/binding-android-arm641.1.5indirecta
npm@rolldown/binding-darwin-arm641.1.5indirecta
npm@rolldown/binding-darwin-x641.1.5indirecta
npm@rolldown/binding-freebsd-x641.1.5indirecta
npm@rolldown/binding-linux-arm-gnueabihf1.1.5indirecta
npm@rolldown/binding-linux-arm64-gnu1.1.5indirecta
npm@rolldown/binding-linux-arm64-musl1.1.5indirecta
npm@rolldown/binding-linux-ppc64-gnu1.1.5indirecta
npm@rolldown/binding-linux-s390x-gnu1.1.5indirecta
npm@rolldown/binding-linux-x64-gnu1.1.5indirecta
npm@rolldown/binding-linux-x64-musl1.1.5indirecta
npm@rolldown/binding-openharmony-arm641.1.5indirecta
npm@rolldown/binding-wasm32-wasi1.1.5indirecta
npm@rolldown/binding-win32-arm64-msvc1.1.5indirecta
npm@rolldown/binding-win32-x64-msvc1.1.5indirecta
npm@rolldown/pluginutils1.0.1indirecta
npm@rollup/pluginutils5.4.0indirecta
npm@rollup/rollup-android-arm-eabi4.62.0indirecta
npm@rollup/rollup-android-arm644.62.0indirecta
npm@rollup/rollup-darwin-arm644.62.0indirecta
npm@rollup/rollup-darwin-x644.62.0indirecta
npm@rollup/rollup-freebsd-arm644.62.0indirecta
npm@rollup/rollup-freebsd-x644.62.0indirecta
npm@rollup/rollup-linux-arm-gnueabihf4.62.0indirecta
npm@rollup/rollup-linux-arm-musleabihf4.62.0indirecta
npm@rollup/rollup-linux-arm64-gnu4.62.0indirecta
npm@rollup/rollup-linux-arm64-musl4.62.0indirecta
npm@rollup/rollup-linux-loong64-gnu4.62.0indirecta
npm@rollup/rollup-linux-loong64-musl4.62.0indirecta
npm@rollup/rollup-linux-ppc64-gnu4.62.0indirecta
npm@rollup/rollup-linux-ppc64-musl4.62.0indirecta
npm@rollup/rollup-linux-riscv64-gnu4.62.0indirecta
npm@rollup/rollup-linux-riscv64-musl4.62.0indirecta
npm@rollup/rollup-linux-s390x-gnu4.62.0indirecta
npm@rollup/rollup-linux-x64-gnu4.62.0indirecta
npm@rollup/rollup-linux-x64-musl4.62.0indirecta
npm@rollup/rollup-openbsd-x644.62.0indirecta
npm@rollup/rollup-openharmony-arm644.62.0indirecta
npm@rollup/rollup-win32-arm64-msvc4.62.0indirecta
npm@rollup/rollup-win32-ia32-msvc4.62.0indirecta
npm@rollup/rollup-win32-x64-gnu4.62.0indirecta
npm@rollup/rollup-win32-x64-msvc4.62.0indirecta
npm@shikijs/core4.3.1indirecta
npm@shikijs/engine-javascript4.3.1indirecta
npm@shikijs/engine-oniguruma4.3.1indirecta
npm@shikijs/langs4.3.1indirecta
npm@shikijs/primitive4.3.1indirecta
npm@shikijs/themes4.3.1indirecta
npm@shikijs/types4.3.1indirecta
npm@shikijs/vscode-textmate10.0.2indirecta
npm@sidvind/better-ajv-errors7.0.0indirecta
npm@tootallnate/quickjs-emscripten0.23.0indirecta
npm@tybys/wasm-util0.10.3indirecta
npm@types/d37.4.3indirecta
npm@types/d3-array3.2.2indirecta
npm@types/d3-axis3.0.6indirecta
npm@types/d3-brush3.0.6indirecta
npm@types/d3-chord3.0.6indirecta
npm@types/d3-color3.1.3indirecta
npm@types/d3-contour3.0.6indirecta
npm@types/d3-delaunay6.0.4indirecta
npm@types/d3-dispatch3.0.7indirecta
npm@types/d3-drag3.0.7indirecta
npm@types/d3-dsv3.0.7indirecta
npm@types/d3-ease3.0.2indirecta
npm@types/d3-fetch3.0.7indirecta
npm@types/d3-force3.0.10indirecta
npm@types/d3-format3.0.4indirecta
npm@types/d3-geo3.1.0indirecta
npm@types/d3-hierarchy3.1.7indirecta
npm@types/d3-interpolate3.0.4indirecta
npm@types/d3-path3.1.1indirecta
npm@types/d3-polygon3.0.2indirecta
npm@types/d3-quadtree3.0.6indirecta
npm@types/d3-random3.0.3indirecta
npm@types/d3-scale4.0.9indirecta
npm@types/d3-scale-chromatic3.1.0indirecta
npm@types/d3-selection3.0.11indirecta
npm@types/d3-shape3.1.8indirecta
npm@types/d3-time3.0.4indirecta
npm@types/d3-time-format4.0.3indirecta
npm@types/d3-timer3.0.2indirecta
npm@types/d3-transition3.0.9indirecta
npm@types/d3-zoom3.0.8indirecta
npm@types/debug4.1.13indirecta
npm@types/esrecurse4.3.1indirecta
npm@types/estree1.0.9indirecta
npm@types/estree-jsx1.0.5indirecta
npm@types/geojson7946.0.16indirecta
npm@types/hast3.0.4indirecta
npm@types/hast3.0.5indirecta
npm@types/js-yaml4.0.9indirecta
npm@types/json-schema7.0.15indirecta
npm@types/mdast4.0.4indirecta
npm@types/mdx2.0.14indirecta
npm@types/ms2.1.0indirecta
npm@types/nlcst2.0.3indirecta
npm@types/node24.13.3indirecta
npm@types/node26.1.1indirecta
npm@types/picomatch4.0.3indirecta
npm@types/sarif2.1.7indirecta
npm@types/sax1.2.7indirecta
npm@types/trusted-types2.0.7indirecta
npm@types/unist2.0.11indirecta
npm@types/unist3.0.3indirecta
npm@types/yauzl2.10.3indirecta
npm@typescript-eslint/eslint-plugin8.65.0indirecta
npm@typescript-eslint/parser8.65.0indirecta
npm@typescript-eslint/project-service8.65.0indirecta
npm@typescript-eslint/scope-manager8.65.0indirecta
npm@typescript-eslint/tsconfig-utils8.65.0indirecta
npm@typescript-eslint/type-utils8.65.0indirecta
npm@typescript-eslint/types8.65.0indirecta
npm@typescript-eslint/typescript-estree8.65.0indirecta
npm@typescript-eslint/utils8.65.0indirecta
npm@typescript-eslint/visitor-keys8.65.0indirecta
npm@ungap/structured-clone1.3.2indirecta
npm@ungap/structured-clone1.3.3indirecta
npm@upsetjs/venn.js2.0.0indirecta
npm@volar/kit2.4.28indirecta
npm@volar/language-core2.4.28indirecta
npm@volar/language-server2.4.28indirecta
npm@volar/language-service2.4.28indirecta
npm@volar/source-map2.4.28indirecta
npm@volar/typescript2.4.28indirecta
npm@vscode/emmet-helper2.11.0indirecta
npm@vscode/l10n0.0.18indirecta
npmacorn8.17.0indirecta
npmacorn-jsx5.3.2indirecta
npmagent-base7.1.4indirecta
npmajv6.15.0indirecta
npmajv8.20.0indirecta
npmajv-draft-041.0.0indirecta
npmam-i-vibing0.4.0indirecta
npmansi-escapes7.3.0indirecta
npmansi-regex5.0.1indirecta
npmansi-regex6.2.2indirecta
npmansi-styles4.3.0indirecta
npmansi-styles6.2.3indirecta
npmanymatch3.1.3indirecta
npmarg5.0.2indirecta
npmargparse2.0.1indirecta
npmaria-query5.3.2indirecta
npmarray-iterate2.0.1indirecta
npmarray-union1.0.2indirecta
npmarray-uniq1.0.3indirecta
npmast-types0.13.4indirecta
npmastring1.9.0indirecta
npmastro-eslint-parser3.0.0indirecta
npmastro-expressive-code0.44.1indirecta
npmasync3.2.6indirecta
npmaxe-core4.11.4indirecta
npmaxobject-query4.1.0indirecta
npmb4a1.8.1indirecta
npmbail2.0.2indirecta
npmbalanced-match1.0.2indirecta
npmbalanced-match4.0.4indirecta
npmbare-events2.9.1indirecta
npmbare-fs4.7.2indirecta
npmbare-os3.9.2indirecta
npmbare-path3.0.1indirecta
npmbare-stream2.13.3indirecta
npmbare-url2.4.5indirecta
npmbasic-ftp5.3.1indirecta
npmbcp-472.1.1indirecta
npmbcp-47-match2.0.3indirecta
npmbfj9.1.3indirecta
npmboolbase1.0.0indirecta
npmbrace-expansion1.1.16indirecta
npmbrace-expansion5.0.8indirecta
npmbuffer-crc320.2.13indirecta
npmcallsites3.1.0indirecta
npmccount2.0.1indirecta
npmchalk4.1.2indirecta
npmcharacter-entities2.0.2indirecta
npmcharacter-entities-html42.1.0indirecta
npmcharacter-entities-legacy3.0.0indirecta
npmcharacter-reference-invalid2.0.1indirecta
npmcheck-types11.2.3indirecta
npmcheerio1.0.0indirecta
npmcheerio-select2.1.0indirecta
npmchokidar4.0.3indirecta
npmchokidar5.0.0indirecta
npmchromium-bidi14.0.0indirecta
npmci-info4.4.0indirecta
npmcliui8.0.1indirecta
npmcliui9.0.1indirecta
npmclsx2.1.1indirecta
npmcollapse-white-space2.1.0indirecta
npmcolor-convert2.0.1indirecta
npmcolor-name1.1.4indirecta
npmcomma-separated-tokens2.0.3indirecta
npmcommander11.1.0indirecta
npmcommander14.0.3indirecta
npmcommander7.2.0indirecta
npmcommander8.3.0indirecta
npmcommon-ancestor-path2.0.0indirecta
npmconcat-map0.0.1indirecta
npmcookie2.0.1indirecta
npmcookie-es1.2.3indirecta
npmcose-base1.0.3indirecta
npmcose-base2.2.0indirecta
npmcosmiconfig9.0.2indirecta
npmcross-spawn7.0.6indirecta
npmcrossws0.3.5indirecta
npmcss-select5.2.2indirecta
npmcss-selector-parser3.3.0indirecta
npmcss-tree2.2.1indirecta
npmcss-tree3.2.1indirecta
npmcss-what6.2.2indirecta
npmcssesc3.0.0indirecta
npmcsso5.0.5indirecta
npmcytoscape3.34.0indirecta
npmcytoscape-cose-bilkent4.1.0indirecta
npmcytoscape-fcose2.2.0indirecta
npmd37.9.0indirecta
npmd3-array2.12.1indirecta
npmd3-array3.2.4indirecta
npmd3-axis3.0.0indirecta
npmd3-brush3.0.0indirecta
npmd3-chord3.0.1indirecta
npmd3-color3.1.0indirecta
npmd3-contour4.0.2indirecta
npmd3-delaunay6.0.4indirecta
npmd3-dispatch3.0.1indirecta
npmd3-drag3.0.0indirecta
npmd3-dsv3.0.1indirecta
npmd3-ease3.0.1indirecta
npmd3-fetch3.0.1indirecta
npmd3-force3.0.0indirecta
npmd3-format3.1.2indirecta
npmd3-geo3.1.1indirecta
npmd3-hierarchy3.1.2indirecta
npmd3-interpolate3.0.1indirecta
npmd3-path1.0.9indirecta
npmd3-path3.1.0indirecta
npmd3-polygon3.0.1indirecta
npmd3-quadtree3.0.1indirecta
npmd3-random3.0.1indirecta
npmd3-sankey0.12.3indirecta
npmd3-scale4.0.2indirecta
npmd3-scale-chromatic3.1.0indirecta
npmd3-selection3.0.0indirecta
npmd3-shape1.3.7indirecta
npmd3-shape3.2.0indirecta
npmd3-time3.1.0indirecta
npmd3-time-format4.1.0indirecta
npmd3-timer3.0.1indirecta
npmd3-transition3.0.1indirecta
npmd3-zoom3.0.0indirecta
npmdagre-d3-es7.0.14indirecta
npmdata-uri-to-buffer6.0.2indirecta
npmdayjs1.11.21indirecta
npmdebug4.4.3indirecta
npmdecode-named-character-reference1.3.0indirecta
npmdeep-is0.1.4indirecta
npmdefu6.1.7indirecta
npmdegenerator5.0.1indirecta
npmdelaunator5.1.0indirecta
npmdequal2.0.3indirecta
npmdestr2.0.5indirecta
npmdetect-libc2.1.2indirecta
npmdevalue5.8.2indirecta
npmdevlop1.1.0indirecta
npmdevtools-protocol0.0.1608973indirecta
npmdiff8.0.4indirecta
npmdirection2.0.1indirecta
npmdom-serializer2.0.0indirecta
npmdomelementtype2.3.0indirecta
npmdomhandler5.0.3indirecta
npmdompurify3.4.12indirecta
npmdomutils3.2.2indirecta
npmdset3.1.4indirecta
npmemmet2.4.11indirecta
npmemoji-regex10.6.0indirecta
npmemoji-regex8.0.0indirecta
npmencoding-sniffer0.2.1indirecta
npmend-of-stream1.4.5indirecta
npmentities4.5.0indirecta
npmentities6.0.1indirecta
npmenv-paths2.2.1indirecta
npmenvinfo7.21.0indirecta
npmenvironment1.1.0indirecta
npmerror-ex1.3.4indirecta
npmes-module-lexer2.3.1indirecta
npmes-toolkit1.49.0indirecta
npmesast-util-from-estree2.0.0indirecta
npmesast-util-from-js2.0.1indirecta
npmesbuild0.28.1indirecta
npmescalade3.2.0indirecta
npmescape-string-regexp4.0.0indirecta
npmescape-string-regexp5.0.0indirecta
npmescodegen2.1.0indirecta
npmeslint10.8.0indirecta
npmeslint-config-prettier10.1.8indirecta
npmeslint-plugin-astro3.0.1indirecta
npmeslint-scope9.1.2indirecta
npmeslint-visitor-keys3.4.3indirecta
npmeslint-visitor-keys5.0.1indirecta
npmespree11.2.0indirecta
npmesprima4.0.1indirecta
npmesquery1.7.0indirecta
npmesrecurse4.3.0indirecta
npmestraverse5.3.0indirecta
npmestree-util-attach-comments3.0.0indirecta
npmestree-util-build-jsx3.0.1indirecta
npmestree-util-is-identifier-name3.0.0indirecta
npmestree-util-scope1.0.0indirecta
npmestree-util-to-js2.0.0indirecta
npmestree-util-visit2.0.0indirecta
npmestree-walker2.0.2indirecta
npmestree-walker3.0.3indirecta
npmesutils2.0.3indirecta
npmeventemitter35.0.4indirecta
npmevents-universal1.0.1indirecta
npmexpressive-code0.44.1indirecta
npmextend3.0.2indirecta
npmextract-zip2.0.1indirecta
npmfast-deep-equal3.1.3indirecta
npmfast-fifo1.3.2indirecta
npmfast-json-stable-stringify2.1.0indirecta
npmfast-levenshtein2.0.6indirecta
npmfast-string-truncated-width3.0.3indirecta
npmfast-string-width3.0.2indirecta
npmfast-uri3.1.4indirecta
npmfast-wrap-ansi0.2.2indirecta
npmfd-slicer1.1.0indirecta
npmfdir6.5.0indirecta
npmfile-entry-cache8.0.0indirecta
npmfile-url3.0.0indirecta
npmfind-up5.0.0indirecta
npmflat-cache4.0.1indirecta
npmflatted3.4.3indirecta
npmflattie1.1.1indirecta
npmfontace0.4.1indirecta
npmfontkitten1.0.3indirecta
npmfs-extra11.3.5indirecta
npmfs.realpath1.0.0indirecta
npmfsevents2.3.2indirecta
npmfsevents2.3.3indirecta
npmfunction-bind1.1.2indirecta
npmget-caller-file2.0.5indirecta
npmget-east-asian-width1.6.0indirecta
npmget-stream5.2.0indirecta
npmget-tsconfig5.0.0-beta.4indirecta
npmget-uri6.0.5indirecta
npmgithub-slugger2.0.0indirecta
npmglob13.0.6indirecta
npmglob7.2.3indirecta
npmglob-parent6.0.2indirecta
npmglobals17.7.0indirecta
npmglobby6.1.0indirecta
npmgraceful-fs4.2.11indirecta
npmh31.15.11indirecta
npmhachure-fill0.5.2indirecta
npmhas-flag4.0.0indirecta
npmhas-flag5.0.1indirecta
npmhasown2.0.4indirecta
npmhast-util-embedded3.0.0indirecta
npmhast-util-format1.1.0indirecta
npmhast-util-from-dom5.0.1indirecta
npmhast-util-from-html2.0.3indirecta
npmhast-util-from-html-isomorphic2.0.0indirecta
npmhast-util-from-parse58.0.3indirecta
npmhast-util-has-property3.0.0indirecta
npmhast-util-is-body-ok-link3.0.1indirecta
npmhast-util-is-element3.0.0indirecta
npmhast-util-minify-whitespace1.0.1indirecta
npmhast-util-parse-selector4.0.0indirecta
npmhast-util-phrasing3.0.1indirecta
npmhast-util-raw9.1.0indirecta
npmhast-util-select6.0.4indirecta
npmhast-util-to-estree3.1.3indirecta
npmhast-util-to-html9.0.5indirecta
npmhast-util-to-jsx-runtime2.3.6indirecta
npmhast-util-to-parse58.0.1indirecta
npmhast-util-to-string3.0.1indirecta
npmhast-util-to-text4.0.2indirecta
npmhast-util-whitespace3.0.0indirecta
npmhastscript9.0.1indirecta
npmhoopy0.1.4indirecta
npmhtml-escaper3.0.3indirecta
npmhtml-validate11.6.0indirecta
npmhtml-void-elements3.0.0indirecta
npmhtml-whitespace-sensitive-tag-names3.0.1indirecta
npmhtmlhint1.9.2indirecta
npmhtmlparser29.1.0indirecta
npmhttp-cache-semantics4.2.0indirecta
npmhttp-proxy-agent7.0.2indirecta
npmhttps-proxy-agent7.0.6indirecta
npmi18next26.3.6indirecta
npmiconv-lite0.6.3indirecta
npmignore5.3.2indirecta
npmignore7.0.6indirecta
npmimport-fresh3.3.1indirecta
npmimport-meta-resolve4.2.0indirecta
npmimurmurhash0.1.4indirecta
npminflight1.0.6indirecta
npminherits2.0.4indirecta
npminline-style-parser0.2.7indirecta
npminternmap1.0.1indirecta
npminternmap2.0.3indirecta
npmip-address10.2.0indirecta
npmiron-webcrypto1.2.1indirecta
npmis3.3.2indirecta
npmis-absolute-url5.0.0indirecta
npmis-alphabetical2.0.1indirecta
npmis-alphanumerical2.0.1indirecta
npmis-arrayish0.2.1indirecta
npmis-decimal2.0.1indirecta
npmis-docker4.0.0indirecta
npmis-extglob2.1.1indirecta
npmis-fullwidth-code-point3.0.0indirecta
npmis-glob4.0.3indirecta
npmis-hexadecimal2.0.1indirecta
npmis-plain-obj4.1.0indirecta
npmisexe2.0.0indirecta
npmjs-tokens4.0.0indirecta
npmjs-yaml4.3.0indirecta
npmjson-buffer3.0.1indirecta
npmjson-parse-even-better-errors2.3.1indirecta
npmjson-schema-traverse0.4.1indirecta
npmjson-schema-traverse1.0.0indirecta
npmjson-stable-stringify-without-jsonify1.0.1indirecta
npmjsonc-parser2.3.1indirecta
npmjsonc-parser3.3.1indirecta
npmjsonfile6.2.1indirecta
npmkatex0.16.47indirecta
npmkeyv4.5.4indirecta
npmkhroma2.1.0indirecta
npmkleur3.0.3indirecta
npmkleur4.1.5indirecta
npmklona2.0.6indirecta
npmlayout-base1.0.2indirecta
npmlayout-base2.0.1indirecta
npmlevn0.4.1indirecta
npmlightningcss1.33.0indirecta
npmlightningcss-android-arm641.33.0indirecta
npmlightningcss-darwin-arm641.33.0indirecta
npmlightningcss-darwin-x641.33.0indirecta
npmlightningcss-freebsd-x641.33.0indirecta
npmlightningcss-linux-arm-gnueabihf1.33.0indirecta
npmlightningcss-linux-arm64-gnu1.33.0indirecta
npmlightningcss-linux-arm64-musl1.33.0indirecta
npmlightningcss-linux-x64-gnu1.33.0indirecta
npmlightningcss-linux-x64-musl1.33.0indirecta
npmlightningcss-win32-arm64-msvc1.33.0indirecta
npmlightningcss-win32-x64-msvc1.33.0indirecta
npmlines-and-columns1.2.4indirecta
npmlocate-path6.0.0indirecta
npmlodash4.18.1indirecta
npmlodash-es4.18.1indirecta
npmlongest-streak3.1.0indirecta
npmlru-cache11.5.1indirecta
npmlru-cache11.5.2indirecta
npmlru-cache7.18.3indirecta
npmmagic-string0.30.21indirecta
npmmagic-string1.1.0indirecta
npmmagicast0.5.3indirecta
npmmarkdown-extensions2.0.0indirecta
npmmarkdown-table3.0.4indirecta
npmmarked16.4.2indirecta
npmmdast-util-definitions6.0.0indirecta
npmmdast-util-directive3.1.0indirecta
npmmdast-util-find-and-replace3.0.2indirecta
npmmdast-util-from-markdown2.0.3indirecta
npmmdast-util-gfm3.1.0indirecta
npmmdast-util-gfm-autolink-literal2.0.1indirecta
npmmdast-util-gfm-footnote2.1.0indirecta
npmmdast-util-gfm-strikethrough2.0.0indirecta
npmmdast-util-gfm-table2.0.0indirecta
npmmdast-util-gfm-task-list-item2.0.0indirecta
npmmdast-util-mdx3.0.0indirecta
npmmdast-util-mdx-expression2.0.1indirecta
npmmdast-util-mdx-jsx3.2.0indirecta
npmmdast-util-mdxjs-esm2.0.1indirecta
npmmdast-util-phrasing4.1.0indirecta
npmmdast-util-to-hast13.2.1indirecta
npmmdast-util-to-markdown2.1.2indirecta
npmmdast-util-to-string4.0.0indirecta
npmmdn-data2.0.28indirecta
npmmdn-data2.27.1indirecta
npmmermaid-isomorphic3.1.0indirecta
npmmicromark4.0.2indirecta
npmmicromark-core-commonmark2.0.3indirecta
npmmicromark-extension-directive4.0.0indirecta
npmmicromark-extension-gfm3.0.0indirecta
npmmicromark-extension-gfm-autolink-literal2.1.0indirecta
npmmicromark-extension-gfm-footnote2.1.0indirecta
npmmicromark-extension-gfm-strikethrough2.1.0indirecta
npmmicromark-extension-gfm-table2.1.1indirecta
npmmicromark-extension-gfm-tagfilter2.0.0indirecta
npmmicromark-extension-gfm-task-list-item2.1.0indirecta
npmmicromark-extension-mdx-expression3.0.1indirecta
npmmicromark-extension-mdx-jsx3.0.2indirecta
npmmicromark-extension-mdx-md2.0.0indirecta
npmmicromark-extension-mdxjs3.0.0indirecta
npmmicromark-extension-mdxjs-esm3.0.0indirecta
npmmicromark-factory-destination2.0.1indirecta
npmmicromark-factory-label2.0.1indirecta
npmmicromark-factory-mdx-expression2.0.3indirecta
npmmicromark-factory-space2.0.1indirecta
npmmicromark-factory-title2.0.1indirecta
npmmicromark-factory-whitespace2.0.1indirecta
npmmicromark-util-character2.1.1indirecta
npmmicromark-util-chunked2.0.1indirecta
npmmicromark-util-classify-character2.0.1indirecta
npmmicromark-util-combine-extensions2.0.1indirecta
npmmicromark-util-decode-numeric-character-reference2.0.2indirecta
npmmicromark-util-decode-string2.0.1indirecta
npmmicromark-util-encode2.0.1indirecta
npmmicromark-util-events-to-acorn2.0.3indirecta
npmmicromark-util-html-tag-name2.0.1indirecta
npmmicromark-util-normalize-identifier2.0.1indirecta
npmmicromark-util-resolve-all2.0.1indirecta
npmmicromark-util-sanitize-uri2.0.1indirecta
npmmicromark-util-subtokenize2.1.0indirecta
npmmicromark-util-symbol2.0.1indirecta
npmmicromark-util-types2.0.2indirecta
npmmini-svg-data-uri1.4.4indirecta
npmminimatch10.2.5indirecta
npmminimatch3.1.5indirecta
npmminipass7.1.3indirecta
npmmitt3.0.1indirecta
npmmrmime2.0.1indirecta
npmms2.1.3indirecta
npmmuggle-string0.4.1indirecta
npmmustache4.2.0indirecta
npmnanoid3.3.16indirecta
npmnatural-compare1.4.0indirecta
npmneotraverse1.0.1indirecta
npmnetmask2.1.1indirecta
npmnlcst-to-string4.0.0indirecta
npmnode-fetch2.7.0indirecta
npmnode-fetch-native1.6.7indirecta
npmnode-mock-http1.0.4indirecta
npmnode-sarif-builder3.2.0indirecta
npmnode.extend2.0.3indirecta
npmnormalize-path3.0.0indirecta
npmnth-check2.1.1indirecta
npmobject-assign4.1.1indirecta
npmobug2.1.4indirecta
npmofetch1.5.1indirecta
npmohash2.0.11indirecta
npmonce1.4.0indirecta
npmoniguruma-parser0.12.2indirecta
npmoniguruma-to-es4.3.6indirecta
npmoptionator0.9.4indirecta
npmp-limit3.1.0indirecta
npmp-limit7.3.1indirecta
npmp-locate5.0.0indirecta
npmp-queue9.3.1indirecta
npmp-timeout7.0.1indirecta
npmpa11y9.1.1indirecta
npmpa11y-ci4.1.1indirecta
npmpac-proxy-agent7.2.0indirecta
npmpac-resolver7.0.1indirecta
npmpackage-manager-detector1.7.0indirecta
npmpagefind1.5.2indirecta
npmparent-module1.0.1indirecta
npmparse-entities4.0.2indirecta
npmparse-json5.2.0indirecta
npmparse-latin7.0.0indirecta
npmparse57.3.0indirecta
npmparse5-htmlparser2-tree-adapter7.1.0indirecta
npmparse5-parser-stream7.1.2indirecta
npmpath-browserify1.0.1indirecta
npmpath-data-parser0.1.0indirecta
npmpath-exists4.0.0indirecta
npmpath-is-absolute1.0.1indirecta
npmpath-key3.1.1indirecta
npmpath-scurry2.0.2indirecta
npmpend1.2.0indirecta
npmpiccolore0.1.3indirecta
npmpicocolors1.1.1indirecta
npmpicomatch2.3.2indirecta
npmpicomatch4.0.4indirecta
npmpicomatch4.0.5indirecta
npmpify2.3.0indirecta
npmpinkie2.0.4indirecta
npmpinkie-promise2.0.1indirecta
npmplaywright1.62.0indirecta
npmplaywright-core1.62.0indirecta
npmpoints-on-curve0.2.0indirecta
npmpoints-on-path0.2.1indirecta
npmpostcss8.5.20indirecta
npmpostcss8.5.23indirecta
npmpostcss-nested6.2.0indirecta
npmpostcss-selector-parser6.1.4indirecta
npmpostcss-selector-parser7.1.4indirecta
npmprelude-ls1.2.1indirecta
npmprepend-http3.0.1indirecta
npmprettier3.9.6indirecta
npmprismjs1.30.0indirecta
npmprocess-ancestry0.1.0indirecta
npmprogress2.0.3indirecta
npmprompts2.4.2indirecta
npmproperty-information7.2.0indirecta
npmprotocolify3.0.0indirecta
npmproxy-agent6.5.0indirecta
npmproxy-from-env1.1.0indirecta
npmpump3.0.4indirecta
npmpunycode2.3.1indirecta
npmpuppeteer24.43.1indirecta
npmpuppeteer-core24.43.1indirecta
npmradix31.1.2indirecta
npmreaddirp4.1.2indirecta
npmreaddirp5.0.0indirecta
npmrecma-build-jsx1.0.0indirecta
npmrecma-jsx1.0.1indirecta
npmrecma-parse1.0.0indirecta
npmrecma-stringify1.0.0indirecta
npmregex6.1.0indirecta
npmregex-recursion6.0.2indirecta
npmregex-utilities2.3.0indirecta
npmrehype13.0.2indirecta
npmrehype-expressive-code0.44.1indirecta
npmrehype-format5.0.1indirecta
npmrehype-mermaid3.0.0indirecta
npmrehype-parse9.0.1indirecta
npmrehype-raw7.0.0indirecta
npmrehype-recma1.0.0indirecta
npmrehype-stringify10.0.1indirecta
npmremark-directive4.0.0indirecta
npmremark-gfm4.0.1indirecta
npmremark-mdx3.1.1indirecta
npmremark-parse11.0.0indirecta
npmremark-rehype11.1.2indirecta
npmremark-smartypants3.0.3indirecta
npmremark-stringify11.0.0indirecta
npmrequest-light0.5.8indirecta
npmrequest-light0.7.0indirecta
npmrequire-directory2.1.1indirecta
npmrequire-from-string2.0.2indirecta
npmresolve-from4.0.0indirecta
npmresolve-pkg-maps1.0.0indirecta
npmretext9.0.0indirecta
npmretext-latin4.0.0indirecta
npmretext-smartypants6.2.0indirecta
npmretext-stringify4.0.0indirecta
npmrobust-predicates3.0.3indirecta
npmrolldown1.1.5indirecta
npmrollup4.62.0indirecta
npmroughjs4.6.6indirecta
npmrw1.3.3indirecta
npmsafer-buffer2.1.2indirecta
npmsatteri0.9.4indirecta
npmsatteri0.9.5indirecta
npmsax1.6.0indirecta
npmsax1.6.1indirecta
npmsemver7.7.4indirecta
npmsemver7.8.5indirecta
npmshebang-command2.0.0indirecta
npmshebang-regex3.0.0indirecta
npmshiki4.3.1indirecta
npmsisteransi1.0.5indirecta
npmsitemap9.0.1indirecta
npmsmart-buffer4.2.0indirecta
npmsmol-toml1.7.0indirecta
npmsocks2.8.9indirecta
npmsocks-proxy-agent8.0.5indirecta
npmsource-map0.6.1indirecta
npmsource-map0.7.6indirecta
npmsource-map-js1.2.1indirecta
npmspace-separated-tokens2.0.2indirecta
npmstarlight-links-validator0.25.2indirecta
npmstream-replace-string2.0.0indirecta
npmstreamx2.28.0indirecta
npmstring-width4.2.3indirecta
npmstring-width7.2.0indirecta
npmstring-width8.2.2indirecta
npmstringify-entities4.0.4indirecta
npmstrip-ansi6.0.1indirecta
npmstrip-ansi7.2.0indirecta
npmstrip-json-comments3.1.1indirecta
npmstyle-to-js1.1.21indirecta
npmstyle-to-object1.0.14indirecta
npmstylis4.4.0indirecta
npmsupports-color10.2.2indirecta
npmsupports-color7.2.0indirecta
npmsupports-hyperlinks4.5.0indirecta
npmsvgo4.0.2indirecta
npmtar-fs3.1.3indirecta
npmtar-stream3.2.0indirecta
npmteex1.0.1indirecta
npmterminal-link5.0.0indirecta
npmtext-decoder1.2.7indirecta
npmtiny-inflate1.0.3indirecta
npmtinyclip0.1.15indirecta
npmtinyexec1.2.4indirecta
npmtinyglobby0.2.17indirecta
npmtr460.0.3indirecta
npmtrim-lines3.0.1indirecta
npmtrough2.2.0indirecta
npmtryer1.0.1indirecta
npmts-api-utils2.5.0indirecta
npmts-dedent2.3.0indirecta
npmtslib2.8.1indirecta
npmtype-check0.4.0indirecta
npmtyped-query-selector2.12.2indirecta
npmtypesafe-path0.2.2indirecta
npmtypescript6.0.3indirecta
npmtypescript-auto-import-cache0.3.6indirecta
npmufo1.6.4indirecta
npmultrahtml1.7.0indirecta
npmuncrypto0.1.3indirecta
npmundici6.27.0indirecta
npmundici-types7.18.2indirecta
npmundici-types8.3.0indirecta
npmunified11.0.5indirecta
npmunifont0.7.4indirecta
npmunist-util-find-after5.0.0indirecta
npmunist-util-is6.0.1indirecta
npmunist-util-modify-children4.0.0indirecta
npmunist-util-position5.0.0indirecta
npmunist-util-position-from-estree2.0.0indirecta
npmunist-util-remove-position5.0.0indirecta
npmunist-util-stringify-position4.0.0indirecta
npmunist-util-visit5.1.0indirecta
npmunist-util-visit-children3.0.0indirecta
npmunist-util-visit-parents6.0.2indirecta
npmuniversalify2.0.1indirecta
npmunstorage1.17.5indirecta
npmuri-js4.4.1indirecta
npmurl-extras0.1.0indirecta
npmutil-deprecate1.0.2indirecta
npmuuid14.0.1indirecta
npmvfile6.0.3indirecta
npmvfile-location5.0.3indirecta
npmvfile-message4.0.3indirecta
npmvite8.1.5indirecta
npmvitefu1.1.3indirecta
npmvolar-service-css0.0.70indirecta
npmvolar-service-emmet0.0.70indirecta
npmvolar-service-html0.0.70indirecta
npmvolar-service-prettier0.0.70indirecta
npmvolar-service-typescript0.0.70indirecta
npmvolar-service-typescript-twoslash-queries0.0.70indirecta
npmvolar-service-yaml0.0.70indirecta
npmvscode-css-languageservice6.3.10indirecta
npmvscode-html-languageservice5.6.2indirecta
npmvscode-json-languageservice4.1.8indirecta
npmvscode-jsonrpc8.2.0indirecta
npmvscode-jsonrpc9.0.0indirecta
npmvscode-languageserver9.0.1indirecta
npmvscode-languageserver-protocol3.17.5indirecta
npmvscode-languageserver-protocol3.18.1indirecta
npmvscode-languageserver-textdocument1.0.12indirecta
npmvscode-languageserver-types3.17.5indirecta
npmvscode-languageserver-types3.18.0indirecta
npmvscode-nls5.2.0indirecta
npmvscode-uri3.1.0indirecta
npmweb-namespaces2.0.1indirecta
npmwebdriver-bidi-protocol0.4.1indirecta
npmwebidl-conversions3.0.1indirecta
npmwhatwg-encoding3.1.1indirecta
npmwhatwg-mimetype4.0.0indirecta
npmwhatwg-url5.0.0indirecta
npmwhich2.0.2indirecta
npmword-wrap1.2.5indirecta
npmwordwrap1.0.0indirecta
npmwrap-ansi7.0.0indirecta
npmwrap-ansi9.0.2indirecta
npmwrappy1.0.2indirecta
npmws8.21.0indirecta
npmxml1.0.1indirecta
npmxxhash-wasm1.1.0indirecta
npmy18n5.0.8indirecta
npmyaml2.9.0indirecta
npmyaml-language-server1.20.0indirecta
npmyargs17.7.3indirecta
npmyargs18.1.0indirecta
npmyargs-parser21.1.1indirecta
npmyargs-parser22.0.0indirecta
npmyauzl2.10.0indirecta
npmyocto-queue0.1.0indirecta
npmyocto-queue1.2.2indirecta
npmzod3.25.76indirecta
npmzod4.4.3indirecta
npmzwitch2.0.4indirecta
Avisos de dependencias 2

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 1016 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 2 tienen avisos conocidos, de los cuales 1 son directas.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
brace-expansion1.1.16indirectaalta15.0.8
golang.org/x/cryptov0.54.0directadesconocida1

Un aviso significa que la versión registrada en el grafo de dependencias cae dentro del rango afectado de un aviso. No se analiza la alcanzabilidad, y el grafo incluye fijaciones de desarrollo y prueba: un hallazgo puede referirse al utillaje y no al software distribuido.

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "ai-tools",
        "gitlab",
        "gitlab-api",
        "go",
        "llm",
        "mcp",
        "mcp-server",
        "model-context-protocol"
      ],
      "is_fork": false,
      "size_kb": 22667,
      "has_wiki": false,
      "homepage": "https://jmrplens.github.io/gitlab-mcp-server/",
      "languages": {
        "Go": 21440352,
        "CSS": 5275,
        "MDX": 982256,
        "HTML": 37157,
        "Astro": 16042,
        "Shell": 96703,
        "Makefile": 46852,
        "Dockerfile": 2205,
        "JavaScript": 45718,
        "PowerShell": 5695,
        "TypeScript": 6164
      },
      "pushed_at": "2026-07-29T16:28:23Z",
      "created_at": "2026-04-11T21:48:02Z",
      "owner_type": "User",
      "updated_at": "2026-07-29T16:28:26Z",
      "description": "Open source GitLab MCP server for AI assistants: 2-tool dynamic find/execute over 850+ GitLab actions (1,000+ Enterprise), stdio/HTTP/OAuth, safe/read-only modes.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "Go",
      "significant_languages": [
        "Go"
      ]
    },
    "owner": {
      "blog": "https://jmrp.io/",
      "name": "José M. Requena Plens",
      "type": "User",
      "login": "jmrplens",
      "company": null,
      "location": "Spain",
      "followers": 39,
      "avatar_url": "https://avatars.githubusercontent.com/u/28966312?v=4",
      "created_at": "2017-05-25T21:07:25Z",
      "is_verified": null,
      "public_repos": 32,
      "account_age_days": 3353
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v2.5.3",
          "kind": "patch",
          "published_at": "2026-07-29T16:05:30Z"
        },
        {
          "tag": "v2.5.2",
          "kind": "patch",
          "published_at": "2026-07-22T00:27:27Z"
        },
        {
          "tag": "v2.5.1",
          "kind": "patch",
          "published_at": "2026-07-20T23:30:32Z"
        },
        {
          "tag": "v2.5.0",
          "kind": "minor",
          "published_at": "2026-07-07T23:10:09Z"
        },
        {
          "tag": "v2.4.1",
          "kind": "patch",
          "published_at": "2026-07-06T23:43:13Z"
        },
        {
          "tag": "v2.4.0",
          "kind": "minor",
          "published_at": "2026-07-06T07:02:51Z"
        },
        {
          "tag": "v2.3.0",
          "kind": "minor",
          "published_at": "2026-06-28T13:27:58Z"
        },
        {
          "tag": "v2.2.1",
          "kind": "patch",
          "published_at": "2026-06-18T10:32:28Z"
        },
        {
          "tag": "v2.2.0",
          "kind": "minor",
          "published_at": "2026-06-12T18:54:40Z"
        },
        {
          "tag": "v2.1.3",
          "kind": "patch",
          "published_at": "2026-06-06T19:09:41Z"
        },
        {
          "tag": "v2.1.2",
          "kind": "patch",
          "published_at": "2026-06-01T07:11:52Z"
        },
        {
          "tag": "v2.0.5",
          "kind": "patch",
          "published_at": "2026-05-22T05:54:57Z"
        },
        {
          "tag": "v2.0.2",
          "kind": "patch",
          "published_at": "2026-05-19T14:59:44Z"
        },
        {
          "tag": "v2.0.1",
          "kind": "patch",
          "published_at": "2026-05-18T19:54:15Z"
        },
        {
          "tag": "v2.0.0",
          "kind": "major",
          "published_at": "2026-05-18T17:10:20Z"
        },
        {
          "tag": "v2.0.0-RC1",
          "kind": "prerelease",
          "published_at": "2026-05-18T01:34:25Z"
        },
        {
          "tag": "v1.6.1",
          "kind": "patch",
          "published_at": "2026-05-11T17:42:50Z"
        },
        {
          "tag": "v1.6.0",
          "kind": "minor",
          "published_at": "2026-05-10T20:42:32Z"
        },
        {
          "tag": "v1.5.0",
          "kind": "minor",
          "published_at": "2026-05-06T21:30:23Z"
        },
        {
          "tag": "v1.4.4",
          "kind": "patch",
          "published_at": "2026-05-02T09:46:57Z"
        },
        {
          "tag": "v1.4.3",
          "kind": "patch",
          "published_at": "2026-05-01T00:23:29Z"
        },
        {
          "tag": "v1.4.2",
          "kind": "patch",
          "published_at": "2026-04-30T21:42:53Z"
        },
        {
          "tag": "v1.4.1",
          "kind": "patch",
          "published_at": "2026-04-30T02:50:48Z"
        },
        {
          "tag": "v1.4.0",
          "kind": "minor",
          "published_at": "2026-04-29T15:14:50Z"
        },
        {
          "tag": "v1.3.4",
          "kind": "patch",
          "published_at": "2026-04-28T15:21:22Z"
        },
        {
          "tag": "v1.3.3",
          "kind": "patch",
          "published_at": "2026-04-28T07:14:34Z"
        },
        {
          "tag": "v1.3.2",
          "kind": "patch",
          "published_at": "2026-04-27T20:05:25Z"
        },
        {
          "tag": "v1.3.1",
          "kind": "patch",
          "published_at": "2026-04-27T09:33:17Z"
        },
        {
          "tag": "v1.3.0",
          "kind": "minor",
          "published_at": "2026-04-27T00:16:50Z"
        },
        {
          "tag": "v1.2.4",
          "kind": "patch",
          "published_at": "2026-04-26T08:13:16Z"
        },
        {
          "tag": "v1.2.2",
          "kind": "patch",
          "published_at": "2026-04-26T01:03:21Z"
        },
        {
          "tag": "v1.2.1",
          "kind": "patch",
          "published_at": "2026-04-25T20:32:33Z"
        },
        {
          "tag": "v1.2.0",
          "kind": "minor",
          "published_at": "2026-04-24T12:55:43Z"
        },
        {
          "tag": "v1.1.0",
          "kind": "minor",
          "published_at": "2026-04-23T23:57:23Z"
        },
        {
          "tag": "v1.0.6",
          "kind": "patch",
          "published_at": "2026-04-23T12:22:41Z"
        },
        {
          "tag": "v1.0.5",
          "kind": "patch",
          "published_at": "2026-04-22T19:20:20Z"
        },
        {
          "tag": "v1.0.4",
          "kind": "patch",
          "published_at": "2026-04-22T13:03:44Z"
        },
        {
          "tag": "v1.0.3",
          "kind": "patch",
          "published_at": "2026-04-22T00:45:32Z"
        },
        {
          "tag": "v1.0.2",
          "kind": "patch",
          "published_at": "2026-04-21T13:25:46Z"
        },
        {
          "tag": "v1.0.1",
          "kind": "patch",
          "published_at": "2026-04-21T10:08:17Z"
        },
        {
          "tag": "v1.0.0",
          "kind": "major",
          "published_at": "2026-04-21T09:23:47Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "69f135c0656365979d365c5c138be731c413be40",
          "body": "The v2.5.3 Docker job pushed its images and then failed signing them with a JSON decode error from GitHub's ambient OIDC endpoint. It was transient: rerunning the job unchanged signed both images cleanly, and it was neither a permissions problem nor a regression.\n\nBecause the push happens before the\n[…]\n.5.3 shipped unsigned until the rerun. Both signing steps now go through a retry wrapper with backoff, and the image reference moves into an env var instead of being interpolated into the script body.",
          "is_bot": false,
          "headline": "ci(release): retry cosign signing on transient OIDC failures (#258)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T16:28:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4486f0c8b09c27e4e8639d24c2ecea0dc11b7ed1",
          "body": "Updates server.json (MCP Registry) with version 2.5.3 and\npinned SHA256 hashes, and stamps version 2.5.3 into\n.plugin/plugin.json (Open Plugins), mcpb/manifest.json (Claude\nDesktop extension), and lhm.plugin.json (LobeHub Marketplace).",
          "is_bot": false,
          "headline": "chore: update manifests for v2.5.3",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T16:06:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eac6a5e4994a61281fbe56593ccf7a3e99d176e4",
          "body": "…ace, bump to 2.5.3 (#257)\n\nUpdates the two indirect Go modules the build resolves, four pnpm packages, and a stale CI example in the golang-testing skill; TypeScript stays on 6.x because 7.0.2 violates the peer ranges of @astrojs/check and @typescript-eslint/parser.\n\nFixes the two e2e notification \n[…]\nd the version-only manifests, regenerating the artifacts derived from VERSION. server.json stays at 2.5.2 because its download URLs and fileSha256 digests are stamped together by the release workflow.",
          "is_bot": false,
          "headline": "chore(deps): refresh Go, pnpm and Actions, fix the e2e notification r…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T15:43:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5292429c8bf18c528221becc9120946b042277e9",
          "body": "…(#256)\n\nUpdates gitlab-org/api/client-go from v2.51.0 to v2.53.0 and mirrors the new SDK fields: cicd_catalog_enabled on project create/update/output, and the custom_attributes filter on group and descendant-group listing.\n\nCloses every gap reported by make audit-1to1: approved_by_usernames across \n[…]\nne literals, which were previously unreachable through the MCP.\n\nHardens the golden tool snapshot check so byte-level drift fails instead of passing silently when every tool is semantically unchanged.",
          "is_bot": false,
          "headline": "feat(deps): update client-go to v2.53.0 and close the 1:1 input gaps …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T14:17:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c7d270078d2ef5f27e7749dd403575a12d06e152",
          "body": "…ation (#255)\n\nUpdates modelcontextprotocol/go-sdk from v1.6.1 to v1.7.0 (MCP protocol 2026-07-28) and adopts multi round-trip requests (SEP-2322) for elicitation: new protocol-aware elicitation.Flow API used by the destructive-confirmation guard (now fail-closed on confirmation failures) and the fo\n[…]\nsions. Includes new unit and integration tests for both protocol paths, a legacy-protocol fake client for deterministic sync-path coverage, and regenerated manifests, token footprint, stats, and docs.",
          "is_bot": false,
          "headline": "feat(deps): update go-sdk to v1.7.0 and adopt multi round-trip elicit…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T12:30:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f887a12e5a6a059979d8e3fa2ecc18bbe7f902ad",
          "body": "## Summary\n\nThe repository statistics section of `README.md` and the counts in\n`docs/development/testing/testing.md` are generated (`make gen-stats`,\n`make gen-testing-docs`), but neither has a `check-*` gate wired into\nCI, so both had drifted from the code — the git commit counter alone was\ntwelve \n[…]\nflect the latest test counts\nand package coverage snapshot.\n- Regenerate repository statistics in README.md, including file,\nfunction, package, and commit counts, to align with the latest source\ntree.",
          "is_bot": false,
          "headline": "chore(docs): refresh the generated README and testing statistics (#254)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-29T00:17:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3a79ebf1be2be7e857770a13a6f9b81f0221fc24",
          "body": "## Description\n\nThe LobeHub Marketplace listing for this server showed **0 tools and 0\nprompts**. LobeHub's automatic scanner cannot introspect a server\ndistributed as a Go binary or a Docker image (the official\n`github-mcp-server` is listed the same way), and the capability badges\nare derived solel\n[…]\nbehind) and are not gated by CI, so they are\ndeliberately left untouched here rather than dragging an unrelated\nregeneration diff into this PR.\n\nhttps://claude.ai/code/session_01Kdq5wyC4TfyMoAj9ZipgHq",
          "is_bot": false,
          "headline": "feat(tooling): generate the LobeHub manifest capability arrays (#253)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-28T23:53:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "36f4ce5806c2fdf6985d7c61a0218d7a845a57a2",
          "body": "Part of a rollout across the six sites that publish the\n`https://jmrp.io/#person` entity. jmrp.io now serves it as a standalone\ndocument; this site consumes it instead of restating it.\n\n## Problem\n\nThis site restated the entity by **copying its values**. Across the five\nproject sites doing the same,\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "feat(site): read the Person entity from its canonical source (#251)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-26T18:23:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9a3cd59f4a46b6a8bbf3f568a04a09839aec2ce8",
          "body": "… (#250)\n\n## Description\n\nThe Cline marketplace submission\n([cline/mcp-marketplace#1452](https://github.com/cline/mcp-marketplace/issues/1452))\nclaimed the README had \"a dedicated Cline configuration block with the\nexact `cline_mcp_settings.json` paths for macOS/Linux/Windows\". It did\nnot — `grep -i\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "docs(readme): add the Cline settings paths to the manual JSON section…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-26T13:16:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4eb431092c213bd6b870f7f7af85926181900613",
          "body": "## Description\n\nActs on a GEO (Generative Engine Optimization) audit of the published\ndocumentation site. The audit found the site technically strong but\nleaking value through broken machine-readable artifacts, structured-data\ndefects, and a headline claim that appeared nowhere a model could read\nit\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "feat(site): optimise documentation for AI discovery and citation (#249)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-26T12:55:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dd5a90ee6dea9cc00eb27c98b59a706b28193ca3",
          "body": "…(#248)\n\ngolangci-lint defaults to one worker per logical CPU. Across 226 packages and\n55 linters that working set does not fit comfortably in memory, and past a\ncertain worker count the run stops going faster and starts thrashing.\n\nMeasured on a cold cache on one 16-thread machine:\n\n  16 workers (t\n[…]\nothing on CI and makes larger machines\nbehave the same way instead of worse.\n\nVerified end to end with the committed config and no CLI flags: a cold-cache\n`make golangci-lint` takes 3m38s and exits 0.",
          "is_bot": false,
          "headline": "fix(lint): cap golangci-lint concurrency to keep cold runs finishing …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-26T03:39:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bace8af03a5e8cf3b9815e9268d7741f42281f3a",
          "body": "…y (#246)\n\nThe site published a Person node under the same @id as the canonical one at\njmrp.io/#person while disagreeing with it, and every page claimed it was first\npublished on the day it was last edited. Both cases had the markup asserting\nsomething untrue.\n\nEntity fidelity: the overlapping field\n[…]\ne\npublic/ rule matched it, so a newly added asset would have been invisible to git\nwith no warning. Only the two files copy-llms.mjs generates there are ignored now.\n\nTexts are in English and Spanish.",
          "is_bot": false,
          "headline": "fix(site): correct false publication dates and align the Person entit…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-26T02:04:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f1000dd086a27d5c9687480031692c12e97fc41e",
          "body": "…n (#245)\n\n## Description\n\nRoutine dependency refresh across the three ecosystems: Go modules, the\npnpm docs site, and the Node/pnpm toolchain. GitHub Actions were audited\nand already sit at their latest releases, so no workflow action pins\nchanged.\n\nIt also corrects the recorded justification for t\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "chore(deps): update Go modules, pnpm packages, and Node/pnpm toolchai…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-25T08:25:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "91cdaefc96deca8663a7bbb87f0c35cc55bcc4fe",
          "body": "…244)\n\nAdd lhm.plugin.json (LobeHub Marketplace manifest) as a tracked file, auto-stamped on every release via update-server-json-sha.sh and the release workflow's manifest commit. Adds a guarded 'make publish-lobehub' target for the manual publish step (LobeHub has no non-interactive publish path).",
          "is_bot": false,
          "headline": "feat(release): track lhm.plugin.json and auto-stamp it on releases (#…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-22T03:47:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d29ffdb6308d32d0f53a9980b0a8c88795a42240",
          "body": "…rsor (#243)\n\nRemove the non-functional Go Report Card badge; move MCP-directory listing badges (Glama, LobeHub) to their own row and add Smithery + Cursor Directory.",
          "is_bot": false,
          "headline": "docs(readme): refresh badges — drop Go Report Card, add Smithery + Cu…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-22T03:23:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87362224512c809bdd164ec52968fae50f1d13f5",
          "body": "Document the winget package jmrplens.gitlab-mcp-server (auto-updated each release via winget-releaser) as a Windows install channel in the README, repo getting-started guide, and Astro site guides (EN + ES).",
          "is_bot": false,
          "headline": "docs: add winget install option (#242)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-22T02:51:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3379e90a49ced54d20581db161b3103d82fca623",
          "body": "Updates server.json (MCP Registry), .plugin/plugin.json\n(Open Plugins), and mcpb/manifest.json (Claude Desktop\nextension) with version 2.5.2 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.5.2",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-22T00:28:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "077a55751d0988707d28d0fc6c27b9b6b21efd8b",
          "body": "HTTP mode rejected requests when neither --gitlab-url nor a GITLAB-URL\nheader was set. Mirror stdio by falling back to config.DefaultGitLabURL\n(https://gitlab.com), so HTTP clients may omit the URL entirely. Fixed\n--gitlab-url and explicit GITLAB-URL header precedence are unchanged.\n\nAlso: harden TestServeHTTP_MissingGitLabURLDefaultsToPublic to run\nhermetically, pin fast-uri >=3.1.4 in the docs site to clear pnpm audit\nhigh advisories, and bump version to 2.5.2.",
          "is_bot": false,
          "headline": "fix(http): default to gitlab.com when no instance URL is provided (#241)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-22T00:04:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "90f2ed5a03ef6da93f7db283f70c97d246b1ddc8",
          "body": "Updates server.json (MCP Registry), .plugin/plugin.json\n(Open Plugins), and mcpb/manifest.json (Claude Desktop\nextension) with version 2.5.1 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.5.1",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-20T23:31:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2199d96fae597cb6a2d32553253233ecc3f846a5",
          "body": "## Description\n\nBump the patch version **2.5.0 → 2.5.1** and update every reference that\ntracks it.\n\n## Related Issue\n\nN/A\n\n## Type of Change\n\n- [x] CI / build / tooling\n\n## Changes Made\n\n- `VERSION` 2.5.0 → 2.5.1 (single source of truth)\n- `CLAUDE.md` — version table row + `VERSION` comment\n- Regen\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "chore: version bump to 2.5.1 (#240)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-20T23:08:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "abea2d5916d6c35aaf9b6d85a1f69c4d6be04d26",
          "body": "…ncies (#239)\n\n## Description\n\nUpdate **GitHub Actions** and the **Astro site's pnpm dependencies** to\ntheir latest working versions, consolidating and superseding the open\nDependabot PRs (with a couple of deliberate exceptions noted below).\n\n## Related Issue\n\nN/A\n\n## Type of Change\n\n- [x] CI / buil\n[…]\nAstro site dependencies and devDependencies (including\nastro, ESLint/TypeScript tooling, eslint-plugin-astro, html-validate,\nand prettier) to newer compatible versions while keeping TypeScript on\n6.x.",
          "is_bot": false,
          "headline": "chore(deps): update GitHub Actions (setup-* v7) and site pnpm depende…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-20T22:32:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0f6d0414e5919ba67288394f0b020da3f527d453",
          "body": "…, non-archived, work-item children, audit change objects) + epic ReturnedFields fix (#238)\n\n## Description\n\nBump `gitlab.com/gitlab-org/api/client-go/v2` **v2.46.0 → v2.51.0** and\nmirror every new API-surface field into the MCP per the project's 1:1\nSDK-parity norm, fix a behavior regression the bu\n[…]\nnd health.\n\n* **Documentation**\n* Updated tool references and schemas to reflect the new fields,\nfilters, and work item details.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat: client-go v2.51.0 — 1:1 field mirroring (CRM, MR title template…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-20T22:10:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "84c61c03c22a95943b082d36acaf4fdee0623877",
          "body": "Routine toolchain/dependency refresh:\n\n- **Go 1.26.5** (patch release): `go.mod`, `GO_VERSION` in\nci/e2e/release workflows, `Dockerfile` builder image\n(`golang:1.26.5-alpine3.24`, tag verified on Docker Hub), CLAUDE.md\n- **site**: `@typescript-eslint/eslint-plugin` + `parser` 8.62.1 →\n8.63.0 (dev-on\n[…]\nGo 1.26.5 for builds and tests.\n\nDocumentation:\n- Refresh CLAUDE.md language version reference to Go 1.26.5.\n\nChores:\n- Bump site @typescript-eslint ESLint plugin and parser devDependencies\nto 8.63.0.",
          "is_bot": false,
          "headline": "chore: Go 1.26.5 toolchain + site lint devDep patches (#230)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-08T06:29:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f18a442e42e85109614d60935f2e6b03149bbd92",
          "body": "…ES) (#229)\n\nDocumentation audit covering everything shipped since v2.4.1 that wasn't\nyet reflected everywhere:\n\n## New install paths\n- **Homebrew** (`brew install jmrplens/tap/gitlab-mcp-server`): added to\nthe one-line installer sections in `docs/getting-started.md` and the\nsite getting-started (EN\n[…]\nde Desktop extension links to\ndocumentation indexes.\n* **Chores**\n  * Updated site metadata with additional external references.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs: audit install paths and directory metadata (markdown + site EN/…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-08T06:13:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "af71814660da3ef7ba89cd4964dfc5292993350d",
          "body": "Automates the new\n[jmrplens/homebrew-tap](https://github.com/jmrplens/homebrew-tap)\n(already live and verified: `brew install\njmrplens/tap/gitlab-mcp-server` installs v2.5.0 and `brew test` passes).\n\n- **`scripts/update-homebrew-tap.sh`** — renders\n`Formula/gitlab-mcp-server.rb` from the release ver\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "feat(release): publish Homebrew tap formula on every release (#228)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-08T00:31:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "37e6bddb5e02c5a489faa21d25496cc125152d82",
          "body": "Claude-Session: https://claude.ai/code/session_01LJ6D4L6rnms9GqMqqc2tFb",
          "is_bot": false,
          "headline": "docs(readme): add LobeHub MCP badge next to Glama",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T23:37:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d86ead3a9cfb0911467025e32080b832de8ed50",
          "body": "…S) (#227)\n\nSyncs the new v2.5.0 user-facing features to the Starlight site, in both\nlocales:\n\n- **`claude-desktop`** (EN/ES): one-click `.mcpb` install guide —\ndownload, install dialog, settings table (env var mapping), keychain\ntoken storage, update model (extension versions, in-bundle auto-update\n[…]\npdated the Getting Started guides to highlight the easiest way to\ninstall via the desktop extension without manual JSON editing.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs(site): Claude Desktop (.mcpb) guide + privacy policy pages (EN/E…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T23:34:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "746491b1364a25593867ea81545a71b09c498d79",
          "body": "Updates server.json (MCP Registry), .plugin/plugin.json\n(Open Plugins), and mcpb/manifest.json (Claude Desktop\nextension) with version 2.5.0 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.5.0",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T23:10:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfea31f0bd9db1ddd79f7f96419a89dec4ffeee8",
          "body": "The [MCPB Desktop Extensions submission\nform](https://clau.de/desktop-extention-submission) requires the\nmanifest `author` field to point at the author's GitHub profile — it had\n`https://jmrp.io`.\n\nManifest re-validated with `make check-mcpb`.\n\nhttps://claude.ai/code/session_01LJ6D4L6rnms9GqMqqc2tFb\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "fix(mcpb): point manifest author.url at the GitHub profile (#226)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T22:49:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "94814014bb4d6e057a7998ab15b3854982531470",
          "body": "Bumps `VERSION` to **2.5.0** — first release carrying the Claude Desktop\nextension (`.mcpb`) pipeline (#224).\n\n- `VERSION` 2.4.1 → 2.5.0 (minor: new feature)\n- `CLAUDE.md`: version table + project tree (adds `mcpb/`)\n- Regenerated: README stats, `llms.txt` / `llms-full.txt`, site stats,\ntesting docs\n[…]\nrics and coverage tables to\nreflect the current test counts and distribution.\n\nChores:\n- Update the VERSION file and associated llms/site stats artifacts in\npreparation for the 2.5.0 release pipeline.",
          "is_bot": false,
          "headline": "chore: version bump to 2.5.0 (#225)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T22:23:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c2526c80773696c99ecd717eafd31cf9c5de5f0c",
          "body": "Packages the server as a one-click [MCPB desktop\nextension](https://www.anthropic.com/engineering/desktop-extensions) for\nClaude Desktop (macOS + Windows), as groundwork for submitting to the\n[Anthropic connectors\ndirectory](https://claude.com/docs/connectors/building/submission).\n\n## What's include\n[…]\nils.\n\n* **Bug Fixes**\n* Improved release automation so version and metadata updates stay in\nsync across bundled extension files.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat: Claude Desktop extension (.mcpb) build and release pipeline (#224)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T22:07:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e9ab8775140a7414d6d9178418531f7ecdf0acff",
          "body": "Restores the [Go\nReference](https://pkg.go.dev/github.com/jmrplens/gitlab-mcp-server/v2)\n(pkg.go.dev) and [Go Report\nCard](https://goreportcard.com/report/github.com/jmrplens/gitlab-mcp-server)\nbadges that were dropped from the README header in 2eb468f7, placed next\nto the Quality Gate / Coverage ba\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "docs(readme): restore Go Reference and Go Report Card badges (#223)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T21:19:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a8a01feb0141978e243a49c9c96045bd4410d3ac",
          "body": "Adds a root-level `llms-install.md` — the agent-facing install guide the\n[Cline MCP Marketplace](https://github.com/cline/mcp-marketplace)\nrecommends for reliable one-click installs. Covers Docker and\nnative-binary install paths, required/optional env vars, a smoke test\n(`user.current`), and trouble\n[…]\nrification steps, and troubleshooting tips.\n* Clarifies required and optional settings, plus links to related\nproject resources.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs: add llms-install.md for AI-agent one-click installs (Cline) (#222)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T20:55:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2ddbb228a2facbf5a50d0ee33ec88e6c923e3bf2",
          "body": "## Summary\n\nThe project (Q140389426) and personal (Q140455276) Wikidata items were\ndeleted by a Wikidata admin on 2026-07-07 (\"Mass deletion of pages added\nby Jmrplens\", notability policy). `sameAs` entries and the footer link\nnow point at nonexistent entities, which is a negative\nentity-verificatio\n[…]\nlists.\n\nDocumentation:\n- Adjust head component comment to describe remaining sameAs links as\ndirectory listings instead of Wikidata.\n- Remove the visible Wikidata link from the site footer links list.",
          "is_bot": false,
          "headline": "docs(site): remove references to deleted Wikidata items (#221)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T18:40:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5b4bd73bbd6269140ef74b7d078bfc3bd0b3e38e",
          "body": "…220)\n\n## Summary\n\nAdds the personal Wikidata item\n([Q140455276](https://www.wikidata.org/wiki/Q140455276)) to the `Person`\nnode's `sameAs` set in the site-wide JSON-LD `@graph`\n(`site/astro.config.mjs`) and to the visible maintainer footer\n(`site/src/components/Footer.astro`) that mirrors it.\n\nThe \n[…]\nements:\n- Include the maintainer's Wikidata profile in the Person JSON-LD sameAs\nlist for the site.\n- Expose the maintainer's Wikidata profile link in the footer links\nalongside other social profiles.",
          "is_bot": false,
          "headline": "docs(site): add personal Wikidata item to Person sameAs and footer (#…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T18:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e581ed3d9bd830c080e092a0bbe8bb52c4a38175",
          "body": "…S8193) (#219)\n\n## Summary\n\nFixes SonarCloud issue\n[AZ82GzeEJb95_0_OmCWp](https://sonarcloud.io/project/issues?issueStatuses=OPEN&id=jmrplens_gitlab-mcp-server&open=AZ82GzeEJb95_0_OmCWp)\n(rule `godre:S8193`, MINOR code smell).\n\nThe `unmarshalErr` variable in `compiledSchema`'s `if` short statement\nw\n[…]\nLd6kzv\n\n## Summary by Sourcery\n\nRefactor compiledSchema to compare json.Unmarshal errors directly in the\nif condition, eliminating an unnecessary temporary variable while\npreserving existing behavior.",
          "is_bot": false,
          "headline": "refactor(toolutil): use unmarshal error directly in condition (Sonar …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T13:38:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0c6991f5709ea3a3ee38c2cee7ad58831a853551",
          "body": "…ignment_strategy) (#218)\n\n## Summary\n\nTwo related improvements on top of the v2.4.1 work:\n\n### 1. LLM self-recovery hints for live-verified GitLab 19 API drifts\n\nEvery drift we verified against GitLab 19.0.1 during the e2e gap closure\nnow carries an actionable hint (ADR-0007 mechanisms —\n\\`WrapErrW\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "feat: GitLab 19 self-recovery hints + client-go v2.46.0 (reviewer_ass…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-07T05:17:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "344c8eaa0e85880d30ca487afd9e12791c2074d2",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.4.1 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.4.1",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T23:43:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7990f9ac96c552d5111ceef5022c0449024da3e",
          "body": "The #215 test and the #216 premium gating first met in the v2.4.1 tag:\nwith hook_* dropped from the gitlab_group action enum, a CE run fails\nschema validation (\"does not equal any of\") instead of returning the\ndispatcher or API errors the skip matched. Verified live on a gated CE\nbuild: both tier skips now fire.\n\nClaude-Session: https://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "test(e2e): group hook skip also matches the schema-enum tier-gated shape",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T23:25:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ffe2f68eb5f89bbdc5ca7c0ae33338e5dade3873",
          "body": "…header (#217)\n\n## Summary\n\nAudit of the Starlight site's EN/ES parity plus a header fix so the\nlanguage switcher is reachable on small viewports.\n\n## i18n audit (full report kept locally in plan/site-i18n-audit.md)\n\n- Page parity is already 1:1 (28/28, CI-enforced) — no missing\ntranslations.\n- Fixe\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "docs(site): EN/ES i18n audit fixes + mobile language switcher in the …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T23:13:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e85a17c48f19aadb662e8d2c0d56295e478fa6bf",
          "body": "…up webhooks + edition-tier auditor blind spot (#216)\n\n## Summary\n\nFollow-up to #215. The e2e gap closure exposed 14 catalog actions\nlabelled \\`free\\` that GitLab gates as **Premium** (live-verified: 404\non GitLab 19.0.1 CE, working on EE Ultimate; docs badge \"Tier: Premium,\nUltimate\"):\n\n- \\`merge_r\n[…]\ng fallback behavior when a referenced page can’t be loaded.\n  * Refined CE test skips to handle unavailable tools more reliably.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "fix(catalog): doc-grounded premium gating for MR dependencies and gro…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T22:57:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "55399efe3744c8db098c1a451e4309676b3615c7",
          "body": "…og exercised (#215)\n\n## Summary\n\nSystematic audit and closure of e2e coverage gaps across CE and EE. A\nnew \\`cmd/audit_e2e_gaps\\` tool (make \\`audit-e2e-gaps\\`) compares the\ncanonical Ultimate-tier action catalog (1062 actions) against every\ninvocation shape in \\`test/e2e/suite/\\` (individual, meta\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "test(e2e): close the action-coverage gap — 76.3% → 99.3% of the catal…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T22:20:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fcb0b8b91ee9c77d7f11fc9603e059f56b92c5db",
          "body": "Claude-Session: https://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "ci: keep fly-debug as a standing Fly ops workflow (diagnose/redeploy)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T08:08:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dc61164d2b07548870867cbf5fb6958455783908",
          "body": "… 256mb\n\nClaude-Session: https://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "fix(deploy): raise Fly VM to 512mb — v2.4.0 startup RSS OOM-killed on…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T08:01:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "503958f4235b5b1f5b3228262429aec715adf182",
          "body": "Claude-Session: https://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "ci: fly-debug needs the release environment for FLY_API_TOKEN",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T08:00:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae50d6e54901daf2b90ae127f5d4cfefe033d2be",
          "body": "Claude-Session: https://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "ci: temporary Fly debug/redeploy workflow to repair failed v2.4.0 deploy",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T07:59:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b9b490a1a6ae565190e04d424965ce726a0cb3b4",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.4.0 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.4.0",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T07:02:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "603a52fa37976ad0cdcb96467521c4c39c6fdd1c",
          "body": "## Summary\n\nRoutine dependency refresh across the three ecosystems:\n\n**Go (direct, all patch)**\n- `charm.land/bubbles/v2` 2.1.0 → 2.1.1, `bubbletea/v2` 2.0.7 → 2.0.8,\n`lipgloss/v2` 2.0.4 → 2.0.5 (wizard TUI stack; bubbletea pulls\n`charmbracelet/ultraviolet` 2026-06-22 → 2026-07-03)\n- `github.com/shi\n[…]\nckage versions for the site build and rendering toolchain.\n  * Bumped a few underlying libraries to recent maintenance releases.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore: dependency patch updates + version bump to 2.4.0 (#214)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T06:47:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "16944d4a48ad2ff7a2e61d7bdfa96b7f22acb160",
          "body": "… + test suite -51% + coverage 99.74% (#213)\n\n## Summary\n\nThree related workstreams on one branch: production performance,\nunit-test suite time, and coverage of the Sonar-monitored surface.\n\n### Production performance\n\n- **`gitlab_find_action` search** (`internal/tools/dynamic`):\n`matchedSearchValue\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "perf: production hot paths (search 7.5x, per-token registration 3.7x)…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-06T06:15:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "27b5d4bfc159284c9e675e563c30b8a4deed3108",
          "body": "…es + audit coverage guardrails (#212)\n\n## Summary\n\nReduces the duplicated lines flagged by SonarCloud (baseline: 95 files,\n3,636 duplicated lines, 1.9% density) following the established DEDUP\npolicy: byte-identical shapes/converters move to `internal/toolutil`,\ngenuinely irreducible cases get docu\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "refactor: reduce SonarCloud duplicated lines via shared toolutil shap…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-05T21:38:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1f2dad8474d8af6a09620c2d3d278af53cc2bdee",
          "body": "…auditor field (#211)\n\nUpdate gitlab.com/gitlab-org/api/client-go/v2 v2.44.0 → v2.45.0 and surface the\ntwo new API additions as MCP tools.\n\nNew Security Scan Profiles domain (GraphQL, Ultimate) — gitlab_security_scan_profile:\n- attach  (gitlab_attach_security_scan_profile) — built-in scan type\n  (de\n[…]\nenerated llms, site stats, token footprint, testing docs. Counts: individual\n1062→1065, gitlab.com 1068→1071; meta 48→49 / 49→50; groups 44→45.\n\nhttps://claude.ai/code/session_016b5FhE71CVYFf8L79pgFzM",
          "is_bot": false,
          "headline": "feat: client-go v2.45.0 — security scan profile GraphQL tools + user …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-05T16:02:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a2f5bfa1208fd83ac45eab5882fd1c2f7b584e8b",
          "body": "…map lastmod (#210)\n\nApplies the actionable, in-repo findings from a full GEO audit of the docs site.\n\n- Google Search Console verification meta tag (alongside Bing).\n- SoftwareApplication JSON-LD: applicationSubCategory, featureList, softwareRequirements, datePublished (v1.0.0), dateModified (HEAD \n[…]\n(ai-train/search/ai-input).\n\nOff-repo: Wikidata Q140389426 enriched (P571 inception, P2283 uses → MCP/GraphQL/GitLab, aliases).\n\nClaude-Session: https://claude.ai/code/session_01AEEZLTeWWao8ffn1AscMVB",
          "is_bot": false,
          "headline": "feat(site): GEO audit improvements — schema, visible authorship, site…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-02T01:16:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "01126873e1fb757f10aaabc178e0835ea138da56",
          "body": "…ity lead-with-answer (#209)\n\nLow-effort GEO polish from the v3 audit (composite 88).\n\n- **TechArticle `about`** → each doc page's `TechArticle` now links to\nthe `SoftwareApplication` `@id` (which carries the Wikidata `sameAs`),\nreinforcing the software entity site-wide for AI engines.\n- **`Person.i\n[…]\nd optional\nread-only/safe-mode protections.\n* Improved site metadata for richer structured data on pages and author\ninformation.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs(site): GEO polish — TechArticle entity link, Person image, secur…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-01T13:26:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6832c6ee614a5fe76c70293ef45d18a767554398",
          "body": "…(#208)\n\nFollow-up to #207. The IndexNow key is now published at the **domain\nroot** by the new `jmrplens.github.io` user-site repo\n(`https://jmrplens.github.io/<key>.txt`) — which is what IndexNow's\nhost-level verification requires and a GitHub Pages *project* site can't\nprovide.\n\n- `keyLocation` n\n[…]\nr align with the expected\nhost-root location for IndexNow files, helping search engines verify and\ncrawl the site more reliably.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "ci(pages): point IndexNow keyLocation at the domain root (fixes 403) …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-01T07:26:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "da7f8bdbd0cb329312bbb8d5f9bcf55dde618b70",
          "body": "…) (#207)\n\nThe IndexNow job started failing the Pages deploy with HTTP 403\n`UserForbiddedToAccessSite`. Root cause: IndexNow host verification for\n`host=<owner>.github.io` requires the key file at the **domain root**\n(`https://<owner>.github.io/<key>.txt`), but a GitHub Pages **project**\nsite can on\n[…]\nrcery\n\nCI:\n- Adjust the Pages workflow to treat IndexNow failures as warnings\ninstead of causing the job to exit with an error, and document the\nrequired key hosting setup for successful verification.",
          "is_bot": false,
          "headline": "ci(pages): make IndexNow non-fatal (403 on GitHub Pages project sites…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-01T06:37:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e30b1cfaf68e638268f1c543283007ed98b98219",
          "body": "…ter) (#206)\n\n## Summary\n\nMakes the server **installable by an AI assistant from just the repo\nURL**, without the interactive setup wizard — the scenario where a user\ntells their model \"install this for my client (Cursor/Claude/VS\nCode/opencode/…)\".\n\n## Problem\n\n`llms.txt` (the file models read) was\n[…]\nnd links to client-specific\nconfiguration instructions.\n* Updated testing documentation to reflect the latest coverage snapshot.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs: headless AI-assistant install recipe in llms.txt (+ README poin…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-07-01T06:10:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b6b18ad79f21894c14f906e7c81d0ce57ff0d7a2",
          "body": "## Summary\n\nAdds **IndexNow** submission to the Pages deploy so Bing/Yandex (and,\nvia the Bing index, ChatGPT Web Search + Copilot) re-crawl on every site\ndeploy. This was the remaining in-CI GEO item from the audit follow-up\n(#204); the site is already verified in Bing Webmaster Tools.\n\n## How it w\n[…]\nch engines.\n* Expanded structured metadata with additional public profile links to\nstrengthen site identity and discoverability.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "ci(pages): submit URLs to IndexNow after deploy (#205)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T23:37:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bfb881936998d3fcc15f1515cddac752e5fa8237",
          "body": "…epage FAQ (#204)\n\n## Summary\n\nFollow-up to the docs/site overhaul (#203): acts on a full **GEO audit**\nof the now-public site (composite **66/100**, 5 parallel analysis\nagents). Implements all the **in-repo** fixes; off-site items (YouTube\ndemo, Wikidata, registry seeding, Reddit/HN) are owner acti\n[…]\nidance and FAQs in\nboth English and Spanish.\n* Updated use-case pages to better explain supported workflows and\npractical tasks.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs(site): GEO improvements — fix llms.txt 404, per-page schema, hom…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T22:43:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6266bfdd5607c0ff00728d73e7f55a28883308ab",
          "body": "…quality/SEO/GEO overhaul (#203)\n\n## Summary\n\nEnd-to-end documentation overhaul in two parts: (1) reorganizing the\nin-repo `docs/` markdown into an audience-first + Diátaxis layout, and\n(2) a full quality/SEO/GEO pass over the Astro Starlight site (`site/`),\nincluding a deeper EN+ES content rewrite.\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "docs: reorganize docs/ (audience-first + Diátaxis) + full Astro site …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T21:40:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "67cbb99e1d96132b5234abcabe7c3c34f0efb58c",
          "body": "Routine dependency refresh across Go, pnpm, and GitHub Actions.\n\n## Go\n`go get -u all` + `go mod tidy`. The only build-graph update is\n**`github.com/dlclark/regexp2/v2` v2.1.0 → v2.2.2** (transitive, used by\nthe cl100k tokenizer). Direct dependencies were already current;\neverything else `go list -u\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "chore(deps): update Go and pnpm dependencies (#202)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T14:47:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "94d3a5f1b6b20209b2353cb4ab692977caaa4b07",
          "body": "…ew_application_secret (#201)\n\nBumps `gitlab.com/gitlab-org/api/client-go/v2` **v2.43.0 → v2.44.0** and\nmirrors the one new SDK method per the project's 1:1 API↔MCP norm.\n\n## What changed upstream\nv2.44.0 adds exactly one method:\n`ApplicationsService.RenewApplicationSecret` (`POST\n/applications/{id}\n[…]\ner covering success,\nvalidation failures, and API error responses.\n- Extend catalog routing tests to cover the new\ngitlab_renew_application_secret action and its markdown/metadata\ncompleteness checks.",
          "is_bot": false,
          "headline": "feat: client-go v2.44.0 — mirror RenewApplicationSecret as gitlab_ren…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T14:19:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a384283ae72bb107c02fa3019c2f286c7cccdc6a",
          "body": "…es (#198)\n\nBumps the npm-minor-patch group in /site with 2 updates:\n[prettier](https://github.com/prettier/prettier) and\n[starlight-links-validator](https://github.com/HiDeoo/starlight-links-validator/tree/HEAD/packages/starlight-links-validator).\n\nUpdates `prettier` from 3.9.1 to 3.9.3\n<details>\n<\n[…]\ncture></a>\n<!-- End of auto-generated description by cubic. -->\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps-dev): bump the npm-minor-patch group in /site with 2 updat…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-30T12:36:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2eb468f7224db979d1ca28a4dc9bc03bf0d2fe37",
          "body": "…s (#200)\n\nMakes the server trivial to install via `claude mcp add` and one-click\nbuttons, and rewrites the README/docs/site around an install-first,\nbenefit-led story (per a README audit + competitive analysis of\nsuccessful MCP servers).\n\n## Install paths (new)\n- **`scripts/install.sh`** (Linux/mac\n[…]\nage, and improved setup guidance.\n* Updated development docs and compatibility notes for consistency and\ncurrent client support.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat: claude mcp add install + install-first README/docs/site + asset…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T12:33:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "79efa345599723efbb73edd44592ea80dff54e1d",
          "body": "…199)\n\n## Summary\n\nConsolidates the `cmd/` developer tooling from **26 → 20** focused\nbinaries, integrates a real tokenizer, and hardens the audit/generator\nutilities. Each consolidation followed a differential-equivalence loop\n(baseline → merge → verify byte-identical/structural).\n\n## Consolidation\n[…]\nections to\nmatch the new tooling workflow.\n\n* **Tests**\n* Added and updated tests across the new audit and generation workflows.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "refactor(cmd): consolidate developer utilities (26→20) + hardening (#…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-30T07:58:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "02630a6bb89cd5d5c19864e25eb62d19f0b62b36",
          "body": "Añade filtro para no asignar PRs abiertos por `dependabot[bot]` (además\ndel filtro de auto-asignación).",
          "is_bot": false,
          "headline": "ci: skip dependabot PRs (#197)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-29T12:34:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85409a823130fedf6bf46811bff4202ecfd34ea7",
          "body": "El workflow ahora no asigna si el autor es @jmrplens.",
          "is_bot": false,
          "headline": "ci: skip self-assignment (#196)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-29T12:23:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a09eae791b92a9c3c8bfea79f409f7f79f6744c6",
          "body": "Auto-assigns newly opened issues and PRs to @jmrplens.\n\nUses `gh api` with `GITHUB_TOKEN`, no external dependencies.\n\n## Summary by Sourcery\n\nCI:\n- Introduce an auto-assign GitHub Actions workflow that uses gh api with\nrepository and event context to assign new issues and PRs to jmrplens.",
          "is_bot": false,
          "headline": "ci: add auto-assign workflow (#195)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T23:16:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bf4e0b9c9444f72c96048a283a2b7bdd82579841",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.3.0 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.3.0",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T13:28:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "99f09337531451a54b3e09b1c17e5102cf27e63e",
          "body": "The first 'Meta-Tools Results' section in model-results.md and\nthe matching 'META SUMMARY' block in README.md both reproduce\nthe 'Docker CE-on-Enterprise meta 20260527' run that is already\ncovered by the subsequent 'Dynamic Results' / 'Enterprise\nMeta-Tools Results' sections. Removing both duplicate\n[…]\nck)\n- README.md: drop the <!-- START MODEL EVAL META SUMMARY --> ...\n  <!-- END MODEL EVAL META SUMMARY --> block\n- Remaining sections (Dynamic CE, Enterprise Meta, Enterprise\n  Dynamic) are unchanged",
          "is_bot": false,
          "headline": "docs(eval): drop duplicate CE-on-Enterprise meta eval section",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T13:05:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8f255da35239c292cae32c3ce86931a6a06b0d71",
          "body": "…pdates (#194)\n\n## Release v2.3.0 — version bump, dependency refresh, action updates\n\n### Version bump\n\n- `VERSION` 2.2.1 → 2.3.0\n- `CLAUDE.md` (project header + tree comment) → 2.3.0\n- `server.json` (top-level version + 7 platform download URLs) → 2.3.0\n- `llms.txt` + `llms-full.txt` regenerated vi\n[…]\nfile updates.\n- Update Docker runtime base image to alpine:3.24.1 for the server\ncontainer image.\n- Update GitHub Actions workflows to use actions/checkout@v7 in CI, e2e,\npages, and release pipelines.",
          "is_bot": false,
          "headline": "chore(release): v2.3.0 — version bump + dependency refresh + action u…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T12:57:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ce10a5f77893c91331aba0a23a1d771515df1b2c",
          "body": "…(#192)\n\n## Summary\n\nDOC-002 closes the gap between the canonical action catalog\n(`internal/tools/<pkg>/action_specs.go` → `tools.BuildActionCatalog`)\nand every `docs/tools/*.md` file.\n\n## What lands\n\n- **`cmd/audit_doc_coverage/`** (5 files, ~960 lines, 9 unit tests,\nlint-clean with `--build-tags e\n[…]\n/tools/*.md` pages\n(tool counts, sections, links, and “destructive/confirmation” listings)\nto align with the latest tool catalog.\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "docs(tools): complete per-domain tool reference vs catalog (DOC-002) …",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T11:27:47Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3d6ce4d180b8bbc5c2d1b957ca945fd216e3fa85",
          "body": "…ate, docs & E2E fixes (#191)\n\nPost-PR-190 cleanup and hardening (91 commits). All work is\nbehavior-preserving for the tool surface unless noted; golden snapshots\n(`tools_individual.json` / `tools_meta.json`) stay in parity throughout.\n\n## Deduplication (DEDUP-001/002/003)\n- Lift shared output shape\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "chore: post-PR-190 cleanup — dedup, discovery/input metadata, Sonar g…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-28T02:58:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8b1f50633ad0becbbe7d1d6be19252a13dcf6701",
          "body": "…iscovery hardening (#190)\n\n## Overview\n\nLarge branch (236 commits, ~660 files) covering three intertwined\nworkstreams: a **1:1 audit** of the MCP surface against the GitLab\n`client-go` SDK + REST/GraphQL API, a **3-tier edition gating** model\n(Free / Premium / Ultimate), and **hardening of the mode\n[…]\nDocumentation / godoc / AI-knowledge audit** — sweep and refresh\nproject docs, in-code godoc, and AI-context files after this volume of\nchange.\n\nhttps://claude.ai/code/session_01Hgz9SxaYR4p4KugHvgd2Ps",
          "is_bot": false,
          "headline": "feat: 1:1 API/SDK tool audit, 3-tier edition gating, and model-eval/d…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-26T21:14:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6218106635f79a46fd24707ad92931fe5ec40e15",
          "body": "…ng (SEP-2577) (#189)\n\nProactively remove the three MCP capabilities deprecated by SEP-2577 (Roots,\nSampling, the MCP Logging capability) ahead of their eventual protocol removal.\nInternal slog/stderr logging (the SEP's recommended replacement) is unaffected;\nkept capabilities: progress, completions\n[…]\nbut were stale. Verified: build, e2e compile (CE+EE), unit suite,\ngolangci-lint, markdownlint, SonarCloud (100% coverage), site build all pass.\n\nhttps://claude.ai/code/session_01Hgz9SxaYR4p4KugHvgd2Ps",
          "is_bot": false,
          "headline": "refactor: remove deprecated MCP capabilities — Roots, Sampling, Loggi…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-24T13:27:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b994c967df42bb5028d63e5c02f656bc4095564d",
          "body": "…rden HTTP test timeouts (#188)\n\nUpdate gitlab.com/gitlab-org/api/client-go/v2 v2.41.0 -> v2.42.0 and refresh other\ndependencies.\n\n- client-go v2.42.0: surface the 9 new project Jira integration fields on\n  gitlab_set_jira_integration (vulnerabilities_enabled/_issuetype, project_key,\n  customize_jir\n[…]\nreplace fixed 5s liveness deadlines in the TestServeHTTP_* family with a\n  shared 30s constant so they are deterministic under -race / CI load.\n\nhttps://claude.ai/code/session_01Hgz9SxaYR4p4KugHvgd2Ps",
          "is_bot": false,
          "headline": "chore(deps): client-go v2.42.0 (Jira fields) + dependency refresh; ha…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-24T10:23:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fcc4c908080bb0f53f95c4bf143336464b2528f6",
          "body": "… metadata, tests & docs (#187)\n\nUpdate gitlab.com/gitlab-org/api/client-go/v2 v2.39.0 -> v2.41.0 and apply every\napplicable upstream change to the MCP surface as a faithful 1:1 mapping.\n\n- 9 new tools: container registry tag protection rules; group shared-with /\n  invited / transfer-locations; grou\n[…]\nackages; CE + EE e2e coverage (Docker CE now\n  enables the container registry); review feedback applied; docs/llms/site synced.\n\nClaude-Session: https://claude.ai/code/session_01Hgz9SxaYR4p4KugHvgd2Ps",
          "is_bot": false,
          "headline": "chore(deps): update client-go to v2.41.0 — new endpoints, 1:1 fields,…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-24T03:17:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4394f0d605f602ab3c7e2341acefc266015e81d2",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.2.1 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.2.1",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-18T10:32:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7dc64929f0b4da60d2edb08b1e5ed6286a35207e",
          "body": "…#181)\n\n## Description\n\nConsolidated dependency update branch. Bundles the two open Dependabot\nPRs plus related updates and consistency fixes so they land together and\nstay consistent across the repo.\n\n## Docker\n\n- Runtime base image `alpine` `3.23.4` → `3.24.0` — supersedes #176.\n- Builder base `go\n[…]\nndency to a newer\nversion\n* **Documentation**\n* Updated HTTP server documentation (English and Spanish) to reference\nAlpine 3.24\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): bump alpine 3.24, astro 6.4.8, and Go/dev dependencies (…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-18T10:13:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3159062ad802d4261d0ab2eeb61eb21fec22ab9e",
          "body": "…up to #179) (#180)\n\n## Description\n\nFollow-up to #179 (thanks @turchinc for the original flag and the\ndiagnosis). That PR added `--http-idle-timeout` to stop the hardcoded\n`http.Server` timeouts from severing long-lived MCP **Streamable HTTP**\n(SSE) sessions. This PR rounds out the work and changes\n[…]\nMCP session.\n\n* **Tests**\n  * Added test coverage for the new HTTP idle timeout flag.\n\n* **Chores**\n  * Bumped version to 2.2.1.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "fix(http): disable HTTP idle timeout by default + tests/docs (follow-…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-18T09:27:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8d8885a35ba1af815d7c42605db49554340a934b",
          "body": "…ut (#179)\n\n## Description\n\nAdds a `--http-idle-timeout` CLI flag to configure the Go HTTP server's\n`IdleTimeout`. Previously this was hardcoded to 120 seconds, which\ncaused all long-lived SSE (MCP streamable HTTP) sessions to be silently\nterminated after 2 minutes of inactivity regardless of the\n`-\n[…]\ne new\nflag and its precedence/behavior.\n\n* **Tests**\n* Adjusted HTTP-mode tests to account for the updated idle-timeout\nhandling.\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat: add --http-idle-timeout flag to configure HTTP server IdleTimeo…",
          "author_name": "Chris Turchin",
          "author_login": "turchinc",
          "committed_at": "2026-06-18T07:58:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cd9399b120fe58238c888c3460c94861d84a4410",
          "body": "## Summary\n\nComprehensive godoc audit of the entire module: 427 .go files improved\nwith package comments, per-symbol doc comments, CLI flag descriptions,\nper-test what/how/expected/why explanations, and references to ADR-0004\n(catalog-first registration) and ADR-0007 (error helpers).\n\n## Scope\n\n| Ar\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "docs: comprehensive godoc audit across internal/, cmd/ and test/ (#178)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-17T13:13:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "57b29c771a7af5cd5b5d020cd7e8d327d49b6c46",
          "body": "## Summary\n\nEnd-to-end audit of the setup wizard (Web UI / TUI / CLI), `--help`\noutput, and the wizard's documentation footprint across `README.md`,\n`docs/`, `site/`, `llms.txt`, `SECURITY.md`, and `CONTRIBUTING.md`.\nThree commits, no behavior regressions on the TUI happy path (fast path\npreserved; \n[…]\nand token management best practices.\n\n* **Bug Fixes**\n* Wizard properly preserves stored token when re-running with blank\ninput.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat(wizard): audit polish + docs alignment (#175)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-15T02:09:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d3af78bb1e4cacb4f7a38342465970750d0ec81b",
          "body": "## Description\n\nRoutine dependency update. Bumps `sharp` from 0.35.0 to 0.35.1 (patch\nrelease) and pulls in the latest available Go and pnpm updates found in\nthe dependency manifests.\n\n## Related Issue\n\nCloses #\n\n## Type of Change\n\n- [ ] Bug fix (non-breaking change that fixes an issue)\n- [ ] New fe\n[…]\nure cases.\n* **Chores**\n* Updated several dependencies to newer versions, including the app’s\nstyling and site tooling packages.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): bump sharp 0.35.0 to 0.35.1, update Go and pnpm deps (#174)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-13T23:49:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c797ccac3207648b88e3c505e5b733d94dc7b0c9",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.2.0 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.2.0",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-12T18:54:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07f1bf320642ac33739309530c34b0159c9d099a",
          "body": "Remove targeted-mt039-040-096-current.log from version control — a stray\ntest log file that should not have been committed.\n\n<!-- This is an auto-generated description by cubic. -->\n<a\nhref=\"https://cubic.dev/pr/jmrplens/gitlab-mcp-server/pull/173?utm_source=github\"\ntarget=\"_blank\" rel=\"noopener nor\n[…]\ncubic.dev/buttons/review-in-cubic-light.svg\"><img\nalt=\"Review in cubic\"\nsrc=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"></picture></a>\n<!-- End of auto-generated description by cubic. -->",
          "is_bot": false,
          "headline": "fix: remove stray test log file from version control",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-12T18:32:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "daac177247212bbde96608d3a0b4a3e433928f83",
          "body": "…lication tools (#172)\n\nBumps gitlab.com/gitlab-org/api/client-go/v2 from v2.38.0 to v2.39.0 and\nsurfaces the new Scopes field on application tools.\n\n## Changes\n\nclient-go v2.39.0 (MR !2918) adds a Scopes field to the Application\nstruct. This change exposes it in the MCP layer:\n\n- ApplicationItem.Sc\n[…]\n each application.\n\n* **Dependencies**\n* Updated GitLab API client library to the latest version for\ncompatibility improvements.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): bump client-go v2.38.0 to v2.39.0, surface Scopes on app…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-12T18:26:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "73472afe01d6c2e2ca38bc882a22965d656814a1",
          "body": "Bumps the project version from 2.1.3 to 2.2.0 across VERSION, CLAUDE.md,\nserver.json (8 occurrences), and .plugin/plugin.json.\n\nAlso defensive-fix\n[scripts/setup-orbit-fixtures.sh](scripts/setup-orbit-fixtures.sh): the\nbot committer identity (user.email = \"orbit-fixtures@local\", user.name =\n\"Orbit F\n[…]\nVersion bumped to 2.2.0 across manifest files.\n* Updated configuration files for GitGuardian scanning and documentation\nlinting.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(release): bump version to 2.2.0 (#170)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-12T17:16:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0902ebf98d5274375a7858315b34f5c8d66f6e93",
          "body": "Closes the orbit polish arc. Twenty-three commits on the feature\nbranch (history rewritten to jmrplens, no Co-Authored-By trailers)\ncollapse to one: every tool sub-package now follows the four-signal\ncontract — hints (surface-agnostic, individual tool names in\nbackticks), RelatedActions (explicit cr\n[…]\nesponse\n  from the Orbit knowledge graph service.\n\nPlan\n- See plan/2026-06-12-action-surface-metadata-audit-1.md for the\n  rollout of the four-signal contract to the remaining 175 tool\n  sub-packages.",
          "is_bot": false,
          "headline": "feat(orbit): surface-aware hints, dynamic aliases, and package split",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-12T16:16:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d5d2d971e24ded6007137fbd37968f57b1dd55bd",
          "body": "…ro, starlight, sharp, prettier, typescript-eslint) (#167)\n\n## Summary\n\nRoutine dep updates for the next release. Two commits, both\nnon-breaking:\n\n### 1. Go dependencies (`5219ce4a`)\n\nPatch and minor bumps within the `golang.org/x` family plus\n`bits-and-blooms/bitset`. The MCP SDK, client-go, go-sel\n[…]\nactions for better clarity.\n\n* **Chores**\n* Updated project dependencies and build tools for improved stability\nand maintenance.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): bump Go (crypto, sync, sys, tools, bitset) and pnpm (ast…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-11T23:07:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "effc9624a2970e7ed1a6a03ebeace0c8599355fc",
          "body": "… docs, fix e2e flake (#165)\n\n## Summary\n\nThree commits land together because the docs/schema sweep was\ninseparable\nfrom the underlying feature, and a follow-up e2e fix + analyze cleanup\nboth depend on it.\n\n### 1. Access levels across the MCP surface `5da085b7`\n\nUpdates the user-facing surface so ev\n[…]\nreference documentation and capability metrics reflecting\nexpanded tool surface (1030–1036 tools depending on installation type).\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat(tools): sync access levels (5/15/60) across MCP schemas, refresh…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-11T20:58:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "53cdb1285a133796c3332429f098aa08ff16a361",
          "body": "## Summary\n\nImprove test coverage incrementally by package threshold as a follow-up\nto the recent coverage gaps. Closed 14 packages to 100% and improved\nmany more significantly. This PR recovers the work from the\npreviously-closed #161 and adds the net.Listen early-fail optimization\nin cmd/server/ma\n[…]\nhared utilities and helpers\n\n* **Documentation**\n* Refreshed testing documentation with updated test counts and coverage\nmetrics\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "test: improve coverage (169 packages at 100%, +14 new) (#162)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-08T11:31:44Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d0aea13767f5a743e8854c69b9e2d54429a77511",
          "body": "Updates server.json (MCP Registry) and .plugin/plugin.json\n(Open Plugins) with version 2.1.3 and pinned SHA256 hashes.",
          "is_bot": false,
          "headline": "chore: update manifests for v2.1.3",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-06T19:09:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4487cc28383bdb6eb8c5fb6ebdc7c87509b3a802",
          "body": "## Summary\n\nThree commits, 6 files changed, ~50 insertions / ~50 deletions.\n\n- `ee5d9686` docs(eval): publish CE dynamic surface results\n- `cde063c1` chore(release): bump version 2.1.2 → 2.1.3\n- `ff4848bf` chore(docs): regenerate README, llms*.txt, and testing.md\nfor 2.1.3\n\n## CE dynamic surface run\n[…]\n  * Refreshed test evaluation results and performance metrics.\n  * Updated test coverage documentation with latest measurements.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(release): 2.1.3 + CE dynamic surface baseline (#160)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-06T17:43:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4497df234a50f0cd8c609925b040850f5b7ddc05",
          "body": "…m (#159)\n\n## Summary\n\nRoutine dependency maintenance. Pulls in the only Go module with a real\nupgrade (golang.org/x/exp via the bubbletea → terminfo chain) plus 2\npnpm/site patches. Leaves 13 other transitive Go deps with available\nupdates untouched — they are not pinned to a newer version by any\nm\n[…]\nencies, including the web\nframework and HTML validation tools, to the latest patch releases for\nenhanced stability and security.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): update Go (golang.org/x/exp via bubbletea chain) and pnp…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-06T01:15:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1acf878c838dd00aab96e2f9f17391b5f5f5ec8b",
          "body": "…) (#158)\n\n## Resumen\n\nAdds 10 new evaluation cases that target the GitLab EE + dynamic\n(`gitlab_find_action` + `gitlab_execute_action`) surface and stress the\nmost interesting model capabilities (multi-tool synthesis, project-id\ninference, complex filtering, cross-namespace traversal, parameter\ndis\n[…]\nChores**\n* Improved live-fixture alias seeding, enhanced search/metadata hints,\nand adjusted preset handling for mixed-case runs.\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "feat(eval): add 10 enterprise+dynamic surface cases (MS-ENT-DYN-1..10…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-06T00:03:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a004ed6343fb231adb567903b1e2b807ba586944",
          "body": "… (#157)\n\nPost-merge regeneration of the managed documentation sections so the\nmetrics and tool surface numbers reflect the new EE test coverage from\n#156.\n\n## Regenerated\n\n- `README.md`: token-footprint table refreshed (87,392 input schema\ntokens for meta+full at opaque, 473,799 schema tokens for\ni\n[…]\nbles, and test\ndistribution data across all test packages.\n  * Updated coverage percentages and packages below target threshold.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore: regenerate README and testing docs after EE coverage expansion…",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-04T10:37:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "da07670cf6cfd486e4a1922d65a2c22bc6b02fe1",
          "body": "## Summary\n\nExpands Enterprise/Premium/Ultimate tool coverage and adds a real\nOpenLDAP\ntest container so the groupldap EE tests can exercise the routing with\nreal data (or fall back to the error path when no container is present).\n\n## New tests (all passing against a fresh gitlab/gitlab-ee:latest wi\n[…]\n LDAP test service and optional LDAP\nconfiguration during setup; runner registration tweaks and improved\npipeline-waiting helper.\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "test(e2e): add EE tool coverage and LDAP test infrastructure (#156)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-04T08:43:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9cfc21aa9e30b28e358893674346ceb79eb94c9b",
          "body": "## Summary\n\nRoutine minor/patch updates to the site documentation toolchain.\n\n## Changes\n\n- `@astrojs/starlight`: 0.39.2 -> 0.39.3\n  - UI translations: Romanian, Turkish\n- Pagefind v1.5 with diacriticSimilarity and metaWeights advanced\nranking options\n  - Internal file path handling refactor for con\n[…]\n by CodeRabbit\n\n* **Chores**\n* Updated development dependencies to latest patch versions for improved\nstability and maintenance.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "chore(deps): bump @astrojs/starlight and astro (2026-06) (#155)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-03T11:01:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fb340c04ff46b4298f9cbaa5d8ef4b905a30495a",
          "body": "## Summary\n\nRoutine dependency updates. Three commits:\n\n### 1. `chore(deps): update Go dependencies (2026-06)` (`517229dd`)\n\nUpdates Go module dependencies:\n- `charm.land/bubbletea/v2` v2.0.6 -> v2.0.7\n- `github.com/shirou/gopsutil/v4` v4.26.4 -> v4.26.5\n- `github.com/charmbracelet/ultraviolet` (ind\n[…]\nidy` did not add them either)\n\n## Verification\n\n- `make analyze`: ✅ all gates pass\n- `go test ./internal/... -count=1`: ✅ all pass\n- `go build ./...`: ✅ clean\n- `cd site && pnpm run build`: ✅ succeeds",
          "is_bot": false,
          "headline": "chore(deps): update Go and pnpm dependencies (2026-06) (#153)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-03T09:14:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8f9399e8b6da95a04529bbd5ab53beb8924e2f30",
          "body": "## Summary\n\nCI govulncheck gate was failing on GO-2026-5037 (stdlib `crypto/x509`\ninefficient hostname parsing), fixed in Go 1.26.4.\n\n## Changes\n\n- `go.mod`: toolchain `1.26.3` → `1.26.4`\n- `.github/workflows/ci.yml`, `e2e.yml`, `release.yml`: `GO_VERSION`\n`1.26.3` → `1.26.4`\n\n## Verification\n\n- `ma\n[…]\nin from version 1.26.3 to 1.26.4 across build, test,\nand release pipelines to leverage the latest Go improvements and bug\nfixes.\n\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->",
          "is_bot": false,
          "headline": "fix(ci): bump Go to 1.26.4 to clear GO-2026-5037 (#152)",
          "author_name": "José M. Requena Plens",
          "author_login": "jmrplens",
          "committed_at": "2026-06-03T02:46:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 41,
      "commits_last_year": 278,
      "latest_release_at": "2026-07-29T16:05:30Z",
      "latest_release_tag": "v2.5.3",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 14,
      "days_since_latest_release": 1,
      "mean_days_between_releases": 5.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 100,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "github.com/jmrplens/gitlab-mcp-server/v2",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/jmrplens/gitlab-mcp-server/v2",
          "is_deprecated": false,
          "latest_version": "v2.5.3",
          "repository_url": "https://github.com/jmrplens/gitlab-mcp-server",
          "versions_count": 17,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-29T15:43:01Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 1
        }
      ]
    },
    "popularity": {
      "forks": 2,
      "stars": 31,
      "watchers": 1,
      "fork_history": {
        "days": [
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-06-17",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 2,
        "total_forks": 2
      },
      "star_history": null,
      "open_issues_and_prs": 0
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": true,
      "has_dockerfile": true,
      "has_mcp_signal": true,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "site/tsconfig.json"
      ],
      "toolchain_manifests": [
        "go.mod"
      ],
      "largest_source_bytes": 316328,
      "source_files_sampled": 1708,
      "oversized_source_files": 45,
      "agent_instruction_files": [
        ".github/copilot-instructions.md",
        ".github/instructions/code-review-generic.instructions.md",
        ".github/instructions/context-engineering.instructions.md",
        ".github/instructions/go-mcp-server.instructions.md",
        ".github/instructions/go.instructions.md",
        ".github/instructions/mcp-best-practices.instructions.md",
        ".github/instructions/security-and-owasp.instructions.md",
        ".github/instructions/self-explanatory-code-commenting.instructions.md",
        "AGENTS.md",
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 54565
    },
    "dependencies": {
      "manifests": [
        "go.mod",
        "site/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 1,
            "oldest_advisory_days": 6
          },
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.54.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5932"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 23
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 1,
          "unknown": 1
        },
        "advisory_count": 2,
        "affected_count": 2,
        "assessed_count": 1016,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "go",
        "npm"
      ],
      "dependencies": [
        {
          "name": "charm.land/bubbles/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.1.1"
        },
        {
          "name": "charm.land/bubbletea/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.8"
        },
        {
          "name": "charm.land/lipgloss/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.5"
        },
        {
          "name": "github.com/creativeprojects/go-selfupdate",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "github.com/google/jsonschema-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.4.3"
        },
        {
          "name": "github.com/joho/godotenv",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.1"
        },
        {
          "name": "github.com/modelcontextprotocol/go-sdk",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.0"
        },
        {
          "name": "github.com/shirou/gopsutil/v4",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v4.26.6"
        },
        {
          "name": "github.com/tiktoken-go/tokenizer",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.8.1"
        },
        {
          "name": "gitlab.com/gitlab-org/api/client-go/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.53.0"
        },
        {
          "name": "golang.org/x/crypto",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.54.0"
        },
        {
          "name": "golang.org/x/time",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.15.0"
        },
        {
          "name": "golang.org/x/tools",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.48.0"
        },
        {
          "name": "@astrojs/starlight",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.41.5"
        },
        {
          "name": "astro",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^7.1.6"
        },
        {
          "name": "mermaid",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^11.16.0"
        },
        {
          "name": "sharp",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.35.3"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "charm.land/bubbles/v2",
            "direct": true,
            "version": "v2.1.1",
            "ecosystem": "go"
          },
          {
            "name": "charm.land/bubbletea/v2",
            "direct": true,
            "version": "v2.0.8",
            "ecosystem": "go"
          },
          {
            "name": "charm.land/lipgloss/v2",
            "direct": true,
            "version": "v2.0.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/creativeprojects/go-selfupdate",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/jsonschema-go",
            "direct": true,
            "version": "v0.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/joho/godotenv",
            "direct": true,
            "version": "v1.5.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/modelcontextprotocol/go-sdk",
            "direct": true,
            "version": "v1.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/shirou/gopsutil/v4",
            "direct": true,
            "version": "v4.26.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tiktoken-go/tokenizer",
            "direct": true,
            "version": "v0.8.1",
            "ecosystem": "go"
          },
          {
            "name": "gitlab.com/gitlab-org/api/client-go/v2",
            "direct": true,
            "version": "v2.53.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.54.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/time",
            "direct": true,
            "version": "v0.15.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/tools",
            "direct": true,
            "version": "v0.48.0",
            "ecosystem": "go"
          },
          {
            "name": "@astrojs/starlight",
            "direct": true,
            "version": "0.41.5",
            "ecosystem": "npm"
          },
          {
            "name": "astro",
            "direct": true,
            "version": "7.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "mermaid",
            "direct": true,
            "version": "11.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": true,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "code.gitea.io/sdk/gitea",
            "direct": false,
            "version": "v0.25.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/42wim/httpsig",
            "direct": false,
            "version": "v1.2.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/atotto/clipboard",
            "direct": false,
            "version": "v0.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/colorprofile",
            "direct": false,
            "version": "v0.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/ultraviolet",
            "direct": false,
            "version": "v0.0.0-20260720091822-7cc6674724ac",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/ansi",
            "direct": false,
            "version": "v0.11.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/exp/golden",
            "direct": false,
            "version": "v0.0.0-20260602025833-85a30b5e440a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/term",
            "direct": false,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/termios",
            "direct": false,
            "version": "v0.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/windows",
            "direct": false,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/clipperhouse/displaywidth",
            "direct": false,
            "version": "v0.11.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/clipperhouse/uax29/v2",
            "direct": false,
            "version": "v2.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/davidmz/go-pageant",
            "direct": false,
            "version": "v1.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dlclark/regexp2/v2",
            "direct": false,
            "version": "v2.5.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ebitengine/purego",
            "direct": false,
            "version": "v0.10.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fatih/color",
            "direct": false,
            "version": "v1.19.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-fed/httpsig",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-ole/go-ole",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-github/v86",
            "direct": false,
            "version": "v86.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-querystring",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/go-cleanhttp",
            "direct": false,
            "version": "v0.5.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/go-retryablehttp",
            "direct": false,
            "version": "v0.7.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/go-version",
            "direct": false,
            "version": "v1.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/kr/pretty",
            "direct": false,
            "version": "v0.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lucasb-eyer/go-colorful",
            "direct": false,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lufia/plan9stats",
            "direct": false,
            "version": "v0.0.0-20260627054121-477a66015f15",
            "ecosystem": "go"
          },
          {
            "name": "github.com/masterminds/semver/v3",
            "direct": false,
            "version": "v3.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-colorable",
            "direct": false,
            "version": "v0.1.15",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-isatty",
            "direct": false,
            "version": "v0.0.24",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-runewidth",
            "direct": false,
            "version": "v0.0.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/muesli/cancelreader",
            "direct": false,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/power-devops/perfstat",
            "direct": false,
            "version": "v0.0.0-20240221224432-82ca36839d55",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rivo/uniseg",
            "direct": false,
            "version": "v0.4.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rogpeppe/go-internal",
            "direct": false,
            "version": "v1.15.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/segmentio/asm",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/segmentio/encoding",
            "direct": false,
            "version": "v0.5.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tklauser/go-sysconf",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tklauser/numcpus",
            "direct": false,
            "version": "v0.12.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ulikunitz/xz",
            "direct": false,
            "version": "v0.5.16",
            "ecosystem": "go"
          },
          {
            "name": "github.com/xo/terminfo",
            "direct": false,
            "version": "v0.0.0-20220910002029-abceb7e1c41e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yosida95/uritemplate/v3",
            "direct": false,
            "version": "v3.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yusufpapurcu/wmi",
            "direct": false,
            "version": "v1.2.4",
            "ecosystem": "go"
          },
          {
            "name": "gitlab.com/gitlab-org/api/client-go",
            "direct": false,
            "version": "v1.46.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/exp",
            "direct": false,
            "version": "v0.0.0-20260727155853-b88d891fe743",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/mod",
            "direct": false,
            "version": "v0.38.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/oauth2",
            "direct": false,
            "version": "v0.36.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "v0.22.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.47.0",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/check.v1",
            "direct": false,
            "version": "v1.0.0-20201130134442-10cb98267c6c",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": false,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "@antfu/install-pkg",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/check",
            "direct": false,
            "version": "0.9.10",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler",
            "direct": false,
            "version": "2.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-arm64",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-arm64",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-x64",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-x64",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-musl",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-musl",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-gnu",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-gnu",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-musl",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-musl",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-wasm32-wasi",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-wasm32-wasi",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-x64-msvc",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-x64-msvc",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-rs",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-rs",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/internal-helpers",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/internal-helpers",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/internal-helpers",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/language-server",
            "direct": false,
            "version": "2.16.10",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-remark",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-satteri",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-satteri",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-satteri",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/mdx",
            "direct": false,
            "version": "7.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/prism",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/sitemap",
            "direct": false,
            "version": "3.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/telemetry",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/yaml2ts",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@braintree/sanitize-url",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-arm64",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-arm64",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-x64",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-x64",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-gnu",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-gnu",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-musl",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-musl",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-gnu",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-gnu",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-musl",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-musl",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-wasm32-wasi",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-wasm32-wasi",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-arm64-msvc",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-arm64-msvc",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-x64-msvc",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-x64-msvc",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@capsizecss/unpack",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@chevrotain/types",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@clack/core",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@clack/prompts",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ctrl/tinycolor",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/abbreviation",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/css-abbreviation",
            "direct": false,
            "version": "2.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/css-parser",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/html-matcher",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/scanner",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/stream-reader",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emmetio/stream-reader-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/core",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-frames",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-shiki",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-text-markers",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/fontawesome-free",
            "direct": false,
            "version": "6.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "@html-validate/stylish",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/types",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/utils",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-freebsd-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-webcontainers-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@mdx-js/mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@mermaid-js/parser",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oslojs/encoding",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@pa11y/html_codesniffer",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/darwin-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/darwin-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/default-ui",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/freebsd-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/linux-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/linux-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/windows-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/windows-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@puppeteer/browsers",
            "direct": false,
            "version": "2.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/pluginutils",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/core",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-javascript",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/primitive",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@sidvind/better-ajv-errors",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tootallnate/quickjs-emscripten",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3",
            "direct": false,
            "version": "7.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-array",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-axis",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-brush",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-chord",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-color",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-contour",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-delaunay",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-dispatch",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-drag",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-dsv",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-ease",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-fetch",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-force",
            "direct": false,
            "version": "3.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-format",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-geo",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-hierarchy",
            "direct": false,
            "version": "3.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-interpolate",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-path",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-polygon",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-quadtree",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-random",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-scale",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-scale-chromatic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-selection",
            "direct": false,
            "version": "3.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-shape",
            "direct": false,
            "version": "3.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-time",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-time-format",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-timer",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-transition",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-zoom",
            "direct": false,
            "version": "3.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/esrecurse",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/geojson",
            "direct": false,
            "version": "7946.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/js-yaml",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "2.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/nlcst",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "24.13.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/picomatch",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/sarif",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/sax",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yauzl",
            "direct": false,
            "version": "2.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.65.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@upsetjs/venn.js",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/kit",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/language-core",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/language-server",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/language-service",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/source-map",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@volar/typescript",
            "direct": false,
            "version": "2.4.28",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/emmet-helper",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/l10n",
            "direct": false,
            "version": "0.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-draft-04",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "am-i-vibing",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-query",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-iterate",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-uniq",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ast-types",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "astring",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "astro-eslint-parser",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "astro-expressive-code",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "async",
            "direct": false,
            "version": "3.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "axe-core",
            "direct": false,
            "version": "4.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "axobject-query",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "b4a",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "bare-events",
            "direct": false,
            "version": "2.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-fs",
            "direct": false,
            "version": "4.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "bare-os",
            "direct": false,
            "version": "3.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "bare-path",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-stream",
            "direct": false,
            "version": "2.13.3",
            "ecosystem": "npm"
          },
          {
            "name": "bare-url",
            "direct": false,
            "version": "2.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "basic-ftp",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47-match",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "bfj",
            "direct": false,
            "version": "9.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "check-types",
            "direct": false,
            "version": "11.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio-select",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chromium-bidi",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "collapse-white-space",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "14.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "common-ancestor-path",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-es",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "cose-base",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cose-base",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crossws",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-selector-parser",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csso",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape",
            "direct": false,
            "version": "3.34.0",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape-cose-bilkent",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape-fcose",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3",
            "direct": false,
            "version": "7.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-array",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-array",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "d3-axis",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-brush",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-chord",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-color",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-contour",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-delaunay",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "d3-dispatch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-drag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-dsv",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-ease",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-fetch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-force",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-format",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-geo",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-hierarchy",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-interpolate",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-path",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "d3-path",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-polygon",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-quadtree",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-random",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-sankey",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "npm"
          },
          {
            "name": "d3-scale",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-scale-chromatic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-selection",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-shape",
            "direct": false,
            "version": "1.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "d3-shape",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time-format",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-timer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-transition",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-zoom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dagre-d3-es",
            "direct": false,
            "version": "7.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "dayjs",
            "direct": false,
            "version": "1.11.21",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "defu",
            "direct": false,
            "version": "6.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "degenerator",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "delaunator",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "destr",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1608973",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "8.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "direction",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.12",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dset",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "emmet",
            "direct": false,
            "version": "2.4.11",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "encoding-sniffer",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "env-paths",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "envinfo",
            "direct": false,
            "version": "7.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "environment",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-toolkit",
            "direct": false,
            "version": "1.49.0",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-js",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escodegen",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "10.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": false,
            "version": "10.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-astro",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-attach-comments",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-build-jsx",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-scope",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-to-js",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-visit",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "events-universal",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "expressive-code",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extract-zip",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-fifo",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-string-truncated-width",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-string-width",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "fast-wrap-ansi",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "fd-slicer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-url",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "flattie",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "fontace",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "fontkitten",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "11.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "5.0.0-beta.4",
            "ecosystem": "npm"
          },
          {
            "name": "get-uri",
            "direct": false,
            "version": "6.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "github-slugger",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "13.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "17.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "h3",
            "direct": false,
            "version": "1.15.11",
            "ecosystem": "npm"
          },
          {
            "name": "hachure-fill",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-embedded",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-format",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-dom",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html-isomorphic",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-has-property",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-body-ok-link",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-element",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-minify-whitespace",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-phrasing",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-raw",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-select",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-estree",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-jsx-runtime",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-string",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-text",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hoopy",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-validate",
            "direct": false,
            "version": "11.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-whitespace-sensitive-tag-names",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "htmlhint",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-cache-semantics",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "i18next",
            "direct": false,
            "version": "26.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "import-meta-resolve",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "internmap",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "internmap",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ip-address",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "iron-webcrypto",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-absolute-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonc-parser",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonc-parser",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "katex",
            "direct": false,
            "version": "0.16.47",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "khroma",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "klona",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "layout-base",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "layout-base",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash-es",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-extensions",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "marked",
            "direct": false,
            "version": "16.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-definitions",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-directive",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.28",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "mermaid-isomorphic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-directive",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-expression",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-jsx",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-md",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs-esm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-mdx-expression",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-events-to-acorn",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mini-svg-data-uri",
            "direct": false,
            "version": "1.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mitt",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "muggle-string",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "mustache",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "neotraverse",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "netmask",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "nlcst-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch-native",
            "direct": false,
            "version": "1.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "node-mock-http",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-sarif-builder",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "node.extend",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "ofetch",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "ohash",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-parser",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-to-es",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "7.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-queue",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-timeout",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pa11y",
            "direct": false,
            "version": "9.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "pa11y-ci",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "pac-proxy-agent",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pac-resolver",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "pagefind",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-latin",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5-htmlparser2-tree-adapter",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5-parser-stream",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-browserify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-data-parser",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pend",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "piccolore",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "pinkie",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pinkie-promise",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "points-on-curve",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "points-on-path",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.20",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.23",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-nested",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prepend-http",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "3.9.6",
            "ecosystem": "npm"
          },
          {
            "name": "prismjs",
            "direct": false,
            "version": "1.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "process-ancestry",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "progress",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "prompts",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "protocolify",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-agent",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-from-env",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer",
            "direct": false,
            "version": "24.43.1",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer-core",
            "direct": false,
            "version": "24.43.1",
            "ecosystem": "npm"
          },
          {
            "name": "radix3",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-build-jsx",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-jsx",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "recma-parse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-stringify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex-recursion",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "regex-utilities",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-expressive-code",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-format",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-mermaid",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-parse",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-raw",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-recma",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-stringify",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-directive",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-smartypants",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "request-light",
            "direct": false,
            "version": "0.5.8",
            "ecosystem": "npm"
          },
          {
            "name": "request-light",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-latin",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-smartypants",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-stringify",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "robust-predicates",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "roughjs",
            "direct": false,
            "version": "4.6.6",
            "ecosystem": "npm"
          },
          {
            "name": "rw",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "satteri",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "satteri",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shiki",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "sisteransi",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "sitemap",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "smol-toml",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "socks",
            "direct": false,
            "version": "2.8.9",
            "ecosystem": "npm"
          },
          {
            "name": "socks-proxy-agent",
            "direct": false,
            "version": "8.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "starlight-links-validator",
            "direct": false,
            "version": "0.25.2",
            "ecosystem": "npm"
          },
          {
            "name": "stream-replace-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "streamx",
            "direct": false,
            "version": "2.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "8.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-js",
            "direct": false,
            "version": "1.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "stylis",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "10.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-hyperlinks",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "teex",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "terminal-link",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "text-decoder",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-inflate",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinyclip",
            "direct": false,
            "version": "0.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tryer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-dedent",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "typed-query-selector",
            "direct": false,
            "version": "2.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "typesafe-path",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-auto-import-cache",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "ultrahtml",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "uncrypto",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "6.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.18.2",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unifont",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-find-after",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-modify-children",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-children",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unstorage",
            "direct": false,
            "version": "1.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "url-extras",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "14.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "vitefu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-css",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-emmet",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-html",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-prettier",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-typescript",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-typescript-twoslash-queries",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "volar-service-yaml",
            "direct": false,
            "version": "0.0.70",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-css-languageservice",
            "direct": false,
            "version": "6.3.10",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-html-languageservice",
            "direct": false,
            "version": "5.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-json-languageservice",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-jsonrpc",
            "direct": false,
            "version": "8.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-jsonrpc",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver-protocol",
            "direct": false,
            "version": "3.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver-protocol",
            "direct": false,
            "version": "3.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver-textdocument",
            "direct": false,
            "version": "1.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver-types",
            "direct": false,
            "version": "3.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-languageserver-types",
            "direct": false,
            "version": "3.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-nls",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "vscode-uri",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webdriver-bidi-protocol",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-encoding",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wordwrap",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "xxhash-wasm",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml-language-server",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "18.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yauzl",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "3.25.76",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1016,
        "direct_count": 17,
        "indirect_count": 999
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 194,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 1,
        "closed_unmerged_prs": 59
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "jmrplens",
          "commits": 266,
          "avatar_url": "https://avatars.githubusercontent.com/u/28966312?v=4"
        },
        {
          "type": "User",
          "login": "turchinc",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/645266?v=4"
        }
      ],
      "contributors_sampled": 2,
      "top_contributor_share": 0.996
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "auto-assign.yml",
        "ci.yml",
        "e2e.yml",
        "fly-debug.yml",
        "gitlab-mirror.yml",
        "pages.yml",
        "release.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".golangci.yml",
        "eslint.config.mjs"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "pnpm-lock.yaml"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "25 out of 25 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool is run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 8,
            "reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 9,
            "reason": "1 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "69f135c0656365979d365c5c138be731c413be40",
        "ran_at": "2026-07-31T00:38:34Z",
        "aggregate_score": 7,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-30T19:56:24Z",
      "oldest_open_prs": [],
      "last_merged_pr_at": "2026-07-29T16:28:21Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/jmrplens/gitlab-mcp-server",
    "host": "github.com",
    "name": "gitlab-mcp-server",
    "owner": "jmrplens"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": "The weighted overall 72 is calibrated to 86 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 72,
            "calibrated": 86,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 86,
      "inputs": {
        "security": 74,
        "vitality": 84,
        "community": 56,
        "governance": 56,
        "calibration": "2026-08-02",
        "engineering": 90,
        "ai_readiness": 87,
        "weighted_overall_raw": 72
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 84,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "commits_last_year": 278,
              "human_commit_share": 0.99,
              "days_since_last_push": 1,
              "active_weeks_last_year": 14
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "14/52 weeks with commits",
                "points": 9.7,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 14
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "278 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 278
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "exceptional",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "releases_count": 41,
              "latest_release_tag": "v2.5.3",
              "releases_from_tags": false,
              "days_since_latest_release": 1,
              "mean_days_between_releases": 5.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "41 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 41
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~5.9 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 5.9
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "exceptional",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "moderate",
        "name": "Community & Adoption",
        "value": 56,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "at_risk",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 24,
            "inputs": {
              "forks": 2,
              "stars": 31,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "31 stars",
                "points": 24,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 31
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "2 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": null,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "readme_badge_services": [],
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 56,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 12,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 2,
              "top_contributor_share": 0.996
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0.1,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "2 contributors",
                "points": 2.7,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "newcomer_pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 75,
            "inputs": {
              "merged_prs": 194,
              "open_issues": 0,
              "closed_issues": 1,
              "prs_merged_7d": null,
              "prs_decided_7d": null,
              "prs_merged_30d": null,
              "prs_decided_30d": null,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 59,
              "first_time_authors_30d": null,
              "first_time_prs_merged_30d": null,
              "first_time_prs_decided_30d": null
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 42,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "194/253 decided PRs merged",
                "points": 23,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 194,
                      "decided": 253
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "no first-time contributor's PR decided in 30d",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_newcomer_prs",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 56,
            "inputs": {
              "followers": 39,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "jmrplens",
              "public_repos": 32,
              "account_age_days": 3353
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "39 followers of jmrplens",
                "points": 11.5,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 39,
                      "login": "jmrplens"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "32 public repos, account ~9 yr old",
                "points": 23.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 32
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 9
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "exceptional",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "github.com/jmrplens/gitlab-mcp-server/v2"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 1
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 1 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "17 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 17
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 90,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "7 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": ".golangci.yml, eslint.config.mjs",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml, eslint.config.mjs"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "25 out of 25 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "ai-tools",
                "gitlab",
                "gitlab-api",
                "go",
                "llm",
                "mcp",
                "mcp-server",
                "model-context-protocol"
              ],
              "has_wiki": false,
              "homepage": "https://jmrplens.github.io/gitlab-mcp-server/",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://jmrplens.github.io/gitlab-mcp-server/",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "8 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 8
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 74,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "good",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Token-Permissions. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "dangerous_workflow",
                    "packaging",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 70,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 15,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 3,
              "scorecard_aggregate": 7
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "25 out of 25 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is run on all commits",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "1 existing vulnerabilities detected",
                "points": 6.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 1016 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 1016
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 89,
            "inputs": {
              "source": "osv",
              "advisories": 2,
              "affected_packages": 2,
              "assessed_packages": 1016,
              "unassessed_packages": 0,
              "affected_by_severity": "high 1, unknown 1",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: golang.org/x/crypto v0.54.0 (unknown)",
                "points": 26.6,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "golang.org/x/crypto v0.54.0 (unknown)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "exceptional",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 1016,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "exceptional",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "excellent",
        "name": "AI Readiness",
        "value": 87,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "exceptional",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "has_llms_txt": true,
              "legible_history_share": 1,
              "agent_instruction_files": [
                ".github/copilot-instructions.md",
                ".github/instructions/code-review-generic.instructions.md",
                ".github/instructions/context-engineering.instructions.md",
                ".github/instructions/go-mcp-server.instructions.md",
                ".github/instructions/go.instructions.md",
                ".github/instructions/mcp-best-practices.instructions.md",
                ".github/instructions/security-and-owasp.instructions.md",
                ".github/instructions/self-explanatory-code-commenting.instructions.md",
                "AGENTS.md",
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 54565
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": ".github/copilot-instructions.md, .github/instructions/code-review-generic.instructions.md, .github/instructions/context-engineering.instructions.md, .github/instructions/go-mcp-server.instructions.md, .github/instructions/go.instructions.md, .github/instructions/mcp-best-practices.instructions.md, .github/instructions/security-and-owasp.instructions.md, .github/instructions/self-explanatory-code-commenting.instructions.md, AGENTS.md, CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".github/copilot-instructions.md, .github/instructions/code-review-generic.instructions.md, .github/instructions/context-engineering.instructions.md, .github/instructions/go-mcp-server.instructions.md, .github/instructions/go.instructions.md, .github/instructions/mcp-best-practices.instructions.md, .github/instructions/security-and-owasp.instructions.md, .github/instructions/self-explanatory-code-commenting.instructions.md, AGENTS.md, CLAUDE.md"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": "llms.txt present",
                "points": 15,
                "status": "met",
                "details": [
                  {
                    "code": "llms_txt_present",
                    "params": {}
                  }
                ],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "99 of 99 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 99,
                      "sampled": 99
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "site/tsconfig.json"
              ],
              "agent_commit_share": 0.02,
              "toolchain_manifests": [
                "go.mod"
              ],
              "dependency_bot_commit_share": 0.01
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".golangci.yml, eslint.config.mjs",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml, eslint.config.mjs"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "site/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "site/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "2 of the last 100 commits agent-authored or agent-credited",
                "points": 4,
                "status": "partial",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 2,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "1 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 1,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "exceptional",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 316328,
              "source_files_sampled": 1708,
              "oversized_source_files": 45
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "45/1708 source files over 60KB",
                "points": 53.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1708,
                      "oversized": 45
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "classification": {
      "top": [
        "application"
      ],
      "labels": [
        "mcp-server"
      ],
      "scores": {
        "library": 3,
        "mcp-server": 7
      },
      "primary": "mcp-server",
      "evidence": [
        {
          "tier": "distribution",
          "label": "library",
          "source": "registry:go",
          "weight": 3
        },
        {
          "tier": "structure",
          "label": "mcp-server",
          "source": "mcp_signal",
          "weight": 3
        },
        {
          "tier": "description",
          "label": "mcp-server",
          "source": "description:mcp-server",
          "weight": 2
        },
        {
          "tier": "tags",
          "label": "mcp-server",
          "source": "tag:mcp-server",
          "weight": 2
        }
      ],
      "artifacts": [],
      "confidence": "medium",
      "host_extension": false,
      "runs_as_process": true,
      "consumed_by_code": false
    },
    "metrics_version": "2.5.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-31T00:38:50.942168Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/j/jmrplens/gitlab-mcp-server.svg",
  "full_name": "jmrplens/gitlab-mcp-server",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Las puntuaciones son señales, no garantías. Reflejan prácticas públicamente visibles en GitHub; no son una auditoría de código ni una garantía de seguridad.

Los datos ausentes se excluyen y los pesos se renormalizan; nunca se puntúan como cero. La metodología es versionada y abierta: métricas v2.5.0, esquema v0.27.0 — metodología completa · wiki de métricas.

Cómo se sitúa un resultado dentro del registro general: estadísticas agregadasGo.