← Browse

@mhaggis/detection-coverage-analysis

B

Analyzes detection coverage using Sigma, Splunk, and Elastic rules. Use when checking coverage for techniques, tactics, threat actors, or generating Navigator layers from detections.

skillclaude

Install

agr install @mhaggis/detection-coverage-analysis --target claude

Writes 1 file into .claude/skills/, pinned to git-69d95778.

  • .claude/skills/detection-coverage-analysis/SKILL.md

Document


name: detection-coverage-analysis
description: Analyzes detection coverage using Sigma, Splunk, and Elastic rules. Use when checking coverage for techniques, tactics, threat actors, or generating Navigator layers from detections.

Detection Coverage Analysis

Efficient Tools (Use These!)

Get Coverage Stats

analyze_coverage(source_type: "elastic")

Returns coverage % by tactic, top techniques, weak spots.

Find Gaps by Threat Profile

identify_gaps(threat_profile: "ransomware")
identify_gaps(threat_profile: "apt")
identify_gaps(threat_profile: "persistence")

Returns prioritized P0/P1/P2 gaps with recommendations.

Get Detection Suggestions

suggest_detections(technique_id: "T1059.001")

Returns existing detections, data sources needed, detection ideas.

Generate Navigator Layer

generate_navigator_layer(
  name: "Elastic Initial Access",
  source_type: "elastic",
  tactic: "initial-access"
)

Returns ready-to-import Navigator JSON.

Get Just Technique IDs

get_technique_ids(source_type: "elastic", tactic: "persistence")

Returns ~200 bytes instead of ~50KB.

Threat Profiles Available

ProfileKey Techniques
ransomwareT1486, T1490, T1027, T1547
aptT1003, T1021, T1053, T1071
initial-accessT1566, T1190, T1078
persistenceT1547, T1543, T1053
credential-accessT1003.*, T1555, T1552
defense-evasionT1027, T1070, T1055

DON'T (burns tokens)

# BAD - returns 200+ full detection objects
list_by_mitre_tactic(tactic: "execution")

DO (efficient)

# GOOD - returns stats only
analyze_coverage(source_type: "elastic")

Token Comparison

Old ApproachNew Approach
list_by_mitre_tactic → ~50KBanalyze_coverage → ~2KB
Parse in contextDone server-side
25x more tokensEfficient

Trustgrade B

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • warnLicenseno SPDX license detected

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-69d95778753b2026-07-31