
Устанавливает, запускает, обновляет и удаляет open-source OSINT-инструменты командной строки по имени, с типизированными входными данными, выводом в JSON и сохранением результатов для автоматизированных рабочих процессов разведки.
Устанавливайте, запускайте, обновляйте и удаляйте open-source инструменты командной строки по имени.
Вы выбираете инструмент из списка. OTinstaller скачивает его в свою собственную папку, запускает и сохраняет вывод. Вам не нужно изучать отдельный способ установки для каждого инструмента.
otinstaller опубликован на PyPI (версия 0.0.1).
Машина на Linux. Протестировано на Ubuntu 22.04 и 24.04, Debian 12 и Arch Linux. Kali Linux проверяется вручную перед релизом.
Python 3.10–3.12, git и модуль venv. В Debian, Ubuntu и Kali установите этот модуль командой:
sudo apt install python3-venv git
Ubuntu 26.04 LTS поставляется с Python 3.14 по умолчанию, а другие дистрибутивы теперь также поставляются с Python 3.13+. otinstaller и некоторые из управляемых им инструментов требуют Python 3.10–3.12, поэтому в таких системах установите Python 3.12 явно и запускайте otinstaller внутри virtualenv, созданного с его помощью:
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
uv venv --python 3.12 ~/.otinstaller-venv
source ~/.otinstaller-venv/bin/activate
uv pip install otinstaller
В virtualenv, созданном uv, нет pip, поэтому команда установки — uv pip install otinstaller. Запускайте source ~/.otinstaller-venv/bin/activate снова в любом новом терминале перед использованием otinstaller. otinstaller doctor выводит версию Python, под которой он работает, и отмечает любой зарегистрированный инструмент, которому нужна другая версия.
Системный Python в Ubuntu 22.04 и 24.04 уже работает. Метод с uv был протестирован только на Ubuntu 26.04.
Некоторые управляемые инструменты пока не поддерживают Python 3.13+. Матрица тестирования охватывает Python 3.10–3.12. Известные затронутые инструменты:
auto-archiver: требует Python <3.13 (зависимость pdqhash нуждается в компиляторе C++, нет wheel для 3.13+)telepathy: требует Python <3.13 (зависимость googletrans/httpx использует удалённый модуль cgi)Если вы столкнётесь с ошибками установки на Python 3.13+, запустите otinstaller в virtualenv с Python 3.12.
Для общесистемной установки используйте pipx install otinstaller. Это предоставляет команды otinstaller и ot в вашем PATH без virtualenv.
Либо создайте virtualenv и установите из PyPI:
python3 -m venv ~/.otinstaller-venv
source ~/.otinstaller-venv/bin/activate
pip install otinstaller
Запускайте source ~/.otinstaller-venv/bin/activate снова в любом новом терминале перед использованием otinstaller.
Чтобы установить из этого репозитория (для разработки):
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Запустите source .venv/bin/activate снова из этой папки в любом новом терминале, если следующая команда сообщает otinstaller: command not found.
Проверьте машину командой:
otinstaller doctor
doctor выводит [ok] или [problem] для Linux, Python, git и venv. Исправьте любую строку [problem] перед тем, как продолжить. Часто она подсказывает, какой пакет установить.
init создаёт ~/.otinstaller/ и показывает уведомление об ответственном использовании. Он спрашивает Do you accept? [y/N]. Введите y и нажмите Enter. Пока вы этого не сделаете, ничего нельзя установить.
otinstaller init
Sherlock ищет имя пользователя. При установке он спрашивает Install? [y/N]. Заглавная N означает, что один Enter означает «нет». Введите y, чтобы продолжить.
otinstaller install sherlock
otinstaller run sherlock -- someexampleuser123
-- отмечает, где заканчиваются собственные опции otinstaller. Всё после него передаётся Sherlock. Когда запуск завершается, otinstaller выводит путь внутри results/ в папке, где вы запустили команду. Этот файл — вывод инструмента.
Чтобы попробовать другой инструмент, используйте его имя из руководства вместо sherlock.
Вместо запоминания флагов каждого инструмента вы можете использовать префиксы типизированных входных данных:
u: имя пользователя (например, u:johndoe)e: email (например, e:[email protected])p: телефон (например, p:+15551234567)d: домен (например, d:example.com)url: URL (например, url:https://example.com)q: текстовый запрос (например, q:search terms)geo: координаты (например, geo:32.22,-110.97)tg: Telegram-канал (например, tg:channelname)lat: широта (например, lat:37.7749)lng: долгота (например, lng:-122.4194)Пример:
otinstaller run sherlock -- u:johndoe
otinstaller run ghunt -- u:johndoe e:[email protected]
Каждый инструмент объявляет, какие типы входных данных он поддерживает. Используйте otinstaller info <tool>, чтобы увидеть соответствие.
Запустите каждый установленный инструмент, поддерживающий заданный тип входных данных:
otinstaller run --all u:johndoe
otinstaller run -a u:johndoe e:[email protected]
С --all работают только u, e, p, d и url. Инструменты, требующие учётных данных API, пропускаются, если не передан --include-credentialed.
Каждая команда поддерживает --json для машиночитаемого вывода. Команды никогда не запрашивают ввод, когда задан --yes или -y, либо когда stdin не является терминалом (режим CI). Коды выхода стабильны: 0 = успех, 1 = ошибка, 2 = неверный ввод, 130 = прервано.
Справочник команд:
otinstaller init — Инициализировать конфигурацию и каталогиotinstaller install <tool>... — Установить инструментыotinstaller install --all — Установить все доступные инструменты из реестраotinstaller remove <tool>... / --all — Удалить инструментыotinstaller run <tool>... -- <args> — Запустить инструментыotinstaller run --all u:... — Запустить все подходящие инструментыotinstaller run --live — Показать таблицу статуса в реальном времени для параллельных запусковotinstaller run --case <name> — Сгруппировать запуски под именованным кейсомotinstaller info <tool> — Показать сведения об инструментеotinstaller list / --installed — Список инструментовotinstaller search <query> — Поиск инструментовotinstaller update / --all / --check-only — Обновить инструментыotinstaller check-updates — Проверить обновления (только чтение)otinstaller auto <target> — Автоопределение типа и запуск инструментовotinstaller example <tool> — Показать пример выводаotinstaller keys check — Проверить ключи APIotinstaller resume — Возобновить прерванные заданияotinstaller doctor — Запустить диагностикуotinstaller about — Показать баннер «о программе» с благодарностямиotinstaller extract <target> — Извлечь индикаторы из сохранённых файлов результатовotinstaller diff <tool> <target> — Сравнить два последних запуска одного инструмента по одной и той же целиotinstaller playbook [name] [target] — Запустить плейбукotinstaller playbook --list — Список доступных плейбуковotinstaller <tool> — Показать сведения об инструменте (то же, что info <tool>)Для ИИ-агентов: см. llms.txt в корне репозитория.
Результаты автоматически сохраняются в ./results/<tool>/<target>/ с шаблоном имени файла <YYYYmmdd-HHMMSS>_<tool>_<target>_<runid>.<ext> плюс сопутствующий файл .meta.json. Каталог результатов можно переопределить с помощью --output или OTINSTALLER_RESULTS_DIR. Результаты сохраняются в ./results/ в папке, где запущена команда, поэтому запускайте её каждый раз из одной и той же папки.
Пример:
results/sherlock/testuser/20260929-123456_sherlock_testuser_abc123.txt
results/sherlock/testuser/20260929-123456_sherlock_testuser_abc123.meta.json