Petal Puts Your Teammate’s Shared Windows Beside Your Own Code

Your teammate keeps flipping between the broken page and the editor in a screen share, and you need both in view. What does Petal change, and is it ready for your team's machines?

Petal Puts Your Teammate’s Shared Windows Beside Your Own Code
TLDR
  • Petal is a free, open-source pairing tool that displays shared windows as separate windows on your desktop.
  • You can arrange a teammate’s editor and browser beside your work, then request control when you need to type.
  • Windows support is early. Self-hosting requires infrastructure and a client built for your backend.

Arrange the shared work around your own

Petal lets the recipient decide where each shared window belongs. A teammate’s editor can sit beside your editor, with their running app in another window. The official site describes simultaneous sharing by several participants, rather than requiring one person to present at a time.

Consider a debugging session where you need both the code and the failing page. Instead of asking the presenter to switch between them, you can keep both visible in the arrangement you need. The remote application still runs on its owner’s computer; the desktop window is a view of that application, not a local copy of the project.

A reader in the launch discussion asked when this would beat ordinary meeting-app screen sharing. The useful distinction is the task: watching a presentation is different from arranging several working windows and occasionally interacting with the same application.

A visible cursor is not the same as permission to type

Petal shows participant cursors on shared windows. Actual keyboard and mouse control has a separate approval step. The default asks the sharer for consent each time; settings also allow automatic approval or disabling control. macOS remote control needs Accessibility permission.

The control model allows concurrent controllers, and stopping a share revokes its active grants. This makes a useful trial quite concrete: explain a change, approve a colleague’s request to make it, then stop the share. Their input affects the real application.

Include your normal shortcuts and input methods in that trial. If the team edits multilingual documents alongside code, test the input methods it actually uses in those applications.

Mac and Windows are at different stages

The project’s status notes describe a pre-1.0 product and call remote control early. A download for both platforms does not mean equal readiness.

ClientCurrent consideration
macOSRequires macOS 13 or later. The signed, notarized universal app supports Intel and Apple Silicon.
WindowsBasic sharing works, but support is incomplete and buggy. The installer is unsigned for Authenticode.
BrowserA browser client accepts room codes and invite links; that does not establish desktop feature parity.

Latency also needs a trial on the machines and connection your team uses. The validation document separates tests on one host from tests across real machines. Passing the former does not promise a particular remote pairing experience.

Open source gives you an operating choice

CoScreen co-founder Jason Thomas says four members of the original team built Petal and released it free and open source. The repository uses Apache-2.0. Teams can use the hosted service or operate their own deployment.

The self-hosting guide requires a LiveKit server, a token backend and a desktop client built with that backend’s URL. Budget for those pieces rather than assuming an existing download can simply be pointed at a new server.

Hosting also changes whom you trust with shared material. Petal’s privacy documentation says media is encrypted in transit but not end-to-end encrypted: the SFU operator can, in principle, access it.

Start with one ordinary debugging task. Keep the editor and running app visible, test control and revocation, and check your usual input methods. That gives the team a practical basis for deciding whether independent shared windows improve its work.