# io.Connect Desktop 10.0.4 is out

**URL:** https://community.interop.io/t/io-connect-desktop-10-0-4-is-out/521
**Category:** io.Connect Desktop
**Tags:** release, News
**Created:** [March 11, 2026, 9:01am UTC](https://community.interop.io/t/io-connect-desktop-10-0-4-is-out/521 "2026-03-11T09:01:05Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![interop.io-Team](https://yyz2.discourse-cdn.com/flex028/user_avatar/community.interop.io/interop.io-team/32/169_2.png) [@interop.io-Team](https://community.interop.io/u/interop.io-Team)
#### Post date: [March 11, 2026, 9:01am UTC](https://community.interop.io/t/io-connect-desktop-10-0-4-is-out/521/1 "2026-03-11T09:01:05Z")

</div>

**io.Connect Desktop 10.0.4** was released on **6 March 2026**. This is a focused release that adds Microsoft Entra ID SSO support, gives seed projects install/uninstall automation hooks, improves app-management ergonomics, and extends Intents with custom handler configuration. It also updates the runtime stack to **Electron 39.6.0** , **Chromium 142.0.7444.265** , and **Node.js 22.22.0**.

Full changelog: [io.Connect Desktop 10.0.4](https://docs.interop.io/desktop/getting-started/changelog/10-0-4/index.html)

* * *

## Highlights

### Microsoft Entra ID SSO Support

io.Connect Desktop now supports seamless SSO authentication with Microsoft Entra ID by automatically injecting Windows proof-of-possession cookies into requests to specified Microsoft Entra ID login URLs. This is configured through the `entraSSO` top-level key in `system.json`, and the default Microsoft Entra ID endpoints are included by default.

**Details** [io.Connect Desktop Documentation - Security](https://docs.interop.io/desktop/getting-started/security/index.html#authentication-microsoft_entra_id_sso)

### Seed Project install & uninstall tasks

The seed project now support custom install and uninstall tasks triggered from the command line, which makes it easier to automate setup and cleanup steps during packaging, installation, uninstallation, and updates. OS-specific task files are defined in the `modifications/build/iocd/install/` directory, i.e. `tasks.win32.json` for Windows and `tasks.darwin.json` for macOS, and triggers include `--post-install`, `--pre-uninstall`, `--squirrel-install`, `--squirrel-uninstall`, and `--squirrel-updated`.

**Details:** [io.Connect Desktop Documentation - Seed Project](https://docs.interop.io/desktop/developers/seed-project/index.html#building_for_production-install_tasks)

### Batch removal of in-memory app definitions

The `InMemoryStore.remove()` API now supports removing multiple app definitions in one call by passing an array of app names. That makes dynamic app lifecycle management cleaner when you need to unregister several definitions at once.

**Details:** [io.Connect Desktop Documentation - App Management \> JavaScript](https://docs.interop.io/desktop/capabilities/app-management/javascript/index.html)

### Custom configuration for Intent handlers

Intent handlers can now receive custom configuration through the `customConfig` property. It can be defined statically in the app definition, or passed dynamically through `AddIntentListenerRequest` when registering an Intent.

**Details:** [io.Connect Desktop Documentation - Data Sharing \> Intents \> JavaScript](https://docs.interop.io/desktop/capabilities/data-sharing/intents/javascript/index.html#custom_configuration_for_intent_handlers)

* * *

## Improvements & bug fixes

This release also upgrades the platform to **Electron 39.6.0** and includes a set of practical fixes: improved handling of internal file paths in the platform bundle, better platform console output logging, improved compatibility between newer `@interopio/desktop` library versions and older platform versions, and more.
