Registro público
Informe de salud del softwareesquema 0.11.0 · métricas 1.13.0 · 2026-07-15 13:16 UTC

the-omics-os / lobster

The self-evolving agentic framework for bioinformatics

PythonLicencia propia★ 42 estrellas⑂ 9 forksdesde ago 2025Ver en GitHub ↗

the-omics-os/lobster tiene un índice de salud de 60 sobre 100, lo que lo sitúa en la banda Moderado. Su puntuación más alta es Engineering Quality (81/100) y la más baja, Security (34/100). Se actualizó por última vez hace 5 días. Una sola persona concentra la mayor parte del trabajo reciente.

60
global / 100
Moderado

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala de 1 a 100. El resultado global parte de su media; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe el límite 49 (En riesgo). Preparación para IA queda fuera.

60
Excelente85-100Ejemplar; cumple prácticamente todos los criterios evaluados
Bueno70-84Saludable; carencias menores
Moderado50-69Aceptable con carencias notables; se recomienda revisión
En riesgo30-49Debilidades significativas; su adopción exige cautela
Crítico1-29Problemas 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.

Titularidad

omics-osOrganización
14 seguidores9 repositorios públicosdesde ago 2025

Este repositorio está respaldado por una organización: una custodia compartida y responsable que puede sobrevivir a cualquier mantenedor individual.

Ecosistemas de paquetes

RegistroPaqueteVersiónDescargas / mesVersionesÚltima publicaciónEtiquetas
PyPIlobster-ai1.1.419-58hace 12 díasbioinformaticsrna-seqsingle-cellaimachine-learningdata-analysisgenomics

Métricas por categoría

Vitalidad

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

80Bueno · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 5 días
9/36Cadencia de commits — 13/52 semanas con commits
18/18Volumen de commits — 814 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year814
human_commit_share
days_since_last_push5
active_weeks_last_year13
Cómo se puntúa
27/27Publica versiones — 56 versiones publicadas
36/36Recencia de las versiones — última versión hace 12 días
27/27Cadencia de publicación — una versión cada ~7,6 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count56
latest_release_tagv1.1.419
releases_from_tagsno
days_since_latest_release12
mean_days_between_releases7,6

Comunidad y Adopción

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

48En riesgo · 18% del índice global
Cómo se puntúa
26.2/60Estrellas — 42 estrellas
7.5/25Forks — 9 forks
0/15Observadores — 0 observadores
Datos de entrada utilizados
forks9
stars42
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
16.9/22.5Licencia — archivo de licencia presente, no es una licencia reconocida
18/18Guía CONTRIBUTING
0/13.5Código de conducta
0/7.2Plantilla de issues
0/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributing
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno

Sostenibilidad y Gobernanza

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

52Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
0/22.5Distribución de commits — el principal contribuyente firma el 100% de los commits
2.7/13.5Amplitud de contribuyentes — 2 contribuyentes
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Datos de entrada utilizados
bus_factor1
contributors_sampled2
top_contributor_share0,998
Cómo se puntúa
40.1/46.8Resolución de issues — 86% de issues cerradas
22.9/38.3Aceptación de PR — 6/10 PR decididos fusionados
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Datos de entrada utilizados
merged_prs6
open_issues1
closed_issues6
issue_closed_ratio0,857
closed_unmerged_prs4
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
8.5/25Alcance del propietario — 14 seguidores de the-omics-os
9.1/25Trayectoria — 9 repos públicos, cuenta de ~0 años
Datos de entrada utilizados
followers14
owner_typeOrganization
is_verified
owner_loginthe-omics-os
public_repos9
account_age_days336
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en pypi
35/35Recencia de publicación — última publicación hace 12 días
20/20Historial de versiones — 58 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packageslobster-ai
ecosystemspypi
any_deprecatedno
min_days_since_publish12

Calidad de Ingeniería

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

81Bueno · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 6 flujo(s) de trabajo
24/24Pruebas presentes
0/16Configuración de linter
0/9.6Hooks de pre-commit
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 2 out of 2 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfigno
has_linter_configno
has_precommit_configno

Documentación

100Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://www.lobsterbio.com/
10/10Descripción del repositorio
10/10Topics — 7 topics
10/10Wiki
Datos de entrada utilizados
topicsagents, bioinformatics, langgraph, transcriptomics, lobster, omics, proteomics
has_wiki
homepagehttps://www.lobsterbio.com/
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?

34En riesgo · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
2.5/2.5CI-Tests — 2 out of 2 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.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.2/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 149 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate3,4

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Es una insignia independiente y experimental — peso 0,0, de modo que se presenta por separado y no afecta a la puntuación de salud global.

49En riesgo · 0% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
0/40Historial de commits legible — sin datos
Datos de entrada utilizados
has_llms_txtno
legible_history_share
agent_instruction_files
agent_instruction_max_bytes
Excluidos de la puntuación (sin datos o no aplicable): Historial de commits legible. Los pesos restantes se han renormalizado.
Cómo se puntúa
18/18Arranque con un solo comando — Makefile
22/22Pruebas automatizadas
0/11Configuración de lint / formato
11/11Verificación estática de tipos — packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed
10/10Entorno reproducible — lockfile
0/10Práctica demostrada con agentes — sin datos
0/8Mantenimiento automatizado — sin datos
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, uv.lock
has_dockerfileno
typed_languageno
bootstrap_filesMakefile
has_devcontainerno
has_linter_configno
typecheck_configspackages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed
agent_commit_share
toolchain_manifests
dependency_bot_commit_share
Excluidos de la puntuación (sin datos o no aplicable): Práctica demostrada con agentes, Mantenimiento automatizado. Los pesos restantes se han renormalizado.
Cómo se puntúa
27/45Código verificable por tipos — Python con configuración de verificación de tipos (packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed)
52.8/55Tamaños de archivo manejables — 43/1061 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languagePython
largest_source_bytes171.948
source_files_sampled1061
oversized_source_files43

Datos clave

42estrellas de GitHub
2contribuidores
814commits en los últimos 12 meses
5días desde el último push
56versiones publicadas
1factor bus
1issues abiertas
Go, PyPIecosistemas de paquetes

Advertencias de recopilación de datos

  • Could not fetch go package 'github.com/the-omics-os/lobster-tui' from its registry

Más detalle

OpenSSF Scorecard 3.4 / 10
3.4agregado

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-15 13:15 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
10CI-Tests2 out of 2 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
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
9Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities149 existing vulnerabilities detected
Dependencias directas 42
RegistroPaqueteRestricción de versiónManifiesto
Gocharm.land/bubbles/v2v2.0.0lobster-tui/go.mod
Gocharm.land/bubbletea/v2v2.0.1lobster-tui/go.mod
Gocharm.land/lipgloss/v2v2.0.0lobster-tui/go.mod
Gogithub.com/alecthomas/chroma/v2v2.14.0lobster-tui/go.mod
Gogithub.com/charmbracelet/glamourv0.10.0lobster-tui/go.mod
Gogolang.org/x/termv0.40.0lobster-tui/go.mod
PyPIpandas>=1.5.0pyproject.toml
PyPInumpy>=2.2,<2.5pyproject.toml
PyPIscipy>=1.10.0pyproject.toml
PyPIscikit-learn>=1.3.0pyproject.toml
PyPIanndata>=0.9.0pyproject.toml
PyPImudata>=0.2.0pyproject.toml
PyPIh5py>=3.9.0pyproject.toml
PyPIlangchain-core>=0.3.79pyproject.toml
PyPIlanggraph>=1.0.5pyproject.toml
PyPIrich>=12.0.0pyproject.toml
PyPItyper>=0.7.0pyproject.toml
PyPIpython-dotenv>=1.0.0pyproject.toml
PyPIprompt-toolkit>=3.0.52pyproject.toml
PyPIplotly>=5.0.0pyproject.toml
PyPImatplotlib>=3.7.0pyproject.toml
PyPIkaleido>=0.2.0pyproject.toml
PyPIbiopython>=1.81pyproject.toml
PyPIstatsmodels>=0.14.0pyproject.toml
PyPIgseapy>=1.1.0pyproject.toml
PyPIGEOparsepyproject.toml
PyPIopenpyxl>=3.1.0pyproject.toml
PyPIpyreadr>=0.4.0pyproject.toml
PyPIxmltodict>=0.13.0pyproject.toml
PyPIlxml>=4.9.0pyproject.toml
PyPIrequests>=2.31.0pyproject.toml
PyPIhttpx>=0.27.0pyproject.toml
PyPIcloudscraper>=1.2.71pyproject.toml
PyPIpysradb>=2.5.1pyproject.toml
PyPInbformat>=5.9.0pyproject.toml
PyPIpapermill>=2.4.0pyproject.toml
PyPIjinja2>=3.1pyproject.toml
PyPIpackaging>=25.0pyproject.toml
PyPItabulate>=0.9.0pyproject.toml
PyPItomli_w>=1.0pyproject.toml
PyPIpsutil>=7.0.0pyproject.toml
PyPIlobster-ai-tui~=1.1.0pyproject.toml
Todas las dependencias 530

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

RegistroPaqueteVersiónRelación
Gocharm.land/bubbles/v2v2.0.0directa
Gocharm.land/bubbletea/v2v2.0.1directa
Gocharm.land/lipgloss/v2v2.0.0directa
Gogithub.com/alecthomas/chroma/v2v2.14.0directa
Gogithub.com/charmbracelet/glamourv0.10.0directa
Gogolang.org/x/termv0.40.0directa
PyPIanndatadirecta
PyPIanndata0.12.6directa
PyPIbiopythondirecta
PyPIbiopython1.86directa
PyPIcloudscraper1.2.71directa
PyPIgeoparse2.0.4directa
PyPIgseapy1.1.11directa
PyPIh5pydirecta
PyPIh5py3.15.1directa
PyPIhttpxdirecta
PyPIhttpx0.28.1directa
PyPIjinja23.1.6directa
PyPIkaleido1.2.0directa
PyPIlangchain-core1.2.13directa
PyPIlanggraph1.0.8directa
PyPIlobster-ai-tui1.1.420directa
PyPIlxml6.0.2directa
PyPImatplotlib3.10.7directa
PyPImudata0.3.2directa
PyPInbformat5.10.4directa
PyPInumpydirecta
PyPInumpy2.2.6directa
PyPIopenpyxl3.1.5directa
PyPIpackaging25.0directa
PyPIpandasdirecta
PyPIpandas2.3.3directa
PyPIpapermill2.6.0directa
PyPIplotlydirecta
PyPIplotly6.5.0directa
PyPIprompt-toolkit3.0.52directa
PyPIpsutil7.1.3directa
PyPIpyreadr0.5.3directa
PyPIpysradb2.5.1directa
PyPIpython-dotenv1.2.1directa
PyPIrequestsdirecta
PyPIrequests2.32.5directa
PyPIrich14.2.0directa
PyPIscikit-learndirecta
PyPIscikit-learn1.7.2directa
PyPIscipydirecta
PyPIscipy1.16.3directa
PyPIstatsmodelsdirecta
PyPIstatsmodels0.14.5directa
PyPItabulate0.9.0directa
PyPItomli-w1.2.0directa
PyPItyper0.19.2directa
PyPIxmltodict1.0.2directa
Gogithub.com/atotto/clipboardv0.1.4indirecta
Gogithub.com/aymanbagabas/go-osc52/v2v2.0.1indirecta
Gogithub.com/aymerick/douceurv0.2.0indirecta
Gogithub.com/charmbracelet/colorprofilev0.4.2indirecta
Gogithub.com/charmbracelet/lipglossv1.1.1-0.20250404203927-76690c660834indirecta
Gogithub.com/charmbracelet/ultravioletv0.0.0-20260205113103-524a6607adb8indirecta
Gogithub.com/charmbracelet/x/ansiv0.11.6indirecta
Gogithub.com/charmbracelet/x/cellbufv0.0.15indirecta
Gogithub.com/charmbracelet/x/exp/slicev0.0.0-20250327172914-2fdc97757edfindirecta
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/dlclark/regexp2v1.11.0indirecta
Gogithub.com/gorilla/cssv1.0.1indirecta
Gogithub.com/lucasb-eyer/go-colorfulv1.3.0indirecta
Gogithub.com/mattn/go-isattyv0.0.20indirecta
Gogithub.com/mattn/go-runewidthv0.0.20indirecta
Gogithub.com/microcosm-cc/bluemondayv1.0.27indirecta
Gogithub.com/muesli/cancelreaderv0.2.2indirecta
Gogithub.com/muesli/reflowv0.3.0indirecta
Gogithub.com/muesli/termenvv0.16.0indirecta
Gogithub.com/rivo/unisegv0.4.7indirecta
Gogithub.com/xo/terminfov0.0.0-20220910002029-abceb7e1c41eindirecta
Gogithub.com/yuin/goldmarkv1.7.8indirecta
Gogithub.com/yuin/goldmark-emojiv1.0.5indirecta
Gogolang.org/x/netv0.33.0indirecta
Gogolang.org/x/syncv0.19.0indirecta
Gogolang.org/x/sysv0.41.0indirecta
Gogolang.org/x/textv0.24.0indirecta
PyPIaccelerate1.11.0indirecta
PyPIaiohappyeyeballs2.6.1indirecta
PyPIaiohttp3.13.2indirecta
PyPIaiosignal1.4.0indirecta
PyPIannotated-doc0.0.4indirecta
PyPIannotated-types0.7.0indirecta
PyPIannoy1.17.3indirecta
PyPIansicolors1.1.8indirecta
PyPIanthropic0.79.0indirecta
PyPIantlr4-python3-runtime4.9.3indirecta
PyPIanyio4.11.0indirecta
PyPIarray-api-compat1.12.0indirecta
PyPIastroid4.0.2indirecta
PyPIattrs25.4.0indirecta
PyPIautograd1.8.0indirecta
PyPIautograd-gamma0.5.0indirecta
PyPIazure-ai-agents1.2.0b6indirecta
PyPIazure-ai-inference1.0.0b9indirecta
PyPIazure-ai-projects1.1.0b4indirecta
PyPIazure-common1.1.28indirecta
PyPIazure-core1.38.1indirecta
PyPIazure-core-tracing-opentelemetry1.0.0b12indirecta
PyPIazure-cosmos4.14.6indirecta
PyPIazure-identity1.25.2indirecta
PyPIazure-search-documents11.6.0indirecta
PyPIazure-storage-blob12.28.0indirecta
PyPIbabel2.17.0indirecta
PyPIbackoff2.2.1indirecta
PyPIbackrefs6.1indirecta
PyPIbandit1.9.1indirecta
PyPIbcrypt5.0.0indirecta
PyPIbeautifulsoup44.14.2indirecta
PyPIbed-reader1.0.6indirecta
PyPIblack25.11.0indirecta
PyPIblosc23.11.1indirecta
PyPIboto31.42.49indirecta
PyPIbotocore1.42.49indirecta
PyPIbuild1.3.0indirecta
PyPIbump2version1.0.1indirecta
PyPIbumpversion0.6.0indirecta
PyPIcertifi2025.11.12indirecta
PyPIcffi2.0.0indirecta
PyPIcfgv3.4.0indirecta
PyPIcharset-normalizer3.4.4indirecta
PyPIchoreographer1.2.1indirecta
PyPIchromadbindirecta
PyPIchromadb1.5.2indirecta
PyPIclick8.3.1indirecta
PyPIcloudpickle3.1.2indirecta
PyPIcohereindirecta
PyPIcohere6.1.0indirecta
PyPIcolorama0.4.6indirecta
PyPIcoloredlogs15.0.1indirecta
PyPIcolorlog6.10.1indirecta
PyPIcontourpy1.3.3indirecta
PyPIcoverage7.12.0indirecta
PyPIcrc32c2.8indirecta
PyPIcryptography46.0.3indirecta
PyPIcycler0.12.1indirecta
PyPIcython3.2.1indirecta
PyPIcyvcf2indirecta
PyPIcyvcf20.31.4indirecta
PyPIdask2026.1.2indirecta
PyPIdask-glm0.4.0indirecta
PyPIdask-ml2025.1.0indirecta
PyPIdill0.4.0indirecta
PyPIdistlib0.4.0indirecta
PyPIdistributed2026.1.2indirecta
PyPIdistro1.9.0indirecta
PyPIdocling2.62.0indirecta
PyPIdocling-core2.51.1indirecta
PyPIdocling-ibm-models3.10.2indirecta
PyPIdocling-parse4.7.1indirecta
PyPIdocstring-parser0.17.0indirecta
PyPIdocutils0.22.3indirecta
PyPIdonfig0.8.1.post1indirecta
PyPIdurationpy0.10indirecta
PyPIentrypoints0.4indirecta
PyPIet-xmlfile2.0.0indirecta
PyPIexecnet2.1.2indirecta
PyPIfactory-boy3.3.3indirecta
PyPIfaker38.0.0indirecta
PyPIfakeredis2.32.1indirecta
PyPIfastapi0.121.2indirecta
PyPIfastavro1.12.2indirecta
PyPIfastjsonschema2.21.2indirecta
PyPIfilelock3.20.0indirecta
PyPIfiletype1.2.0indirecta
PyPIflake87.3.0indirecta
PyPIflatbuffers25.12.19indirecta
PyPIfonttools4.60.1indirecta
PyPIformulaic1.2.1indirecta
PyPIformulaic-contrasts1.0.0indirecta
PyPIfreezegun1.5.5indirecta
PyPIfrozenlist1.8.0indirecta
PyPIfsspec2025.10.0indirecta
PyPIftputil5.1.0indirecta
PyPIgenebeindirecta
PyPIgenebe0.2.1indirecta
PyPIghp-import2.1.0indirecta
PyPIgoogle-auth2.48.0indirecta
PyPIgoogle-genai1.63.0indirecta
PyPIgoogleapis-common-protos1.72.0indirecta
PyPIgrimp3.14indirecta
PyPIgrpcio1.76.0indirecta
PyPIh110.16.0indirecta
PyPIharmonypyindirecta
PyPIharmonypy0.2.0indirecta
PyPIhf-xet1.2.0indirecta
PyPIhttpcore1.0.9indirecta
PyPIhttpretty1.1.4indirecta
PyPIhttptools0.7.1indirecta
PyPIhuggingface-hub0.36.0indirecta
PyPIhumanfriendly10.0indirecta
PyPIhyperoptindirecta
PyPIid1.5.0indirecta
PyPIidentify2.6.15indirecta
PyPIidna3.11indirecta
PyPIigraphindirecta
PyPIigraph1.0.0indirecta
PyPIimageio2.37.2indirecta
PyPIimbalanced-learnindirecta
PyPIimport-linter2.10indirecta
PyPIimportlib-metadata8.7.0indirecta
PyPIimportlib-resources6.5.2indirecta
PyPIiniconfig2.3.0indirecta
PyPIinterface-meta1.3.0indirecta
PyPIinterpretindirecta
PyPIisodate0.7.2indirecta
PyPIisort7.0.0indirecta
PyPIjaraco-classes3.4.0indirecta
PyPIjaraco-context6.0.1indirecta
PyPIjaraco-functools4.3.0indirecta
PyPIjeepney0.9.0indirecta
PyPIjiter0.12.0indirecta
PyPIjmespath1.0.1indirecta
PyPIjoblib1.5.2indirecta
PyPIjsonlines4.0.0indirecta
PyPIjsonpatch1.33indirecta
PyPIjsonpointer3.0.0indirecta
PyPIjsonref1.1.0indirecta
PyPIjsonschema4.25.1indirecta
PyPIjsonschema-specifications2025.9.1indirecta
PyPIjupyter-client8.8.0indirecta
PyPIjupyter-core5.9.1indirecta
PyPIkeyring25.7.0indirecta
PyPIkiwisolver1.4.9indirecta
PyPIkubernetes35.0.0indirecta
PyPIlangchain1.2.10indirecta
PyPIlangchain-anthropic1.3.3indirecta
PyPIlangchain-aws1.2.5indirecta
PyPIlangchain-azure-ai1.0.3indirecta
PyPIlangchain-google-genai4.2.0indirecta
PyPIlangchain-ollama0.3.10indirecta
PyPIlangchain-openai1.1.9indirecta
PyPIlangfuse3.10.0indirecta
PyPIlanggraph-checkpoint2.1.2indirecta
PyPIlanggraph-prebuilt1.0.7indirecta
PyPIlanggraph-sdk0.3.6indirecta
PyPIlangsmith0.3.45indirecta
PyPIlangsmith0.4.43indirecta
PyPIlatex2mathml3.78.1indirecta
PyPIlazy-loader0.4indirecta
PyPIlegacy-api-wrap1.5indirecta
PyPIleidenalgindirecta
PyPIleidenalg0.11.0indirecta
PyPIlifelinesindirecta
PyPIlifelines0.30.1indirecta
PyPIlinkify-it-py2.0.3indirecta
PyPIllvmlite0.44.0indirecta
PyPIlobster-aiindirecta
PyPIlobster-drug-discoveryindirecta
PyPIlobster-drug-discovery1.1.420indirecta
PyPIlobster-genomics1.1.420indirecta
PyPIlobster-metabolomics1.1.420indirecta
PyPIlobster-mlindirecta
PyPIlobster-proteomics1.1.420indirecta
PyPIlobster-research1.1.420indirecta
PyPIlobster-transcriptomics1.1.420indirecta
PyPIlobster-vectorindirecta
PyPIlobster-vector1.1.420indirecta
PyPIlobster-visualization1.1.420indirecta
PyPIlocket1.0.0indirecta
PyPIlogistro2.0.1indirecta
PyPImarkdown3.10indirecta
PyPImarkdown-it-py4.0.0indirecta
PyPImarko2.2.1indirecta
PyPImarkupsafe3.0.3indirecta
PyPImccabe0.7.0indirecta
PyPImdit-py-plugins0.5.0indirecta
PyPImdurl0.1.2indirecta
PyPImeekoindirecta
PyPImeeko0.7.1indirecta
PyPImemory-profiler0.61.0indirecta
PyPImergedeep1.3.4indirecta
PyPImkdocs1.6.1indirecta
PyPImkdocs-get-deps0.2.0indirecta
PyPImkdocs-material9.7.0indirecta
PyPImkdocs-material-extensions1.3.1indirecta
PyPImmh35.2.0indirecta
PyPImofapy2indirecta
PyPImore-itertools10.8.0indirecta
PyPImoto5.1.17indirecta
PyPImpire2.10.2indirecta
PyPImpmath1.3.0indirecta
PyPImsal1.34.0indirecta
PyPImsal-extensions1.3.1indirecta
PyPImsgpack1.1.2indirecta
PyPImultidict6.7.0indirecta
PyPImultipledispatch1.0.0indirecta
PyPImultiprocess0.70.18indirecta
PyPImypy1.18.2indirecta
PyPImypy-extensions1.1.0indirecta
PyPInarwhals2.12.0indirecta
PyPInatsort8.4.0indirecta
PyPInbclient0.10.2indirecta
PyPIndindex1.10.0indirecta
PyPInetworkxindirecta
PyPInetworkx3.5indirecta
PyPInh30.3.2indirecta
PyPInodeenv1.9.1indirecta
PyPInumba0.61.2indirecta
PyPInumcodecs0.16.3indirecta
PyPInumexpr2.14.1indirecta
PyPInvidia-cublas-cu1212.8.4.1indirecta
PyPInvidia-cuda-cupti-cu1212.8.90indirecta
PyPInvidia-cuda-nvrtc-cu1212.8.93indirecta
PyPInvidia-cuda-runtime-cu1212.8.90indirecta
PyPInvidia-cudnn-cu129.10.2.21indirecta
PyPInvidia-cufft-cu1211.3.3.83indirecta
PyPInvidia-cufile-cu121.13.1.3indirecta
PyPInvidia-curand-cu1210.3.9.90indirecta
PyPInvidia-cusolver-cu1211.7.3.90indirecta
PyPInvidia-cusparse-cu1212.5.8.93indirecta
PyPInvidia-cusparselt-cu120.7.1indirecta
PyPInvidia-nccl-cu122.27.5indirecta
PyPInvidia-nvjitlink-cu1212.8.93indirecta
PyPInvidia-nvshmem-cu123.3.20indirecta
PyPInvidia-nvtx-cu1212.8.90indirecta
PyPIoauthlib3.3.1indirecta
PyPIobonetindirecta
PyPIobonet1.1.1indirecta
PyPIocrmac1.0.0indirecta
PyPIollama0.6.1indirecta
PyPIomegaconf2.3.0indirecta
PyPIonnxruntime1.24.2indirecta
PyPIopenaiindirecta
PyPIopenai2.8.1indirecta
PyPIopencv-python4.11.0.86indirecta
PyPIopentelemetry-api1.38.0indirecta
PyPIopentelemetry-exporter-otlp-proto-common1.38.0indirecta
PyPIopentelemetry-exporter-otlp-proto-grpc1.38.0indirecta
PyPIopentelemetry-exporter-otlp-proto-http1.38.0indirecta
PyPIopentelemetry-proto1.38.0indirecta
PyPIopentelemetry-sdk1.38.0indirecta
PyPIopentelemetry-semantic-conventions0.59b0indirecta
PyPIorjson3.11.4indirecta
PyPIormsgpack1.12.0indirecta
PyPIoverrides7.7.0indirecta
PyPIpaginate0.5.7indirecta
PyPIpartd1.4.2indirecta
PyPIpathspec0.12.1indirecta
PyPIpatsy1.0.2indirecta
PyPIpeptidesindirecta
PyPIpeptides0.5.0indirecta
PyPIpillow11.3.0indirecta
PyPIpip26.0.1indirecta
PyPIpipdeptree2.30.0indirecta
PyPIplatformdirs4.5.0indirecta
PyPIpluggy1.6.0indirecta
PyPIpolars1.35.2indirecta
PyPIpolars-runtime-321.35.2indirecta
PyPIpolyfactory3.0.0indirecta
PyPIposthog5.4.0indirecta
PyPIpre-commit4.4.0indirecta
PyPIpropcache0.4.1indirecta
PyPIprotobuf6.33.1indirecta
PyPIpy-cpuinfo9.0.0indirecta
PyPIpyarrow22.0.0indirecta
PyPIpyasn10.6.2indirecta
PyPIpyasn1-modules0.4.2indirecta
PyPIpybase641.4.3indirecta
PyPIpyclipper1.3.0.post6indirecta
PyPIpycodestyle2.14.0indirecta
PyPIpycparser2.23indirecta
PyPIpydanticindirecta
PyPIpydantic2.12.4indirecta
PyPIpydantic-core2.41.5indirecta
PyPIpydantic-settings2.12.0indirecta
PyPIpydeseq2indirecta
PyPIpydeseq20.5.2indirecta
PyPIpyflakes3.4.0indirecta
PyPIpygments2.19.2indirecta
PyPIpyjwt2.11.0indirecta
PyPIpylatexenc2.10indirecta
PyPIpylint4.0.3indirecta
PyPIpymdown-extensions10.17.1indirecta
PyPIpymmh30.0.5indirecta
PyPIpynndescent0.5.13indirecta
PyPIpyobjc-core12.1indirecta
PyPIpyobjc-framework-cocoa12.1indirecta
PyPIpyobjc-framework-coreml12.1indirecta
PyPIpyobjc-framework-quartz12.1indirecta
PyPIpyobjc-framework-vision12.1indirecta
PyPIpyparsing3.2.5indirecta
PyPIpypdfium24.30.0indirecta
PyPIpypika0.51.1indirecta
PyPIpyproject-hooks1.2.0indirecta
PyPIpyreadline33.5.4indirecta
PyPIpytestindirecta
PyPIpytest9.0.1indirecta
PyPIpytest-asyncio1.3.0indirecta
PyPIpytest-benchmark5.2.3indirecta
PyPIpytest-covindirecta
PyPIpytest-cov7.0.0indirecta
PyPIpytest-html4.1.1indirecta
PyPIpytest-json-report1.5.0indirecta
PyPIpytest-metadata3.1.1indirecta
PyPIpytest-mockindirecta
PyPIpytest-mock3.15.1indirecta
PyPIpytest-timeout2.4.0indirecta
PyPIpytest-xdist3.8.0indirecta
PyPIpython-dateutil2.9.0.post0indirecta
PyPIpython-docx1.2.0indirecta
PyPIpython-multipart0.0.20indirecta
PyPIpython-pptx1.0.2indirecta
PyPIpytokens0.3.0indirecta
PyPIpytz2025.2indirecta
PyPIpywin32311indirecta
PyPIpywin32-ctypes0.2.3indirecta
PyPIpyyaml6.0.3indirecta
PyPIpyyaml-env-tag1.1indirecta
PyPIpyzmq27.1.0indirecta
PyPIrapidfuzzindirecta
PyPIrapidocr3.4.2indirecta
PyPIrdkitindirecta
PyPIrdkit2025.9.6indirecta
PyPIreadme-renderer44.0indirecta
PyPIredis7.0.1indirecta
PyPIreferencing0.37.0indirecta
PyPIregex2025.11.3indirecta
PyPIrequests-oauthlib2.0.0indirecta
PyPIrequests-toolbelt1.0.0indirecta
PyPIresponses0.25.8indirecta
PyPIrfc39862.0.0indirecta
PyPIrispy0.10.0indirecta
PyPIrpds-py0.29.0indirecta
PyPIrsa4.9.1indirecta
PyPIrtree1.4.1indirecta
PyPIruff0.14.5indirecta
PyPIs3transfer0.16.0indirecta
PyPIsafetensors0.6.2indirecta
PyPIscanpyindirecta
PyPIscanpy1.11.5indirecta
PyPIscikit-image0.25.2indirecta
PyPIscikit-miscindirecta
PyPIscikit-misc0.5.2indirecta
PyPIscikit-survivalindirecta
PyPIscrubletindirecta
PyPIscrublet0.2.3indirecta
PyPIscvi-toolsindirecta
PyPIseaborn0.13.2indirecta
PyPIsecretstorage3.4.1indirecta
PyPIsemchunk2.2.2indirecta
PyPIsentence-transformersindirecta
PyPIsentence-transformers5.4.1indirecta
PyPIsession-info1.0.1indirecta
PyPIsession-info20.2.3indirecta
PyPIsetuptoolsindirecta
PyPIsetuptools80.9.0indirecta
PyPIsgkitindirecta
PyPIsgkit0.8.0indirecta
PyPIshapindirecta
PyPIshapely2.1.2indirecta
PyPIshellingham1.5.4indirecta
PyPIsimplejson3.20.2indirecta
PyPIsix1.17.0indirecta
PyPIsniffio1.3.1indirecta
PyPIsortedcontainers2.4.0indirecta
PyPIsoupsieve2.8indirecta
PyPIsparse0.17.0indirecta
PyPIstarlette0.49.3indirecta
PyPIstdlib-list0.12.0indirecta
PyPIstevedore5.5.0indirecta
PyPIsympy1.14.0indirecta
PyPItables3.10.2indirecta
PyPItblib3.2.2indirecta
PyPItenacity9.1.2indirecta
PyPItexttable1.7.0indirecta
PyPItextual6.7.1indirecta
PyPIthreadpoolctl3.6.0indirecta
PyPItifffile2025.10.16indirecta
PyPItiktoken0.12.0indirecta
PyPItinynetrc1.3.1indirecta
PyPItokenizers0.22.1indirecta
PyPItomlkit0.13.3indirecta
PyPItoolz1.1.0indirecta
PyPItorchindirecta
PyPItorch2.9.1indirecta
PyPItorchvision0.24.1indirecta
PyPItornado6.5.2indirecta
PyPItqdm4.67.1indirecta
PyPItraitlets5.14.3indirecta
PyPItransformersindirecta
PyPItransformers4.57.1indirecta
PyPItree-sitter0.25.2indirecta
PyPItree-sitter-c0.24.1indirecta
PyPItree-sitter-java0.23.5indirecta
PyPItree-sitter-javascript0.25.0indirecta
PyPItree-sitter-python0.25.0indirecta
PyPItree-sitter-typescript0.23.2indirecta
PyPItriton3.5.1indirecta
PyPItwine6.2.0indirecta
PyPItypes-requests2.33.0.20260408indirecta
PyPItyping-extensions4.15.0indirecta
PyPItyping-inspection0.4.2indirecta
PyPItzdata2025.2indirecta
PyPIuc-micro-py1.0.3indirecta
PyPIumap-learn0.5.9.post2indirecta
PyPIurllib32.5.0indirecta
PyPIuuid-utils0.14.0indirecta
PyPIuvicorn0.38.0indirecta
PyPIuvloop0.22.1indirecta
PyPIvinaindirecta
PyPIvina1.2.7indirecta
PyPIvirtualenv20.35.4indirecta
PyPIwatchdog6.0.0indirecta
PyPIwatchfiles1.1.1indirecta
PyPIwcwidth0.2.14indirecta
PyPIwebsocket-client1.9.0indirecta
PyPIwebsockets15.0.1indirecta
PyPIwerkzeug3.1.3indirecta
PyPIwheelindirecta
PyPIwheel0.46.3indirecta
PyPIwrapt1.17.3indirecta
PyPIxarrayindirecta
PyPIxarray2025.11.0indirecta
PyPIxgboostindirecta
PyPIxlsxwriter3.2.9indirecta
PyPIxxhash3.6.0indirecta
PyPIyarl1.22.0indirecta
PyPIzarr3.1.3indirecta
PyPIzict3.0.0indirecta
PyPIzipp3.23.0indirecta
PyPIzstandard0.23.0indirecta
PyPIzstandard0.25.0indirecta
Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "agents",
        "bioinformatics",
        "langgraph",
        "transcriptomics",
        "lobster",
        "omics",
        "proteomics"
      ],
      "is_fork": false,
      "size_kb": 25200,
      "has_wiki": true,
      "homepage": "https://www.lobsterbio.com/",
      "languages": {
        "Go": 485100,
        "Jinja": 19657,
        "Shell": 6394,
        "Python": 17924569,
        "Makefile": 34579
      },
      "pushed_at": "2026-07-09T20:34:40Z",
      "created_at": "2025-08-13T03:19:01Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-09T16:55:41Z",
      "description": "The self-evolving agentic framework for bioinformatics",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "main",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": "https://www.omics-os.com/",
      "name": "omics-os",
      "type": "Organization",
      "login": "the-omics-os",
      "company": null,
      "location": "United States of America",
      "followers": 14,
      "avatar_url": "https://avatars.githubusercontent.com/u/226220958?v=4",
      "created_at": "2025-08-13T03:07:11Z",
      "is_verified": null,
      "public_repos": 9,
      "account_age_days": 336
    },
    "activity": {
      "releases_count": 56,
      "commits_last_year": 814,
      "latest_release_at": "2026-07-02T20:16:04Z",
      "latest_release_tag": "v1.1.419",
      "releases_from_tags": false,
      "days_since_last_push": 5,
      "active_weeks_last_year": 13,
      "days_since_latest_release": 12,
      "mean_days_between_releases": 7.6
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "lobster-ai",
          "exists": true,
          "license": "AGPL-3.0-or-later",
          "keywords": [
            "bioinformatics",
            "RNA-seq",
            "single-cell",
            "AI",
            "machine-learning",
            "data-analysis",
            "genomics",
            "Development Status :: 5 - Production/Stable",
            "Environment :: Console",
            "Framework :: FastAPI",
            "Intended Audience :: Healthcare Industry",
            "Intended Audience :: Science/Research",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Topic :: Scientific/Engineering :: Artificial Intelligence",
            "Topic :: Scientific/Engineering :: Bio-Informatics"
          ],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/lobster-ai/",
          "is_deprecated": false,
          "latest_version": "1.1.419",
          "repository_url": "https://github.com/the-omics-os/lobster",
          "versions_count": 58,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": "2026-01-06T10:37:54.576282Z",
          "latest_published_at": "2026-07-02T20:18:20.563280Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 12
        }
      ]
    },
    "popularity": {
      "forks": 9,
      "stars": 42,
      "watchers": 0,
      "open_issues_and_prs": 5
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "packages/lobster-genomics/lobster/agents/genomics/py.typed",
        "packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed",
        "packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed",
        "packages/lobster-ml/lobster/agents/machine_learning/py.typed",
        "packages/lobster-proteomics/lobster/agents/proteomics/py.typed",
        "packages/lobster-research/lobster/agents/data_expert/py.typed",
        "packages/lobster-research/lobster/agents/research/py.typed",
        "packages/lobster-structural-viz/lobster/agents/py.typed",
        "packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed",
        "packages/lobster-visualization/lobster/agents/py.typed"
      ],
      "largest_source_bytes": 171948,
      "source_files_sampled": 1061,
      "oversized_source_files": 43,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "lobster-tui/go.mod",
        "pyproject.toml"
      ],
      "ecosystems": [
        "go",
        "pypi"
      ],
      "dependencies": [
        {
          "name": "charm.land/bubbles/v2",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.0"
        },
        {
          "name": "charm.land/bubbletea/v2",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.1"
        },
        {
          "name": "charm.land/lipgloss/v2",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.0"
        },
        {
          "name": "github.com/alecthomas/chroma/v2",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.14.0"
        },
        {
          "name": "github.com/charmbracelet/glamour",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.10.0"
        },
        {
          "name": "golang.org/x/term",
          "manifest": "lobster-tui/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.40.0"
        },
        {
          "name": "pandas",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.5.0"
        },
        {
          "name": "numpy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.2,<2.5"
        },
        {
          "name": "scipy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.10.0"
        },
        {
          "name": "scikit-learn",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.3.0"
        },
        {
          "name": "anndata",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.9.0"
        },
        {
          "name": "mudata",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.2.0"
        },
        {
          "name": "h5py",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.9.0"
        },
        {
          "name": "langchain-core",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.3.79"
        },
        {
          "name": "langgraph",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.0.5"
        },
        {
          "name": "rich",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=12.0.0"
        },
        {
          "name": "typer",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.7.0"
        },
        {
          "name": "python-dotenv",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.0.0"
        },
        {
          "name": "prompt-toolkit",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.0.52"
        },
        {
          "name": "plotly",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=5.0.0"
        },
        {
          "name": "matplotlib",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.7.0"
        },
        {
          "name": "kaleido",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.2.0"
        },
        {
          "name": "biopython",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.81"
        },
        {
          "name": "statsmodels",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.14.0"
        },
        {
          "name": "gseapy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.1.0"
        },
        {
          "name": "GEOparse",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": null
        },
        {
          "name": "openpyxl",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.1.0"
        },
        {
          "name": "pyreadr",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.4.0"
        },
        {
          "name": "xmltodict",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.13.0"
        },
        {
          "name": "lxml",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.9.0"
        },
        {
          "name": "requests",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.31.0"
        },
        {
          "name": "httpx",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.27.0"
        },
        {
          "name": "cloudscraper",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.2.71"
        },
        {
          "name": "pysradb",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.5.1"
        },
        {
          "name": "nbformat",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=5.9.0"
        },
        {
          "name": "papermill",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.4.0"
        },
        {
          "name": "jinja2",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.1"
        },
        {
          "name": "packaging",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=25.0"
        },
        {
          "name": "tabulate",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.9.0"
        },
        {
          "name": "tomli_w",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.0"
        },
        {
          "name": "psutil",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=7.0.0"
        },
        {
          "name": "lobster-ai-tui",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "~=1.1.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "charm.land/bubbles/v2",
            "direct": true,
            "version": "v2.0.0",
            "ecosystem": "go"
          },
          {
            "name": "charm.land/bubbletea/v2",
            "direct": true,
            "version": "v2.0.1",
            "ecosystem": "go"
          },
          {
            "name": "charm.land/lipgloss/v2",
            "direct": true,
            "version": "v2.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/alecthomas/chroma/v2",
            "direct": true,
            "version": "v2.14.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/glamour",
            "direct": true,
            "version": "v0.10.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/term",
            "direct": true,
            "version": "v0.40.0",
            "ecosystem": "go"
          },
          {
            "name": "anndata",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "anndata",
            "direct": true,
            "version": "0.12.6",
            "ecosystem": "pypi"
          },
          {
            "name": "biopython",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "biopython",
            "direct": true,
            "version": "1.86",
            "ecosystem": "pypi"
          },
          {
            "name": "cloudscraper",
            "direct": true,
            "version": "1.2.71",
            "ecosystem": "pypi"
          },
          {
            "name": "geoparse",
            "direct": true,
            "version": "2.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "gseapy",
            "direct": true,
            "version": "1.1.11",
            "ecosystem": "pypi"
          },
          {
            "name": "h5py",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "h5py",
            "direct": true,
            "version": "3.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": true,
            "version": "0.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": true,
            "version": "3.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "kaleido",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-core",
            "direct": true,
            "version": "1.2.13",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph",
            "direct": true,
            "version": "1.0.8",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-ai-tui",
            "direct": true,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": true,
            "version": "6.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib",
            "direct": true,
            "version": "3.10.7",
            "ecosystem": "pypi"
          },
          {
            "name": "mudata",
            "direct": true,
            "version": "0.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nbformat",
            "direct": true,
            "version": "5.10.4",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": "2.2.6",
            "ecosystem": "pypi"
          },
          {
            "name": "openpyxl",
            "direct": true,
            "version": "3.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": true,
            "version": "25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": true,
            "version": "2.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "papermill",
            "direct": true,
            "version": "2.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "plotly",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "plotly",
            "direct": true,
            "version": "6.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "prompt-toolkit",
            "direct": true,
            "version": "3.0.52",
            "ecosystem": "pypi"
          },
          {
            "name": "psutil",
            "direct": true,
            "version": "7.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyreadr",
            "direct": true,
            "version": "0.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pysradb",
            "direct": true,
            "version": "2.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": true,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": true,
            "version": "2.32.5",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": true,
            "version": "14.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": true,
            "version": "1.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": true,
            "version": "1.16.3",
            "ecosystem": "pypi"
          },
          {
            "name": "statsmodels",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "statsmodels",
            "direct": true,
            "version": "0.14.5",
            "ecosystem": "pypi"
          },
          {
            "name": "tabulate",
            "direct": true,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli-w",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": true,
            "version": "0.19.2",
            "ecosystem": "pypi"
          },
          {
            "name": "xmltodict",
            "direct": true,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "github.com/atotto/clipboard",
            "direct": false,
            "version": "v0.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aymanbagabas/go-osc52/v2",
            "direct": false,
            "version": "v2.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aymerick/douceur",
            "direct": false,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/colorprofile",
            "direct": false,
            "version": "v0.4.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/lipgloss",
            "direct": false,
            "version": "v1.1.1-0.20250404203927-76690c660834",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/ultraviolet",
            "direct": false,
            "version": "v0.0.0-20260205113103-524a6607adb8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/ansi",
            "direct": false,
            "version": "v0.11.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/cellbuf",
            "direct": false,
            "version": "v0.0.15",
            "ecosystem": "go"
          },
          {
            "name": "github.com/charmbracelet/x/exp/slice",
            "direct": false,
            "version": "v0.0.0-20250327172914-2fdc97757edf",
            "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/dlclark/regexp2",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gorilla/css",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lucasb-eyer/go-colorful",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-isatty",
            "direct": false,
            "version": "v0.0.20",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-runewidth",
            "direct": false,
            "version": "v0.0.20",
            "ecosystem": "go"
          },
          {
            "name": "github.com/microcosm-cc/bluemonday",
            "direct": false,
            "version": "v1.0.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/muesli/cancelreader",
            "direct": false,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/muesli/reflow",
            "direct": false,
            "version": "v0.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/muesli/termenv",
            "direct": false,
            "version": "v0.16.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rivo/uniseg",
            "direct": false,
            "version": "v0.4.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/xo/terminfo",
            "direct": false,
            "version": "v0.0.0-20220910002029-abceb7e1c41e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yuin/goldmark",
            "direct": false,
            "version": "v1.7.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yuin/goldmark-emoji",
            "direct": false,
            "version": "v1.0.5",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.33.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "v0.19.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.41.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.24.0",
            "ecosystem": "go"
          },
          {
            "name": "accelerate",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohappyeyeballs",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohttp",
            "direct": false,
            "version": "3.13.2",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosignal",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-doc",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "annoy",
            "direct": false,
            "version": "1.17.3",
            "ecosystem": "pypi"
          },
          {
            "name": "ansicolors",
            "direct": false,
            "version": "1.1.8",
            "ecosystem": "pypi"
          },
          {
            "name": "anthropic",
            "direct": false,
            "version": "0.79.0",
            "ecosystem": "pypi"
          },
          {
            "name": "antlr4-python3-runtime",
            "direct": false,
            "version": "4.9.3",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "array-api-compat",
            "direct": false,
            "version": "1.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "astroid",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "25.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "autograd",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "autograd-gamma",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-ai-agents",
            "direct": false,
            "version": "1.2.0b6",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-ai-inference",
            "direct": false,
            "version": "1.0.0b9",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-ai-projects",
            "direct": false,
            "version": "1.1.0b4",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-common",
            "direct": false,
            "version": "1.1.28",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-core",
            "direct": false,
            "version": "1.38.1",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-core-tracing-opentelemetry",
            "direct": false,
            "version": "1.0.0b12",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-cosmos",
            "direct": false,
            "version": "4.14.6",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-identity",
            "direct": false,
            "version": "1.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-search-documents",
            "direct": false,
            "version": "11.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-storage-blob",
            "direct": false,
            "version": "12.28.0",
            "ecosystem": "pypi"
          },
          {
            "name": "babel",
            "direct": false,
            "version": "2.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "backoff",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "backrefs",
            "direct": false,
            "version": "6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "bandit",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "bcrypt",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": false,
            "version": "4.14.2",
            "ecosystem": "pypi"
          },
          {
            "name": "bed-reader",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "black",
            "direct": false,
            "version": "25.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "blosc2",
            "direct": false,
            "version": "3.11.1",
            "ecosystem": "pypi"
          },
          {
            "name": "boto3",
            "direct": false,
            "version": "1.42.49",
            "ecosystem": "pypi"
          },
          {
            "name": "botocore",
            "direct": false,
            "version": "1.42.49",
            "ecosystem": "pypi"
          },
          {
            "name": "build",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "bump2version",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "bumpversion",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2025.11.12",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cfgv",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "choreographer",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "chromadb",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "chromadb",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cloudpickle",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cohere",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "cohere",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "coloredlogs",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "colorlog",
            "direct": false,
            "version": "6.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "contourpy",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "coverage",
            "direct": false,
            "version": "7.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "crc32c",
            "direct": false,
            "version": "2.8",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "cycler",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cython",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cyvcf2",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "cyvcf2",
            "direct": false,
            "version": "0.31.4",
            "ecosystem": "pypi"
          },
          {
            "name": "dask",
            "direct": false,
            "version": "2026.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "dask-glm",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dask-ml",
            "direct": false,
            "version": "2025.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dill",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "distlib",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "distributed",
            "direct": false,
            "version": "2026.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "distro",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docling",
            "direct": false,
            "version": "2.62.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-core",
            "direct": false,
            "version": "2.51.1",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-ibm-models",
            "direct": false,
            "version": "3.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-parse",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docutils",
            "direct": false,
            "version": "0.22.3",
            "ecosystem": "pypi"
          },
          {
            "name": "donfig",
            "direct": false,
            "version": "0.8.1.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "durationpy",
            "direct": false,
            "version": "0.10",
            "ecosystem": "pypi"
          },
          {
            "name": "entrypoints",
            "direct": false,
            "version": "0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "et-xmlfile",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "execnet",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "factory-boy",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "faker",
            "direct": false,
            "version": "38.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fakeredis",
            "direct": false,
            "version": "2.32.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi",
            "direct": false,
            "version": "0.121.2",
            "ecosystem": "pypi"
          },
          {
            "name": "fastavro",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "pypi"
          },
          {
            "name": "fastjsonschema",
            "direct": false,
            "version": "2.21.2",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": false,
            "version": "3.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filetype",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "flake8",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "pypi"
          },
          {
            "name": "fonttools",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "pypi"
          },
          {
            "name": "formulaic",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "formulaic-contrasts",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "freezegun",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "pypi"
          },
          {
            "name": "frozenlist",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2025.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ftputil",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "genebe",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "genebe",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ghp-import",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-auth",
            "direct": false,
            "version": "2.48.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-genai",
            "direct": false,
            "version": "1.63.0",
            "ecosystem": "pypi"
          },
          {
            "name": "googleapis-common-protos",
            "direct": false,
            "version": "1.72.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grimp",
            "direct": false,
            "version": "3.14",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.76.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "harmonypy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "harmonypy",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "httpretty",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "0.36.0",
            "ecosystem": "pypi"
          },
          {
            "name": "humanfriendly",
            "direct": false,
            "version": "10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hyperopt",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "id",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "identify",
            "direct": false,
            "version": "2.6.15",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.11",
            "ecosystem": "pypi"
          },
          {
            "name": "igraph",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "igraph",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "imageio",
            "direct": false,
            "version": "2.37.2",
            "ecosystem": "pypi"
          },
          {
            "name": "imbalanced-learn",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "import-linter",
            "direct": false,
            "version": "2.10",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-metadata",
            "direct": false,
            "version": "8.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-resources",
            "direct": false,
            "version": "6.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "interface-meta",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "isodate",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "isort",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-classes",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-context",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-functools",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jeepney",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jmespath",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonlines",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpatch",
            "direct": false,
            "version": "1.33",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonref",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.25.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-client",
            "direct": false,
            "version": "8.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jupyter-core",
            "direct": false,
            "version": "5.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "keyring",
            "direct": false,
            "version": "25.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "kiwisolver",
            "direct": false,
            "version": "1.4.9",
            "ecosystem": "pypi"
          },
          {
            "name": "kubernetes",
            "direct": false,
            "version": "35.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain",
            "direct": false,
            "version": "1.2.10",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-anthropic",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-aws",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-azure-ai",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-google-genai",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-ollama",
            "direct": false,
            "version": "0.3.10",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-openai",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "pypi"
          },
          {
            "name": "langfuse",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-checkpoint",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-prebuilt",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-sdk",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.3.45",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.4.43",
            "ecosystem": "pypi"
          },
          {
            "name": "latex2mathml",
            "direct": false,
            "version": "3.78.1",
            "ecosystem": "pypi"
          },
          {
            "name": "lazy-loader",
            "direct": false,
            "version": "0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "legacy-api-wrap",
            "direct": false,
            "version": "1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "leidenalg",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "leidenalg",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "lifelines",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lifelines",
            "direct": false,
            "version": "0.30.1",
            "ecosystem": "pypi"
          },
          {
            "name": "linkify-it-py",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "llvmlite",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-ai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-drug-discovery",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-drug-discovery",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-genomics",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-metabolomics",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-ml",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-proteomics",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-research",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-transcriptomics",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-vector",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-vector",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "lobster-visualization",
            "direct": false,
            "version": "1.1.420",
            "ecosystem": "pypi"
          },
          {
            "name": "locket",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "logistro",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown",
            "direct": false,
            "version": "3.10",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "marko",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "mccabe",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mdit-py-plugins",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "meeko",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "meeko",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "memory-profiler",
            "direct": false,
            "version": "0.61.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mergedeep",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-get-deps",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-material",
            "direct": false,
            "version": "9.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-material-extensions",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mmh3",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mofapy2",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "more-itertools",
            "direct": false,
            "version": "10.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "moto",
            "direct": false,
            "version": "5.1.17",
            "ecosystem": "pypi"
          },
          {
            "name": "mpire",
            "direct": false,
            "version": "2.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mpmath",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "msal",
            "direct": false,
            "version": "1.34.0",
            "ecosystem": "pypi"
          },
          {
            "name": "msal-extensions",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "msgpack",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "multidict",
            "direct": false,
            "version": "6.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "multipledispatch",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "multiprocess",
            "direct": false,
            "version": "0.70.18",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy",
            "direct": false,
            "version": "1.18.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy-extensions",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "narwhals",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "natsort",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nbclient",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "ndindex",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nh3",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nodeenv",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "numba",
            "direct": false,
            "version": "0.61.2",
            "ecosystem": "pypi"
          },
          {
            "name": "numcodecs",
            "direct": false,
            "version": "0.16.3",
            "ecosystem": "pypi"
          },
          {
            "name": "numexpr",
            "direct": false,
            "version": "2.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cublas-cu12",
            "direct": false,
            "version": "12.8.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-cupti-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-nvrtc-cu12",
            "direct": false,
            "version": "12.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-runtime-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cudnn-cu12",
            "direct": false,
            "version": "9.10.2.21",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufft-cu12",
            "direct": false,
            "version": "11.3.3.83",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufile-cu12",
            "direct": false,
            "version": "1.13.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-curand-cu12",
            "direct": false,
            "version": "10.3.9.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusolver-cu12",
            "direct": false,
            "version": "11.7.3.90",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparse-cu12",
            "direct": false,
            "version": "12.5.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparselt-cu12",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nccl-cu12",
            "direct": false,
            "version": "2.27.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvjitlink-cu12",
            "direct": false,
            "version": "12.8.93",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvshmem-cu12",
            "direct": false,
            "version": "3.3.20",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvtx-cu12",
            "direct": false,
            "version": "12.8.90",
            "ecosystem": "pypi"
          },
          {
            "name": "oauthlib",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "obonet",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "obonet",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ocrmac",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ollama",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "omegaconf",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.24.2",
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opencv-python",
            "direct": false,
            "version": "4.11.0.86",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-api",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-common",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-grpc",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-http",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-proto",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-sdk",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-semantic-conventions",
            "direct": false,
            "version": "0.59b0",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.4",
            "ecosystem": "pypi"
          },
          {
            "name": "ormsgpack",
            "direct": false,
            "version": "1.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "overrides",
            "direct": false,
            "version": "7.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "paginate",
            "direct": false,
            "version": "0.5.7",
            "ecosystem": "pypi"
          },
          {
            "name": "partd",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pathspec",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "patsy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "peptides",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "peptides",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": "11.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pip",
            "direct": false,
            "version": "26.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pipdeptree",
            "direct": false,
            "version": "2.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "polars",
            "direct": false,
            "version": "1.35.2",
            "ecosystem": "pypi"
          },
          {
            "name": "polars-runtime-32",
            "direct": false,
            "version": "1.35.2",
            "ecosystem": "pypi"
          },
          {
            "name": "polyfactory",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "posthog",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pre-commit",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "propcache",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "6.33.1",
            "ecosystem": "pypi"
          },
          {
            "name": "py-cpuinfo",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1-modules",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pybase64",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyclipper",
            "direct": false,
            "version": "1.3.0.post6",
            "ecosystem": "pypi"
          },
          {
            "name": "pycodestyle",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "2.23",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.12.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.41.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydeseq2",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pydeseq2",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyflakes",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.19.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pylatexenc",
            "direct": false,
            "version": "2.10",
            "ecosystem": "pypi"
          },
          {
            "name": "pylint",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pymdown-extensions",
            "direct": false,
            "version": "10.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pymmh3",
            "direct": false,
            "version": "0.0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pynndescent",
            "direct": false,
            "version": "0.5.13",
            "ecosystem": "pypi"
          },
          {
            "name": "pyobjc-core",
            "direct": false,
            "version": "12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyobjc-framework-cocoa",
            "direct": false,
            "version": "12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyobjc-framework-coreml",
            "direct": false,
            "version": "12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyobjc-framework-quartz",
            "direct": false,
            "version": "12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyobjc-framework-vision",
            "direct": false,
            "version": "12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyparsing",
            "direct": false,
            "version": "3.2.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdfium2",
            "direct": false,
            "version": "4.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pypika",
            "direct": false,
            "version": "0.51.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyproject-hooks",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyreadline3",
            "direct": false,
            "version": "3.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-asyncio",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-benchmark",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-html",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-json-report",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-metadata",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-mock",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-mock",
            "direct": false,
            "version": "3.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-timeout",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-xdist",
            "direct": false,
            "version": "3.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": "2.9.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-docx",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-multipart",
            "direct": false,
            "version": "0.0.20",
            "ecosystem": "pypi"
          },
          {
            "name": "python-pptx",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytokens",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2025.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32",
            "direct": false,
            "version": "311",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32-ctypes",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml-env-tag",
            "direct": false,
            "version": "1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyzmq",
            "direct": false,
            "version": "27.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rapidfuzz",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "rapidocr",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rdkit",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "rdkit",
            "direct": false,
            "version": "2025.9.6",
            "ecosystem": "pypi"
          },
          {
            "name": "readme-renderer",
            "direct": false,
            "version": "44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "redis",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "2025.11.3",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-oauthlib",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-toolbelt",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "responses",
            "direct": false,
            "version": "0.25.8",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3986",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rispy",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rsa",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rtree",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.14.5",
            "ecosystem": "pypi"
          },
          {
            "name": "s3transfer",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scanpy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scanpy",
            "direct": false,
            "version": "1.11.5",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-image",
            "direct": false,
            "version": "0.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-misc",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-misc",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-survival",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scrublet",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scrublet",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "scvi-tools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "seaborn",
            "direct": false,
            "version": "0.13.2",
            "ecosystem": "pypi"
          },
          {
            "name": "secretstorage",
            "direct": false,
            "version": "3.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "semchunk",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "sentence-transformers",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sentence-transformers",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "session-info",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "session-info2",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": "80.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sgkit",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sgkit",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "shap",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "shapely",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "shellingham",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "simplejson",
            "direct": false,
            "version": "3.20.2",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sniffio",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "sortedcontainers",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.8",
            "ecosystem": "pypi"
          },
          {
            "name": "sparse",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.49.3",
            "ecosystem": "pypi"
          },
          {
            "name": "stdlib-list",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "stevedore",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sympy",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tables",
            "direct": false,
            "version": "3.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tblib",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tenacity",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "texttable",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "textual",
            "direct": false,
            "version": "6.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "threadpoolctl",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tifffile",
            "direct": false,
            "version": "2025.10.16",
            "ecosystem": "pypi"
          },
          {
            "name": "tiktoken",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tinynetrc",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tomlkit",
            "direct": false,
            "version": "0.13.3",
            "ecosystem": "pypi"
          },
          {
            "name": "toolz",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "torchvision",
            "direct": false,
            "version": "0.24.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tornado",
            "direct": false,
            "version": "6.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": false,
            "version": "4.67.1",
            "ecosystem": "pypi"
          },
          {
            "name": "traitlets",
            "direct": false,
            "version": "5.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": false,
            "version": "4.57.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter",
            "direct": false,
            "version": "0.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-c",
            "direct": false,
            "version": "0.24.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-java",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-javascript",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-python",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-typescript",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "twine",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "types-requests",
            "direct": false,
            "version": "2.33.0.20260408",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2025.2",
            "ecosystem": "pypi"
          },
          {
            "name": "uc-micro-py",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "umap-learn",
            "direct": false,
            "version": "0.5.9.post2",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uuid-utils",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "vina",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "vina",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "pypi"
          },
          {
            "name": "virtualenv",
            "direct": false,
            "version": "20.35.4",
            "ecosystem": "pypi"
          },
          {
            "name": "watchdog",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "0.2.14",
            "ecosystem": "pypi"
          },
          {
            "name": "websocket-client",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "werkzeug",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "wheel",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "wheel",
            "direct": false,
            "version": "0.46.3",
            "ecosystem": "pypi"
          },
          {
            "name": "wrapt",
            "direct": false,
            "version": "1.17.3",
            "ecosystem": "pypi"
          },
          {
            "name": "xarray",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "xarray",
            "direct": false,
            "version": "2025.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "xgboost",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "xlsxwriter",
            "direct": false,
            "version": "3.2.9",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "yarl",
            "direct": false,
            "version": "1.22.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zarr",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "zict",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zipp",
            "direct": false,
            "version": "3.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 530,
        "direct_count": 53,
        "indirect_count": 477
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 4,
        "merged_prs": 6,
        "open_issues": 1,
        "closed_ratio": 0.857,
        "closed_issues": 6,
        "closed_unmerged_prs": 4
      },
      "bus_factor": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "cewinharhar",
          "commits": 812,
          "avatar_url": "https://avatars.githubusercontent.com/u/64527798?u=becd9ac56d66af3ceaefc0d33438b5890f78ff6c&v=4"
        },
        {
          "type": "User",
          "login": "vmihalis",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/67660547?u=38f10089309fa3bbb23973ec3b75801dc899a0f2&v=4"
        }
      ],
      "contributors_sampled": 2,
      "top_contributor_share": 0.998
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci-basic.yml",
        "ci-testing.yml",
        "pr-validation-basic.yml",
        "public-release.yml",
        "publish-packages.yml",
        "publish-tui.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "uv.lock"
      ],
      "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": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "2 out of 2 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": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 9,
            "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 0 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": 10,
            "reason": "packaging workflow 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": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "149 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "22ee3fea7c112aeab47f9345cc92336a40de3a5b",
        "ran_at": "2026-07-15T13:15:58Z",
        "aggregate_score": 3.4,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/the-omics-os/lobster",
    "host": "github.com",
    "name": "lobster",
    "owner": "the-omics-os"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 60,
      "inputs": {
        "security": 34,
        "vitality": 80,
        "community": 48,
        "governance": 52,
        "engineering": 81
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 80,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "commits_last_year": 814,
              "human_commit_share": null,
              "days_since_last_push": 5,
              "active_weeks_last_year": 13
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 5 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "13/52 weeks with commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 13
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "814 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 814
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 56,
              "latest_release_tag": "v1.1.419",
              "releases_from_tags": false,
              "days_since_latest_release": 12,
              "mean_days_between_releases": 7.6
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "56 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 56
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 12 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 12
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~7.6 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 7.6
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "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": "no_commit_sample",
              "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": "at_risk",
        "name": "Community & Adoption",
        "value": 48,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "at_risk",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 34,
            "inputs": {
              "forks": 9,
              "stars": 42,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "42 stars",
                "points": 26.2,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 42
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "9 forks",
                "points": 7.5,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 9
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 64,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file present, not a recognized license",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "license_custom",
                    "params": {}
                  }
                ],
                "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": 0,
                "status": "missed",
                "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": 0,
                "status": "missed",
                "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": 52,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 15,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 2,
              "top_contributor_share": 0.998
            },
            "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,
                "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 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 63,
            "inputs": {
              "merged_prs": 6,
              "open_issues": 1,
              "closed_issues": 6,
              "issue_closed_ratio": 0.857,
              "closed_unmerged_prs": 4
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "86% of issues closed",
                "points": 40.1,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 86
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "6/10 decided PRs merged",
                "points": 22.9,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 6,
                      "decided": 10
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "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": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 48,
            "inputs": {
              "followers": 14,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "the-omics-os",
              "public_repos": 9,
              "account_age_days": 336
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "14 followers of the-omics-os",
                "points": 8.5,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 14,
                      "login": "the-omics-os"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "9 public repos, account ~0 yr old",
                "points": 9.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 9
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "lobster-ai"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 12
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 12 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 12
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "58 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 58
                    }
                  }
                ],
                "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": "good",
        "name": "Engineering Quality",
        "value": 81,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "2 out of 2 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": 100,
            "inputs": {
              "topics": [
                "agents",
                "bioinformatics",
                "langgraph",
                "transcriptomics",
                "lobster",
                "omics",
                "proteomics"
              ],
              "has_wiki": true,
              "homepage": "https://www.lobsterbio.com/",
              "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://www.lobsterbio.com/",
                "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": "7 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 34,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 34,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 3.4
            },
            "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 not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "2 out of 2 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 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 0 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 detected",
                "points": 5,
                "status": "met",
                "details": [],
                "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 not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "149 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "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"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 2
            },
            "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": "at_risk",
        "name": "AI Readiness",
        "value": 49,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": "Excluded from scoring (no data or not applicable): Legible commit history. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "legible_commit_history"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": null,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): Demonstrated agent practice, Automated maintenance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "demonstrated_agent_practice",
                    "automated_maintenance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 74,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "uv.lock"
              ],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "packages/lobster-genomics/lobster/agents/genomics/py.typed",
                "packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed",
                "packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed",
                "packages/lobster-ml/lobster/agents/machine_learning/py.typed",
                "packages/lobster-proteomics/lobster/agents/proteomics/py.typed",
                "packages/lobster-research/lobster/agents/data_expert/py.typed",
                "packages/lobster-research/lobster/agents/research/py.typed",
                "packages/lobster-structural-viz/lobster/agents/py.typed",
                "packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed",
                "packages/lobster-visualization/lobster/agents/py.typed"
              ],
              "agent_commit_share": null,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": null
            },
            "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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": "good",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 171948,
              "source_files_sampled": 1061,
              "oversized_source_files": 43
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python with type-check config (packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed)",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "typecheck_config_language",
                    "params": {
                      "files": "packages/lobster-genomics/lobster/agents/genomics/py.typed, packages/lobster-metabolomics/lobster/agents/metabolomics/py.typed, packages/lobster-metadata/lobster/agents/metadata_assistant/py.typed, packages/lobster-ml/lobster/agents/machine_learning/py.typed, packages/lobster-proteomics/lobster/agents/proteomics/py.typed, packages/lobster-research/lobster/agents/data_expert/py.typed, packages/lobster-research/lobster/agents/research/py.typed, packages/lobster-structural-viz/lobster/agents/py.typed, packages/lobster-transcriptomics/lobster/agents/transcriptomics/py.typed, packages/lobster-visualization/lobster/agents/py.typed",
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "43/1061 source files over 60KB",
                "points": 52.8,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1061,
                      "oversized": 43
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Could not fetch go package 'github.com/the-omics-os/lobster-tui' from its registry"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-15T13:16:10.225765Z",
  "schema_version": "0.11.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/t/the-omics-os/lobster.svg",
  "full_name": "the-omics-os/lobster",
  "license_state": "custom",
  "license_spdx": null
}

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 v1.13.0, esquema v0.11.0 — metodología completa · wiki de métricas.

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