account-hygiene
Periodic hygiene review of a client's 1Password account for QBRs and license true-ups: reconciling active and suspended seats…
Detecting configuration drift against an established baseline: CIPP standards checks and Best Practice Analyser results, Liongard change detections and inspection timelines, the three conditions that make a diff real drift rather than noise, the signals that separate intentional
Claude Code
$ npx -y skills add wyre-ai/msp-claude-plugins --skill standards-drift --agent claude-code
Codex
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a codex -y
Cursor
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a cursor -y
Gemini CLI
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a gemini-cli -y
GitHub Copilot
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a github-copilot -y
OpenCode
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a opencode -y
Windsurf
$ npx skills add wyre-ai/msp-claude-plugins --skill standards-drift -a windsurf -y
name: "Standards Drift Detection" description: > Detecting configuration drift against an established baseline: CIPP standards checks and Best Practice Analyser results, Liongard change detections and inspection timelines, the three conditions that make a diff real drift rather than noise, the signals that separate intentional or authorized change from unauthorized weakening (ticket correlation, reversion pattern, direction of change), and the priority order for ranking several drift findings at once. when_to_use: >- When comparing current tenant or infrastructure state against a known-good baseline, when a standards check or inspection shows something changed, or when deciding which of several drift findings is most urgent. Use when: control drift, configuration drift, standards drift, has anything changed, drift detection, baseline comparison, unauthorized change, what changed since last check, security drift.
A compliance control that was met last quarter is not guaranteed to still be met today. Tenants change constantly — a conditional access policy gets edited during a troubleshooting session and never reverted, a firewall rule gets loosened for a vendor's "temporary" remote session, a new admin account gets created without MFA during an emergency. None of this shows up unless something actively compares current state against a baseline. That comparison is what this skill covers.
Drift detection has two distinct data sources in this pack's grounding:
modes, BPA reports, and domain-health results are the connector's own surface; use `cipp-standards`. This skill decides whether a delta is real drift, whether it was authorized, and how it ranks against other findings.
severities, alert rules, and custom metrics live in `liongard-detections`.
baseline drift natively with its own alignment model; use `inforcer-baseline-alignment`.
Drift is any observed difference between the current state of a tracked control or configuration item and its last known-good (i.e., previously verified-compliant) state. Three things are required to call something drift rather than noise:
1. A **baseline** exists — a prior standards check that passed, or a prior Liongard inspection/detection that was reviewed and accepted. 2. A **current observation** exists that differs from that baseline. 3. The difference is in a property that matters for compliance or security posture — not every diff Liongard surfaces is drift in the compliance sense (a device's uptime counter changing is not drift; a firewall rule set changing is).
If there is no established baseline (first-ever check, or the client has never had a standards check run), there is nothing to diff against — run the check, record the result as the new baseline, and say so rather than reporting phantom drift.
Not all drift is bad. A technician who disabled a conditional access policy to unblock a locked-out executive, then re-enabled it an hour later, produced drift that resolved itself. A vendor who was granted temporary elevated access for a migration and had it revoked on schedule is not a finding. The skill is in telling these apart from a policy that was quietly loosened and never restored, or a change nobody remembers authorizing.
Signals to check, in order of reliability:
When a drift pass surfaces multiple findings (common — a single re-run of `cipp__run_standards_check` against a client that hasn't been checked in months can return a dozen deltas), prioritize using this order:
1. **Security-weakening + unauthorized** — a control got weaker and there is no ticket or reversion explaining why. Always highest priority regardless of which framework it maps to. 2. **Security-weakening + authori
One command to supercharge Claude Code for MSP workflows. Then restart Claude Code. That's it. Documentation: wyre-ai.github.io/msp-claude-plugins
Periodic hygiene review of a client's 1Password account for QBRs and license true-ups: reconciling active and suspended seats…
1Password MCP fundamentals through Conduit: the region plus two independent credential halves (Events Reporting token, Users API…
How to review a departing or departed user's 1Password footprint with the read-only tools: confirm the seat is suspended, find…
Triage of 1Password sign-in attempts for one client account: pulling the sign-in feed over a window, grouping failures by user,…
3CX's live-operations surface: read-only visibility into active calls, recordings, voicemail, department and queue membership,…
3CX's read-only directory surface: resolving a caller by email or by exact extension, searching the PBX's own phonebooks,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.