Skip to main content

Agentic Threat Hunting Framework - Memory and AI for threat hunters

Project description

Agentic Threat Hunting Framework (ATHF)

ATHF Logo

PyPI version PyPI downloads Python Version License: MIT GitHub stars

Quick StartInstallationDocumentationExamples

Give your threat hunting program memory and agency.

The Agentic Threat Hunting Framework (ATHF) is the memory and automation layer for your threat hunting program. It gives your hunts structure, persistence, and context - making every past investigation accessible to both humans and AI.

ATHF works with any hunting methodology (PEAK, TaHiTI, or your own process). It's not a replacement; it's the layer that makes your existing process AI-ready.

What is ATHF?

ATHF provides structure and persistence for threat hunting programs. It's a markdown-based framework that:

  • Documents hunts using the LOCK pattern (Learn → Observe → Check → Keep)
  • Maintains a searchable repository of past investigations
  • Enables AI assistants to reference your environment and previous work
  • Works with any SIEM/EDR platform

The Problem

Most threat hunting programs lose valuable context once a hunt ends. Notes live in Slack or tickets, queries are written once and forgotten, and lessons learned exist only in analysts' heads.

Even AI tools start from zero every time without access to your environment, your data, or your past hunts.

ATHF changes that by giving your hunts structure, persistence, and context.

Read more: docs/why-athf.md

The LOCK Pattern

Every threat hunt follows the same basic loop: Learn → Observe → Check → Keep.

The LOCK Pattern

  • Learn: Gather context from threat intel, alerts, or anomalies
  • Observe: Form a hypothesis about adversary behavior
  • Check: Test hypotheses with targeted queries
  • Keep: Record findings and lessons learned

Why LOCK? It's small enough to use and strict enough for agents to interpret. By capturing every hunt in this format, ATHF makes it possible for AI assistants to recall prior work and suggest refined queries based on past results.

Read more: docs/lock-pattern.md

The Five Levels of Agentic Hunting

ATHF defines a simple maturity model. Each level builds on the previous one.

Most teams will live at Levels 1–2. Everything beyond that is optional maturity.

The Five Levels

Level Capability What You Get
0 Ad-hoc Hunts exist in Slack, tickets, or analyst notes
1 Documented Persistent hunt records using LOCK
2 Searchable AI reads and recalls your hunts
3 Generative AI executes queries via MCP tools
4 Agentic Autonomous agents monitor and act

Level 1: Operational within a day Level 2: Operational within a week Level 3: 2-4 weeks (optional) Level 4: 1-3 months (optional)

Read more: docs/maturity-model.md

🚀 Quick Start

Option 1: Install from PyPI (Recommended)

# Install ATHF
pip install agentic-threat-hunting-framework

# Initialize your hunt program
athf init

# Create your first hunt
athf hunt new --technique T1003.001 --title "LSASS Credential Dumping"

Option 2: Install from Source (Development)

# Clone and install from source
git clone https://github.com/Nebulock-Inc/agentic-threat-hunting-framework
cd agentic-threat-hunting-framework
pip install -e .

# Initialize and start hunting
athf init
athf hunt new --technique T1003.001

Option 3: Pure Markdown (No Installation)

# Clone the repository
git clone https://github.com/Nebulock-Inc/agentic-threat-hunting-framework
cd agentic-threat-hunting-framework

# Copy a template and start documenting
cp templates/HUNT_LOCK.md hunts/H-0001.md

# Customize AGENTS.md with your environment
# Add your SIEM, EDR, and data sources

Choose your AI assistant: Claude Code, GitHub Copilot, or Cursor - any tool that can read your repository files.

Full guide: docs/getting-started.md

🔧 CLI Commands

ATHF includes a full-featured CLI for managing your hunts. Here's a quick reference:

Initialize Workspace

athf init                           # Interactive setup
athf init --non-interactive         # Use defaults

Create Hunts

athf hunt new                       # Interactive mode
athf hunt new \
  --technique T1003.001 \
  --title "LSASS Dumping Detection" \
  --platform windows

List & Search

athf hunt list                      # Show all hunts
athf hunt list --status completed   # Filter by status
athf hunt list --output json        # JSON output
athf hunt search "kerberoasting"    # Full-text search

Validate & Stats

athf hunt validate                  # Validate all hunts
athf hunt validate H-0001           # Validate specific hunt
athf hunt stats                     # Show statistics
athf hunt coverage                  # MITRE ATT&CK coverage

Full documentation: CLI Reference

📺 See It In Action

ATHF Demo

Watch ATHF in action: initialize a workspace, create hunts, and explore your threat hunting catalog in under 60 seconds.

View example hunts →

Installation

Prerequisites

  • Python 3.8-3.13 (for CLI option)
  • Your favorite AI code assistant

From PyPI (Recommended)

pip install agentic-threat-hunting-framework
athf init

From Source (Development)

git clone https://github.com/Nebulock-Inc/agentic-threat-hunting-framework
cd agentic-threat-hunting-framework
pip install -e .
athf init

Markdown-Only Setup (No Installation)

git clone https://github.com/Nebulock-Inc/agentic-threat-hunting-framework
cd agentic-threat-hunting-framework

Start documenting hunts in the hunts/ directory using the LOCK pattern.

Documentation

Core Concepts

Level-Specific Guides

Integration & Customization

🎖️ Featured Hunts

H-0001: macOS Information Stealer Detection

Detected Atomic Stealer collecting Safari cookies via AppleScript. Result: 1 true positive, host isolated before exfiltration.

Key Insight: Behavior-based detection outperformed signature-based approaches. Process signature validation identified unsigned malware attempting data collection.

View full hunt → | See more examples →

Why This Matters

You might wonder how this interacts with frameworks like PEAK. PEAK gives you a solid method for how to hunt. ATHF builds on that foundation by giving you structure, memory, and continuity. PEAK guides the work. ATHF ensures you capture the work, organize it, and reuse it across future hunts.

Agentic threat hunting is not about replacing analysts. It's about building systems that can:

  • Remember what has been done before
  • Learn from past successes and mistakes
  • Support human judgment with contextual recall

When your framework has memory, you stop losing knowledge to turnover or forgotten notes. When your AI assistant can reference that memory, it becomes a force multiplier.

💬 Community & Support

📖 Using ATHF

ATHF is a framework to internalize, not a platform to extend. Fork it, customize it, make it yours.

Repository: https://github.com/Nebulock-Inc/agentic-threat-hunting-framework

See USING_ATHF.md for adoption guidance. Your hunts stay yours—sharing back is optional but appreciated (Discussions).

The goal is to help every threat hunting team move from ad-hoc memory to structured, agentic capability.


🛠️ Development & Customization

ATHF is designed to be forked and customized for your organization.

See docs/INSTALL.md#development--customization for:

  • Setting up your fork for development
  • Pre-commit hooks for code quality
  • Testing and type checking
  • Customization examples
  • CI/CD integration

Quick start:

pip install -e ".[dev]"       # Install dev dependencies
pre-commit install            # Set up quality checks
pytest tests/ -v              # Run tests

👤 Author

Created by Sydney Marrone © 2025


Start small. Document one hunt. Add structure. Build memory.

Memory is the multiplier. Agency is the force. Once your program can remember, everything else becomes possible.

Happy hunting!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentic_threat_hunting_framework-0.2.3.tar.gz (15.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file agentic_threat_hunting_framework-0.2.3.tar.gz.

File metadata

File hashes

Hashes for agentic_threat_hunting_framework-0.2.3.tar.gz
Algorithm Hash digest
SHA256 2d73278419b8ef6fd074d0248eb8730fe18ea1aaba123348ba2e60ae4e414617
MD5 6d9d848d3a6a3dde6d11b2d41aff603b
BLAKE2b-256 333ffd66213a12b54b913c3297cf926ec9696ff27cd753195d59346645486c52

See more details on using hashes here.

File details

Details for the file agentic_threat_hunting_framework-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for agentic_threat_hunting_framework-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1250e563666ec77a1a8eb8a51060f2fb2bb80d61acfe195ce969e1388292fe6b
MD5 a2727776379165adf4c6a181f9d7787a
BLAKE2b-256 c3766b62980e9ad1d37c11b18655e892e2cc94b202b5f50cda6fb20b657c368c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page