BMI2 Get the beta

TestPulse Pro · public beta

Runs on your machine. Points at your server.

Evidence-first AAA diagnostics for your own lab. Point it at your RADIUS or TACACS+ server and get a named cause with the evidence behind it. If you have nothing to point it at, the lab we develop against is here too.

TestPulse Pro BETA · v0.1.1

The API, the viewer, the diagnosis engine and 31 CLI commands, in one pure-Python wheel. No cluster, no container, no second service. Python 3.10 or newer.

Download the wheel testpulse-0.1.1-py3-none-any.whl · 2.7 MB
SHA-256 30e7b37b2cafdca44f01b43581d116b787790e0246786b69bb95e64d33ee2ed2
python3 -m venv .venv && source .venv/bin/activate
pip install testpulse-0.1.1-py3-none-any.whl
export TESTPULSE_API_TOKEN="$(python3 -c 'import secrets;print(secrets.token_urlsafe(32))')"
testpulse-api

Open http://127.0.0.1:8000. The viewer is served by the same process — there is no second container to run. First start takes up to a minute while the modules load.

Optional

No server to point it at?

Pro diagnoses a real server; it does not simulate one. If you have nothing to point it at, this is the lab we develop against — the AAA devices, packaged so you can stand them up yourself. We do not host it and we do not run it for you.

Virtual AAA Lab v0.1.0

Real 802.1X, RADIUS, TACACS+, DHCP and directory traffic on a single Kubernetes host — real EAPOL frames on the wire, not simulated ones.

Download the lab testpulse-vlab-0.1.0.tar.gz · 134 KB
SHA-256 fa6568354eee5a849ced6ee446e7d86c8f71a4b7cf25126fef07babd3cff533f

It needs a machine of its own

6cores

a minimum, not a recommendation

32GB RAM

both planes contend below this

200GB disk

eviction is total, not partial

An undersized lab does not fail visibly

Below the floor the lab's planes contend for CPU, and the inflated latency reads as a transport fault in a diagnosis. It gives you confident wrong answers rather than an error you would notice.

What's inside

FreeRADIUS — auth, accounting, CoAtac_plusOpenLDAP DNSDHCP802.1X authenticatorsupplicants RouterOS switch VMLinux endpoint VMs

Plus the build stages, three health checks, an operating guide, and an AI administrator that runs the lab so you should not need kubectl. It carries 14 real failure modes with the tell that separates each from the fault it is usually mistaken for.

The VM plane needs hardware virtualization

Without it the switch and endpoint VMs stay down and the AAA path still works — every device that authenticates is a container.

More about the Virtual Lab →

Documentation

Both guides ship with the download.

A download that works offline should not send you online to learn how to use it. Each guide is in the archive it belongs to — and readable here first, so you can see what you are getting before you get it.

PDF · SHIPS WITH THE WHEEL

TestPulse Pro — User Guide

Install, first run, diagnosing a log you already have, pointing it at your testbed, reading a diagnosis, packet capture, AI narration, MCP and the CLI. Everything in it was run against the shipped package — where a command's output is shown, that is its real output.

PDF · SHIPS WITH THE LAB

Virtual Lab — Administration and Troubleshooting

What to ask the AI administrator, how to read what it tells you, and — most importantly — how to tell a broken lab apart from a real diagnostic finding. Includes the three health checks, the hypervisor settings, sizing, and the lab credentials.

Before you install

Verify what you downloaded.

Two steps, in this order. The first says the checksum manifest really came from us; the second says the files match it. The second alone is not enough — anyone who could replace the wheel could replace the manifest beside it, and the pair would still agree.

gpg --verify SHA256SUMS.asc SHA256SUMS   # is the manifest ours?
sha256sum -c SHA256SUMS                  # do the files match it?

If this release shipped without SHA256SUMS.asc, it is unsigned

Run the second command alone and treat the result as "these files are self-consistent", not "these files are ours". Those are different claims and only one of them is about us.

Be straight with yourself first

What this beta is.

  • Runs entirely on your machine. Parsing, correlation, the deterministic diagnosis and the evidence bundle make no network call.
  • AI narration is optional and uses your keypip install 'testpulse[ai]'. There is no hosted model in the beta, and that key is a cost you carry.
  • Ships sample evidence and a runnable test suite, so the panels have something to show before you have connected anything.
  • The Trainer and vendor plugins are separate products and are absent — not disabled. A greyed-out panel advertising something it can never run is worse than no panel.
  • No billing, no SLA. Support is one person reading email.

Feedback goes through the product — testpulse-diagnose feedback — or the Feedback tab in the viewer. It never includes your raw logs or captures. If you need a person, support@bmi2.com.