account-hygiene
Periodic hygiene review of a client's 1Password account for QBRs and license true-ups: reconciling active and suspended seats…
OS and third-party patch posture in Jamf Pro: which macOS and iOS versions Jamf can deploy, measuring OS version spread from inventory, managed software update plans and their status, patch management titles and per-title patch reports, the policies that deliver patches, and
Claude Code
$ npx -y skills add wyre-ai/msp-claude-plugins --skill patch-management --agent claude-code
Codex
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a codex -y
Cursor
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a cursor -y
Gemini CLI
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a gemini-cli -y
GitHub Copilot
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a github-copilot -y
OpenCode
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a opencode -y
Windsurf
$ npx skills add wyre-ai/msp-claude-plugins --skill patch-management -a windsurf -y
name: "Jamf Pro Patch Management" description: > OS and third-party patch posture in Jamf Pro: which macOS and iOS versions Jamf can deploy, measuring OS version spread from inventory, managed software update plans and their status, patch management titles and per-title patch reports, the policies that deliver patches, and scheduling OS updates without forcing restarts. when_to_use: >- When answering how current a client's Macs, iPhones, or iPads are, finding devices behind on macOS/iOS or on an app like Chrome or Zoom, or scheduling an OS update. Use when: macos updates, ios updates, os version report, jamf patch report, outdated apps mac, jamf patch management, schedule os update, software update plan.
Jamf Pro patches Apple devices two ways. **Managed software updates** push macOS and iOS/iPadOS versions through MDM update plans. **Patch management titles** track third-party apps (Chrome, Zoom, Office) and report which version each Mac runs. Policies deliver the packages. MSPs need a patch posture number for each client, plus a short list of devices to chase.
| Thing | Tool | Notes | |-------|------|-------| | Deployable OS versions | `jamf_list_available_os_updates` | What Jamf can push today, macOS and iOS/iPadOS | | Device OS version | `jamf_search_computers` / `jamf_search_mobile_devices` | `OPERATING_SYSTEM` is in the computer search default sections | | OS update plans | `jamf_list_software_update_plans` | Scheduled updates and their status. Filter e.g. `device.deviceId=="42"`. | | Third-party titles | `jamf_list_patch_titles` | Each id is a patch software title configuration | | Per-title report | `jamf_get_patch_report` | Which computers run which version. Filter e.g. `version!="120.0"`. | | Delivery policies | `jamf_list_policies`, `jamf_get_policy` | Scope, packages, scripts, Self Service settings |
1. `jamf_list_available_os_updates` to get the newest deployable macOS and iOS versions. 2. `jamf_search_computers` with `sections: ["GENERAL", "OPERATING_SYSTEM"]`, paging with `pageSize: 200` until you have `totalCount` records. Add a site filter if the tenant is shared. 3. Group by `operatingSystem.version`: current, one minor behind, older minors, previous major, unsupported. 4. Repeat for mobile devices with `jamf_search_mobile_devices` (`GENERAL` holds the OS version). 5. `jamf_list_software_update_plans` to show which behind devices already have an update scheduled, and which plans failed.
Report the percentage on the latest minor of each major in use, then list devices two or more minors behind.
1. `jamf_list_patch_titles`, pick the titles the client cares about. 2. `jamf_get_patch_report` for each, with `filter: 'version!="<latest>"'` to get only outdated Macs. 3. If many Macs are behind, `jamf_list_policies` with `contains: "<app name>"` and `jamf_get_policy` to check the patch policy's scope and whether it is enabled.
`jamf_schedule_os_update` creates a managed software update plan for up to 50 devices of one type.
| Arg | Values | |-----|--------| | `deviceType` | `computer` or `mobile_device` | | `deviceIds` | Up to 50 ids | | `updateAction` | `DOWNLOAD_ONLY`, `DOWNLOAD_INSTALL_ALLOW_DEFERRAL` (needs `maxDeferrals`), `DOWNLOAD_INSTALL_SCHEDULE` (needs `forceInstallLocalDateTime`, device-local, e.g. `2026-11-14T22:00:00`) | | `versionType` | `LATEST_MINOR`, `LATEST_MAJOR`, `LATEST_ANY`, `SPECIFIC_VERSION` (needs `specificVersion` from `jamf_list_available_os_updates`) |
Immediate forced install and forced restart are not offered. Before calling, confirm with the user: the device list, the action, the target version, and the user-facing impact (deferral count or install time). Prefer `LATEST_MINOR` with deferrals for routine patching. Major upgrades should go through the client's change process.
After scheduling, check `jamf_list_software_update_plans` for the new plans' status.
`jamf_create_smart_computer_group` (write) with a criterion like `{"name": "Operating System Version", "searchType": "less than", "value": "15.6"}` gives the client's admins a live view in Jamf, and policies can scope to it.
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.