Tampermonkey® by Jan Biniok

Recent Changes

It is necessary to enable developer mode to run userscripts via Tampermonkey now.
Instructions on how to enable it can be found here.
Fixed another GM_xmlhttpRequest cookie issues
Fixed several GM_xmlhttpRequest cookie issues
Fixed storage change listeners after clicking a download link
Fixed issues with GM_registerMenuCommand if the command was registered multiple times (e.g. from different frames)
Enabled GM_cookie for all versions (HttpOnly cookie access still only at the beta versions)
Added partitionKey support to GM_cookie
Added cookiePartition support to GM_xmlhttpRequest
Added a warning message when a script without @include and @match entry is saved the first time
Updated Italian translation | thanks to bovirus
Updated Japanese translation | thanks to shirayuki
Updated Portuguese-Brazil translation | thanks to igorruckert
Microsoft Edge
Switched to Manifest V3
Show an error icon at scripts without any @include and @match entry
Improved script installation to not download the script content in parallel anymore
Note: you can restore the old behavior, by changing Userscript URL detection to Legacy
Known Issues
GM_webRequest is not (yet) supported in Manifest V3
GM_xhr fires only one progress event (you can use responseType stream for now)
In UserScript API Dynamic mode scripts that are using a RegExp @require cause overhead by being injected into every frame
Script installation is kind of clumsy because the script content is downloaded in parallel
Introduced a permission editor for enhanced management of host permissions
Updated GM_download to make the name parameter optional and implemented extraction from the response headers
Removed use of deprecated DOMNodeInserted and MutationEvent events
Fixed an issue with the url property of GM_notification when no onclick listener is set
Updated GM_download to initiate downloads in parallel again
Resolved a failure when accessing xhr.responseXML of HTTP responses
Updated Italian translation | thanks to bovirus
Updated Portuguese-Brazil translation | thanks to igorruckert
Updated Danish translation | thanks to jhertel
Updated Chinese (simplified) translation | thanks to PaperStrike
Restored the application of custom CSS to installation pages
Fixed quirks in the darker theme
Repaired the 'Sync Now' button
Corrected the 'Save To Disk' button in the editor
Implemented anonymous requests for WebDAV to prevent overwriting of browser sessions
Fixed WebDAV-based sync in cases of unexpected existing folder structures
Reworked to reduce some authentication requests
No longer displaying script modification conflict warnings when there's no conflict
Resolved an issue with Instant Injection mode when a script requires a local file
Addressed problems related to script installation from certain Gitlab URLs
Removed warning about script updates being disabled upon script modification
Updated Russian translation | thanks to adem4ik
Updated Vietnamese translation | thanks to IoeCmcomc
Updated Japanese translation | thanks to maboroshin and shirayuki
Updated Italian translation | thanks to bovirus
Corrected 'replace all' functionality in code editor for certain strings
Resolved multiple internal issues to prevent potential crashes
Corrected the functionality of window.showDirectoryPicker
Enhanced detection of new GreasyFork script URLs
Introduced id parameter in GM_registerMenuCommand to update existing commands
Added tag in GM_notification to overwrite existing notifications
Incorporated url property in GM_notification to open a new tab on click (can be cancelled by onClick event via preventDefault)
Notifications now automatically close when the userscript unloads and neither a url nor a tag was specified
Adjusted GM_download to prevent frequent triggering of onload
Refined version number parser to support ISO format dates
Note: As a result of this change, 1.0-0.3 is now considered a lower version number than 1.0
Overhauled aspects related to Instant Navigation
Accepted user-defined globals in ESLint configuration
Enhanced sandbox window addEventListener to support EventListenerObjects
Enabled 'Sync Now' and 'Sync Reset' only after changes have been saved
Corrected script search badge mode to display accurate numbers
Introduced a title option to GM_registerMenuCommand
Introduced feature to append script version number during disk save operations
Content-security-policy (CSP) directives are no longer relaxed by default
  • In Chrome, script injection should function as usual, but some userscripts may depend on a relaxed CSP
  • In Firefox, if the page CSP blocks injection, userscripts are now injected into a JavaScript-mode @sandbox, which may require cloneInto and friends for unsafeWindow property modification
  • The previous behavior can be reinstated by setting 'Modify existing content security policy (CSP) headers' to 'Yes'
  • This change aids in better adherence to the Mozilla add-on development policies
Locally modified scripts are not automatically updated, but can now be manually updated and confirmed for reversion
Introduced an option in GM_registerMenuCommand to prevent automatic closing of the popup on click
Corrected GM_xmlhttpRequest FormData key-value order
Adjusted ESLint to permit top-level await
Resolved BSD issue caused by incorrect getPlatformInfo response
Resolved an issue with opening tabs from extension pages
Updated Italian translation | thanks to bovirus
Updated Portuguese-Brazil translation | thanks to igorruckert
Updated Japanese translation | thanks to shirayuki
Updated Russian translation | thanks to ACherepkov1989
Updated Turkish translation | thanks to selimsumlu
Updated Chinese (traditional) translation | thanks to 5idereal
Updated French translation | thanks to Juknum
Implemented horizontal scrolling for tabs when the quantity exceeds the display limit
Search-as-you-type now consistently starts from the current position