> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rebind.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# The Rebind Link

> Why the Link exists: what input software physically cannot do, and what a real USB HID device unlocks.

The Rebind Link is a small USB device that becomes your computer's keyboard and mouse. Your real devices feed Rebind's sealed capture pipeline, your scripts decide what every event means, and the Link emits the result as a physical USB HID device. The computer sees ordinary hardware because that is what is on the wire.

This page explains why the device exists. For plugging one in and activating it, see [Hardware Setup](/getting-started/hardware-setup).

## What software cannot do

Software mode runs the full engine, and for most work it is all you need: remaps, macros, text expansion, per-app layers, HTTP control. Everything you would reach for AutoHotkey or Keyboard Maestro to do, Rebind does in software on Windows, macOS, and Linux.

But a host process runs inside the operating system, and that puts three walls in front of it. No program can remove them:

1. **Mouse movement cannot be intercepted.** The OS draws the cursor upstream of anything a host process can hook. Software can observe motion; it cannot reliably block or rewrite it.
2. **Some programs only accept the device input path.** Software output leaves through the operating system's injection APIs, a distinct input path that some programs (some games, some device-level tools) do not accept. Hardware output travels the standard USB device path.
3. **Timing belongs to the OS scheduler.** Injected input is delivered when the operating system gets around to it, not on the clock your script asked for.

These are physics, not licensing. Rebind does not gate features in software mode; software mode ends where software ends.

## What the Link changes

The Link moves the boundary by putting real hardware on both sides of your code:

* **Mouse movement becomes scriptable.** Input is captured in the sealed pipeline before the OS sees it, so `OnMove` and `mouse_block` scripts (acceleration curves, tremor smoothing, inverters) can block and rewrite motion. This is why Rebind refuses to load an `OnMove` script in software mode: without the device there is nothing that can do the job.
* **Output arrives as reports from a physical USB HID keyboard and mouse.** Every program that accepts a keyboard and mouse accepts your scripts' output.
* **Timing is deterministic.** The device owns its own clock, up to 8,000 Hz, independent of host scheduling.
* **Protected marketplace scripts run.** Paid scripts with source protection are keyed to a device and require one to load.

No special driver, no vendor lock-in software. The Link works with the keyboards and mice you already own, from any brand.

## What the Link is not

* **It does not run your scripts.** The engine runs on your computer; the Link carries the transformed input across the boundary software cannot cross. Logic, networking, and the UI all stay host-side.
* **It is not a subscription.** Activation is a one-time step per device and the credential lives on the hardware. Rebind re-checks it with the server in the background. Offline, the device keeps working until its current token expires; after that it falls back to free software mode until it can check in again.

## When you need one

Start in software mode; it is free and the scripts are identical. You need a Link when your work hits one of the walls above:

* transforming or blocking mouse movement
* output for programs that only trust real device input
* deterministic timing at the device's clock rather than the OS's
* running protected marketplace scripts

When that day comes, [Hardware Setup](/getting-started/hardware-setup) covers the rest: plug in, enter the code from the welcome card, done.
