Skip to content

taranis-ai/taranis-ai

Repository files navigation

Taranis AI

Logo

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.

Screenshot

Getting Started

For production deployments, see our Deployment Guide using docker compose

For existing Celery/RabbitMQ deployments, see the RQ Migration Guide.

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 RQ workers 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 redis Message broker and job queue for RQ workers
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/isalive is a lightweight liveness probe and only confirms that the core API process is responding.
  • /api/health is the operational health endpoint and reports the status of core dependencies with up, down, or n/a and returns 503 if any dependency is down and 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

Co-financed by the Connecting Europe Facility of the European Union

About

Taranis AI is an advanced Open-Source Intelligence (OSINT) tool, leveraging Artificial Intelligence to revolutionize information gathering and situational analysis.

Topics

Resources

License

Contributing

Security policy

Stars

1.2k stars

Watchers

19 watching

Forks

Packages

 
 
 

Contributors