Testing / Console
Live Gearbox console with Start/Kill controls, real-time output streaming, subprocess management, and QR codes for the mobile companion.
Overview
The Testing tab is Gauntlet's live console — the primary interface for running Gearbox against the device under test. It shows real-time stdout/stderr from Gearbox, handles interactive prompts (photo capture requests, confirmation dialogs), and provides subprocess visibility.
Console Output
The main panel streams Gearbox output in real time via SocketIO. All output is timestamped and buffered (up to 2,000 entries) so late-joining devices see the session history. Output is also persisted to scan.log on disk for post-assessment auditability.
Gearbox communicates with Gauntlet via __GB_* protocol tokens embedded in its stdout:
| Token | Purpose |
|---|---|
__GB_LOG__: | Structured log entry (level + message). Appears in the Logs tab. |
__GB_STATUS__: | Module status update (which interface/instance/module is currently running and its state). |
__GB_FINDING__: | New security finding discovered. Appears in the Findings tab. |
__GB_PROMPT__: | Interactive prompt requiring user input (photo capture, confirmation, text input). Gauntlet renders a UI dialog and sends the response back via stdin. |
Controls
Interactive Prompts
Gearbox is interactive — it pauses at certain points to request tester action. When a __GB_PROMPT__ token arrives, Gauntlet renders an appropriate dialog:
| Prompt Type | What Happens |
|---|---|
| Photo capture | Gearbox needs a photo of a physical interface (e.g., "Take a photo of Ethernet port eth0 on Main Board"). The dialog shows a QR code linking to the mobile companion's camera page for that specific instance and module. |
| Confirmation | Yes/No questions (e.g., "Is the cable now connected to eth0?"). Buttons send the answer back to Gearbox's stdin. |
| Text input | Free-form input requests (e.g., entering an IP address detected via DHCP). A text field sends the response back to stdin. |
Subprocess Tree
While Gearbox is running, the Testing tab shows a live subprocess tree. This displays all child processes spawned by Gearbox (nmap, tcpdump, nessus, responder, etc.) with their PIDs, command lines, and runtime. Individual subprocesses can be killed from this view without terminating the parent Gearbox process.
QR Codes
When Gearbox starts, Gauntlet generates QR codes for each detected network interface on the testing machine. These QR codes link to the Mobile Companion join page (https://<ip>:<port>/join/<project_id>). This allows a second device (phone or tablet) to join the session for photo capture without typing URLs.
If the testing machine has multiple network interfaces (e.g., Wi-Fi and Ethernet), each gets its own QR code so the mobile device can connect via whichever network is reachable.
Console History
Console output is buffered in memory (2,000 entries max per project) and also reconstructed from on-disk logs when needed. If Gauntlet restarts mid-assessment, opening the Testing tab rebuilds the console history from scan.log and gearbox_log.jsonl files in the project directory.