Skip to main content
Two checks stand between a script and your computer. The permission screen shows what a script from the marketplace or a share can do, and it runs only within what you allowed. Shield reads every script’s code before it starts, including your own, and refuses known tricks. What each permission token means, and how a script declares one, is in the SDK reference.

Which scripts ask

Scripts under marketplace/ and shared/ in your scripts folder are capped: each runs only within what you approved for it. Scripts you write or put anywhere else run with what their modeline declares, without asking.

The permission screen

Before a marketplace script installs, Rebind shows what it can do, in plain words. Sensitive items, such as running programs, talking to any website, reading what you copy, seeing your whole screen, or asking AI, are marked, with the author’s reason beside each one or a note that the author gave none. Each item is one permission token the script declares, plus the apps or windows it runs in. Choose Allow and install to install it, or Cancel. For a paid script the screen comes before the purchase. If the version that downloads asks for more than the listing showed, Rebind stops and shows the new items marked New; nothing installs until you allow them. A script someone shares with you asks the same way when you import it: the screen titled Import this shared script? lists what it asks for, without reasons, and Allow and import imports it.

Updates

A marketplace update that asks for nothing new installs on its own, as long as:
  • the script is stopped,
  • it has no unsaved edits in the editor, and
  • its files are exactly the ones that shipped. A script that saved files into its own folder, or that you edited, updates only by hand.
An update that asks for more, or that runs in different apps or windows, waits for you. Scripts shows Update available on the script; when you choose Update to the new version, the screen titled This update asks for more lists the new items. Choose Allow and update, or Keep the version you have.

Edited copies

If a capped script’s files change so that it asks for more than you approved, whether you edited them or the script did, it does not start. Scripts shows It asks for something you have not approved, so it will not start. with a Review button. Allow approves the new items for that script; Not now leaves it stopped.

Installing from the terminal

rebind install prints what a package asks for and installs nothing until you run it again with --allow:
For a marketplace listing, --allow approves exactly the printed list. If the version that downloads asks for more, the command refuses and tells you to install from the app, where the permission screen can show the difference.

Shield

Shield checks a script’s code before it starts the first time, and again after any change. Rebind sends the script and the modules it requires to Rebind’s API, which looks for known tricks: clipboard stealers, keyloggers, login file grabbers, code that downloads and runs programs, hidden payloads, screen spies, wallet address swaps, text that tries to talk the check into passing, and copies of scripts Rebind took down. A checked script that has not changed starts without a new check, offline too, until Shield’s rules change. Protected scripts, whose code you cannot read, are checked before they reach you: in marketplace review, or before a copy is sealed for one person. A verdict is one of:
  • Clean: Shield found none of the known tricks. The script starts.
  • Flagged: the script starts, and its log shows a warning with the reasons, such as a script that does not do what its name says or has files Shield could not read.
  • Blocked before it ran: nothing in it ran. The script does not start.
When Rebind refuses to start a script, Scripts opens Shield’s verdict: each reason, the file and lines it points at, the risk, and whether the script matches known malware. Some cases that keep a script from starting:
  • Shield could not check this script. Connect to the internet and try again. New or edited code needs Rebind to reach its API.
  • Shield could not read all of this script. The entry or a module it requires is too large for Shield to read. Make them smaller.
  • A module edited after the script started is one Shield did not read, so require refuses it. Start the script again after editing a module.
Shield describes what code does. It does not make an untrusted script safe: review what a script asks for before you allow it.