
Instala, ejecuta, actualiza y elimina herramientas de línea de comandos OSINT de código abierto por nombre, con entradas tipadas, salida JSON y resultados guardados para flujos de trabajo de reconocimiento automatizados.
Instala, ejecuta, actualiza y elimina herramientas de línea de comandos de código abierto por nombre.
Eliges una herramienta de una lista. OTinstaller la descarga en su propia carpeta, la ejecuta y guarda la salida. No tienes que aprender un método de instalación distinto para cada herramienta.
otinstaller está publicado en PyPI (versión 0.0.1).
Una máquina Linux. Probado en Ubuntu 22.04 y 24.04, Debian 12 y Arch Linux. Kali Linux se verifica manualmente antes de un lanzamiento.
Python 3.10 a 3.12, git y el módulo venv. En Debian, Ubuntu y Kali, instala ese módulo con:
sudo apt install python3-venv git
Ubuntu 26.04 LTS incluye Python 3.14 por defecto, y otras distribuciones ahora también incluyen Python 3.13+. otinstaller y algunas de sus herramientas gestionadas requieren Python 3.10–3.12, así que en estos sistemas instala Python 3.12 explícitamente y ejecuta otinstaller dentro de un virtualenv creado con él:
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
Un virtualenv creado con uv no tiene pip, así que el comando de instalación es uv pip install otinstaller. Ejecuta source ~/.otinstaller-venv/bin/activate de nuevo en cualquier terminal nueva antes de usar otinstaller. otinstaller doctor imprime la versión de Python con la que se está ejecutando y señala cualquier herramienta registrada que necesite una diferente.
El Python del sistema en Ubuntu 22.04 y 24.04 ya funciona. El método con uv se probó solo en Ubuntu 26.04.
Algunas herramientas gestionadas aún no admiten Python 3.13+. La matriz de pruebas cubre Python 3.10–3.12. Herramientas afectadas conocidas:
auto-archiver: requiere Python <3.13 (la dependencia pdqhash necesita un compilador de C++, no hay wheel para 3.13+)telepathy: requiere Python <3.13 (la dependencia googletrans/httpx usa el módulo cgi, que fue eliminado)Si encuentras fallos de instalación en Python 3.13+, ejecuta otinstaller en un virtualenv de Python 3.12.
Para una instalación en todo el sistema, usa pipx install otinstaller. Esto proporciona los comandos otinstaller y ot en tu PATH sin un virtualenv.
Como alternativa, crea un virtualenv e instala desde PyPI:
python3 -m venv ~/.otinstaller-venv
source ~/.otinstaller-venv/bin/activate
pip install otinstaller
Ejecuta source ~/.otinstaller-venv/bin/activate de nuevo en cualquier terminal nueva antes de usar otinstaller.
Para instalar desde este repositorio (para desarrollo):
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Ejecuta source .venv/bin/activate de nuevo desde esta carpeta en cualquier terminal nueva si el siguiente comando dice otinstaller: command not found.
Comprueba la máquina con:
otinstaller doctor
doctor imprime [ok] o [problem] para Linux, Python, git y venv. Corrige cualquier línea [problem] antes de continuar. A menudo te indica el paquete que debes instalar.
init crea ~/.otinstaller/ y muestra un aviso de uso responsable. Pregunta Do you accept? [y/N]. Escribe y y pulsa Enter. No se puede instalar nada hasta que lo hagas.
otinstaller init
Sherlock busca un nombre de usuario. Esta instalación pregunta Install? [y/N]. La N mayúscula significa que pulsar Enter solo equivale a no. Escribe y para continuar.
otinstaller install sherlock
otinstaller run sherlock -- someexampleuser123
El -- marca dónde terminan las opciones propias de otinstaller. Todo lo que va después se pasa a Sherlock. Cuando la ejecución termina, otinstaller imprime una ruta bajo results/ en la carpeta donde ejecutaste el comando. Ese archivo es la salida de la herramienta.
Para probar una herramienta diferente, usa su nombre de la guía en lugar de sherlock.
En lugar de recordar las opciones de cada herramienta, puedes usar prefijos de entrada tipada:
u: nombre de usuario (p. ej., u:johndoe)e: correo electrónico (p. ej., e:[email protected])p: teléfono (p. ej., p:+15551234567)d: dominio (p. ej., d:example.com)url: URL (p. ej., url:https://example.com)q: consulta de texto (p. ej., q:search terms)geo: coordenadas (p. ej., geo:32.22,-110.97)tg: canal de Telegram (p. ej., tg:channelname)lat: latitud (p. ej., lat:37.7749)lng: longitud (p. ej., lng:-122.4194)Ejemplo:
otinstaller run sherlock -- u:johndoe
otinstaller run ghunt -- u:johndoe e:[email protected]
Cada herramienta declara qué tipos de entrada admite. Usa otinstaller info <tool> para ver la asignación.
Ejecuta todas las herramientas instaladas que admitan un tipo de entrada dado:
otinstaller run --all u:johndoe
otinstaller run -a u:johndoe e:[email protected]
Solo u, e, p, d y url funcionan con --all. Las herramientas que requieren credenciales de API se omiten a menos que se pase --include-credentialed.
Todos los comandos admiten --json para salida legible por máquina. Los comandos nunca preguntan cuando se indica --yes o -y, ni cuando stdin no es un terminal (modo CI). Los códigos de salida son estables: 0 = éxito, 1 = error, 2 = entrada no válida, 130 = interrumpido.
Referencia de comandos:
otinstaller init — Inicializa la configuración y los directoriosotinstaller install <tool>... — Instala herramientasotinstaller install --all — Instala todas las herramientas disponibles del registrootinstaller remove <tool>... / --all — Elimina herramientasotinstaller run <tool>... -- <args> — Ejecuta herramientasotinstaller run --all u:... — Ejecuta todas las herramientas coincidentesotinstaller run --live — Muestra una tabla de estado en vivo para ejecuciones en paralelootinstaller run --case <name> — Agrupa ejecuciones bajo un caso con nombreotinstaller info <tool> — Muestra los detalles de la herramientaotinstaller list / --installed — Lista herramientasotinstaller search <query> — Busca herramientasotinstaller update / --all / --check-only — Actualiza herramientasotinstaller check-updates — Busca actualizaciones (solo lectura)otinstaller auto <target> — Detecta el tipo automáticamente y ejecuta herramientasotinstaller example <tool> — Muestra una salida de ejemplootinstaller keys check — Comprueba las claves de APIotinstaller resume — Reanuda trabajos interrumpidosotinstaller doctor — Ejecuta diagnósticosotinstaller about — Muestra el banner about con los créditosotinstaller extract <target> — Extrae indicadores de los archivos de resultados guardadosotinstaller diff <tool> <target> — Compara las dos ejecuciones más recientes de la misma herramienta contra el mismo objetivootinstaller playbook [name] [target] — Ejecuta un playbookotinstaller playbook --list — Lista los playbooks disponiblesotinstaller <tool> — Muestra los detalles de la herramienta (igual que info <tool>)Para agentes de IA: consulta llms.txt en la raíz del repositorio.
Los resultados se guardan automáticamente en ./results/<tool>/<target>/ usando el patrón de nombre de archivo <YYYYmmdd-HHMMSS>_<tool>_<target>_<runid>.<ext> más un archivo auxiliar .meta.json. El directorio de resultados se puede sobrescribir con --output o OTINSTALLER_RESULTS_DIR. Los resultados se guardan en ./results/ en la carpeta donde se ejecuta el comando, así que ejecútalo desde la misma carpeta cada vez.
Ejemplo: