WYRE-AI/msp-claude-plugins/msp-claude-plugins/liongard/liongard/skills/detections/SKILL.md
Liongard Detections
Liongard's change and anomaly detection layer: detections generated by inspection-to-inspection comparison, detection types/severities/status lifecycle, configurable alert rules and notification channels, custom metrics with JMESPath expressions and threshold evaluation, and the platform timeline audit trail.
- Source repository stars
- 42
- Declared platforms
- 0
- Static risk flags
- 0
- Last source update
- 2026-08-28
- Source checked
- 2026-08-28
Decision brief
What it does: where it fits
Liongard's change and anomaly detection layer: detections generated by inspection-to-inspection comparison, detection types/severities/status lifecycle, configurable alert rules and notification channels, custom metrics with JMESPath expressions and threshold evaluation, and the platform timeline audit trail.
Not for
- Tasks that require unconfirmed production actions or broad system permissions.
- Environments where the pinned source and install steps cannot be inspected.
Compatibility matrix
Platform support, with evidence labels
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
Inspect first. Install second.
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/WYRE-AI/msp-claude-plugins --skill "msp-claude-plugins/liongard/liongard/skills/detections"Inspect the Agent Skill "Liongard Detections" from https://github.com/WYRE-AI/msp-claude-plugins/blob/5005f73ba2f52cd299f58aa6bb79f4e70ae87103/msp-claude-plugins/liongard/liongard/skills/detections/SKILL.md at commit 5005f73ba2f52cd299f58aa6bb79f4e70ae87103. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
What the source asks the agent to do
- 01
Anti-triggers
Security detections and EDR alerts — a Liongard detection is a
Security detections and EDR alerts — a Liongard detection is aRMM threshold and availability alerts — disk-full, offline, andCompliance frameworks — Liongard metrics are custom JMESPath - 02
Key Concepts
A detection records a specific change identified between inspection runs. Examples:
A new user account was created in Active DirectoryA firewall rule was modified on a SonicWallAn MFA policy was disabled in Microsoft 365 - 03
Detections
A detection records a specific change identified between inspection runs. Examples:
A new user account was created in Active DirectoryA firewall rule was modified on a SonicWallAn MFA policy was disabled in Microsoft 365 - 04
Detection Types
Review the “Detection Types” section in the pinned source before continuing.
Review and apply the “Detection Types” source section. - 05
Detection Severity Levels
Review the “Detection Severity Levels” section in the pinned source before continuing.
Review and apply the “Detection Severity Levels” source section.
Permission review
Static risk signals and limitations
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
Why each signal appears
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 91/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 42 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Provenance and original SKILL.md
- Repository
- WYRE-AI/msp-claude-plugins
- Skill path
- msp-claude-plugins/liongard/liongard/skills/detections/SKILL.md
- Commit
- 5005f73ba2f52cd299f58aa6bb79f4e70ae87103
- License
- Apache-2.0
- Collected
- 2026-08-28
- Default branch
- main
View the original SKILL.md
Liongard Change Detection & Alerts
Overview
Detections are Liongard's automated change and anomaly detection system. Every time an inspection runs, Liongard compares the new data with previous inspection results and identifies changes. Those changes become detections that MSPs monitor, investigate, and act upon. Around detections sit alerts (configurable rules that turn detections into notifications), metrics (custom measurements evaluated across systems for compliance reporting), and the timeline (a platform-wide audit trail of inspections, detections, and user actions).
Anti-triggers
- Security detections and EDR alerts — a Liongard detection is a
configuration change, not a threat. Malicious activity is
huntress-signals,huntress-incidents,sentinelone-alerts, orrocketcyber-incidents. - RMM threshold and availability alerts — disk-full, offline, and
service-down alerts come from the RMM:
atera-alerts,superops-alerts,ncentral-monitoring-tasks,ninjaone-alerts, ordatto-rmm-alerts. - Compliance frameworks — Liongard metrics are custom JMESPath
measurements over inspection data; mapping evidence to CIS, NIST, or
SOC 2 controls is
scalepad-controlmap. - Why the underlying data changed at all — the inspection that
produced the comparison is
liongard-inspections.
Key Concepts
Detections
A detection records a specific change identified between inspection runs. Examples:
- A new user account was created in Active Directory
- A firewall rule was modified on a SonicWall
- An MFA policy was disabled in Microsoft 365
- A backup job failed on a Datto appliance
- A new device joined the network on Meraki
- A certificate is expiring within 30 days
Detection Types
| Type | Description | Example |
|---|---|---|
Added | New item discovered | New user account created |
Removed | Item no longer present | Device removed from network |
Changed | Existing item modified | Firewall rule updated |
Threshold | Value crossed a defined threshold | Disk usage exceeded 90% |
Detection Severity Levels
| Severity | Description | Typical Use |
|---|---|---|
Critical | Immediate action required | Security policy disabled, admin account compromised |
High | Urgent attention needed | MFA disabled, backup failure |
Medium | Review within business hours | Configuration change, new admin user |
Low | Informational but notable | New standard user, minor setting change |
Info | Routine change logged | Regular updates, expected modifications |
Detection Status Transitions
New ───────────────────> Dismissed
| |
v v
Acknowledged ──────> Resolved
- New - Freshly detected, awaiting review
- Acknowledged - Reviewed by an MSP technician
- Resolved - Change has been addressed or accepted
- Dismissed - Change is expected or irrelevant
Each detection carries a Details object holding the Before and After values of whatever changed — that is the payload worth reading when investigating.
See references/fields.md for the complete detection field reference, the full timeline event-type catalog, and the entity relationship map.
Alerts
Alert rules define which detections should trigger notifications. A rule specifies which environments to monitor, what detection types and severities to watch for, what conditions must be met, and what notification channels to use (email, webhook, or integration target). Rules can be enabled/disabled without deletion, and each firing produces a triggered alert record linked back to the originating detection.
Metrics
Metrics are custom measurements tracked across systems and environments. A metric binds an InspectorID, a JMESPath Expression evaluated against a system's detail data (e.g. Data.PasswordPolicy.MinimumLength), and a Threshold plus comparison Operator. Evaluation returns a Value and a Compliant boolean per system, which is what drives compliance reporting and trend analysis.
Timeline
The timeline is a comprehensive audit trail of all events within Liongard — inspection runs, detection triggers, user actions, configuration changes, and agent connectivity events.
API Patterns
The full endpoint catalog with request/response bodies lives in references/api.md. The non-obvious parts:
- Detections and timeline are queried by POST, not GET.
POST /api/v1/detectionsandPOST /api/v2/timelines-querytake a JSON filter body. Only the v1 timeline (GET /api/v1/timeline) is a plain GET with query params. - Filter syntax is
conditions: [{path, op, value}]withorderBy: [{path, direction}]. Operators includeeq,in, andgte. Timestamps are ISO-8601 UTC strings. Paginationis PascalCase and nested —{"Pagination": {"Page": 1, "PageSize": 100}}. Response envelopes are PascalCase too:Data,TotalRows,HasMoreRows,CurrentPage,TotalPages,PageSize. Page through untilHasMoreRowsis false.- v2 adds a
fieldsarray for field selection on detections — use it to cut response size when you only need a few columns. - Alerts and metrics are conventional REST (
GET/POST/PUT/DELETEon/api/v1/alertsand/api/v1/metrics), but metric evaluation is v2-only:POST /api/v2/metrics/evaluate(one metric across all applicable systems) andPOST /api/v2/metrics/evaluate-systems(all metrics for a givenSystemIDslist). - Alert rule
Conditionsare keyed by field name with array values ({"Severity": ["Critical"], "Type": ["Changed", "Removed"]}) — a different shape from theconditionsarray used by detection queries. Don't mix them up.
Common Workflows
Monitoring for Changes
- Query recent detections - Filter for New status and Critical/High severity
- Review changes - Examine before/after details for each detection
- Investigate context - Check timeline for related events
- Take action - Acknowledge, resolve, or escalate as needed
- Document decisions - Update detection status with resolution notes
See references/examples.md for a worked detection-fetch-and-categorize implementation.
Setting Up Alert Rules
- Identify critical changes - Determine what changes need immediate attention
- Create alert rules - Configure conditions (severity, inspector, type)
- Set notification channels - Email, webhook, or integration targets
- Test alerts - Verify notifications fire correctly
- Review and tune - Adjust thresholds to reduce noise
Compliance Auditing
- Define compliance metrics - Create metrics for each compliance requirement
- Evaluate across environments - Run metric evaluations
- Identify non-compliant systems - Filter for Compliant=false
- Generate reports - Export metric results for audit documentation
- Track remediation - Re-evaluate after fixes are applied
- Maintain audit trail - Use timeline for evidence of monitoring
Gotchas
- Rate limit is 300 requests/minute. A 429 means back off and retry; broad detection sweeps across many environments hit this quickly.
- Metric expressions are JMESPath against system detail data. A malformed expression returns 422, not an empty result — validate the path against a real system's dataprint first.
- A metric evaluates to "no data" rather than non-compliant when the system has never been inspected. Run an inspection before treating an empty evaluation as a compliance failure.
- Threshold type must match the data type of the expression result. Comparing a boolean expression against a numeric threshold silently misreports compliance.
See references/errors.md for the complete API and metric-evaluation error tables.
Best Practices
Detection Management
- Review critical detections daily - Don't let high-severity items pile up
- Acknowledge promptly - Show clients you're monitoring their environment
- Document resolutions - Record why changes were accepted or rejected
- Dismiss noise - Mark expected changes to reduce alert fatigue
- Trend analysis - Track detection volumes over time
Alert Configuration
- Start conservative - Begin with Critical/High only to avoid alert fatigue
- Use specific conditions - Target specific inspectors and change types
- Set up escalation - Different channels for different severities
- Review regularly - Tune alert rules based on false positive rates
- Test notification channels - Verify webhooks and emails work
Metric Design
- Align with standards - Map metrics to CIS benchmarks or client SLAs
- Set reasonable thresholds - Avoid overly strict thresholds that create noise
- Evaluate periodically - Run evaluations on a regular schedule
- Track trends - Monitor compliance percentages over time
Related Skills
- Liongard Overview - Platform overview and terminology
- Liongard Environments - Environment management
- Liongard Inspections - Inspectors and launchpoints
- Liongard Systems - Systems and dataprints
Frequently asked questions
What to verify before installation and use
What does the Liongard Detections source document cover?
Liongard's change and anomaly detection layer: detections generated by inspection-to-inspection comparison, detection types/severities/status lifecycle, configurable alert rules and notification channels, custom metrics with JMESPath expressions and threshold evaluation, and the platform timeline audit trail.
How do I install Liongard Detections?
The source record exposes this install command: npx skills add https://github.com/WYRE-AI/msp-claude-plugins --skill "msp-claude-plugins/liongard/liongard/skills/detections". Inspect the command and pinned source before running it.