nexus-agents

Plataforma de orquestación inteligente que enruta tareas al mejor modelo de IA (Claude, Codex, Gemini, OpenCode) usando bandidos LinUCB, valida mediante votación por consenso y aprende de los resultados. 29 herramientas MCP, pipeline de desarrollo, 8 backends de memoria.

Documentación

Nexus Agents

OpenSSF Best Practices OpenSSF Scorecard

Plano de control autónomo para agentes de codificación de IA: un único punto de entrada, revisión adversarial, auditoría encadenada por hash a prueba de manipulación, y ajuste de bucle cerrado con control humano (degradación autónoma, promoción ganada)

npm version License: MIT Node.js Version Claims Registry Drift


¿Por qué Nexus Agents?

Nexus-agents es un plano de control autónomo para tus agentes de codificación de IA — Claude Code, Codex, Gemini y OpenCode. Los agentes son el plano de datos: hacen la ingeniería. Nexus-agents es el plano de control: admite trabajo a través de un único punto de entrada, lo revisa adversarialmente antes de que se publique, registra cada acción en un registro de eventos a prueba de manipulación, y cierra el bucle ajustando hacia dónde va la siguiente tarea según lo que realmente funcionó.

Tomando prestado el vocabulario de la computación autónoma: el sistema ejecuta un bucle MAPE-K — Monitor, Analiza, Planifica, Ejecuta sobre una base de conocimiento compartida — para que operar tu flota de agentes sea, en la medida que la evidencia lo permita, autogestionado en lugar de dirigido manualmente.

El mapeo del plano de control

Cada rol clásico del plano de control se mapea a un componente enviado de nexus-agents — la metáfora es estructural, no decorativa:

Rol del plano de controlComponente de nexus-agentsQué hace
Planificadorrun / MetaOrchestratorUn único punto de entrada elige (y opcionalmente ejecuta) la estrategia adecuada para un objetivo
Control de admisióncompuertas (pr_review, consensus_vote, run_quality_gate)La revisión adversarial y las compuertas de calidad deciden qué se permite publicar
Registro de eventosAuditTrail cadena de hash + verify_audit_chainRegistro de solo anexión, a prueba de manipulación, de cada decisión
Plano de datosCLIs de ingenieríaClaude Code, Codex, Gemini, OpenCode hacen las ediciones de archivos, pruebas, PRs

El bucle MAPE-K

   ┌────────── Monitor ──────────┐        OutcomeStore · AuditTrail · swarm-health
   │                             ▼        adapter circuit-breaker signals
Execute ◀── Plan ◀── Analyze ◀───┘        LinUCB + TOPSIS scoring, consensus
   │         │                            MetaOrchestrator strategy choice
   │         └── route the next task ──────────────────────────────────────┐
   ▼                                                                        │
 run the strategy ── adversarial review ── audit ── feed outcome back ──────┘
                              shared Knowledge: OutcomeStore + memory backends + audit log

Capacidades de auto-*

Los sistemas autónomos se describen por sus propiedades de auto-*. Cada fila a continuación se mapea a un bucle que existe en el código base hoy — nada aquí es aspiracional, y la autoridad que cada bucle lleva está limitada por la escalera de autoridad de ADR-0017 (observe → suggest → advisory → enforce):

Propiedad auto-*Qué significa aquíBucle implementado (enviado)
AutoconfiguraciónDetecta el entorno y se integranexus-agents setup / doctor (cli-commands.ts) — detecta CLIs, escribe configuración MCP, reporta salud
AutocuraciónEnruta alrededor de dependencias fallidas automáticamenteInterruptor de circuito del adaptador + degradación por salud del enjambre (cli-adapters/circuit-breaker.ts); un ajuste de TuneAdjustmentStore limitado, con decaimiento automático y solo degradación
AutooptimizaciónAprende hacia dónde debería ir la siguiente tareaOutcomeStore de bucle cerrado → puntuación LinUCB + TOPSIS en el CompositeRouter
AutoprotecciónRestringe lo que la entrada no confiable y las herramientas pueden hacerManejo de entrada por niveles de confianza, lista de denegación de rutas secretas de PolicyFirewall (secret-paths), sandboxing Docker/política (security/)

Nota de honestidad: estos bucles se encuentran en diferentes peldaños de la escalera de autoridad. La degradación de autoajuste es enforce pero limitada (con tope, decaimiento automático, solo degradación); la selección aprendida y otras promociones aún se ganan por bucle contra un umbral de evidencia más ratificación, no se activan por defecto. Ver ADR-0017.

Lo que te ofrece:

  • Revisión de PR adversarial — pr_review ejecuta 5 roles de votación (arquitecto, seguridad, devex, catfish, scope_steward) con una compuerta de verificación de 4 puntos. En el conjunto de evaluación v5: 100% de captura de errores en un conjunto de datos sintético enfocado (n=10) y una tasa bruta de falsos positivos del 50%; el triaje manual reclasificó uno de los dos casos de FP inspeccionados como un hallazgo real que el conjunto de datos había etiquetado incorrectamente. Estas son cifras direccionales de muestra pequeña, no tasas medidas. Números completos y salvaguardas: docs/research/pr-review-experiment-results-v5.md
  • Estatuto detectado por deriva — CLAUDE.md + governance:check + compuertas CI bloqueantes fallan la compilación cuando las reglas documentadas se desvían del comportamiento registrado (registro de modelos, herramientas MCP, tipos de expertos, habilidades)
  • Rastro de auditoría a prueba de manipulación — cada llamada de herramienta, cada decisión de votante, cada elección de enrutamiento fluye a través de AuditTrail con registro estructurado y almacenamiento de solo anexión encadenado por hash; la integridad es verificable a través de la herramienta MCP verify_audit_chain (a prueba de manipulación, no a prueba de manipulación — ver el modelo de amenazas de la cadena de hash de auditoría)
  • Enrutamiento de bucle cerrado — OutcomeStore alimenta la telemetría de producción de vuelta a la puntuación LinUCB + TOPSIS para que el sistema realmente aprenda de lo que se publicó vs lo que retrocedió. Un segundo bucle, limitado, se ejecuta por defecto: un signal.swarm_unhealthy (interruptor de circuito del adaptador / salud del enjambre) aplica una degradación de enrutamiento pequeña, con tope y decaimiento automático a través de TuneAdjustmentStore — solo degradación, nunca pone a cero un CLI, cada ajuste auditado, exclusión con NEXUS_TUNE_ENFORCE=false
  • Consenso multi-votante — consensus_vote ejecuta un panel de 7 roles por defecto (arquitecto, seguridad, devex, ai_ml, pm, catfish, scope_steward; --quick usa 3). Seis nombres de estrategia (cinco distintos: higher_order es un alias de opinion_wise, #514): mayoría simple/súper, unanimidad, Bayesiano de orden superior, por opinión, prueba de aprendizaje
You:               "Review this PR / orchestrate this task / vote on this proposal"
                    ↓
Control plane:      admit → schedule/route → adversarial review → audit → learn from outcome
                    ↓
Data plane (agents): Claude Code · Codex · Gemini · OpenCode
                    ↓
Code:               actual edits, tests, PRs, issues

Lo que esto NO es:

  • No es otro agente de codificación autónomo. OpenHands, SWE-agent, AutoGen, Devin, Factory — esos son el plano de datos. Nexus-agents es el plano de control sobre ellos. Usa los agentes que se ajusten; nosotros admitimos, revisamos, auditamos y enrutamos su trabajo
  • No es un marco de chat. Nada aquí orquesta conversaciones. Orquesta invocaciones reales de herramientas CLI con E/S de archivos reales y seguimiento de resultados
  • No es un proxy de API de modelos. El valor son las compuertas de admisión, la auditoría y el ajuste de bucle cerrado. El enrutamiento es una consecuencia del trabajo del plano de control, no el producto
  • No es completamente autónomo. "Autónomo" significa autogestionado dentro de límites, no supervisado. La autoridad de cada bucle está limitada por la escalera de autoridad (ADR-0017); las promociones a mayor autoridad se ganan contra evidencia y ratificación humana, nunca se activan por defecto

Dónde se ubica nexus-agents en tu pila

   Human / IDE / CLI
   (Claude Code, Cursor, VS Code, terminal)
            │ MCP Protocol
            ▼
  ┌─────────────────────────────────────────────────────┐
  │  CONTROL PLANE — what nexus-agents provides          │
  │                                                       │
  │   Scheduler: run / MetaOrchestrator                  │
  │   Admission control: PR review · consensus · gates   │
  │   Event log: tamper-evident hash-chained audit       │
  │   Closed-loop self-tuning (MAPE-K)                   │
  │                                                       │
  │   47 MCP tools · multi-stage CompositeRouter         │
  └────────────────────────┬────────────────────────────┘
                           │
                           ▼ delegates execution to
  ┌─────────────────────────────────────────────────────┐
  │  DATA PLANE — the agents that do the actual work     │
  │                                                       │
  │   Claude Code · Codex · Gemini · OpenCode            │
  └────────────────────────┬────────────────────────────┘
                           │
                           ▼ produces
                   Code, tests, PRs, issues

El plano de control es la capa que detecta los errores que los agentes del plano de datos cometerían de otro modo — código malo publicado, reglas que se desvían de la intención, brechas de auditoría, enrutamiento sin telemetría — y enruta la siguiente tarea según lo que realmente funcionó la última vez.


Inicio rápido (2 minutos)

1. Instalar

npm install -g nexus-agents

O como plugin de Claude Code (instalación de un solo comando desde el mercado oficial):

/plugin install nexus-agents

Ver docs/getting-started/PLUGIN_INSTALL.md para la configuración específica del plugin, o llms-install.md para la guía de instalación corta que un agente de IA puede seguir.

2. Verificar

nexus-agents doctor

Imprime una tabla de salud — versión de Node, CLIs configurados (claude / codex / gemini / opencode), claves API faltantes vs presentes. Solo lectura; seguro de ejecutar en cualquier momento.

Un CLI desactivado con NEXUS_DISABLED_CLIS se lista como deshabilitado y no se sondea. En un host de puerta de enlace, doctor también indica si la puerta de enlace sirve el espacio de ese CLI (doctor --gateway imprime una línea por espacio); ver CORPORATE_GATEWAY.md.

3. Ver cómo se ve el éxito (tarea de humo de 60 segundos — no se necesitan claves API)

nexus-agents vote --quick --proposal "Use SQLite over JSON files for the outcome store"

Deberías ver:

Nexus Agents Consensus Vote
============================

Collecting votes from 3 agents (timeout: 300s each)...

Proposal: Use SQLite over JSON files for the outcome store

Votes

  ✓ Software Architect: APPROVE (86%)
  ✓ Security Engineer:  APPROVE (74%)
  ✓ Scope Steward:      APPROVE (91%)

Summary

  Approve:  3
  Reject:   0
  Abstain:  0
  Approval: 100.0%
  Threshold: simple_majority

Result: APPROVED

Completed in ~30s

Tres roles de votación deliberan a través de los CLIs locales que tengas (Claude, Codex, Gemini) — no se requieren claves API. El razonamiento de cada votante se registra; la terminal imprime el veredicto. Los resultados mixtos (algunos aprueban / algunos rechazan) y el manejo elegante de errores se demuestran en el héroe del sitio del proyecto con una ejecución real de 7 votantes.

4. Conecta a tu editor

nexus-agents setup   # Auto-configures MCP server in Claude Code, Cursor, etc.

Reinicia tu editor. Las 47 herramientas MCP (orchestrate, consensus_vote, research_synthesize, verify_audit_chain, …) se vuelven disponibles para el agente que ya estés usando.

Qué configura setup

Por defecto, setup escribe/actualiza hasta siete cosas en tu entorno. Cada una se puede omitir con la bandera --skip-* correspondiente si no la quieres.

ConfiguradoDónde se escribeBandera de exclusión
Registro del servidor MCP (Claude)~/.claude/mcp.json / configuración de Claude Desktop--skip-mcp
Reglas del proyecto.cursor/rules/ y/o .claude/rules/--skip-rules
Hooks de sesión~/.claude/hooks/ (inicio de sesión / pre-herramienta / etc.)--skip-hooks
Configuración MCP de OpenCode~/.config/opencode/opencode.json--skip-opencode
Configuración MCP de Gemini~/.gemini/mcp.json--skip-gemini
Configuración MCP de Codex~/.codex/config.toml--skip-codex
Archivo de configuración del proyecto./nexus-agents.yaml--skip-config

Por defecto setup aplica cada paso sin preguntar. Pasa --interactive para ejecutar el asistente de configuración en su lugar. Donde stdout no es un TTY, o en CI, pasa --non-interactive; sin él setup sale con un error.

5. Uso independiente (sin editor requerido)

export ANTHROPIC_API_KEY=your-key
nexus-agents orchestrate "Explain the architecture of this codebase"

Seguridad: En el modo MCP predeterminado, el servidor se comunica solo vía stdio con el proceso padre (sin exposición de red). La API REST (opt-in) genera automáticamente una clave API en el primer inicio. Para implementaciones expuestas a la red, establece NEXUS_AUTH_ENABLED=true. Ver SECURITY.md.


Capacidades

CategoríaDetalles
Revisión de PR Adversarialpr_review Herramienta MCP: 5 roles de votación (arquitecto, seguridad, devex, catfish, scope_steward) con compuerta de 4 puntos. Evaluación v5 (conjunto de datos sintético enfocado, n=10): 100% de detección de errores, 50% de tasa bruta de FP; el triaje manual reclasificó uno de los dos casos de FP inspeccionados como un hallazgo real (direccional con n pequeño, no tasas medidas) (detalles)
Votación por Consenso6 estrategias: simple_majority, supermajority, unanimous, higher_order (Bayesiano consciente de correlación), opinion_wise, proof_of_learning
Estatuto con Detección de DerivaCLAUDE.md + inject-governance.ts check impone registros de fuente única (registro de modelos, herramientas MCP, tipos de expertos). La compuerta de CI bloqueante falla la compilación ante deriva
Rastro de AuditoríaRegistro estructurado para cada llamada de herramienta, decisión de votante y elección de enrutamiento. Almacenamiento de solo añadidura encadenado por hash a prueba de manipulación (a prueba de manipulación, no a prueba de falsificación — ver modelo de amenazas); integridad verificable mediante la herramienta MCP verify_audit_chain
Telemetría de Bucle CerradoOutcomeStore alimenta la puntuación LinUCB + TOPSIS; un segundo bucle de autoajuste acotado y auditado degrada CLIs no saludables (limitado, con decaimiento automático, activado por defecto, con exclusión voluntaria NEXUS_TUNE_ENFORCE=false)
Pipeline de SeguridadSandboxing (Docker/política), manejo de entrada por niveles de confianza, análisis SARIF, patrones de equipo rojo, lista de denegación de rutas secretas de PolicyFirewall (secret-paths)
Orquestación Multi-Experto12 tipos de expertos integrados coordinados por el Orquestador. Los roles vinculan prompt + herramientas + memoria
Pipeline de DesarrolloInvestigación → Plan → Votar → Descomponer → Implementar → QA → Seguridad. Tres modos: autónomo, harness (el llamador implementa), dry-run
Memoria y Aprendizaje5 backends orientados al usuario (sesión, creencia, agéntico, adaptativo, tipado). La persistencia entre sesiones alimenta las decisiones de enrutamiento
Sistema de Investigación9 fuentes de descubrimiento (arXiv, GitHub, Semantic Scholar, etc.). Auto-catálogo, puntuación de calidad, síntesis en clústeres de temas
Flujos de Trabajo en GrafoEjecución de flujos de trabajo basada en DAG con checkpoint/reanudación, reducción de estado y enlaces de eventos
47 Herramientas MCPGestión de agentes, ejecución de flujos de trabajo, investigación, memoria, inteligencia de código, análisis de repositorios, consenso, operaciones

Expertos Disponibles

ExpertoEspecialización
CódigoImplementación, depuración, optimización
ArquitecturaDiseño de sistemas, patrones, escalabilidad
SeguridadAnálisis de vulnerabilidades, codificación segura
PruebasEstrategias de prueba, cobertura, generación de pruebas
QACriterios de aceptación, verificaciones de regresión
DocumentaciónRedacción técnica, documentación de API
DevOpsCI/CD, despliegue, infraestructura
InvestigaciónRevisión de literatura, análisis de vanguardia
PMGestión de producto, requisitos, prioridades
UXExperiencia de usuario, usabilidad, accesibilidad
InfraestructuraGestión de servidores, metal desnudo, redes
Visualización de DatosGráficos, paneles, presentación visual de datos

CLIs y Proveedores Soportados

Nexus-agents enruta tareas a través de 4 adaptadores CLI, cada uno conectándose a los principales proveedores de IA:

CLIProveedorMejor Para
claudeAnthropic (Claude)Razonamiento complejo, análisis
geminiGoogle (Gemini)Contexto largo, multimodal
codexOpenAI (Codex)Generación de código, razonamiento
opencodeCompatible con OpenAI personalizadoEndpoints personalizados, modelos locales

codex tiene dos transportes, seleccionados por configuración en lugar de por nombre: CodexMcpAdapter (el predeterminado, nativo de MCP) y CodexCliAdapter (subproceso). Una versión anterior de esta tabla listaba codex-mcp como un quinto CLI, que ya no CliNameSchema validará — CLI_NAMES tiene cuatro miembros, por lo que la configuración que nombre codex-mcp falla el análisis Zod sin nada en el lado de la documentación que explique por qué.


Comandos CLI

nexus-agents                    # Start MCP server (default)
nexus-agents doctor             # Check installation health
nexus-agents setup              # Configure Claude CLI integration
nexus-agents orchestrate "..."  # Run task with experts
nexus-agents vote -p "proposal" # Multi-agent consensus voting
nexus-agents review <pr-url>    # Review a GitHub PR
nexus-agents expert list        # List available experts
nexus-agents workflow list      # List workflow templates
nexus-agents config init        # Generate config file
nexus-agents init --portable    # Create workspace-local .nexus-agents/ for sandboxes
nexus-agents init --portable --mcp-config  # Also emit .mcp.json wiring Claude Code to it
nexus-agents init --portable --install --mcp-config  # …and install the binary into the workspace
nexus-agents fitness-audit      # Run fitness score audit
nexus-agents research query     # Query research registry
nexus-agents --help             # Full command list

Consulte docs/ENTRYPOINTS.md para la referencia completa de CLI (28+ comandos).


Herramientas MCP

Cuando se ejecuta como servidor MCP, las siguientes herramientas están disponibles. Comience con run — el punto de entrada predeterminado: proporcione un objetivo y el MetaOrquestador elige (y, con execute: true, ejecuta) la estrategia correcta. Las otras herramientas del pipeline son rutas avanzadas de estrategia forzada para fijar una específica.

HerramientaDescripción
orchestrateOrquestación de tareas con coordinación del Orquestador
create_expertCrear un agente experto especializado
execute_expertEjecutar una tarea a través de un experto previamente creado (por expertId)
run_workflowEjecutar una plantilla de flujo de trabajo lineal (use run_graph_workflow para DAGs)
delegate_to_modelElegir el modelo existente más adecuado para una tarea (sin cambios en el registro)
list_expertsInventario de ROLES de expertos para create_expert
list_workflowsInventario de PLANTILLAS de múltiples pasos para run_workflow
consensus_voteVotación por consenso de múltiples modelos sobre propuestas
research_queryConsultar el registro de investigación (estado, superposiciones, estadísticas, búsqueda)
research_addAñadir un ARTÍCULO de arXiv al registro (para fuentes que no son artículos use research_add_source)
research_add_sourceAñadir una fuente NO-ARTÍCULO (repositorio/herramienta/blog) — para artículos de arXiv use research_add
research_discoverDescubrir artículos/repositorios de fuentes externas
research_analyzeAnalizar el registro en busca de vacíos, tendencias y cobertura
research_catalog_reviewRevisar referencias de investigación auto-catalogadas
research_synthesizeSintetizar el registro en clústeres temáticos con temas
survey_oss_landscapeBúsqueda transitoria de proyectos OSS (licencia, estrellas, último commit) vía GitHub
vendor_publishing_auditConsultar la infraestructura de firma de un proveedor (claves GPG, patrones de URL, forma de la firma)
compare_data_feedsComparar dos feeds YAML/JSON: cobertura + ejes por campo
memory_queryConsultar en todos los backends de memoria
memory_statsPanel de estadísticas del sistema de memoria
memory_writeEscribir en backends de memoria tipados
weather_reportInforme meteorológico de rendimiento multi-CLI
issue_triageTriaje de issues de GitHub con clasificación de confianza
run_graph_workflowEjecutar un flujo de trabajo DAG con puntos de control por nodo + rastro de auditoría (lineal → run_workflow)
execute_specEjecutar el pipeline de especificaciones de la fábrica de software de IA
registry_importRedactar YAML para una entrada de modelo NUEVO (para elegir modelos existentes use delegate_to_model)
query_traceConsultar trazas de ejecución para observabilidad
query_task_stateConsultar el registro estructurado de estado de tareas para un ID de tarea
get_job_resultLeer el resultado de un envío en modo asíncrono por jobId (#3042 / #2631)
list_jobsListar trabajos en modo asíncrono en todas las herramientas — descubrimiento entre sesiones (#3046 / #2631)
cancel_jobCancelar un trabajo en modo asíncrono; aborta votantes y trabajadores en curso — idempotente (#3042)
ci_health_checkSalud de la infraestructura de CI — compone el estado de GitHub + actividad de ejecuciones recientes (#3076)
verify_audit_chainVerificar la cadena de hash de un directorio de registro de auditoría FileAuditStorage
repo_analyzeAnalizar la estructura de un repositorio de GitHub
repo_security_planGenerar pipeline de escaneo de seguridad para un repositorio
extract_symbolsSímbolos AST de la API del compilador de TypeScript desde un SOLO archivo (funciones/clases/tipos)
search_codebaseBúsqueda entre archivos sobre NOMBRES de símbolos declarados (solo declaraciones, no usos)
search_usagesBúsqueda estructural de usos/sitios de llamada para un símbolo vía ast-grep (llamadas, llamadas a miembros, new, imports, referencias) — la brecha "dónde se usa X" que search_codebase no puede cubrir
run_dev_pipelinePipeline de desarrollo completo: investigación, planificación, votación, implementación, QA
run_pipelineEjecutar un plugin de pipeline por nombre con entrada tipada
pr_reviewRevisión de PR con múltiples votantes y puerta de verificación (experimental)
supply_chain_tradeoff_panelVotación de compensaciones por eje para decisiones de construir-vs-comprar / cadena de suministro
improvement_reviewBucle de observabilidad con umbral — detecta señales de enrutamiento/deuda técnica/errores/seguridad a partir de datos de resultados+aptitud; archiva issues candidatos
run_quality_gateEjecutar la puerta de calidad de QA (typecheck/lint/tests/build/security) sobre un directorio de proyecto; devuelve veredicto estructurado de aprobado/fallido + retroalimentación
suggest_research_tasksSOLO-SUGERENCIA: tareas candidatas de pipeline a partir de hallazgos de research_discover para revisión — no archiva ni ejecuta nada (#1715)
list_available_modelsSondea todos los transportes de descubrimiento de modelos (API de OpenRouter + CLIs de opencode/claude/codex/gemini) e informa del estado de salud por transporte — valida que los CLIs/APIs sean accesibles (#3406)
runPunto de entrada predeterminado — da un objetivo, MetaOrchestrator elige la estrategia; devuelve la decisión de enrutamiento (execute:false, solo lectura) o la ejecuta en línea (execute:true; dev-pipeline+pipeline+research+consensus conectados) (#3548)

Configuración

Variables de entorno:

VariableDescripción
ANTHROPIC_API_KEYClave de API de Claude
OPENAI_API_KEYClave de API de OpenAI
GOOGLE_AI_API_KEYClave de API de Gemini
NEXUS_LOG_LEVELNivel de registro (debug/info/warn/error)
NEXUS_DISABLED_CLISCLIs separados por comas para poner fuera de servicio (p. ej. codex,gemini). Desactiva solo el transporte CLI: el binario nunca se ejecuta. En un host de puerta de enlace, el modelo de puerta de enlace de la familia sigue sirviendo el slot (#6723)

Generar archivo de configuración:

nexus-agents config init   # Creates nexus-agents.yaml

Documentación

TemaEnlace
Referencia completa de CLIdocs/ENTRYPOINTS.md
Arquitecturadocs/architecture/README.md
ContribucionesCONTRIBUTING.md
Estándares de codificaciónCODING_STANDARDS.md
Guía de inicio rápidoQUICK_START.md

Desarrollo

git clone https://github.com/nexus-substrate/nexus-agents.git
cd nexus-agents
pnpm install
pnpm build
pnpm test

Requisitos: Node.js 22.x LTS, pnpm 9.x


Contribuciones

  1. Haz un fork del repositorio
  2. Crea una rama de características (git checkout -b feat/amazing-feature)
  3. Haz commits con commits convencionales (feat(scope): add feature)
  4. Abre una Pull Request

Consulta CONTRIBUTING.md para más detalles.


Licencia

MIT - Ver LICENSE


Construido con Claude Code