Voidly

Voidly Probes

Your network.
A clearer picture.

Measure what your connection can reach. Contribute observations to the public censorship record—one vantage point at a time.

Measurement traffic is observable. Read the risks before you install. Participation is not a promise of payment.

Operator visibilityWithheld by design
Per-probe and operator listings are withheld to protect volunteer operators. Aggregate probe counts are also temporarily withheld.

One read call.
Incident totals.

Probe aggregates are temporarily withheld to protect volunteers. This public read returns incident totals from the retained record. It needs no account or key and does not run a probe.

Public REST · read only

curl -fsS https://api.voidly.ai/data/incidents/stats

These totals describe incident records, not probe coverage or current accessibility. Check the response metadata before citing them. A failed or missing response is unavailable, not zero.

01 / Read

Inspect one public incident totals response.

02 / Interpret

Read the incident types and source basis before drawing a conclusion.

03 / Cite

Keep the endpoint, response metadata and access date with your citation.

Probe publication is on hold.

Aggregate probe counts are temporarily withheld to protect volunteers. Unavailable counts remain blank; public incident totals do not substitute for probe coverage.

—
Nodes with results · 24h
—
Countries with results · 24h
—
Raw result rows · 24h
—
Blocked flags · raw 24h

Aggregate probe counts are temporarily withheld to protect volunteers. This is a publication hold, not a loading error.

Per-probe and operator listings are withheld to protect volunteer operators. Missing counts are not zero and do not establish downstream acceptance.

Metric source and reporting window

The withheld metrics describe distinct nodes and countries with raw result rows, plus result rows and blocked flags, over a 24-hour window. They do not establish independent operators or downstream acceptance. No probe count is published here while the hold remains.

Add a vantage point.
Start with the risks.

Choose a desktop download or a command-line client. Probing tests the network it runs on; using a VPN changes the observation point unless the client explicitly bypasses that tunnel.

Desktop probe app

Choose the build for the computer that will run your probe.

Registration guide
Download for macOS

Notarized · Universal · app (.tar.gz)

macOS download notes

Signed and notarized by Ai Analytics LLC. If macOS cannot verify the downloaded app, verify its source before deciding whether to allow it in System Settings → Privacy & Security.

Probes connect to the served target list from your network. Your ISP can observe those destinations. Review the full risks and inspect the current list before starting.

Python quickstart

Installing does not start the probe. Start it only after you understand the traffic and public record.

1 · Install only

python3 -m pip install voidly-probe

This installs the published package. It does not register a node or make measurements.

2 · Start after review

voidly-probe --consent

This registers your node and begins recurring network measurements. The currently published package may start immediately; read its consent text, the served targets and the risks below first.

After starting, run voidly-probe --status to check your local client. A registry counter or last-seen time is not a downstream accepted-measurement receipt. Your Node ID and token save to ~/.voidly/node.json; keep that file private. Public operator profiles are withheld by design.

Operator listings are withheld.

Per-probe and operator rankings are withheld by design to protect volunteer operators. Aggregate probe counts are also temporarily withheld. The incident totals above describe a separate public record.

A measurement.
Not a hidden service.

The probe client makes outbound measurements and submits the results. It does not carry another person’s traffic. Check the client and the served target list before participating.

  1. Understand

    Read the target list and operational risks.

  2. Install

    Choose the app or a command-line client.

  3. Measure

    Test reachability from your own network.

  4. Contribute

    Submit observations to the public record.

More perspectives make the record more useful.

Explore the public record before contributing. Only contribute from a network where you understand the risks and have permission to run measurements. Sparse coverage is not a reason to put yourself at risk.

Read this before you install.

Repeated connections to blocked destinations are observable. Country, city and measurements become public. If you need to be unlinkable, do not run a probe.

Operational risks, publication and stopping
Your network operator can see what you connect to

The probe makes ordinary DNS, TLS and HTTP requests. It does not tunnel or obfuscate them. An ISP, a national middlebox or anyone on your local network sees the destinations — including news sites, VPN vendors, Tor and human-rights organisations — and sees them on a fixed schedule, which is itself distinctive. We cannot make that traffic look like anything else, and we do not claim to.

The target list is set by us, not by you

In continuous mode, the probe fetches the served list on startup and periodically after that (about daily at the default interval), replacing its built-in list with whatever api.voidly.ai/v1/probe/domains returns. If that fetch fails, or you use --once, the Python client uses its smaller bundled list. So the set of things your connection reaches can change without you upgrading anything. Read that endpoint before installing if the answer matters to you; it is public and needs no key.

It never carries anyone else's traffic

The probe is not a relay, a proxy, a VPN or an exit node. It makes outbound requests to its target list and reports the results. Other people's traffic is not forwarded through your probe, but your own measurement traffic remains visible to your network operator.

The traffic has a recognizable pattern

Requests to the Voidly API carry VoidlyProbe/<version> in the User-Agent. Target-site HTTP checks use a browser-like User-Agent, while DNS and TLS checks do not necessarily carry one. Repeated checks of the served target list are still observable and may identify this as measurement traffic.

Where the legal exposure actually sits

In some jurisdictions, running measurement infrastructure or reaching circumvention sites carries legal risk to you, not to us. The probe prints a warning when it registers from CN, IR, KP, TM, ER, RU, SA, CU, SY, MM or BY, but that list is our guess and it is not legal advice. A VPN moves the observation point; it does not remove it — and it also changes what the measurement means, since you are then measuring the VPN's network rather than yours. Assess the risks to you and anyone sharing your connection before deciding to participate.

What is published about your node

Your node ID, country, city and measurement timeline can become public, and a claimed display name or handle can link the record to you. The client may contact ipinfo.io to determine location unless you configure an override; your ISP and the services you contact can see your connection. An API-side IP hash does not make a city plus timeline anonymous. If you need to be unlinkable, do not run a probe.

How to stop

Stop the process to stop new measurements. voidly-probe --unregisterremoves the local identity; it does not revoke the remote token or remove the public registration. Check ~/.voidly/pending_results.json for any unsent local results. Previously submitted observations may remain public and may already have downstream copies.

Security policy ↗ · Read the source ↗ · security@voidly.ai

Know what you share.

Measurement is not anonymity. Public records can be copied downstream, and a location plus a measurement timeline may identify a node.

Measurement data

  • Domain and blocked / accessible result
  • Latency and detected blocking method
  • Country and city from ipinfo.io or configured overrides
  • Node ID and timestamped public results

No browsing-history collection is required for these probe measurements. The configured probe list is not a list of websites you visited. Inspect the served target list before each run if its contents matter to your safety.

Read the served target list
Where is my node identity?

The Node ID and token are stored in ~/.voidly/node.json. Do not post that file or share the token. Public operator profiles are withheld by design.

Can I run on a VPS or spare computer?

The download and CLI options above support several environments. Measurements describe the network where that machine runs, not necessarily where you live. Review the source and the host’s rules first.

What happens when I stop?

Stop the probe process to stop new measurements. Local unregister does not revoke its remote token or erase the public record. Check for unsent pending results. Previously submitted observations may already have downstream copies.

Follow your measurements into Atlas.

The useful outcome is a better-grounded record. Inspect observations and evidence, not only scores.

Operator locations and per-probe records are withheld to protect volunteer operators. Atlas provides the public censorship record.