otlite · Frameworks
Install pywerview on Linux or macOS in one command
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.
pywerview in three lines
pipx install otlite
otlite install pywerview
otlite run pywerview -- --helpRuns the-useless-one/pywerview (GPL-3.0, ★ 1.1k, 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 pywerview is for
- AD enumeration during an authorised internal assessment.
- Mapping group membership without a Windows host.
Typed inputs for pywerview
pywerview has no typed input. Pass its own arguments after --; otlite info pywerview shows an example.
Where the results go
Every run lands under ./results/pywerview/<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 pywerview <target>, and pull indicators out with otlite extract pywerview.
Before you run it
- Needs domain credentials and network access to a domain controller. This is internal network tooling, not open-source intelligence in the public sense.
Update, remove, inspect
otlite info pywerview # inputs, keys, an example command
otlite example pywerview # sample output, where there is one
otlite update pywerview # move to the next tested version
otlite remove pywerview # delete its virtualenvFull reference: the otlite docs, and the tool's own README on GitHub.
Pairs with
FAQ
pywerview with otlite, answered
How do I install pywerview 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 pywerview. 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 pywerview take through otlite?
pywerview does not take a typed input; pass its own arguments after --. otlite info pywerview prints what it accepts and an example command.
Where does otlite save pywerview results?
Under ./results/pywerview/<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 pywerview <target> to compare the last two.
Does pywerview need an API key or a login?
Yes. Needs domain credentials and network access to a domain controller. This is internal network tooling, not open-source intelligence in the public sense. 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 pywerview together with other tools?
Not through --all, because pywerview has no typed input. Run it on its own, or put it in a playbook with explicit arguments.