oproxy es un proxy local de código abierto, publicado bajo licencia MIT, diseñado para interceptar, inspeccionar, reproducir y modificar tráfico de red HTTP, HTTPS y SOCKS5 desde la propia máquina del desarrollador o dentro de un contenedor Docker. La herramienta combina un núcleo escrito en Rust con una interfaz de gestión en Node.js y se orienta a profesionales que necesitan depurar navegadores, interfaces de línea de comandos, aplicaciones móviles, clientes de API, servicios backend y suites de pruebas sin alterar el código de la aplicación.
Su funcionamiento sigue el esquema clásico de un proxy man-in-the-middle: el cliente se configura para enviar el tráfico a oproxy en 127.0.0.1:8080 y la herramienta lo registra y lo muestra. Para capturar HTTPS, oproxy genera una autoridad certificadora (CA) local que debe instalarse como confiable en el navegador o en el sistema operativo; a partir de ahí descifra el tráfico CONNECT y registra cabeceras, cuerpos, códigos de estado, tiempos, etiquetas y notas. Las sesiones capturadas pueden guardarse y exportarse como HAR, cURL, Fetch o fragmentos de Python, lo que facilita la reproducción de errores y la generación de fixtures de prueba.
Entre las funciones de modificación incluye conjuntos de reglas, redirecciones remotas (map-remote) y locales (map-local), controles de acceso, limitación de ancho de banda, puntos de interrupción, respuestas simuladas, anulaciones de DNS, filtros de captura, scripts en Lua y encadenamiento con proxies ascendentes. Incorpora además un asistente autenticado que utiliza un modelo de chat compatible con la API de OpenAI para inspeccionar el estado de la sesión y proponer cambios confirmados por el usuario.
Casos de uso habituales son depurar una petición del navegador sin tocar el código, reproducir una solicitud tras editar cabeceras o cuerpo, probar un frontend frente a mocks o fixtures locales, enrutar parte del tráfico a un entorno de staging, simular respuestas lentas o de bajo ancho de banda, y validar el comportamiento de un cliente cuando se bloquean, redirigen o reescriben peticiones. Como contrapartida, la compilación local exige Rust 1.85 o superior y Node.js 22 o superior, con la interfaz construida mediante Yarn a través de Corepack; la alternativa es la imagen oficial en GitHub Container Registry (ghcr.io/sauravrao637/oproxy:latest), que simplifica la puesta en marcha y persiste certificados y estado local mediante volúmenes Docker.
