{"id":49060434,"url":"https://github.com/apurvsinghgautam/Robin","last_synced_at":"2026-05-06T06:01:32.353Z","repository":{"id":287106498,"uuid":"962685604","full_name":"apurvsinghgautam/robin","owner":"apurvsinghgautam","description":"AI-Powered Dark Web OSINT Tool","archived":false,"fork":false,"pushed_at":"2026-03-31T16:02:29.000Z","size":30974,"stargazers_count":4614,"open_issues_count":14,"forks_count":900,"subscribers_count":51,"default_branch":"main","last_synced_at":"2026-03-31T18:07:06.215Z","etag":null,"topics":["ai-tool","darkweb","darkweb-osint","investigation-tool","llm-powered","osint","osint-tool"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apurvsinghgautam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-08T14:20:34.000Z","updated_at":"2026-03-31T16:49:00.000Z","dependencies_parsed_at":"2025-04-10T01:41:10.475Z","dependency_job_id":"d16e2e47-3546-46f0-bc5a-1e346f17f989","html_url":"https://github.com/apurvsinghgautam/robin","commit_stats":null,"previous_names":["apurvsinghgautam/robin"],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/apurvsinghgautam/robin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apurvsinghgautam%2Frobin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apurvsinghgautam%2Frobin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apurvsinghgautam%2Frobin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apurvsinghgautam%2Frobin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apurvsinghgautam","download_url":"https://codeload.github.com/apurvsinghgautam/robin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apurvsinghgautam%2Frobin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32680890,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T02:33:58.958Z","status":"ssl_error","status_checked_at":"2026-05-06T02:33:39.611Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-tool","darkweb","darkweb-osint","investigation-tool","llm-powered","osint","osint-tool"],"created_at":"2026-04-20T02:00:27.297Z","updated_at":"2026-05-06T06:01:32.302Z","avatar_url":"https://github.com/apurvsinghgautam.png","language":"Python","funding_links":[],"categories":["OSINT Agents \u0026 Tools"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\r\n   \u003cimg src=\".github/assets/logo.png\" alt=\"Logo\" width=\"300\"\u003e\r\n   \u003cbr\u003e\u003ca href=\"https://github.com/apurvsinghgautam/robin/actions/workflows/release.yml\"\u003e\u003cimg alt=\"Release\" src=\"https://github.com/apurvsinghgautam/robin/actions/workflows/release.yml/badge.svg\"\u003e\u003c/a\u003e \u003ca href=\"https://github.com/apurvsinghgautam/robin/releases\"\u003e\u003cimg alt=\"GitHub Release\" src=\"https://img.shields.io/github/v/release/apurvsinghgautam/robin\"\u003e\u003c/a\u003e \u003ca href=\"https://hub.docker.com/r/apurvsg/robin\"\u003e\u003cimg alt=\"Docker Pulls\" src=\"https://img.shields.io/docker/pulls/apurvsg/robin\"\u003e\u003c/a\u003e\r\n   \u003ch1\u003eRobin: AI-Powered Dark Web OSINT Tool\u003c/h1\u003e\r\n\r\n   \u003cp\u003eRobin is an AI-powered tool for conducting dark web OSINT investigations. It leverages LLMs to refine queries, filter search results from dark web search engines, and provide an investigation summary.\u003c/p\u003e\r\n   \u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e \u0026bull; \u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e \u0026bull; \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e \u0026bull; \u003ca href=\"#acknowledgements\"\u003eAcknowledgements\u003c/a\u003e\u003cbr\u003e\u003cbr\u003e\r\n\u003c/div\u003e\r\n\r\n![Demo](.github/assets/screen-ui.png)\r\n\r\n\r\n## Architecture\r\n![Workflow](.github/assets/robin-workflow.png)\r\n\r\n---\r\n\r\n## Features\r\n\r\n- ⚙️ **Modular Architecture** – Clean separation between search, scrape, and LLM workflows.\r\n- 🤖 **Multi-Model Support** – Easily switch between OpenAI, Claude, Gemini or local models like Ollama.\r\n- 🌐 **Web UI** – Streamlit-based interface for interactive investigations.\r\n- 🐳 **Docker-Ready** – Recommended Docker deployment for clean, isolated usage.\r\n- 📝 **Custom Reporting** – Save investigation output to file for reporting or further analysis.\r\n- 🧩 **Extensible** – Easy to plug in new search engines, models, or output formats.\r\n\r\n---\r\n\r\n## ⚠️ Disclaimer\r\n\u003e This tool is intended for educational and lawful investigative purposes only. Accessing or interacting with certain dark web content may be illegal depending on your jurisdiction. The author is not responsible for any misuse of this tool or the data gathered using it.\r\n\u003e\r\n\u003e Use responsibly and at your own risk. Ensure you comply with all relevant laws and institutional policies before conducting OSINT investigations.\r\n\u003e\r\n\u003e Additionally, Robin leverages third-party APIs (including LLMs). Be cautious when sending potentially sensitive queries, and review the terms of service for any API or model provider you use.\r\n\r\n## Installation\r\n\u003e [!NOTE]\r\n\u003e The tool needs Tor to do the searches. You can install Tor using `apt install tor` on Linux/Windows(WSL) or `brew install tor` on Mac. Once installed, confirm if Tor is running in the background.\r\n\r\n\u003e [!TIP]\r\n\u003e You can provide your LLM of choice API key by either creating .env file (refer to sample env file in the repo) or by setting env variables in PATH.\r\n\u003e\r\n\u003e For Ollama, provide `http://host.docker.internal:11434` as `OLLAMA_BASE_URL` in your env if running using docker method or `http://127.0.0.1:11434` for other methods. You might need to serve Ollama on 0.0.0.0 depending on your OS. You can do by running `OLLAMA_HOST=0.0.0.0 ollama serve \u0026` in your terminal.\r\n\r\n### Docker [Recommended]\r\n\r\n- Pull the latest Robin docker image\r\n```bash\r\ndocker pull apurvsg/robin:latest\r\n```\r\n\r\n- Run the docker image as:\r\n```bash\r\ndocker run --rm \\\r\n   -v \"$(pwd)/.env:/app/.env\" \\\r\n   --add-host=host.docker.internal:host-gateway \\\r\n   -p 8501:8501 \\\r\n   apurvsg/robin:latest\r\n```\r\n\r\n\u003e [!TIP]\r\n\u003e To persist saved investigations across Docker restarts, mount a local directory:\r\n\u003e ```bash\r\n\u003e docker run --rm \\\r\n\u003e    -v \"$(pwd)/.env:/app/.env\" \\\r\n\u003e    -v \"$(pwd)/investigations:/app/investigations\" \\\r\n\u003e    --add-host=host.docker.internal:host-gateway \\\r\n\u003e    -p 8501:8501 \\\r\n\u003e    apurvsg/robin:latest\r\n\u003e ```\r\n\u003e Investigations are saved to the `investigations/` folder in your working directory and can be loaded from the **Past Investigations** panel in the sidebar.\r\n\r\n- Open your browser and navigate to `http://localhost:8501`\r\n\r\n### Using Python (Development Version)\r\n\r\n- With `Python 3.10+` and Tor installed, run the following:\r\n\r\n```bash\r\npip install -r requirements.txt\r\nstreamlit run ui.py\r\n```\r\n\r\n- Open your browser and navigate to `http://localhost:8501`\r\n\r\n---\r\n\r\n## Contributing\r\n\r\nContributions are welcome! Please feel free to submit a Pull Request if you have major feature updates.\r\n\r\n- Fork the repository\r\n- Create your feature branch (git checkout -b feature/amazing-feature)\r\n- Commit your changes (git commit -m 'Add some amazing feature')\r\n- Push to the branch (git push origin feature/amazing-feature)\r\n- Open a Pull Request\r\n\r\nOpen an Issue for any of these situations:\r\n- If you spot a bug or bad code\r\n- If you have a feature request idea\r\n- If you have questions or doubts about usage\r\n- If you have minor code changes\r\n\r\n---\r\n\r\n## Acknowledgements\r\n\r\n- Idea inspiration from [Thomas Roccia](https://x.com/fr0gger_) and his demo of [Perplexity of the Dark Web](https://x.com/fr0gger_/status/1908051083068645558).\r\n- Tools inspiration from my [OSINT Tools for the Dark Web](https://github.com/apurvsinghgautam/dark-web-osint-tools) repository.\r\n- LLM Prompt inspiration from [OSINT-Assistant](https://github.com/AXRoux/OSINT-Assistant) repository.\r\n- Logo Design by my friend [Tanishq Rupaal](https://github.com/Tanq16/)\r\n\r\n\r\n\r\n\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapurvsinghgautam%2FRobin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapurvsinghgautam%2FRobin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapurvsinghgautam%2FRobin/lists"}