Skip to main content

AI-Assisted Vulnerability Triage

AI-assisted vulnerability triage for scanner findings, combining vulnerability analysis, reachability assessment, false-positive detection, risk scoring, remediation guidance, and historical lifecycle analytics.

Features

  • Vulnerability triage and prioritization
  • Reachability analysis
  • False-positive detection
  • Risk and impact analysis
  • MITRE ATT&CK mapping
  • Remediation guidance
  • Canonical JSON and Semgrep input
  • Human-readable and JSON output
  • Optional AI-generated explanations
  • Immutable scan snapshots
  • Two-scan lifecycle comparison
  • Multi-scan lifecycle history
  • Lifecycle trend analytics
  • Lifecycle transition analytics
  • Lifecycle insight metrics

Requirements

  • Python 3.12 or newer

Installation

Build the package:

python -m build

Install the wheel:

python -m pip install dist/ai_assisted_vulnerability_triage-0.4.2-py3-none-any.whl

Or install the source distribution:

python -m pip install dist/ai_assisted_vulnerability_triage-0.4.2.tar.gz

Verify the installation:

vuln-triage --version

Basic Usage

Run the canonical findings dataset:

vuln-triage dataset/findings.json

Generate JSON output:

vuln-triage dataset/findings.json --format json

Write output to a file:

vuln-triage dataset/findings.json \
  --format json \
  --output report.json

Semgrep

Process Semgrep findings:

vuln-triage \
  tests/fixtures/semgrep-results.json \
  --scanner semgrep

Optional AI Explanations

Enable the optional AI explanation provider:

vuln-triage \
  dataset/findings.json \
  --ai-explain

The required AI provider configuration must be available in the runtime environment.

Scan Snapshots

Persist an immutable scan snapshot:

vuln-triage \
  dataset/findings.json \
  --snapshot-dir .history

Snapshots are stored as scan-specific JSON files in the selected history directory.

Compare Two Scans

Compare two persisted snapshots:

vuln-triage \
  --history \
  PREVIOUS_SNAPSHOT \
  CURRENT_SNAPSHOT

Lifecycle classification includes:

  • NEW
  • UNCHANGED
  • CHANGED
  • RESOLVED
  • REAPPEARED

History Directory

Generate a multi-scan lifecycle report:

vuln-triage \
  --history-dir .history

Generate JSON:

vuln-triage \
  --history-dir .history \
  --format json

Analyze finding behavior across the complete scan history:

vuln-triage \
  --history-dir .history \
  --trends

Trend analytics include:

  • Unique findings
  • Active findings
  • Resolved findings
  • Changed findings
  • Reappeared findings
  • Persistent findings
  • Per-finding timelines
  • Transition counts
  • Lifecycle insights

Transition Analytics

Lifecycle transitions include:

NEW->UNCHANGED
NEW->CHANGED
UNCHANGED->RESOLVED
CHANGED->RESOLVED
RESOLVED->REAPPEARED

Trend reports include total transition counts, transition frequencies, and per-finding transition histories.

Lifecycle Insights

Per-finding insights include:

Change Count
Resolution Count
Reappearance Count
Ever Changed
Ever Resolved
Ever Reappeared

Aggregate metrics include:

Findings With Changes
Findings Ever Resolved
Findings Ever Reappeared
Findings With Multiple Changes

Example lifecycle:

NEW -> CHANGED -> RESOLVED -> REAPPEARED

CLI Help

vuln-triage --help
vuln-triage --version

Development

Create a virtual environment:

python -m venv venv
source venv/bin/activate

Install development dependencies:

python -m pip install -e ".[dev]"

Install optional AI dependencies:

python -m pip install -e ".[ai]"

Testing

Run the complete test suite:

python -m pytest -q

Validate Python syntax:

python -m py_compile auditor/*.py

Check whitespace:

git diff --check

Check dependencies:

python -m pip check

Building Distributions

Build the wheel and source distribution:

python -m build

Validate the distributions:

python -m twine check dist/*

The repository includes GitHub Actions workflows for testing and publishing Python package distributions.

Project Structure

auditor/
    Core triage and analysis modules
    lifecycle.py
    lifecycle_report.py
    scan_history.py
    schema_validation.py
    schemas/
        batch-result-v1.json

dataset/
    findings.json

docs/
    schemas/
        batch-result-v1.json

tests/
    Unit and integration tests

.github/workflows/
    tests.yml
    publish.yml

pyproject.toml
README.md

Version

Current package version:

0.4.2

License

Add the project's license information before public release if a license has not already been selected.

Metadata

Release files for ai-assisted-vulnerability-triage 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ai-assisted-vulnerability-triage 0.4.2
File Size Uploaded Provenance
ai_assisted_vulnerability_triage-0.4.2.tar.gz 69.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ai-assisted-vulnerability-triage 0.4.2
File Interpreter ABI Platform
ai_assisted_vulnerability_triage-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 113.4 kB

Release files / ai_assisted_vulnerability_triage-0.4.2.tar.gz

Download URL ai_assisted_vulnerability_triage-0.4.2.tar.gz
Size 69.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0bf4653ff268227f18c4501bdf0c7846f2acaa0b3a14be4dd26c62cb1e9403e0
BLAKE2b-256 checksum
How to use checksums
9c9a66e13d6ea7de157bbc304332f563ce4a7692b38d2f25c9aa27ff601cf38a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.

Transparency log

Release files / ai_assisted_vulnerability_triage-0.4.2-py3-none-any.whl

Download URL ai_assisted_vulnerability_triage-0.4.2-py3-none-any.whl
Size 43.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dad7f22632b305525d1b9feed50f1345cd167f8d5293dff0c7845f7d9fecefc8
BLAKE2b-256 checksum
How to use checksums
c4720340cfd1dc45d07cc85afa2ca873ddb9aa17faa083d9e94860cbcf4a8f85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.

Transparency log

Security for ai-assisted-vulnerability-triage 0.4.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ai_assisted_vulnerability_triage-0.4.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page