OSINTverse

otinstaller · Web and search

Install CrossLinked on Linux in one command

CrossLinked scrapes search engines for LinkedIn results about a company and turns the names it finds into email addresses in the format you specify. It never touches LinkedIn directly.

CrossLinked in three lines

pipx install otinstaller
ot install crosslinked
ot run crosslinked -- u:jane_doe

Runs m8sec/CrossLinked (GPL-3.0, ★ 1.6k, otinstaller v0.0.4, registry updated Oct 13, 2026). otinstaller installs and runs it; it does not change or verify it.

What CrossLinked is for

  • Building a staff list for an authorised assessment.
  • Guessing the email format of an organisation.

Typed inputs for CrossLinked

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

u:
username · ot run crosslinked -- u:jane_doe
e:
email · ot run crosslinked -- e:jane@example.com

It also takes name input through its own flags; there is no typed prefix for those yet.

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

Where the results go

Every run lands under ./results/crosslinked/<target>/ as a timestamped output file plus a .meta.json sidecar: the exact command, start and end time, exit code, and the SHA-256 of the output. Group runs with --case, compare the last two with ot diff crosslinked <target>, and pull indicators out with ot extract.

Before you run it

  • Takes a company name and a format string such as {first}.{last}@example.com with the original flags; the typed prefixes only cover the simple cases.
  • Search engines rate limit scraping. Keep runs small.

Update, remove, inspect

ot info crosslinked      # inputs, flags, keys
ot example crosslinked   # sample output
ot update crosslinked    # move to the next tested version
ot remove crosslinked    # delete its virtualenv

Full reference for this tool: docs for crosslinked.

Pairs with

pywerview is a Python port of PowerView for enumerating Active Directory from Linux: users, groups, computers, shares, and sessions, over LDAP and SMB with domain credentials you hold..
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.
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.

When open-source isn't enough

CrossLinked guesses addresses. SearchIn's email-discovery provider returns verified addresses and the pattern a domain really uses.

People & identity

FAQ

CrossLinked with otinstaller, answered

How do I install CrossLinked on Kali or Ubuntu?

Install otinstaller once with pipx install otinstaller, run ot init, then ot install crosslinked. The tool lands in its own virtualenv under ~/.otinstaller/, pinned to a version that was tested on Ubuntu, so nothing touches your system Python. ot doctor flags a missing git or venv module.

Which inputs does CrossLinked take through otinstaller?

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

Where does otinstaller save CrossLinked results?

Under ./results/crosslinked/<target>/ in the folder you run from, as a timestamped output file plus a .meta.json sidecar with the exact command, timing, exit code, and SHA-256. Add --case <name> to group runs, and ot diff crosslinked <target> to compare the last two.

Does CrossLinked need an API key or a login?

No key is required for the basic run. Optional keys, where the project supports them, go in ~/.otinstaller/.env and are passed only to tools that declare them.

Can I run CrossLinked together with other tools?

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