Saltar a contenido

Protocolo HugAI v2

Introducción

El Protocolo HugAI es una especificación abierta diseñada para habilitar la interoperabilidad, orquestación y gobernanza de agentes de inteligencia artificial en el desarrollo de software. Inspirado en el Language Server Protocol (LSP), HugAI busca estandarizar la comunicación entre herramientas, agentes y humanos, permitiendo que múltiples sistemas de IA colaboren de manera segura, auditable y bajo control humano.

El protocolo define cómo los agentes de IA se registran, negocian capacidades, intercambian mensajes y se integran en flujos de trabajo gobernados por humanos. Su objetivo es facilitar la adopción escalable de IA en entornos de desarrollo, reducir el vendor lock-in y crear un ecosistema abierto donde agentes, herramientas y humanos puedan colaborar de forma transparente y eficiente.

HugAI está pensado para ser extensible, adaptable a distintos dominios y compatible con múltiples tecnologías de transporte (HTTP, WebSocket, STDIO), siguiendo principios de modularidad, seguridad y trazabilidad.


Objetivos del Protocolo

Los objetivos principales de la especificación técnica del protocolo HugAI son:

  1. Estandarizar la comunicación entre agentes de IA, herramientas y humanos
  2. Definir un lenguaje común y formatos de mensaje interoperables para facilitar la integración de múltiples sistemas y proveedores.
  3. Facilitar la orquestación y colaboración multi-agente
  4. Permitir que agentes especializados trabajen juntos, compartan contexto y coordinen tareas bajo flujos de trabajo gobernados por humanos.
  5. Garantizar la gobernanza y el control humano
  6. Incluir mecanismos de aprobación, auditoría y trazabilidad para asegurar que las decisiones críticas sean supervisadas y validadas por personas.
  7. Promover la extensibilidad y adaptabilidad
  8. Diseñar el protocolo para que pueda evolucionar, incorporar nuevas capacidades y adaptarse a distintos dominios y tecnologías.
  9. Asegurar la seguridad y la integridad de las interacciones
  10. Proveer autenticación, autorización y protección contra acciones maliciosas o accidentales.
  11. Reducir el vendor lock-in y fomentar un ecosistema abierto
  12. Permitir la interoperabilidad entre agentes y herramientas de distintos proveedores, facilitando la adopción y la innovación colaborativa.

Arquitectura General

El protocolo HugAI se basa en una arquitectura modular y en capas, inspirada en el Language Server Protocol (LSP) y en el estándar JSON-RPC 2.0. Esta arquitectura permite separar responsabilidades, facilitar la extensibilidad y asegurar la interoperabilidad entre distintos agentes, herramientas y plataformas.

Componentes principales:

  • Agentes de IA: Entidades especializadas que ejecutan tareas, procesan mensajes y colaboran en flujos de trabajo.
  • Coordinador/Gateway: Nodo central (opcional) que orquesta la comunicación, enruta mensajes y aplica reglas de gobernanza.
  • Clientes/Herramientas: Interfaces de usuario, IDEs, sistemas de CI/CD u otras aplicaciones que interactúan con los agentes a través del protocolo.
  • Stakeholders Humanos: Personas que supervisan, validan y toman decisiones en los puntos de control definidos.

Capas de la arquitectura:

  1. Capa de Transporte: Define los mecanismos de comunicación física (HTTP, WebSocket, STDIO, etc.).
  2. Capa de Mensajería (JSON-RPC 2.0): Estandariza el formato de los mensajes, solicitudes, respuestas y notificaciones.
  3. Capa de Comunicación de Agentes: Gestiona el registro, descubrimiento y negociación de capacidades entre agentes.
  4. Capa de Gobernanza y Aprobaciones: Implementa los flujos de control humano, auditoría y checkpoints de validación.
  5. Capa de Integración de Herramientas: Permite la conexión con sistemas externos (IDEs, CI/CD, monitoreo, etc.).
  6. Capa de Orquestación Multi-Agente: Coordina la colaboración y el flujo de tareas entre múltiples agentes y humanos.

Esta arquitectura permite que el protocolo evolucione, incorpore nuevas funcionalidades y se adapte a distintos escenarios de uso, manteniendo siempre la trazabilidad, seguridad y control humano como principios fundamentales.


Capas del Protocolo

A continuación se describen las capas principales del protocolo HugAI:

  1. Capa de Transporte
  2. Proporciona los canales físicos y lógicos para la transmisión de mensajes entre agentes, herramientas y humanos. Soporta HTTP, WebSocket, STDIO y otros mecanismos según el entorno y las necesidades de integración.
  3. Capa de Mensajería (JSON-RPC 2.0)
  4. Define el formato estándar de los mensajes (solicitudes, respuestas, notificaciones) y asegura la interoperabilidad entre distintos participantes. Permite la extensión de métodos y parámetros de manera estructurada.
  5. Capa de Comunicación de Agentes
  6. Gestiona el registro, descubrimiento, negociación de capacidades y la comunicación directa entre agentes. Permite que los agentes se anuncien, describan sus funciones y colaboren en tareas complejas.
  7. Capa de Gobernanza y Aprobaciones
  8. Implementa los mecanismos de control humano, checkpoints de validación, auditoría y trazabilidad. Permite definir reglas de aprobación, escalación y revisión en cada fase del workflow.
  9. Capa de Integración de Herramientas
  10. Facilita la conexión y comunicación con sistemas externos como IDEs, pipelines de CI/CD, plataformas de monitoreo, etc. Permite la integración de eventos, comandos y resultados de herramientas de terceros.
  11. Capa de Orquestación Multi-Agente
  12. Coordina la colaboración entre múltiples agentes y humanos, gestionando el flujo de tareas, la asignación de responsabilidades y la resolución de dependencias o conflictos.

Cada capa puede evolucionar de manera independiente, permitiendo la adaptación del protocolo a nuevos escenarios, tecnologías y requisitos sin comprometer la compatibilidad ni la seguridad.


Tipos de Mensajes

El protocolo HugAI define varios tipos principales de mensajes, cada uno con un propósito específico dentro de los flujos de trabajo y la gobernanza:

  1. Inicialización (initialize)
  2. Mensaje para establecer la conexión, negociar capacidades y compartir información de contexto entre agentes, clientes y el coordinador.
  3. Registro de Agentes (agent/register)
  4. Permite a los agentes anunciarse, describir sus capacidades y quedar disponibles para tareas específicas.
  5. Solicitudes (request)
  6. Mensajes para solicitar la ejecución de tareas, obtención de información o inicio de flujos entre agentes y herramientas.
  7. Respuestas (response)
  8. Mensajes de retorno con los resultados, datos o estados derivados de una solicitud previa.
  9. Eventos (event)
  10. Notificaciones sobre cambios de estado, incidencias, progresos o cualquier suceso relevante en el sistema.
  11. Aprobaciones y Checkpoints (governance/approval)
  12. Mensajes para gestionar puntos de control humano, aprobaciones, revisiones y auditoría de decisiones críticas.
  13. Integración de Herramientas (tool/integration)
  14. Mensajes para interactuar con sistemas externos, ejecutar comandos, recibir resultados o integrar eventos de herramientas de terceros.
  15. Auditoría y Trazabilidad (audit/log)
  16. Mensajes para registrar acciones, decisiones y eventos relevantes, asegurando la trazabilidad y el cumplimiento normativo.

Cada tipo de mensaje puede tener subtipos, parámetros y extensiones según el caso de uso y la evolución del protocolo. Todos los mensajes siguen el formato estructurado de JSON-RPC 2.0 para garantizar la interoperabilidad y la extensibilidad.


Agentes y Capacidades

En el protocolo HugAI, los agentes son entidades autónomas o semiautónomas que ofrecen capacidades especializadas (análisis, diseño, implementación, testing, operaciones, gobernanza, etc.). La gestión de sus capacidades es fundamental para la orquestación eficiente y segura de los flujos de trabajo.

Registro de Agentes

  • Cada agente debe registrarse en el sistema (directamente o a través de un coordinador), anunciando su identidad, tipo, capacidades y nivel de gobernanza soportado.
  • El registro incluye metadatos como nombre, versión, autor, descripción, tareas soportadas, entradas/salidas y requisitos de configuración.

Descripción y Negociación de Capacidades

  • Las capacidades de un agente se describen mediante un esquema estructurado (por ejemplo, lista de tareas, tipos de datos soportados, restricciones, dependencias).
  • Durante la inicialización o en tiempo de ejecución, los agentes pueden negociar capacidades con otros agentes o herramientas, permitiendo la adaptación dinámica a distintos flujos y contextos.
  • La negociación puede incluir: asignación de tareas, delegación, escalación, o ajuste de parámetros según la disponibilidad y el contexto del sistema.

Actualización y Descubrimiento Dinámico

  • El protocolo soporta la actualización dinámica de capacidades (por ejemplo, cuando un agente aprende una nueva tarea o se actualiza su modelo).
  • Los agentes y herramientas pueden descubrir y consultar las capacidades de otros agentes registrados en cualquier momento, facilitando la colaboración y la resiliencia del sistema.

Esta gestión estructurada y dinámica de capacidades permite construir ecosistemas flexibles, escalables y seguros, donde cada agente aporta valor de manera controlada y auditable.


Flujos de Comunicación

El protocolo HugAI define flujos de comunicación estructurados para garantizar la coordinación, trazabilidad y gobernanza en todo el ciclo de vida:

  1. Inicialización
  2. Un agente o herramienta inicia la conexión, negocia capacidades y establece el contexto de trabajo.
  3. Orquestación de Tareas
  4. Los agentes coordinan la asignación, ejecución y seguimiento de tareas, compartiendo contexto y resultados según las reglas de gobernanza.
  5. Checkpoints de Gobernanza
  6. En puntos críticos, se requiere intervención humana para aprobar, rechazar o solicitar revisiones antes de continuar.
  7. Escalación y Resolución de Incidencias
  8. Si un agente detecta un problema fuera de su alcance, escala la incidencia a un humano o a un agente de gobernanza para su resolución.
  9. Cierre y Auditoría
  10. Al finalizar un flujo, se registran los resultados, decisiones y aprendizajes para auditoría y mejora continua.

Estos flujos aseguran que la automatización esté siempre bajo control humano y que todas las acciones sean trazables y auditables.


Seguridad y Gobernanza

La seguridad y la gobernanza son pilares fundamentales del protocolo HugAI:

  • Autenticación y Autorización: Todos los agentes y herramientas deben autenticarse y estar autorizados para participar en los flujos. Se recomienda el uso de tokens, certificados o mecanismos equivalentes.
  • Trazabilidad y Auditoría: Todas las acciones, decisiones y eventos relevantes deben ser registrados para permitir auditoría, cumplimiento normativo y análisis forense.
  • Control Humano: Los puntos de control, aprobaciones y revisiones humanas son obligatorios en tareas críticas o sensibles.
  • Gestión de Permisos y Roles: El protocolo permite definir roles y permisos granulares para limitar el alcance de cada agente o herramienta.
  • Protección contra Sesgos y Errores: Se recomienda la validación cruzada y la revisión humana para mitigar riesgos asociados a sesgos o errores de los modelos de IA.

Extensibilidad y Versionado

El protocolo HugAI está diseñado para evolucionar y adaptarse:

  • Extensión de Mensajes: Se pueden agregar nuevos tipos de mensajes, métodos y parámetros sin romper la compatibilidad con versiones anteriores.
  • Negociación de Versiones: Durante la inicialización, los participantes negocian la versión del protocolo y las extensiones soportadas.
  • Capacidades Personalizadas: Los agentes pueden anunciar y negociar capacidades específicas, permitiendo la integración de nuevas funciones o dominios.
  • Deprecación y Migración: Se definen mecanismos para deprecar mensajes o capacidades y migrar a nuevas versiones de manera controlada.

Ejemplos de Implementación

A continuación se presentan ejemplos mínimos de mensajes y flujos:

  • Inicialización de un agente:

    {
      "jsonrpc": "2.0",
      "method": "initialize",
      "params": {
        "agentId": "test-agent-1",
        "capabilities": ["code-generation", "testing"],
        "governanceLevel": "supervised"
      }
    }
    

  • Solicitud de tarea:

    {
      "jsonrpc": "2.0",
      "method": "agent/request",
      "params": {
        "sourceAgent": "test-agent-1",
        "targetAgent": "test-agent-2",
        "task": "generate-tests",
        "context": {"file": "main.ts"},
        "priority": "high"
      }
    }
    

  • Aprobación humana:

    {
      "jsonrpc": "2.0",
      "method": "governance/approval",
      "params": {
        "checkpoint": "code-review",
        "artifact": {"file": "main.ts", "diff": "..."},
        "approver": "user-123",
        "decision": "approved",
        "feedback": "Looks good."
      }
    }
    


Roadmap y Futuras Extensiones

  • Integración con sistemas de identidad y permisos avanzados.
  • Soporte para nuevos tipos de agentes y capacidades (por ejemplo, agentes de compliance, agentes de explainability).
  • Extensión a dominios fuera del desarrollo de software (por ejemplo, operaciones, seguridad, data science).
  • Herramientas de validación, simulación y testing del protocolo.
  • Comunidad y marketplace de agentes certificados.
  • Integración con estándares emergentes de IA responsable y ética.

NOTA: Este documento es el punto de partida para la versión 2 del protocolo HugAI. Cada sección será completada y mejorada iterativamente.