ImmyBot's desired-state software deployment model end-to-end: the software catalog, deployment, maintenance-session and computer tool surfaces; the canonical select → scope → assert → reconcile → verify workflow; and the pinned-vs-latest, conflicting-deployment, and reboot edge cases.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add WYRE-AI/msp-claude-plugins --skill software-deployment --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Software Deployment?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/wyre-ai-software-deployment)More formats (shields.io, HTML) on the badges page.
---
name: "ImmyBot Software Deployment"
description: >
ImmyBot's desired-state software deployment model end-to-end: the software
catalog, deployment, maintenance-session and computer tool surfaces; the
canonical select → scope → assert → reconcile → verify workflow; and the
pinned-vs-latest, conflicting-deployment, and reboot edge cases.
when_to_use: >-
When deploying software to Windows endpoints via ImmyBot, configuring desired state, running
maintenance sessions, or auditing per-computer compliance. Use when: immybot deploy, immybot
install, immybot software, immybot maintenance, deploy software immybot, immybot compliance, or
desired state windows software.
---
# ImmyBot Software Deployment
This is ImmyBot's headline capability. The model is desired-state:
you assert what should be installed, then a maintenance session
brings the endpoint into compliance. This skill walks the canonical
deployment workflow end-to-end.
## Anti-triggers
- **Making the install actually happen** — creating a deployment changes
nothing on any endpoint; the reconciliation run that acts on it is
`immybot-maintenance-sessions`.
- **OS and security patching** — ImmyBot deploys applications, not
Windows Update. Patch compliance lives in the RMM: `superops-assets`,
`syncro-assets`, or `ncentral-devices`.
- **A one-off command on one machine** — use
`immybot-script-execution`.
- **Whether a tenant is compliant overall** — rollups and scorecards are
`immybot-tenant-compliance`.
## API Tools
### Discover the catalog
| Tool | Purpose |
|------|---------|
| `immybot_software_list` | Per-tenant software catalog |
| `immybot_software_list_global` | Global ImmyBot software catalog |
| `immybot_software_search` | Search by name |
| `immybot_software_get` | Full detail for one software |
| `immybot_software_versions` | Available versions for a software |
| `immybot_software_latest_version` | The current "latest" version |
| `immybot_software_categories` | Browse by category |
| `immybot_software_publishers` | Browse by publisher |
| `immybot_software_stats` | Usage stats across the fleet |
### Configure desired state
| Tool | Purpose |
|------|---------|
| `immybot_deployments_list` | Current deployments |
| `immybot_deployments_get` | Detail for a deployment |
| `immybot_deployments_create` | Assert new desired state |
| `immybot_deployments_for_computer` | Deployments scoped to a computer |
| `immybot_deployments_for_software` | Deployments scoped to a software |
| `immybot_deployments_compliance` | Compliance report for a deployment |
| `immybot_deployments_trigger` | Force immediate reconciliation (destructive) |
| `immybot_software_install` | Install a software via desired state (destructive) |
### Reconcile
| Tool | Purpose |
|------|---------|
| `immybot_maintenance_sessions_list` | Recent sessions |
| `immybot_maintenance_sessions_get` | One session snapshot |
| `immybot_maintenance_sessions_start` | Start a session (destructive) |
| `immybot_maintenance_sessions_pause` | Pause a running session |
| `immybot_maintenance_sessions_resume` | Resume a paused session |
| `immybot_maintenance_sessions_cancel` | Cancel a session |
| `immybot_maintenance_sessions_logs` | Log stream |
| `immybot_maintenance_sessions_results` | Final outcome |
| `immybot_maintenance_sessions_active` | Currently active sessions |
| `immybot_maintenance_sessions_summary` | Summary metrics |
### Computers in scope
| Tool | Purpose |
|------|---------|
| `immybot_computers_list` | Enrolled computers |
| `immybot_computers_get` | One computer detail |
| `immybot_computers_search` | Search by name |
| `immybot_computers_inventory` | Installed software on a computer |
| `immybot_computers_deployments` | Deployments hitting a computer |
| `immybot_computers_trigger_checkin` | Force a check-in |
## The Canonical Deployment Workflow
### 1. Identify the software
```
immybot_software_search → immybot_software_get → immybot_software_latest_version
```
Confirm the software exists in the catalog and what version you intend
to deploy.
### 2. Identify the scope
For tenant-wide rollouts:
```
immybot_tenants_get → immybot_tenants_computers
```
For a single computer:
```
immybot_computers_search → immybot_computers_get
```
### 3. Configure desired state
Call `immybot_deployments_create` with the chosen software, version,
and scope. The deployment now exists, but nothing has happened on
the endpoint yet.
### 4. Reconcile
Either wait for the next scheduled maintenance window, or trigger
immediately:
```
immybot_maintenance_sessions_start
```
This is destructive — get human approval first.
### 5. Watch the session
Poll `immybot_maintenance_sessions_get` and tail
`immybot_maintenance_sessions_logs`. Stop polling once the session is
in a terminal state.
### 6. Confirm compliance
Call `immybot_deployments_compliance` to see which computers in
scope reached the desired state and which failed.
## Other Common Workflows
### Per-computer audit
1. `immybot_computers_get` for the computer
2. `immybot_computers_inventory` for installed software
3. `immybot_computers_deployments` for what desired-state expects
4. Reconcile differences
### Per-tenant compliance scorecard
1. `immybot_tenants_get`
2. `immybot_tenants_compliance` for the rollup
3. Drill into failing deployments via `immybot_deployments_compliance`
### Investigate a failed install
1. Identify the maintenance session: `immybot_maintenance_sessions_list`
2. `immybot_maintenance_sessions_results` for outcome
3. `immybot_maintenance_sessions_logs` for the failing log lines
4. Cross-reference with `immybot_tasks_logs` for lower-level detail
## Edge Cases
- **Pinned versions vs latest** - A deployment can pin a specific
version or track latest. Always confirm which mode you are in
before changing the desired version.
- **Conflicting deployments** - Two deployments hitting the same
software on the same scope can fight. Use
`immybot_deployments_for_computer` to spot conflicts before adding
a new one.
- **Reboot requirements** - Some installs require a reboot. Maintenance
sessions handle this, but expect the session to span longer than the
install itself.
## Best Practices
- Prefer tenant-scoped deployments over per-computer deployments for
fleet-wide software; reserve per-computer for exceptions.
- Always run a small pilot (one or two computers) before triggering a
fleet-wide maintenance session.
- For destructive operations, log the approver, the scope, and the
expected outcome.
## Related Skills
- [api-patterns](../api-patterns/SKILL.md) - Auth and the desired-state model
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!