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

crewAIInc / crewAI

Framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.

PythonMIT★ 55.653 estrellas⑂ 7849 forksdesde oct 2023Ver en GitHub ↗

crewAIInc/crewAI tiene un índice de salud de 86 sobre 100, lo que lo sitúa en la banda Excelente. Su puntuación más alta es Vitality (100/100) y la más baja, AI Readiness (74/100). Se actualizó por última vez hoy. 3 personas concentran la mayor parte del trabajo reciente.

86
global / 100
Excelente

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala 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.

86
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

crewAIOrganización
2160 seguidores32 repositorios públicosdesde may 2024

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

Métricas por categoría

Vitalidad

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

100Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
36/36Cadencia de commits — 52/52 semanas con commits
18/18Volumen de commits — 1100 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year1100
human_commit_share
days_since_last_push0
active_weeks_last_year52
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 0 días
27/27Cadencia de publicación — una versión cada ~2,4 días
0/10OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados
releases_count100
latest_release_tag1.15.3
releases_from_tagsno
days_since_latest_release0
mean_days_between_releases2,4
Excluidos de la puntuación (sin datos o no aplicable): OpenSSF Scorecard: Signed-Releases. Los pesos restantes se han renormalizado.

Comunidad y Adopción

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

85Excelente · 18% del índice global
Cómo se puntúa
60/60Estrellas — 55.653 estrellas
25/25Forks — 7849 forks
14.4/15Observadores — 387 observadores
Datos de entrada utilizados
forks7849
stars55.653
watchers387
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MIT)
18/18Guía CONTRIBUTING
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?

75Bueno · 24% del índice global
Cómo se puntúa
36/54Factor bus — la mitad de los commits recae en 3 contribuyente(s)
16.9/22.5Distribución de commits — el principal contribuyente firma el 25% de los commits
13.5/13.5Amplitud de contribuyentes — 100 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 38 contributing companies or organizations
Datos de entrada utilizados
bus_factor3
contributors_sampled100
top_contributor_share0,251
Cómo se puntúa
44.9/46.8Resolución de issues — 96% de issues cerradas
21.5/38.3Aceptación de PR — 2016/3586 PR decididos fusionados
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Datos de entrada utilizados
merged_prs2016
open_issues84
closed_issues1992
issue_closed_ratio0,96
closed_unmerged_prs1570
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
24/25Alcance del propietario — 2160 seguidores de crewAIInc
15.4/25Trayectoria — 32 repos públicos, cuenta de ~2 años
Datos de entrada utilizados
followers2160
owner_typeOrganization
is_verified
owner_logincrewAIInc
public_repos32
account_age_days784

Calidad de Ingeniería

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

96Excelente · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 14 flujo(s) de trabajo
24/24Pruebas presentes
16/16Configuración de linter
9.6/9.6Hooks de pre-commit
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config

Documentación

90Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://crewai.com
10/10Descripción del repositorio
10/10Topics — 5 topics
0/10Wiki
Datos de entrada utilizados
topicsagents, ai, ai-agents, llms, aiagentframework
has_wikino
homepagehttps://crewai.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?

74Bueno · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
6/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 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
7.5/7.5Code-Review — all changesets reviewed
2.5/2.5Contributors — project has 38 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
4.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 9
5/5SAST — SAST tool is run on all commits
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — sin datos
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0.8/7.5Vulnerabilities — 9 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate7,4
Excluidos de la puntuación (sin datos o no aplicable): packaging, signed_releases. Los pesos restantes se han renormalizado.

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.

74Bueno · 0% del índice global
Cómo se puntúa
45/45Instrucciones para agentes — AGENTS.md, lib/cli/src/crewai_cli/templates/AGENTS.md, lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md
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_filesAGENTS.md, lib/cli/src/crewai_cli/templates/AGENTS.md, lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md
agent_instruction_max_bytes31.944
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
0/18Arranque con un solo comando
22/22Pruebas automatizadas
11/11Configuración de lint / formato
11/11Verificación estática de tipos — lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed
10/10Entorno reproducible — lockfile
0/10Práctica demostrada con agentes — sin datos
5/8Mantenimiento automatizado — automatización de dependencias configurada, no observada en los commits muestreados
9/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 9
Datos de entrada utilizados
has_nixno
has_tests
lockfilesuv.lock
has_dockerfileno
typed_languageno
bootstrap_files
has_devcontainerno
has_linter_config
typecheck_configslib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed
agent_commit_share
toolchain_manifests
dependency_bot_commit_share0
Excluidos de la puntuación (sin datos o no aplicable): Práctica demostrada con agentes. 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 (lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed)
53.9/55Tamaños de archivo manejables — 25/1277 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languagePython
largest_source_bytes171.469
source_files_sampled1277
oversized_source_files25
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
20/20Servidor MCP
40/40Ejemplos ejecutables — examples
Datos de entrada utilizados
example_dirsexamples
has_mcp_signal
api_schema_files

Datos clave

55.653estrellas de GitHub
100contribuidores
1100commits en los últimos 12 meses
0días desde el último push
100versiones publicadas
3factor bus
84issues abiertas
PyPIecosistemas de paquetes

Más detalle

OpenSSF Scorecard 7.4 / 10
7.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-17 01:00 UTC

10Binary-Artifactsno binaries found in the repo
8Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
10Code-Reviewall changesets reviewed
10Contributorsproject has 38 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
9Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 9
10SASTSAST tool is run on all commits
10Security-Policysecurity policy file detected
n/dSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
1Vulnerabilities9 existing vulnerabilities detected
Todas las dependencias 587

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

RegistroPaqueteVersiónRelación
PyPIa2a-sdkindirecta
PyPIa2a-sdk0.3.26indirecta
PyPIaccelerate1.13.0indirecta
PyPIaiobotocoreindirecta
PyPIaiobotocore3.5.0indirecta
PyPIaiocacheindirecta
PyPIaiocache0.12.3indirecta
PyPIaiofilesindirecta
PyPIaiofiles24.1.0indirecta
PyPIaiohappyeyeballs2.6.2indirecta
PyPIaiohttp3.14.1indirecta
PyPIaiohttp-retry2.9.1indirecta
PyPIaioitertools0.13.0indirecta
PyPIaiolimiter1.2.1indirecta
PyPIaiomcache0.8.2indirecta
PyPIaiosignal1.4.0indirecta
PyPIaiosqliteindirecta
PyPIaiosqlite0.21.0indirecta
PyPIannotated-doc0.0.4indirecta
PyPIannotated-types0.7.0indirecta
PyPIanthropicindirecta
PyPIanthropic0.73.0indirecta
PyPIantlr4-python3-runtime4.9.3indirecta
PyPIanyio4.13.0indirecta
PyPIapify-client2.5.1indirecta
PyPIapify-shared2.2.0indirecta
PyPIappdirsindirecta
PyPIappdirs1.4.4indirecta
PyPIargcomplete3.6.3indirecta
PyPIasn1crypto1.5.1indirecta
PyPIasync-timeout5.0.1indirecta
PyPIattrs26.1.0indirecta
PyPIauthlib1.7.2indirecta
PyPIavindirecta
PyPIav13.0.0indirecta
PyPIazure-ai-inferenceindirecta
PyPIazure-ai-inference1.0.0b9indirecta
PyPIazure-core1.41.0indirecta
PyPIazure-identityindirecta
PyPIazure-identity1.25.3indirecta
PyPIbackoff2.2.1indirecta
PyPIbackports-asyncio-runner1.2.0indirecta
PyPIbandit1.9.2indirecta
PyPIbcrypt5.0.0indirecta
PyPIbeautifulsoup4indirecta
PyPIbeautifulsoup44.13.5indirecta
PyPIbedrock-agentcoreindirecta
PyPIbedrock-agentcore1.7.0indirecta
PyPIboolean-py5.0indirecta
PyPIboto3indirecta
PyPIboto31.42.91indirecta
PyPIboto3-stubs1.42.40indirecta
PyPIbotocore1.42.91indirecta
PyPIbotocore-stubs1.43.14indirecta
PyPIbracex2.6indirecta
PyPIbrowserbaseindirecta
PyPIbrowserbase1.13.0indirecta
PyPIbuild1.5.0indirecta
PyPIcachecontrol0.14.4indirecta
PyPIcachetools7.1.4indirecta
PyPIcel-pythonindirecta
PyPIcel-python0.5.0indirecta
PyPIcertifiindirecta
PyPIcertifi2026.5.20indirecta
PyPIcffi2.0.0indirecta
PyPIcfgv3.5.0indirecta
PyPIcharset-normalizer3.4.7indirecta
PyPIchromadbindirecta
PyPIchromadb1.1.1indirecta
PyPIclickindirecta
PyPIclick8.4.2indirecta
PyPIcolorama0.4.6indirecta
PyPIcoloredlogs15.0.1indirecta
PyPIcolorlog6.10.1indirecta
PyPIcommitizen4.16.3indirecta
PyPIcomposio-coreindirecta
PyPIcomposio-core0.7.21indirecta
PyPIcontextual-clientindirecta
PyPIcontextual-client0.11.0indirecta
PyPIcontourpy1.3.2indirecta
PyPIcontourpy1.3.3indirecta
PyPIcouchbaseindirecta
PyPIcouchbase4.6.1indirecta
PyPIcrewai1.14.7indirecta
PyPIcrewai1.14.8a2indirecta
PyPIcrewai1.15.3indirecta
PyPIcrewai-cli1.14.7indirecta
PyPIcrewai-cli1.15.3indirecta
PyPIcrewai-core1.14.6indirecta
PyPIcrewai-core1.14.7indirecta
PyPIcrewai-core1.15.3indirecta
PyPIcrewai-filesindirecta
PyPIcrewai-tools1.14.7indirecta
PyPIcrewai-tools1.15.3indirecta
PyPIcryptographyindirecta
PyPIcryptography48.0.1indirecta
PyPIcuda-bindings13.3.1indirecta
PyPIcuda-pathfinder1.5.5indirecta
PyPIcuda-toolkit13.0.2indirecta
PyPIcycler0.12.1indirecta
PyPIcyclonedx-python-lib9.1.0indirecta
PyPIdatabricks-sdkindirecta
PyPIdatabricks-sdk0.115.0indirecta
PyPIdataclasses-json0.6.7indirecta
PyPIdaytonaindirecta
PyPIdaytona0.140.0indirecta
PyPIdaytona-api-client0.140.0indirecta
PyPIdaytona-api-client-async0.140.0indirecta
PyPIdaytona-toolbox-api-client0.140.0indirecta
PyPIdaytona-toolbox-api-client-async0.140.0indirecta
PyPIdecli0.6.3indirecta
PyPIdecorator5.3.1indirecta
PyPIdefusedxml0.7.1indirecta
PyPIdeprecated1.3.1indirecta
PyPIdeprecation2.1.0indirecta
PyPIdill0.4.1indirecta
PyPIdistlib0.4.2indirecta
PyPIdistro1.9.0indirecta
PyPIdnspython2.8.0indirecta
PyPIdockerfile-parse2.0.1indirecta
PyPIdoclingindirecta
PyPIdocling2.97.0indirecta
PyPIdocling-coreindirecta
PyPIdocling-core2.80.0indirecta
PyPIdocling-ibm-models3.13.3indirecta
PyPIdocling-parse6.2.0indirecta
PyPIdocling-slim2.97.0indirecta
PyPIdocstring-parser0.18.0indirecta
PyPIdurationpy0.10indirecta
PyPIe2bindirecta
PyPIe2b2.20.3indirecta
PyPIe2b-code-interpreterindirecta
PyPIe2b-code-interpreter2.6.2indirecta
PyPIeffdet0.4.1indirecta
PyPIemoji2.15.0indirecta
PyPIenvirons14.6.0indirecta
PyPIet-xmlfile2.0.0indirecta
PyPIeval-type-backport0.2.2indirecta
PyPIexa-pyindirecta
PyPIexa-py2.13.2indirecta
PyPIexceptiongroup1.3.1indirecta
PyPIexecnet2.1.2indirecta
PyPIfaker40.22.0indirecta
PyPIfastapi0.136.3indirecta
PyPIfastembed0.7.4indirecta
PyPIfastuuid0.14.0indirecta
PyPIffmpeg-python0.2.0indirecta
PyPIfilelock3.29.1indirecta
PyPIfiletype1.2.0indirecta
PyPIfirecrawl-pyindirecta
PyPIfirecrawl-py4.28.2indirecta
PyPIflatbuffers25.12.19indirecta
PyPIfonttools4.63.0indirecta
PyPIfrozenlist1.8.0indirecta
PyPIfsspec2026.4.0indirecta
PyPIfuture1.0.0indirecta
PyPIgitdb4.0.12indirecta
PyPIgitpythonindirecta
PyPIgitpython3.1.50indirecta
PyPIgoogle-api-core2.31.0indirecta
PyPIgoogle-auth2.53.0indirecta
PyPIgoogle-cloud-vision3.14.0indirecta
PyPIgoogle-genaiindirecta
PyPIgoogle-genai1.65.0indirecta
PyPIgoogle-re21.1.20251105indirecta
PyPIgoogleapis-common-protos1.75.0indirecta
PyPIgreenlet3.5.1indirecta
PyPIgrpcio1.78.0indirecta
PyPIgrpcio-health-checking1.71.2indirecta
PyPIgrpcio-status1.71.2indirecta
PyPIh110.16.0indirecta
PyPIh24.3.0indirecta
PyPIhatchlingindirecta
PyPIhf-xet1.5.1indirecta
PyPIhpack4.1.0indirecta
PyPIhtml5lib1.1indirecta
PyPIhttpcore1.0.9indirecta
PyPIhttptools0.8.0indirecta
PyPIhttpxindirecta
PyPIhttpx0.28.1indirecta
PyPIhttpx-authindirecta
PyPIhttpx-auth0.23.1indirecta
PyPIhttpx-sseindirecta
PyPIhttpx-sse0.4.0indirecta
PyPIhuggingface-hub1.16.1indirecta
PyPIhumanfriendly10.0indirecta
PyPIhyperbrowserindirecta
PyPIhyperbrowser0.91.2indirecta
PyPIhyperframe6.1.0indirecta
PyPIibm-cos-sdk2.14.3indirecta
PyPIibm-cos-sdk-core2.14.3indirecta
PyPIibm-cos-sdk-s3transfer2.14.3indirecta
PyPIibm-watsonx-aiindirecta
PyPIibm-watsonx-ai1.3.42indirecta
PyPIidentify2.6.19indirecta
PyPIidna3.18indirecta
PyPIijson3.5.0indirecta
PyPIimpit0.12.0indirecta
PyPIimportlib-metadata8.5.0indirecta
PyPIimportlib-resources7.1.0indirecta
PyPIinflection0.5.1indirecta
PyPIiniconfig2.3.0indirecta
PyPIinstructorindirecta
PyPIinstructor1.15.1indirecta
PyPIinvoke3.0.3indirecta
PyPIisodate0.7.2indirecta
PyPIjinja23.1.6indirecta
PyPIjiter0.13.0indirecta
PyPIjmespath1.0.1indirecta
PyPIjoblib1.5.3indirecta
PyPIjoserfc1.7.1indirecta
PyPIjson-repairindirecta
PyPIjson-repair0.25.3indirecta
PyPIjson5indirecta
PyPIjson50.10.0indirecta
PyPIjsonlines4.0.0indirecta
PyPIjsonpatch1.33indirecta
PyPIjsonpointer3.1.1indirecta
PyPIjsonrefindirecta
PyPIjsonref1.1.0indirecta
PyPIjsonschema4.23.0indirecta
PyPIjsonschema-specifications2025.9.1indirecta
PyPIkiwisolver1.5.0indirecta
PyPIkubernetes36.0.2indirecta
PyPIlance-namespace0.8.2indirecta
PyPIlance-namespace-urllib3-client0.8.2indirecta
PyPIlancedbindirecta
PyPIlancedb0.30.0indirecta
PyPIlangchain-apifyindirecta
PyPIlangchain-apify0.1.6indirecta
PyPIlangchain-core1.4.3indirecta
PyPIlangchain-protocol0.0.16indirecta
PyPIlangchain-text-splitters1.1.2indirecta
PyPIlangdetect1.0.9indirecta
PyPIlangsmith0.8.18indirecta
PyPIlark1.3.1indirecta
PyPIlatex2mathml3.81.0indirecta
PyPIlibrt0.11.0indirecta
PyPIlicense-expression30.4.4indirecta
PyPIlinkify-it-py2.1.0indirecta
PyPIlinkup-sdkindirecta
PyPIlinkup-sdk0.18.2indirecta
PyPIlitellmindirecta
PyPIlitellm1.84.8indirecta
PyPIllvmlite0.47.0indirecta
PyPIloguru0.7.3indirecta
PyPIlomond0.3.3indirecta
PyPIlxmlindirecta
PyPIlxml6.1.1indirecta
PyPImail-parser4.3.0indirecta
PyPImarkdown3.10.2indirecta
PyPImarkdown-it-py4.2.0indirecta
PyPImarko2.2.3indirecta
PyPImarkupsafe3.0.3indirecta
PyPImarshmallow3.26.2indirecta
PyPImatplotlib3.10.9indirecta
PyPImcpindirecta
PyPImcp1.26.0indirecta
PyPImcpadaptindirecta
PyPImcpadapt0.1.19indirecta
PyPImcpadapt0.1.20indirecta
PyPImdit-py-plugins0.6.1indirecta
PyPImdurl0.1.2indirecta
PyPImem0aiindirecta
PyPImem0ai2.0.4indirecta
PyPIml-dtypes0.5.4indirecta
PyPImmh35.2.1indirecta
PyPImore-itertools11.1.0indirecta
PyPImpire2.10.2indirecta
PyPImpmath1.3.0indirecta
PyPImsal1.37.0indirecta
PyPImsal-extensions1.3.1indirecta
PyPImsgpack1.2.1indirecta
PyPImsoffcrypto-tool6.0.0indirecta
PyPImultidict6.7.1indirecta
PyPImultionindirecta
PyPImultion1.1.0indirecta
PyPImultipart1.3.1indirecta
PyPImultiprocess0.70.19indirecta
PyPImypy1.19.1indirecta
PyPImypy-boto3-bedrock-runtime1.42.82indirecta
PyPImypy-extensions1.1.0indirecta
PyPInest-asyncioindirecta
PyPInest-asyncio1.6.0indirecta
PyPInetworkx3.4.2indirecta
PyPInetworkx3.6.1indirecta
PyPInltk3.9.4indirecta
PyPInodeenv1.10.0indirecta
PyPInumba0.65.1indirecta
PyPInumpy2.2.6indirecta
PyPInumpy2.4.6indirecta
PyPInvidia-cublas13.1.1.3indirecta
PyPInvidia-cuda-cupti13.0.85indirecta
PyPInvidia-cuda-nvrtc13.0.88indirecta
PyPInvidia-cuda-runtime13.0.96indirecta
PyPInvidia-cudnn-cu139.20.0.48indirecta
PyPInvidia-cufft12.0.0.61indirecta
PyPInvidia-cufile1.15.1.6indirecta
PyPInvidia-curand10.4.0.35indirecta
PyPInvidia-cusolver12.0.4.66indirecta
PyPInvidia-cusparse12.6.3.3indirecta
PyPInvidia-cusparselt-cu130.8.1indirecta
PyPInvidia-nccl-cu132.29.7indirecta
PyPInvidia-nvjitlink13.0.88indirecta
PyPInvidia-nvshmem-cu133.4.5indirecta
PyPInvidia-nvtx13.0.85indirecta
PyPIoauthlib3.3.1indirecta
PyPIobstore0.8.2indirecta
PyPIolefile0.47indirecta
PyPIomegaconf2.3.0indirecta
PyPIonnx1.22.0indirecta
PyPIonnxruntime1.23.2indirecta
PyPIopenaiindirecta
PyPIopenai2.41.0indirecta
PyPIopencv-python4.13.0.92indirecta
PyPIopenpyxlindirecta
PyPIopenpyxl3.1.5indirecta
PyPIopentelemetry-apiindirecta
PyPIopentelemetry-api1.42.1indirecta
PyPIopentelemetry-exporter-otlp1.42.1indirecta
PyPIopentelemetry-exporter-otlp-proto-common1.42.1indirecta
PyPIopentelemetry-exporter-otlp-proto-grpc1.42.1indirecta
PyPIopentelemetry-exporter-otlp-proto-httpindirecta
PyPIopentelemetry-exporter-otlp-proto-http1.42.1indirecta
PyPIopentelemetry-proto1.42.1indirecta
PyPIopentelemetry-sdkindirecta
PyPIopentelemetry-sdk1.42.1indirecta
PyPIopentelemetry-semantic-conventions0.63b1indirecta
PyPIorjson3.11.9indirecta
PyPIoutcome1.3.0.post0indirecta
PyPIoverrides7.7.0indirecta
PyPIoxylabs2.0.0indirecta
PyPIpackageurl-python0.17.6indirecta
PyPIpackagingindirecta
PyPIpackaging26.2indirecta
PyPIpandasindirecta
PyPIpandas2.2.3indirecta
PyPIparamiko5.0.0indirecta
PyPIparsimonious0.11.0indirecta
PyPIpathspec1.1.1indirecta
PyPIpatronusindirecta
PyPIpatronus0.1.24indirecta
PyPIpatronus-api0.3.0indirecta
PyPIpdf2image1.17.0indirecta
PyPIpdfminer-six20251230indirecta
PyPIpdfplumberindirecta
PyPIpdfplumber0.11.9indirecta
PyPIpendulum3.2.0indirecta
PyPIpi-heif1.3.0indirecta
PyPIpikepdf10.8.0indirecta
PyPIpillowindirecta
PyPIpillow12.3.0indirecta
PyPIpip26.1.2indirecta
PyPIpip-api0.0.34indirecta
PyPIpip-audit2.9.0indirecta
PyPIpip-requirements-parser32.0.1indirecta
PyPIplatformdirs4.10.0indirecta
PyPIplaywrightindirecta
PyPIplaywright1.60.0indirecta
PyPIpluggy1.6.0indirecta
PyPIpolyfactory3.3.0indirecta
PyPIportalockerindirecta
PyPIportalocker2.7.0indirecta
PyPIposthog5.4.0indirecta
PyPIpre-commit4.5.1indirecta
PyPIprompt-toolkit3.0.51indirecta
PyPIpropcache0.5.2indirecta
PyPIproto-plus1.28.0indirecta
PyPIprotobuf5.29.6indirecta
PyPIpsutil7.2.2indirecta
PyPIpsycopg2-binaryindirecta
PyPIpsycopg2-binary2.9.12indirecta
PyPIpy-rust-stemmers0.1.8indirecta
PyPIpy-serializable2.1.0indirecta
PyPIpyarrow24.0.0indirecta
PyPIpyasn10.6.3indirecta
PyPIpyasn1-modules0.4.2indirecta
PyPIpybase641.4.3indirecta
PyPIpyclipper1.4.0indirecta
PyPIpycocotools2.0.11indirecta
PyPIpycparser3.0indirecta
PyPIpydanticindirecta
PyPIpydantic2.12.5indirecta
PyPIpydantic-core2.41.5indirecta
PyPIpydantic-settingsindirecta
PyPIpydantic-settings2.14.2indirecta
PyPIpyee13.0.1indirecta
PyPIpygithubindirecta
PyPIpygithub1.59.1indirecta
PyPIpygments2.20.0indirecta
PyPIpyjwtindirecta
PyPIpyjwt2.13.0indirecta
PyPIpylatexenc2.10indirecta
PyPIpymongoindirecta
PyPIpymongo4.17.0indirecta
PyPIpymupdfindirecta
PyPIpymupdf1.26.7indirecta
PyPIpymysqlindirecta
PyPIpymysql1.2.0indirecta
PyPIpynacl1.6.2indirecta
PyPIpyopenssl26.2.0indirecta
PyPIpypandoc1.17indirecta
PyPIpyparsing3.3.2indirecta
PyPIpypdfindirecta
PyPIpypdf6.13.3indirecta
PyPIpypdfium25.9.0indirecta
PyPIpyperclip1.11.0indirecta
PyPIpypika0.51.1indirecta
PyPIpyproject-hooks1.2.0indirecta
PyPIpyreadline33.5.6indirecta
PyPIpysher1.0.8indirecta
PyPIpytest9.0.3indirecta
PyPIpytest-asyncio1.3.0indirecta
PyPIpytest-randomly4.0.1indirecta
PyPIpytest-recording0.13.4indirecta
PyPIpytest-split0.11.0indirecta
PyPIpytest-subprocess1.5.3indirecta
PyPIpytest-timeout2.4.0indirecta
PyPIpytest-xdist3.8.0indirecta
PyPIpython-dateutil2.9.0.post0indirecta
PyPIpython-discovery1.4.0indirecta
PyPIpython-docxindirecta
PyPIpython-docx1.2.0indirecta
PyPIpython-dotenvindirecta
PyPIpython-dotenv1.2.2indirecta
PyPIpython-iso6392026.4.20indirecta
PyPIpython-magicindirecta
PyPIpython-magic0.4.27indirecta
PyPIpython-multipart0.0.32indirecta
PyPIpython-oxmsg0.0.2indirecta
PyPIpython-pptx1.0.2indirecta
PyPIpytubeindirecta
PyPIpytube15.0.0indirecta
PyPIpytz2026.2indirecta
PyPIpywin32312indirecta
PyPIpyyamlindirecta
PyPIpyyaml6.0.3indirecta
PyPIqdrant-clientindirecta
PyPIqdrant-client1.14.3indirecta
PyPIqdrant-edge-pyindirecta
PyPIqdrant-edge-py0.7.2indirecta
PyPIquestionary2.1.1indirecta
PyPIrapidfuzz3.14.5indirecta
PyPIrapidocr3.8.1indirecta
PyPIredis8.0.0indirecta
PyPIreferencing0.37.0indirecta
PyPIregexindirecta
PyPIregex2026.1.15indirecta
PyPIrequestsindirecta
PyPIrequests2.34.2indirecta
PyPIrequests-oauthlib2.0.0indirecta
PyPIrequests-toolbelt1.0.0indirecta
PyPIrichindirecta
PyPIrich15.0.0indirecta
PyPIrpds-py0.30.0indirecta
PyPIrpds-py2026.5.1indirecta
PyPIrtree1.4.1indirecta
PyPIruff0.15.1indirecta
PyPIs3transfer0.16.1indirecta
PyPIsafetensors0.8.0indirecta
PyPIscipy1.15.3indirecta
PyPIscipy1.17.1indirecta
PyPIscrapegraph-pyindirecta
PyPIscrapegraph-py1.47.0indirecta
PyPIscrapfly-sdkindirecta
PyPIscrapfly-sdk0.10.5indirecta
PyPIseleniumindirecta
PyPIselenium4.44.0indirecta
PyPIsemchunk3.2.5indirecta
PyPIsemver3.0.4indirecta
PyPIsentry-sdk2.62.0indirecta
PyPIserpapiindirecta
PyPIserpapi1.0.2indirecta
PyPIsetuptools83.0.0indirecta
PyPIshapely2.1.2indirecta
PyPIshellingham1.5.4indirecta
PyPIsinglestoredbindirecta
PyPIsinglestoredb1.16.10indirecta
PyPIsix1.17.0indirecta
PyPIsmmap5.0.3indirecta
PyPIsniffio1.3.1indirecta
PyPIsnowflake-connector-pythonindirecta
PyPIsnowflake-connector-python4.6.0indirecta
PyPIsnowflake-sqlalchemyindirecta
PyPIsnowflake-sqlalchemy1.10.0indirecta
PyPIsortedcontainers2.4.0indirecta
PyPIsoupsieve2.8.4indirecta
PyPIspider-clientindirecta
PyPIspider-client0.1.88indirecta
PyPIsqlalchemyindirecta
PyPIsqlalchemy2.0.50indirecta
PyPIsqlparams6.2.0indirecta
PyPIsse-starlette3.4.4indirecta
PyPIstagehandindirecta
PyPIstagehand3.21.0indirecta
PyPIstarlette1.3.1indirecta
PyPIstevedore5.8.0indirecta
PyPIsympy1.14.0indirecta
PyPItabulate0.10.0indirecta
PyPItavily-pythonindirecta
PyPItavily-python0.7.25indirecta
PyPItenacity9.1.4indirecta
PyPItermcolor3.3.0indirecta
PyPItextualindirecta
PyPItextual8.2.7indirecta
PyPItiktokenindirecta
PyPItiktoken0.12.0indirecta
PyPItimm1.0.27indirecta
PyPItinytagindirecta
PyPItinytag2.2.1indirecta
PyPItokenizersindirecta
PyPItokenizers0.22.2indirecta
PyPItoml0.10.2indirecta
PyPItomliindirecta
PyPItomli2.0.2indirecta
PyPItomli-windirecta
PyPItomli-w1.1.0indirecta
PyPItomlkitindirecta
PyPItomlkit0.13.3indirecta
PyPItoonify1.6.0indirecta
PyPItorch2.12.0indirecta
PyPItorchvision0.27.0indirecta
PyPItqdm4.68.2indirecta
PyPItransformers5.10.2indirecta
PyPItree-sitter0.25.2indirecta
PyPItree-sitter-c0.24.2indirecta
PyPItree-sitter-javascript0.25.0indirecta
PyPItree-sitter-python0.25.0indirecta
PyPItree-sitter-typescript0.23.2indirecta
PyPItrio0.33.0indirecta
PyPItrio-websocket0.12.2indirecta
PyPItriton3.7.0indirecta
PyPItyper0.21.2indirecta
PyPItypes-aiofiles25.1.0.20260518indirecta
PyPItypes-appdirs1.4.3.5indirecta
PyPItypes-awscrt0.34.1indirecta
PyPItypes-cffi2.0.0.20260518indirecta
PyPItypes-psycopg22.9.21.20251012indirecta
PyPItypes-pymysql1.1.0.20250916indirecta
PyPItypes-pyopenssl24.1.0.20240722indirecta
PyPItypes-pyyaml6.0.12.20260518indirecta
PyPItypes-redis4.6.0.20241004indirecta
PyPItypes-regex2026.1.15.20260116indirecta
PyPItypes-requests2.31.0.20240406indirecta
PyPItypes-s3transfer0.16.0indirecta
PyPItypes-setuptools82.0.0.20260518indirecta
PyPItyping-extensions4.15.0indirecta
PyPItyping-inspect0.9.0indirecta
PyPItyping-inspection0.4.2indirecta
PyPItzdata2026.2indirecta
PyPIuc-micro-py2.0.0indirecta
PyPIunstructuredindirecta
PyPIunstructured0.18.32indirecta
PyPIunstructured-client0.42.12indirecta
PyPIunstructured-inference1.2.0indirecta
PyPIunstructured-pytesseract0.3.15indirecta
PyPIurllib32.7.0indirecta
PyPIuuid-utils0.16.0indirecta
PyPIuvindirecta
PyPIuv0.11.19indirecta
PyPIuvicorn0.49.0indirecta
PyPIuvloop0.22.1indirecta
PyPIvalidators0.35.0indirecta
PyPIvcrpy8.2.1indirecta
PyPIvirtualenv21.4.2indirecta
PyPIvoyageaiindirecta
PyPIvoyageai0.3.7indirecta
PyPIwatchfiles1.2.0indirecta
PyPIwcmatch10.1indirecta
PyPIwcwidth0.8.1indirecta
PyPIweaviate-clientindirecta
PyPIweaviate-client4.16.2indirecta
PyPIweaviate-client4.21.3indirecta
PyPIwebencodings0.5.1indirecta
PyPIwebsocket-client1.9.0indirecta
PyPIwebsockets15.0.1indirecta
PyPIwin32-setctime1.2.0indirecta
PyPIwrapt2.2.1indirecta
PyPIwsproto1.3.2indirecta
PyPIxlrd2.0.2indirecta
PyPIxlsxwriter3.2.9indirecta
PyPIxxhash3.7.0indirecta
PyPIyarl1.24.2indirecta
PyPIyoutube-transcript-apiindirecta
PyPIyoutube-transcript-api1.2.4indirecta
PyPIzipp4.1.0indirecta
PyPIzstandard0.25.0indirecta
Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "agents",
        "ai",
        "ai-agents",
        "llms",
        "aiagentframework"
      ],
      "is_fork": false,
      "size_kb": 284465,
      "has_wiki": false,
      "homepage": "https://crewai.com",
      "languages": {
        "CSS": 24684,
        "Jinja": 17235,
        "Shell": 25,
        "Python": 10064333,
        "JavaScript": 84736
      },
      "pushed_at": "2026-07-16T20:06:01Z",
      "created_at": "2023-10-27T03:26:59Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-17T00:58:31Z",
      "description": "Framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": "https://crewai.com",
      "name": "crewAI",
      "type": "Organization",
      "login": "crewAIInc",
      "company": null,
      "location": "United States of America",
      "followers": 2160,
      "avatar_url": "https://avatars.githubusercontent.com/u/170677839?v=4",
      "created_at": "2024-05-23T21:31:04Z",
      "is_verified": null,
      "public_repos": 32,
      "account_age_days": 784
    },
    "activity": {
      "releases_count": 100,
      "commits_last_year": 1100,
      "latest_release_at": "2026-07-16T19:43:04Z",
      "latest_release_tag": "1.15.3",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 52,
      "days_since_latest_release": 0,
      "mean_days_between_releases": 2.4
    },
    "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": []
    },
    "popularity": {
      "forks": 7849,
      "stars": 55653,
      "watchers": 387,
      "open_issues_and_prs": 656
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": true,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "lib/cli/src/crewai_cli/py.typed",
        "lib/crewai-core/src/crewai_core/py.typed",
        "lib/crewai-files/src/crewai_files/py.typed",
        "lib/crewai-tools/src/crewai_tools/py.typed",
        "lib/crewai/src/crewai/py.typed"
      ],
      "largest_source_bytes": 171469,
      "source_files_sampled": 1277,
      "oversized_source_files": 25,
      "agent_instruction_files": [
        "AGENTS.md",
        "lib/cli/src/crewai_cli/templates/AGENTS.md",
        "lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md"
      ],
      "agent_instruction_max_bytes": 31944
    },
    "dependencies": {
      "manifests": [
        "pyproject.toml"
      ],
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "a2a-sdk",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "a2a-sdk",
            "direct": false,
            "version": "0.3.26",
            "ecosystem": "pypi"
          },
          {
            "name": "accelerate",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiobotocore",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "aiobotocore",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiocache",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "aiocache",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "pypi"
          },
          {
            "name": "aiofiles",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "aiofiles",
            "direct": false,
            "version": "24.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohappyeyeballs",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohttp",
            "direct": false,
            "version": "3.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiohttp-retry",
            "direct": false,
            "version": "2.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aioitertools",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiolimiter",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "aiomcache",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosignal",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "aiosqlite",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "aiosqlite",
            "direct": false,
            "version": "0.21.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": "anthropic",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "anthropic",
            "direct": false,
            "version": "0.73.0",
            "ecosystem": "pypi"
          },
          {
            "name": "antlr4-python3-runtime",
            "direct": false,
            "version": "4.9.3",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "apify-client",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "apify-shared",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "appdirs",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "appdirs",
            "direct": false,
            "version": "1.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "argcomplete",
            "direct": false,
            "version": "3.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "asn1crypto",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "async-timeout",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "av",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "av",
            "direct": false,
            "version": "13.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-ai-inference",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "azure-ai-inference",
            "direct": false,
            "version": "1.0.0b9",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-core",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "azure-identity",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "azure-identity",
            "direct": false,
            "version": "1.25.3",
            "ecosystem": "pypi"
          },
          {
            "name": "backoff",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "backports-asyncio-runner",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "bandit",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "pypi"
          },
          {
            "name": "bcrypt",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": false,
            "version": "4.13.5",
            "ecosystem": "pypi"
          },
          {
            "name": "bedrock-agentcore",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "bedrock-agentcore",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "boolean-py",
            "direct": false,
            "version": "5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "boto3",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "boto3",
            "direct": false,
            "version": "1.42.91",
            "ecosystem": "pypi"
          },
          {
            "name": "boto3-stubs",
            "direct": false,
            "version": "1.42.40",
            "ecosystem": "pypi"
          },
          {
            "name": "botocore",
            "direct": false,
            "version": "1.42.91",
            "ecosystem": "pypi"
          },
          {
            "name": "botocore-stubs",
            "direct": false,
            "version": "1.43.14",
            "ecosystem": "pypi"
          },
          {
            "name": "bracex",
            "direct": false,
            "version": "2.6",
            "ecosystem": "pypi"
          },
          {
            "name": "browserbase",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "browserbase",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "build",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cachecontrol",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "cel-python",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "cel-python",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2026.5.20",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cfgv",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.7",
            "ecosystem": "pypi"
          },
          {
            "name": "chromadb",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "chromadb",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.4.2",
            "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": "commitizen",
            "direct": false,
            "version": "4.16.3",
            "ecosystem": "pypi"
          },
          {
            "name": "composio-core",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "composio-core",
            "direct": false,
            "version": "0.7.21",
            "ecosystem": "pypi"
          },
          {
            "name": "contextual-client",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "contextual-client",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "contourpy",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "contourpy",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "couchbase",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "couchbase",
            "direct": false,
            "version": "4.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai",
            "direct": false,
            "version": "1.14.7",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai",
            "direct": false,
            "version": "1.14.8a2",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-cli",
            "direct": false,
            "version": "1.14.7",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-cli",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-core",
            "direct": false,
            "version": "1.14.6",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-core",
            "direct": false,
            "version": "1.14.7",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-core",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-files",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-tools",
            "direct": false,
            "version": "1.14.7",
            "ecosystem": "pypi"
          },
          {
            "name": "crewai-tools",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "48.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-bindings",
            "direct": false,
            "version": "13.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-pathfinder",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-toolkit",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cycler",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cyclonedx-python-lib",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "databricks-sdk",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "databricks-sdk",
            "direct": false,
            "version": "0.115.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dataclasses-json",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "pypi"
          },
          {
            "name": "daytona",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "daytona",
            "direct": false,
            "version": "0.140.0",
            "ecosystem": "pypi"
          },
          {
            "name": "daytona-api-client",
            "direct": false,
            "version": "0.140.0",
            "ecosystem": "pypi"
          },
          {
            "name": "daytona-api-client-async",
            "direct": false,
            "version": "0.140.0",
            "ecosystem": "pypi"
          },
          {
            "name": "daytona-toolbox-api-client",
            "direct": false,
            "version": "0.140.0",
            "ecosystem": "pypi"
          },
          {
            "name": "daytona-toolbox-api-client-async",
            "direct": false,
            "version": "0.140.0",
            "ecosystem": "pypi"
          },
          {
            "name": "decli",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "decorator",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "defusedxml",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "deprecated",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "deprecation",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dill",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "distlib",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "distro",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dnspython",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dockerfile-parse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "docling",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "docling",
            "direct": false,
            "version": "2.97.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-core",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "docling-core",
            "direct": false,
            "version": "2.80.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-ibm-models",
            "direct": false,
            "version": "3.13.3",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-parse",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docling-slim",
            "direct": false,
            "version": "2.97.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "durationpy",
            "direct": false,
            "version": "0.10",
            "ecosystem": "pypi"
          },
          {
            "name": "e2b",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "e2b",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "pypi"
          },
          {
            "name": "e2b-code-interpreter",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "e2b-code-interpreter",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "effdet",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "emoji",
            "direct": false,
            "version": "2.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "environs",
            "direct": false,
            "version": "14.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "et-xmlfile",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "eval-type-backport",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "exa-py",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "exa-py",
            "direct": false,
            "version": "2.13.2",
            "ecosystem": "pypi"
          },
          {
            "name": "exceptiongroup",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "execnet",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "faker",
            "direct": false,
            "version": "40.22.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi",
            "direct": false,
            "version": "0.136.3",
            "ecosystem": "pypi"
          },
          {
            "name": "fastembed",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "pypi"
          },
          {
            "name": "fastuuid",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ffmpeg-python",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": false,
            "version": "3.29.1",
            "ecosystem": "pypi"
          },
          {
            "name": "filetype",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "firecrawl-py",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "firecrawl-py",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "pypi"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "pypi"
          },
          {
            "name": "fonttools",
            "direct": false,
            "version": "4.63.0",
            "ecosystem": "pypi"
          },
          {
            "name": "frozenlist",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2026.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "future",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "gitdb",
            "direct": false,
            "version": "4.0.12",
            "ecosystem": "pypi"
          },
          {
            "name": "gitpython",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "gitpython",
            "direct": false,
            "version": "3.1.50",
            "ecosystem": "pypi"
          },
          {
            "name": "google-api-core",
            "direct": false,
            "version": "2.31.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-auth",
            "direct": false,
            "version": "2.53.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-cloud-vision",
            "direct": false,
            "version": "3.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-genai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "google-genai",
            "direct": false,
            "version": "1.65.0",
            "ecosystem": "pypi"
          },
          {
            "name": "google-re2",
            "direct": false,
            "version": "1.1.20251105",
            "ecosystem": "pypi"
          },
          {
            "name": "googleapis-common-protos",
            "direct": false,
            "version": "1.75.0",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.78.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio-health-checking",
            "direct": false,
            "version": "1.71.2",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio-status",
            "direct": false,
            "version": "1.71.2",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hatchling",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "hpack",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "html5lib",
            "direct": false,
            "version": "1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-auth",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-auth",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-sse",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-sse",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "1.16.1",
            "ecosystem": "pypi"
          },
          {
            "name": "humanfriendly",
            "direct": false,
            "version": "10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hyperbrowser",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "hyperbrowser",
            "direct": false,
            "version": "0.91.2",
            "ecosystem": "pypi"
          },
          {
            "name": "hyperframe",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ibm-cos-sdk",
            "direct": false,
            "version": "2.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "ibm-cos-sdk-core",
            "direct": false,
            "version": "2.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "ibm-cos-sdk-s3transfer",
            "direct": false,
            "version": "2.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "ibm-watsonx-ai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "ibm-watsonx-ai",
            "direct": false,
            "version": "1.3.42",
            "ecosystem": "pypi"
          },
          {
            "name": "identify",
            "direct": false,
            "version": "2.6.19",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.18",
            "ecosystem": "pypi"
          },
          {
            "name": "ijson",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "impit",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-metadata",
            "direct": false,
            "version": "8.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-resources",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "inflection",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "instructor",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "instructor",
            "direct": false,
            "version": "1.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "invoke",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "isodate",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": false,
            "version": "3.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jmespath",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "joserfc",
            "direct": false,
            "version": "1.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "json-repair",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "json-repair",
            "direct": false,
            "version": "0.25.3",
            "ecosystem": "pypi"
          },
          {
            "name": "json5",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "0.10.0",
            "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.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonref",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "jsonref",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "kiwisolver",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "kubernetes",
            "direct": false,
            "version": "36.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "lance-namespace",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "lance-namespace-urllib3-client",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "lancedb",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lancedb",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-apify",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-apify",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-core",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-protocol",
            "direct": false,
            "version": "0.0.16",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-text-splitters",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "langdetect",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.8.18",
            "ecosystem": "pypi"
          },
          {
            "name": "lark",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "latex2mathml",
            "direct": false,
            "version": "3.81.0",
            "ecosystem": "pypi"
          },
          {
            "name": "librt",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "license-expression",
            "direct": false,
            "version": "30.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "linkify-it-py",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "linkup-sdk",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "linkup-sdk",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "pypi"
          },
          {
            "name": "litellm",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "litellm",
            "direct": false,
            "version": "1.84.8",
            "ecosystem": "pypi"
          },
          {
            "name": "llvmlite",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "pypi"
          },
          {
            "name": "loguru",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "pypi"
          },
          {
            "name": "lomond",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": false,
            "version": "6.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mail-parser",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown",
            "direct": false,
            "version": "3.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "marko",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "marshmallow",
            "direct": false,
            "version": "3.26.2",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib",
            "direct": false,
            "version": "3.10.9",
            "ecosystem": "pypi"
          },
          {
            "name": "mcp",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mcp",
            "direct": false,
            "version": "1.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mcpadapt",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mcpadapt",
            "direct": false,
            "version": "0.1.19",
            "ecosystem": "pypi"
          },
          {
            "name": "mcpadapt",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "pypi"
          },
          {
            "name": "mdit-py-plugins",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mem0ai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mem0ai",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "ml-dtypes",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "mmh3",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "more-itertools",
            "direct": false,
            "version": "11.1.0",
            "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.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "msal-extensions",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "msgpack",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "msoffcrypto-tool",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "multidict",
            "direct": false,
            "version": "6.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "multion",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "multion",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "multipart",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "multiprocess",
            "direct": false,
            "version": "0.70.19",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy",
            "direct": false,
            "version": "1.19.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy-boto3-bedrock-runtime",
            "direct": false,
            "version": "1.42.82",
            "ecosystem": "pypi"
          },
          {
            "name": "mypy-extensions",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nest-asyncio",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "nest-asyncio",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nltk",
            "direct": false,
            "version": "3.9.4",
            "ecosystem": "pypi"
          },
          {
            "name": "nodeenv",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "numba",
            "direct": false,
            "version": "0.65.1",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.2.6",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cublas",
            "direct": false,
            "version": "13.1.1.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-cupti",
            "direct": false,
            "version": "13.0.85",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-nvrtc",
            "direct": false,
            "version": "13.0.88",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-runtime",
            "direct": false,
            "version": "13.0.96",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cudnn-cu13",
            "direct": false,
            "version": "9.20.0.48",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufft",
            "direct": false,
            "version": "12.0.0.61",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufile",
            "direct": false,
            "version": "1.15.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-curand",
            "direct": false,
            "version": "10.4.0.35",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusolver",
            "direct": false,
            "version": "12.0.4.66",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparse",
            "direct": false,
            "version": "12.6.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparselt-cu13",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nccl-cu13",
            "direct": false,
            "version": "2.29.7",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvjitlink",
            "direct": false,
            "version": "13.0.88",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvshmem-cu13",
            "direct": false,
            "version": "3.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvtx",
            "direct": false,
            "version": "13.0.85",
            "ecosystem": "pypi"
          },
          {
            "name": "oauthlib",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "obstore",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "pypi"
          },
          {
            "name": "olefile",
            "direct": false,
            "version": "0.47",
            "ecosystem": "pypi"
          },
          {
            "name": "omegaconf",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "onnx",
            "direct": false,
            "version": "1.22.0",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.23.2",
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": false,
            "version": "2.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "opencv-python",
            "direct": false,
            "version": "4.13.0.92",
            "ecosystem": "pypi"
          },
          {
            "name": "openpyxl",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "openpyxl",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-api",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-api",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-common",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-grpc",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-http",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-exporter-otlp-proto-http",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-proto",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-sdk",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-sdk",
            "direct": false,
            "version": "1.42.1",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-semantic-conventions",
            "direct": false,
            "version": "0.63b1",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.9",
            "ecosystem": "pypi"
          },
          {
            "name": "outcome",
            "direct": false,
            "version": "1.3.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "overrides",
            "direct": false,
            "version": "7.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "oxylabs",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packageurl-python",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "26.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "paramiko",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "parsimonious",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pathspec",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "patronus",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "patronus",
            "direct": false,
            "version": "0.1.24",
            "ecosystem": "pypi"
          },
          {
            "name": "patronus-api",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pdf2image",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfminer-six",
            "direct": false,
            "version": "20251230",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfplumber",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pdfplumber",
            "direct": false,
            "version": "0.11.9",
            "ecosystem": "pypi"
          },
          {
            "name": "pendulum",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pi-heif",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pikepdf",
            "direct": false,
            "version": "10.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": "12.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pip",
            "direct": false,
            "version": "26.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pip-api",
            "direct": false,
            "version": "0.0.34",
            "ecosystem": "pypi"
          },
          {
            "name": "pip-audit",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pip-requirements-parser",
            "direct": false,
            "version": "32.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "polyfactory",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "posthog",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pre-commit",
            "direct": false,
            "version": "4.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "prompt-toolkit",
            "direct": false,
            "version": "3.0.51",
            "ecosystem": "pypi"
          },
          {
            "name": "propcache",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "proto-plus",
            "direct": false,
            "version": "1.28.0",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "5.29.6",
            "ecosystem": "pypi"
          },
          {
            "name": "psutil",
            "direct": false,
            "version": "7.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "psycopg2-binary",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "psycopg2-binary",
            "direct": false,
            "version": "2.9.12",
            "ecosystem": "pypi"
          },
          {
            "name": "py-rust-stemmers",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "pypi"
          },
          {
            "name": "py-serializable",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow",
            "direct": false,
            "version": "24.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyasn1",
            "direct": false,
            "version": "0.6.3",
            "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.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycocotools",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.12.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.41.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.14.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyee",
            "direct": false,
            "version": "13.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pygithub",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pygithub",
            "direct": false,
            "version": "1.59.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pylatexenc",
            "direct": false,
            "version": "2.10",
            "ecosystem": "pypi"
          },
          {
            "name": "pymongo",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pymongo",
            "direct": false,
            "version": "4.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pymupdf",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pymupdf",
            "direct": false,
            "version": "1.26.7",
            "ecosystem": "pypi"
          },
          {
            "name": "pymysql",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pymysql",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pynacl",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyopenssl",
            "direct": false,
            "version": "26.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pypandoc",
            "direct": false,
            "version": "1.17",
            "ecosystem": "pypi"
          },
          {
            "name": "pyparsing",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdf",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pypdf",
            "direct": false,
            "version": "6.13.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdfium2",
            "direct": false,
            "version": "5.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyperclip",
            "direct": false,
            "version": "1.11.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.6",
            "ecosystem": "pypi"
          },
          {
            "name": "pysher",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "9.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-asyncio",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-randomly",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-recording",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-split",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-subprocess",
            "direct": false,
            "version": "1.5.3",
            "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-discovery",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-docx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "python-docx",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-iso639",
            "direct": false,
            "version": "2026.4.20",
            "ecosystem": "pypi"
          },
          {
            "name": "python-magic",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "python-magic",
            "direct": false,
            "version": "0.4.27",
            "ecosystem": "pypi"
          },
          {
            "name": "python-multipart",
            "direct": false,
            "version": "0.0.32",
            "ecosystem": "pypi"
          },
          {
            "name": "python-oxmsg",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-pptx",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytube",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytube",
            "direct": false,
            "version": "15.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2026.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32",
            "direct": false,
            "version": "312",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": "1.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-edge-py",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-edge-py",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "questionary",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rapidfuzz",
            "direct": false,
            "version": "3.14.5",
            "ecosystem": "pypi"
          },
          {
            "name": "rapidocr",
            "direct": false,
            "version": "3.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "redis",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "2026.1.15",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": "2.34.2",
            "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": "rich",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "15.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "2026.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rtree",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "s3transfer",
            "direct": false,
            "version": "0.16.1",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "scrapegraph-py",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scrapegraph-py",
            "direct": false,
            "version": "1.47.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scrapfly-sdk",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "scrapfly-sdk",
            "direct": false,
            "version": "0.10.5",
            "ecosystem": "pypi"
          },
          {
            "name": "selenium",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "selenium",
            "direct": false,
            "version": "4.44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "semchunk",
            "direct": false,
            "version": "3.2.5",
            "ecosystem": "pypi"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "sentry-sdk",
            "direct": false,
            "version": "2.62.0",
            "ecosystem": "pypi"
          },
          {
            "name": "serpapi",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "serpapi",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": "83.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "shapely",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "shellingham",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "singlestoredb",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "singlestoredb",
            "direct": false,
            "version": "1.16.10",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "smmap",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "sniffio",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "snowflake-connector-python",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "snowflake-connector-python",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "snowflake-sqlalchemy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "snowflake-sqlalchemy",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sortedcontainers",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.8.4",
            "ecosystem": "pypi"
          },
          {
            "name": "spider-client",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "spider-client",
            "direct": false,
            "version": "0.1.88",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": false,
            "version": "2.0.50",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlparams",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sse-starlette",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "stagehand",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "stagehand",
            "direct": false,
            "version": "3.21.0",
            "ecosystem": "pypi"
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "stevedore",
            "direct": false,
            "version": "5.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sympy",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tabulate",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tavily-python",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tavily-python",
            "direct": false,
            "version": "0.7.25",
            "ecosystem": "pypi"
          },
          {
            "name": "tenacity",
            "direct": false,
            "version": "9.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "termcolor",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "textual",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "textual",
            "direct": false,
            "version": "8.2.7",
            "ecosystem": "pypi"
          },
          {
            "name": "tiktoken",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tiktoken",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "timm",
            "direct": false,
            "version": "1.0.27",
            "ecosystem": "pypi"
          },
          {
            "name": "tinytag",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tinytag",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.22.2",
            "ecosystem": "pypi"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli-w",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tomli-w",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tomlkit",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "tomlkit",
            "direct": false,
            "version": "0.13.3",
            "ecosystem": "pypi"
          },
          {
            "name": "toonify",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "torchvision",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": false,
            "version": "4.68.2",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": false,
            "version": "5.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter",
            "direct": false,
            "version": "0.25.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tree-sitter-c",
            "direct": false,
            "version": "0.24.2",
            "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": "trio",
            "direct": false,
            "version": "0.33.0",
            "ecosystem": "pypi"
          },
          {
            "name": "trio-websocket",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "pypi"
          },
          {
            "name": "types-aiofiles",
            "direct": false,
            "version": "25.1.0.20260518",
            "ecosystem": "pypi"
          },
          {
            "name": "types-appdirs",
            "direct": false,
            "version": "1.4.3.5",
            "ecosystem": "pypi"
          },
          {
            "name": "types-awscrt",
            "direct": false,
            "version": "0.34.1",
            "ecosystem": "pypi"
          },
          {
            "name": "types-cffi",
            "direct": false,
            "version": "2.0.0.20260518",
            "ecosystem": "pypi"
          },
          {
            "name": "types-psycopg2",
            "direct": false,
            "version": "2.9.21.20251012",
            "ecosystem": "pypi"
          },
          {
            "name": "types-pymysql",
            "direct": false,
            "version": "1.1.0.20250916",
            "ecosystem": "pypi"
          },
          {
            "name": "types-pyopenssl",
            "direct": false,
            "version": "24.1.0.20240722",
            "ecosystem": "pypi"
          },
          {
            "name": "types-pyyaml",
            "direct": false,
            "version": "6.0.12.20260518",
            "ecosystem": "pypi"
          },
          {
            "name": "types-redis",
            "direct": false,
            "version": "4.6.0.20241004",
            "ecosystem": "pypi"
          },
          {
            "name": "types-regex",
            "direct": false,
            "version": "2026.1.15.20260116",
            "ecosystem": "pypi"
          },
          {
            "name": "types-requests",
            "direct": false,
            "version": "2.31.0.20240406",
            "ecosystem": "pypi"
          },
          {
            "name": "types-s3transfer",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "types-setuptools",
            "direct": false,
            "version": "82.0.0.20260518",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspect",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2026.2",
            "ecosystem": "pypi"
          },
          {
            "name": "uc-micro-py",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured",
            "direct": false,
            "version": "0.18.32",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-client",
            "direct": false,
            "version": "0.42.12",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-inference",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "unstructured-pytesseract",
            "direct": false,
            "version": "0.3.15",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uuid-utils",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uv",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "uv",
            "direct": false,
            "version": "0.11.19",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.49.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "validators",
            "direct": false,
            "version": "0.35.0",
            "ecosystem": "pypi"
          },
          {
            "name": "vcrpy",
            "direct": false,
            "version": "8.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "virtualenv",
            "direct": false,
            "version": "21.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "voyageai",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "voyageai",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "wcmatch",
            "direct": false,
            "version": "10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "pypi"
          },
          {
            "name": "weaviate-client",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "weaviate-client",
            "direct": false,
            "version": "4.16.2",
            "ecosystem": "pypi"
          },
          {
            "name": "weaviate-client",
            "direct": false,
            "version": "4.21.3",
            "ecosystem": "pypi"
          },
          {
            "name": "webencodings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "websocket-client",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "win32-setctime",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "wrapt",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "wsproto",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "xlrd",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "xlsxwriter",
            "direct": false,
            "version": "3.2.9",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "yarl",
            "direct": false,
            "version": "1.24.2",
            "ecosystem": "pypi"
          },
          {
            "name": "youtube-transcript-api",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "youtube-transcript-api",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "pypi"
          },
          {
            "name": "zipp",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 587,
        "direct_count": 0,
        "indirect_count": 587
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 572,
        "merged_prs": 2016,
        "open_issues": 84,
        "closed_ratio": 0.96,
        "closed_issues": 1992,
        "closed_unmerged_prs": 1570
      },
      "bus_factor": 3,
      "top_contributors": [
        {
          "type": "User",
          "login": "joaomdmoura",
          "commits": 611,
          "avatar_url": "https://avatars.githubusercontent.com/u/667063?u=c0ea6956bba58ee8baabb6568f0374263ed96f1d&v=4"
        },
        {
          "type": "User",
          "login": "greysonlalonde",
          "commits": 522,
          "avatar_url": "https://avatars.githubusercontent.com/u/77358368?u=c0909d94c55e983dd1071013c0cc577ed4809b55&v=4"
        },
        {
          "type": "User",
          "login": "lorenzejay",
          "commits": 240,
          "avatar_url": "https://avatars.githubusercontent.com/u/63378463?u=df293b95e7bdc4ea0b261fc85630e7b372b5f4cc&v=4"
        },
        {
          "type": "User",
          "login": "lucasgomide",
          "commits": 159,
          "avatar_url": "https://avatars.githubusercontent.com/u/5209129?u=4004439f56c136c96687388d760e615c025194a7&v=4"
        },
        {
          "type": "User",
          "login": "bhancockio",
          "commits": 145,
          "avatar_url": "https://avatars.githubusercontent.com/u/109994880?u=85f6c9cf81d8ff5eacf894a3f4fd8dd6a14d1ea3&v=4"
        },
        {
          "type": "User",
          "login": "vinibrsl",
          "commits": 113,
          "avatar_url": "https://avatars.githubusercontent.com/u/5093045?u=a0be6f2795692f2602945f1e76e31597786c70a7&v=4"
        },
        {
          "type": "User",
          "login": "tonykipkemboi",
          "commits": 88,
          "avatar_url": "https://avatars.githubusercontent.com/u/64493665?u=1165ee74d4cc2c01caa31209c04b22be386eade8&v=4"
        },
        {
          "type": "User",
          "login": "theCyberTech",
          "commits": 58,
          "avatar_url": "https://avatars.githubusercontent.com/u/84775494?u=904397371c93cd44143676f95be841e46a8b5e80&v=4"
        },
        {
          "type": "User",
          "login": "pythonbyte",
          "commits": 47,
          "avatar_url": "https://avatars.githubusercontent.com/u/25188076?u=a13b4a2d6afb53d2e270a1adf54c8ee0d8298992&v=4"
        },
        {
          "type": "Bot",
          "login": "devin-ai-integration[bot]",
          "commits": 46,
          "avatar_url": "https://avatars.githubusercontent.com/in/811515?v=4"
        }
      ],
      "contributors_sampled": 100,
      "top_contributor_share": 0.251
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build-uv-cache.yml",
        "codeql.yml",
        "docs-broken-links.yml",
        "generate-tool-specs.yml",
        "linter.yml",
        "nightly.yml",
        "pr-size.yml",
        "pr-title.yml",
        "publish.yml",
        "stale.yml",
        "tests.yml",
        "type-checker.yml",
        "update-test-durations.yml",
        "vulnerability-scan.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "security_signals": {
      "lockfiles": [
        "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": 8,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "30 out of 30 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": 10,
            "reason": "all changesets reviewed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 38 contributing companies or organizations",
            "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": 10,
            "reason": "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": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 9,
            "reason": "dependency not pinned by hash detected -- score normalized to 9",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool is run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "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": 1,
            "reason": "9 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "df2e68fe0abb6c2b200561eb7779468f43fe1dbc",
        "ran_at": "2026-07-17T01:00:48Z",
        "aggregate_score": 7.4,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": true
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/crewAIInc/crewAI",
    "host": "github.com",
    "name": "crewAI",
    "owner": "crewAIInc"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 86,
      "inputs": {
        "security": 74,
        "vitality": 100,
        "community": 85,
        "governance": 75,
        "engineering": 96
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 100,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "commits_last_year": 1100,
              "human_commit_share": null,
              "days_since_last_push": 0,
              "active_weeks_last_year": 52
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "52/52 weeks with commits",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 52
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1100 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1100
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "1.15.3",
              "releases_from_tags": false,
              "days_since_latest_release": 0,
              "mean_days_between_releases": 2.4
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~2.4 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 2.4
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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": "excellent",
        "name": "Community & Adoption",
        "value": 85,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "forks": 7849,
              "stars": 55653,
              "watchers": 387,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "55,653 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 55653
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "7,849 forks",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 7849
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "387 watchers",
                "points": 14.4,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 387
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 70,
            "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": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 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": "good",
        "name": "Sustainability & Governance",
        "value": 75,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "good",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 76,
            "inputs": {
              "bus_factor": 3,
              "contributors_sampled": 100,
              "top_contributor_share": 0.251
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "3 contributor(s) cover half of all commits",
                "points": 36,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 25% of commits",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 25
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "100 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 38 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "merged_prs": 2016,
              "open_issues": 84,
              "closed_issues": 1992,
              "issue_closed_ratio": 0.96,
              "closed_unmerged_prs": 1570
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "96% of issues closed",
                "points": 44.9,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 96
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "2016/3586 decided PRs merged",
                "points": 21.5,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 2016,
                      "decided": 3586
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "all changesets reviewed",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 69,
            "inputs": {
              "followers": 2160,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "crewAIInc",
              "public_repos": 32,
              "account_age_days": 784
            },
            "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": "2,160 followers of crewAIInc",
                "points": 24,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 2160,
                      "login": "crewAIInc"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "32 public repos, account ~2 yr old",
                "points": 15.4,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 32
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 2
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 96,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "14 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 14
                    }
                  }
                ],
                "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": 16,
                "status": "met",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "agents",
                "ai",
                "ai-agents",
                "llms",
                "aiagentframework"
              ],
              "has_wiki": false,
              "homepage": "https://crewai.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://crewai.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": "5 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 74,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "good",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 74,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 7.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 is not maximal on development and all release branches",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 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": "all changesets reviewed",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 38 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "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": "update tool detected",
                "points": 7.5,
                "status": "met",
                "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.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 9",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is run on all commits",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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": "9 existing vulnerabilities detected",
                "points": 0.8,
                "status": "partial",
                "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": 9
            },
            "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": "good",
        "name": "AI Readiness",
        "value": 74,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "good",
            "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": 75,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": null,
              "agent_instruction_files": [
                "AGENTS.md",
                "lib/cli/src/crewai_cli/templates/AGENTS.md",
                "lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md"
              ],
              "agent_instruction_max_bytes": 31944
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "AGENTS.md, lib/cli/src/crewai_cli/templates/AGENTS.md, lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "AGENTS.md, lib/cli/src/crewai_cli/templates/AGENTS.md, lib/cli/src/crewai_cli/templates/declarative_flow/AGENTS.md"
                    }
                  }
                ],
                "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. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "demonstrated_agent_practice"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 76,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "uv.lock"
              ],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "lib/cli/src/crewai_cli/py.typed",
                "lib/crewai-core/src/crewai_core/py.typed",
                "lib/crewai-files/src/crewai_files/py.typed",
                "lib/crewai-tools/src/crewai_tools/py.typed",
                "lib/crewai/src/crewai/py.typed"
              ],
              "agent_commit_share": null,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": 11,
                "status": "met",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/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": "dependency automation configured, none observed in the sampled commits",
                "points": 5,
                "status": "partial",
                "details": [
                  {
                    "code": "dependency_bot_config_only",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 9",
                "points": 9,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "good",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 171469,
              "source_files_sampled": 1277,
              "oversized_source_files": 25
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python with type-check config (lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed)",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "typecheck_config_language",
                    "params": {
                      "files": "lib/cli/src/crewai_cli/py.typed, lib/crewai-core/src/crewai_core/py.typed, lib/crewai-files/src/crewai_files/py.typed, lib/crewai-tools/src/crewai_tools/py.typed, lib/crewai/src/crewai/py.typed",
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "25/1277 source files over 60KB",
                "points": 53.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1277,
                      "oversized": 25
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? 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": [],
  "report_type": "repository",
  "generated_at": "2026-07-17T01:01:41.288014Z",
  "schema_version": "0.11.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/crewAIInc/crewAI.svg",
  "full_name": "crewAIInc/crewAI",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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

Los datos ausentes se excluyen y los pesos se renormalizan; nunca se puntúan como cero. La metodología es versionada y abierta: métricas 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 agregadas.