Robin AI-powered OSINT Tool

repository·main·Indexed 26 days ago

https://github.com/apurvsinghgautam/robin

An AI-powered OSINT tool for dark web investigations that utilizes LLMs to refine search queries, filter results from dark web engines, and provide conversational summaries. It supports multiple LLM providers, including Ollama and OpenAI-compatible APIs, and requires Tor for network connectivity.

Tokens
704
Snippets
3
Records
5
Agent score
42%

What's inside Robin

  1. Install and run Robin using Python

    main

    If you prefer running Robin in a development environment, ensure you have Python 3.10+ and Tor installed.

    1. Install dependencies: pip install -r requirements.txt
    2. Launch the Streamlit UI: streamlit run ui.py
    3. Access the interface at http://localhost:8501.
    pip install -r requirements.txt
    streamlit run ui.py
  2. Install Robin via Docker (Recommended)

    main

    The recommended way to run Robin is using Docker. This ensures an isolated environment. You must have Tor installed on your host machine for searches to work.

    To run Robin with your .env file and access the Web UI at http://localhost:8501:

    1. Pull the image: docker pull apurvsg/robin:latest
    2. Run the container with the following command to map your environment variables and allow communication with local services (like Ollama).
    docker pull apurvsg/robin:latest
    
    docker run --rm \
       -v "$(pwd)/.env:/app/.env" \
       --add-host=host.docker.internal:host-gateway \
       -p 8501:8501 \
       apurvsg/robin:latest
  3. Persist investigations in Docker

    main

    By default, Docker containers are ephemeral. To save your investigation reports so they can be loaded from the Past Investigations panel in the sidebar after a restart, mount a local directory to /app/investigations inside the container.

    docker run --rm \
       -v "$(pwd)/.env:/app/.env" \
       -v "$(pwd)/investigations:/app/investigations" \
       --add-host=host.docker.internal:host-gateway \
       -p 8501:8501 \
       apurvsg/robin:latest
  4. Configure LLM API Keys and Providers

    main

    Robin supports multiple LLM providers. You can configure them in two ways:

    1. Environment Variables or .env file

    Set your API keys in a .env file or as environment variables in your PATH.

    Special Configuration for Ollama:

    • If running via Docker: Set OLLAMA_BASE_URL=http://host.docker.internal:11434
    • If running via Python: Set OLLAMA_BASE_URL=http://127.0.0.1:11434
    • You may need to serve Ollama on 0.0.0.0 by running: OLLAMA_HOST=0.0.0.0 ollama serve &

    2. Custom API Providers (UI-based)

    For OpenAI-compatible providers (e.g., LM Studio, llama.cpp, Groq), use the 🔌 Custom API Provider expander in the Streamlit sidebar. You can enter:

    • Base URL
    • Optional API key
    • Optional model name (if the provider doesn't support /v1/models auto-discovery)