OpenAI CTI Summarizer

May 11, 2026 ยท View on GitHub

FastAPI service and simple web frontend for summarizing Cyber Threat Intelligence (CTI) reports into a validated structured schema.

The service accepts CTI report input as:

  • a URL to an HTML/text/PDF-style report page
  • pasted report text
  • an uploaded PDF

The report text is extracted, converted where needed, sent to a configured LLM provider, validated as CTISummary, and then returned either as JSON or rendered markdown.

Documentation

  • User Guide: short guide for analysts using the web UI.
  • Admin Guide: deployment and operations with Docker Compose and Traefik.
  • Developer Guide: local setup, architecture, tests, and contribution notes.
  • Configuration: environment variables and .env syntax.
  • Deployment: deployment flow and reverse proxy notes.
  • API: HTTP and CLI surfaces.

Quick Start For Developers

uv sync
uv run pytest

Run locally:

uv run uvicorn app.main:app --reload --host 127.0.0.1 --port 9999

Quick Start For Admins

cp env.example .env
docker compose config --quiet
docker compose up -d

See Admin Guide before deploying. The documented reverse proxy example is Traefik, but the app can run behind other reverse proxies.

License

This code is released under the EUPL license 1.2.