Repository navigation
04 Quick Start
Esta guía te ayudará a capturar tu primera petición HTTP en menos de 5 minutos.
cd Blackwire
make runmake run instala dependencias, arranca el backend y lanza la ventana de la app nativa de escritorio. Ya no compila ningún frontend ni abre http://localhost:5000 en el navegador: la interfaz es una aplicación de escritorio nativa (PySide6/Qt).
Alternativas:
make serve # backend en primer plano (Ctrl-C para parar), sin app
make start # backend en segundo plano, sin app
python desktop/run.py # lanza la app de escritorio (tras 'make start')Si es la primera vez, ejecuta antes
make install(crea el venv, instala dependencias y genera el certificado mitmproxy).
- En la pestaña Projects de la app de escritorio, click "Create New Project"
- Ingresa un nombre (ej. "my-first-project")
- Click "Create"
Los proyectos organizan tu trabajo - cada uno tiene su propia base de datos SQLite.
- Click el botón "▶ Start" en el control de proxy de la barra de estado (abajo)
- Confirma que el puerto es 8080 (default)
- El proxy está ahora escuchando en
localhost:8080(puedes pararlo con "■ Stop" en el mismo control)
Este navegador es la fuente de tráfico objetivo que quieres interceptar: es algo distinto de la interfaz de BlackWire (que ya es una app de escritorio nativa, no una pestaña del navegador). Necesitas apuntar ese navegador al proxy de BlackWire. La forma más rápida es el atajo integrado; si prefieres usar tu propio navegador, configúralo manualmente.
BlackWire puede abrir un navegador con un perfil dedicado ya configurado para usar el proxy (incluye los flags para ignorar errores de certificado en Chromium):
- Desde la app de escritorio: usa el botón "Launch Browser", o
- Vía API:
POST /api/browser/launch(parámetro opcionalproxy_port, por defecto 8080).
Detecta automáticamente Chromium, Chrome, Brave o Firefox y arranca con un perfil aislado. Es la opción más rápida para empezar a capturar sin tocar la configuración de tu navegador habitual.
# Crear perfil temporal
firefox -P temp-profile --no-remote
# En Firefox Preferences:
# Network Settings → Manual Proxy Configuration
# HTTP Proxy: localhost
# Port: 8080
# Marca: "Also use this proxy for HTTPS"- Instala la extensión FoxyProxy
- Crea un proxy con:
- Hostname:
localhost - Port:
8080 - Type: HTTP
- Hostname:
- Activa el proxy
GNOME:
gsettings set org.gnome.system.proxy mode 'manual'
gsettings set org.gnome.system.proxy.http host 'localhost'
gsettings set org.gnome.system.proxy.http port 8080Para ver tráfico HTTPS necesitas el certificado CA instalado en el navegador. La Opción A ya ignora los errores de certificado en navegadores Chromium; para las demás, sigue Certificados SSL.
- En tu navegador configurado, visita: http://example.com
- En la app de escritorio, ve a la pantalla Proxy → sub-tab HTTP history
- Verás todas las peticiones capturadas en tiempo real
Cada request muestra:
- Método HTTP (GET, POST, etc.)
- Host y path
- Status code
- Tamaño de response
- Timestamp
- Click en cualquier request de la lista
- El panel derecho muestra:
- Request tab: Headers y Body enviados
- Response tab: Headers y Body recibidos
- Click "Pretty Print" para formatear JSON/XML/HTML
- Click derecho en un request → "Send to Repeater"
- Ve a la pestaña Repeater (barra superior)
- Modifica el request (headers, body, URL)
- Click "Send" para reenviar
- Inspecciona la response
Para pausar y modificar requests en tiempo real:
- En la pantalla Proxy, abre el sub-tab Intercept
- Activa "Intercept Requests"
- Navega en tu navegador
- Cada request se pausará en BlackWire
- Modifica lo que necesites
- Click "Forward" para enviar o "Drop" para descartar
En el campo de búsqueda de HTTP history (pantalla Proxy), prueba:
# Solo requests GET
req.method eq GET
# Solo responses exitosas
resp.code eq 200
# Filtrar por host
req.host cont example.com
# Combinar filtros
req.method eq POST AND resp.code gte 400
Cuando termines:
make stopmake stop detiene el backend. El proxy en sí se detiene desde el control de proxy de la barra de estado con el botón "■ Stop".