Skip to content

sharith45/atlas

Repository files navigation

Atlas v8.5

Sistema de agente autónomo potenciado por la API de NVIDIA.

Atlas Nvidia NIM Python

Descripción GeneralSub-AgentesConectividadModos de OperaciónConfiguraciónArquitecturaInicio Rápido

Atlas AI Interface


Descripción general

Atlas es un sistema de orquestación multi-agente diseñado para automatizar y resolver tareas complejas de desarrollo de software. Integra toma de decisiones guiada por modelos de lenguaje avanzados con entornos de ejecución locales seguros y navegación web interactiva, facilitando un flujo de trabajo cohesivo desde la planificación inicial hasta la escritura y validación de código.


Arquitectura de sub-agentes

El sistema distribuye la ejecución de tareas delegando misiones en tiempo real a tres agentes especializados:

Agente Función Principal Ámbito de Ejecución
fast_search Recopilación, extracción y consolidación de información externa. Búsquedas en internet, análisis de repositorios externos y procesamiento de documentos locales (PDF, DOCX, XLSX).
navigate Navegación e interacción gráfica con aplicaciones web. Control autónomo de navegador (clics, formularios, autenticación) emulando el comportamiento humano.
os_developer Escritura de código fuente y control del entorno local. Creación y edición de archivos, aplicación de parches, ejecución de comandos y testing automatizado en terminal.

Conectividad y recuperación de datos (Atlas Nexus Pro)

El sistema externo de recuperación y conectividad a internet, denominado Atlas Nexus Pro (implementado en browser/search/server.py), coordina tres canales de acceso para garantizar confiabilidad y velocidad:

Canal de Acceso Método / Tecnología Beneficio Técnico
Búsqueda estructurada API oficial de Brave Search Evita la latencia y los bloqueos característicos del raspado web tradicional (requiere BRAVE_API_KEY en .env).
Extracción autónoma Playwright + Playwright Stealth Modo headless con rotación de firmas de agentes de usuario para evadir sistemas antibot y capturar contenido dinámico.
Almacenamiento en caché Persistencia local temporal Almacenamiento local con TTL de 15 minutos en atlas_cache/ para reducir latencia y optimizar el consumo de tokens.

Modos de operación

El agente de desarrollo (os_developer) opera bajo tres perfiles estructurados en función de la complejidad de la misión:

Modo Latencia Razonamiento Planificación Permisos de Ejecución
FAST Mínima Desactivado (disable_thinking=True) Directo sin planes previos Autorización automática de comandos y edición
BUILD Balanceada Activo (Razonamiento profundo) Directo en espacio de trabajo Ejecución secuencial y testing directo
BUILD_WITH_PLAN Controlada Activo (Razonamiento profundo) Fase previa de plan maestro en missions/ Requiere aprobación explícita del usuario

Configuración inicial

El script setup_atlas.py asiste en el diagnóstico y la configuración del entorno local mediante cuatro acciones secuenciales:

  1. Validación de credenciales: Comprobación segura de la clave de NVIDIA NIM.
  2. Escaneo de modelos: Consultas concurrentes (límite de 15 solicitudes asíncronas simultáneas) para identificar modelos activos.
  3. Auditoría de razonamiento: Evaluación de la compatibilidad con parámetros de razonamiento profundo del proveedor (high, medium, low).
  4. Persistencia del entorno: Escritura automática del archivo de configuración .env con las variables detectadas:
nvidia=nvapi-XXXXXXXXXXXXXXXXXXXXXXXXXXXX
NVIDIA_MODEL=mistralai/mistral-small-4-119b-2603
NVIDIA_MAX_CONTEXT=32768
NVIDIA_REASONING_EFFORT=high

Modelos recomendados e inferencia

  • mistralai/mistral-small-4-119b-2603: Balanceado y rápido, optimizado para desarrollos estándar y flujos ágiles en modos FAST o BUILD.
  • mistralai/mistral-medium-3.5-128b: Recomendado para tareas que requieran planificación estructurada de múltiples etapas u operaciones complejas de razonamiento lógico.

Nota de coste: La plataforma NVIDIA NIM proporciona una cuota inicial de créditos de desarrollo para facilitar la integración y pruebas de Atlas sin costes de facturación.


Características avanzadas

Capacidades visuales (Screen Capture)

El sistema admite la recepción de capturas de pantalla para analizar el contexto visual actual de la estación de trabajo. Si el usuario solicita de forma conversacional que el agente examine la pantalla (por ejemplo, para resolver errores visuales en una interfaz o diagnosticar un error de consola visible), el agente captura el escritorio, procesa la imagen e interpreta el contexto para resolver el problema.

Próximos desarrollos (Comunicación por voz)

Actualmente, el sistema está optimizado para la ejecución mediante terminal interactiva. Se encuentra planificado el desarrollo de una extensión para permitir comunicación bidireccional por voz y comportamiento adaptativo ajustado a flujos conversacionales hablados de forma fluida.


Diagrama de arquitectura

Para facilitar la comprensión del sistema, la arquitectura se divide en el flujo de control conversacional y la ejecución de herramientas en el entorno:

1. Flujo de control principal

Representa el ciclo secuencial de una petición desde el usuario hasta la inferencia del modelo:

flowchart TD
    User([Usuario]) <--> |"1. Entrada / Comando"| CLI["CLI conversacional (atlas.py)"]
    CLI <--> |"2. Orquestación de turnos"| Core["Núcleo del Agente (AtlasAgent)"]
    Core <--> |"3. Inferencia de tokens"| LLM["Modelos (NVIDIA NIM)"]
    
    style User fill:#1e293b,stroke:#3b82f6,stroke-width:2px,color:#f8fafc;
    style CLI fill:#1e293b,stroke:#3b82f6,stroke-width:2px,color:#f8fafc;
    style Core fill:#1e1b4b,stroke:#6366f1,stroke-width:2px,color:#f8fafc;
    style LLM fill:#431407,stroke:#f97316,stroke-width:2px,color:#f8fafc;
Loading

2. Ejecución de herramientas y recursos

Representa cómo el núcleo delega tareas a los agentes especializados y con qué recursos del entorno interactúa cada uno:

flowchart TD
    Core["Núcleo del Agente"] --> |"Delegación de tareas"| Agents
    
    subgraph Agents["Agentes Especializados"]
        OSDev["os_developer (Archivos y Terminal)"]
        FastSearch["fast_search (Búsqueda y Lectura Web)"]
        Navigate["navigate (Navegador Playwright)"]
    end
    style Agents fill:#0f172a,stroke:#10b981,stroke-dasharray: 5 5;
    
    OSDev --> |"Comandos y edición"| Workspace[("Workspace Sandbox")]
    FastSearch --> |"Búsquedas y caché"| Cache[("Atlas Cache / Internet")]
    Navigate --> |"Navegación visual"| Internet[("Internet")]

    style Core fill:#1e1b4b,stroke:#6366f1,stroke-width:2px,color:#f8fafc;
    style OSDev fill:#064e3b,stroke:#10b981,stroke-width:2px,color:#f8fafc;
    style FastSearch fill:#064e3b,stroke:#10b981,stroke-width:2px,color:#f8fafc;
    style Navigate fill:#064e3b,stroke:#10b981,stroke-width:2px,color:#f8fafc;
    style Workspace fill:#0f172a,stroke:#475569,stroke-width:1px,color:#f8fafc;
    style Cache fill:#0f172a,stroke:#475569,stroke-width:1px,color:#f8fafc;
    style Internet fill:#0f172a,stroke:#475569,stroke-width:1px,color:#f8fafc;
Loading

Guía de inicio rápido

1. Obtención del código e instalación de dependencias

git clone https://github.com/sharith45/atlas.git
cd atlas
pip install -r requirements.txt

2. Configurar el entorno de ejecución

Ejecute el script interactivo para realizar el diagnóstico y generar el archivo .env:

python setup_atlas.py

3. Ejecución del sistema

Inicie la consola interactiva conversacional para comenzar el desarrollo guiado:

python atlas.py

Licencia y contribuciones

El código de Atlas está disponible públicamente de manera abierta y transparente, sin dependencias de cifrado o esquemas restrictivos de licencia. Se invita a desarrolladores y colaboradores a auditar la base de código, reportar incidentes y enviar mejoras para optimizar el rendimiento y las capacidades operativas del sistema.

About

ATLAS AI es un agente de codificación autónomo de código abierto que ayuda a los desarrolladores a escribir código, automatizar flujos de trabajo, interactuar con LLM y crear software directamente desde la terminal.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors