Built into Webstarted Toolbox · macOS & Windows

Send a link, a screenshot or a whole file to the computer next to you.

Two computers on the same network see each other from the menu bar, and you send text, an image or a file of up to 4 GiB across, Mac to Windows included. No server, no account, nothing leaves your network. Text lands on the clipboard, files and images in Downloads, and nothing is used until you accept it. Looking for the Mac-to-PC story specifically? Start here.

Free · No account · Local network only · Built into the app · macOS 12+ & Windows 10+
Mac ↔ WindowsSame network, either direction
Text, image or fileUp to 4 GiB per file
No server, no accountIt never leaves your LAN
You accept itBefore a byte crosses
How it works

Open the same tab on both computers. That is the setup.

The widget starts behind a single button, because turning it on opens ports and — on macOS — asks for the “Local Network” permission, and a permission prompt with no explanation is an uninstall. So it explains itself first, you press Enable, and each machine announces itself on the network under its own name (the machine name, which you can rename to whatever you like).

From there the other computer appears in the list with its address, and sending is one click. That opt-in is not remembered between sessions: every time you come back to the widget you enable it again, which is the flip side of the promise below — nothing is listening while you are not there.

  • Discovery is a broadcast on your own network; the transfer is machine to machine
  • Both sides need the tab open — the ports close when you look away
  • Devices re-announce every few seconds and drop off the list after about twelve
  • Lives in the Share tab, next to Clipboard history
  • On macOS, a button opens the exact System Settings pane for the permission
Sending a file

A PDF, a zip, a 2 GB video. It is accepted before a single byte of it crosses.

Drag a file onto the panel or press “Choose file…” and it goes across whole, up to 4 GiB, with its bytes and its name untouched: a JPG arrives as a JPG, not as a re-encoded PNG. What the app receives from you is a path, never the contents, so the file is read from disk in 256 KiB chunks and written to disk the same way. Memory use is flat whether it is 5 MB or 4 GB.

The order matters more than the speed. Your machine name, the filename with its extension and the size travel first; the other person sees exactly that and decides. Only then does the content start moving. While it arrives it is a .wtbx-part file that is not your file yet, the SHA-256 is verified at the end, and only a match earns the real name. A cut transfer leaves nothing behind, instead of a truncated archive that opens and is quietly wrong.

  • Either side can cancel; a transfer already running survives hiding the popover
  • Received files land in Downloads and never overwrite: a taken name gets a number
  • No answer in 90 seconds counts as a no, and the sender is told
  • One file at a time. No multi-select, no folders, and no resuming a cut transfer
  • Both computers need an up-to-date Toolbox: older versions refuse the newer protocol
Where it lands

Text goes to the clipboard. Files and images go to Downloads. None of it happens behind your back.

What arrives shows up as a card with the sender’s name and a preview, and two buttons: Copy (or Save) and Discard. Until you press one, nothing has touched your clipboard or your disk — a machine on your network can offer you something, it cannot put it anywhere. Accept a text and the next paste is it; accept an image and it is a PNG in Downloads, never overwriting a file that was already there.

Compose by typing, by dragging a file, by pressing “Choose file…”, or by pasting an image from the clipboard. The split between the two is by origin, not by type: what has a path on disk travels as a file with its bytes intact, and what you pasted travels as an image. Limits are 256 KB of text, 25 MB per image and 4 GiB per file. An incoming image is not trusted: it is really decoded, with caps on dimensions and memory so a tiny file cannot claim to be 30,000 pixels wide, and then re-encoded to PNG.

  • Filenames are stripped to a plain name: no paths, no invisible characters
  • A taken name becomes “name (1).png” instead of replacing anything
  • Text must be valid UTF-8 or it is refused
  • Files keep their real extension; a dragged JPG stays a JPG
Coming from AirDrop?

It crosses the Mac to Windows line. It still does not match AirDrop on secrecy.

AirDrop is excellent and stops at the edge of Apple’s ecosystem: the moment one of the two machines runs Windows, it is not an option. This is the gap this widget fills — same network, either direction, no account. But the comparison has to be honest in both columns: AirDrop encrypts what it sends and this does not. Here the content crosses your local network in the clear, which is fine for the office desk with your own two machines on it and wrong for airport WiFi.

The second difference used to be scope, and it mostly is not any more: this now moves a file of up to 4 GiB as well as text and images. What is left is smaller and worth saying plainly. AirDrop takes several files and folders at once and is a system service; this takes one file at a time, no folders, and needs Toolbox open on both sides. In exchange you get two things AirDrop has no notion of: text that arrives directly on the clipboard of the other machine, and a SHA-256 check on every file that lands.

  • Use it on networks you trust — your own home or office, not a café
  • The shared code controls who can send to you; it does not hide the traffic
  • For anything confidential, use a tool that encrypts in transit
  • The full Mac-to-PC walkthrough lives on its own page
ThisAirDrop
Mac → Windows✓—
Encrypted in transit—✓
Any file type✓✓
Several files or a folder—✓
Checksum on arrival✓—
Text onto the clipboard✓—
Works with no extra app—✓
Account or cloudNoneNone
The shared code

A code decides who can send to you — and says nothing about who can read it.

Leave it empty and any Toolbox on your network can offer you something (you still have to accept it). Set one — the dice button makes a readable ABC-DEF, with I, O and Q left out so nobody hears “eye” and types a 1 — and only machines carrying the same code get that far.

The check is a challenge-response, not a password sent across: the receiving side issues a fresh random nonce for every connection and the sender answers with an HMAC of the code over that nonce, compared in constant time. A wrong code is refused before a single byte of content is read, and an answer captured once is useless against the next nonce. What it does not do — and this is the part worth repeating — is encrypt the content that follows.

  • One port, open only while you are looking at the widget
  • Unknown connections are dropped before the handshake even starts
  • Announcements from a single source are rate-limited, so nobody floods the list
  • No agent tools, and agent access ships off for this widget on purpose
Part of Webstarted Toolbox

It comes with Toolbox. There is nothing to install.

Send to another computer is built into Webstarted Toolbox, the app that lives in your menu bar on macOS and your system tray on Windows — so it is already there the moment you install it, in the Share tab. These are a few of its neighbors:

FAQ

Questions, answered.

Does it work between a Mac and a Windows PC?

Yes — that is the point of it existing. Both machines run Webstarted Toolbox and sit on the same local network, and each one sees the other in the list by its machine name. Nothing about the transfer is platform-specific: text arrives as text, an image arrives as a PNG. There is no mobile version, so phone-to-laptop is not what this does.

Is the transfer encrypted?

No, and it would be dishonest to bury that. The content travels in the clear over your local network, which is why the widget says so on the screen where you enable it: use it on networks you trust. What the optional shared code adds is authentication — who is allowed to send to you — not secrecy. If what you are moving would hurt you in the hands of whoever else is on that WiFi, this is the wrong tool for it.

Does anything go through a server or the internet?

No. Discovery is a broadcast on your own network and the transfer is a direct connection between the two machines, on a single port they both open. There is no account, no relay, no cloud storage and nothing to sign into — which also means the two computers must genuinely be on the same network, not merely both online.

Why doesn’t the other computer show up?

Almost always one of three things. Both machines need the widget open — the ports only exist while you are looking at that tab, so you open the same tab on both. On macOS, Toolbox needs the “Local Network” permission; the widget has a button that opens exactly that pane in System Settings so you can check the box. And the network has to actually pass broadcasts: a guest network with client isolation, two different WiFi bands routed apart, a VPN capturing the traffic, or two subnets will all leave the list empty. Devices announce themselves every few seconds and drop off the list about twelve seconds after they stop.

Can I send a PDF, a zip, or any file?

Yes. Drag a file onto the panel or press “Choose file…”, and anything your machine can read goes across with its bytes and its name untouched: a PDF arrives as that PDF, a JPG arrives as a JPG, a 2 GB video arrives as that video. The ceiling is 4 GiB per file. One file at a time, though: there is no multi-select and no folders, so a folder gets zipped first or sent piece by piece.

Does the file go through the browser, or through memory?

Neither, and that is the whole design. The sender hands the app a path, not the contents, and both sides work in 256 KiB chunks straight to and from disk, so memory use stays flat whether the file is 5 MB or 4 GB. It also means the receiving machine is never holding a file it has not agreed to take: the name, the size and who is sending arrive first, and the content only starts moving after you press Accept.

How do I know the file arrived intact?

It is checked, not assumed. The sender hashes the file with SHA-256 before sending, the receiver hashes what it writes, and the two have to match. While it is arriving it is a “.wtbx-part” file that is not your file yet; it is renamed to the real name only after the hash checks out, and if anything went wrong the part file is deleted and both sides say so. That is the difference between a failed transfer and a truncated zip that opens and then is not right.

Can I resume a transfer that got cut off, or pick where files land?

No to both, and both are deliberate for now. There is no resume: on a local network a 4 GiB file is minutes, so a cut transfer is retried rather than repaired. And received files always land in Downloads, the same place images already went. You can cancel from either side at any point, and a transfer that is already running survives hiding the popover, so clicking away mid-send does not kill it.

Where does what I receive end up?

Text goes to the clipboard of the receiving machine, so the next paste is it. An image is saved to the Downloads folder as a PNG, and it never overwrites: a name already taken gets a numbered one instead, and the widget offers to reveal the file. Neither happens on its own — an incoming item shows up as a card with a preview and two buttons, and until you press Copy or Save nothing has touched your clipboard or your disk.

What is the shared code for?

It is optional, and it decides who may send to you: set one on a machine and only devices carrying the same code can deliver anything to it. Under the hood it is a challenge-response — the receiver issues a fresh random nonce per connection and the sender answers with an HMAC of the code over that nonce, compared in constant time — so a wrong code is refused before a single byte of content is read, and a reply captured once cannot be replayed later. The dice button generates a readable code like ABC-DEF, with I, O and Q left out of the alphabet so nobody mistypes them as 1 or 0 while reading it aloud.

How big can something be?

Up to 256 KB of text, 25 MB for an image and 4 GiB for a file. The receiving side does not trust what arrives: it checks the magic bytes, really decodes the image with limits on dimensions and memory so a small file cannot claim to be 30,000 pixels wide and exhaust your RAM, and then re-encodes it to PNG — the sender’s raw bytes are never passed along. The filename is stripped down to a plain name too, with no paths and no invisible characters that make a file display as something it is not.

Why does macOS ask for “Local Network” permission?

Because finding the other computer means broadcasting on your network, and macOS gates that. The prompt appears when you press Enable, not when you open the app, which is exactly why the widget starts behind a short explanation instead of asking for a permission out of nowhere. If you dismissed it, the peer list stays empty — and the widget has a button that opens System Settings → Privacy & Security → Local Network so you can turn it back on.

Does it keep a port open in the background?

No. The sockets open when you enable the network in the widget and close as soon as you look away — hiding the popover shuts them, and the enable step is not remembered between sessions, so it is always a deliberate click rather than something inherited from last week. The trade is honest: a discoverable machine is only discoverable while you are at it, and in exchange nothing is listening the rest of the day.

Can an AI agent send things from my machine?

Not today, and this widget is deliberately opted out. Toolbox ships a local MCP server that widgets can expose actions to, and this one exposes none — plus it is marked as off for agents, so if actions are ever added they start disabled and need your explicit consent. Sending data off the machine is the one capability where “on by default” is indefensible.

Is it free?

Yes. Webstarted Toolbox is a free beta, needs no account, and this comes built into the app — it is in the Share tab the moment you install it. Desktop only: macOS menu bar and Windows tray.

Get Webstarted Toolbox

Free to use. Install it on both computers and it is already in the Share tab. macOS 12+ and Windows 10+.

Free beta · macOS · Windows (x64) · Signed & notarized · No account required
Keep exploring

One icon, many small tools

This is just one of the widgets in Webstarted Toolbox. Here are the rest:

☕ Keep Awake Stop your Mac from sleeping, on your terms. 📊 LLM Quota Pace your Claude / AI usage against the clock. 🍅 Pomodoro 25/5 focus cycles in your menu bar. ⏳ Countdown Live countdowns to anything that matters. ☰ Clipboard history Your recent copies, one keystroke away. {} Dev tools JSON, Base64, JWT, regex, epoch — offline. ✎ Quick Note A scratchpad that autosaves as you type. 🌐 My IP Your public IPv4 and IPv6, copyable, with ISP and location. 📈 System Info CPU, memory and GPU in your menu bar. 🐹 Topos A 30-second reflex game in your menu bar. 💣 Minesweeper Classic minesweeper in your menu bar. 🪙 Crypto Prices Live crypto prices with 24h change, in your menu bar. 💱 Currency Converter Convert currencies with real parallel rates (blue, MEP, CCL). 🌍 World Clocks Several cities' time at once — daylight saving handled automatically. 🔳 QR Generator QR codes for text, URLs, WiFi or contacts — offline. 🔑 Password Generator Strong passwords & passphrases, fully offline. 🌤️ Weather Any city, now + the days ahead — no API key. 🔥 Habit Tracker Daily streaks — don't break the chain. 100% local. 🔤 Text Tools Change case, slugify, count, dedupe — offline. 🎲 Random Picker Pick from a list at random, or roll dice. 🎨 Color Picker Pick a color, copy hex / rgb / hsl / hsv — offline. 🌐 Translator 18 languages from the menu bar — no API key needed. 🔀 Text Diff Compare two texts line by line — 100% local. ⏰ Cron Wizard Cron expressions in plain English, with the next runs. 🗃️ Dummy Data Lorem ipsum and fake rows in JSON, CSV or SQL. 🔊 Focus Sounds White, pink or brown noise — synthesized, no files. 🔁 Subscriptions What your recurring services cost per month and year. 🧾 Rates & Tax Hourly ↔ yearly, and add or extract tax. ⛽ Network Fees Ethereum gas and Bitcoin fees, right now. 📣 UTM Builder Trackable campaign links, normalized so GA behaves. 🌿 Git Status Which of your repos are dirty, unpushed or behind. 🧮 Calculator Type the calculation, read the result as you go. 🎬 Teleprompter Your script scrolls at the speed you read — in wpm. 📊 Stocks Stocks and ETFs with the day’s change — no API key. 🔥 Fireplace A fireplace generated on the fly — no files, no network. 💼 Job Tracker Your applications, with an OS alarm before each interview. ⇄ Converter 57 units in 8 categories, converted with zero network. ⏰ Alarms Clock-time alarms that ring with everything closed. 🗂️ Project Boards Kanban boards with your columns, and a due date that notifies you. 📡 Website Monitor Are your sites up? The code and the latency, from your machine. 📅 Calendar A month view in your menu bar. 🎤 Presenter A talk clock that knows your script, not a stopwatch. ✏️ Pencil Draw on your screen, over everything, while you present.