---
title: "Embedded apps (Windows)"
description: "Put Outlook, Excel, Word, Edge, Explorer, and other native Windows apps directly on the Cerevisor canvas as nodes."
slug: guides/advanced/embedded-apps-windows
section: guides
subsection: advanced
canonical_url: https://cerevisor.com/docs/guides/advanced/embedded-apps-windows
last_verified: 2026-05-18
last_verified_version: "1.2.0"
updated_at: 2026-05-18T15:08:18.053416+00:00
---

Cerevisor can embed real Win32 applications as nodes on the canvas. The actual Outlook, Excel, or Word window appears inside the node; you interact with it normally, and agents in your workflow can pull data from it.

> **Windows-only feature.** The macOS build hides this entire surface (`CAPS.embeddedApps` is `false` on Mac). Workflows authored on Windows that include embedded-app nodes will render placeholders on macOS so the `.cerevisor` file round-trips cleanly.

## Supported apps

The current registry:

- **Outlook**: emails, calendar events, contacts.
- **Excel**: spreadsheet data, named ranges, sheets.
- **Word**: document content.
- **Edge / Explorer / Notepad**: generic window embed for visual context.
- **Generic**: embed any Win32 app without specialized data extraction.

Each app's data-source integration lives in a single registry; adding a new app is a one-entry change.

## Adding an embedded app to the canvas

Two paths:

1. **Right-click canvas → Embed app.** Opens the Embedded App Picker modal.
2. **Embedded Apps Dock** in the bottom-left corner of the canvas → **+ Embed app**.

The picker shows a grid of supported apps. Click one.

For some apps (Outlook), Cerevisor auto-detects the running instance and attaches to its main window. For others (Generic), you're prompted to pick a window.

The embedded app appears as a node on your canvas with the app icon + name and a transparent shell over the real native window.

## Window embedding mechanics

Behind the scenes, Cerevisor uses a single shared PowerShell child process running `window-embed.ps1` that multiplexes Attach/Move/Detach calls across every active embedded-app node. One PowerShell child handles all your embedded apps (Add-Type compilation is slow; per-embed children would be wasteful).

The embedded node:

- Re-parents the native window to Cerevisor's window region.
- Resizes/moves the native window to track the canvas node.
- Forwards mouse and keyboard events to the native window so you interact normally.

## Connecting embedded apps to agents

Drag from the embedded app node to an agent. The **Embed Data Selection** popup opens, showing which data feeds are available for that app:

- **Outlook:** Selected emails, current calendar view, contacts.
- **Excel:** Active sheet, named range, selection.
- **Word:** Current document text.
- **Generic apps:** No structured feeds: connection is rendered as a visual link only.

Pick a feed. The connection is created. The agent now reads from the embedded app's live data when it runs.

## How agents consume embedded data

When the workflow runs, the agent's input includes the embedded app's data via Cerevisor's data-source registry. For Outlook, the harness:

1. Calls the Outlook data source's `getSelectedMail()` (or whichever feed you picked).
2. Serializes the result as text.
3. Injects it as part of the agent's input.

The agent reads it via the standard input mechanism, same as any other input.

## Removing an embedded app

Right-click the embedded app node → **Delete**. The native window detaches and returns to its normal state.

The Embedded Apps Dock at the bottom-left of the canvas shows every active embed; you can also delete from there.

## When it works

- The target app must be installed on the same machine running Cerevisor.
- The target app must be running (Cerevisor doesn't launch apps).
- For Outlook integration, Outlook desktop (Win32) is required: the web Outlook doesn't work.

## When it doesn't work

- Cross-machine remoting (Citrix, Remote Desktop) breaks the Win32 window-parenting. Embedded apps need to be on the same desktop.
- UWP / Store apps have inconsistent window-parenting behavior. Win32 desktop apps are the supported target.
- Some apps run in an isolated process that won't let another window re-parent it. Rare, but you'll hit it occasionally.

## Persistence in `.cerevisor` files

Embedded app nodes are saved in the workflow file. When you re-open the workflow:

- On Windows: Cerevisor attempts to re-attach to the running instance of each embedded app. If the app isn't running, the node shows an "Attach" button.
- On macOS: a placeholder renders showing the app's name and "Windows-only" tag. The workflow file is unmodified: re-saving keeps the embedded-app config intact.

## Privacy

Embedded apps are local. Nothing about what Outlook or Excel contains leaves your machine through Cerevisor unless an agent reads the data and that agent's provider is a remote API (Anthropic, OpenAI, etc.). The embedding itself is purely visual + IPC.
