El blog de Deska
Ejecución de agentes en un código base de .NET
Aprende a optimizar la ejecución de agentes en un código base de .NET usando herramientas CLI, estructuras de proyecto y el espacio de trabajo de Deska.
10 min de lectura
El desarrollo de software dentro del ecosistema de Microsoft ha evolucionado rápidamente con la introducción de entidades autónomas capaces de escribir y refactorizar código. La ejecución de agentes en un código base de .NET de manera exitosa requiere más que una simple interfaz de chat. Exige una integración profunda con el sistema MSBuild, una comprensión de los árboles de dependencias de NuGet y un espacio de trabajo que pueda manejar la alta telemetría y la salida de archivos que estos agentes generan. Esta guía explora cómo configurar tu entorno para proyectos de C# y .NET al utilizar flujos de trabajo modernos basados en agentes.
La arquitectura de los agentes enfocados en .NET
Cuando hablamos de la ejecución de agentes en un código base de .NET, nos referimos a modelos de IA especializados que operan a través de una interfaz de línea de comandos (CLI) o un espacio de trabajo dedicado. A diferencia de las herramientas de completado simples, estos agentes pueden ejecutar comandos como dotnet build, analizar errores del compilador e iterar en soluciones hasta que el código pase la validación.
El desafío principal para un agente en un entorno .NET es el gran volumen de metadatos. Entre los archivos .csproj, las carpetas bin y obj, y el Global Assembly Cache, un agente puede perderse fácilmente en el ruido. Los agentes eficaces deben ser dirigidos para enfocarse en los archivos de origen mientras respetan la estructura del archivo de Solución (.sln).
Flujos de trabajo comunes con agentes
La mayoría de los desarrolladores utilizan actualmente un puñado de herramientas establecidas para este propósito. Cada una tiene un enfoque diferente para interactuar con el sistema de archivos y el compilador.
- Claude Code: Una herramienta de vista previa de investigación que se ejecuta en la terminal. Sobresale en el razonamiento complejo y puede ejecutar comandos de shell para verificar compilaciones de .NET.
- Codex CLI: Enfocado en transformaciones rápidas y generación de scripts.
- OpenCode: Una alternativa de código abierto que proporciona un marco para la colaboración entre múltiples agentes.
Estas herramientas a menudo se ejecutan una al lado de la otra para comparar resultados. Por ejemplo, podrías tener un agente enfocado en escribir pruebas unitarias en xUnit mientras otro refactoriza una capa de servicio.
Configuración del espacio de trabajo para .NET
Un IDE estándar a menudo está demasiado saturado para el trabajo con agentes. Cuando un agente comienza a modificar docenas de archivos, necesitas una forma de visualizar los cambios sin perder el contexto. Aquí es donde un enfoque de canvas especializado resulta valioso.
Deska proporciona un lienzo infinito donde puedes colocar paneles de terminales y del editor de código en cualquier lugar. Para un desarrollador de .NET, esto significa que puedes tener una terminal ejecutando un comando de monitoreo (dotnet watch test) en una esquina mientras un agente trabaja en otra.
Gestión del contexto del proyecto
Para que un agente sea eficiente, debes gestionar su ventana de contexto. En proyectos de .NET, esto implica:
- Excluir los directorios
artifacts,binyobjde la ruta de búsqueda del agente. - Proporcionar al agente el archivo
.csprojrelevante para que comprenda el framework de destino y las dependencias. - Usar un enfoque local-first para asegurar que el agente tenga acceso de baja latencia a todo el repositorio.
Al mantener tus archivos y sesiones de forma local, evitas las preocupaciones de seguridad de subir lógica de negocio propietaria a un IDE en la nube de terceros. Deska sigue esta filosofía, manteniendo todos los archivos y sesiones en tu máquina.
Comparación de herramientas para desarrolladores de C#
Elegir la herramienta adecuada depende de tus necesidades específicas para el proyecto. Algunas herramientas son mejores para el desarrollo desde cero, mientras que otras sobresalen en el mantenimiento de sistemas heredados.
| Característica | Claude Code | OpenCode | Deska Workspace |
|---|---|---|---|
| Interacción | Solo CLI | CLI o API | Lienzo Visual |
| Integración .NET | Vía Shell | Vía Shell | Terminales Integradas |
| Privacidad | API en la nube | Local o nube | Almacenamiento local |
| Multitarea | Flujo único | Múltiples agentes | Paneles simultáneos |
Mientras que Claude Code y OpenCode proporcionan el "cerebro" para la operación, el espacio de trabajo proporciona el "cuerpo". El uso de estos agentes dentro de un entorno unificado te permite ver el navegador para la documentación, la terminal para los logs y el editor de código simultáneamente.
Voz y automatización en flujos de trabajo de .NET
Una de las formas más avanzadas de la ejecución de agentes en un código base de .NET es a través de comandos de voz. Esto es particularmente útil para tareas repetitivas como generar código base para Inyección de Dependencias o crear Objetos de Transferencia de Datos (DTOs).
Con Ask Deska, puedes usar la voz para dirigir tu espacio de trabajo. Podrías decir "Abre la terminal y ejecuta la última migración" o "Pide a Claude que refactorice el controlador en los paneles de abajo". Esto crea un puente manos libres entre tu intención y la ejecución de los agentes CLI.
Manejo de acceso remoto y móvil
El desarrollo de software no siempre ocurre en un escritorio. A veces, una compilación larga o una sesión compleja de refactorización con agentes necesita ser monitoreada mientras estás lejos de la estación de trabajo.
La aplicación mobile de Deska te permite monitorear estas sesiones a través de un relevo seguro. Debido a que los dispositivos se vinculan directamente sin exponer puertos, puedes verificar el progreso de tus agentes de .NET desde tu teléfono. Esto es crucial para tareas de larga duración donde un agente podría estar realizando un barrido integral de una solución grande para actualizar paquetes NuGet o corregir cambios que rompen la compatibilidad tras una actualización del framework.
FAQ sobre agentes de .NET
¿Cómo evito que los agentes lean las carpetas bin y obj?
La mayoría de los agentes respetan un archivo .gitignore o una configuración de ignorados específica. Asegúrate de que tu proyecto .NET tenga un gitignore estándar que excluya los artefactos de compilación. En un espacio de trabajo visual, también puedes limitar el alcance del agente abriendo solo paneles específicos para los directorios relevantes para la tarea actual.
¿Puedo ejecutar múltiples agentes en el mismo proyecto .NET?
Sí, es común ejecutar diferentes agentes uno al lado del otro. Podrías usar un panel para Claude Code para manejar la lógica y otro para una herramienta CLI diferente para manejar la documentación o el CSS dentro de un proyecto Blazor. La gestión de estos hilos de agentes en una sola vista evita el cambio de contexto.
¿Es seguro mi código C# al usar estos agentes?
La seguridad depende del modelo de inferencia y del espacio de trabajo. El uso de una herramienta local-first garantiza que tus archivos permanezcan en tu hardware. Si usas tus propias claves de API, tu código se envía al proveedor para su procesamiento, pero generalmente no se almacena para entrenamiento, dependiendo de tu acuerdo con el proveedor.
Comenzando con Deska
Si estás listo para optimizar la ejecución de agentes en un código base de .NET, puedes comenzar configurando un espacio de trabajo limpio. La transición de un editor lineal tradicional a un lienzo infinito te permite visualizar las relaciones complejas en tus proyectos de C# de manera más clara.
Puedes descargar la aplicación de escritorio gratuita para Mac, Windows o Linux para comenzar a construir tu entorno personalizado de agentes .NET hoy mismo. Explora la guía de inicio rápido para aprender cómo conectar tu primer agente CLI y configurar tus terminales para la CLI de .NET.