Skip to main content

IA Agent para Generación de Pruebas Unitarias .NET - Sistema multi-agente inteligente

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ia_agent_dotnet-0.8.3.tar.gz (145.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ia_agent_dotnet-0.8.3-py3-none-any.whl (142.0 kB view details)

Uploaded Python 3

File details

Details for the file ia_agent_dotnet-0.8.3.tar.gz.

File metadata

  • Download URL: ia_agent_dotnet-0.8.3.tar.gz
  • Upload date:
  • Size: 145.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for ia_agent_dotnet-0.8.3.tar.gz
Algorithm Hash digest
SHA256 8671f1fd881cf336c1c1efb8bf416d3a8bc8aa7209ecb195077ead55796279f7
MD5 c78bb6bf271fca750ab1ca0918d6662f
BLAKE2b-256 5325f6e761a122be85b2d9047c4df217f743d718b1024f495b76d3a5c43debcb

See more details on using hashes here.

File details

Details for the file ia_agent_dotnet-0.8.3-py3-none-any.whl.

File metadata

File hashes

Hashes for ia_agent_dotnet-0.8.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1c009081b9e2999493316c4b589724035e6ffcccccb463bc34ec8c31e3e3e431
MD5 034c63d96afa4dfabe95880eddfe3e28
BLAKE2b-256 8c46f2d951787eddc8f5575d25a00f45d9faa93ad5f6fd17918f291c39a80f00

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page