OSINTverse

otlite · Frameworks

Install secator on Linux or macOS in one command

secator wraps dozens of recon and scanning tools behind one command with a shared output format, and runs them as tasks, workflows, or full scans. It installs the underlying tools for you.

secator in three lines

pipx install otlite
otlite install secator
otlite run secator -- u:jane_doe

Runs freelabz/secator (Other, ★ 1.3k, 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 secator is for

  • Standardised JSON output across many scanners.
  • Repeatable recon workflows for authorised targets.

Typed inputs for secator

otlite translates these prefixes into secator's own flags. Anything else after -- is passed through unchanged, so every original flag still works.

u:
Username · otlite run secator -- u:jane_doe
e:
Email · otlite run secator -- e:jane@example.com
d:
Domain · otlite run secator -- d:example.com

Run every installed tool that takes the same input at once: otlite run --all u:jane_doe

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/secator/<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 secator <target>, and pull indicators out with otlite extract secator.

Before you run it

  • Its workflows can be active scans. Check what a workflow does before pointing it at a host.
  • Installing the wrapped tools pulls in Go and other runtimes.

Update, remove, inspect

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

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

Pairs with

BBOT is a recursive scanner that starts from a domain or IP, discovers subdomains, hosts, and services, and feeds each finding back in as a new target.
SpiderFoot runs two hundred-odd modules against a domain, IP, email, or username and links what they return into one graph.
FinalRecon runs a set of web recon checks against a URL in one go: headers, SSL certificate, WHOIS, crawler, DNS, subdomains, directory search, and a port scan.

FAQ

secator with otlite, answered

How do I install secator 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 secator. 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 secator take through otlite?

u: (username), e: (email), d: (domain). otlite maps each prefix to secator's own flag. Everything after -- that is not a typed input is passed through unchanged, so the original flags still work.

Where does otlite save secator results?

Under ./results/secator/<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 secator <target> to compare the last two.

Does secator need an API key or a login?

No key is required for the basic run. Optional keys, where the project supports them, go in with otlite keys set NAME and are passed only to tools that declare them.

Can I run secator together with other tools?

Yes. otlite run --all u:jane_doe runs every installed tool that takes username input, in parallel, including secator. Save the combination as a playbook to repeat it.