AttackMap · Getting started
Install
AttackMap needs Python 3.11+. It isn’t on PyPI: it installs from the Homebrew tap, the M&L AI package index or GitHub.
The CLI and all 15 official analyzer plugins:
brew install mlaify/tap/attackmapThe CLI and all 15 official analyzer plugins, from pkg.mlaify.io:
uv tool install "attackmap[all]" --index mlaify=https://pkg.mlaify.io/pypi/simple/ --index-strategy first-indexCore only, from GitHub:
pipx install git+https://github.com/mlaify/AttackMap.gitCore only, from GitHub:
pip install git+https://github.com/mlaify/AttackMap.gitOptional: LLM support#
The AI-review modes work through the claude / codex CLIs with no extra
install. To use the API backends instead, add the LLM extra (pulls in the
anthropic and openai SDKs):
pip install "attackmap[llm] @ git+https://github.com/mlaify/AttackMap.git"See AI review for how backends and credentials resolve.
Optional: everything#
The all extra adds all 15 official ecosystem analyzer plugins up front, each
pinned to its release on pkg.mlaify.io. Homebrew installs them too. Without
them, a plain attackmap analyze never installs plugins; use
attackmap suggest . --install or --module <name> (see
Analyzers):
uv tool install "attackmap[all]" --index mlaify=https://pkg.mlaify.io/pypi/simple/ --index-strategy first-indexThe plugins are published only on pkg.mlaify.io, not on PyPI, so use uv’s
--index-strategy first-index, which takes each package from the first index
that has it. Avoid pip install --extra-index-url: pip takes the highest
version from any index, so a package with the same name published on PyPI
could be installed instead.
macOS app#
Prefer a GUI? The native macOS front end drives the same CLI. The cask installs the CLI too:
brew install --cask mlaify/tap/attackmap-appOr build it from source: mlaify/AttackMap-mac.
See macOS app.
Verify#
attackmap --help
attackmap modules # list installed analyzer modules