>_ DevTrendses

Idioma

Inicio

Lenguajes

Secciones

Frontend Backend Móvil DevOps AI / ML GameDev Blockchain Embebidos Seguridad
Python

Basta de Chatbots, Hora de Construir Agentes Reales con OpenHarness

¿Conoces esa sensación cuando ChatGPT te da una sugerencia de código decente, pero para usarla necesitas crear el archivo tú mismo, pegar el texto, ejecutar las pruebas y luego corregir un par de imports? Nos hemos acostumbrado a llamar a esto "asistencia de IA", cuando en realidad es solo búsqueda avanzada con una interfaz de chat.

Hace unos días me topé con el repositorio OpenHarness del equipo HKUDS. Los tipos decidieron que ya basta de chatbots—es hora de darle a los modelos de lenguaje "manos". El proyecto es una infraestructura para construir agentes autónomos que no solo conversan, sino que viven en tu terminal, navegan por la web y editan código por su cuenta.

OpenHarness    ohmo

Qué es el Agent Harnessing

Los autores usan un término acertado—Harness. La idea es que un LLM por sí solo es solo un "cerebro en un frasco." Para convertirse en un agente, necesita ojos (contexto), manos (herramientas) y memoria.

OpenHarness es un framework Python que maneja todo el trabajo pesado:

  • Gestionar el ciclo del Agent Loop (petición — streaming — llamada de herramienta — repetir).
  • Control de acceso (para que el agente no borre accidentalmente la raíz de tu disco).
  • Integración con MCP (Model Context Protocol).
  • Organización de memoria a través de archivos como MEMORY.md.

Lo mejor es que el proyecto no te ata a una nube específica. Puedes ejecutarlo con Claude o OpenAI, o pasar a través de un modelo local vía Ollama.

Harness Equation

Cinco Cosas que OpenHarness Puede Hacer

Revisé el código fuente y el README, y esto es lo que parece más útil para el trabajo diario del desarrollador.

Herramientas Listas para Usar

El repositorio ya tiene más de 40 herramientas implementadas. No es solo "ejecutar un script bash." Hay búsqueda de archivos vía Grep, soporte para Jupyter notebooks, navegación web, e incluso la capacidad de crear otros agentes para delegar tareas. Las herramientas están tipadas con Pydantic, así que el modelo entiende el esquema de datos de entrada sin alucinaciones extra.

Sistema de Skills

En lugar de hinchar el system prompt hasta el tamaño de "Guerra y Paz", OpenHarness usa carga dinámica de skills desde archivos Markdown. Si un agente necesita hacer una revisión de código, carga review.md. Si necesita desplegar un proyecto—agarra el skill correspondiente. Esto ahorra tokens y hace el comportamiento de la IA más predecible.

Seguridad y Niveles de Acceso

Siempre me ha dado miedo darle a la IA acceso al terminal. OpenHarness resuelve esto a través de Permission Modes. En el modo por defecto, el agente preguntará confirmación antes de cada operación peligrosa (escritura de archivos, ejecución de comandos). También existe Plan Mode—donde el agente solo puede leer archivos y sugerir cambios, pero no toca nada con sus manos.

Asistente Personal Ohmo

Dentro del repositorio vive el proyecto ohmo. Es una aplicación de agente lista para usar que puedes conectar a Telegram, Slack o Discord. Le escribes en el messenger, y crea ramas Git, corrige bugs y abre PRs en tu estación de trabajo. Esto funciona a través de suscripciones existentes (como Claude Code o Codex), así que no pagarás extra por llamadas a la API.

Modo Dry Run

Una característica útil para debugging. El comando oh --dry-run muestra qué configuración se cargó, qué claves están activas y qué herramientas estarán disponibles para el modelo—sin enviar una sola petición a la nube de pago.

OpenHarness Terminal Demo

Cómo Funciona Por Dentro

La arquitectura del proyecto es bastante transparente. Todo está dividido en subsistemas independientes:

  1. Engine: el corazón del sistema, gestionando el loop de razonamiento del modelo.
  2. Permissions: una capa que verifica cada llamada de herramienta contra reglas (por ejemplo, bloqueando ediciones a /etc/).
  3. UI: una bonita interfaz de terminal construida con React e Ink. Sí, justo en la consola.
  4. Coordinator: maneja escenarios multi-agente cuando una tarea se divide en múltiples subtareas para "ayudantes".

Interesantemente, el proyecto soporta el protocolo MCP. Esto significa que puedes conectar cualquier servidor de contexto a tu agente—digamos, una base de datos o una API específica—y inmediatamente aprenderá a trabajar con ella.

Escenarios Prácticos

¿Por qué integrar esto en tu flujo de trabajo?

Primero, automatizar tareas rutinarias. Puedes pedirle al agente: "Encuentra todos los imports sin usar en la carpeta src y elimínalos, luego ejecuta las pruebas." Mientras está ocupado con los archivos, tú tomas tu café.

Segundo, trabajar con código legacy desconocido. El agente puede escanear el proyecto, construir un mapa de dependencias y explicar cómo funciona un módulo específico usando herramientas de búsqueda de código.

Tercero, crear tus propios bots especializados. Si tu empresa tiene un proceso de despliegue específico, solo escribes SKILL.md con una descripción de los pasos, y tu agente ahora sabe cómo desplegar proyectos exactamente como tú lo haces.

¿Vale la Pena Probarlo

El proyecto se ve activo: 114 tests pasando y actualizaciones frecuentes (la versión 0.1.7 se lanzó hace apenas unos días). Las desventajas—la documentación a veces te obliga a profundizar en el código, y aunque se dice que el soporte para Windows es nativo, en PowerShell requiere usar el comando openh en lugar del corto oh.

Si estás cansado de copiar y pegar código del chat a tu IDE y quieres sentir lo que los agentes realmente pueden hacer, OpenHarness es un gran punto de partida. Al menos, es uno de los pocos proyectos que intentan hacer la infraestructura de agentes comprensible y extensible.

Puedes comenzar con una instalación simple:

curl -fsSL https://raw.githubusercontent.com/HKUDS/OpenHarness/main/scripts/install.sh | bash
oh setup

Y luego simplemente prueba pedirle que corrija algo en tu proyecto personal. Los resultados podrían sorprenderte.

Proyectos relacionados