taranis-ai
→ View on GitHubAI Summary: Taranis AI is an advanced Open-Source Intelligence (OSINT) tool that utilizes Artificial Intelligence and Natural Language Processing to gather and enhance information from various unstructured data sources, primarily news articles. Its notable features include a streamlined workflow for analysts to convert unstructured data into structured reports, multi-format output capabilities, seamless publication of intelligence products, and experimental support for collaborative threat intelligence via integration with MISP.
README
Taranis AI
Taranis AI is an advanced Open-Source Intelligence (OSINT) tool, leveraging Artificial Intelligence to revolutionize information gathering and situational analysis.
Taranis navigates through diverse data sources like websites to collect unstructured news articles, utilizing Natural Language Processing and Artificial Intelligence to enhance content quality. Analysts then refine these AI-augmented articles into structured reports that serve as the foundation for deliverables such as PDF files, which are ultimately published.

Getting Started
For production deployments, see our Deployment Guide using docker compose
Contributions
We welcome contributions from the community! If you’re interested in contributing to Taranis AI, please read our Development Setup Guide to get started.
Documentation
See taranis.ai/media for a presentations about the current features.
See taranis.ai for documentation of user stories and deployment guides.
Services
| Type | Name | Description |
|---|---|---|
| Entrypoint | ingress | Nginx entrypoint configured as reverse proxy |
| Frontend | frontend | Flask, HTMX & tailwindcss based REST frontend |
| Backend | core | Backend for communication with the Database and offering REST Endpoints to workers and frontend |
| Worker | worker | Celery Worker offering collectors, bots, presenters and publisher features |
Support services
| Type | Name | Description |
|---|---|---|
| Database | database | Supported are PostgreSQL and SQLite with PostgreSQL as our primary citizen |
| Message-broker | rabbitmq | Message Broker for distribution of Workers and Publish Subscribe Queue Management |
| SSE | sse | SSE Broker |
Features
- Advanced OSINT Capabilities: Taranis AI scours multiple data sources, such as websites, for unstructured news articles, providing a comprehensive intelligence feed.
- AI-Enhanced Analysis: Utilizes Artificial Intelligence and Natural Language Processing to automatically enhance and enrich collected articles for higher content quality.
- Analyst-Friendly Workflow: Offers a streamlined process where analysts can easily convert unstructured news into structured report items, optimizing the data transformation journey.
- Multi-Format Output: Generates a variety of end products, including structured reports and PDF files, tailored to specific informational needs.
- Seamless Publishing: Facilitates the effortless publication of finalized intelligence products, ensuring timely dissemination of critical information.
- Collaborative Threat Intelligence (Experimental): Supports Story-level sharing between Taranis AI instances via MISP, or directly between Taranis AI and MISP for flexible collaboration and information dissemination.
OpenAPI
An OpenAPI spec for the REST API is included and can be accessed in a running installation under config/openapi.
Core Health Endpoints
Core exposes two unauthenticated health-related endpoints:
/api/isaliveis a lightweight liveness probe and only confirms that the core API process is responding./api/healthis the operational health endpoint and reports the status of core dependencies withup,down, orn/aand returns 503 if any dependency isdownand 200 otherwise.
Hardware requirements
To use all NLP features make sure to have at least: 16 GB RAM, 4 CPU cores and 50GB of disk storage.
Without NLP: 2 GB of RAM, 2 CPU cores and 20 GB of disk storage
Directory structure
- src/ - Taranis AI source code:
- core is the REST API, the central component of Taranis AI
- ingress Nginx reverse proxy configuration
- frontend flask & htmx part of the web user interface
- models pydantic models for validating inputs and outputs
- worker retrieve OSINT information from various sources (such as web, twitter, email, atom, rss, slack, and more) and create news items.
- docker/ - Support files for Docker image creation and example docker-compose file
About
This project was inspired by Taranis3, as well as by Taranis-NG. It is released under terms of the European Union Public Licence.
EU Funding
