Skip to main content

IA Agent para Generación de Pruebas Unitarias .NET

PyPI version Python 3.11+ .NET 8.0+ License: MIT

Un sistema multi-agente de IA avanzado con capacidades de memoria y herramientas externas (ReAct) especializado en la generación automática de pruebas unitarias para APIs REST desarrolladas en .NET.

🚀 Instalación Rápida

# Instalar desde PyPI
pip install ia-agent-dotnet

# Configurar el agente (una sola vez)
ia-agent-config

# ¡Listo para usar! (Descubre proyectos automáticamente)
ia-agent

🚀 Características Principales

  • 🤖 Sistema Multi-Agente: Colaboración inteligente entre agentes especializados
  • 🔍 Descubrimiento Automático: Detecta proyectos .NET automáticamente en el directorio actual
  • 🎯 Selección Interactiva: Interfaz amigable para seleccionar proyectos
  • 🧠 Memoria Persistente: Recuerda conversaciones y contexto entre sesiones
  • 🛠️ Herramientas Externas: Ejecuta código y busca documentación automáticamente
  • 🔄 Patrón ReAct: Razonamiento y actuación iterativa para decisiones autónomas
  • 🎯 Especialización: Agentes especializados en análisis, generación, validación y optimización
  • 📊 Soporte Multi-Framework: xUnit, NUnit, MSTest
  • ⚡ CLI Interactivo Persistente: Interfaz de línea de comandos que mantiene el estado entre comandos
  • 🔧 Configuración Global: Sistema de configuración centralizado para API keys
  • ✅ Validación Automática: Verificación de configuración y versiones al inicio
  • 🎨 Interfaz Mejorada: Tablas y paneles con información detallada de análisis
  • 🔄 Recarga Dinámica: Actualización automática de configuración sin reiniciar

🏗️ Arquitectura

El sistema utiliza LangChain para capacidades ReAct individuales y AutoGen para colaboración entre agentes especializados:

  • Agente Analista: Analiza código .NET y extrae información
  • Agente Generador: Genera código de pruebas y templates
  • Agente Validador: Valida código y ejecuta pruebas
  • Agente Optimizador: Optimiza pruebas y sugiere mejoras
  • Agente Coordinador: Coordina tareas y gestiona flujos de trabajo

🆕 Nuevas Funcionalidades (v0.8.0)

CLI Interactivo Persistente

  • Estado Persistente: Los agentes se cargan una sola vez y mantienen el estado entre comandos
  • Comandos Rápidos: Ejecuta analyze, generate, validate sin reinicializar
  • Interfaz Mejorada: Tablas con métricas detalladas y paneles informativos
  • Validación Automática: Verifica configuración y versiones al inicio

Sistema de Configuración Global

  • Configuración Centralizada: API keys almacenadas globalmente
  • Recarga Dinámica: Actualiza configuración sin reiniciar la aplicación
  • Validación Inteligente: Detecta claves válidas vs placeholders
  • Soporte Multi-Proveedor: DeepSeek, Gemini 2.5, OpenAI

Mejoras en Análisis

  • Métricas Detalladas: Contadores de controladores, modelos, servicios
  • Extracción Inteligente: Parsea automáticamente resultados del agente
  • Presentación Visual: Tablas y paneles con información estructurada

🔧 Configuración

Configuración Global (Recomendado)

# Configurar el agente una sola vez
ia-agent-config

# Ver configuración actual
ia-agent-config --status

Proveedores de IA Disponibles

  • DeepSeek (Recomendado) - Especializado en programación, más económico
  • Gemini - Google AI, bueno para análisis general
  • OpenAI - Estándar de la industria, más caro

💡 Nota: La configuración se guarda globalmente y se aplica a todos tus proyectos. No necesitas archivos .env en cada proyecto.

🎯 Uso Básico

Comandos Principales

# Descubrir y analizar proyectos automáticamente (NUEVO)
ia-agent

# Ver ayuda del agente
ia-agent --help

# Analizar un proyecto específico (opcional)
ia-agent --project-path ./mi-proyecto

# Configurar el agente
ia-agent-config

# Ver estado de configuración
ia-agent-config --status

Ejemplos de Uso

# Descubrir proyectos en directorio actual (RECOMENDADO)
ia-agent

# Analizar proyecto específico
ia-agent --project-path ./src/MyProject

# Ver logs detallados
ia-agent --log-level DEBUG

🔍 Descubrimiento Automático de Proyectos

El agente ahora detecta automáticamente todos los proyectos .NET en el directorio actual:

# Navega a tu directorio de proyecto
cd ./mi-proyecto-dotnet

# Ejecuta el agente (descubre automáticamente)
ia-agent

El agente mostrará:

  • 📁 Lista de proyectos .NET encontrados
  • 🎯 Tipo de proyecto (Web API, Console, Library, Test)
  • 🔧 Framework objetivo (.NET 8.0, etc.)
  • 📦 Paquetes NuGet utilizados
  • 🎯 Opción de selección interactiva

📋 Requisitos del Sistema

  • Sistema Operativo: Windows 10/11 (64-bit), Linux, macOS
  • Python: 3.11 o superior
  • .NET SDK: 8.0 o superior (para proyectos .NET)
  • Memoria RAM: 8GB mínimo, 16GB recomendado
  • Conexión a Internet: Para APIs de IA
  • API Key: DeepSeek, Gemini o OpenAI

📚 Documentación

🛠️ Desarrollo

Instalación para Desarrollo

# Clonar el repositorio
git clone https://github.com/Lopand-Solutions/ia-agent-to-unit-test-api-rest.git
cd ia-agent-to-unit-test-api-rest

# Crear entorno virtual
python -m venv venv
venv\Scripts\activate  # Windows
# source venv/bin/activate  # Linux/Mac

# Instalar en modo desarrollo
pip install -e .

Contribuir

  1. Fork el repositorio
  2. Crear rama de feature (git checkout -b feature/nueva-funcionalidad)
  3. Commit cambios (git commit -am 'Agregar nueva funcionalidad')
  4. Push a la rama (git push origin feature/nueva-funcionalidad)
  5. Crear Pull Request

📊 Estado del Proyecto

✅ Fases Completadas

Fase 1: Análisis y Diseño ✅

  • Estructura del proyecto creada
  • Dependencias configuradas
  • Repositorio Git inicializado
  • Archivos de configuración creados
  • Requisitos documentados
  • Arquitectura diseñada

Fase 2: Desarrollo del Sistema Multi-Agente ✅

  • Agentes especializados implementados
  • Sistema de memoria vectorial
  • Herramientas .NET integradas
  • CLI básico funcional
  • Sistema de logging implementado

Fase 3: Funcionalidades Avanzadas ✅

  • Suite de testing completa
  • Mejoras de IA implementadas
  • Sistema de monitoreo
  • Documentación de API
  • Optimizaciones de rendimiento

Fase 4: Optimización y Despliegue ✅

  • Sistema de configuración robusto
  • Manager de memoria optimizado
  • Optimizador de rendimiento
  • Manejador de errores avanzado
  • Configuración Docker completa
  • Scripts de despliegue automatizado
  • Validador de producción

Fase 5: Documentación Final y Entrega ✅

  • Guía de usuario completa
  • Guía de desarrollador
  • Guía de despliegue
  • Documentación de API
  • Guía de solución de problemas
  • Changelog del proyecto
  • Licencia MIT

🎯 Versión Actual: v0.7.0

  • Estado: ✅ DISPONIBLE EN PyPI
  • Funcionalidades: Sistema multi-agente con descubrimiento automático de proyectos
  • Nuevo: 🔍 Descubrimiento automático y selección interactiva de proyectos .NET
  • Configuración: Global y automática (sin archivos .env)
  • Proveedores: DeepSeek, Gemini, OpenAI
  • Documentación: Guías completas y API reference

🤝 Soporte

📄 Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

🙏 Agradecimientos

  • LangChain - Framework para agentes con capacidades ReAct
  • AutoGen - Framework para colaboración multi-agente
  • DeepSeek - IA especializada en programación
  • Google Gemini - Google AI para análisis general
  • OpenAI - APIs de IA para generación de código
  • Comunidad .NET por las mejores prácticas de testing

Desarrollado con ❤️ para la comunidad .NET

PyPI version GitHub

Release files for ia-agent-dotnet 0.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ia-agent-dotnet 0.10.0
File Size Uploaded
ia_agent_dotnet-0.10.0.tar.gz 143.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ia-agent-dotnet 0.10.0
File Interpreter ABI Platform
ia_agent_dotnet-0.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 303.0 kB

Release files / ia_agent_dotnet-0.10.0.tar.gz

Download URL ia_agent_dotnet-0.10.0.tar.gz
Size 143.1 kB
Tags Source
SHA-256 checksum
How to use checksums
d78c82686d86db3caca5048eb4e52a6a85b3e1516a57c03c5cb090484b2ba059
BLAKE2b-256 checksum
How to use checksums
cd625547d871d01448c933d76cbe7d731c2bf9059b94256f93feabd96e23b2b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.1

Release files / ia_agent_dotnet-0.10.0-py3-none-any.whl

Download URL ia_agent_dotnet-0.10.0-py3-none-any.whl
Size 159.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9f16184e44d688920e37628319a3cff12ff276292c70ac7139e529fca7ede28f
BLAKE2b-256 checksum
How to use checksums
82ebabe8778bb2e19d2170b699759ac84d355d7a33b5dcccdb7c50c4738a67dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.1

Release history Release notifications | RSS feed

This release

0.10.0 This release

2 release files

0.9.0

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page