# Link widgets and set up wires

> Draw a wire from one widget to another to feed it context, transform it with AI or keep a copy in sync, then change, run, pause or undo what it does.

Source: https://plexiidesk.com/help/canvas-link-widgets
Section: Desks and the canvas > Bring things in and connect them
Plans: All plans
Updated: 2026-10-10

A wire is a line you draw from one widget to another on the same desk. It tells PlexiDesk how the two belong together: whether one is background for the other, whether one should be rewritten into the other by AI, or whether one should simply copy into the other.

The widget you start from is the **source**. The widget you click is the **target**. There are three kinds of wire:

| Wire | In the picker | What it does |
| --- | --- | --- |
| **Context** | **Feed in as context** | Nothing runs. The source becomes background that the target reads when it does its own work, such as a Desk agent or a Custom widget. |
| **Transform** | **Transform it** | When the source changes, AI runs your instruction on it, for example "extract action items", and writes the result into the target. |
| **Mirror** | **Keep in sync** | Every time the source changes, its content is copied into the target. |

## Before you start

- **Plans:** wires work on every plan.
- **AI:** Context and Mirror wires need no AI, with one exception: a wire into a Table is filled in by the table's AI. Transform wires always use AI. When you are signed in, AI runs on your PlexiDesk credits; you can also use your own Anthropic key. See [AI credits and where your AI runs](https://plexiidesk.com/help) and [Add your own API keys](https://plexiidesk.com/help/api-keys).
- **Both widgets on the same desk.** To pull in something from another desk, add a [Portal widget](https://plexiidesk.com/help) for that desk and wire the Portal.

## Draw a wire

1. Point at the widget you want to start from. The buttons in its title bar appear.
2. Click the link button. Its tooltip says **Click, then click another widget to connect them**. On a Section, use the link button in the section's label bar instead (**Link from this section**).
3. A banner at the top of the desk says **Linking from** and the widget's name, and a dashed line follows your pointer.
4. Click the widget you want to connect to.
5. The **How should this connect?** box opens where you clicked. Choose **Feed in as context**, **Transform it** or **Keep in sync**.

If you choose **Transform it**, the **Live wire** editor opens straight away so you can say what the transform should do. See [Set up a Transform wire](#set-up-a-transform-wire) below.



To stop before you click a target, press `Esc`, click **×** on the banner, or click an empty part of the desk.

If you close the **How should this connect?** box without choosing, by pressing `Esc`, clicking **×** or clicking somewhere else, the wire stays as a Context wire. You can change it at any time by clicking the line.

You can connect widgets inside a Section, a Section itself and pinned widgets, as well as ordinary widgets on the desk.

### A faster way: Create & link

Right-click a widget and point at **Create & link** to make a new widget beside it that is already wired to it. The choices include **Automate with an agent**, **Send to a URL**, **Sticky**, **Note**, **Markdown**, **Page**, **File**, **Field**, **Table** and **Color**. The new wire is a Context wire, which you can change by clicking the line. See [Right-click menus](https://plexiidesk.com/help/right-click-menus).

## Read the lines on your desk

Each kind of wire looks different, so you can see at a glance what a desk is doing:

- **Context** is a thin dashed line.
- **Transform** and **Mirror** are solid lines with an arrowhead pointing at the target.
- **A paused wire** is a faint dotted line.
- **A wire that is running** glows, with a pulse travelling from source to target.

A small round badge sits in the middle of every line: a link icon for Context, a sparkle for Transform and two circling arrows for Mirror. Point at the badge to see how the wire is doing:

- **running…** while it works.
- **hasn't run yet**, with a small blue dot on the badge.
- **stale, source changed since it last ran**, with a small amber dot.
- **off** when it is paused.
- **last run failed**, followed by the reason. The badge turns red.
- When everything is up to date, the tooltip names the wire and when it last ran, for example **Transform wire (ran 5m ago)**.

## Change a wire in the Live wire editor

Click a line, or the badge in its middle, to open the **Live wire** editor.



At the top are three buttons to change the wire's type: **Context**, **Transform** and **Mirror**, with a line underneath that explains the one you have chosen. Below that, the controls depend on the type.

**For a Transform wire:**

- **Recipes** give you a ready-made instruction in one click: **Extract action items**, **Summarize**, **Pull key points**, **Turn into a table**, **Draft a reply**, **Rewrite clearer** and **Find dates & deadlines**. Clicking a recipe fills in the instruction and runs the wire straight away. Recipes are offered when the source holds text: a Sticky, Note, Markdown, Page, Card, Document, Living Doc, File or link, Browser, Voice note or Desk agent.
- **The instruction box** (it suggests "e.g. extract action items") is where you write your own instruction. Press `Enter` to save it and run the wire.
- **Run now** runs the wire once, immediately.
- **Auto-run**, when ticked, runs the wire by itself whenever the source changes. Untick it to pause the wire and run it only when you click **Run now**.

**For a Mirror wire:**

- **Keep target mirrored**, when ticked, copies the source into the target on every change. Untick it to pause.

**For every wire:**

- **Recent activity** lists the latest writes the wire made into the target, up to six: **Wrote from**, **Copied from** or **Delivered from** the source, how long ago, and the start of the text it wrote. **Revert this write** puts the target back the way it was just before that write.
- **Unlink** removes the wire. Both widgets stay on the desk.

Close the editor with **×**, or click anywhere else on the desk.

## Set up a Transform wire

This example turns meeting notes into a list of action items that keeps itself up to date.

1. Put a Note on the desk for your meeting notes, and a Page beside it for the action items.
2. Draw a wire from the Note to the Page, as in [Draw a wire](#draw-a-wire).
3. In **How should this connect?**, choose **Transform it**. The **Live wire** editor opens.
4. Click the **Extract action items** recipe, or type your own instruction and press `Enter`.
5. The result is written into the Page.

From now on, whenever you edit the Note, the wire runs again a moment after you stop typing, and the Page is updated. A burst of quick edits becomes one run, not many.

### What a Transform can read

- **Text widgets** such as a Sticky, Note, Markdown, Page or Card: whatever is written in them.
- **A Browser widget:** the text of the page as it is showing, including pages you are signed in to.
- **A File or link widget:** the text inside a PDF (including a scanned PDF, which is read on your device), a Word .docx file, a spreadsheet or a text file.
- **A Portal widget:** the desk it shows.
- **A Desk agent:** its latest output.

A Transform reads up to the first 8,000 characters of its source. For a very long source, point the wire at a summary of it instead. Pictures and video have no text, so they cannot feed a Transform.

## What the target receives

A Transform or Mirror wire **replaces** what is in the target each time it runs, apart from a Table, which is updated row by row. Keep anything you want to hold on to in a different widget.

| Target | What happens |
| --- | --- |
| Sticky, Note or Markdown | The text replaces what is there. |
| Page | The text becomes the page, with lines starting `#` as headings and lines starting `-` as bullets. |
| Card | The first line becomes the card's title and the rest its body. |
| Table | The table's AI adds a row for each new item and updates rows it recognises, matched on the first text column. It adds any columns it needs and never removes rows. |
| Document | The text replaces the document's body. The change is saved in the document's version history as **Updated by a wire**. |
| Mind map | The first line becomes the central idea and the next lines its branches. |
| Shape | The first line becomes the shape's label. |
| Field | The field's value is set from the text, in the field's own type. |
| Browser or File or link | Only when the text is a web address: the widget opens that address. |

Spreadsheets, slide decks and widgets that hold settings rather than text, such as a Timer, Color or Section, cannot receive text from a wire. If you point a Transform or Mirror wire at one, its badge turns red and the tooltip says so. Point it at a Page, Note, Card, Sticky, Table or Document instead.

## Widgets that work with wires

Some widgets are made to be wired:

- **Desk agent.** Every widget you wire into an agent becomes one of its inputs, whatever the wire type. A wire drawn out of an agent delivers the agent's latest output into the target. See [Desk agent widget](https://plexiidesk.com/help/widget-desk-agent).
- **Send to a URL.** Wire any widget into it, and its content is sent to the web address you set every time it changes, whatever the wire type. See [Send to a URL widget](https://plexiidesk.com/help).
- **Receive from a URL.** What another service sends to its address flows along any wire drawn out of it. See [Receive from a URL widget](https://plexiidesk.com/help).
- **Portal.** Wire widgets into a Portal that has no desk chosen and it becomes a **Rollup** that combines them into one feed. A Portal wired into an agent gives the agent the whole desk it shows. See [Portal widget](https://plexiidesk.com/help).
- **Custom** (Pro and Team plans). A Custom widget can read the widgets you wire into it, and updates when they change. See [Custom widget: build your own tool](https://plexiidesk.com/help/widget-custom).

To see everything on a desk that runs by itself, open the Automations panel. See [See what runs on its own on a desk](https://plexiidesk.com/help/canvas-automations).

> **Tip:**
> To explore ten working examples, press `⌘` `K` on a Mac or `Ctrl` `K` on Windows, type showcase, and choose **Create Wire & Agent Showcase desk**. It builds a new desk with examples of Transform, Mirror, desk agents and both URL widgets, each with a card that explains it. The examples that use AI run once AI is set up for your account.

## Tips

- **Wires do their work while the desk is open.** They respond to changes you make on the desk in PlexiDesk.
- **Changes never loop back.** When a wire writes into a widget, that write does not set off the widget's own wires straight away, so two wires pointing at each other cannot bounce a change back and forth. To pass a change on along the next wire in a chain, open that wire and click **Run now**.
- **One wire each way.** Between two widgets you can have one wire in each direction. Linking the same pair again in the same direction opens the existing wire.
- **Tidy keeps linked widgets together.** **Tidy** in the desk header and **Clean up** in the tool rail place widgets joined by wires next to each other, so the lines stay short. See [Tidy, auto-arrange and Smart Stack](https://plexiidesk.com/help/canvas-tidy).
- **Deleting a widget removes its wires.**

## Common questions

### I linked the wrong widgets. How do I undo it?

Press `⌘` `Z` on a Mac or `Ctrl` `Z` on Windows straight away to remove the wire you just drew. At any other time, click the line and choose **Unlink**.

### The badge on my wire is red. What do I do?

Point at the badge to read the reason. The usual fixes are:

- **The Transform has no instruction.** Open the wire and click a recipe, or type an instruction and press `Enter`.
- **The source is a picture or a video.** Use a source that holds text, such as a Note, Page, Browser or File or link widget with a PDF, Word file or spreadsheet.
- **The source is a File or link widget on a Mirror wire.** Change the wire to **Transform**, which reads the file's text.
- **The target cannot take text.** Point the wire at a Page, Note, Card, Sticky, Table or Document.
- **AI is not set up.** Sign in to use PlexiDesk credits, or add your own Anthropic key. See [AI settings](https://plexiidesk.com/help/settings-ai).

Then open the wire and click **Run now**.

### The badge has an amber dot. What does it mean?

The source has changed since the wire last ran, so the target may be out of date. For a Transform wire, open it and click **Run now**. A Mirror wire copies again the next time you edit the source.

### Does a Context wire do anything on its own?

No. A Context wire runs nothing. It tells the target what to read when it works: a Desk agent reads its inputs when it runs, and a Custom widget or a Rollup portal reads what is wired into it. The one exception is a wire into **Send to a URL**, which sends the source's content whenever it changes.

### How do I pause a wire without deleting it?

Open the wire and untick **Auto-run** (Transform) or **Keep target mirrored** (Mirror). You can also use the wire's switch in the Automations panel. See [See what runs on its own on a desk](https://plexiidesk.com/help/canvas-automations).

### How do I get back something a wire overwrote?

Open the wire and look under **Recent activity**. Click **Revert this write** on the write you want to undo. For a Document, you can also restore an earlier version from its version history. See [Version history](https://plexiidesk.com/help).

## Related tasks

- [See what runs on its own on a desk](https://plexiidesk.com/help/canvas-automations)
- [Desk agent widget](https://plexiidesk.com/help/widget-desk-agent)
- [Keep a running summary with a desk agent](https://plexiidesk.com/help)
- [Send desk updates to other services and receive events back](https://plexiidesk.com/help)
- [The controls on every widget](https://plexiidesk.com/help/widget-title-bar)
