Registro públicoInforme de salud del software esquema 0.11.0 · métricas 2.10.0 · 2026-07-16 18:10 UTC
Engine-agnostic LLM gateway in Rust. Full OpenAI & Anthropic API compatibility across vLLM, TRT-LLM, TokenSpeed, SGLang, OpenAI, Gemini & more. Industry-first gRPC pipeline, KV cache-aware routing, chat history, tokenization caching, Responses API, embeddings, WASM plugins, MCP, and multi-tenant auth.
Añadir la insignia de puntuación al README Comparar con…
Rust · Python Apache-2.0 ★ 398 estrellas ⑂ 118 forks desde nov 2025 Ver en GitHub ↗ Tipo Biblioteca Servidor MCP Servicio de red Herramienta de línea de comandos cómo se determina lightseekorg/smg tiene un índice de salud de 92 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, Security (57/100). Se actualizó por última vez hoy. 2 personas concentran la mayor parte del trabajo reciente.
Índice de salud del software Las métricas se agrupan en categorías ponderadas sobre una escala estandarizada de 1 a 100. El resultado global parte de su media ponderada, calibrada contra la distribución del registro público para que las bandas tengan significado percentil; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe un límite «En riesgo» de 34.
92
Excepcional 93-100 El nivel más alto del registro (≈ el 5% superior); cumple prácticamente todos los criterios evaluados
Excelente 80-92 Sólido en todos los frentes; carencias menores
Bueno 65-79 Saludable; carencias limitadas y manejables
Moderado 50-64 Aceptable con carencias notables; se recomienda revisión
Débil 35-49 Debilidades sustanciales en varias áreas
En riesgo 20-34 Debilidades significativas; su adopción exige cautela
Crítico 1-19 Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
Vitalidad Comunidad y Adopción Sostenibilidad y Gobernanza Calidad de Ingeniería Seguridad Preparación para IA Perfil de puntuación Cada eje es una categoría. La forma importa más que la media: un proyecto sano llena toda la figura, mientras que un perfil de picos y cráteres indica que la fortaleza en una dimensión enmascara el riesgo en otra.
El resultado global ponderado 78 se calibra a 92 en la escala publicada del índice (calibración del registro 2026-08-02).
Titularidad 168 seguidores 7 repositorios públicos desde oct 2025
Este repositorio está respaldado por una organización : una custodia compartida y responsable que puede sobrevivir a cualquier mantenedor individual.
Ecosistemas de paquetes
Métricas por categoría ¿Está vivo el proyecto: se escribe código y se publican versiones?
100 Excepcional · 21% del índice global
Cómo se puntúa 36/36 Recencia de push — último push hace 0 días 36/36 Cadencia de commits — 52/52 semanas con commits 18/18 Volumen de commits — 1935 commits en el último año 10/10 OpenSSF Scorecard: Maintained — 30 commit(s) and 16 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
Cómo se puntúa 27/27 Publica versiones — 12 versiones publicadas 36/36 Recencia de las versiones — última versión hace 16 días 27/27 Cadencia de publicación — una versión cada ~12,4 días 0/10 OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): OpenSSF Scorecard: Signed-Releases. Los pesos restantes se han renormalizado.
¿Tiene el proyecto usuarios, descargas, atención y unas condiciones acogedoras para quienes contribuyen?
63 Moderado · 17% del índice global
Cómo se puntúa 42.2/60 Estrellas — 398 estrellas 17.2/25 Forks — 118 forks 0/15 Observadores — 1 observadores
Datos de entrada utilizados
Cómo se puntúa 22.5/22.5 README 22.5/22.5 Licencia — licencia reconocida (Apache-2.0) 18/18 Guía CONTRIBUTING 13.5/13.5 Código de conducta 0/7.2 Plantilla de issues 6.3/6.3 Plantilla de PR
Datos de entrada utilizados
Cómo se puntúa 21.4/80 Descargas mensuales — 39 descargas/mes en crates, pypi 0/20 Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): Dependientes en el registro. Los pesos restantes se han renormalizado.
¿Sobrevivirá el proyecto a sus personas: factor bus, capacidad de respuesta, quién lo respalda y mantenimiento del paquete?
75 Bueno · 23% del índice global
Cómo se puntúa 25.2/54 Factor bus — la mitad de los commits recae en 2 contribuyente(s) 11.9/22.5 Distribución de commits — el principal contribuyente firma el 47% de los commits 13.5/13.5 Amplitud de contribuyentes — 100 contribuyentes 10/10 OpenSSF Scorecard: Contributors — project has 14 contributing companies or organizations
Datos de entrada utilizados
Cómo se puntúa 33.6/42 Resolución de issues — 80% de issues cerradas 22.5/30 Aceptación de PR — 1216/1621 PR decididos fusionados 0/13 Newcomer PR acceptance — ningún PR de un contribuyente primerizo decidido en 30 d 13.5/15 OpenSSF Scorecard: Code-Review — Found 25/27 approved changesets -- score normalized to 9
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): Newcomer PR acceptance. Los pesos restantes se han renormalizado.
Cómo se puntúa 30/30 Respaldo de la propiedad — propiedad de una organización 0/20 Dominio verificado — el estado de dominio verificado no se leyó para esta organización 16/25 Alcance del propietario — 168 seguidores de lightseekorg 8.1/25 Trayectoria — 7 repos públicos, cuenta de ~0 años
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): Dominio verificado. Los pesos restantes se han renormalizado.
Cómo se puntúa 25/25 Publicado y resoluble — 2 paquete(s) en crates, pypi 35/35 Recencia de publicación — última publicación hace 17 días 20/20 Historial de versiones — 15 versiones en el registro 20/20 No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados ¿Existen unas prácticas mínimas de ingeniería y documentación?
92 Excelente · 19% del índice global
Cómo se puntúa 24/24 Flujos de trabajo de CI — 32 flujo(s) de trabajo 24/24 Pruebas presentes 16/16 Configuración de linter — ruff.toml 9.6/9.6 Hooks de pre-commit 0/6.4 .editorconfig 20/20 OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
Cómo se puntúa 30/30 README 25/25 Directorio de documentación 15/15 Sitio de documentación / página del proyecto — https://lightseek.org/smg 10/10 Descripción del repositorio 10/10 Topics — 17 topics 0/10 Wiki
Datos de entrada utilizados ¿Son sólidas las prácticas visibles de seguridad y de cadena de suministro, sin exposición jurisdiccional de alto riesgo sin resolver?
57 Moderado · 16% del índice global
Cómo se puntúa 7.5/7.5 Binary-Artifacts — no binaries found in the repo 3/7.5 Branch-Protection — branch protection is not maximal on development and all release branches 2.5/2.5 CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10 0/2.5 CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected 6.8/7.5 Code-Review — Found 25/27 approved changesets -- score normalized to 9 2.5/2.5 Contributors — project has 14 contributing companies or organizations 10/10 Dangerous-Workflow — no dangerous workflow patterns detected 7.5/7.5 Dependency-Update-Tool — update tool detected 0/5 Fuzzing — project is not fuzzed 2.5/2.5 Licencia — license file detected 7.5/7.5 Maintained — 30 commit(s) and 16 issue activity found in the last 90 days -- score normalized to 10 5/5 Packaging — packaging workflow detected 0.5/5 Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1 0/5 SAST — SAST tool is not run on all commits -- score normalized to 0 0/5 Security-Policy — security policy file not detected 0/7.5 Signed-Releases — sin datos 0/7.5 Token-Permissions — detected GitHub workflow tokens with excessive permissions 0/7.5 Vulnerabilities — 13 existing vulnerabilities detected
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): Signed-Releases. Los pesos restantes se han renormalizado.
¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Tiene un peso deliberadamente pequeño (4%): las herramientas para agentes son una señal real de mantenimiento, pero un repositorio sin ninguna puede alcanzar igualmente 100/100.
65 Bueno · 4% del índice global
Cómo se puntúa 0/45 Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor 0/15 Documentación legible por máquinas (llms.txt) 0/40 Historial de commits legible — sin datos
Datos de entrada utilizados Excluidos de la puntuación (sin datos o no aplicable): Historial de commits legible. Los pesos restantes se han renormalizado.
Cómo se puntúa 18/18 Arranque con un solo comando — Makefile, bindings/golang/Makefile, bindings/golang/examples/oai_server/Makefile 22/22 Pruebas automatizadas 11/11 Configuración de lint / formato — ruff.toml 11/11 Verificación estática de tipos — mypy.ini 10/10 Entorno reproducible — Dockerfile, lockfile 0/10 Práctica demostrada con agentes — sin datos 5/8 Mantenimiento automatizado — automatización de dependencias configurada, no observada en los commits muestreados 1/10 OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
Datos de entrada utilizados 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 45/45 Código verificable por tipos — Rust (tipado estático) 53.4/55 Tamaños de archivo manejables — 27/928 archivos fuente de más de 60 KB
Datos de entrada utilizados
Cómo se puntúa 40/40 Esquema de API (OpenAPI/GraphQL/proto) — crates/grpc_client/proto/common.proto, crates/grpc_client/proto/mlx_engine.proto, crates/grpc_client/proto/sglang_encoder.proto, crates/grpc_client/proto/sglang_scheduler.proto, crates/grpc_client/proto/tokenspeed_encoder.proto, crates/grpc_client/proto/tokenspeed_scheduler.proto, crates/grpc_client/proto/trtllm_service.proto, crates/grpc_client/proto/vllm_engine.proto, crates/mesh/src/proto/gossip.proto 20/20 Servidor MCP 40/40 Ejemplos ejecutables — examples
Datos de entrada utilizados
Datos clave 398 estrellas de GitHub
100 contribuidores
1935 commits en los últimos 12 meses
0 días desde el último push
12 versiones publicadas
2 factor bus
56 issues abiertas
crates.io, PyPI ecosistemas de paquetes
Advertencias de recopilación de datos Could not fetch pypi package 'smg-e2e-tests' from its registry
Más detalle OpenSSF Scorecard 5.7 / 10 5.7 agregado
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-16 18:09 UTC
Dependencias directas 109 Registro Paquete Restricción de versión Manifiesto PyPI anthropic —e2e_test/pyproject.toml PyPI datasets —e2e_test/pyproject.toml PyPI grpcio —e2e_test/pyproject.toml PyPI grpcio-health-checking —e2e_test/pyproject.toml PyPI httpx —e2e_test/pyproject.toml PyPI jinja2 —e2e_test/pyproject.toml PyPI mcp >=1.2,<2e2e_test/pyproject.toml PyPI numpy —e2e_test/pyproject.toml PyPI openai —e2e_test/pyproject.toml PyPI pandas —e2e_test/pyproject.toml PyPI pillow —e2e_test/pyproject.toml PyPI pytest —e2e_test/pyproject.toml PyPI pytest-rerunfailures —e2e_test/pyproject.toml PyPI requests —e2e_test/pyproject.toml PyPI tqdm —e2e_test/pyproject.toml PyPI uvicorn >=0.30e2e_test/pyproject.toml PyPI websockets —e2e_test/pyproject.toml PyPI smg-grpc-proto >=0.4.13grpc_servicer/pyproject.toml PyPI grpcio >=1.81.1grpc_servicer/pyproject.toml PyPI grpcio-reflection >=1.81.1grpc_servicer/pyproject.toml PyPI grpcio-health-checking >=1.81.1grpc_servicer/pyproject.toml crates.io anyhow —model_gateway/Cargo.toml crates.io async-trait —model_gateway/Cargo.toml crates.io blake3 —model_gateway/Cargo.toml crates.io chrono —model_gateway/Cargo.toml crates.io dashmap —model_gateway/Cargo.toml crates.io futures —model_gateway/Cargo.toml crates.io http —model_gateway/Cargo.toml crates.io lru —model_gateway/Cargo.toml crates.io parking_lot —model_gateway/Cargo.toml crates.io prost —model_gateway/Cargo.toml crates.io prost-types —model_gateway/Cargo.toml crates.io rand —model_gateway/Cargo.toml crates.io subtle —model_gateway/Cargo.toml crates.io thiserror —model_gateway/Cargo.toml crates.io tonic —model_gateway/Cargo.toml crates.io tonic-prost —model_gateway/Cargo.toml crates.io tracing —model_gateway/Cargo.toml crates.io tracing-subscriber —model_gateway/Cargo.toml crates.io axum —model_gateway/Cargo.toml crates.io bytemuck —model_gateway/Cargo.toml crates.io reqwest —model_gateway/Cargo.toml crates.io serde —model_gateway/Cargo.toml crates.io tokio —model_gateway/Cargo.toml crates.io tokio-util —model_gateway/Cargo.toml crates.io uuid —model_gateway/Cargo.toml crates.io openai-protocol —model_gateway/Cargo.toml crates.io reasoning-parser —model_gateway/Cargo.toml crates.io tool-parser —model_gateway/Cargo.toml crates.io wfaas —model_gateway/Cargo.toml crates.io llm-tokenizer —model_gateway/Cargo.toml crates.io smg-auth —model_gateway/Cargo.toml crates.io smg-mcp —model_gateway/Cargo.toml crates.io kv-index —model_gateway/Cargo.toml crates.io smg-data-connector —model_gateway/Cargo.toml crates.io llm-multimodal —model_gateway/Cargo.toml crates.io smg-mm-rdma —model_gateway/Cargo.toml crates.io smg-wasm —model_gateway/Cargo.toml crates.io smg-mesh —model_gateway/Cargo.toml crates.io smg-grpc-client —model_gateway/Cargo.toml crates.io bincode 1.3model_gateway/Cargo.toml crates.io clap 4model_gateway/Cargo.toml crates.io axum-server 0.8.0model_gateway/Cargo.toml crates.io ndarray 0.17model_gateway/Cargo.toml crates.io memmap2 0.9model_gateway/Cargo.toml crates.io rayon 1.12model_gateway/Cargo.toml crates.io rustix 1model_gateway/Cargo.toml crates.io tower 0.5model_gateway/Cargo.toml crates.io tower-http 0.7model_gateway/Cargo.toml crates.io serde_json 1.0model_gateway/Cargo.toml crates.io bytes 1.12.0model_gateway/Cargo.toml crates.io http-body 1.0model_gateway/Cargo.toml crates.io http-body-util 0.1model_gateway/Cargo.toml crates.io futures-util 0.3model_gateway/Cargo.toml crates.io xxhash-rust 0.8model_gateway/Cargo.toml crates.io tracing-log 0.2model_gateway/Cargo.toml crates.io tracing-appender 0.2.5model_gateway/Cargo.toml crates.io opentelemetry 0.32model_gateway/Cargo.toml crates.io opentelemetry_sdk 0.32model_gateway/Cargo.toml crates.io opentelemetry-otlp 0.32model_gateway/Cargo.toml crates.io tracing-opentelemetry 0.33model_gateway/Cargo.toml crates.io kube 3.0.1model_gateway/Cargo.toml crates.io k8s-openapi 0.27.0model_gateway/Cargo.toml crates.io metrics 0.24.6model_gateway/Cargo.toml crates.io metrics-exporter-prometheus 0.18.3model_gateway/Cargo.toml crates.io regex 1.12model_gateway/Cargo.toml crates.io memchr 2.8model_gateway/Cargo.toml crates.io url 2.5.8model_gateway/Cargo.toml crates.io tokio-stream 0.1model_gateway/Cargo.toml crates.io rustls 0.23model_gateway/Cargo.toml crates.io tokio-rustls 0.26model_gateway/Cargo.toml crates.io rustls-pemfile 2.2model_gateway/Cargo.toml crates.io openssl 0.10.81model_gateway/Cargo.toml crates.io rmcp 1.7model_gateway/Cargo.toml crates.io serde_yaml 0.9model_gateway/Cargo.toml crates.io openai-harmony 0.0.8model_gateway/Cargo.toml crates.io openmetrics-parser 0.4.4model_gateway/Cargo.toml crates.io arc-swap 1.9.1model_gateway/Cargo.toml crates.io bitflags —model_gateway/Cargo.toml crates.io once_cell 1.21.4model_gateway/Cargo.toml crates.io sha2 0.11model_gateway/Cargo.toml crates.io base64 0.22model_gateway/Cargo.toml crates.io image 0.25.10model_gateway/Cargo.toml crates.io tokio-tungstenite —model_gateway/Cargo.toml crates.io webpki-roots —model_gateway/Cargo.toml crates.io wasmtime —model_gateway/Cargo.toml crates.io tempfile 3.27model_gateway/Cargo.toml crates.io multer —model_gateway/Cargo.toml crates.io str0m —model_gateway/Cargo.toml
Todas las dependencias 145 Conjunto completo de dependencias resueltas según el grafo de dependencias de GitHub: 64 paquetes directos y 81 indirectos (transitivos). El cierre transitivo es completo cuando el repositorio incluye un lockfile.
Registro Paquete Versión Relación crates.io arc-swap —directa crates.io async-trait —directa crates.io axum-server —directa crates.io base64 —directa crates.io bincode —directa crates.io bytes —directa crates.io chrono —directa crates.io clap —directa crates.io futures —directa crates.io futures-util —directa crates.io http-body —directa crates.io http-body-util —directa crates.io image —directa crates.io k8s-openapi —directa crates.io kube —directa crates.io memchr —directa crates.io memmap2 —directa crates.io metrics —directa crates.io metrics-exporter-prometheus —directa crates.io ndarray —directa crates.io once_cell —directa crates.io openai-harmony —directa crates.io openmetrics-parser —directa crates.io openssl —directa crates.io opentelemetry —directa crates.io opentelemetry-otlp —directa crates.io opentelemetry_sdk —directa crates.io prost —directa crates.io prost-types —directa crates.io rayon —directa crates.io regex —directa crates.io reqwest —directa crates.io rmcp —directa crates.io rustix —directa crates.io rustls —directa crates.io rustls-pemfile —directa crates.io serde —directa crates.io serde_json —directa crates.io serde_yaml —directa crates.io sha2 —directa crates.io tempfile —directa crates.io tokio —directa crates.io tokio-rustls —directa crates.io tokio-stream —directa crates.io tonic —directa crates.io tonic-prost —directa crates.io tower —directa crates.io tower-http —directa crates.io tracing —directa crates.io tracing-appender —directa crates.io tracing-log —directa crates.io tracing-opentelemetry —directa crates.io url —directa crates.io uuid —directa crates.io xxhash-rust —directa PyPI grpcio —directa PyPI grpcio-health-checking —directa PyPI grpcio-reflection —directa PyPI httpx —directa PyPI mcp —directa PyPI pytest —directa PyPI requests —directa PyPI smg-grpc-proto —directa PyPI uvicorn —directa crates.io aho-corasick —indirecta crates.io async-channel —indirecta crates.io backoff —indirecta crates.io cc —indirecta crates.io crdts —indirecta crates.io criterion —indirecta crates.io deadpool —indirecta crates.io deadpool-postgres —indirecta crates.io deadpool-redis —indirecta crates.io fast_image_resize —indirecta crates.io hf-hub —indirecta crates.io jsonwebtoken —indirecta crates.io lazy_static —indirecta crates.io libc —indirecta crates.io libloading —indirecta crates.io minijinja —indirecta crates.io minijinja-contrib —indirecta crates.io nixl-sys —indirecta crates.io npyz —indirecta crates.io num-bigint —indirecta crates.io opencv —indirecta crates.io opentelemetry-proto —indirecta crates.io oracle —indirecta crates.io pkg-config —indirecta crates.io portpicker —indirecta crates.io prost-build —indirecta crates.io pyo3 —indirecta crates.io redis —indirecta crates.io rsa —indirecta crates.io rustc-hash —indirecta crates.io rustfft —indirecta crates.io rustpython-parser —indirecta crates.io serde_bytes —indirecta crates.io serde_yaml_ng —indirecta crates.io serial_test —indirecta crates.io symphonia —indirecta crates.io tiktoken-rs —indirecta crates.io tokenizers —indirecta crates.io tokio-postgres —indirecta crates.io toml —indirecta crates.io tonic-prost-build —indirecta crates.io tracing-test —indirecta crates.io ulid —indirecta crates.io unicode-segmentation —indirecta crates.io validator —indirecta crates.io wasm-encoder —indirecta crates.io wat —indirecta crates.io wiremock —indirecta crates.io wit-bindgen —indirecta crates.io zip —indirecta Go github.com/andybalholm/brotli v1.1.0indirecta Go github.com/klauspost/compress v1.17.9indirecta Go github.com/stretchr/testify v1.10.0indirecta Go github.com/valyala/bytebufferpool v1.0.0indirecta Go github.com/valyala/fasthttp v1.52.0indirecta Go go.uber.org/multierr v1.10.0indirecta Go go.uber.org/zap v1.27.0indirecta Go golang.org/x/net v0.48.0indirecta Go golang.org/x/sys v0.39.0indirecta Go golang.org/x/text v0.32.0indirecta Go google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217indirecta Go google.golang.org/grpc v1.79.3indirecta Go google.golang.org/protobuf v1.36.10indirecta Go google.golang.org/protobuf v1.36.11indirecta Go gopkg.in/natefinch/lumberjack.v2 v2.2.1indirecta Maven com.fasterxml.jackson.core:jackson-annotations 2.17.1indirecta Maven com.fasterxml.jackson.core:jackson-databind 2.17.1indirecta Maven com.fasterxml.jackson.datatype:jackson-datatype-jsr310 2.17.1indirecta Maven jakarta.annotation:jakarta.annotation-api 2.1.1indirecta PyPI grpcio-tools —indirecta PyPI maturin —indirecta PyPI mlx —indirecta PyPI mlx-lm —indirecta PyPI msgspec —indirecta PyPI protobuf —indirecta PyPI pydantic —indirecta PyPI pyzmq —indirecta PyPI setuptools —indirecta PyPI sglang —indirecta PyPI transformers —indirecta PyPI vllm —indirecta
Informe JSON sin procesar legible por máquina
Comentarios ¿Algo no cuadra en este informe, o hay ideas que compartir? Mediciones erróneas, herramientas no detectadas, ideas, preguntas: todo es bienvenido. Cada mensaje se lee y recibe respuesta.