purple-ops — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited purple-ops (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Bridge skill: this is a both-blue-and-pentest category. The actual work is collaboration — red simulates a TTP, blue tries to detect it, both learn at the same time. No surprise engagements ("see if we catch them without warning"); that is red team. Purple is planned, measured, and aimed at gap closure.
A SOC can write endless rules without ever knowing if they cover the right TTPs. A red team can run endless engagements without the defensive side learning more than "we got owned again". Purple ops is the discipline between the two: ATT&CK-mapped, repeatable, measured.
Triggers on:
pentest-reporter (post-engagement feedback feeding into a detection-gap approach), detection-engineer (rule validation), alert-tuning (coverage gap identified after rule retirement).recon-agent, c2-hygiene, post-exploit, pentest-reporter).detection-engineer.alert-tuning.threat-hunt (command).ioc-hunter.forensics-assist.ir-runbook.Six phases as a cycle, not a one-off project. Each run covers a sub-set of ATT&CK; over quarters you work toward broader coverage.
# Example atomic test for T1003.001 LSASS dumping
Invoke-AtomicTest T1003.001Per executed TTP:
Output: a per-TTP row in the coverage matrix with "validated detect" / "validated blind" / "not tested".
Per blind spot, an action:
detection-engineer for a Sigma/SPL/KQL rule.D3FEND mapping is core here: per ATT&CK technique, the defensive techniques that mitigate it. Not every gap must close via detection — some via prevention.
A gap is only closed when you test it again and see validated detect.
Layer 1: scope (subset of TTPs covered as planned? all blind spots addressed or explicitly accepted?), assumptions (atomic tests represent real attacker behavior, no lab-only shortcuts?), gaps (D3FEND counters considered or only the detection path?). Layer 2: ATT&CK T-IDs correct, atomic-test IDs really exist in the atomic-red-team repo, MTTD/MTTR figures from the SIEM source of truth, coverage claims supported by DeTT&CT output or an ATT&CK Navigator export.
Program-level metrics over quarters:
Purple-team cycle report — <quarter/cycle name>
Period: <start → end>
Threat-actor emulation: <APT/group + source emulation plan>
Scope tactics: <T-A##: ... + T-A##: ...>
Plan:
TTPs in scope: <T-IDs list>
Target systems: <lab/staging/scope segments>
Success criteria: <per TTP: detect window + FP acceptance>
Execute:
Per TTP:
Test method: <atomic-red-team / Caldera / manual>
Test-ID: <T-id ref>
Run timestamp: <UTC>
Target: <system>
Cleanup status: <ok>
Measure (coverage matrix):
TTP | Detected? | Rule-id | MTTD | FP context | Verdict (validated/blind/partial)
Close gaps:
Per blind spot:
Type: <quick-win / data-gap / tooling-gap / compensating>
Action: <handoff to detection-engineer / pipeline team / D3FEND control>
Owner: <name>
Deadline: <date>
Re-test:
Per closed gap:
Re-test date: <...>
Result: <validated-detect | partial | still open>
Program-level metrics:
Coverage trend: <% validated-detect>
MTTD trend: <minutes>
Open gaps: N
Closed this cycle: N
Handoffs:
detection-engineer: <new rules / refinements>
alert-tuning: <FP tuning on freshly validated rules>
ir-runbook: <playbook update for ATT&CK context>
policy-drafter: <if a D3FEND control touches a policy requirement>
Verification-loop: ...~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.