Skip to main content

Bidoytu

Bidoytu

A focused desktop HTTP interception and testing workspace for authorized security work.

Release CI MIT License

Bidoytu is a Python desktop application for inspecting, modifying, and replaying HTTP traffic through a local mitmproxy engine. It combines live history, request interception, Repeater workflows, and an extensible Intruder foundation in one PySide6 interface.

Highlights

  • Local HTTP/HTTPS proxy with editable interception and forward/drop controls.
  • Traffic history backed by SQLite with content-addressed storage for large bodies.
  • Repeater requests powered by an asynchronous httpx client.
  • Display-only formatting for JSON, XML/HTML, and URL-encoded bodies.
  • Public CA certificate export for HTTPS interception on machines you control.
  • Windows and Linux packaging through GitHub Actions.

Requirements

  • Python 3.11 or newer
  • Windows or Linux

Quick start

python -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install -e .
bidoytu

Alternatively, run python -m bidoytu.

Start the proxy from the Proxy tab. The default listener is 127.0.0.1:8080. To inspect HTTPS traffic, start the proxy once, export the public CA certificate from the UI, and trust it only on a machine you own or are authorized to administer.

Architecture

Layer Responsibility
ui/ PySide6 windows, tabs, editors, views, and Qt signal wiring
proxy/ mitmproxy engine, flow capture, and interception control
net/ Async HTTP sending for Repeater and Intruder workflows
storage/ SQLite history, flow models, and large-body file storage
http_utils.py Raw HTTP parsing, rebuilding, and display helpers
scripts/ Headless smoke checks and focused live verification

Qt is intentionally isolated to ui/. The proxy, networking, and storage layers communicate through framework-independent models and thread-safe signals.

Development workflow

Development work is integrated through staging:

git switch staging
git pull --ff-only origin staging
git switch -c feature/short-description

Open pull requests against staging. Keep main reserved for reviewed, release-ready changes. The release workflow runs on pushes to main, on version tags, and through manual dispatch; pushes to staging do not publish releases.

See CONTRIBUTING.md for checks and pull-request expectations.

Verification

python -m compileall -q src
python scripts/smoke_test.py

Run the relevant live scripts from scripts/ when changing proxy, interception, Repeater, compression, port, or CA behavior. They require network access and use QT_QPA_PLATFORM=offscreen.

Packaging and releases

CI builds Windows and Linux artifacts with PyInstaller. Versioned releases are created from v* tags, and tagged releases are also published to PyPI through Trusted Publishing. See packaging/build_release.md for the complete release procedure.

Responsible use

Use Bidoytu only against systems and traffic you own or are explicitly authorized to test. Installing a MITM CA or intercepting traffic without permission may be illegal. See SECURITY.md for security reporting and data-handling guidance.

License

Bidoytu is released under the MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bidoytu-1.1.2.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bidoytu-1.1.2-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file bidoytu-1.1.2.tar.gz.

File metadata

  • Download URL: bidoytu-1.1.2.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bidoytu-1.1.2.tar.gz
Algorithm Hash digest
SHA256 a09853b42046615939dcd603f52d6430e96db07830a63d72d5132c1855a7754e
MD5 ab15ee8f1863c21eb2a18eb7391a6794
BLAKE2b-256 874ffcd5fb5e71e092a3a2678c566cbeb012192bc0b8aaac0409abee05dc8d51

See more details on using hashes here.

Provenance

The following attestation bundles were made for bidoytu-1.1.2.tar.gz:

Publisher: main.yml on Bidoytu/Bidoytu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bidoytu-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: bidoytu-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bidoytu-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6832004453839f7c12a8420ddabadf0b82665d77354ad80cb24b98a5dd2e5499
MD5 85d60fc749133ca98f5b49ab2455465a
BLAKE2b-256 87e11e729ea70cbf1999584589927f269123b788b92da7b6a31c4fa530c1a731

See more details on using hashes here.

Provenance

The following attestation bundles were made for bidoytu-1.1.2-py3-none-any.whl:

Publisher: main.yml on Bidoytu/Bidoytu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.1.2 This release

2 files

1.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page