Releases: scriptscat/scriptcat
Release list
v1.5.0-beta
1.5.0-beta (2026-07-08)
This pre-release brings a brand-new UI with a cleaner, more consistent interface and a smoother overall experience, along with dedicated design optimizations for mobile so mobile users get a great experience too. In addition, it adds new-script-type selection in the editor, a manual download link for local backups, and more, while fixing scheduled-task invalid-timezone and native GM_download cross-origin issues. If you have any suggestions about the new UI/UX, feel free to join the discussion on GitHub.
🎨 UI Improvements
- ♻️ Brand-new UI: a full interface rewrite, with improved mobile adaptation for a better experience on both desktop and mobile (#1514) (by @CodFrm)
🚀 Major New Features
- ✨ Editor tab-bar "+" now supports choosing the new script type (#1544) (by @cyfung1031)
- ✨ Add a manual download link for local backups (#1543) (by @cyfung1031)
- ✨ Enable structured_clone serialization for extension messaging on Chromium 148+ (#1534) (by @cyfung1031)
- ✨ Pre-release (beta) versions now auto-open the changelog page after an update (by @CodFrm)
🧩 GM API Changes
⚡️ Performance Improvements
- ⚡️ Optimize script loading cache and fix leftover Popup menu items (#1511) (by @cyfung1031)
🧑💻 Editor
- ♻️ Adjust
eslint-plugin-userscriptsrules (#1510) (by @cyfung1031)
🐛 Bug Fixes
- 🐛 Avoid scheduled-task errors caused by cron auto-detecting an invalid timezone (#1531) (by @cyfung1031)
- 🐛 Fix the unavailable demo API in the crontab example (#1542) (by @cyfung1031)
🌐 Localization
- 🌐 Add Turkish language (by @azizaktas)
Full changelog: Compare v1.4.0-beta.4...v1.5.0-beta
v1.4.0
1.4.0 (2026-06-26)
This release brings low-level refactoring in preparation for Firefox MV3, along with editor experience improvements (edit menu, Ctrl+Shift+F formatting, Monaco quick fix), multi-platform search engine selection for script discovery, new capabilities such as @unwrap / window.onurlchange / @run-at context-menu, comprehensive hardening of cloud storage sync reliability, and a large batch of GM API, UI, and stability fixes (including a long-running memory leak and prototype pollution security vulnerabilities). The ScriptCat AI Agent is available as a preview in dev / Beta builds and is not yet enabled in the stable release.
🚀 Major New Features
- 🧪 ScriptCat AI Agent (Preview — available in dev / Beta builds only, not yet enabled in stable) — AI-powered agent system with conversational interaction, tool calling, Skill system, MCP protocol, and more (#1324) (by @CodFrm)
- ✨ Support the
@unwrapmetadata tag (#1213) (by @cyfung1031) - ✨ Implement TM's
window.onurlchangevia the Navigation API (#1315) (by @cyfung1031) - ✨ Restore
@run-at context-menusupport (#1442) (by @cyfung1031) - ✨ Script discovery supports multi-platform search engine selection (#1295) (by @CodFrm)
- ✨ Add more icon service providers (#1333) (by @cyfung1031)
- ✨ Add an update-check icon to the "last updated" column in the script list (#1304) (by @CodFrm)
- ✨ Improve edit-conflict and script-name-conflict handling (#1223) (by @cyfung1031)
🧑💻 Editor
- ✨ Add an edit menu to the editor (find, replace, undo, etc.) (#1303) (by @CodFrm)
- ✨ Editor supports Ctrl+Shift+F formatting (#1415) (by @cyfung1031)
- ✨ Improve Monaco quick fix and user-script metadata hints (#1461) (by @cyfung1031)
- 🐛 Fix Ctrl-F / Ctrl-H shortcuts (#1312) (by @cyfung1031)
- 🐛 Fix ESLint fix feature not working #1079 (#1184) (by @cyfung1031)
- 🐛 Fix editor CSS layout issues (#1460) (by @cyfung1031)
- 🐛 Fix ScriptEditor script list display in light theme (#1288) (by @CodFrm)
- 🐛 Fix and improve ScriptEditor issues (#1258) (by @cyfung1031)
⚡️ Performance Improvements
- 🚑 Fix a potential memory leak during long-running ScriptCat sessions (#1401) (by @cyfung1031)
- ⚡️ Remove Baidu filesystem dependency on global DNR rules, switch to per-request cookie disabling (#1377) (by @cyfung1031)
- ⚡️ Optimize multi-platform search engine selection for script discovery (#1379) (by @cyfung1031)
- ⚡️ Use a monospace font for the install page loadingStatus to avoid jitter (#1381) (by @cyfung1031)
- ⚡️ Optimize pushValue handling (#1403) (by @cyfung1031)
- ⚡️ More complete permission checks and better userScript permission hints (#1251) (by @cyfung1031)
- ⚡️ Improve MessageConnect memory management and cleanup mechanism (#1248) (by @cyfung1031)
🐛 Bug Fixes
- 🐛 Harden cloud storage sync reliability (Dropbox / WebDAV / Google Drive / OneDrive authentication, path handling, and retry logic) (#1374 ~ #1395) (by @cyfung1031)
- 🐛 Fix multiple cloud sync issues: OneDrive zero-byte upload, Google Drive / OneDrive error normalization, S3 custom metadata modifiedDate (#1405) (#1406) (#1408) (by @cyfung1031)
- 🐛 Remove the WebDAV verify write-probe to avoid false negatives on services with a non-writable root (e.g. Nutstore) (#1445) (by @CodFrm)
- 🐛 Fix cross-origin request failure when site access permission is missing (#1477) (by @cyfung1031)
- 🐛 Fix Edge Android mobile popup adaptation #686 (#1507) (by @CodFrm)
- 🐛 Fix white background flash during initial load #1497 (#1498) (by @cyfung1031)
- 🐛 Fix message connections (GM API / ports) not being cleaned up properly (#1474) (by @cyfung1031)
- 🐛 Fix
@matchtemplate mismatch when search is missing (#1466) (by @cyfung1031) - 🐛 Add
protoBaseDescsto fix ancestor-class inheritance in the Tampermonkey semi-sandbox (#1463) (by @cyfung1031) - 🐛 Fix missing null handling for
GM_xmlhttpRequestmsgConn (#1433) (by @cyfung1031) - 🐛 Fix GM xhr not handling abnormal onloadend correctly (#1412) (by @cyfung1031)
- 🐛 Fix ScriptEditor list dynamic update and display issues (#1414) (by @cyfung1031)
- 🐛 Fix session rule count issue with concurrent xhr (#1353) (by @cyfung1031)
- 🐛 Fix entire page crash caused by an invalid cron expression (#1327) (by @cyfung1031)
- 🐛 Fix all scripts failing when a single script times out during batch update check (#1265) (by @cyfung1031)
- 🐛 Add extensionEnv handling for isIncognito, userAgent, and run-in (#1368) (by @cyfung1031)
- 🐛 Fix onboarding guide button being partially hidden #1396 (#1398) (by @cyfung1031)
- 🐛 Fix tooltip being obscured on the script management page #1386 (#1387) (by @Xdy1579883916)
- 🐛 Fix Sidebar causing abnormal resizing in card mode #1179 (#1373) (by @cyfung1031)
- 🐛 Fix incorrect origin set when installing local files via drag-and-drop (#1371) (by @cyfung1031)
- 🐛 Fix language switching prompt message (#1380) (by @cyfung1031)
- 🐛 Improve log display UI (#1372) (by @cyfung1031)
- 🐛 Fix UserConfigPanel CSS (#1361) (by @cyfung1031)
- 🐛 Use
Object.create(null)for the empty object in create_context (#1397) (by @cyfung1031) - 🐛 Fix silent update and connect permission logic for subscribed scripts (#1201) (by @cyfung1031)
- 🐛 Fix log page query button not refreshing the time (#1294) (by @CodFrm)
🔒 Security Improvements
- 🔒 Fix prototype pollution via untrusted YAML user-config keys (#1494) (by @qdzsh)
- 🔒 Fix all npm dependency security vulnerabilities (#1350) (#1364) (#1365) (by @cyfung1031)
♻️ Refactoring & Compatibility
- ♻️ Low-level refactoring in preparation for Firefox MV3 adaptation (#1457) (#1480) (by @cyfung1031)
- ♻️ Refactor script resource update logic (updateResource) and concurrency control, restore resource cache compatibility (#1193) (by @cyfung1031)
- ♻️ Replace jszip with JSZipp for ZIP handling (backup import / export), and remove the unused jszip dependency (#1479) (by @cyfung1031)
- ♻️ Unify Offscreen ↔ ServiceWorker communication over the postMessage channel (#1299) (by @CodFrm)
- ♻️ Refactor VSCodeConnect code (#1170) (by @cyfung1031)
- ⚡️ Compress ts.worker.js to 4MB to pass AMO validation, fix MV3 background permission error (#1221) (by @cyfung1031)
🌐 Internationalization
- 🌐 Fix multi-language terminology translations (mainly improving Traditional...
v1.4.0-beta.4
1.4.0-beta.4 (2026-06-13)
This release fixes Edge Android mobile popup layout, the white background flash during initial load, and cross-origin request failures when site access permission is missing; patches a prototype pollution vulnerability triggered via untrusted YAML user-config keys; refactors script resource updating and ZIP handling (replacing jszip with JSZipp); and continues to improve Firefox MV3 compatibility and localization.
🧑💻 Editor
- ✨ Improve Monaco quick fix and userscript metadata hints (#1461) (by @cyfung1031)
- 🐛 Fix editor CSS layout issues (#1460) (by @cyfung1031)
🐛 Bug Fixes
- 🐛 Fix Edge Android mobile popup layout (#686) (#1507) (by @CodFrm)
- 🐛 Fix white background flash during initial load (#1497) (#1498) (by @cyfung1031)
- 🐛 Fix cross-origin request failure when site access permission is missing (#1477) (by @cyfung1031)
- 🐛 Fix message connection (GM API / port) not being cleaned up properly (#1474) (by @cyfung1031)
- 🐛 Fix @match template mismatch when search is missing (#1466) (by @cyfung1031)
- 🐛 Add
protoBaseDescsto fix ancestor class inheritance in the Tampermonkey semi-sandbox (#1463) (by @cyfung1031)
🔒 Security Improvements
♻️ Refactoring & Compatibility
- ♻️ Refactor script resource updating (updateResource) and concurrency control, and restore resource cache compatibility (#1193) (by @cyfung1031)
- ♻️ Replace jszip with JSZipp for ZIP handling (backup import/export), and remove the unused jszip dependency (#1479) (by @cyfung1031)
- ♻️ Improve Firefox MV3 compatibility (#1457, #1480) (by @cyfung1031)
🌐 Localization
- 🌐 Fix multi-language terminology translations (notably improving Traditional Chinese) and add translation terminology guidelines (#1468) (by @cyfung1031)
Full changelog: Compare v1.4.0-beta.3...v1.4.0-beta.4
v1.4.0-beta.3
1.4.0-beta.3 (2026-05-19)
Continuing the direction set in beta.2, this release further hardens cloud sync reliability (OneDrive/Google Drive/WebDAV error handling and upload flows), fixes a number of ScriptEditor and GM xhr exception-handling issues, and adds Ctrl+Shift+F formatting and the return of @run-at context-menu.
🚀 Major New Features
- ✨ Editor: Ctrl+Shift+F to format code (#1415) (by @cyfung1031)
- ✨ Bring back
@run-at context-menusupport (#1442) (by @cyfung1031)
⚡️ Performance Improvements
- ⚡️ Optimize pushValue handling (#1403) (by @cyfung1031)
🐛 Bug Fixes
- 🐛 Cloud sync fixes: OneDrive zero-byte upload, Google Drive/OneDrive error normalization, S3 custom metadata modifiedDate (#1405) (#1406) (#1408) (by @cyfung1031)
- 🐛 WebDAV verify: drop the write probe so services like Jianguoyun with non-writable root no longer fail verification (#1445) (by @CodFrm)
- 🐛 Fix missing null handling for
GM_xmlhttpRequestmsgConn (#1433) (by @cyfung1031) - 🐛 Fix GM xhr improperly handling abnormal onloadend (#1412) (by @cyfung1031)
- 🐛 Fix ScriptEditor list dynamic update and display issues (#1414) (by @cyfung1031)
- 🐛 Fix interaction issues with edit-related actions in the ScriptEditor toolbar (#1417) (by @cyfung1031)
- 🐛 Fix
chrome.downloads.downloadcode and Mock (#1410) (by @cyfung1031) - 🐛 Fix closeWindow in src/pages/install/App.tsx (#1435) (by @cyfung1031)
- 🐛 Add wheel event boundary at the root layout to prevent internal scrolling from triggering browser swipe-navigation (#1431) (by @cyfung1031)
- 🐛 Dedupe concurrent initial auth requests (#1437) (by @cyfung1031)
- 🐛 Refactor encoding.ts to consolidate and improve detection (#1426) (by @cyfung1031)
- 🐛 Add Tooltip so the menu is visible (#1429) (by @cyfung1031)
- 🐛 overscroll-behavior fix (#1413) (by @cyfung1031)
- 🐛 Stop showing the update button for scripts that don't support updates (#1418) (by @cyfung1031)
- 🐛 Fix missing i18n key references (#1422) (by @cyfung1031)
- 🐛 Add
framesto sandbox createContext, fixing #1427 (#1428) (by @cyfung1031) - 🐛 Fix SkillScript compilation error from missing isContextMenu field (5fdc8e3) (by @CodFrm)
♻️ Refactoring & Compatibility
- ♻️ Move install resources to
chrome.storage.localtempStorage; code part lives inOPFS/temp_install_codes(#1318) (by @cyfung1031) - ♻️ Fix double-slash created by path-joining logic (#1432) (by @tomaioo)
🌐 Internationalization
- 🌐 Improve Japanese UI translations with companion fixes for other languages (#1419) (#1421) (by @GoodLight999, @cyfung1031)
Full changelog: Compare v1.4.0-beta.2...v1.4.0-beta.3
v0.16.15
0.16.15 (2026-05-19)
本次更新主要修复了 Firefox 149-152 的 WebExtensions API 兼容性问题(含内容安全策略调整),并修复了 MV2 打包脚本的构建命令。
🐛 Bug 修复
- 🐛 修复 MV2 打包脚本构建命令 #1423 (by @CodFrm)
- 🐛 针对 WebExtensions API Changes (Firefox 149-152) 做修正(含 CSP 调整)(#1448) (by @cyfung1031)
Full changelog: Compare v0.16.14...v0.16.15
v1.4.0-beta.2
1.4.0-beta.2 (2026-05-06)
This update focuses on comprehensive cloud storage sync reliability hardening (auth, path handling, and retry fixes for Dropbox/WebDAV/Google Drive/OneDrive backends), Agent tool-call stability improvements, and a large number of UI and script runtime bug fixes including a long-running memory leak.
⚡️ Performance Improvements
- ⚡️ Remove Baidu filesystem dependency on global DNR rules; disable cookies per-request instead (#1377) (by @cyfung1031)
- ⚡️ Optimize multi-platform search engine selection for fetching scripts (#1379) (by @cyfung1031)
- ⚡️ Use monospace for the install page loadingStatus to avoid jitter (#1381) (by @cyfung1031)
- ⚡️ Strengthen Agent prompt reliability — result verification, budget semantics, safety boundaries (#1354) (by @cyfung1031)
🐛 Bug Fixes
- 🚑 Fix potential memory leak when ScriptCat runs for an extended period (#1401) (by @cyfung1031)
- 🐛 Harden cloud sync reliability across backends (Dropbox/WebDAV/Google Drive/OneDrive auth, path handling, retry logic) (#1374) (#1375) (#1376) (#1390) (#1391) (#1392) (#1393) (#1394) (#1395) (by @cyfung1031)
- 🐛 Properly populate extensionEnv with isIncognito (early-start & bgScript), userAgent and run-in for bgScript (#1368) (by @cyfung1031)
- 🐛 Fix onboarding guide button being clipped #1396 (#1398) (by @cyfung1031)
- 🐛 Fix tooltip occlusion on the script management page #1386 (#1387) (by @Xdy1579883916)
- 🐛 Fix Sidebar causing layout sizing issues in card mode #1179 (#1373) (by @cyfung1031)
- 🐛 Fix incorrect origin for local file drag-and-drop installs (#1371) (by @cyfung1031)
- 🐛 Fix language-switch messaging (#1380) (by @cyfung1031)
- 🐛 Improve log display UI (#1372) (by @cyfung1031)
- 🐛 Resolve session rule count issues with concurrent xhr (#1353) (by @cyfung1031)
- 🐛 Fix UserConfigPanel CSS (#1361) (by @cyfung1031)
- 🐛 Use Object.create(null) for empty objects in create_context (#1397) (by @cyfung1031)
- 🐛 Fix Agent streaming tool_call argument concatenation errors and parallel tool-call cross-talk (#1355) (by @cyfung1031)
- 🐛 Fix Agent compatibility with reasoning models (#1357) (by @cyfung1031)
- 🐛 Fix Agent web_fetch/web_search contract inconsistency (7bbd6d1) (by @CodFrm)
- 🐛 Fix missing extension env in Agent skill script runtime (e143c4a) (by @CodFrm)
🔒 Security Improvements
- 🔒 Fix all npm vulnerabilities (#1350) (#1364) (#1365) (by @cyfung1031)
Others
Full changelog: Compare v1.4.0-beta.1...v1.4.0-beta.2
v0.16.14
0.16.14 (2026-04-26)
本次更新为 FirefoxMV2 维护版本,将主要项目同步至 MV3 版本,包括 TypeScript、构建工具、脚本范本、cron 与 Monaco Editor,并修复 iframe 嵌套场景下的 postMessage 问题。
✨ 主要新功能
- ✨ FirefoxMV2 同步 MV3 主要项目:升级 TypeScript 至 4.9、tsconfig 至 es2022;脚本范本(normal/crontab/background)对齐 MV3 版本;cron 升级支持
once(...)表达式;Monaco Editor 多国语言支持 (#1331) (by @cyfung1031)
♻️ 重构与兼容性
- 🔥 跟随 MV3 移除 axios 依赖 (#1339) (by @cyfung1031)
🐛 Bug 修复
- 🐛 修复 window.parent 嵌套 iframe 接收不到 postMessage 消息的问题 (#1335) (by @cyfung1031)
Full changelog: Compare v0.16.13...v0.16.14
v1.4.0-beta.1
1.4.0-beta.1 (2026-04-07)
The highlight of this release is ScriptCat AI Agent, a built-in AI-powered agent system that can invoke tools from the userscript ecosystem through conversational interaction. This update also adds @unwrap tag support, window.onurlchange event, editor menu improvements, and numerous bug fixes.
🚀 Major New Features
- 💥 ScriptCat AI Agent — AI-powered intelligent agent system with conversational interaction, tool calling, Skill system, MCP protocol support, and more (#1324) (by @CodFrm)
- ✨ Support
@unwrapmetadata tag (#1213) (by @cyfung1031) - ✨ Implement TM's
window.onurlchangeusing Navigation API (#1315) (by @cyfung1031)
🧑💻 Editor
- ✨ Add editor menu (find, replace, undo, etc.) (#1303) (by @CodFrm)
- 🐛 Fix Ctrl-F / Ctrl-H shortcuts (#1312) (by @cyfung1031)
- 🐛 Fix ESLint auto-fix not working #1079 (#1184) (by @cyfung1031)
- 🐛 Correctly display formatting errors (#1310) (by @cyfung1031)
- 🐛 Fix code editor tooltip issues (#1301) (by @cyfung1031)
✨ Feature Improvements
- ✨ Support multi-platform search engine selection for script search (#1295) (by @CodFrm)
- ✨ Add more icon service providers (#1333) (by @cyfung1031)
- ✨ Add update check icon in script list last update column (#1304) (by @CodFrm)
- ✨ Improve edit conflict and script name conflict handling (#1223) (by @cyfung1031)
🐛 Bug Fixes
- 🐛 Fix cron expression errors crashing the entire page (#1327) (by @cyfung1031)
- 🐛 Fix script installation triggering Error 406 (#1306) (by @cyfung1031)
- 🐛 Fix WebDAV cookies authentication conflict and authType support (#1308) (by @CodFrm)
- 🐛 Use chrome.storage.local for device-specific settings to avoid cross-device sync (#1309) (by @CodFrm)
- 🐛 Fix subscription script silent update and connect permission logic (#1201) (by @cyfung1031)
- 🐛 Fix batch script update check failing entirely when one script times out (#1265) (by @cyfung1031)
- 🐛 Fix logger page query button not refreshing time (#1294) (by @CodFrm)
- 🐛 Fix logger page date picker popup being clipped (#1292) (by @cyfung1031)
- 🐛 Fix unbind button showing when no cloud drive is bound (#1291) (by @CodFrm)
- 🐛 Fix ScriptEditor script list light theme display issue (#1288) (by @CodFrm)
- 🐛 Fix popup being obscured (#1290) (by @cyfung1031)
Full changelog: Compare v1.4.0-beta...v1.4.0-beta.1
v1.3.2
1.3.2 (2026-03-28)
本次更新主要修复了多个 Bug,包括 WebDAV 认证、编辑器提示、弹出框显示等问题,并优化了设备配置的存储方式。
🐛 Bug 修复
- 🐛 删除 fetchScriptBody 的 Accept,避免触发 Error 406 (#1306) (by @cyfung1031)
- 🐛 针对 WebDAV 修复 cookies 认证冲突 及 authType 支持 (#1308) (by @CodFrm)
- 🐛 正确显示格式化错误 (#1310) (by @cyfung1031)
- 🐛 设备相关配置改用 chrome.storage.local,避免跨设备同步 (#1309) (by @CodFrm)
- 🐛 修复代码编辑框提示问题 (#1301) (by @cyfung1031)
- 🐛 修复运行日志页面日期选择弹出框被容器裁剪的问题 (#1292) (by @cyfung1031)
- 🐛 修复未绑定网盘时仍显示解绑按钮的问题 (#1291) (by @CodFrm)
- 🐛 修复弹出框被遮挡的问题 (#1290) (by @cyfung1031)
Full changelog: Compare v1.3.1...v1.3.2