Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
pentagi — Sistema de Agentes de IA totalmente autónomo capaz de realizar tareas complejas de pruebas de penetración | Kitploit
Herramientas/GitHubGitHub/vxcontrol/pentagi
Frameworks de Pruebas de PenetraciónReconocimientoEscáneres de VulnerabilidadesFrameworks de ExploitsRecopilación de InformaciónSeguridad WebPruebas de PenetraciónAprendizaje y EducaciónSeguridad de IA
GitHubvxcontrol/pentagi

pentagi

Sistema de Agentes de IA totalmente autónomo capaz de realizar tareas complejas de pruebas de penetración

21.8k2.9k1hace 14 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver RepositorioSitio web

PentAGI

Pruebas de penetración Artificial General Intelligence

¡Únete a la Comunidad! Conéctate con investigadores de seguridad, entusiastas de la IA y hackers éticos colegas. Obtén apoyo, comparte ideas y mantente al día con los últimos desarrollos de PentAGI.

Discord⠀Telegram

vxcontrol%2Fpentagi | Trendshift

Tabla de Contenidos

  • Descripción General
  • Características
  • Arquitectura
    • Supervisión de Agentes
  • Inicio Rápido
  • Cómo Usar PentAGI Después del Inicio de Sesión
  • Acceso a la API
    • Configuración de Proveedor de LLM Personalizado
      • Ollama
      • OpenAI
      • Anthropic
      • Google AI (Gemini)
      • AWS Bedrock
      • DeepSeek
      • GLM
      • Kimi
      • Qwen
  • Configuración Avanzada
    • Integración con Langfuse
    • Monitoreo y Observabilidad
    • Grafo de Conocimiento (Graphiti)
    • Integración OAuth
    • Configuración de la Imagen Docker
  • Desarrollo
  • Pruebas de Agentes LLM
  • Configuración y Pruebas de Embeddings
  • Pruebas de Funciones con ftester
  • Compilación
  • Créditos
  • Licencia

Descripción General

PentAGI es una herramienta innovadora para pruebas de seguridad automatizadas que aprovecha tecnologías de inteligencia artificial de vanguardia. El proyecto está diseñado para profesionales de la seguridad de la información, investigadores y entusiastas que necesitan una solución potente y flexible para realizar pruebas de penetración.

Puedes ver el video Visión general de PentAGI: PentAGI Overview Video

Características

  • Seguro y Aislado. Todas las operaciones se realizan en un entorno Docker con sandbox y completo aislamiento.
  • Completamente Autónomo. Agente impulsado por IA que determina y ejecuta automáticamente los pasos de la prueba de penetración con monitoreo de ejecución opcional y planificación inteligente de tareas para mayor fiabilidad.
  • Herramientas Profesionales de Pentesting. Conjunto integrado de más de 20 herramientas de seguridad profesionales que incluyen nmap, metasploit, sqlmap y más.
  • Sistema de Memoria Inteligente. Almacenamiento a largo plazo de resultados de investigación y enfoques exitosos para uso futuro.
  • Integración de Grafo de Conocimiento. Grafo de conocimiento impulsado por Graphiti utilizando Neo4j para seguimiento de relaciones semánticas y comprensión avanzada del contexto.
  • Inteligencia Web. Navegador integrado a través de scraper para recopilar la información más reciente de fuentes web.
  • Sistemas de Búsqueda Externos. Integración con APIs de búsqueda avanzadas que incluyen Tavily, Traversaal, Perplexity, DuckDuckGo, Búsqueda Personalizada de Google, Sploitus Search y Searxng para recopilación integral de información.
  • Equipo de Especialistas. Sistema de delegación con agentes de IA especializados para tareas de investigación, desarrollo e infraestructura, mejorado con monitoreo de ejecución opcional y planificación inteligente de tareas para un rendimiento óptimo con modelos más pequeños.
  • Monitoreo Integral. Registro detallado e integración con Grafana/Prometheus para observación del sistema en tiempo real.
  • Informes Detallados. Generación de informes exhaustivos de vulnerabilidades con guías de explotación.
  • Gestión Inteligente de Contenedores. Selección automática de imágenes Docker basada en los requisitos específicos de la tarea.
  • Interfaz Moderna. Interfaz web limpia e intuitiva para la gestión y monitoreo del sistema.
  • APIs Completas. APIs REST y GraphQL con todas las funciones y autenticación mediante token Bearer para automatización e integración.
  • Almacenamiento Persistente. Todos los comandos y salidas se almacenan en PostgreSQL con extensión pgvector.
  • Arquitectura Escalable. Diseño basado en microservicios que soporta escalado horizontal.

Límites Actuales de Capacidad

  • PentAGI hoy es una plataforma de pruebas de penetración autónoma y asistida por guía, no un producto de Simulación de Brechas y Ataques (BAS) al estilo CALDERA ni de emulación de adversarios con campañas o planes de ataque predefinidos.
  • Los scripts de ataque escritos por agentes tipo BAS deben tratarse como trabajo conceptual o futuro, no como una característica implementada hoy.
  • La interfaz actual de informes de flujo soporta vista web, copia al portapapeles, descarga Markdown y descarga PDF. La exportación de informes de flujo en JSON no está documentada como un formato de salida soportado hoy.
  • La flexibilidad de proveedores está disponible hoy a través de proveedores integrados y endpoints personalizados/compatibles con OpenAI. Consulta Configuración de Proveedor de LLM Personalizado y la guía vLLM + Qwen3.5-27B-FP8.

Arquitectura

Contexto del Sistema```mermaid

flowchart TB classDef person fill:#08427B,stroke:#073B6F,color:#fff classDef system fill:#1168BD,stroke:#0B4884,color:#fff classDef external fill:#666666,stroke:#0B4884,color:#fff

root@kitploit:~
pentester["👤 Security Engineer
(User of the system)"]

pentagi["✨ PentAGI
(Autonomous penetration testing system)"]

target["🎯 target-system
(System under test)"]
llm["🧠 llm-provider
(OpenAI/Anthropic/Ollama/Bedrock/Gemini/Custom)"]
search["🔍 search-systems
(Google/DuckDuckGo/Tavily/Traversaal/Perplexity/Sploitus/Searxng)"]
langfuse["📊 langfuse-ui
(LLM Observability Dashboard)"]
grafana["📈 grafana
(System Monitoring Dashboard)"]

pentester --> |Uses HTTPS| pentagi
pentester --> |Monitors AI HTTPS| langfuse
pentester --> |Monitors System HTTPS| grafana
pentagi --> |Tests Various protocols| target
pentagi --> |Queries HTTPS| llm
pentagi --> |Searches HTTPS| search
pentagi --> |Reports HTTPS| langfuse
pentagi --> |Reports HTTPS| grafana

class pentester person
class pentagi system
class target,llm,search,langfuse,grafana external

linkStyle default stroke:#ffffff,color:#ffffff
root@kitploit:~
<details>
<summary><b>Arquitectura del contenedor</b> (haga clic para expandir)</summary>```mermaid
graph TB
    subgraph Core Services
        UI[Frontend UI<br/>React + TypeScript]
        API[Backend API<br/>Go + GraphQL]
        DB[(Vector Store<br/>PostgreSQL + pgvector)]
        MQ[Task Queue<br/>Async Processing]
        Agent[AI Agents<br/>Multi-Agent System]
    end

    subgraph Knowledge Graph
        Graphiti[Graphiti<br/>Knowledge Graph API]
        Neo4j[(Neo4j<br/>Graph Database)]
    end

    subgraph Monitoring
        Grafana[Grafana<br/>Dashboards]
        VictoriaMetrics[VictoriaMetrics<br/>Time-series DB]
        Jaeger[Jaeger<br/>Distributed Tracing]
        Loki[Loki<br/>Log Aggregation]
        OTEL[OpenTelemetry<br/>Data Collection]
    end

    subgraph Analytics
        Langfuse[Langfuse<br/>LLM Analytics]
        ClickHouse[ClickHouse<br/>Analytics DB]
        Redis[Redis<br/>Cache + Rate Limiter]
        MinIO[MinIO<br/>S3 Storage]
    end

    subgraph Security Tools
        Scraper[Web Scraper<br/>Isolated Browser]
        PenTest[Security Tools<br/>20+ Pro Tools<br/>Sandboxed Execution]
    end

    UI --> |HTTP/WS| API
    API --> |SQL| DB
    API --> |Events| MQ
    MQ --> |Tasks| Agent
    Agent --> |Commands| PenTest
    Agent --> |Queries| DB
    Agent --> |Knowledge| Graphiti
    Graphiti --> |Graph| Neo4j

    API --> |Telemetry| OTEL
    OTEL --> |Metrics| VictoriaMetrics
    OTEL --> |Traces| Jaeger
    OTEL --> |Logs| Loki

    Grafana --> |Query| VictoriaMetrics
    Grafana --> |Query| Jaeger
    Grafana --> |Query| Loki

    API --> |Analytics| Langfuse
    Langfuse --> |Store| ClickHouse
    Langfuse --> |Cache| Redis
    Langfuse --> |Files| MinIO

    classDef core fill:#f9f,stroke:#333,stroke-width:2px,color:#000
    classDef knowledge fill:#ffa,stroke:#333,stroke-width:2px,color:#000
    classDef monitoring fill:#bbf,stroke:#333,stroke-width:2px,color:#000
    classDef analytics fill:#bfb,stroke:#333,stroke-width:2px,color:#000
    classDef tools fill:#fbb,stroke:#333,stroke-width:2px,color:#000

    class UI,API,DB,MQ,Agent core
    class Graphiti,Neo4j knowledge
    class Grafana,VictoriaMetrics,Jaeger,Loki,OTEL monitoring
    class Langfuse,ClickHouse,Redis,MinIO analytics
    class Scraper,PenTest tools
Relación de Entidades (haga clic para expandir)```mermaid erDiagram Flow ||--o{ Task : contains Task ||--o{ SubTask : contains SubTask ||--o{ Action : contains Action ||--o{ Artifact : produces Action ||--o{ Memory : stores
root@kitploit:~
Flow {
    string id PK
    string name "Flow name"
    string description "Flow description"
    string status "active/completed/failed"
    json parameters "Flow parameters"
    timestamp created_at
    timestamp updated_at
}

Task {
    string id PK
    string flow_id FK
    string name "Task name"
    string description "Task description"
    string status "pending/running/done/failed"
    json result "Task results"
    timestamp created_at
    timestamp updated_at
}

SubTask {
    string id PK
    string task_id FK
    string name "Subtask name"
    string description "Subtask description"
    string status "queued/running/completed/failed"
    string agent_type "researcher/developer/executor"
    json context "Agent context"
    timestamp created_at
    timestamp updated_at
}

Action {
    string id PK
    string subtask_id FK
    string type "command/search/analyze/etc"
    string status "success/failure"
    json parameters "Action parameters"
    json result "Action results"
    timestamp created_at
}

Artifact {
    string id PK
    string action_id FK
    string type "file/report/log"
    string path "Storage path"
    json metadata "Additional info"
    timestamp created_at
}

Memory {
    string id PK
    string action_id FK
    string type "observation/conclusion"
    vector embedding "Vector representation"
    text content "Memory content"
    timestamp created_at
}
Sistema de memoria (haga clic para expandir)```mermaid graph TB subgraph "Long-term Memory" VS[(Vector Store
Embeddings DB)] KB[Knowledge Base
Domain Expertise] Tools[Tools Knowledge
Usage Patterns] end
root@kitploit:~
subgraph "Working Memory"
    Context[Current Context<br/>Task State]
    Goals[Active Goals<br/>Objectives]
    State[System State<br/>Resources]
end

subgraph "Episodic Memory"
    Actions[Past Actions<br/>Commands History]
    Results[Action Results<br/>Outcomes]
    Patterns[Success Patterns<br/>Best Practices]
end

Context --> |Query| VS
VS --> |Retrieve| Context

Goals --> |Consult| KB
KB --> |Guide| Goals

State --> |Record| Actions
Actions --> |Learn| Patterns
Patterns --> |Store| VS

Tools --> |Inform| State
Results --> |Update| Tools

VS --> |Enhance| KB
KB --> |Index| VS

classDef ltm fill:#f9f,stroke:#333,stroke-width:2px,color:#000
classDef wm fill:#bbf,stroke:#333,stroke-width:2px,color:#000
classDef em fill:#bfb,stroke:#333,stroke-width:2px,color:#000

class VS,KB,Tools ltm
class Context,Goals,State wm
class Actions,Results,Patterns em
root@kitploit:~
</details>

<details>
<summary><b>Resumen en Cadena</b> (haga clic para expandir)</summary>

El sistema de resumen en cadena gestiona el crecimiento del contexto de la conversación resumiendo selectivamente los mensajes antiguos. Esto es fundamental para evitar que se superen los límites de tokens, manteniendo la coherencia de la conversación.```mermaid
flowchart TD
    A[Input Chain] --> B{Needs Summarization?}
    B -->|No| C[Return Original Chain]
    B -->|Yes| D[Convert to ChainAST]
    D --> E[Apply Section Summarization]
    E --> F[Process Oversized Pairs]
    F --> G[Manage Last Section Size]
    G --> H[Apply QA Summarization]
    H --> I[Rebuild Chain with Summaries]
    I --> J{Is New Chain Smaller?}
    J -->|Yes| K[Return Optimized Chain]
    J -->|No| C

    classDef process fill:#bbf,stroke:#333,stroke-width:2px,color:#000
    classDef decision fill:#bfb,stroke:#333,stroke-width:2px,color:#000
    classDef output fill:#fbb,stroke:#333,stroke-width:2px,color:#000

    class A,D,E,F,G,H,I process
    class B,J decision
    class C,K output
Descargar herramienta
  • Solución Auto-Alojada. Control total sobre tu despliegue y datos.
  • Autenticación Flexible. Soporte para más de 10 proveedores de LLM (OpenAI, Anthropic, Google AI/Gemini, AWS Bedrock, Ollama, DeepSeek, GLM, Kimi, Qwen, Personalizados) más agregadores (OpenRouter, DeepInfra). Para despliegues locales en producción, consulta nuestra guía vLLM + Qwen3.5-27B-FP8.
  • Autenticación mediante Token API. Sistema seguro de token Bearer para acceso programático a las APIs REST y GraphQL.
  • Despliegue Rápido. Configuración sencilla mediante Docker Compose con configuración completa del entorno.
  • root@kitploit:~
    </details>
    
    <details>
    <summary><b>Interacción del Agente</b> (haga clic para expandir)</summary>```mermaid
    sequenceDiagram
        participant O as Orchestrator
        participant R as Researcher
        participant D as Developer
        participant E as Executor
        participant VS as Vector Store
        participant KB as Knowledge Base
    
        Note over O,KB: Flow Initialization
        O->>VS: Query similar tasks
        VS-->>O: Return experiences
        O->>KB: Load relevant knowledge
        KB-->>O: Return context
    
        Note over O,R: Research Phase
        O->>R: Analyze target
        R->>VS: Search similar cases
        VS-->>R: Return patterns
        R->>KB: Query vulnerabilities
        KB-->>R: Return known issues
        R->>VS: Store findings
        R-->>O: Research results
    
        Note over O,D: Planning Phase
        O->>D: Plan attack
        D->>VS: Query exploits
        VS-->>D: Return techniques
        D->>KB: Load tools info
        KB-->>D: Return capabilities
        D-->>O: Attack plan
    
        Note over O,E: Execution Phase
        O->>E: Execute plan
        E->>KB: Load tool guides
        KB-->>E: Return procedures
        E->>VS: Store results
        E-->>O: Execution status
    

    El algoritmo opera sobre una representación estructurada de cadenas de conversación (ChainAST) que preserva los tipos de mensajes, incluyendo las llamadas a herramientas y sus respuestas. Todas las operaciones de resumen mantienen el flujo crítico de la conversación mientras reducen el tamaño del contexto.

    Opciones de configuración del resumidor global

    ParámetroVariable de entornoValor predeterminadoDescripción
    Preserve LastSUMMARIZER_PRESERVE_LASTtrueSi se deben conservar todos los mensajes en la última sección intactos
    Use QA PairsSUMMARIZER_USE_QAtrueSi se debe usar la estrategia de resumen de pares de Q&A
    Summarize Human in QASUMMARIZER_SUM_MSG_HUMAN_IN_QAfalseSi se deben resumir los mensajes humanos en los pares de Q&A
    Last Section SizeSUMMARIZER_LAST_SEC_BYTES51200Tamaño máximo en bytes para la última sección (50KB)
    Max Body Pair SizeSUMMARIZER_MAX_BP_BYTES16384Tamaño máximo en bytes para un solo par de cuerpo (16KB)
    Max QA SectionsSUMMARIZER_MAX_QA_SECTIONS10Número máximo de secciones de pares de Q&A a conservar
    Max QA SizeSUMMARIZER_MAX_QA_BYTES65536Tamaño máximo en bytes para las secciones de pares de Q&A (64KB)
    Keep QA SectionsSUMMARIZER_KEEP_QA_SECTIONS1Número de secciones de Q&A recientes a conservar sin resumir

    Opciones de configuración del resumidor del asistente

    Las instancias del asistente pueden usar configuraciones de resumen personalizadas para ajustar el comportamiento de gestión del contexto:

    ParámetroVariable de entornoValor predeterminadoDescripción
    Preserve LastASSISTANT_SUMMARIZER_PRESERVE_LASTtrueSi se deben conservar todos los mensajes en la última sección del asistente
    Last Section SizeASSISTANT_SUMMARIZER_LAST_SEC_BYTES76800Tamaño máximo en bytes para la última sección del asistente (75KB)
    Max Body Pair SizeASSISTANT_SUMMARIZER_MAX_BP_BYTES16384Tamaño máximo en bytes para un solo par de cuerpo en el contexto del asistente (16KB)
    Max QA SectionsASSISTANT_SUMMARIZER_MAX_QA_SECTIONS7Número máximo de secciones de Q&A a conservar en el contexto del asistente
    Max QA SizeASSISTANT_SUMMARIZER_MAX_QA_BYTES76800Tamaño máximo en bytes para las secciones de Q&A del asistente (75KB)
    Keep QA SectionsASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS3Número de secciones de Q&A recientes a conservar sin resumir

    La configuración del resumidor del asistente proporciona más memoria para la retención del contexto en comparación con la configuración global, conservando un historial de conversación más reciente mientras sigue garantizando un uso eficiente de los tokens.

    Configuración del entorno del resumidor```bash

    Default values for global summarizer logic

    SUMMARIZER_PRESERVE_LAST=true SUMMARIZER_USE_QA=true SUMMARIZER_SUM_MSG_HUMAN_IN_QA=false SUMMARIZER_LAST_SEC_BYTES=51200 SUMMARIZER_MAX_BP_BYTES=16384 SUMMARIZER_MAX_QA_SECTIONS=10 SUMMARIZER_MAX_QA_BYTES=65536 SUMMARIZER_KEEP_QA_SECTIONS=1

    Default values for assistant summarizer logic

    ASSISTANT_SUMMARIZER_PRESERVE_LAST=true ASSISTANT_SUMMARIZER_LAST_SEC_BYTES=76800 ASSISTANT_SUMMARIZER_MAX_BP_BYTES=16384 ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS=7 ASSISTANT_SUMMARIZER_MAX_QA_BYTES=76800 ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS=3

    root@kitploit:~
    </details>
    
    <a id="advanced-agent-supervision"></a>
    <details>
    <summary><b>Supervisión Avanzada de Agentes</b> (haga clic para expandir)</summary>
    
    PentAGI incluye mecanismos sofisticados de supervisión de agentes en múltiples capas para garantizar una ejecución eficiente de tareas, evitar bucles infinitos y proporcionar una recuperación inteligente de estados bloqueados:
    
    ### Monitoreo de Ejecución (Beta)
    - **Intervención Automática del Mentor**: El agente asesor (mentor) se invoca automáticamente cuando los patrones de ejecución indican problemas potenciales.
    - **Detección de Patrones**: Monitorea llamadas a herramientas idénticas (umbral: 5, configurable) y llamadas totales a herramientas (umbral: 10, configurable).
    - **Análisis de Progreso**: Evalúa si el agente avanza hacia el objetivo de la subtarea, detecta bucles e ineficiencias.
    - **Estrategias Alternativas**: Recomienda diferentes enfoques cuando la estrategia actual falla.
    - **Guía de Recuperación de Información**: Sugiere buscar soluciones establecidas en lugar de reinventar.
    - **Formato de Respuesta Mejorado**: Las respuestas de las herramientas incluyen secciones `<original_result>` y `<mentor_analysis>`.
    - **Configurable**: Habilite mediante `EXECUTION_MONITOR_ENABLED` (predeterminado: falso), personalice umbrales con `EXECUTION_MONITOR_SAME_TOOL_LIMIT` y `EXECUTION_MONITOR_TOTAL_TOOL_LIMIT`.
    
    **Mejor para**: Modelos más pequeños (< 32B parámetros), escenarios de ataque complejos que requieren orientación continua, evitar que los agentes se estanquen en un único enfoque.
    
    **Impacto en el Rendimiento**: Aumento de 2 a 3 veces en el tiempo de ejecución y uso de tokens, pero ofrece una **mejora de 2x en la calidad de los resultados** según las pruebas con Qwen3.5-27B-FP8.
    
    ### Planificación Inteligente de Tareas (Beta)
    - **Descomposición Automatizada**: El planificador (asesor en modo de planificación) genera de 3 a 7 pasos específicos y procesables antes de que los agentes especialistas comiencen a trabajar.
    - **Planes Conscientes del Contexto**: Analiza el contexto completo de ejecución a través del agente enriquecedor para crear planes informados.
    - **Asignación Estructurada**: La solicitud original se envuelve en una estructura `<task_assignment>` con el plan de ejecución y las instrucciones.
    - **Gestión del Alcance**: Evita la expansión del alcance manteniendo a los agentes enfocados únicamente en la subtarea actual.
    - **Instrucciones Enriquecidas**: Los planes destacan acciones críticas, posibles obstáculos y puntos de verificación.
    - **Configurable**: Habilite mediante `AGENT_PLANNING_STEP_ENABLED` (predeterminado: falso).
    
    **Mejor para**: Modelos < 32B parámetros, flujos de trabajo complejos de pruebas de penetración, mejora de las tasas de éxito en tareas sofisticadas.
    
    **Configuración Mejorada del Asesor**: Funciona excepcionalmente bien cuando el agente asesor utiliza un modelo más potente o configuraciones mejoradas. Ejemplo: usar el mismo modelo base con el modo de razonamiento máximo para el asesor (consulte [`vllm-qwen3.5-27b-fp8.provider.yml`](https://github.com/vxcontrol/pentagi/blob/HEAD/examples/configs/vllm-qwen3.5-27b-fp8.provider.yml)) permite un análisis completo de tareas y una planificación estratégica desde una arquitectura de modelo idéntica.
    
    **Impacto en el Rendimiento**: Agrega sobrecarga de planificación, pero mejora significativamente las tasas de finalización y reduce el trabajo redundante.
    
    ### Límites de Llamadas a Herramientas (Siempre Activo)
    - **Límites Estrictos**: Evitan ejecuciones descontroladas independientemente del estado del modo de supervisión.
    - **Diferenciados por Tipo de Agente**:
      - Agentes generales (Asistente, Agente Principal, Pentester, Programador, Instalador): `MAX_GENERAL_AGENT_TOOL_CALLS` (predeterminado: 100).
      - Agentes limitados (Buscador, Enriquecedor, Memorista, Generador, Reportero, Asesor, Reflexivo, Planificador): `MAX_LIMITED_AGENT_TOOL_CALLS` (predeterminado: 20).
    - **Terminación Gradual**: El Reflexivo guía a los agentes hacia una finalización adecuada cuando se acercan a los límites.
    - **Protección de Recursos**: Garantiza la estabilidad del sistema y evita el agotamiento de recursos.
    
    ### Integración del Reflexivo (Siempre Activo)
    - **Corrección Automática**: Se invoca cuando el LLM no logra generar llamadas a herramientas después de 3 intentos.
    - **Orientación Estratégica**: Analiza los fallos y guía a los agentes hacia un uso adecuado de las herramientas o herramientas de barrera (`done`, `ask`).
    - **Mecanismo de Recuperación**: Proporciona orientación contextual basada en patrones de fallo específicos.
    - **Aplicación de Límites**: Coordina la terminación gradual cuando se alcanzan los límites de llamadas a herramientas.
    
    ### Recomendaciones para Modelos de Código Abierto
    
    **Imprescindible para Modelos < 32B Parámetros**:
    Las pruebas con Qwen3.5-27B-FP8 demuestran que habilitar tanto el Monitoreo de Ejecución como la Planificación de Tareas es **esencial** para modelos de código abierto más pequeños:
    - **Mejora de Calidad**: Resultados 2x mejores en comparación con la ejecución base sin supervisión.
    - **Prevención de Bucles**: Reduce significativamente los bucles infinitos y el trabajo redundante.
    - **Diversidad de Ataques**: Fomenta la exploración de múltiples vectores de ataque en lugar de fijarse en un solo enfoque.
    - **Despliegues Aislados**: Permite pruebas de penetración autónomas de grado de producción en entornos de red cerrados con inferencia LLM local.
    
    **Compensaciones**:
    - Consumo de tokens: Aumento de 2 a 3 veces debido a las invocaciones del mentor/planificador.
    - Tiempo de ejecución: 2 a 3 veces más largo debido a los pasos de análisis y planificación.
    - Calidad de los resultados: Mejora de 2x en integridad, precisión y cobertura de ataque.
    - Requisitos del modelo: Funciona mejor cuando el asesor utiliza una configuración mejorada (parámetros de razonamiento más altos, variante de modelo más potente o modelo diferente).
    
    **Estrategia de Configuración**:
    Para un rendimiento óptimo con modelos más pequeños, configure el agente asesor con ajustes mejorados:
    - Utilice el mismo modelo con el modo de razonamiento máximo (ejemplo: [`vllm-qwen3.5-27b-fp8.provider.yml`](https://github.com/vxcontrol/pentagi/blob/HEAD/examples/configs/vllm-qwen3.5-27b-fp8.provider.yml)).
    - O utilice un modelo más potente para el asesor mientras mantiene el modelo base para otros agentes.
    - Ajuste los umbrales de monitoreo según la complejidad de la tarea y las capacidades del modelo.
    
    </details>
    
    La arquitectura de PentAGI está diseñada para ser modular, escalable y segura. Estos son los componentes clave:
    
    1. **Servicios Principales**
       - Interfaz de Usuario Frontend: Interfaz web basada en React con TypeScript para seguridad de tipos.
       - API Backend: APIs REST y GraphQL basadas en Go con autenticación mediante token Bearer para acceso programático.
       - Almacén de Vectores: PostgreSQL con pgvector para búsqueda semántica y almacenamiento de memoria.
       - Cola de Tareas: Sistema de procesamiento de tareas asíncrono para un funcionamiento confiable.
       - Agente de IA: Sistema multiagente con roles especializados para pruebas eficientes.
    
    2. **Grafo de Conocimiento**
       - Graphiti: API de grafo de conocimiento para seguimiento de relaciones semánticas y comprensión contextual.
       - Neo4j: Base de datos de grafos para almacenar y consultar relaciones entre entidades, acciones y resultados.
       - Captura automática de respuestas de agentes y ejecuciones de herramientas para construir una base de conocimiento integral.
    
    3. **Pila de Monitoreo**
       - OpenTelemetry: Recolección y correlación unificada de datos de observabilidad.
       - Grafana: Paneles de visualización y alertas en tiempo real.
       - VictoriaMetrics: Almacenamiento de métricas de series temporales de alto rendimiento.
       - Jaeger: Trazado distribuido de extremo a extremo para depuración.
       - Loki: Agregación y análisis de registros escalable.
    
    4. **Plataforma de Analítica**
       - Langfuse: Observabilidad avanzada de LLM y análisis de rendimiento.
       - ClickHouse: Almacén de datos analíticos orientado a columnas.
       - Redis: Caché de alta velocidad y limitación de velocidad.
       - MinIO: Almacenamiento de objetos compatible con S3 para artefactos.
    
    5. **Herramientas de Seguridad**
       - Web Scraper: Entorno de navegador aislado para interacción web segura.
       - Herramientas de Pentesting: Conjunto completo de más de 20 herramientas de seguridad profesionales.
       - Ejecución en Entorno Aislado: Todas las operaciones se ejecutan en contenedores aislados.
    
    6. **Sistemas de Memoria**
       - Memoria a Largo Plazo: Almacenamiento persistente de conocimiento y experiencias.
       - Memoria de Trabajo: Contexto activo y objetivos para operaciones actuales.
       - Memoria Episódica: Acciones históricas y patrones de éxito.
       - Base de Conocimiento: Experiencia de dominio estructurada y capacidades de herramientas.
       - Gestión de Contexto: Administra de forma inteligente las ventanas de contexto crecientes del LLM mediante resumen en cadena.
    
    El sistema utiliza contenedores Docker para aislamiento y fácil implementación, con redes separadas para servicios principales, monitoreo y análisis para garantizar límites de seguridad adecuados. Cada componente está diseñado para escalar horizontalmente y puede configurarse para alta disponibilidad en entornos de producción.
    
    ## Inicio Rápido
    
    ### Requisitos del Sistema
    
    - Docker y Docker Compose (o Podman - consulte [Configuración de Podman](#ejecutando-pentagi-con-podman)).
    - Mínimo 2 vCPU.
    - Mínimo 4 GB de RAM.
    - 20 GB de espacio libre en disco.
    - Acceso a Internet para descargar imágenes y actualizaciones.
    
    ### Usando el Instalador (Recomendado)
    
    PentAGI proporciona un instalador interactivo con una interfaz de usuario basada en terminal para una configuración e implementación optimizadas. El instalador lo guía a través de verificaciones del sistema, configuración del proveedor de LLM, configuración del motor de búsqueda y endurecimiento de seguridad.
    
    **Plataformas Compatibles:**
    - **Linux**: amd64 [descargar](https://pentagi.com/downloads/linux/amd64/installer-latest.zip) | arm64 [descargar](https://pentagi.com/downloads/linux/arm64/installer-latest.zip)
    - **Windows**: amd64 [descargar](https://pentagi.com/downloads/windows/amd64/installer-latest.zip)
    - **macOS**: amd64 (Intel) [descargar](https://pentagi.com/downloads/darwin/amd64/installer-latest.zip) | arm64 (serie M) [descargar](https://pentagi.com/downloads/darwin/arm64/installer-latest.zip)
    
    **Instalación Rápida (Linux amd64):**```bash
    # Create installation directory
    mkdir -p pentagi && cd pentagi
    
    # Download installer
    wget -O installer.zip https://pentagi.com/downloads/linux/amd64/installer-latest.zip
    
    # Extract
    unzip installer.zip
    
    # Run interactive installer
    ./installer
    

    Requisitos previos & Permisos:

    El instalador requiere privilegios apropiados para interactuar con la API de Docker para un funcionamiento adecuado. Por defecto, utiliza el socket de Docker (/var/run/docker.sock) que requiere una de las siguientes opciones:

    • Opción 1 (Recomendado para producción): Ejecute el instalador como root: ```bash sudo ./installer

      root@kitploit:~
    • Opción 2 (Entornos de desarrollo): Conceda a su usuario acceso al socket de Docker añadiéndolo al grupo docker: ```bash

      Add your user to the docker group

      sudo usermod -aG docker $USER

      Log out and log back in, or activate the group immediately

      newgrp docker

      Verify Docker access (should run without sudo)

      docker ps

      root@kitploit:~

    ⚠️ Nota de seguridad: Agregar un usuario al grupo docker otorga privilegios equivalentes a root. Solo haga esto para usuarios de confianza en entornos controlados. Para despliegues en producción, considere usar el modo Docker sin root o ejecutar el instalador con sudo.

    El instalador hará lo siguiente:

    1. Verificaciones del sistema: Verificar Docker, conectividad de red y requisitos del sistema
    2. Configuración del entorno: Crear y configurar el archivo .env con valores predeterminados óptimos
    3. Configuración del proveedor: Configurar proveedores LLM (OpenAI, Anthropic, Gemini, Bedrock, Ollama, Personalizado)
    4. Motores de búsqueda: Configurar DuckDuckGo, Google, Tavily, Traversaal, Perplexity, Sploitus, Searxng
    5. Endurecimiento de seguridad: Generar credenciales seguras y configurar certificados SSL
    6. Despliegue: Iniciar PentAGI con docker-compose

    Cobertura actual de configuraciones web

    La consola web de PentAGI ya gestiona varias áreas de configuración una vez que el servidor está en funcionamiento:

    • Configuración -> Proveedores: Crear, editar, eliminar y probar perfiles de proveedores definidos por el usuario para los tipos de proveedores compatibles. Estos perfiles controlan la selección de modelos por agente, parámetros de ejecución, opciones de razonamiento y metadatos de precios.
    • Configuración -> Prompts: Gestionar plantillas de prompts de sistema, humano y herramientas.
    • Configuración -> API PentAGI: Crear y gestionar tokens Bearer de PentAGI para acceso REST y GraphQL.
    • Otras preferencias gestionadas por la interfaz: Los flujos favoritos se almacenan como preferencias del usuario y la selección de tema se maneja desde la barra lateral principal/controles de perfil, no desde las páginas de Configuración.

    Aún gestionado por el servidor

    Las siguientes áreas de configuración aún deben establecerse en el servidor mediante variables de entorno, archivos compose o archivos de configuración montados:

    • Credenciales y detalles de conexión del LLM: Claves API, puntos finales, modos de autenticación y ajustes de conexión específicos del proveedor para OpenAI, Anthropic, Bedrock, Ollama, proveedores personalizados y backends similares; las rutas de configuración solo se aplican donde son compatibles, como OLLAMA_SERVER_CONFIG_PATH y LLM_SERVER_CONFIG_PATH.
    • Credenciales y opciones del proveedor de búsqueda: Ajustes como DUCKDUCKGO_*, GOOGLE_*, TAVILY_API_KEY, TRAVERSAAL_API_KEY, PERPLEXITY_*, SEARXNG_* y SPLOITUS_ENABLED.
    • Integraciones de terceros: Langfuse, Graphiti y servicios externos similares permanecen como configuración del lado del servidor.
    • Gestión del servidor MCP: Las páginas de ajustes de MCP no están expuestas actualmente como una función en vivo de la consola web.

    Para producción y seguridad mejorada:

    Para despliegues en producción o entornos sensibles a la seguridad, recomendamos encarecidamente usar una arquitectura distribuida de dos nodos donde las operaciones del trabajador estén aisladas en un servidor separado. Esto evita la ejecución de código no confiable y problemas de acceso a la red en su sistema principal.

    Vea la guía detallada: Configuración del nodo trabajador

    La configuración de dos nodos proporciona:

    • Ejecución aislada: Los contenedores del trabajador se ejecutan en hardware dedicado
    • Aislamiento de red: Límites de red separados para las pruebas de penetración
    • Límites de seguridad: Docker dentro de Docker con autenticación TLS
    • Soporte para ataques OOB: Rangos de puertos dedicados para técnicas fuera de banda

    Instalación manual

    1. Cree un directorio de trabajo o clone el repositorio:```bash mkdir pentagi && cd pentagi
    root@kitploit:~
    2. Copia `.env.example` a `.env` o descárgalo:```bash
    curl -o .env https://raw.githubusercontent.com/vxcontrol/pentagi/master/.env.example
    
    1. Touch los archivos de ejemplo (example.custom.provider.yml, example.ollama.provider.yml) o descárguelos:```bash curl -o example.custom.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/master/examples/configs/custom-openai.provider.yml curl -o example.ollama.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/master/examples/configs/ollama-llama318b.provider.yml
    root@kitploit:~
    4. Complete las claves API requeridas en el archivo `.env`.```bash
    # Required: At least one of these LLM providers
    OPEN_AI_KEY=your_openai_key
    ANTHROPIC_API_KEY=your_anthropic_key
    GEMINI_API_KEY=your_gemini_key
    
    # Optional: AWS Bedrock provider (enterprise-grade models)
    BEDROCK_REGION=us-east-1
    # Choose one authentication method:
    BEDROCK_DEFAULT_AUTH=true                        # Option 1: Use AWS SDK default credential chain (recommended for EC2/ECS)
    # BEDROCK_BEARER_TOKEN=your_bearer_token         # Option 2: Bearer token authentication
    # BEDROCK_ACCESS_KEY_ID=your_aws_access_key      # Option 3: Static credentials
    # BEDROCK_SECRET_ACCESS_KEY=your_aws_secret_key
    
    # Optional: Ollama provider (local or cloud)
    # OLLAMA_SERVER_URL=http://ollama-server:11434   # Local server
    # OLLAMA_SERVER_URL=https://ollama.com           # Cloud service
    # OLLAMA_SERVER_API_KEY=your_ollama_cloud_key    # Required for cloud, empty for local
    
    # Optional: Chinese AI providers
    # DEEPSEEK_API_KEY=your_deepseek_key             # DeepSeek (strong reasoning)
    # GLM_API_KEY=your_glm_key                       # GLM (Zhipu AI)
    # KIMI_API_KEY=your_kimi_key                     # Kimi (Moonshot AI, ultra-long context)
    # QWEN_API_KEY=your_qwen_key                     # Qwen (Alibaba Cloud, multimodal)
    
    # Optional: Local LLM provider (zero-cost inference)
    OLLAMA_SERVER_URL=http://localhost:11434
    OLLAMA_SERVER_MODEL=your_model_name
    
    # Optional: Additional search capabilities
    DUCKDUCKGO_ENABLED=true
    DUCKDUCKGO_REGION=us-en
    DUCKDUCKGO_SAFESEARCH=
    DUCKDUCKGO_TIME_RANGE=
    SPLOITUS_ENABLED=true
    GOOGLE_API_KEY=your_google_key
    GOOGLE_CX_KEY=your_google_cx
    TAVILY_API_KEY=your_tavily_key
    TRAVERSAAL_API_KEY=your_traversaal_key
    PERPLEXITY_API_KEY=your_perplexity_key
    PERPLEXITY_MODEL=sonar-pro
    PERPLEXITY_CONTEXT_SIZE=medium
    
    # Searxng meta search engine (aggregates results from multiple sources)
    SEARXNG_URL=http://your-searxng-instance:8080
    SEARXNG_CATEGORIES=general
    SEARXNG_LANGUAGE=
    SEARXNG_SAFESEARCH=0
    SEARXNG_TIME_RANGE=
    SEARXNG_TIMEOUT=
    
    ## Graphiti knowledge graph settings
    GRAPHITI_ENABLED=true
    GRAPHITI_TIMEOUT=30
    GRAPHITI_URL=http://graphiti:8000
    GRAPHITI_MODEL_NAME=gpt-5-mini
    
    # Neo4j settings (used by Graphiti stack)
    NEO4J_USER=neo4j
    NEO4J_DATABASE=neo4j
    NEO4J_PASSWORD=devpassword
    NEO4J_URI=bolt://neo4j:7687
    
    # Assistant configuration
    ASSISTANT_USE_AGENTS=false         # Default value for agent usage when creating new assistants
    
    1. Cambie todas las variables de entorno relacionadas con la seguridad en el archivo .env para mejorar la seguridad.
    Variables de entorno relacionadas con la seguridad

    Configuraciones principales de seguridad

    • COOKIE_SIGNING_SALT - Sal para la firma de cookies, cámbielo a un valor aleatorio
    • PUBLIC_URL - URL pública de su servidor (ej. https://pentagi.example.com)
    • SERVER_SSL_CRT y SERVER_SSL_KEY - Rutas personalizadas a su certificado SSL y clave existentes para HTTPS (estas rutas deben usarse en el archivo docker-compose.yml para montar como volúmenes)

    Acceso al Scraper

    • SCRAPER_PUBLIC_URL - URL pública para el scraper si desea usar un servidor scraper diferente para URLs públicas
    • SCRAPER_PRIVATE_URL - URL privada para el scraper (servidor scraper local en el archivo docker-compose.yml para acceder a URLs locales)

    Credenciales de acceso

    • PENTAGI_POSTGRES_USER y PENTAGI_POSTGRES_PASSWORD - Credenciales de PostgreSQL
    • NEO4J_USER y NEO4J_PASSWORD - Credenciales de Neo4j (para el gráfico de conocimiento Graphiti)
    1. Elimine todos los comentarios en línea del archivo .env si desea usarlo en VSCode u otros IDE como opción envFile:```bash perl -i -pe 's/\s+#.*$//' .env
    root@kitploit:~
    7. Ejecute el stack PentAGI:```bash
    curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/master/docker-compose.yml
    docker compose up -d
    

    Visita localhost:8443 para acceder a la interfaz web de PentAGI (predeterminado: [email protected] / admin)

    Cuentas de la interfaz web

    PentAGI no expone un registro público autoservicio desde la página de inicio de sesión. Una instalación nueva crea la cuenta de administrador local predeterminada:

    • Correo electrónico: [email protected]
    • Contraseña: admin

    En el primer inicio de sesión, cambia la contraseña predeterminada antes de usar la instancia para trabajo real. Si la contraseña de administrador se pierde después, usa el menú de mantenimiento del instalador para restablecer la contraseña de la cuenta predeterminada [email protected].

    Para configuraciones multiusuario, un administrador autenticado puede gestionar usuarios locales a través de la API REST de Usuarios (/api/v1/users/). La interfaz de OpenAPI está disponible en https://localhost:8443/api/v1/swagger/index.html una vez que la instancia está en ejecución.

    [!NOTE] Si encuentras un error sobre pentagi-network o observability-network o langfuse-network, primero debes ejecutar docker-compose.yml para crear estas redes y luego ejecutar docker-compose-langfuse.yml, docker-compose-graphiti.yml y docker-compose-observability.yml para usar los servicios de Langfuse, Graphiti y Observability.

    Debes configurar al menos un proveedor de modelos de lenguaje (OpenAI, Anthropic, Gemini, AWS Bedrock u Ollama) para usar PentAGI. AWS Bedrock proporciona acceso de nivel empresarial a múltiples modelos fundacionales de las principales empresas de IA, mientras que Ollama proporciona inferencia local sin costo si tienes suficientes recursos computacionales. Las claves API adicionales para motores de búsqueda son opcionales pero recomendadas para mejores resultados.

    Para una implementación completamente local con modelos avanzados: Consulta nuestra guía completa sobre Ejecución de PentAGI con vLLM y Qwen3.5-27B-FP8 para una configuración local de LLM de grado de producción. Esta configuración logra ~13,000 TPS para procesamiento de prompts y ~650 TPS para finalización en 4× RTX 5090 GPUs, soportando más de 12 flujos concurrentes con completa independencia de los proveedores de la nube.

    Las variables de entorno LLM_SERVER_* son una característica experimental y cambiarán en el futuro. Ahora mismo puedes usarlas para especificar una URL de servidor LLM personalizada y un modelo para todos los tipos de agente.

    PROXY_URL es una URL de proxy global para todos los proveedores de LLM y sistemas de búsqueda externos. Puedes usarla para aislamiento de redes externas.

    El archivo docker-compose.yml ejecuta el servicio PentAGI como usuario root porque necesita acceso a docker.sock para la gestión de contenedores. Si estás usando una conexión de red TCP/IP a Docker en lugar del archivo socket, puedes eliminar los privilegios de root y usar el usuario predeterminado pentagi para una mejor seguridad.

    Acceder a PentAGI desde redes externas

    Por defecto, PentAGI se vincula a 127.0.0.1 (solo localhost) por seguridad. Para acceder a PentAGI desde otras máquinas en tu red, debes configurar el acceso externo.

    Pasos de configuración

    1. Actualiza el archivo .env con la dirección IP de tu servidor:```bash

    Network binding - allow external connections

    PENTAGI_LISTEN_IP=0.0.0.0 PENTAGI_LISTEN_PORT=8443

    Public URL - use your actual server IP or hostname

    Replace 192.168.1.100 with your server's IP address

    PUBLIC_URL=https://192.168.1.100:8443

    CORS origins - list all URLs that will access PentAGI

    Include localhost for local access AND your server IP for external access

    CORS_ORIGINS=https://localhost:8443,https://192.168.1.100:8443

    root@kitploit:~
    > [!IMPORTANT]
    > - Reemplaza `192.168.1.100` con la dirección IP real de tu servidor
    > - NO uses `0.0.0.0` en `PUBLIC_URL` o `CORS_ORIGINS` - usa la dirección IP real
    > - Incluye tanto localhost como la IP de tu servidor en `CORS_ORIGINS` para mayor flexibilidad
    
    2. **Recrea los contenedores** para aplicar los cambios:```bash
    docker compose down
    docker compose up -d --force-recreate
    
    1. Verificar el enlace del puerto:```bash docker ps | grep pentagi
    root@kitploit:~
    Deberías ver `0.0.0.0:8443->8443/tcp` o `:::8443->8443/tcp`.
    
    Si ves `127.0.0.1:8443->8443/tcp`, la variable de entorno no se ha aplicado. En ese caso, edita directamente la línea 31 de `docker-compose.yml`:```yaml
    ports:
      - "0.0.0.0:8443:8443"
    

    Luego recrea los contenedores nuevamente.

    1. Configurar el firewall para permitir conexiones entrantes en el puerto 8443:```bash

    Ubuntu/Debian with UFW

    sudo ufw allow 8443/tcp sudo ufw reload

    CentOS/RHEL with firewalld

    sudo firewall-cmd --permanent --add-port=8443/tcp sudo firewall-cmd --reload

    root@kitploit:~
    5. **Acceder a PentAGI:**
    
    - **Acceso local:** `https://localhost:8443`
    - **Acceso por red:** `https://your-server-ip:8443`
    
    > [!NOTE]
    > Necesitarás aceptar la advertencia del certificado SSL autofirmado en tu navegador al acceder mediante dirección IP.
    
    ---
    
    ### Ejecutar PentAGI con Podman
    
    PentAGI es totalmente compatible con Podman como alternativa a Docker. Sin embargo, cuando se usa **Podman en modo rootless**, el servicio scraper requiere una configuración especial porque los contenedores rootless no pueden enlazar puertos privilegiados (puertos por debajo de 1024).
    
    #### Configuración de Podman sin root
    
    La configuración predeterminada del scraper usa el puerto 443 (HTTPS), que es un puerto privilegiado. Para Podman rootless, reconfigura el scraper para que use un puerto no privilegiado:
    
    **1. Edita `docker-compose.yml`** - modifica el servicio `scraper` (alrededor de la línea 199):```yaml
    scraper:
      image: vxcontrol/scraper:latest
      restart: unless-stopped
      container_name: scraper
      hostname: scraper
      expose:
        - 3000/tcp  # Changed from 443 to 3000
      ports:
        - "${SCRAPER_LISTEN_IP:-127.0.0.1}:${SCRAPER_LISTEN_PORT:-9443}:3000"  # Map to port 3000
      environment:
        - MAX_CONCURRENT_SESSIONS=${LOCAL_SCRAPER_MAX_CONCURRENT_SESSIONS:-10}
        - USERNAME=${LOCAL_SCRAPER_USERNAME:-someuser}
        - PASSWORD=${LOCAL_SCRAPER_PASSWORD:-somepass}
      logging:
        options:
          max-size: 50m
          max-file: "7"
      volumes:
        - scraper-ssl:/usr/src/app/ssl
      networks:
        - pentagi-network
      shm_size: 2g
    

    2. Actualizar el archivo .env - cambiar la URL del scraper para que use HTTP y el puerto 3000:```bash

    Scraper configuration for Podman rootless

    SCRAPER_PRIVATE_URL=http://someuser:somepass@scraper:3000/ LOCAL_SCRAPER_USERNAME=someuser LOCAL_SCRAPER_PASSWORD=somepass

    root@kitploit:~
    > [!IMPORTANT]
    > Cambios clave para Podman:
    > - Usar **HTTP** en lugar de HTTPS para `SCRAPER_PRIVATE_URL`
    > - Usar el puerto **3000** en lugar de 443
    > - Cambiar el `expose` interno a `3000/tcp`
    > - Actualizar el mapeo de puertos para apuntar a `3000` en lugar de `443`
    
    **3. Recrear contenedores:**```bash
    podman-compose down
    podman-compose up -d --force-recreate
    

    4. Probar conectividad del scraper:```bash

    Test from within the pentagi container

    podman exec -it pentagi wget -O- "http://someuser:somepass@scraper:3000/html?url=http://example.com"

    root@kitploit:~
    Si ves HTML de salida, el scraper está funcionando correctamente.
    
    #### Modo Rootful de Podman
    
    Si estás ejecutando Podman en modo rootful (con sudo), puedes usar la configuración predeterminada sin modificaciones. El scraper funcionará en el puerto 443 según lo previsto.
    
    #### Compatibilidad con Docker
    
    Todas las configuraciones de Podman son totalmente compatibles con Docker. El enfoque de puerto no privilegiado funciona de manera idéntica en ambos entornos de ejecución de contenedores.
    
    ### Configuración del Asistente
    
    PentAGI te permite configurar el comportamiento predeterminado de los asistentes:
    
    | Variable              | Por defecto | Descripción                                                           |
    | --------------------- | ----------- | --------------------------------------------------------------------- |
    | `ASSISTANT_USE_AGENTS`| `false`     | Controla el valor predeterminado para el uso de agentes al crear nuevos asistentes |
    
    La configuración `ASSISTANT_USE_AGENTS` afecta el estado inicial del interruptor "Usar Agentes" al crear un nuevo asistente en la interfaz de usuario:
    - `false` (predeterminado): Los nuevos asistentes se crean con la delegación de agentes deshabilitada por defecto.
    - `true`: Los nuevos asistentes se crean con la delegación de agentes habilitada por defecto.
    
    Ten en cuenta que los usuarios siempre pueden sobrescribir esta configuración activando o desactivando el botón "Usar Agentes" en la interfaz al crear o editar un asistente. Esta variable de entorno solo controla el estado predeterminado inicial.
    
    ## Cómo usar PentAGI después de iniciar sesión
    
    Una vez que la pila esté funcionando y puedas iniciar sesión en la interfaz web, la forma más rápida de comenzar es a través del flujo de trabajo **Flows**.
    
    ### 1. Crea tu primer flujo
    
    1. Abre **Flows** en la barra lateral.
    2. Haz clic en **New Flow**.
    3. Elige el modo que se adapte a tu objetivo:
       - **Automation**: Ejecución completamente autónoma para un objetivo de prueba que deseas que PentAGI realice de principio a fin.
       - **Assistant**: Ayuda interactiva de ida y vuelta cuando deseas dirigir la investigación paso a paso. En este modo también puedes habilitar el interruptor **Use Agents** para que PentAGI delegue subtareas a subagentes especializados para investigaciones más complejas.
    4. Selecciona el proveedor de LLM que deseas usar para este flujo.
    5. Describe el objetivo y la meta en lenguaje natural en el cuadro de mensaje.
    
    Los buenos primeros prompts generalmente incluyen:
    
    - el sistema o URL objetivo
    - el tipo de evaluación que deseas
    - cualquier limitación de alcance o reglas de participación
    - el resultado que esperas, como un informe de vulnerabilidad o la validación de una hipótesis
    
    Ejemplo:```text
    Assess https://target.example for common web application vulnerabilities. Focus on authentication, file handling, and injection issues. Stay within the provided target only and summarize confirmed findings with reproduction steps.
    

    Solo pruebe sistemas que sean de su propiedad o que tenga autorización explícita para evaluar. Consulte EULA.md para conocer los requisitos de uso aceptable.

    2. Use plantillas para flujos de trabajo repetibles

    El nuevo formulario de flujo incluye un selector de plantillas que puede rellenar previamente el cuadro de mensaje con una plantilla de flujo guardada. Esto es útil cuando ejecuta evaluaciones similares repetidamente.

    • Use una plantilla existente si ya tiene una guardada en Templates
    • Comience con el mensaje de ejemplo en examples/prompts/base_web_pentest.md si necesita una base práctica para pruebas web
    • Ajuste el objetivo, alcance y restricciones antes de iniciar el flujo

    Las plantillas son puntos de partida. No necesita sintaxis especial para usar PentAGI: las instrucciones simples en lenguaje natural funcionan bien siempre que el objetivo y la meta sean claros.

    3. Supervise la ejecución y revise la salida

    Después de enviar el flujo, PentAGI abre la página del flujo automáticamente.

    • Use la vista principal del flujo para seguir mensajes, actividad de los agentes y progreso de las tareas
    • Inspeccione la actividad de las herramientas y la salida del terminal mientras el flujo se ejecuta
    • Revise las tareas y subtareas generadas para entender lo que PentAGI está haciendo

    Una vez que el flujo tenga suficientes resultados, use el menú Report en la página del flujo para:

    • abrir el informe en una vista web
    • copiar el informe generado al portapapeles
    • descargar el informe como Markdown
    • descargar el informe como PDF

    4. Use la vista del Asistente para dirigir un flujo activo

    Cada flujo también incluye una vista Assistant para orientación interactiva. Esto es útil cuando la ejecución autónoma descubre algo que necesita dirección humana en lugar de un reinicio completo.

    • Abra la vista Assistant para el mismo flujo cuando quiera inspeccionar el estado actual antes de cambiar algo.
    • Use el asistente para verificar el estado del flujo, detener la tarea actual, enviar instrucciones de seguimiento o modificar las subtareas planificadas restantes antes de que se ejecute el siguiente paso.
    • Trate esto como una ruta de control explícita para el flujo actual, no como una cola de fondo invisible. Si desea cambiar de dirección, dígalo claramente y mantenga la nueva instrucción vinculada al alcance actual del compromiso.
    • Esto funciona mejor para aclarar el alcance, redirigir prioridades después de hallazgos intermedios, o responder a un punto de control de automatización sin perder el resto del contexto del flujo.

    5. Gestione archivos con ámbito de flujo

    Cada flujo tiene su propia pestaña Files en la página del flujo. Los archivos tienen ámbito del flujo padre: residen en {dataDir}/flow-{id}-data/ en el host y nunca se filtran a otros flujos.

    La pestaña expone tres fuentes de archivos:

    • Uploads (uploads/): archivos que usted proporciona desde la interfaz web. Use la acción Upload files, o arrastre y suelte directamente sobre la pestaña Files. Mientras el contenedor del agente esté en ejecución, los archivos subidos también se envían a él en /work/uploads/ para que el agente pueda leerlos con herramientas de shell normales.
    • Resources (resources/): archivos adjuntados desde su biblioteca de recursos de usuario guardados mediante Attach resources from library. Los recursos adjuntos se copian en el flujo y se envían al contenedor en ejecución en /work/resources/.
    • Container (container/): instantáneas extraídas del contenedor del agente en ejecución mediante Pull file or directory from container. Son de solo lectura en el lado del flujo y nunca se envían de vuelta al contenedor.

    Las acciones por archivo en la pestaña Files incluyen Download, Copy path, Save as resource (promover un archivo del flujo a su biblioteca de recursos reutilizables) y Delete. La acción Pull está deshabilitada cuando el contenedor no se está ejecutando, con la información sobre herramientas "Container is not running".

    Los archivos subidos y los recursos adjuntos se listan automáticamente en los prompts del sistema del agente mediante la variable de plantilla {{.UserFiles}}, que renderiza un bloque XML compacto <task_files> (con secciones anidadas <uploads> y <resources>), de modo que el asistente y los agentes de automatización puedan referenciarlos por ruta sin que usted pegue el contenido en el chat. Las instantáneas del contenedor son visibles solo en la interfaz de usuario y no se inyectan automáticamente en el prompt.

    Límites y limitaciones actuales a tener en cuenta:

    • El tamaño máximo de archivo para subir es de 300 MB; por solicitud de subida hasta 1000 archivos y 2 GB en total. Los nombres de archivo tienen un límite de 255 bytes (aproximadamente 255 caracteres ASCII; los nombres no ASCII usan múltiples bytes por carácter).
    • Las subidas y los recursos se reflejan en el contenedor en ejecución en las rutas fijas /work/uploads/ y /work/resources/; los archivos escritos en otras rutas del contenedor no se reflejan automáticamente en el modelo de archivos del flujo. Las instantáneas del contenedor pueden originarse desde cualquier ruta del contenedor que extraiga (por ejemplo /etc/...) y se almacenan en caché en el lado del flujo bajo container/; no se envían de vuelta al contenedor.
    • Las instantáneas del contenedor son extracciones puntuales. Editar una instantánea en la interfaz de usuario no escribe de vuelta en el contenedor en ejecución.
    • Eliminar un flujo hoy elimina el registro del flujo y sus entradas de memoria a largo plazo, pero aún no archiva ni elimina el directorio flow-{id}-data/ del flujo en el disco. Los operadores aún deben limpiar manualmente el directorio de datos si desean recuperar espacio.

    Para pruebas tempranas, comience con un objetivo reducido y un objetivo claro y único. Esto facilita la revisión de la salida y le ayuda a refinar sus prompts antes de ejecutar evaluaciones más grandes.

    Acceso a la API

    PentAGI proporciona acceso programático integral a través de APIs REST y GraphQL, permitiéndole integrar flujos de trabajo de pruebas de penetración en sus canalizaciones de automatización, procesos CI/CD y aplicaciones personalizadas.

    Generación de Tokens de API

    Los tokens de API se gestionan a través de la interfaz web de PentAGI:

    1. Navegue a Settings → API Tokens en la interfaz web
    2. Haga clic en Create Token para generar un nuevo token de API
    3. Configure las propiedades del token:
      • Name (opcional): Un nombre descriptivo para el token
      • Expiration Date: Cuándo expirará el token (mínimo 1 minuto, máximo 3 años)
    4. Haga clic en Create y copie el token inmediatamente - solo se mostrará una vez por razones de seguridad
    5. Use el token como un token Bearer en sus solicitudes de API

    Cada token está asociado con su cuenta de usuario y hereda los permisos de su rol.

    Uso de Tokens de API

    Incluya el token de API en el encabezado Authorization de sus solicitudes HTTP:```bash

    GraphQL API example

    curl -X POST https://your-pentagi-instance:8443/api/v1/graphql
    -H "Authorization: Bearer YOUR_API_TOKEN"
    -H "Content-Type: application/json"
    -d '{"query": "{ flows { id title status } }"}'

    REST API example

    curl https://your-pentagi-instance:8443/api/v1/flows
    -H "Authorization: Bearer YOUR_API_TOKEN"

    root@kitploit:~
    ### Exploración y Pruebas de API
    
    PentAGI proporciona documentación interactiva para explorar y probar endpoints de API:
    
    #### GraphQL Playground
    
    Acceda al GraphQL Playground en `https://your-pentagi-instance:8443/api/v1/graphql/playground`
    
    1. Haga clic en la pestaña **HTTP Headers** en la parte inferior
    2. Agregue su encabezado de autorización:   ```json
       {
         "Authorization": "Bearer YOUR_API_TOKEN"
       }
    
    1. Explora el esquema, ejecuta consultas y prueba mutaciones de forma interactiva

    Swagger UI

    Accede a la documentación de la API REST en https://your-pentagi-instance:8443/api/v1/swagger/index.html

    1. Haz clic en el botón Authorize
    2. Introduce tu token en el formato: Bearer YOUR_API_TOKEN
    3. Haz clic en Authorize para aplicar
    4. Prueba los endpoints directamente desde la interfaz de Swagger

    Generar Clientes de API

    Puedes generar clientes de API con seguridad de tipos para tu lenguaje de programación preferido utilizando los archivos de esquema incluidos con PentAGI:

    Clientes GraphQL

    El esquema GraphQL está disponible en:

    • Web UI: Navega a Configuración para descargar schema.graphqls
    • Archivo directo: backend/pkg/graph/schema.graphqls en el repositorio

    Genera clientes usando herramientas como:

    • GraphQL Code Generator (JavaScript/TypeScript): https://the-guild.dev/graphql/codegen
    • genqlient (Go): https://github.com/Khan/genqlient
    • Apollo iOS (Swift): https://www.apollographql.com/docs/ios

    Clientes de API REST

    La especificación OpenAPI está disponible en:

    • Swagger JSON: https://your-pentagi-instance:8443/api/v1/swagger/doc.json
    • Swagger YAML: Disponible en backend/pkg/server/docs/swagger.yaml

    Genera clientes usando:

    • OpenAPI Generator: https://openapi-generator.tech ```bash openapi-generator-cli generate
      -i https://your-pentagi-instance:8443/api/v1/swagger/doc.json
      -g python
      -o ./pentagi-client
      root@kitploit:~
    • Swagger Codegen: https://github.com/swagger-api/swagger-codegen ```bash swagger-codegen generate
      -i https://your-pentagi-instance:8443/api/v1/swagger/doc.json
      -l typescript-axios
      -o ./pentagi-client
      root@kitploit:~
    • swagger-typescript-api (TypeScript): https://github.com/acacode/swagger-typescript-api ```bash npx swagger-typescript-api
      -p https://your-pentagi-instance:8443/api/v1/swagger/doc.json
      -o ./src/api
      -n pentagi-api.ts
      root@kitploit:~

    Ejemplos de uso de la API

    Creando un nuevo flujo (GraphQL)```graphql mutation CreateFlow { createFlow( modelProvider: "openai" input: "Test the security of https://example.com" ) { id title status createdAt } } ```
    Listado de Flows (API REST)```bash curl https://your-pentagi-instance:8443/api/v1/flows \ -H "Authorization: Bearer YOUR_API_TOKEN" \ | jq '.flows[] | {id, title, status}' ```
    Ejemplo de Cliente Python```python import requests

    class PentAGIClient: def init(self, base_url, api_token): self.base_url = base_url self.headers = { "Authorization": f"Bearer {api_token}", "Content-Type": "application/json" }

    root@kitploit:~
    def create_flow(self, provider, target):
        query = """
        mutation CreateFlow($provider: String!, $input: String!) {
          createFlow(modelProvider: $provider, input: $input) {
            id
            title
            status
          }
        }
        """
        response = requests.post(
            f"{self.base_url}/api/v1/graphql",
            json={
                "query": query,
                "variables": {
                    "provider": provider,
                    "input": target
                }
            },
            headers=self.headers
        )
        return response.json()
    
    def get_flows(self):
        response = requests.get(
            f"{self.base_url}/api/v1/flows",
            headers=self.headers
        )
        return response.json()
    

    Usage

    client = PentAGIClient( "https://your-pentagi-instance:8443", "your_api_token_here" )

    Create a new flow

    flow = client.create_flow("openai", "Scan https://example.com for vulnerabilities") print(f"Created flow: {flow}")

    List all flows

    flows = client.get_flows() print(f"Total flows: {len(flows['flows'])}")

    root@kitploit:~
    </details>
    
    <details>
    <summary><b>Ejemplo de Cliente TypeScript</b></summary>```typescript
    import axios, { AxiosInstance } from 'axios';
    
    interface Flow {
      id: string;
      title: string;
      status: string;
      createdAt: string;
    }
    
    class PentAGIClient {
      private client: AxiosInstance;
    
      constructor(baseURL: string, apiToken: string) {
        this.client = axios.create({
          baseURL: `${baseURL}/api/v1`,
          headers: {
            'Authorization': `Bearer ${apiToken}`,
            'Content-Type': 'application/json',
          },
        });
      }
    
      async createFlow(provider: string, input: string): Promise<Flow> {
        const query = `
          mutation CreateFlow($provider: String!, $input: String!) {
            createFlow(modelProvider: $provider, input: $input) {
              id
              title
              status
              createdAt
            }
          }
        `;
    
        const response = await this.client.post('/graphql', {
          query,
          variables: { provider, input },
        });
    
        return response.data.data.createFlow;
      }
    
      async getFlows(): Promise<Flow[]> {
        const response = await this.client.get('/flows');
        return response.data.flows;
      }
    
      async getFlow(flowId: string): Promise<Flow> {
        const response = await this.client.get(`/flows/${flowId}`);
        return response.data;
      }
    }
    
    // Usage
    const client = new PentAGIClient(
      'https://your-pentagi-instance:8443',
      'your_api_token_here'
    );
    
    // Create a new flow
    const flow = await client.createFlow(
      'openai',
      'Perform penetration test on https://example.com'
    );
    console.log('Created flow:', flow);
    
    // List all flows
    const flows = await client.getFlows();
    console.log(`Total flows: ${flows.length}`);
    

    Mejores Prácticas de Seguridad

    Al trabajar con tokens de API:

    • Nunca subir tokens al control de versiones - use variables de entorno o gestión de secretos
    • Rotar los tokens regularmente - establezca fechas de caducidad apropiadas y cree nuevos tokens periódicamente
    • Usar tokens separados para diferentes aplicaciones - facilita la revocación de acceso si es necesario
    • Monitorear el uso de tokens - revise la actividad de tokens de API en la página de Configuración
    • Revocar tokens no utilizados - deshabilite o elimine los tokens que ya no sean necesarios
    • Usar solo HTTPS - nunca envíe tokens de API sobre conexiones no cifradas

    Gestión de Tokens

    • Ver tokens: Vea todos sus tokens activos en Configuración → Tokens de API
    • Editar tokens: Actualice nombres de tokens o revóquelos
    • Eliminar tokens: Elimine permanentemente los tokens (esta acción no se puede deshacer)
    • ID del token: Cada token tiene un ID único que se puede copiar como referencia

    La lista de tokens muestra:

    • Nombre del token (si se proporciona)
    • ID del token (identificador único)
    • Estado (activo/revocado/caducado)
    • Fecha de creación
    • Fecha de caducidad

    Configuración de Proveedor LLM Personalizado

    Al usar proveedores LLM personalizados con las variables LLM_SERVER_*, puede ajustar el formato de razonamiento utilizado en las solicitudes.

    [!TIP] Para despliegues locales de grado de producción, considere usar vLLM con Qwen3.5-27B-FP8 para un rendimiento óptimo. Vea nuestra guía de despliegue completa que incluye requisitos de hardware, plantillas de configuración (modo de pensamiento y modo sin pensamiento), y puntos de referencia de rendimiento que muestran 13K TPS de procesamiento de solicitudes en 4× RTX 5090 GPUs.

    VariablePor defectoDescripción
    LLM_SERVER_URLURL base para el endpoint de la API LLM personalizada
    LLM_SERVER_KEYClave de API para el proveedor LLM personalizado
    LLM_SERVER_MODELModelo por defecto a usar (se puede sobrescribir en la configuración del proveedor)
    LLM_SERVER_CONFIG_PATHRuta al archivo de configuración YAML para modelos específicos del agente
    LLM_SERVER_PROVIDERPrefijo del nombre del proveedor para los nombres de modelo (ej., openrouter, deepseek para proxy LiteLLM)
    LLM_SERVER_LEGACY_REASONINGfalseControla el formato de razonamiento en las solicitudes de API
    LLM_SERVER_PRESERVE_REASONINGfalseConserva el contenido de razonamiento en conversaciones de múltiples turnos (requerido por algunos proveedores)

    El ajuste LLM_SERVER_PROVIDER es particularmente útil al usar un proxy LiteLLM, que añade un prefijo de proveedor a los nombres de modelo. Por ejemplo, al conectar con la API de Moonshot a través de LiteLLM, modelos como kimi-2.5 se convierten en moonshot/kimi-2.5. Al establecer LLM_SERVER_PROVIDER=moonshot, puede usar el mismo archivo de configuración de proveedor tanto para acceso directo a la API como para acceso a través del proxy LiteLLM sin modificaciones.

    El ajuste LLM_SERVER_LEGACY_REASONING afecta cómo se envían los parámetros de razonamiento al LLM:

    • false (por defecto): Usa el formato moderno donde el razonamiento se envía como un objeto estructurado con el parámetro max_tokens
    • true: Usa el formato heredado con el parámetro reasoning_effort basado en cadena

    Este ajuste es importante al trabajar con diferentes proveedores LLM, ya que pueden esperar diferentes formatos de razonamiento en sus solicitudes de API. Si encuentra errores relacionados con el razonamiento con proveedores personalizados, intente cambiar este ajuste.

    El ajuste LLM_SERVER_PRESERVE_REASONING controla si el contenido de razonamiento se conserva en conversaciones de múltiples turnos:

    • false (por defecto): El contenido de razonamiento no se conserva en el historial de la conversación
    • true: El contenido de razonamiento se conserva y se envía en llamadas API posteriores

    Este ajuste es requerido por algunos proveedores LLM (ej., Moonshot) que devuelven errores como "el pensamiento está habilitado pero falta reasoning_content en el mensaje de llamada a herramienta del asistente" cuando el contenido de razonamiento no se incluye en conversaciones de múltiples turnos. Habilite este ajuste si su proveedor requiere que se conserve el contenido de razonamiento.

    Configuración del Proveedor Ollama

    PentAGI es compatible con Ollama tanto para inferencia LLM local (sin costo, privacidad mejorada) como para Ollama Cloud (servicio gestionado con nivel gratuito).

    Variables de Configuración

    VariablePor defectoDescripción
    OLLAMA_SERVER_URLURL de su servidor Ollama o Ollama Cloud
    OLLAMA_SERVER_API_KEYClave de API para autenticación en Ollama Cloud
    OLLAMA_SERVER_MODELModelo por defecto para inferencia
    OLLAMA_SERVER_CONFIG_PATHRuta al archivo de configuración del agente personalizado
    OLLAMA_SERVER_PULL_MODELS_TIMEOUT600Tiempo de espera para descargas de modelo (segundos)
    OLLAMA_SERVER_PULL_MODELS_ENABLEDfalseDescargar modelos automáticamente al inicio
    OLLAMA_SERVER_LOAD_MODELS_ENABLEDfalseConsultar al servidor por modelos disponibles

    Configuración de Ollama Cloud

    Ollama Cloud proporciona inferencia gestionada con un generoso nivel gratuito y planes de pago escalables.

    Configuración del Nivel Gratuito (Modelo Único)```bash

    Free tier allows one model at a time

    OLLAMA_SERVER_URL=https://ollama.com OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key OLLAMA_SERVER_MODEL=gpt-oss:120b # Example: OpenAI OSS 120B model

    root@kitploit:~
    **Configuración del Nivel de Pago (Múltiples Modelos con Configuración Preconstruida)**
    
    Para los niveles de pago que admiten múltiples modelos concurrentes, utilice la configuración preconstruida de Ollama Cloud:```bash
    # Using pre-built Ollama Cloud configuration (included in Docker image)
    OLLAMA_SERVER_URL=https://ollama.com
    OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key
    OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-cloud.provider.yml
    

    La configuración predefinida ollama-cloud.provider.yml incluye asignaciones de modelos optimizadas para todos los tipos de agente:

    • Simple/Assistant: nemotron-3-super:cloud - Modelo rápido de propósito general
    • Primary Agent: qwen3-coder-next:cloud - Razonamiento avanzado con modo de alto esfuerzo
    • Coder/Pentester: qwen3-coder-next:cloud - Modelos de codificación especializados
    • Searcher: qwen3.5:397b-cloud - Contexto grande para recopilación de información
    • Refiner/Refactor: glm-5:cloud - Refinamiento de texto de alta calidad
    • Adviser/Enricher: minimax-m2.7:cloud - Tareas de asesoramiento eficientes
    • Installer: devstral-2:123b-cloud - Tareas de instalación y configuración

    Configuración Personalizada (Avanzada)

    Para crear tu propia configuración de agente, monta un archivo personalizado desde el sistema de archivos de tu host:```bash

    Using custom provider configuration

    OLLAMA_SERVER_URL=https://ollama.com OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama.provider.yml

    Mount custom configuration from host filesystem (in .env or docker-compose override)

    PENTAGI_OLLAMA_SERVER_CONFIG_PATH=/path/on/host/my-ollama-config.yml

    root@kitploit:~
    La variable de entorno `PENTAGI_OLLAMA_SERVER_CONFIG_PATH` asigna tu archivo de configuración del host a `/opt/pentagi/conf/ollama.provider.yml` dentro del contenedor.
    
    **Ejemplo de configuración personalizada** (`my-ollama-config.yml`):```yaml
    primary_agent:
      model: "qwen3-coder-next:cloud"
      temperature: 1.0
      top_p: 0.9
      max_tokens: 32768
      reasoning:
        effort: high
    
    coder:
      model: "qwen3-coder:32b"
      temperature: 1.0
      max_tokens: 20480
    

    Configuración Local de Ollama

    Para instancias de Ollama autoalojadas:```bash

    Basic local Ollama setup

    OLLAMA_SERVER_URL=http://localhost:11434 OLLAMA_SERVER_MODEL=llama3.1:8b-instruct-q8_0

    Production setup with auto-pull and model discovery

    OLLAMA_SERVER_URL=http://ollama-server:11434 OLLAMA_SERVER_PULL_MODELS_ENABLED=true OLLAMA_SERVER_PULL_MODELS_TIMEOUT=900 OLLAMA_SERVER_LOAD_MODELS_ENABLED=true

    Using pre-built configurations from Docker image

    OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-llama318b.provider.yml

    or

    OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-qwen332b-fp16-tc.provider.yml

    or

    OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-qwq32b-fp16-tc.provider.yml

    root@kitploit:~
    **Consideraciones de rendimiento:**
    
    - **Descubrimiento de modelos** (`OLLAMA_SERVER_LOAD_MODELS_ENABLED=true`): Añade 1-2s de latencia al inicio consultando la API de Ollama
    - **Auto-pull** (`OLLAMA_SERVER_PULL_MODELS_ENABLED=true`): El primer inicio puede tardar varios minutos descargando modelos
    - **Tiempo de espera de extracción** (`OLLAMA_SERVER_PULL_MODELS_TIMEOUT=900`): 15 minutos en segundos
    - **Configuración estática**: Desactiva ambas banderas y especifica los modelos en el archivo de configuración para el inicio más rápido
    
    #### Creación de modelos Ollama personalizados con contexto extendido
    
    PentAGI requiere modelos con ventanas de contexto más grandes que las configuraciones predeterminadas de Ollama. Necesitas crear modelos personalizados con el parámetro `num_ctx` aumentado a través de Modelfiles. Mientras que los flujos de trabajo típicos de agentes consumen alrededor de 64K tokens, PentAGI utiliza un tamaño de contexto de 110K para margen de seguridad y manejo de escenarios complejos de pruebas de penetración.
    
    **Importante**: El parámetro `num_ctx` solo se puede establecer durante la creación del modelo a través de Modelfile; no se puede cambiar después de la creación del modelo ni anularse en tiempo de ejecución.
    
    ##### Ejemplo: Qwen3 32B FP16 con contexto extendido
    
    Crea un Modelfile llamado `Modelfile_qwen3_32b_fp16_tc`:```dockerfile
    FROM qwen3:32b-fp16
    PARAMETER num_ctx 110000
    PARAMETER temperature 0.3
    PARAMETER top_p 0.8
    PARAMETER min_p 0.0
    PARAMETER top_k 20
    PARAMETER repeat_penalty 1.1
    

    Construir el modelo personalizado:```bash ollama create qwen3:32b-fp16-tc -f Modelfile_qwen3_32b_fp16_tc

    root@kitploit:~
    ##### Ejemplo: QwQ 32B FP16 con Contexto Extendido
    
    Crea un Modelfile llamado `Modelfile_qwq_32b_fp16_tc`:```dockerfile
    FROM qwq:32b-fp16
    PARAMETER num_ctx 110000
    PARAMETER temperature 0.2
    PARAMETER top_p 0.7
    PARAMETER min_p 0.0
    PARAMETER top_k 40
    PARAMETER repeat_penalty 1.2
    

    Construir el modelo personalizado:```bash ollama create qwq:32b-fp16-tc -f Modelfile_qwq_32b_fp16_tc

    root@kitploit:~
    > **Nota**: El modelo QwQ 32B FP16 requiere aproximadamente **71.3 GB VRAM** para inferencia. Asegúrese de que su sistema tenga suficiente memoria GPU antes de intentar usar este modelo.
    
    Estos modelos personalizados se referencian en los archivos de configuración del proveedor preconstruidos (`ollama-qwen332b-fp16-tc.provider.yml` y `ollama-qwq32b-fp16-tc.provider.yml`) que están incluidos en la imagen Docker en `/opt/pentagi/conf/`.
    
    ### Configuración del Proveedor OpenAI
    
    PentAGI se integra con la amplia gama de modelos de OpenAI, que ofrece capacidades avanzadas de razonamiento con cadena de pensamiento extendida, modelos agentivos con integración mejorada de herramientas y modelos de código especializados para ingeniería de seguridad.
    
    #### Variables de Configuración
    
    | Variable             | Predeterminado              | Descripción                 |
    | -------------------- | --------------------------- | --------------------------- |
    | `OPEN_AI_KEY`        |                             | Clave API para servicios de OpenAI |
    | `OPEN_AI_SERVER_URL` | `https://api.openai.com/v1` | Punto de conexión de la API de OpenAI |
    
    #### Ejemplos de Configuración```bash
    # Basic OpenAI setup
    OPEN_AI_KEY=your_openai_api_key
    OPEN_AI_SERVER_URL=https://api.openai.com/v1
    
    # Using with proxy for enhanced security
    OPEN_AI_KEY=your_openai_api_key
    PROXY_URL=http://your-proxy:8080
    

    Modelos Compatibles

    PentAGI soporta 31 modelos de OpenAI con llamada de herramientas, transmisión, modos de razonamiento y almacenamiento en caché de indicaciones. Los modelos marcados con * se utilizan en la configuración predeterminada.

    Serie GPT-5.2 - Último buque insignia agéntico (diciembre de 2025)

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    gpt-5.2*✅$1.75/$14.00/$0.18Último buque insignia con razonamiento mejorado e integración de herramientas, investigación autónoma de seguridad
    gpt-5.2-pro✅$21.00/$168.00/$0.00Versión premium con codificación agéntica superior, investigación de seguridad crítica, descubrimiento de zero-day
    gpt-5.2-codex✅$1.75/$14.00/$0.18El más avanzado especializado en código, compactación de contexto, sólidas capacidades de ciberseguridad

    Serie GPT-5/5.1 - Modelos agénticos avanzados

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    gpt-5✅$1.25/$10.00/$0.13Agéntico principal con razonamiento avanzado, investigación autónoma de seguridad, desarrollo de cadenas de explotación
    gpt-5.1✅$1.25/$10.00/$0.13Agéntico mejorado con razonamiento adaptativo, pruebas de penetración equilibradas con fuerte coordinación de herramientas
    gpt-5-pro✅$15.00/$120.00/$0.00Versión premium con importantes mejoras en razonamiento, alucinaciones reducidas, operaciones de seguridad críticas
    gpt-5-mini✅$0.25/$2.00/$0.03Equilibrio eficiente entre velocidad e inteligencia, análisis automatizado de vulnerabilidades, generación de exploits
    gpt-5-nano✅$0.05/$0.40/$0.01El más rápido para escaneo de alto rendimiento, reconocimiento, detección masiva de vulnerabilidades

    Serie GPT-5/5.1 Codex - Especializada en código

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    gpt-5.1-codex-max✅$1.25/$10.00/$0.13Razonamiento mejorado para codificación sofisticada, hallazgos de CVE comprobados, desarrollo sistemático de exploits
    gpt-5.1-codex✅$1.25/$10.00/$0.13Optimizado para código estándar con fuerte razonamiento, generación de exploits, análisis de vulnerabilidades
    gpt-5-codex✅$1.25/$10.00/$0.13Especializado en código fundamental, escaneo de vulnerabilidades, generación básica de exploits
    gpt-5.1-codex-mini✅$0.25/$2.00/$0.03Compacto de alto rendimiento, capacidad 4 veces mayor, detección rápida de vulnerabilidades
    codex-mini-latest✅$1.50/$6.00/$0.38Último modelo de código compacto, revisión automatizada de código, análisis básico de vulnerabilidades

    Serie GPT-4.1 - Inteligencia mejorada

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    gpt-4.1❌$2.00/$8.00/$0.50Buque insignia mejorado con llamada de funciones superior, análisis de amenazas complejo, desarrollo sofisticado de exploits
    gpt-4.1-mini*❌$0.40/$1.60/$0.10Rendimiento equilibrado con eficiencia mejorada, evaluaciones de seguridad rutinarias, análisis automatizado de código
    gpt-4.1-nano❌$0.10/$0.40/$0.03Ultraligero ultra rápido, escaneo de seguridad masivo, reconocimiento rápido, monitoreo continuo

    Serie GPT-4o - Buque insignia multimodal

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    gpt-4o❌$2.50/$10.00/$1.25Buque insignia multimodal con visión, análisis de imágenes, evaluación de interfaz web, orquestación de múltiples herramientas
    gpt-4o-mini❌$0.15/$0.60/$0.08Multimodal compacto con llamada de funciones sólida, escaneo de alta frecuencia, operaciones masivas rentables

    Serie o - Modelos de razonamiento avanzado

    ID del ModeloRazonamientoPrecio (Entrada/Salida/Caché)Caso de Uso
    o4-mini*✅$1.10/$4.40/$0.28Razonamiento de próxima generación con velocidad mejorada, evaluaciones de seguridad metódicas, desarrollo sistemático de exploits
    o3*✅$2.00/$8.00/$0.50Potencia de razonamiento avanzado, cadenas de ataque de múltiples etapas, análisis profundo de vulnerabilidades
    o3-mini✅$1.10/$4.40/$0.55Razonamiento compacto con pensamiento extendido, planificación de ataques paso a paso, encadenamiento lógico de vulnerabilidades
    o1✅$15.00/$60.00/$7.50Razonamiento principal con máxima profundidad, pruebas de penetración avanzadas, investigación de nuevos exploits
    o3-pro✅$20.00/$80.00/$0.00Razonamiento más avanzado, 80% más barato que o1-pro, investigación de zero-day, investigaciones de seguridad críticas
    o1-pro✅$150.00/$600.00/$0.00Razonamiento premium de generación anterior, análisis de seguridad exhaustivo, desafíos de misión crítica

    Precios: Por 1M de tokens. Los modelos de razonamiento incluyen tokens de pensamiento en el precio de salida.

    [!WARNING] Modelos GPT-5 - Se requiere acceso de confianza*

    Todos los modelos de la serie GPT-5 (gpt-5, gpt-5.1, gpt-5.2, gpt-5-pro, gpt-5.2-pro y todas las variantes Codex) funcionan de manera inestable con PentAGI y pueden activar los mecanismos de seguridad cibernética de OpenAI sin acceso verificado.

    Para usar modelos GPT-5 de forma confiable:*

    1. Usuarios individuales: Verifique su identidad en chatgpt.com/cyber
    2. Equipos empresariales: Solicite acceso de confianza a través de su representante de OpenAI
    3. Investigadores de seguridad: Solicite el Programa de Becas de Ciberseguridad (incluye $10M en créditos de API)

    Alternativas recomendadas sin verificación:

    • Use modelos de la serie o (o3, o4-mini, o1) para tareas de razonamiento
    • Use la serie gpt-4.1 para inteligencia general y llamada de funciones
    • Todos los modelos de la serie o y gpt-4.x funcionan de manera confiable sin acceso especial

    Niveles de esfuerzo de razonamiento:

    • Alto: Profundidad máxima de razonamiento (refiner - o3 con esfuerzo alto)
    • Medio: Razonamiento equilibrado (primary_agent, assistant, reflector - o4-mini/o3 con esfuerzo medio)
    • Bajo: Razonamiento dirigido eficiente (coder, installer, pentester - o3/o4-mini con esfuerzo bajo; adviser - gpt-5.2 con esfuerzo bajo)

    Características clave:

    • Razonamiento Extendido: Modelos de la serie o con cadena de pensamiento para análisis de seguridad complejo
    • Inteligencia Agéntica: Series GPT-5/5.1/5.2 con integración de herramientas mejorada y capacidades autónomas
    • Caché de Indicaciones: Reducción de costos en contexto repetido (10-50% del precio de entrada)
    • Especialización en Código: Modelos Codex dedicados para descubrimiento de vulnerabilidades y desarrollo de exploits
    • Soporte Multimodal: Serie GPT-4o para evaluaciones de seguridad basadas en visión
    • Llamada de Herramientas: Llamada de funciones robusta en todos los modelos para orquestación de herramientas de pentesting
    • Transmisión: Transmisión de respuestas en tiempo real para flujos de trabajo interactivos
    • Historial Comprobado: Modelos líderes en la industria con descubrimientos de CVE y aplicaciones de seguridad en el mundo real

    Configuración del Proveedor Anthropic

    PentAGI se integra con los modelos Claude de Anthropic, presentando capacidades avanzadas de pensamiento extendido, mecanismos de seguridad excepcionales y una comprensión sofisticada de contextos de seguridad complejos con almacenamiento en caché de indicaciones.

    Variables de Configuración

    VariableDefaultDescripción
    ANTHROPIC_API_KEYClave de API para servicios de Anthropic
    ANTHROPIC_SERVER_URLhttps://api.anthropic.com/v1Punto final de la API de Anthropic

    Ejemplos de Configuración```bash

    Basic Anthropic setup

    ANTHROPIC_API_KEY=your_anthropic_api_key ANTHROPIC_SERVER_URL=https://api.anthropic.com/v1

    Using with proxy for secure environments

    ANTHROPIC_API_KEY=your_anthropic_api_key PROXY_URL=http://your-proxy:8080

    root@kitploit:~
    > [!NOTE]
    > **Google Vertex AI para modelos Claude**
    >
    > PentAGI no expone actualmente una ruta de configuración dedicada de Google Vertex AI para Anthropic Claude en `.env`. No hay un campo separado de clave API de Vertex AI en este momento, y las variables existentes de Anthropic (`ANTHROPIC_API_KEY`, `ANTHROPIC_SERVER_URL`) apuntan a la API directa de Anthropic. Las rutas compatibles para Claude son:
    >
    > - **API directa de Anthropic**: `ANTHROPIC_API_KEY` y `ANTHROPIC_SERVER_URL` (ver arriba).
    > - **AWS Bedrock**: Variables `BEDROCK_*` (ver [Configuración del proveedor AWS Bedrock](#aws-bedrock-provider-configuration)).
    >
    > Si necesita usar Vertex AI hoy, la solución alternativa compatible más segura es exponer Vertex AI a través de un proxy o puerta de enlace compatible con OpenAI que traduzca las llamadas de Vertex AI al formato Chat Completions mientras preserva el comportamiento de chat y llamada a herramientas del que depende PentAGI, luego apunte el proveedor LLM personalizado a esa puerta de enlace mediante `LLM_SERVER_URL`, `LLM_SERVER_KEY` y `LLM_SERVER_MODEL`. Esta ruta es tan confiable como la puerta de enlace que elija.
    
    #### Modelos Compatibles
    
    PentAGI soporta 10 modelos Claude con llamada a herramientas, streaming, pensamiento extendido, pensamiento adaptativo y almacenamiento en caché de indicaciones. Los modelos marcados con `*` se utilizan en la configuración predeterminada.
    
    **Serie Claude 4 - Modelos Más Recientes (2025-2026)**
    
    | ID del Modelo          | Pensamiento | Fecha de Publicación | Precio (Entrada/Salida/Caché L/E) | Caso de Uso                                      |
    | ---------------------- | ----------- | -------------------- | --------------------------------- | ------------------------------------------------ |
    | `claude-opus-4-6`*     | ✅          | Mayo 2025            | $5.00/$25.00/$0.50/$6.25          | Modelo más inteligente para agentes autónomos y codificación. Pensamiento extendido + adaptativo para desarrollo complejo de exploits, simulación de ataques en múltiples etapas |
    | `claude-sonnet-4-6`*   | ✅          | Ago 2025             | $3.00/$15.00/$0.30/$3.75          | Mejor equilibrio velocidad/inteligencia con pensamiento adaptativo. Evaluaciones de seguridad multifase, análisis inteligente de vulnerabilidades, caza de amenazas en tiempo real |
    | `claude-haiku-4-5`*    | ✅          | Oct 2025             | $1.00/$5.00/$0.10/$1.25           | Modelo más rápido con inteligencia casi de frontera. Escaneo de alta frecuencia, monitoreo en tiempo real, pruebas automatizadas masivas |
    
    **Modelos Heredados - Aún Compatibles**
    
    | ID del Modelo          | Pensamiento | Fecha de Publicación | Precio (Entrada/Salida/Caché L/E) | Caso de Uso                                      |
    | ---------------------- | ----------- | -------------------- | --------------------------------- | ------------------------------------------------ |
    | `claude-sonnet-4-5`    | ✅          | Sep 2025             | $3.00/$15.00/$0.30/$3.75          | Razonamiento de última generación (superado por 4-6). Pruebas de penetración sofisticadas, análisis avanzado de amenazas |
    | `claude-opus-4-5`      | ✅          | Nov 2025             | $5.00/$25.00/$0.50/$6.25          | Razonamiento definitivo (superado por opus-4-6). Investigación crítica de seguridad, descubrimiento de vulnerabilidades de día cero, operaciones de equipo rojo |
    | `claude-opus-4-1`      | ✅          | Ago 2025             | $15.00/$75.00/$1.50/$18.75        | Razonamiento avanzado (superado). Pruebas de penetración complejas, modelado de amenazas sofisticado |
    | `claude-sonnet-4-0`    | ✅          | Mayo 2025            | $3.00/$15.00/$0.30/$3.75          | Razonamiento de alto rendimiento (superado). Modelado de amenazas complejo, coordinación de múltiples herramientas |
    | `claude-opus-4-0`      | ✅          | Mayo 2025            | $15.00/$75.00/$1.50/$18.75        | Primera generación Opus (superado). Desarrollo de exploits en múltiples pasos, flujos de trabajo autónomos de pentesting |
    
    **Modelos Obsoletos - Migrar a Modelos Actuales**
    
    | ID del Modelo                 | Pensamiento | Fecha de Publicación | Precio (Entrada/Salida/Caché L/E) | Notas                                        |
    | ----------------------------- | ----------- | -------------------- | --------------------------------- | -------------------------------------------- |
    | `claude-3-haiku-20240307`     | ❌          | Mar 2024             | $0.25/$1.25/$0.03/$0.30          | Será retirado el 19 de abril de 2026. Migrar a claude-haiku-4-5 |
    
    **Precios**: Por 1M de tokens. El precio de caché incluye costos tanto de Lectura como de Escritura.
    
    **Configuración de Pensamiento Extendido**:
    - **Max Tokens 4096**: Generador (claude-opus-4-6) para máxima profundidad de razonamiento en desarrollo complejo de exploits
    - **Max Tokens 2048**: Codificador (claude-sonnet-4-6) para análisis equilibrado de código e investigación de vulnerabilidades
    - **Max Tokens 1024**: Agente principal, asistente, refinador, asesor, reflector, buscador, instalador, probador de penetración para razonamiento enfocado en tareas específicas
    - **Pensamiento Extendido**: Todos los modelos Claude 4.5+ y 4.6 soportan pensamiento extendido configurable para tareas de razonamiento profundo
    
    **Características Clave**:
    - **Pensamiento Extendido**: Todos los modelos Claude 4.5+ y 4.6 con profundidades de razonamiento de cadena de pensamiento configurables para análisis de seguridad complejo
    - **Pensamiento Adaptativo**: La serie Claude 4.6 (Opus/Sonnet) ajusta dinámicamente la profundidad de razonamiento según la complejidad de la tarea para un rendimiento óptimo
    - **Almacenamiento en Caché de Indicaciones**: Reducción significativa de costos con precios separados de lectura/escritura (10% lectura, 125% escritura de la entrada)
    - **Ventana de Contexto Extendida**: 200K tokens estándar, hasta 1M tokens (beta) para Claude Opus/Sonnet 4.6 para análisis exhaustivo de bases de código
    - **Llamada a Herramientas**: Llamadas a funciones robustas con precisión excepcional para orquestación de herramientas de seguridad
    - **Streaming**: Transmisión de respuestas en tiempo real para flujos de trabajo interactivos de pruebas de penetración
    - **Diseño Centrado en la Seguridad**: Mecanismos de seguridad integrados que garantizan prácticas de pruebas de seguridad responsables
    - **Soporte Multimodal**: Capacidades de visión en los modelos más recientes para análisis de capturas de pantalla y evaluación de seguridad de interfaces de usuario
    - **IA Constitucional**: Entrenamiento de seguridad avanzado que brinda orientación de seguridad confiable y ética
    
    ### Configuración del Proveedor Google AI (Gemini)
    
    PentAGI se integra con los modelos Gemini de Google a través de la API de Google AI, ofreciendo capacidades de razonamiento multimodal de última generación con pensamiento extendido y almacenamiento en caché de contexto.
    
    #### Variables de Configuración
    
    | Variable            | Valor Predeterminado                          | Descripción                      |
    | ------------------- | --------------------------------------------- | -------------------------------- |
    | `GEMINI_API_KEY`    |                                               | Clave API para servicios de Google AI |
    | `GEMINI_SERVER_URL` | `https://generativelanguage.googleapis.com`   | Punto final de la API de Google AI |
    
    #### Ejemplos de Configuración```bash
    # Basic Gemini setup
    GEMINI_API_KEY=your_gemini_api_key
    GEMINI_SERVER_URL=https://generativelanguage.googleapis.com
    
    # Using with proxy
    GEMINI_API_KEY=your_gemini_api_key
    PROXY_URL=http://your-proxy:8080
    

    Modelos Compatibles

    PentAGI admite 9 modelos Gemini con llamada a herramientas, transmisión, modos de pensamiento y almacenamiento en caché de contexto. Los modelos marcados con * se utilizan en la configuración predeterminada.

    Serie Gemini 3.5 - Flash Estable Más Reciente (mayo de 2026)

    Model IDPensamientoContextoPrecio (Entrada/Salida/Caché)Caso de uso
    gemini-3.5-flash*✅1M$1.50/$9.00/$0.15El modelo Flash más inteligente con rendimiento fronterizo sostenido en tareas autónomas y de codificación, búsqueda y fundamentación superiores

    Serie Gemini 3.1 - Flash-Lite Estable + Vista previa Pro (febrero-mayo de 2026)

    Model IDPensamientoContextoPrecio (Entrada/Salida/Caché)Caso de uso
    gemini-3.1-pro-preview*✅1M$2.00/$12.00/$0.20El último modelo insignia con pensamiento refinado, eficiencia de tokens mejorada, optimizado para ingeniería de software y flujos de trabajo autónomos
    gemini-3.1-pro-preview-customtools✅1M$2.00/$12.00/$0.20Punto final de herramientas personalizadas optimizado para bash y priorización de herramientas personalizadas (view_file, search_code)
    gemini-3.1-flash-lite*✅1M$0.25/$1.50/$0.025Modelo multimodal estable de mayor eficiencia de costes, rendimiento de clase fronteriza para tareas autónomas de alto volumen y aplicaciones de baja latencia

    Serie Gemini 2.5 - Modelos de Pensamiento Avanzado (activos hasta el 16 de octubre de 2026)

    Model IDPensamientoContextoPrecio (Entrada/Salida/Caché)Caso de uso
    gemini-2.5-pro✅1M$1.25/$10.00/$0.125Estado del arte para codificación y razonamiento complejos, modelado de amenazas sofisticado
    gemini-2.5-flash✅1M$0.30/$2.50/$0.03Primer modelo de razonamiento híbrido con presupuestos de pensamiento, mejor relación precio-rendimiento para evaluaciones a gran escala
    gemini-2.5-flash-lite✅1M$0.10/$0.40/$0.01El más pequeño y rentable para uso a escala, escaneo de alto rendimiento

    Modelos de Código Abierto Gemma 4 (Apache 2.0, Nivel Gratuito)

    Model IDPensamientoContextoPrecio (Entrada/Salida/Caché)Caso de uso
    gemma-4-31b-it✅256KGratis/Gratis/GratisModelo denso Gemma 4 de código abierto más grande (~31B parámetros), multimodal texto+imagen, 140+ idiomas, operaciones de seguridad locales
    gemma-4-26b-a4b-it✅256KGratis/Gratis/GratisArquitectura MoE (~26B total / ~3.8B parámetros activos), inferencia altamente eficiente en GPU de consumo para escaneo local de alto rendimiento

    Precios: Por 1M tokens (nivel estándar de pago). La ventana de contexto es el límite de tokens de entrada.

    [!NOTE] Apagado de la Serie Gemini 2.5

    gemini-2.5-pro, gemini-2.5-flash y gemini-2.5-flash-lite serán cerrados el 16 de octubre de 2026. Migraciones recomendadas:

    • gemini-2.5-pro → gemini-3.1-pro-preview (mismo nivel de precios de entrada de $2.00)
    • gemini-2.5-flash → gemini-3.5-flash (capacidades fronterizas mejoradas)
    • gemini-2.5-flash-lite → gemini-3.1-flash-lite (mismo precio de entrada de $0.25)

    Asignaciones de Modelo Predeterminadas (config.yml):

    • gemini-3.1-pro-preview - primary_agent, assistant, generator, refiner, adviser, coder, pentester
    • gemini-3.5-flash - reflector, searcher, enricher, installer
    • gemini-3.1-flash-lite - simple, simple_json

    Características Principales:

    • Pensamiento Extendido: Razonamiento paso a paso para análisis de seguridad complejos (todos los Gemini 3.x, serie 2.5 y Gemma 4 con pensamiento activable)
    • Caché de Contexto: Reducción significativa de costos en contexto repetido (10% del precio de entrada para la mayoría de los modelos)
    • Contexto Ultra Largo: 1M tokens para modelos de chat Gemini, 256K tokens para modelos de código abierto Gemma 4
    • Soporte Multimodal: Procesamiento de texto, imagen, video, audio y PDF para evaluaciones exhaustivas
    • Llamada a Herramientas: Integración perfecta con más de 20 herramientas de pentesting mediante llamada a funciones
    • Transmisión: Transmisión de respuestas en tiempo real para flujos de trabajo de seguridad interactivos
    • Ejecución de Código: Ejecución de código integrada para pruebas de herramientas ofensivas y validación de exploits
    • Fundamentación de Búsqueda: Integración de Búsqueda de Google para inteligencia de amenazas e investigación de CVE
    • Búsqueda de Archivos: Recuperación de documentos y capacidades RAG para evaluaciones basadas en conocimiento
    • API por Lotes: Reducción de costos del 50% para procesamiento por lotes no en tiempo real
    • Punto Final de Herramientas Personalizadas: Ruta dedicada gemini-3.1-pro-preview-customtools para flujos de trabajo autónomos intensivos en herramientas que prefieren herramientas registradas sobre bash

    Niveles de Esfuerzo de Razonamiento:

    • Alto: Profundidad máxima de pensamiento para análisis complejos de múltiples pasos (generador)
    • Medio: Razonamiento equilibrado para tareas autónomas generales (primary_agent, assistant, refiner, adviser)
    • Bajo: Pensamiento eficiente para tareas enfocadas (coder, installer, pentester)

    Configuración del Proveedor AWS Bedrock

    PentAGI se integra con Amazon Bedrock, ofreciendo acceso a más de 20 modelos fundacionales de las principales empresas de IA, incluyendo Anthropic, Amazon, Cohere, DeepSeek, OpenAI, Qwen, Mistral y Moonshot.

    Variables de Configuración

    VariablePor defectoDescripción
    BEDROCK_REGIONus-east-1Región de AWS para el servicio Bedrock
    BEDROCK_DEFAULT_AUTHfalseUsar la cadena de credenciales predeterminada del SDK de AWS (entorno, rol EC2, ~/.aws/credentials) - prioridad más alta
    BEDROCK_BEARER_TOKENAutenticación de token Bearer - prioridad sobre credenciales estáticas
    BEDROCK_ACCESS_KEY_IDID de clave de acceso de AWS para credenciales estáticas
    BEDROCK_SECRET_ACCESS_KEYClave de acceso secreta de AWS para credenciales estáticas
    BEDROCK_SESSION_TOKENToken de sesión de AWS para credenciales temporales (opcional, se usa con credenciales estáticas)
    BEDROCK_SERVER_URLPunto final personalizado de Bedrock (puntos finales de VPC, pruebas locales)

    Prioridad de Autenticación: BEDROCK_DEFAULT_AUTH → BEDROCK_BEARER_TOKEN → BEDROCK_ACCESS_KEY_ID+BEDROCK_SECRET_ACCESS_KEY

    Ejemplos de Configuración```bash

    Recommended: Default AWS SDK authentication (EC2/ECS/Lambda roles)

    BEDROCK_REGION=us-east-1 BEDROCK_DEFAULT_AUTH=true

    Bearer token authentication (AWS STS, custom auth)

    BEDROCK_REGION=us-east-1 BEDROCK_BEARER_TOKEN=your_bearer_token

    Static credentials (development, testing)

    BEDROCK_REGION=us-east-1 BEDROCK_ACCESS_KEY_ID=your_aws_access_key BEDROCK_SECRET_ACCESS_KEY=your_aws_secret_key

    With proxy and custom endpoint

    BEDROCK_REGION=us-east-1 BEDROCK_DEFAULT_AUTH=true BEDROCK_SERVER_URL=https://bedrock-runtime.us-east-1.vpce-xxx.amazonaws.com PROXY_URL=http://your-proxy:8080

    root@kitploit:~
    #### Modelos compatibles
    
    PentAGI es compatible con 21 modelos de AWS Bedrock con capacidades de llamada a herramientas, streaming y multimodales. Los modelos marcados con `*` se utilizan en la configuración predeterminada.
    
    | ID del modelo                                    | Proveedor       | Razonamiento | Multimodal | Precio (Entrada/Salida) | Caso de uso                              |
    | ------------------------------------------------ | --------------- | ------------ | ---------- | ----------------------- | ---------------------------------------- |
    | `us.amazon.nova-2-lite-v1:0`                     | Amazon Nova     | ❌            | ✅          | $0.33/$2.75             | Razonamiento adaptativo, pensamiento eficiente |
    | `us.amazon.nova-premier-v1:0`                    | Amazon Nova     | ❌            | ✅          | $2.50/$12.50            | Razonamiento complejo, análisis avanzado |
    | `us.amazon.nova-pro-v1:0`                        | Amazon Nova     | ❌            | ✅          | $0.80/$3.20             | Precisión, velocidad y costo equilibrados |
    | `us.amazon.nova-lite-v1:0`                       | Amazon Nova     | ❌            | ✅          | $0.06/$0.24             | Procesamiento rápido, operaciones de alto volumen |
    | `us.amazon.nova-micro-v1:0`                      | Amazon Nova     | ❌            | ❌          | $0.035/$0.14            | Latencia ultra baja, monitoreo en tiempo real |
    | `us.anthropic.claude-opus-4-6-v1`*               | Anthropic       | ✅            | ✅          | $5.00/$25.00            | Codificación de primer nivel, agentes empresariales |
    | `us.anthropic.claude-sonnet-4-6`                 | Anthropic       | ✅            | ✅          | $3.00/$15.00            | Inteligencia fronteriza, escala empresarial |
    | `us.anthropic.claude-opus-4-5-20251101-v1:0`     | Anthropic       | ✅            | ✅          | $5.00/$25.00            | Desarrollo de software de varios días    |
    | `us.anthropic.claude-haiku-4-5-20251001-v1:0`*   | Anthropic       | ✅            | ✅          | $1.00/$5.00             | Rendimiento casi fronterizo, alta velocidad |
    | `us.anthropic.claude-sonnet-4-5-20250929-v1:0`*  | Anthropic       | ✅            | ✅          | $3.00/$15.00            | Agentes del mundo real, excelencia en codificación |
    | `us.anthropic.claude-sonnet-4-20250514-v1:0`     | Anthropic       | ✅            | ✅          | $3.00/$15.00            | Rendimiento equilibrado, listo para producción |
    | `us.anthropic.claude-3-5-haiku-20241022-v1:0`    | Anthropic       | ❌            | ❌          | $0.80/$4.00             | Modelo más rápido, escaneo rentable       |
    | `cohere.command-r-plus-v1:0`                     | Cohere          | ❌            | ❌          | $3.00/$15.00            | Operaciones a gran escala, RAG superior  |
    | `deepseek.v3.2`                                  | DeepSeek        | ❌            | ❌          | $0.58/$1.68             | Razonamiento de contexto largo, eficiencia |
    | `openai.gpt-oss-120b-1:0`*                       | OpenAI (OSS)    | ✅            | ❌          | $0.15/$0.60             | Razonamiento sólido, análisis científico |
    | `openai.gpt-oss-20b-1:0`                         | OpenAI (OSS)    | ✅            | ❌          | $0.07/$0.30             | Codificación eficiente, desarrollo de software |
    | `qwen.qwen3-next-80b-a3b`                        | Qwen            | ❌            | ❌          | $0.15/$1.20             | Contexto ultra largo, razonamiento insignia |
    | `qwen.qwen3-32b-v1:0`                            | Qwen            | ❌            | ❌          | $0.15/$0.60             | Razonamiento equilibrado, casos de uso de investigación |
    | `qwen.qwen3-coder-30b-a3b-v1:0`                  | Qwen            | ❌            | ❌          | $0.15/$0.60             | Codificación por vibración, primero en lenguaje natural |
    | `qwen.qwen3-coder-next`                          | Qwen            | ❌            | ❌          | $0.45/$1.80             | Uso de herramientas, llamada a funciones optimizada |
    | `mistral.mistral-large-3-675b-instruct`          | Mistral         | ❌            | ✅          | $4.00/$12.00            | Multimodal avanzado, contexto largo     |
    | `moonshotai.kimi-k2.5`                           | Moonshot        | ❌            | ✅          | $0.60/$3.00             | Visión, lenguaje, código en un solo modelo |
    
    **Precios**: Por 1M de tokens. Los modelos con soporte de razonamiento/pensamiento tienen costos de cómputo adicionales durante la fase de razonamiento.
    
    #### Modelos probados pero incompatibles
    
    Algunos modelos de AWS Bedrock fueron probados pero **no son compatibles** debido a limitaciones técnicas:
    
    | Familia del modelo         | Razón de la incompatibilidad                                                               |
    | -------------------------- | ------------------------------------------------------------------------------------------ |
    | **GLM (Z.AI)**            | El formato de llamada a herramientas es incompatible con la API Converse (espera cadena en lugar de JSON) |
    | **AI21 Jamba**            | Límites de velocidad severos (1-2 solicitudes/min) impiden pruebas confiables y uso en producción |
    | **Meta Llama 3.3/3.1**    | Procesamiento inestable de resultados de llamadas a herramientas, causa fallos inesperados en flujos de varios turnos |
    | **Mistral Magistral**     | La llamada a herramientas no es compatible con el modelo                                   |
    | **Moonshot K2-Thinking**  | Comportamiento de streaming inestable con llamadas a herramientas, poco confiable en producción |
    | **Qwen3-VL**              | Streaming inestable con llamada a herramientas, la combinación multimodal + herramientas falla intermitentemente |
    
    > [!IMPORTANT]
    > **Límites de velocidad y gestión de cuotas**
    >
    > Las cuotas predeterminadas de AWS Bedrock para los modelos Claude son **extremadamente restrictivas** (2-20 solicitudes/minuto para cuentas nuevas). Para pruebas de penetración en producción:
    >
    > 1. **Solicite aumentos de cuota** a través de la consola de AWS Service Quotas para los modelos que planea usar
    > 2. **Use modelos Amazon Nova**: cuotas predeterminadas más altas y excelente rendimiento
    > 3. **Habilite el rendimiento aprovisionado** para pruebas consistentes de alto volumen
    > 4. **Monitoree el uso**: AWS limita agresivamente en los límites de cuota
    >
    > Sin aumentos de cuota, espere retrasos frecuentes e interrupciones en el flujo de trabajo.
    
    > [!WARNING]
    > **Requisitos de la API Converse**
    >
    > PentAGI utiliza la **API Converse** de Amazon Bedrock para el acceso unificado a modelos. Todos los modelos compatibles requieren:
    >
    > - ✅ Soporte de API Converse/ConverseStream
    > - ✅ Uso de herramientas (llamada a funciones) para flujos de trabajo de pruebas de penetración
    > - ✅ Uso de herramientas de streaming para retroalimentación en tiempo real
    >
    > Verifique las capacidades del modelo en: [Características de modelos de AWS Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference-supported-models-features.html)
    
    **Características clave**:
    - **Caché automática de prompts**: Reducción de costos del 40-70% en contexto repetido (modelos Claude 4.x)
    - **Razonamiento extendido**: Razonamiento paso a paso para análisis de seguridad complejos (Claude, DeepSeek R1, OpenAI GPT)
    - **Análisis multimodal**: Procese capturas de pantalla, diagramas, videos para pruebas completas (Nova, Claude, Mistral, Kimi)
    - **Llamada a herramientas**: Integración perfecta con más de 20 herramientas de pentesting mediante llamada a funciones
    - **Streaming**: Streaming de respuestas en tiempo real para flujos de trabajo de evaluación de seguridad interactivos
    
    ### Configuración del proveedor DeepSeek
    
    PentAGI se integra con DeepSeek, proporcionando acceso a modelos de IA avanzados con fuertes capacidades de razonamiento, codificación y almacenamiento en caché de contexto a precios competitivos.
    
    #### Variables de configuración
    
    | Variable              | Valor predeterminado         | Descripción                                        |
    | --------------------- | ---------------------------- | -------------------------------------------------- |
    | `DEEPSEEK_API_KEY`    |                              | Clave API de DeepSeek para autenticación           |
    | `DEEPSEEK_SERVER_URL` | `https://api.deepseek.com`  | URL del endpoint de la API de DeepSeek             |
    | `DEEPSEEK_PROVIDER`   |                              | Prefijo del proveedor para la integración con LiteLLM (opcional) |
    
    #### Ejemplos de configuración```bash
    # Direct API usage
    DEEPSEEK_API_KEY=your_deepseek_api_key
    DEEPSEEK_SERVER_URL=https://api.deepseek.com
    
    # With LiteLLM proxy
    DEEPSEEK_API_KEY=your_litellm_key
    DEEPSEEK_SERVER_URL=http://litellm-proxy:4000
    DEEPSEEK_PROVIDER=deepseek  # Adds prefix to model names (deepseek/deepseek-v4-flash) for LiteLLM
    

    Modelos Compatibles

    PentAGI es compatible con 2 modelos DeepSeek V4 con llamada a herramientas, streaming, modos de pensamiento híbrido/sin pensamiento y almacenamiento en caché de contexto. Ambos modelos admiten el modo de pensamiento por defecto y se pueden cambiar al modo sin pensamiento mediante extra_body. Los modelos marcados con * se utilizan en la configuración predeterminada.

    ID del modeloPensamientoSalida Máx.ContextoPrecio (Entrada/Salida/Caché)Caso de Uso
    deepseek-v4-flash*✅ híbrido384K1M$0.14/$0.28/$0.0028Agentes de utilidad, diálogo general, llamada rápida de herramientas
    deepseek-v4-pro*✅ híbrido384K1M$1.74/$3.48/$0.0145Razonamiento avanzado, lógica compleja, análisis de seguridad

    Precios: Por cada 1M de tokens. El precio de caché se aplica a los tokens de prompt servidos desde la caché (acierto de caché de entrada, reducido a 1/10 del precio de lanzamiento desde el 2026-04-26). Ambos modelos admiten pensamiento híbrido: el modo thinking está habilitado por defecto; pase extra_body.thinking.type: disabled para cambiar al modo sin pensamiento para respuestas más rápidas/económicas.

    Nota de Precios (deepseek-v4-pro): El descuento promocional del 75% en deepseek-v4-pro finalizó oficialmente el 2026-05-31 a las 15:59 UTC. Los precios anteriores reflejan los precios estándar posteriores a la promoción. Si tiene configuraciones heredadas que utilizan los precios con descuento ($0.435/$0.87/$0.003625), actualícelas a las tarifas actuales para un seguimiento preciso de costos.

    Los nombres de modelos heredados deepseek-chat y deepseek-reasoner están programados para ser obsoletos por DeepSeek el 2026-07-24. Las configuraciones de usuario existentes que hacen referencia a los nombres heredados seguirán funcionando hasta entonces; los valores predeterminados anteriores utilizan los nombres V4 actuales. deepseek-chat se asigna al modo sin pensamiento de deepseek-v4-flash; deepseek-reasoner se asigna al modo de pensamiento de deepseek-v4-flash.

    Configuración Predeterminada del Agente:

    Estrategia: prefiera deepseek-v4-flash (entrada 12 veces más barata, salida 12 veces más barata) como caballo de batalla para agentes de utilidad/ligeros; reserve deepseek-v4-pro para razonamiento complejo de varios pasos. El agente installer se ejecuta en Flash con el pensamiento habilitado porque las tareas de configuración del entorno (comandos de shell, ediciones de configuración) rara vez requieren razonamiento de nivel Pro. Realice pruebas A/B en sus propias cargas de trabajo antes de promover más agentes a Pro.

    Rol del AgenteModelo PredeterminadoPensamientoEsfuerzo de RazonamientoSalida Máx.TemperaturaTop P
    Generator / Refinerdeepseek-v4-proHabilitadoAlto32768(auto)(auto)
    Coderdeepseek-v4-proHabilitadoAlto20480(auto)(auto)
    Agente Principal / Asistente / Pentesterdeepseek-v4-proHabilitadoAlto16384(auto)(auto)
    Asesor (mentor/planificador)deepseek-v4-proHabilitadoAlto8192(auto)(auto)
    Instaladordeepseek-v4-flashHabilitadoAlto12288(auto)(auto)
    Reflector / Buscador / Enrichmentdeepseek-v4-flashDeshabilitado—40960.50.9
    Simple / Simple JSONdeepseek-v4-flashDeshabilitado—20480.30.9

    Nota: Cuando el modo de pensamiento está habilitado, DeepSeek ignora silenciosamente temperature, top_p, presence_penalty y frequency_penalty. El cliente langchaingo anula automáticamente temperature/top_p cuando se establece reasoning_effort, por lo que aparecen como "(auto)" en la tabla anterior. Todos los agentes con pensamiento habilitado también pasan explícitamente extra_body.thinking.type: enabled como codificación defensiva contra cambios futuros en los valores predeterminados del proveedor.

    Características Principales:

    • Modos de Pensamiento Híbrido: Cambie entre modos de pensamiento (razonamiento profundo) y sin pensamiento (rápido) mediante extra_body.thinking.type
    • Almacenamiento en Caché Automático de Prompts: Reducción significativa de costos en contexto repetido mediante precios de acierto de caché (1/10 del precio de lanzamiento)
    • Pensamiento Extendido: CoT de aprendizaje por refuerzo para análisis de seguridad complejos (ambos modelos V4)
    • Codificación Sólida: Optimizado para generación de código y desarrollo de exploits
    • Contexto Largo: Ventana de contexto de 1M de tokens con hasta 384K tokens de salida
    • Llamada a Herramientas: Integración perfecta con más de 20 herramientas de pentesting mediante llamada a funciones
    • Streaming: Transmisión de respuestas en tiempo real para flujos de trabajo interactivos
    • Multilingüe: Fuerte soporte para chino e inglés
    • Características Adicionales: Salida JSON, Completado de Prefijo de Chat (beta), Completado FIM/Completado Intermedio (solo modo sin pensamiento)

    Límites de Concurrencia: deepseek-v4-flash: 2500 solicitudes concurrentes; deepseek-v4-pro: 500 solicitudes concurrentes.

    Integración con LiteLLM: Establezca DEEPSEEK_PROVIDER=deepseek para habilitar el prefijo del nombre del modelo al usar configuraciones predeterminadas de PentAGI con el proxy LiteLLM. Déjelo vacío para uso directo de la API.

    Configuración del Proveedor GLM

    PentAGI se integra con GLM de Zhipu AI (Z.AI), proporcionando modelos de lenguaje avanzados con arquitectura MoE, razonamiento sólido y capacidades agentivas desarrolladas por la Universidad de Tsinghua.

    Variables de Configuración

    VariableValor PredeterminadoDescripción
    GLM_API_KEYClave API de GLM para autenticación
    GLM_SERVER_URLhttps://api.z.ai/api/paas/v4URL del endpoint de la API de GLM (internacional)
    GLM_PROVIDERPrefijo de proveedor para integración con LiteLLM (opcional)

    Ejemplos de Configuración```bash

    Direct API usage (international endpoint)

    GLM_API_KEY=your_glm_api_key GLM_SERVER_URL=https://api.z.ai/api/paas/v4

    Alternative endpoints

    GLM_SERVER_URL=https://open.bigmodel.cn/api/paas/v4 # China GLM_SERVER_URL=https://api.z.ai/api/coding/paas/v4 # Coding-specific

    With LiteLLM proxy

    GLM_API_KEY=your_litellm_key GLM_SERVER_URL=http://litellm-proxy:4000 GLM_PROVIDER=zai # Adds prefix to model names (zai/glm-4) for LiteLLM

    root@kitploit:~
    #### Modelos Soportados
    
    PentAGI admite 13 modelos GLM con llamada a herramientas, streaming, modos de pensamiento híbrido y almacenamiento en caché de indicaciones. Los modelos marcados con `*` se utilizan en la configuración predeterminada. El pensamiento se controla mediante `extra_body.thinking.type` ("enabled"/"disabled"); a diferencia de Kimi, GLM es permisivo con la temperatura en cualquier modo.
    
    **Serie GLM-5.x - Última Generación (contexto de 200K, salida máxima de 128K)**
    
    | ID del Modelo  | Pensamiento | Contexto | Salida Máx. | Precio (Entrada/Salida/Caché) | Caso de Uso                                                                                          |
    | -------------- | ----------- | -------- | ----------- | ------------------------------ | ---------------------------------------------------------------------------------------------------- |
    | `glm-5.1`*     | ✅ Híbrido  | 200K     | 128K        | $1.40/$4.40/$0.26              | Nuevo buque insignia: ejecución autónoma sostenida de 8h, alineado con Claude Opus 4.6 (generador/refinador/asesor/codificador/pentester por defecto) |
    | `glm-5`        | ✅ Híbrido  | 200K     | 128K        | $1.00/$3.20/$0.20              | Base para Ingeniería Agentica, MoE 744B/40B activos, codificación a nivel de Claude Opus 4.5        |
    | `glm-5-turbo`* | ✅ Híbrido  | 200K     | 128K        | $1.20/$4.00/$0.24              | Nativo de OpenClaw: optimizado para invocación de herramientas, tareas persistentes, ejecución de cadena larga (agente_principal/asistente por defecto) |
    
    **Serie GLM-4.7 - Premium con Pensamiento Intercalado**
    
    | ID del Modelo     | Pensamiento | Contexto | Salida Máx. | Precio (Entrada/Salida/Caché) | Caso de Uso                                              |
    | ----------------- | ----------- | -------- | ----------- | ------------------------------ | --------------------------------------------------------- |
    | `glm-4.7`         | ✅ Híbrido  | 200K     | 128K        | $0.60/$2.20/$0.11              | Programación mejorada, razonamiento multi-paso estable   |
    | `glm-4.7-flashx`  | ✅ Híbrido  | 200K     | 128K        | $0.07/$0.40/$0.01              | Ultraeconómico con GPU prioritaria, pero límites RPM más bajos (evitar para uso de alta frecuencia) |
    | `glm-4.7-flash`   | ✅ Híbrido  | 200K     | 128K        | Gratis/Gratis/Gratis           | Modelo SOTA ~30B gratuito, 1 solicitud concurrente       |
    
    **Serie GLM-4.6 - Equilibrada con Pensamiento Automático**
    
    | ID del Modelo | Pensamiento | Contexto | Salida Máx. | Precio (Entrada/Salida/Caché) | Caso de Uso                                          |
    | ------------- | ----------- | -------- | ----------- | ------------------------------ | ----------------------------------------------------- |
    | `glm-4.6`     | ✅ Automático | 200K    | 128K        | $0.60/$2.20/$0.11              | Equilibrado, llamadas a herramientas en streaming, eficiente en tokens |
    
    **Serie GLM-4.5 - Razonamiento/Codificación/Agentes Unificados**
    
    | ID del Modelo        | Pensamiento | Contexto | Salida Máx. | Precio (Entrada/Salida/Caché) | Caso de Uso                                          |
    | -------------------- | ----------- | -------- | ----------- | ------------------------------ | ----------------------------------------------------- |
    | `glm-4.5`            | ✅ Automático | 128K    | 96K         | $0.60/$2.20/$0.11              | Unificado, MoE 355B/32B activos                      |
    | `glm-4.5-x`          | ✅ Automático | 128K    | 96K         | $2.20/$8.90/$0.45              | Premium ultrarrápido, latencia más baja               |
    | `glm-4.5-air`*       | ✅ Automático | 128K    | 96K         | $0.20/$1.10/$0.03              | MoE rentable 106B/12B (simple/simple_json/reflector/buscador/enriquecedor/instalador por defecto) |
    | `glm-4.5-airx`       | ✅ Automático | 128K    | 96K         | $1.10/$4.50/$0.22              | Air acelerado con GPU prioritaria                     |
    | `glm-4.5-flash`      | ✅ Automático | 128K    | 96K         | Gratis/Gratis/Gratis           | Gratuito con soporte para razonamiento/codificación/agentes |
    
    **GLM-4 Heredado - Arquitectura Densa**
    
    | ID del Modelo              | Pensamiento | Contexto | Salida Máx. | Precio (Entrada/Salida) | Caso de Uso                                              |
    | ------------------------- | ----------- | -------- | ----------- | ----------------------- | --------------------------------------------------------- |
    | `glm-4-32b-0414-128k`     | ❌          | 128K     | 16K         | $0.10/$0.10             | Denso 32B ultraeconómico, análisis sin razonamiento       |
    
    **Precios**: Por 1M de tokens. El precio de caché es para acierto de caché de indicaciones; el almacenamiento en caché es actualmente gratuito según la promoción de Z.AI. GLM-4-32B no tiene soporte de caché.
    
    **Configuración del Agente por Defecto**:
    
    Estrategia: `glm-5.1` (nuevo buque insignia, $1.40 entrada) para razonamiento crítico, `glm-5-turbo` (nativo de OpenClaw, optimizado para agentes) para orquestación, `glm-4.5-air` (MoE barato con pensamiento híbrido y RPM confiable) para todos los agentes de utilidad/instalador. Se evita `glm-4.7-flashx` como predeterminado debido a límites RPM más bajos que causan frecuentes errores 429 a alta frecuencia.
    
    | Rol del Agente                | Modelo Predeterminado | Pensamiento | Temperatura | Top P | Salida Máx. |
    | ----------------------------- | --------------------- | ----------- | ----------- | ----- | ----------- |
    | Generador / Refinador         | `glm-5.1`             | Habilitado  | 1.0         | 0.95  | 32768       |
    | Codificador                   | `glm-5.1`             | Habilitado  | 1.0         | 0.95  | 20480       |
    | Asesor / Pentester            | `glm-5.1`             | Habilitado  | 1.0         | 0.95  | 16384       |
    | Agente Principal / Asistente  | `glm-5-turbo`         | Habilitado  | 1.0         | 0.95  | 16384       |
    | Instalador                    | `glm-4.5-air`         | Habilitado  | 1.0         | 0.95  | 16384       |
    | Simple / Reflector            | `glm-4.5-air`         | Deshabilitado | 0.6       | 0.9   | 8192        |
    | Buscador / Enriquecedor / JSON Simple | `glm-4.5-air` | Deshabilitado | 0.6 | 0.9 | 4096 |
    
    > **Nota sobre la temperatura**: GLM acepta tanto `1.0` como `0.6` en modo de pensamiento o sin pensamiento (según la documentación de Z.AI). La función `IsReasoningModel` de langchaingo coincide con los prefijos `glm-4.5*`/`glm-4.6*`/`glm-4.7*` y fuerza la temperatura a 1.0 en `createChatRequest` — esto es inofensivo para GLM (a diferencia de Kimi) pero significa que los valores de temperatura para esos modelos en YAML son solo indicativos. `glm-5`/`glm-5.1`/`glm-5-turbo` no coinciden, por lo que los valores explícitos pasan sin cambios.
    
    **Modos de Pensamiento**:
    - **Híbrido** (GLM-5.x, GLM-4.7): Alternancia explícita mediante `extra_body.thinking.type`
    - **Automático** (serie GLM-4.6, GLM-4.5): El modelo determina automáticamente cuándo se necesita razonamiento
    - **Pensamiento Preservado** (Capacidad de Codificación Z.AI): todos los agentes con pensamiento habilitado en PentAGI también pasan `extra_body.thinking.clear_thinking: false` para que `reasoning_content` de turnos anteriores del asistente se conserve a lo largo de la conversación. Esto es necesario en el endpoint estándar de la API (`/api/paas/v4`) — en el endpoint del Plan de Codificación estaría habilitado por defecto. Mejora la continuidad del razonamiento y las tasas de acierto de caché en cadenas de llamadas a herramientas de múltiples turnos.
    - Todos los agentes con pensamiento habilitado también pasan `extra_body.tool_choice: auto` de forma defensiva
    
    **Características Clave**:
    - **Tareas de Largo Plazo**: GLM-5.1 admite ejecución autónoma sostenida de 8 horas, ideal para flujos de trabajo agenticos complejos de múltiples etapas
    - **Orquestación Nativa de OpenClaw**: GLM-5-Turbo está específicamente optimizado para invocación de herramientas, seguimiento de instrucciones y ejecución de cadena larga
    - **Almacenamiento en Caché de Indicaciones**: Reducción significativa de costos en contexto repetido (se muestra el precio de entrada en caché)
    - **Contexto Ultra Largo**: 200K tokens para las series GLM-5.x/4.7/4.6
    - **Arquitectura MoE**: Eficiente 744B/40B activos (GLM-5/5.1), 355B/32B (GLM-4.5), 106B/12B (GLM-4.5-Air)
    - **Llamada a Herramientas**: Integración perfecta con más de 20 herramientas de pentesting mediante llamadas a funciones
    - **Streaming**: Streaming en tiempo real con soporte de llamadas a herramientas en streaming (GLM-4.6+)
    - **Multilingüe**: Capacidades excepcionales de PNL en chino e inglés
    - **Opciones Gratuitas**: GLM-4.7-Flash y GLM-4.5-Flash para prototipado y experimentación
    
    **Integración LiteLLM**: Establezca `GLM_PROVIDER=zai` para habilitar el prefijo de nombre del modelo al usar configuraciones predeterminadas de PentAGI con el proxy LiteLLM. Déjelo vacío para uso directo de la API.
    
    ### Configuración del Proveedor Kimi
    
    PentAGI se integra con Kimi de Moonshot AI, proporcionando modelos de contexto ultra largo con capacidades multimodales perfectos para analizar bases de código y documentación extensas.
    
    #### Variables de Configuración
    
    ---
    
    [Read more](https://github.com/vxcontrol/pentagi)