explaingit

assafkip/theia

Analysis updated 2026-05-18

3JavaScriptAudience · developerComplexity · 2/5Setup · easy

TLDR

A tool that pulls indicators like IPs, domains, and hashes out of threat intelligence reports using fixed rules instead of an AI model, so nothing is invented.

Mindmap

mindmap
  root((theia))
    What it does
      Extracts IOCs from reports
      Finds named threats
      Pulls vendor detection rules
    Tech stack
      Next.js
      JavaScript
      Rule based extraction
    Use cases
      Analyze a threat report quickly
      Build a blocklist from a report
      Export IOCs to CSV
    Audience
      Security analysts
      Threat intelligence teams
      Detection engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Paste a threat intel report and get every IP, domain, hash, and CVE it mentions, with proof from the text.

USE CASE 2

Pull out vendor written Sigma, YARA, or Snort rules from a report without retyping them.

USE CASE 3

Export extracted indicators to CSV to build or update a blocklist.

What is it built with?

Next.jsJavaScript

How does it compare?

assafkip/theiaabhagsain/bayut-maps-ratingsabhishek-kumar09/who-is-imposter
Stars333
LanguageJavaScriptJavaScriptJavaScript
Last pushed2021-04-12
MaintenanceDormant
Setup difficultyeasymoderateeasy
Complexity2/52/53/5
Audiencedevelopergeneralgeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

The optional AI noise flagging feature needs an Anthropic API key.

No license is stated in the README.

In plain English

Theia is a tool for security analysts who need to pull threat indicators out of a threat intelligence report. You paste in a link to a PDF or web page, and it extracts every IP address, domain, URL, file hash, CVE number, email address, named threat actor, malware name, and vendor detection rule that is literally written in the document, each one shown alongside the exact sentence that proves it is there. The key idea is that Theia does not use an AI model to do the actual extraction, so it cannot make up an indicator that was never in the report. Instead it uses a fixed set of rules built from pattern matching, so the same report always produces the same result. It also understands common ways attackers try to hide indicators in text, such as writing hxxps colon slash slash evil dot com instead of a real clickable link, and converts these back to their normal form. Named threats, like actors, tools, and malware, are matched against a built in reference list based on MITRE ATT&CK and Malpedia, and a match only means the name appears in the text, not that Theia is making any claim about who is responsible. Any detection rules the report includes, like Sigma, YARA, or Snort rules, are pulled out exactly as written and clearly labeled as coming from the report rather than from Theia itself. Everything can be exported to a CSV file, and there is an optional AI powered pass that can flag likely noise, such as the vendor's own domain name, without ever adding or removing an actual indicator. Theia is explicitly not a security monitoring system, a scanner, or a tool that produces ready to deploy detections. It only states what the report contains, not what it means or whether something is dangerous. It runs as a web app built with Next.js, with no database and no user accounts required, and it is free to use with no signup at the project's live site. The optional noise flagging feature needs an Anthropic API key to work.

Copy-paste prompts

Prompt 1
Explain how Theia makes sure it never invents an indicator that is not in the original report.
Prompt 2
Show me how to run Theia locally and test it against a sample threat report.
Prompt 3
What is the difference between an IOC that Theia extracts and a named threat actor match?
Prompt 4
How does Theia handle defanged indicators like hxxps colon slash slash evil dot com?

Frequently asked questions

What is theia?

A tool that pulls indicators like IPs, domains, and hashes out of threat intelligence reports using fixed rules instead of an AI model, so nothing is invented.

What language is theia written in?

Mainly JavaScript. The stack also includes Next.js, JavaScript.

What license does theia use?

No license is stated in the README.

How hard is theia to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is theia for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.