OSINTverse

otlite · Phone

Install whatsapp-osint on Linux or macOS in one command

whatsapp-osint logs when a WhatsApp contact goes online and offline, through WhatsApp Web in a browser session you control. It produces a timeline, not message content.

whatsapp-osint in three lines

pipx install otlite
otlite install whatsapp-osint
otlite run whatsapp-osint -- --help

Runs jasperan/whatsapp-osint (MIT, ★ 1.5k, otlite 1.2.1, catalog updated Oct 23, 2026). otlite installs and runs it at a tested version; it does not change or verify the tool itself.

What whatsapp-osint is for

  • Activity timelines for a number you are authorised to monitor.

Typed inputs for whatsapp-osint

whatsapp-osint has no typed input. Pass its own arguments after --; otlite info whatsapp-osint shows an example.

whatsapp-osint keeps running until you stop it, so otlite run --all and otlite auto skip it. Run it on its own.

otlite marks it dual-use, so it asks you to accept a responsible-use notice before it installs.

Where the results go

Every run lands under ./results/whatsapp-osint/<target>/ as a timestamped output file, a .meta.json sidecar (the exact command, start and end time, exit code, and the SHA-256 of the output), and a .envelope.json with the entities found, in the same shape for every tool. List runs with otlite results, group them with --case, compare the last two with otlite diff whatsapp-osint <target>, and pull indicators out with otlite extract whatsapp-osint.

Before you run it

  • Needs a logged-in WhatsApp Web session and a browser driver. It runs until stopped.
  • This is monitoring of a person. Confirm your legal basis before you start it.

Update, remove, inspect

otlite info whatsapp-osint      # inputs, keys, an example command
otlite example whatsapp-osint   # sample output, where there is one
otlite update whatsapp-osint    # move to the next tested version
otlite remove whatsapp-osint    # delete its virtualenv

Full reference: the otlite docs, and the tool's own README on GitHub.

Pairs with

Ignorant checks whether a phone number is registered on a handful of apps such as Snapchat and Instagram, using the same sign-up checks Holehe uses for email.
Toutatis pulls the public and semi-public fields of an Instagram account: user ID, bio, follower counts, and the obfuscated email or phone Instagram shows on password reset.
This Bellingcat tool checks, through your own Telegram login, whether a number or username has an account.

FAQ

whatsapp-osint with otlite, answered

How do I install whatsapp-osint on Kali, Ubuntu, or macOS?

Install otlite once with pipx install otlite (or the one-line installer on the otlite page), run otlite init, then otlite install whatsapp-osint. The tool lands in its own virtualenv under ~/.otlite/, pinned to a version that was tested, so nothing touches your system Python. otlite doctor prints the command that fixes a missing git or venv module.

Which inputs does whatsapp-osint take through otlite?

whatsapp-osint does not take a typed input; pass its own arguments after --. otlite info whatsapp-osint prints what it accepts and an example command.

Where does otlite save whatsapp-osint results?

Under ./results/whatsapp-osint/<target>/ in the folder you run from, as a timestamped output file plus a .meta.json sidecar (the exact command, timing, exit code, and SHA-256) and a .envelope.json with the entities found. Add --case <name> to group runs, otlite results to list them, and otlite diff whatsapp-osint <target> to compare the last two.

Does whatsapp-osint need an API key or a login?

Yes. Needs a logged-in WhatsApp Web session and a browser driver. It runs until stopped. Keys go in with otlite keys set NAME, which stores them in ~/.otlite/.env with permissions 600, and otlite keys check verifies them.

Can I run whatsapp-osint together with other tools?

Not under --all. whatsapp-osint keeps running until you stop it, so otlite run --all and otlite auto skip it on purpose. Run it on its own, ideally inside tmux or as a service.