> ## Documentation Index
> Fetch the complete documentation index at: https://docs.iru.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Iru Agent and MDM

> Learn how the Iru Agent works alongside MDM on macOS and Windows. Understand agent capabilities, communication protocols, and management features.

<Callout icon="list-check" color="#B84A7A" iconType="regular">This guide applies to Mac computers and Windows devices</Callout>

<Note>
  As of **April 8, 2026**, apps were updated from **Kandji** <img className="inline dark:hidden" src="https://mintcdn.com/iru/20OhJ3wZmF4DKbOd/assets/media/images/kandji-bee-light-icon.png?fit=max&auto=format&n=20OhJ3wZmF4DKbOd&q=85&s=3ac73eb9098c090ac2838a4902a70e35" alt="" style={{ height: '1em', width: 'auto', maxHeight: '1em', verticalAlign: '-0.125em', margin: '0 0.05em' }} width="400" height="284" data-path="assets/media/images/kandji-bee-light-icon.png" /><img className="hidden dark:inline" src="https://mintcdn.com/iru/20OhJ3wZmF4DKbOd/assets/media/images/kandji-bee-dark-icon.png?fit=max&auto=format&n=20OhJ3wZmF4DKbOd&q=85&s=1d4b643c8e1903aabdb072fdf211f2de" alt="" style={{ height: '1em', width: 'auto', maxHeight: '1em', verticalAlign: '-0.125em', margin: '0 0.05em' }} width="400" height="284" data-path="assets/media/images/kandji-bee-dark-icon.png" /> to **Iru** <img src="https://mintcdn.com/iru/8j4H0SpqtcKJ5JUM/assets/media/svgs/Iru-Logomark-OnLight-16-Dashboard.svg?fit=max&auto=format&n=8j4H0SpqtcKJ5JUM&q=85&s=befa6ce99e1df18d397deb65aec8edaf" alt="" style={{ display: 'inline', height: '1em', width: 'auto', maxHeight: '1em', verticalAlign: '-0.125em', margin: '0 -0.08em 0 0', padding: 0 }} width="14" height="15" data-path="assets/media/svgs/Iru-Logomark-OnLight-16-Dashboard.svg" /> branding. The **Agent** app name changed from **Kandji Agent** to **Iru Agent**. Please update **scripts, automations, and utilities** that still reference the old app names.
</Note>

<Tabs>
  <Tab title="macOS" icon="apple" iconType="brands">
    ### About the macOS Agent

    Iru Endpoint's proprietary macOS agent extends the functionality of our platform beyond what the MDM framework can achieve by itself. The Iru Agent for macOS is custom-built using Swift, a streamlined programming language specifically designed for **Apple devices**. Additionally, the Iru Agent installs and uses a system extension leveraging Apple's Endpoint Security framework, both for added device management functionality as well as for EDR and Vulnerability Management.

    #### Actions performed by the Iru Agent

    <CardGroup cols={3}>
      <Card title="App Blocking" icon="ban" href="/en/endpoint/library/library-items-profiles/configure-the-app-blocking-library-item">
        Blocks applications specified in the App Blocking Library Item and presents the Iru Endpoint dialog window to end users. Handled by the Iru system extension to ensure blocks happen as quickly and effectively as possible.
      </Card>

      <Card title="Auto Apps" icon="arrows-rotate" href="/en/endpoint/library/auto-apps/auto-apps-overview">
        Installs and enforces updates for Auto Apps. On limited networks, background update downloads may be deferred until enforcement is due soon. See [Downloads on limited networks](#downloads-on-limited-networks) below.
      </Card>

      <Card title="Computer details and inventory" icon="desktop">
        Collects the full application list and other system details the MDM framework cannot always pull. Application inventory data in Prism is gathered by the Iru system extension, allowing it to be made available in near real-time.
      </Card>

      <Card title="Custom Apps" icon="box" href="/en/endpoint/library/library-items-profiles/custom-apps-overview">
        Installs DMG, PKG, and ZIP files and runs audit, pre-install, and post-install scripts. Can force restarts when that option is enabled. See also [Configure the Mac Custom App Library Item](/en/endpoint/library/library-items-profiles/configure-the-custom-apps-library-item).
      </Card>

      <Card title="Custom Printers" icon="print" href="/en/endpoint/library/library-items-profiles/custom-printers-overview">
        Installs Custom Printers with downloadable files. On limited networks, background downloads may be deferred until enforcement is due soon. See [Downloads on limited networks](#downloads-on-limited-networks) below.
      </Card>

      <Card title="Endpoint Detection and Response" icon="shield-virus" href="/en/endpoint/endpoint-detection-response-edr/endpoint-detection-and-response-edr-overview">
        EDR and its associated scans are completed using the Iru Agent.
      </Card>

      <Card title="Parameters" icon="sliders" href="/en/endpoint/getting-started/blueprints-and-library/configuring-parameters">
        Most Parameters go beyond the MDM framework. For example, the Manage SSH Config parameter requires the Iru Agent to write to the SSH config file.
      </Card>

      <Card title="Scripts" icon="terminal" href="/en/endpoint/library/library-items-profiles/custom-scripts-overview">
        All scripts are run as root by the Iru Agent.
      </Card>

      <Card title="Vulnerability Management" icon="magnifying-glass" href="/en/endpoint/vulnerability-management/vulnerability-management-overview">
        Vulnerability Management and its associated scans are completed using the Iru Agent.
      </Card>
    </CardGroup>

    #### Downloads on limited networks

    When macOS reports that the current connection is constrained (for example Low Data Mode), expensive (for example a mobile hotspot), or both, the Iru Agent adjusts when it downloads managed software.

    During background processing at [check-in](/en/endpoint/devices/device-check-in/device-check-in), the agent defers Auto App update downloads and Custom Printer file downloads on limited networks unless the install is due within 8 hours. When enforcement is approaching, the agent proceeds with the download and records the reason in the agent log.

    For installs, updates, and reinstalls that a user starts in [Iru Self Service](/en/endpoint/settings/self-service/self-service-for-macos) or the Iru menu bar app, the agent warns before downloading on a limited connection. The message reflects the network type macOS detected.

    <Frame>
      <img src="https://mintcdn.com/iru/UQnyR6hRQ3kbgi7q/assets/media/images/iru-self-service-network-considerations-dialog.png?fit=max&auto=format&n=UQnyR6hRQ3kbgi7q&q=85&s=5d51e6d4b096f5662799536762c32d87" alt="Iru Self Service Updates view with Network considerations dialog warning that macOS identified a constrained network or mobile hotspot before updating apps" width="2020" height="1380" data-path="assets/media/images/iru-self-service-network-considerations-dialog.png" />
    </Frame>

    The agent still downloads managed software without deferral in these cases:

    * First-time installs, including Library Items selected for install during [Automated Device Enrollment](/en/endpoint/settings/apple-integrations/configure-automated-device-enrollment)
    * Forced installs from [Vulnerability Response](/en/endpoint/vulnerability-management/configure-the-vulnerability-response-library-item)

    Agent logs record deferrals, proceed decisions, and user cancellations so you can see why an install or update ran or did not run. See [Troubleshooting Agent Check-Ins](/en/endpoint/devices/device-check-in/troubleshooting-agent-check-ins) for log locations and related steps.

    ```text agent.log theme={null}
    AutoApp Discord: deferring download because network is constrained
    AutoApp Firefox: network is constrained, proceeding with download due to impending enforcement at 2025-11-12 23:00:00 +0000
    AutoApp Asana: network is expensive and constrained, proceeding with download due to impending enforcement at 2023-09-29 16:00:00 +0000
    Install/update of 1Password 8 cancelled by user on limited network.
    ```

    ### About the MDM Framework

    Using Apple's MDM framework in macOS, iOS, iPadOS, and tvOS, you can deploy and configure apps and settings, collect device information, and remotely lock or wipe devices. This can be done with corporate-owned as well as Bring Your Own Device (BYOD) devices.

    One advantage of using Apple's MDM framework is how quickly it can communicate with devices. That means commands (such as to lock or erase devices) are implemented almost instantly. This is made possible by the [Apple Push Notification service (APNs)](/en/endpoint/settings/apple-integrations/configure-apple-push-notification-service). Apple devices are constantly polling APNs for notifications requesting that managed devices check in with their MDM servers. Because of this constant polling, management of online devices can happen almost instantly.

    #### Actions performed by MDM

    <CardGroup cols={3}>
      <Card title="Apps and Books" icon="bag-shopping" href="/en/endpoint/settings/apple-integrations/configure-apps-and-books">
        Installs apps acquired via Apple Business or Apple School Manager using the MDM protocol (formerly VPP). See also [Add Apps from Apps and Books](/en/endpoint/settings/apple-integrations/add-apps-from-apps-and-books-to-iru-endpoint).
      </Card>

      <Card title="Automated Device Enrollment" icon="mobile-screen" href="/en/endpoint/settings/apple-integrations/configure-automated-device-enrollment">
        Enrolls devices during Setup Assistant using the MDM protocol (formerly DEP).
      </Card>

      <Card title="Iru Agent installation" icon="download">
        When a macOS device enrolls into Iru Endpoint, one of the first commands is `InstallEnterpriseApplication` to install the Iru Agent.
      </Card>

      <Card title="Iru Agent reinstallation" icon="arrows-rotate" href="/en/endpoint/devices/device-check-in/troubleshooting-agent-check-ins">
        Automatically sends `InstallEnterpriseApplication` when the device checked in via MDM in the last 7 days but not via the Iru Agent in the last 7 days. See [Troubleshooting Agent Check-Ins](/en/endpoint/devices/device-check-in/troubleshooting-agent-check-ins) if the agent is not checking in.
      </Card>

      <Card title="MDM Commands" icon="bolt">
        Delivers commands such as those in the device Action menu through the MDM protocol.
      </Card>

      <Card title="Over-the-air enrollment" icon="cloud-arrow-down" href="/en/endpoint/enrollment/apple/configuring-apple-enrollment">
        When users download the enrollment profile from the enrollment portal, device enrollment is handled through the MDM protocol.
      </Card>

      <Card title="Profile installation" icon="file-lines" href="/en/endpoint/library/library-items-profiles/library-overview">
        Delivers MDM configuration profiles to the device. See [Library Overview](/en/endpoint/library/library-items-profiles/library-overview) for how profiles and Library Items are managed.
      </Card>
    </CardGroup>
  </Tab>

  <Tab title="Windows" icon="microsoft" iconType="brands">
    ### About the Windows Agent

    Windows devices in Iru Endpoint are managed through a combination of Windows MDM (mobile device management) and the Iru Agent. The Iru Agent handles application management (installation and upgrade) and gathers application inventory from devices; MDM handles device policies and configuration. The agent checks in every 15 minutes. Devices are enrolled via the [Enrollment Portal](/en/endpoint/enrollment/windows/configuring-windows-enrollment); the agent is installed automatically as part of MDM enrollment.

    #### Actions performed by the Iru Agent

    <CardGroup cols={3}>
      <Card title="Blueprint policies" icon="map" href="/en/endpoint/getting-started/blueprints-and-library/configuring-blueprints">
        Retrieves and enforces policies assigned to Blueprints that are not deployed through the MDM channel.
      </Card>

      <Card title="Auto Apps" icon="arrows-rotate" href="/en/endpoint/library/auto-apps/auto-apps-overview">
        Installation and updates for assigned Auto Apps are handled via the Iru Agent.
      </Card>

      <Card title="Custom Apps" icon="box" href="/en/endpoint/library/library-items-profiles/custom-apps-overview">
        Installs MSI and EXE installers delivered in a zip archive. See also [Configure the Windows Custom App Library Item](/en/endpoint/library/library-items-profiles/configure-the-windows-custom-app-library-item).
      </Card>

      <Card title="Application inventory" icon="list" href="/en/endpoint/devices/device-check-in/device-check-in">
        Collects and submits the full application inventory to Iru Endpoint on each check-in. See [Device Check-In](/en/endpoint/devices/device-check-in/device-check-in) for check-in frequency and behavior.
      </Card>

      <Card title="Agent updates" icon="download">
        The agent updates itself to a newer version when available.
      </Card>

      <Card title="Custom PowerShell scripts" icon="terminal" href="/en/endpoint/library/library-items-profiles/custom-scripts-overview">
        The Iru Agent runs custom PowerShell scripts assigned through Library Items.
      </Card>
    </CardGroup>

    ### About the MDM Framework

    Windows includes a built-in management component that communicates with the management server using the [MDM protocol](https://learn.microsoft.com/en-us/windows/client-management/mdm-overview). Using Windows MDM, you can enroll Windows devices, deploy configuration profiles and system policies, and send commands such as wipe or retire. When you make changes in the Iru Endpoint Web App, requests are sent via [Windows Push Notification Services (WNS)](https://learn.microsoft.com/en-us/windows/client-management/push-notification-windows-mdm). Managed Windows devices that are online typically respond within minutes.

    #### Actions performed by MDM

    <CardGroup cols={3}>
      <Card title="Device enrollment" icon="door-open" href="/en/endpoint/enrollment/windows/configuring-windows-enrollment">
        Establishes the MDM connection during enrollment and installs the Iru Agent as part of the process. See [Windows Enrollment](/en/endpoint/getting-started/enrollment/windows-enrollment) and [User Experience with Windows Enrollment](/en/endpoint/enrollment/windows/user-experience-with-windows-enrollment).
      </Card>

      <Card title="System policies" icon="shield-halved" href="/en/endpoint/library/library-items-profiles/configure-the-wi-fi-library-item">
        Delivers Wi-Fi, Windows Firewall, BitLocker, and other system policies through the MDM channel. These align with Microsoft's [MDM security baseline](https://learn.microsoft.com/en-us/windows/client-management/mdm-overview#mdm-security-baseline). Configure via Library Items such as [Wi-Fi](/en/endpoint/library/library-items-profiles/configure-the-wi-fi-library-item), [Windows Firewall](/en/endpoint/library/library-items-profiles/configure-the-windows-firewall-library-item), and [BitLocker](/en/endpoint/library/library-items-profiles/configure-the-bitlocker-library-item).
      </Card>

      <Card title="Event-driven commands" icon="bolt" href="/en/endpoint/devices/device-check-in/device-check-in">
        Commands such as wipe or retire a device and deploy a configuration profile are sent via WNS and typically apply within minutes when the device is online.
      </Card>

      <Card title="Daily MDM check-in" icon="clock">
        Runs a full sync every 24 hours to validate system configuration against admin intent, remediate drift, and collect daily device information (system info, hardware inventory, policy status).
      </Card>

      <Card title="Profile installation" icon="file-lines" href="/en/endpoint/library/library-items-profiles/library-overview">
        Delivers configuration profiles through the MDM protocol. See [Library Overview](/en/endpoint/library/library-items-profiles/library-overview) for how Library Items and profiles are managed.
      </Card>
    </CardGroup>

    For Windows agent troubleshooting (force check-in, reinstall), see [Troubleshooting Agent Check-Ins](/en/endpoint/devices/device-check-in/troubleshooting-agent-check-ins). Windows agent logs are located at `%ProgramData%\kandji\agent\logs`.
  </Tab>
</Tabs>
