Skip to content

v1.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 26 Jun 03:40
· 72 commits to main since this release
fd222ac

简体中文

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 @unwrap metadata tag (#1213) (by @cyfung1031)
  • ✨ Implement TM's window.onurlchange via the Navigation API (#1315) (by @cyfung1031)
  • ✨ Restore @run-at context-menu support (#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

⚡️ 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 @match template mismatch when search is missing (#1466) (by @cyfung1031)
  • 🐛 Add protoBaseDescs to fix ancestor-class inheritance in the Tampermonkey semi-sandbox (#1463) (by @cyfung1031)
  • 🐛 Fix missing null handling for GM_xmlhttpRequest msgConn (#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

♻️ 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 Chinese) and add translation terminology guidelines (#1468) (by @cyfung1031)

Others

  • ✨ Switch the fetchIconByDomain icon service to scriptcat.org (#1268) (by @cyfung1031)
  • 🔥 Remove Crowdin and ach-UG pseudo-language related content (#1385) (by @CodFrm)

Full changelog: Compare v1.3.2...v1.4.0