Privacy Policy

Last updated: July 2026

Overview

This privacy policy applies to the Wisper Tunnel Chrome extension, the Wisper desktop application, and the Wisper Go server binary. All three products share the same data-handling principles described below.

Wisper is designed to give you control over your tunnels and your data. Each tunnel has a recording mode setting that lets you decide what level of traffic data, if any, is captured for the traffic inspector. Your personal configuration and credentials stay on your device.

Recording mode — your control

Every Wisper tunnel has a Recording option with three levels:

  • Off (default) — No traffic data is captured. Only aggregate byte and connection counts are collected. This is the privacy-safe default for all new tunnels.
  • Headers only — Request/response metadata is recorded: HTTP method, URL, status code, and headers. Body content is excluded. This data is transmitted to the Wisper server for inspector access.
  • Full — Request/response headers and body are recorded for debugging purposes. This captures the complete HTTP or WebSocket message content, transmitted to and stored on the Wisper server.

Recording mode is configured per-tunnel and can be changed at any time. When set to Off, no request or response content leaves your device through the inspector pipeline.

TCP and UDP tunnels are not subject to traffic inspection — only aggregate byte and connection counts are recorded, regardless of the recording mode setting.

What data we collect

Nothing personal. Wisper does not collect, transmit, or sell any personal information, usage analytics, or telemetry.

When you enable recording on an HTTP or WebSocket tunnel (Headers only or Full mode), Wisper captures request and response data according to the recording mode you selected. This data is transmitted to and stored on the Wisper server (wisper.gost.run), retained for 7 days, and is accessible through the inspector UI in the desktop app and at inspector.gost.run.

When recording is set to Off (the default), no HTTP request/response data is captured or transmitted.

Data stored on your device

Wisper stores the following data locally on your device. This data does not leave your device except as needed to route tunnel traffic. See the "Tunnel traffic" section below for information about inspector data transmitted to the Wisper server.

Chrome extension (chrome.storage.local):

  • Tunnel configuration — local endpoint address, optional basic-auth credentials (username/password), optional custom hostname, and the tunnel name and ID.
  • UI preferences — theme selection (light / dark / system) and language preference (English / Chinese).

Desktop app (Go binary, config file at ~/.config/wisper/config.yml):

  • Tunnel and entrypoint configuration — the same tunnel definitions, serialized as YAML on disk.
  • Logs — operation logs written to ~/.config/wisper/logs/ (JSON, 10 MB rotation, 7-day retention). These are only used for debugging and are never transmitted.

What Wisper stores that relates to you personally:

  • Basic-auth credentials (username/password) if you enable authentication on a tunnel. These are stored locally and sent to your target service when it requests authentication — Wisper does not transmit them anywhere else.
  • No cookies, no tracking identifiers, no advertising IDs, no analytics tokens.

Tunnel traffic

When a tunnel is active, Wisper relays bytes between a public *.gost.run endpoint and your local service over a secure WebSocket (WSS) connection through the GOST relay network.

  • What is relayed: The raw bytes of the HTTP, TCP, or UDP session you are tunneling.
  • Inspector recording: When recording is enabled on an HTTP or WebSocket tunnel (Headers only or Full mode), Wisper captures request and response data (headers, URL, method, status code, and — in Full mode — body content) and sends it to the Wisper server (wisper.gost.run) where it is stored for 7 days to power the built-in traffic inspector, accessible via the desktop app or at inspector.gost.run. The recording mode is configurable per-tunnel via the Recording option. TCP and UDP tunnels are not inspected — only aggregate byte/connection counts are recorded.
  • Encryption: All relay traffic is encrypted in transit via WSS (WSS over TLS).
  • Server-side storage: The Wisper server retains inspector data (HTTP/WS request/response records) for up to 7 days.

Third-party services

Wisper uses the following third-party infrastructure solely as a transport layer:

  • gost.run GOST relay nodes that forward tunnel traffic. The Wisper server (wisper.gost.run) also stores HTTP/WebSocket inspector data for up to 7 days (see "Tunnel traffic" above).

No third-party analytics, ad networks, or tracking services are used by Wisper.

Data retention and deletion

  • Chrome extension: All data is removed when you delete the tunnel from the extension, or when you uninstall the extension from Chrome.
  • Desktop app: Delete ~/.config/wisper/ to remove all locally stored configuration and logs.
  • Traffic inspector data: When recording is enabled (Headers only or Full mode), HTTP/WebSocket request and response data is stored on the Wisper server (wisper.gost.run) and retained for 7 days, after which it is automatically deleted. When recording is Off (the default), no request/response data is stored. The inspector is accessible via the desktop app or inspector.gost.run. TCP/UDP tunnels store only aggregate byte/connection counts.
  • Logs: Operation logs follow a 10 MB rotation with 7-day retention, stored at ~/.config/wisper/logs/.
  • Server-side data: Inspector data stored on the Wisper server is automatically removed after 7 days. To request earlier deletion, please contact us via GitHub or Telegram.

Changes to this policy

If this policy changes materially, the date at the top of this page will be updated. Continued use of Wisper after a change constitutes acceptance of the updated policy.

Contact

If you have questions about this privacy policy, please open an issue on GitHub or reach out via the Telegram group.